Response & error codes

On success, WyndPath returns the target's raw content with its original HTTP status code, enriched with diagnostic headers. On a WyndPath-side error, an explicit JSON payload.

Diagnostic headers

Every successful response carries X-WyndPath-* headers that describe the route taken:

HeaderContent
X-WyndPath-CreditsCredits charged for this request.
X-WyndPath-Proxy-TypeIP type used (datacenter, residential…).
X-WyndPath-RouteRoute taken (lightweight or browser).
X-WyndPath-Escalated1 if WyndPath had to escalate to a stronger route.
X-WyndPath-AttemptsNumber of internal attempts made. They are not billed separately (see Credits).
X-WyndPath-Final-StatusHTTP status code returned by the target.

Error codes

WyndPath errors are returned as JSON: {"error": "code", ...}.

StatusCodeCause
401invalid_api_keyKey missing, invalid, disabled, or account blocked.
403domain_not_allowedThe target is not in your account's allowlist.
403domain_blockedTarget banned globally (illicit/abusive use).
403unsafe_targetURL not allowed (internal / non-public address).
402quota_exceededYour plan's monthly credit quota has been reached. Upgrade to a higher plan, or wait for next month. The response includes limit and used.
402cost_exceededThe request's estimated cost exceeds your max_cost cap.
413body_too_largePOST request body too large.
422invalid_urlurl parameter missing or scheme not http(s).
428profile_data_requiredThe target requires credentials that your account did not provide.
429too_many_concurrentYour plan's concurrent-request limit has been reached.
429rate_limitedThe target is rate-limiting; try again later.
502no_provider_availableNo route available to serve this target.