DocsIntegrationsPlaygroundPricing
Get API Key
SUPACRAWL
StatusSupportDashboard
SUPACRAWL
Getting Started

Error Codes

When a request fails, SupaCrawlX returns the same predictable JSON every time — a machine-readable code, a human-readable message, and the request ID — so you can branch on failures with confidence.

Error response shape

4xx / 5xx
{
  "error": {
    "code": "ERROR_CODE",
    "message": "Human-readable description",
    "requestId": "req_abc123xyz"
  }
}

Error code reference

HTTPCodeDescription
400BAD_REQUESTMissing or malformed request parameters
401UNAUTHORIZEDMissing or invalid API key
402INSUFFICIENT_CREDITSNot enough credits to complete the request
403PLAN_REQUIREDFeature not available on your current plan
404NOT_FOUNDResource not found
206TRANSCRIPT_NOT_AVAILABLENo transcript exists for this video
422UNSUPPORTED_URLURL format is not supported
422VIDEO_UNAVAILABLEVideo is private, deleted, or geo-blocked
429RATE_LIMIT_EXCEEDEDToo many requests — slow down
500INTERNAL_ERRORUnexpected server error — retry with backoff

Handling errors in code

from supacrawlx import Client, APIError

client = Client("YOUR_API_KEY")

try:
    result = client.transcript("https://www.youtube.com/...")
    print(result.text)
except APIError as e:
    print(f"Error {e.status_code}: {e.code}{e.message}")