Schemas
Every schema of the OpenAPI description. Task parameter and solution schemas are explained on the task type pages.
Amount
string · pattern: ^-?[0-9]+\.[0-9]{6}$
Decimal US dollars with 6 places.
Balance
object
| Field | Type | Description |
|---|---|---|
availablerequired | Amount | What new tasks can use: cash + promo + credit limit − held. |
cashrequired | Amount | Decimal US dollars with 6 places. |
credit_limitrequired | Amount | Decimal US dollars with 6 places. |
currencyrequired | const "USD" | |
heldrequired | Amount | Reserved for tasks in flight. |
promorequired | Amount | Promotional credit. |
CallbackUrl
string | null · max length 2,048
Where to POST the task's final result (a task.solved or task.failed event, see Webhooks). http or
https, port 80, 443, 8080 or 8443, no user info or fragment, public hosts only. null or "": no callback.
Catalog
object
| Field | Type | Description |
|---|---|---|
currencyrequired | const "USD" | |
datarequired | array of TypeInfo | Every public task type with a list price, ordered by |
data.[item]optional | TypeInfo | |
placeholderrequired | boolean |
|
price_versionrequired | integer | Version of the price list the prices come from. |
CloudflareChallengeParams
Task type page: /docs/task-types/cloudflare-challenge/
object
| Field | Type | Description |
|---|---|---|
block_imageoptional | boolean | Do not load images of the target page (saves proxy traffic). |
post_dataoptional | object | If set, submitted to website_url as an HTML form POST. max 64 keys |
post_data.<any key>optional | string | number | boolean | |
proxyrequired | Proxy | Proxy the solver must use. login and password are used in memory only and are never stored or logged. |
required_cookiesoptional | array of string | Cookie names that must all be obtained for the task to succeed, e.g. ["cf_clearance"]. max items 32 · unique items |
user_agentoptional | UserAgent | Usually omit it. The User-Agent actually used is returned in the solution. |
wait_loadoptional | boolean | Wait for the page's network activity to settle before returning. |
website_urlrequired | WebsiteUrl | Full URL of the page that shows the captcha (http or https). |
CloudflareChallengeSolution
Task type page: /docs/task-types/cloudflare-challenge/
object
| Field | Type | Description |
|---|---|---|
contentoptional | string | HTML of the target page after passing the challenge. |
cookiesrequired | object | Cookies after passing the challenge, name to value; usually includes cf_clearance. |
cookies.<any key>optional | string | |
headersoptional | object | Response headers of the target page. |
headers.<any key>optional | string | |
request_headersoptional | object | Request headers of the browser's last request to the target page. |
request_headers.<any key>optional | string | |
user_agentrequired | UserAgent | User-Agent the cookies are bound to; use it for every follow-up request. |
CompatBalance
object
| Field | Type | Description |
|---|---|---|
balancerequired | number | Available balance in US dollars. |
errorIdrequired | const 0 |
CompatCallback
one of
The compatibility API's callback body: the getTaskResult response for the final result, plus taskId.
Callbacks for sandbox tasks (created with a test key) also carry "sandbox": true; treat such a
callback as a test, never as a real result.
One of:
objectobject
CompatCreateTaskRequest
object
| Field | Type | Description |
|---|---|---|
clientKeyrequired | string | Your key ( |
appIdoptional | integer | string | Same as |
callbackUrloptional | string | Where to POST the final result (the |
softIdoptional | integer | string | Developer programme ID (digits); recorded with the task. |
taskrequired | CompatTask | The task in anti-captcha's format: Proxy names ( |
CompatCreateTaskResult
object
| Field | Type | Description |
|---|---|---|
costoptional | string | Only when solved synchronously. pattern: ^[0-9]+\.[0-9]{6}$ |
errorIdrequired | const 0 | |
solutionoptional | CompatSolution | The answer in anti-captcha's field names for the task type name used to create the task (for example
|
statusoptional | const "ready" | Only when solved synchronously. |
taskIdrequired | integer | Task ID (53-bit integer, safe in JavaScript). format: int64 |
CompatError
object
A request or task error. errorCode values (anti-captcha's codes; new ones may be added):
| errorCode | when |
|---|---|
ERROR_KEY_DOES_NOT_EXIST |
key malformed, unknown, revoked or expired; or the key lacks the scope this endpoint needs |
ERROR_ZERO_BALANCE |
balance too low, or the key's budget is used up |
ERROR_IP_NOT_ALLOWED |
client IP not in the key's allowlist |
ERROR_IP_BLOCKED |
too many invalid keys from this IP |
ERROR_ACCOUNT_SUSPENDED |
the organization is suspended |
ERROR_NO_SLOT_AVAILABLE |
no capacity, concurrency limit, create rate limit (also sandbox limits), temporary or internal error; retry later |
ERROR_TASK_NOT_SUPPORTED |
unknown task type name, or type not allowed for the key |
ERROR_TASK_ABSENT |
task missing or not an object (or the body could not be read) |
ERROR_NO_SUCH_CAPCHA_ID |
taskId missing, unknown, expired or of another organization; report for an unsolved task |
ERROR_INCORRECT_SESSION_DATA |
a parameter does not match the schema (errorDescription names it), or callbackUrl is not allowed |
ERROR_RECAPTCHA_INVALID_SITEKEY |
the site key is invalid (parameter check or solver) |
ERROR_RECAPTCHA_INVALID_DOMAIN |
the website URL, API domain or subdomain is invalid or not allowed |
ERROR_ZERO_CAPTCHA_FILESIZE |
the image is missing or empty |
ERROR_TOO_BIG_CAPTCHA_FILESIZE |
the image (characters or pixels) or the request body is too large |
ERROR_IMAGE_TYPE_NOT_SUPPORTED |
the image is not valid base64, not a PNG, JPEG, GIF, WebP or BMP image, or malformed or truncated (checked when the task is created); or the solver could not read it (task failed) |
ERROR_CAPTCHA_UNSOLVABLE |
the task failed: unsolvable, timed out, or no solver accepts these parameters |
ERROR_PROXY_CONNECT_REFUSED, ERROR_PROXY_CONNECT_TIMEOUT, ERROR_PROXY_READ_TIMEOUT, ERROR_PROXY_BANNED, ERROR_PROXY_TRANSPARENT, ERROR_PROXY_HAS_NO_IMAGE_SUPPORT, ERROR_PROXY_INCOMPATIBLE_HTTP_VERSION |
the proxy could not be used (task failed) |
ERROR_TOKEN_EXPIRED |
the solver reported the token expired (task failed) |
| Field | Type | Description |
|---|---|---|
errorCoderequired | string | |
errorDescriptionrequired | string | |
errorIdrequired | const 1 |
CompatKeyRequest
object
| Field | Type | Description |
|---|---|---|
clientKeyrequired | string | Your key ( |
CompatReportResult
object
| Field | Type | Description |
|---|---|---|
errorIdrequired | const 0 | |
statusrequired | const "success" |
CompatSolution
object
The answer in anti-captcha's field names for the task type name used to create the task (for example
gRecaptchaResponse and userAgent for reCAPTCHA, token for Turnstile, text for images). The
mapping from the canonical solution is listed per name in CompatTaskType (solution). Tasks created
through v1 use the first compatible name of their type and variant.
CompatTask
object
The task in anti-captcha's format: type (see CompatTaskType) plus that type's fields
(websiteURL, websiteKey, body, …; the field map per name is in CompatTaskType). Unknown fields are
ignored. Parameters are validated against the canonical type's schema (see CreateTaskRequest).
Proxy names (…Task, without Proxyless) need a proxy: proxyType (http, https, socks4,
socks5), proxyAddress, proxyPort, optional proxyLogin and proxyPassword; or proxy as a URL
string http://user:pass@host:port. Proxyless names ignore proxy fields.
| Field | Type | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
proxyAddressoptional | string | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
proxyLoginoptional | string | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
proxyPasswordoptional | string | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
proxyPortoptional | integer | string | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
proxyTypeoptional | enum | one of "http", "https", "socks4", "socks5" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
typerequired | CompatTaskType | Task type name in the compatibility API (case-insensitive). Each name maps to a canonical type and variant (see
|
CompatTaskProcessing
object
| Field | Type | Description |
|---|---|---|
errorIdrequired | const 0 | |
statusrequired | const "processing" |
CompatTaskReady
object
| Field | Type | Description |
|---|---|---|
costrequired | string | US dollars, e.g. |
createTimerequired | integer | Unix seconds. |
endTimerequired | integer | Unix seconds. |
errorIdrequired | const 0 | |
iprequired | string | Client IP that created the task (empty for sandbox tasks). |
solutionrequired | CompatSolution | The answer in anti-captcha's field names for the task type name used to create the task (for example
|
solveCountrequired | integer | Solver attempts. ≥ 1 |
statusrequired | const "ready" |
CompatTaskRequest
object
| Field | Type | Description |
|---|---|---|
clientKeyrequired | string | Your key ( |
taskIdrequired | one of | The task ID, as a number or a string of digits. one of:integer, string |
CompatTaskType
string
Task type name in the compatibility API (case-insensitive). Each name maps to a canonical type and variant (see CreateTaskRequest for the parameters). Names ending in Proxyless ignore proxy fields; the others require a proxy. Unknown names: ERROR_TASK_NOT_SUPPORTED.
x-noptcha-aliases lists, per name, fields (compatibility field → canonical parameter; null: accepted but not passed on; to_array: a single value is wrapped in an array) and solution (canonical solution field → compatibility field; index_bools: selected indexes become one boolean per image or tile).
| Name | Canonical type | Variant | Notes |
|---|---|---|---|
FunCaptchaClassification |
image.funcaptcha |
proxyless | |
FunCaptchaTask |
funcaptcha |
proxy | |
FunCaptchaTaskProxyless |
funcaptcha |
proxyless | |
HCaptchaClassification |
image.grid.hcaptcha |
proxyless | |
HCaptchaTask |
hcaptcha |
proxy | |
HCaptchaTaskProxyless |
hcaptcha |
proxyless | |
ImageToTextTask |
image.text |
proxyless | |
NoCaptchaTask |
recaptcha.v2 |
proxy | |
NoCaptchaTaskProxyless |
recaptcha.v2 |
proxyless | |
ReCaptchaV2Classification |
image.grid.recaptcha |
proxyless | |
RecaptchaV2EnterpriseTask |
recaptcha.v2.enterprise |
proxy | |
RecaptchaV2EnterpriseTaskProxyless |
recaptcha.v2.enterprise |
proxyless | |
RecaptchaV2Task |
recaptcha.v2 |
proxy | |
RecaptchaV2TaskProxyless |
recaptcha.v2 |
proxyless | |
RecaptchaV3EnterpriseTask |
recaptcha.v3.enterprise |
proxyless | |
RecaptchaV3TaskProxyless |
recaptcha.v3 |
proxyless | isEnterprise: true → recaptcha.v3.enterprise |
TurnstileTask |
turnstile |
proxy | |
TurnstileTaskProxyless |
turnstile |
proxyless |
Confidences
array of number · max items 64
CreateCloudflareChallengeTaskRequest
Task type page: /docs/task-types/cloudflare-challenge/
object
Cloudflare challenge page (cloudflare.challenge, family cloudflare, active). Variants: proxy (params.proxy is required). Tasks not solved within 120 seconds fail with timeout.
| Field | Type | Description |
|---|---|---|
callback_urloptional | CallbackUrl | Where to POST the task's final result (a |
metadataoptional | Metadata | Your own key-value pairs, returned with the task. At most 16 keys; keys 1–64 characters, values
strings of at most 256 characters (Unicode code points, as JSON Schema counts them). A value that is
not a string is |
paramsrequired | CloudflareChallengeParams | |
typerequired | const "cloudflare.challenge" |
CreateFuncaptchaTaskRequest
Task type page: /docs/task-types/funcaptcha/
object
FunCaptcha (Arkose Labs) (funcaptcha, family arkose, beta). Variants: proxyless, proxy (the proxy variant when params.proxy is given). Tasks not solved within 180 seconds fail with timeout.
Compatibility API names: FunCaptchaTask (proxy), FunCaptchaTaskProxyless (proxyless).
| Field | Type | Description |
|---|---|---|
callback_urloptional | CallbackUrl | Where to POST the task's final result (a |
metadataoptional | Metadata | Your own key-value pairs, returned with the task. At most 16 keys; keys 1–64 characters, values
strings of at most 256 characters (Unicode code points, as JSON Schema counts them). A value that is
not a string is |
paramsrequired | FuncaptchaParams | |
typerequired | const "funcaptcha" |
CreateHcaptchaTaskRequest
Task type page: /docs/task-types/hcaptcha/
object
hCaptcha (hcaptcha, family hcaptcha, active). Variants: proxyless, proxy (the proxy variant when params.proxy is given). Tasks not solved within 120 seconds fail with timeout.
Compatibility API names: HCaptchaTask (proxy), HCaptchaTaskProxyless (proxyless).
| Field | Type | Description |
|---|---|---|
callback_urloptional | CallbackUrl | Where to POST the task's final result (a |
metadataoptional | Metadata | Your own key-value pairs, returned with the task. At most 16 keys; keys 1–64 characters, values
strings of at most 256 characters (Unicode code points, as JSON Schema counts them). A value that is
not a string is |
paramsrequired | HcaptchaParams | |
typerequired | const "hcaptcha" |
CreateImageFuncaptchaTaskRequest
Task type page: /docs/task-types/image-funcaptcha/
object
FunCaptcha image (image.funcaptcha, family image, beta). Variants: proxyless. Tasks not solved within 60 seconds fail with timeout.
Compatibility API names: FunCaptchaClassification (proxyless).
| Field | Type | Description |
|---|---|---|
callback_urloptional | CallbackUrl | Where to POST the task's final result (a |
metadataoptional | Metadata | Your own key-value pairs, returned with the task. At most 16 keys; keys 1–64 characters, values
strings of at most 256 characters (Unicode code points, as JSON Schema counts them). A value that is
not a string is |
paramsrequired | ImageFuncaptchaParams | |
typerequired | const "image.funcaptcha" |
CreateImageGridAwsTaskRequest
Task type page: /docs/task-types/image-grid-aws/
object
AWS WAF image grid (image.grid.aws, family image, beta). Variants: proxyless. Tasks not solved within 60 seconds fail with timeout.
| Field | Type | Description |
|---|---|---|
callback_urloptional | CallbackUrl | Where to POST the task's final result (a |
metadataoptional | Metadata | Your own key-value pairs, returned with the task. At most 16 keys; keys 1–64 characters, values
strings of at most 256 characters (Unicode code points, as JSON Schema counts them). A value that is
not a string is |
paramsrequired | ImageGridAwsParams | |
typerequired | const "image.grid.aws" |
CreateImageGridHcaptchaTaskRequest
Task type page: /docs/task-types/image-grid-hcaptcha/
object
hCaptcha image grid (image.grid.hcaptcha, family image, active). Variants: proxyless. Tasks not solved within 60 seconds fail with timeout.
Compatibility API names: HCaptchaClassification (proxyless).
| Field | Type | Description |
|---|---|---|
callback_urloptional | CallbackUrl | Where to POST the task's final result (a |
metadataoptional | Metadata | Your own key-value pairs, returned with the task. At most 16 keys; keys 1–64 characters, values
strings of at most 256 characters (Unicode code points, as JSON Schema counts them). A value that is
not a string is |
paramsrequired | ImageGridHcaptchaParams | |
typerequired | const "image.grid.hcaptcha" |
CreateImageGridRecaptchaTaskRequest
Task type page: /docs/task-types/image-grid-recaptcha/
object
reCAPTCHA image grid (image.grid.recaptcha, family image, active). Variants: proxyless. Tasks not solved within 60 seconds fail with timeout.
Compatibility API names: ReCaptchaV2Classification (proxyless).
| Field | Type | Description |
|---|---|---|
callback_urloptional | CallbackUrl | Where to POST the task's final result (a |
metadataoptional | Metadata | Your own key-value pairs, returned with the task. At most 16 keys; keys 1–64 characters, values
strings of at most 256 characters (Unicode code points, as JSON Schema counts them). A value that is
not a string is |
paramsrequired | ImageGridRecaptchaParams | |
typerequired | const "image.grid.recaptcha" |
CreateImageTextTaskRequest
Task type page: /docs/task-types/image-to-text/
object
Image to text (image.text, family image, active). Variants: proxyless. Tasks not solved within 60 seconds fail with timeout.
Compatibility API names: ImageToTextTask (proxyless).
| Field | Type | Description |
|---|---|---|
callback_urloptional | CallbackUrl | Where to POST the task's final result (a |
metadataoptional | Metadata | Your own key-value pairs, returned with the task. At most 16 keys; keys 1–64 characters, values
strings of at most 256 characters (Unicode code points, as JSON Schema counts them). A value that is
not a string is |
paramsrequired | ImageTextParams | |
typerequired | const "image.text" |
CreateRecaptchaV2EnterpriseTaskRequest
Task type page: /docs/task-types/recaptcha-v2-enterprise/
object
reCAPTCHA v2 Enterprise (recaptcha.v2.enterprise, family recaptcha, active). Variants: proxyless, proxy (the proxy variant when params.proxy is given). Tasks not solved within 120 seconds fail with timeout.
Compatibility API names: RecaptchaV2EnterpriseTask (proxy), RecaptchaV2EnterpriseTaskProxyless (proxyless).
| Field | Type | Description |
|---|---|---|
callback_urloptional | CallbackUrl | Where to POST the task's final result (a |
metadataoptional | Metadata | Your own key-value pairs, returned with the task. At most 16 keys; keys 1–64 characters, values
strings of at most 256 characters (Unicode code points, as JSON Schema counts them). A value that is
not a string is |
paramsrequired | RecaptchaV2EnterpriseParams | |
typerequired | const "recaptcha.v2.enterprise" |
CreateRecaptchaV2TaskRequest
Task type page: /docs/task-types/recaptcha-v2/
object
reCAPTCHA v2 (recaptcha.v2, family recaptcha, active). Variants: proxyless, proxy (the proxy variant when params.proxy is given). Tasks not solved within 120 seconds fail with timeout.
Compatibility API names: NoCaptchaTask (proxy), NoCaptchaTaskProxyless (proxyless), RecaptchaV2Task (proxy), RecaptchaV2TaskProxyless (proxyless).
| Field | Type | Description |
|---|---|---|
callback_urloptional | CallbackUrl | Where to POST the task's final result (a |
metadataoptional | Metadata | Your own key-value pairs, returned with the task. At most 16 keys; keys 1–64 characters, values
strings of at most 256 characters (Unicode code points, as JSON Schema counts them). A value that is
not a string is |
paramsrequired | RecaptchaV2Params | |
typerequired | const "recaptcha.v2" |
CreateRecaptchaV3EnterpriseTaskRequest
Task type page: /docs/task-types/recaptcha-v3-enterprise/
object
reCAPTCHA v3 Enterprise (recaptcha.v3.enterprise, family recaptcha, active). Variants: proxyless. Tasks not solved within 120 seconds fail with timeout.
Compatibility API names: RecaptchaV3EnterpriseTask (proxyless), RecaptchaV3TaskProxyless (proxyless, with isEnterprise: true).
| Field | Type | Description |
|---|---|---|
callback_urloptional | CallbackUrl | Where to POST the task's final result (a |
metadataoptional | Metadata | Your own key-value pairs, returned with the task. At most 16 keys; keys 1–64 characters, values
strings of at most 256 characters (Unicode code points, as JSON Schema counts them). A value that is
not a string is |
paramsrequired | RecaptchaV3EnterpriseParams | |
typerequired | const "recaptcha.v3.enterprise" |
CreateRecaptchaV3TaskRequest
Task type page: /docs/task-types/recaptcha-v3/
object
reCAPTCHA v3 (recaptcha.v3, family recaptcha, active). Variants: proxyless. Tasks not solved within 120 seconds fail with timeout.
Compatibility API names: RecaptchaV3TaskProxyless (proxyless).
| Field | Type | Description |
|---|---|---|
callback_urloptional | CallbackUrl | Where to POST the task's final result (a |
metadataoptional | Metadata | Your own key-value pairs, returned with the task. At most 16 keys; keys 1–64 characters, values
strings of at most 256 characters (Unicode code points, as JSON Schema counts them). A value that is
not a string is |
paramsrequired | RecaptchaV3Params | |
typerequired | const "recaptcha.v3" |
CreateTaskRequest
one of
A task: type selects the parameters schema. New types may be added.
type |
Name | Family | Variants | Timeout | Status |
|---|---|---|---|---|---|
cloudflare.challenge |
Cloudflare challenge page | cloudflare |
proxy |
120 s | active |
funcaptcha |
FunCaptcha (Arkose Labs) | arkose |
proxyless, proxy |
180 s | beta |
hcaptcha |
hCaptcha | hcaptcha |
proxyless, proxy |
120 s | active |
image.funcaptcha |
FunCaptcha image | image |
proxyless |
60 s | beta |
image.grid.aws |
AWS WAF image grid | image |
proxyless |
60 s | beta |
image.grid.hcaptcha |
hCaptcha image grid | image |
proxyless |
60 s | active |
image.grid.recaptcha |
reCAPTCHA image grid | image |
proxyless |
60 s | active |
image.text |
Image to text | image |
proxyless |
60 s | active |
recaptcha.v2 |
reCAPTCHA v2 | recaptcha |
proxyless, proxy |
120 s | active |
recaptcha.v2.enterprise |
reCAPTCHA v2 Enterprise | recaptcha |
proxyless, proxy |
120 s | active |
recaptcha.v3 |
reCAPTCHA v3 | recaptcha |
proxyless |
120 s | active |
recaptcha.v3.enterprise |
reCAPTCHA v3 Enterprise | recaptcha |
proxyless |
120 s | active |
turnstile |
Cloudflare Turnstile | cloudflare |
proxyless, proxy |
120 s | active |
One of (selected by type):
CreateCloudflareChallengeTaskRequest— Cloudflare challenge page (cloudflare.challenge, familycloudflare, active). Variants:proxy(params.proxyis required). Tasks not solved within 120 seconds fail withtimeout.CreateFuncaptchaTaskRequest— FunCaptcha (Arkose Labs) (funcaptcha, familyarkose, beta). Variants:proxyless,proxy(theproxyvariant whenparams.proxyis given). Tasks not solved within 180 seconds fail withtimeout.CreateHcaptchaTaskRequest— hCaptcha (hcaptcha, familyhcaptcha, active). Variants:proxyless,proxy(theproxyvariant whenparams.proxyis given). Tasks not solved within 120 seconds fail withtimeout.CreateImageFuncaptchaTaskRequest— FunCaptcha image (image.funcaptcha, familyimage, beta). Variants:proxyless. Tasks not solved within 60 seconds fail withtimeout.CreateImageGridAwsTaskRequest— AWS WAF image grid (image.grid.aws, familyimage, beta). Variants:proxyless. Tasks not solved within 60 seconds fail withtimeout.CreateImageGridHcaptchaTaskRequest— hCaptcha image grid (image.grid.hcaptcha, familyimage, active). Variants:proxyless. Tasks not solved within 60 seconds fail withtimeout.CreateImageGridRecaptchaTaskRequest— reCAPTCHA image grid (image.grid.recaptcha, familyimage, active). Variants:proxyless. Tasks not solved within 60 seconds fail withtimeout.CreateImageTextTaskRequest— Image to text (image.text, familyimage, active). Variants:proxyless. Tasks not solved within 60 seconds fail withtimeout.CreateRecaptchaV2TaskRequest— reCAPTCHA v2 (recaptcha.v2, familyrecaptcha, active). Variants:proxyless,proxy(theproxyvariant whenparams.proxyis given). Tasks not solved within 120 seconds fail withtimeout.CreateRecaptchaV2EnterpriseTaskRequest— reCAPTCHA v2 Enterprise (recaptcha.v2.enterprise, familyrecaptcha, active). Variants:proxyless,proxy(theproxyvariant whenparams.proxyis given). Tasks not solved within 120 seconds fail withtimeout.CreateRecaptchaV3TaskRequest— reCAPTCHA v3 (recaptcha.v3, familyrecaptcha, active). Variants:proxyless. Tasks not solved within 120 seconds fail withtimeout.CreateRecaptchaV3EnterpriseTaskRequest— reCAPTCHA v3 Enterprise (recaptcha.v3.enterprise, familyrecaptcha, active). Variants:proxyless. Tasks not solved within 120 seconds fail withtimeout.CreateTurnstileTaskRequest— Cloudflare Turnstile (turnstile, familycloudflare, active). Variants:proxyless,proxy(theproxyvariant whenparams.proxyis given). Tasks not solved within 120 seconds fail withtimeout.
CreateTurnstileTaskRequest
Task type page: /docs/task-types/turnstile/
object
Cloudflare Turnstile (turnstile, family cloudflare, active). Variants: proxyless, proxy (the proxy variant when params.proxy is given). Tasks not solved within 120 seconds fail with timeout.
Compatibility API names: TurnstileTask (proxy), TurnstileTaskProxyless (proxyless).
| Field | Type | Description |
|---|---|---|
callback_urloptional | CallbackUrl | Where to POST the task's final result (a |
metadataoptional | Metadata | Your own key-value pairs, returned with the task. At most 16 keys; keys 1–64 characters, values
strings of at most 256 characters (Unicode code points, as JSON Schema counts them). A value that is
not a string is |
paramsrequired | TurnstileParams | |
typerequired | const "turnstile" |
EnterprisePayload
object · max 32 keys
Extra enterprise parameters passed to the widget as is, e.g. {"s": "..."} for reCAPTCHA Enterprise or {"rqdata": "..."} for hCaptcha.
FeedbackRequest
object
| Field | Type | Description |
|---|---|---|
correctrequired | boolean | Whether the answer was accepted by the target site. |
reasonoptional | string | Optional free text; not stored. |
FeedbackResult
object
| Field | Type | Description |
|---|---|---|
acceptedrequired | const true | |
idrequired | string | pattern: ^[0-9]+$ |
FieldError
object
| Field | Type | Description |
|---|---|---|
messagerequired | string | |
pointerrequired | string | JSON Pointer (RFC 6901) to the offending value, from the root of the request body:
|
reasonoptional | enum | Machine-readable kind, present for image problems: |
FuncaptchaParams
Task type page: /docs/task-types/funcaptcha/
object
| Field | Type | Description |
|---|---|---|
api_subdomainoptional | Hostname | Subdomain that serves the widget, e.g. client-api.arkoselabs.com. |
dataoptional | string | Extra blob data as a JSON string, e.g. {"blob":"..."}. min length 1 · max length 16,384 |
proxyoptional | Proxy | Proxy the solver must use. login and password are used in memory only and are never stored or logged. |
user_agentoptional | UserAgent | Browser User-Agent. |
website_public_keyrequired | string | The public key (data-pkey). min length 1 · max length 128 |
website_urlrequired | WebsiteUrl | Full URL of the page that shows the captcha (http or https). |
FuncaptchaSolution
Task type page: /docs/task-types/funcaptcha/
object
| Field | Type | Description |
|---|---|---|
tokenrequired | Token | Token to submit to the target site. Single use. |
HcaptchaParams
Task type page: /docs/task-types/hcaptcha/
object
| Field | Type | Description |
|---|---|---|
enterprise_payloadoptional | EnterprisePayload | Extra enterprise parameters passed to the widget as is, e.g. {"s": "..."} for reCAPTCHA Enterprise or {"rqdata": "..."} for hCaptcha. |
is_invisibleoptional | boolean | true for the invisible hCaptcha. |
proxyoptional | Proxy | Proxy the solver must use. login and password are used in memory only and are never stored or logged. |
user_agentoptional | UserAgent | Browser User-Agent. |
website_keyrequired | WebsiteKey | The site key of the captcha widget. |
website_urlrequired | WebsiteUrl | Full URL of the page that shows the captcha (http or https). |
HcaptchaSolution
Task type page: /docs/task-types/hcaptcha/
object
| Field | Type | Description |
|---|---|---|
resp_keyoptional | string | Value some sites require together with the token (respKey). |
tokenrequired | Token | Token to submit to the target site. Single use. |
user_agentoptional | UserAgent | User-Agent the token was obtained with; use it when submitting the token. |
Hostname
string · format: hostname · min length 1 · max length 253
Image
string · min length 1 · max length 1,000,000
Base64-encoded PNG, JPEG, GIF, WebP or BMP image (standard or URL-safe alphabet; a data:image/...;base64, prefix, line breaks and missing padding are accepted). At most 1,000,000 characters, 8192 pixels per side and 8,388,608 pixels in total; animated images at most 1000 frames and 8,388,608 pixels for frames x width x height; multi-picture JPEG (MPO), JPEG with more than 100 scans, malformed or truncated images are rejected.
ImageFuncaptchaParams
Task type page: /docs/task-types/image-funcaptcha/
object
| Field | Type | Description |
|---|---|---|
imagesrequired | array of Image | Base64 of each challenge image (at most 20). min items 1 · max items 20 |
images.[item]optional | Image | Base64-encoded PNG, JPEG, GIF, WebP or BMP image (standard or URL-safe alphabet; a data:image/...;base64, prefix, line breaks and missing padding are accepted). At most 1,000,000 characters, 8192 pixels per side and 8,388,608 pixels in total; animated images at most 1000 frames and 8,388,608 pixels for frames x width x height; multi-picture JPEG (MPO), JPEG with more than 100 scans, malformed or truncated images are rejected. |
questionrequired | Question | The question in English, e.g. Pick the image that is the correct way up. |
ImageFuncaptchaSolution
Task type page: /docs/task-types/image-funcaptcha/
object
| Field | Type | Description |
|---|---|---|
objectsrequired | Indexes | Zero-based indexes of the images or tiles to select, left to right, top to bottom. |
ImageGridAwsParams
Task type page: /docs/task-types/image-grid-aws/
object
| Field | Type | Description |
|---|---|---|
imagerequired | Image | Base64 of the whole 3x3 grid image. |
questionoptional | Question | The full question as shown on the page, e.g. Select all hats. |
ImageGridAwsSolution
Task type page: /docs/task-types/image-grid-aws/
object
| Field | Type | Description |
|---|---|---|
confidencesoptional | Confidences | |
objectsrequired | Indexes | Zero-based indexes of the images or tiles to select, left to right, top to bottom. |
ImageGridHcaptchaParams
Task type page: /docs/task-types/image-grid-hcaptcha/
object
Give at least one of question, anchors.
| Field | Type | Description |
|---|---|---|
anchorsoptional | array of Image | Base64 of the example images shown next to the question. min items 1 · max items 10 |
anchors.[item]optional | Image | Base64-encoded PNG, JPEG, GIF, WebP or BMP image (standard or URL-safe alphabet; a data:image/...;base64, prefix, line breaks and missing padding are accepted). At most 1,000,000 characters, 8192 pixels per side and 8,388,608 pixels in total; animated images at most 1000 frames and 8,388,608 pixels for frames x width x height; multi-picture JPEG (MPO), JPEG with more than 100 scans, malformed or truncated images are rejected. |
imagesrequired | array of Image | Base64 of each challenge image in page order. min items 1 · max items 20 |
images.[item]optional | Image | Base64-encoded PNG, JPEG, GIF, WebP or BMP image (standard or URL-safe alphabet; a data:image/...;base64, prefix, line breaks and missing padding are accepted). At most 1,000,000 characters, 8192 pixels per side and 8,388,608 pixels in total; animated images at most 1000 frames and 8,388,608 pixels for frames x width x height; multi-picture JPEG (MPO), JPEG with more than 100 scans, malformed or truncated images are rejected. |
questionoptional | Question | The full question as shown on the page. |
ImageGridHcaptchaSolution
Task type page: /docs/task-types/image-grid-hcaptcha/
object
| Field | Type | Description |
|---|---|---|
confidencesoptional | Confidences | |
objectsrequired | Indexes | Zero-based indexes of the images or tiles to select, left to right, top to bottom. |
ImageGridRecaptchaParams
Task type page: /docs/task-types/image-grid-recaptcha/
object
| Field | Type | Description |
|---|---|---|
confidenceoptional | number | 3x3 only: return every tile scoring above this threshold instead of the top 3. ≥ 0 · ≤ 1 |
gridoptional | enum | Grid shape. Inferred from the image size when omitted. one of "1x1", "3x3", "4x4" |
imagerequired | Image | Base64 of the whole challenge image (3x3 or 4x4 grid) or of a single 1x1 tile. |
questionrequired | Question | Question ID such as /m/0k4j. |
ImageGridRecaptchaSolution
Task type page: /docs/task-types/image-grid-recaptcha/
object
Give at least one of objects, has_object.
| Field | Type | Description |
|---|---|---|
confidencesoptional | Confidences | |
has_objectoptional | boolean | 1x1 tile: whether the tile contains the target. |
objectsoptional | Indexes | Zero-based indexes of the images or tiles to select, left to right, top to bottom. |
ImageTextParams
Task type page: /docs/task-types/image-to-text/
object
| Field | Type | Description |
|---|---|---|
case_sensitiveoptional | boolean | The answer is case-sensitive. |
imagerequired | Image | Base64-encoded PNG, JPEG, GIF, WebP or BMP image (standard or URL-safe alphabet; a data:image/...;base64, prefix, line breaks and missing padding are accepted). At most 1,000,000 characters, 8192 pixels per side and 8,388,608 pixels in total; animated images at most 1000 frames and 8,388,608 pixels for frames x width x height; multi-picture JPEG (MPO), JPEG with more than 100 scans, malformed or truncated images are rejected. |
mathoptional | boolean | The image is an arithmetic expression; the answer is its result. |
max_lengthoptional | integer | Maximum answer length; 0 means no limit. ≥ 0 · ≤ 100 |
min_lengthoptional | integer | Minimum answer length; 0 means no limit. ≥ 0 · ≤ 100 |
numericoptional | enum | 0 no requirement; 1 digits only; 2 no digits. one of 0, 1, 2 |
phraseoptional | boolean | The answer contains at least one space. |
ImageTextSolution
Task type page: /docs/task-types/image-to-text/
object
| Field | Type | Description |
|---|---|---|
textrequired | string | Recognized text. min length 1 · max length 1,024 |
Indexes
array of integer · max items 64 · unique items
Zero-based indexes of the images or tiles to select, left to right, top to bottom.
Me
object
| Field | Type | Description |
|---|---|---|
budgetrequired | one of | null | The key's spending budget; object |
keyrequired | object | |
key.allow_cidrsrequired | array | null | Client IP ranges this key may be used from; |
key.allowed_typesrequired | array | null | Task types this key may use; |
key.expires_atrequired | string | null | format: date-time · pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}Z$ |
key.idrequired | string | |
key.last4required | string | |
key.moderequired | enum | one of "live", "test" |
key.namerequired | string | |
key.prefixrequired | string | |
key.revoke_atrequired | string | null | When a rotated key stops working. format: date-time · pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}Z$ |
key.scopesrequired | array of string | |
limitsrequired | object | |
limits.concurrency_by_familyrequired | object | Tasks in flight allowed for this organization, per captcha family ( |
limits.concurrency_by_family.<any key>optional | integer | |
limits.concurrency_per_familyrequired | integer | Default number of tasks in flight per captcha family. Your organization may have a different limit for some families; |
limits.create_tasksrequired | one of | null | Tasks this key may create per window; RatePolicy |
limits.sandboxoptional | object | Present for test keys. |
limits.sandbox.create_tasks_per_orgrequired | one of | null | one of: RatePolicy |
limits.sandbox.in_flight_per_orgrequired | integer | |
limits.sandbox.waits_per_org_per_processrequired | integer | |
limits.task_pollsrequired | one of | null | Polls per task per window (including bursts); RatePolicy |
limits.wait_max_secondsrequired | integer | Longest synchronous wait. |
organizationrequired | object | |
organization.idrequired | string | |
organization.namerequired | string | |
organization.statusrequired | string |
Metadata
object · max 16 keys
Your own key-value pairs, returned with the task. At most 16 keys; keys 1–64 characters, values
strings of at most 256 characters (Unicode code points, as JSON Schema counts them). A value that is
not a string is 422 invalid_params with pointer /metadata/<key>.
| Field | Type | Description |
|---|---|---|
<any key>optional | string | max length 256 |
Money
object
| Field | Type | Description |
|---|---|---|
amountrequired | string | Decimal US dollars with 6 places. pattern: ^-?[0-9]+\.[0-9]{6}$ |
currencyrequired | const "USD" |
Problem
object
An error, as RFC 9457 problem details (application/problem+json). Use code in programs; type is
https://noptcha.com/docs/errors/<code>. New codes may be added.
| code | HTTP | when |
|---|---|---|
invalid_request |
400 | malformed body, missing field, bad parameter, callback_url not a string |
unsupported_type |
400 | unknown or unavailable task type |
unauthorized |
401 | invalid, revoked or expired key |
insufficient_balance |
402 | balance too low for the task's price |
budget_exceeded |
402 | the key's budget for the period is used up |
forbidden |
403 | missing scope, IP not allowed, type not allowed, organization suspended |
not_found |
404 | unknown endpoint or method; unknown, expired or foreign task; expired idempotent task |
idempotency_conflict |
409 | same Idempotency-Key with another body, or still in progress |
task_not_solved |
409 | feedback for a task that is still processing or failed |
request_too_large |
413 | body over the limit |
invalid_params |
422 | params or metadata do not match the schema, or callback_url is not allowed |
rate_limited |
429 | over a rate limit, or IP blocked after invalid keys |
concurrency_limited |
429 | too many tasks in flight |
internal |
500 | our error |
service_unavailable |
503 | no capacity or a dependency is down |
| Field | Type | Description |
|---|---|---|
coderequired | string | Machine-readable error code (see the table). |
detailoptional | string | Human-readable explanation of this occurrence. |
request_idrequired | string | Same as the |
statusrequired | integer | The HTTP status code. |
titlerequired | string | |
typerequired | string | format: uri |
Proxy
object
Proxy the solver must use. login and password are used in memory only and are never stored or logged.
| Field | Type | Description |
|---|---|---|
hostrequired | string | IP address or host name. Private and loopback addresses are rejected. min length 1 · max length 253 |
loginoptional | string | max length 256 |
passwordoptional | string | max length 256 |
portrequired | integer | ≥ 1 · ≤ 65535 |
typerequired | enum | one of "http", "https", "socks4", "socks5" |
Question
string · min length 1 · max length 1,024
RatePolicy
object
| Field | Type | Description |
|---|---|---|
limitrequired | integer | |
window_secondsrequired | integer |
RecaptchaV2EnterpriseParams
Task type page: /docs/task-types/recaptcha-v2-enterprise/
object
| Field | Type | Description |
|---|---|---|
api_domainoptional | Hostname | Domain the widget is loaded from, e.g. www.recaptcha.net. Omit for the default. |
cookiesoptional | string | Cookies for the target site, as in a Cookie header: name1=value1; name2=value2. max length 8,192 |
enterprise_payloadoptional | EnterprisePayload | Extra enterprise parameters passed to the widget as is, e.g. {"s": "..."} for reCAPTCHA Enterprise or {"rqdata": "..."} for hCaptcha. |
is_invisibleoptional | boolean | true for the invisible reCAPTCHA. |
proxyoptional | Proxy | Proxy the solver must use. login and password are used in memory only and are never stored or logged. |
user_agentoptional | UserAgent | Browser User-Agent. |
website_keyrequired | WebsiteKey | The site key of the captcha widget. |
website_urlrequired | WebsiteUrl | Full URL of the page that shows the captcha (http or https). |
RecaptchaV2EnterpriseSolution
Task type page: /docs/task-types/recaptcha-v2-enterprise/
object
| Field | Type | Description |
|---|---|---|
tokenrequired | Token | Token to submit to the target site. Single use. |
user_agentoptional | UserAgent | User-Agent the token was obtained with; use it when submitting the token. |
RecaptchaV2Params
Task type page: /docs/task-types/recaptcha-v2/
object
| Field | Type | Description |
|---|---|---|
api_domainoptional | Hostname | Domain the widget is loaded from, e.g. www.recaptcha.net. Omit for the default. |
cookiesoptional | string | Cookies for the target site, as in a Cookie header: name1=value1; name2=value2. max length 8,192 |
is_invisibleoptional | boolean | true for the invisible reCAPTCHA. |
proxyoptional | Proxy | Proxy the solver must use. login and password are used in memory only and are never stored or logged. |
user_agentoptional | UserAgent | Browser User-Agent. |
website_keyrequired | WebsiteKey | The site key of the captcha widget. |
website_urlrequired | WebsiteUrl | Full URL of the page that shows the captcha (http or https). |
RecaptchaV2Solution
Task type page: /docs/task-types/recaptcha-v2/
object
| Field | Type | Description |
|---|---|---|
tokenrequired | Token | Token to submit to the target site. Single use. |
user_agentoptional | UserAgent | User-Agent the token was obtained with; use it when submitting the token. |
RecaptchaV3EnterpriseParams
Task type page: /docs/task-types/recaptcha-v3-enterprise/
object
| Field | Type | Description |
|---|---|---|
api_domainoptional | Hostname | Domain the widget is loaded from, e.g. www.recaptcha.net. Omit for the default. |
cookiesoptional | string | Cookies for the target site, as in a Cookie header: name1=value1; name2=value2. max length 8,192 |
enterprise_payloadoptional | EnterprisePayload | Extra enterprise parameters passed to the widget as is, e.g. {"s": "..."} for reCAPTCHA Enterprise or {"rqdata": "..."} for hCaptcha. |
min_scoreoptional | number | Minimum score the token should reach (0.1 to 0.9). ≥ 0.1 · ≤ 0.9 |
page_actionoptional | string | The action passed to grecaptcha.execute. min length 1 · max length 256 |
user_agentoptional | UserAgent | Browser User-Agent. |
website_keyrequired | WebsiteKey | The site key of the captcha widget. |
website_urlrequired | WebsiteUrl | Full URL of the page that shows the captcha (http or https). |
RecaptchaV3EnterpriseSolution
Task type page: /docs/task-types/recaptcha-v3-enterprise/
object
| Field | Type | Description |
|---|---|---|
tokenrequired | Token | Token to submit to the target site. Single use. |
user_agentoptional | UserAgent | User-Agent the token was obtained with; use it when submitting the token. |
RecaptchaV3Params
Task type page: /docs/task-types/recaptcha-v3/
object
| Field | Type | Description |
|---|---|---|
api_domainoptional | Hostname | Domain the widget is loaded from, e.g. www.recaptcha.net. Omit for the default. |
cookiesoptional | string | Cookies for the target site, as in a Cookie header: name1=value1; name2=value2. max length 8,192 |
min_scoreoptional | number | Minimum score the token should reach (0.1 to 0.9). ≥ 0.1 · ≤ 0.9 |
page_actionoptional | string | The action passed to grecaptcha.execute. min length 1 · max length 256 |
user_agentoptional | UserAgent | Browser User-Agent. |
website_keyrequired | WebsiteKey | The site key of the captcha widget. |
website_urlrequired | WebsiteUrl | Full URL of the page that shows the captcha (http or https). |
RecaptchaV3Solution
Task type page: /docs/task-types/recaptcha-v3/
object
| Field | Type | Description |
|---|---|---|
tokenrequired | Token | Token to submit to the target site. Single use. |
user_agentoptional | UserAgent | User-Agent the token was obtained with; use it when submitting the token. |
Solution
object
A task's answer. Its shape is the solution schema of the task's type (<Type>Solution, e.g. RecaptchaV2Solution for recaptcha.v2).
Any of:
CloudflareChallengeSolutionFuncaptchaSolutionHcaptchaSolutionImageFuncaptchaSolutionImageGridAwsSolutionImageGridHcaptchaSolutionImageGridRecaptchaSolutionImageTextSolutionRecaptchaV2SolutionRecaptchaV2EnterpriseSolutionRecaptchaV3SolutionRecaptchaV3EnterpriseSolutionTurnstileSolution
Task
object
| Field | Type | Description |
|---|---|---|
completed_atoptional | string | When the task became final; absent while processing. format: date-time · pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}Z$ |
costrequired | Money | What the task cost (zero unless solved and charged). |
created_atrequired | string | format: date-time · pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}Z$ |
errorrequired | one of | null | Why the task failed when TaskError |
idrequired | string | Task ID (a 53-bit integer as a string). pattern: ^[0-9]+$ |
metadataoptional | Metadata | Your own key-value pairs, returned with the task. At most 16 keys; keys 1–64 characters, values
strings of at most 256 characters (Unicode code points, as JSON Schema counts them). A value that is
not a string is |
paramsrequired | object | null | The task's parameters with secrets removed (proxy login and password, cookies where the type marks
them sensitive) and strings longer than 256 bytes (images) replaced by |
sandboxoptional | const true | Present (true) on tasks created with a test key. |
solutionrequired | one of | null | The answer when Solution |
statusrequired | enum | one of "processing", "solved", "failed" |
typerequired | string | Canonical task type, e.g. |
TaskError
object
| code | meaning |
|---|---|
unsolvable |
the captcha could not be solved (also when no solver accepts these parameters) |
timeout |
not solved before the type's deadline |
proxy_error |
the proxy could not be used |
invalid_site |
the site key or domain is invalid |
invalid_image |
the image is empty, too big or unreadable |
cancelled |
the task was cancelled |
New codes may be added.
| Field | Type | Description |
|---|---|---|
coderequired | string | |
messagerequired | string |
Token
string · min length 1
Token to submit to the target site. Single use.
TurnstileParams
Task type page: /docs/task-types/turnstile/
object
| Field | Type | Description |
|---|---|---|
actionoptional | string | The action option of the widget (data-action). min length 1 · max length 256 |
cdataoptional | string | The cData option of the widget (data-cdata). min length 1 · max length 1,024 |
page_dataoptional | string | The chlPageData value of a challenge page widget. min length 1 · max length 8,192 |
proxyoptional | Proxy | Proxy the solver must use. login and password are used in memory only and are never stored or logged. |
user_agentoptional | UserAgent | Browser User-Agent. |
website_keyrequired | WebsiteKey | The site key of the captcha widget. |
website_urlrequired | WebsiteUrl | Full URL of the page that shows the captcha (http or https). |
TurnstileSolution
Task type page: /docs/task-types/turnstile/
object
| Field | Type | Description |
|---|---|---|
tokenrequired | Token | Token to submit to the target site. Single use. |
user_agentoptional | UserAgent | User-Agent the token was obtained with; use it when submitting the token. |
TypeInfo
object
| Field | Type | Description |
|---|---|---|
familyrequired | string | Captcha family (concurrency is limited per family), e.g. |
namerequired | string | |
statusrequired | string |
|
timeout_secondsrequired | integer | Deadline after which an unsolved task fails with |
typerequired | string | |
variantsrequired | array of object | |
variants.[item]optional | object | |
variants.[item].pricerequired | Money | |
variants.[item].variantrequired | string |
|
TypeList
object
| Field | Type | Description |
|---|---|---|
datarequired | array of TypeInfo | |
data.[item]optional | TypeInfo | |
price_versionrequired | integer | Version of the price list the prices come from. |
Usage
object
| Field | Type | Description |
|---|---|---|
currencyrequired | const "USD" | |
datarequired | array of UsageRow | |
data.[item]optional | UsageRow | One period and type ( |
fromrequired | string | Effective start (after rounding and the 90-day limit of |
granularityrequired | enum | one of "hour", "day" |
group_byrequired | enum | one of "type", "key" |
objectrequired | const "usage" | |
sandboxrequired | boolean | True for test keys (always an empty report). |
torequired | string | Effective end (exclusive). format: date-time · pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}Z$ |
totalsrequired | UsageCounts |
UsageCounts
object
| Field | Type | Description |
|---|---|---|
amountrequired | Amount | cash + promo. |
billedrequired | integer | Tasks charged. |
cashrequired | Amount | Decimal US dollars with 6 places. |
promorequired | Amount | Decimal US dollars with 6 places. |
unbilledrequired | integer | Tasks not charged (unsolvable, timed out, cancelled). |
UsageRow
object
One period and type (group_by=type) or key (group_by=key).
| Field | Type | Description |
|---|---|---|
amountrequired | Amount | cash + promo. |
billedrequired | integer | Tasks charged. |
cashrequired | Amount | Decimal US dollars with 6 places. |
promorequired | Amount | Decimal US dollars with 6 places. |
unbilledrequired | integer | Tasks not charged (unsolvable, timed out, cancelled). |
endrequired | string | format: date-time · pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}Z$ |
keyoptional | one of | null | With object |
startrequired | string | format: date-time · pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}Z$ |
typeoptional | string | With |
variantoptional | string | With |
UserAgent
string · min length 1 · max length 1,024
Browser User-Agent.
ValidationProblem
object
invalid_params, with one entry per problem (at most 50, sorted by pointer).
| Field | Type | Description |
|---|---|---|
coderequired | string | Machine-readable error code (see the table). |
detailoptional | string | Human-readable explanation of this occurrence. |
request_idrequired | string | Same as the |
statusrequired | integer | The HTTP status code. |
titlerequired | string | |
typerequired | string | format: uri |
errorsrequired | array of FieldError | One entry per problem, sorted by |
errors.[item]optional | FieldError |
WebhookBalanceLowEvent
object
| Field | Type | Description |
|---|---|---|
datarequired | object | |
data.balancerequired | Amount | Cash + promotional credit when the balance was checked. |
data.currencyrequired | const "USD" | |
data.thresholdrequired | Amount | The alert threshold set in the console. |
timestamprequired | string | When the balance was checked (just after a charge). format: date-time · pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}Z$ |
typerequired | const "balance.low" |
WebhookKeyExpiringEvent
object
| Field | Type | Description |
|---|---|---|
datarequired | object | |
data.expires_atrequired | string | format: date-time · pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}Z$ |
data.idrequired | string | API key ID (as in the console). pattern: ^[0-9]+$ |
data.last4required | string | |
data.moderequired | enum | one of "live", "test" |
data.namerequired | string | |
data.prefixrequired | string | The first characters of the key, as shown in the console. |
timestamprequired | string | When the upcoming expiry was noticed. format: date-time · pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}Z$ |
typerequired | const "key.expiring" |
WebhookPaymentDisputedEvent
object
| Field | Type | Description |
|---|---|---|
datarequired | object | |
data.amountrequired | Amount | Amount in dispute. |
data.currencyrequired | const "USD" | |
data.idrequired | string | Dispute ID. pattern: ^[0-9]+$ |
data.opened_atrequired | string | format: date-time · pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}Z$ |
data.payment_idrequired | string | The disputed payment (top-up), |
timestamprequired | string | When the dispute was opened. format: date-time · pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}Z$ |
typerequired | const "payment.disputed" |
WebhookPaymentRefundedEvent
object
| Field | Type | Description |
|---|---|---|
datarequired | object | |
data.amountrequired | Amount | Amount refunded. |
data.currencyrequired | const "USD" | |
data.idrequired | string | Refund ID. pattern: ^[0-9]+$ |
data.payment_idrequired | string | The refunded payment (top-up), |
data.refunded_atrequired | string | When the refund first succeeded (does not change afterwards). format: date-time · pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}Z$ |
timestamprequired | string | When the refund succeeded. format: date-time · pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}Z$ |
typerequired | const "payment.refunded" |
WebhookPaymentSucceededEvent
object
| Field | Type | Description |
|---|---|---|
datarequired | object | |
data.amountrequired | Amount | Amount added to the balance. |
data.created_atrequired | string | format: date-time · pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}Z$ |
data.credited_atrequired | string | format: date-time · pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}Z$ |
data.currencyrequired | const "USD" | |
data.idrequired | string | The payment (top-up) ID shown in the console, |
timestamprequired | string | When the top-up was credited. format: date-time · pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}Z$ |
typerequired | const "payment.succeeded" |
WebhookTaskEvent
object
A task event (task.solved or task.failed), Standard Webhooks' recommended envelope.
| Field | Type | Description |
|---|---|---|
datarequired | Task | |
timestamprequired | string | When the task became final. format: date-time · pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}Z$ |
typerequired | enum | one of "task.solved", "task.failed" |
WebhookTestEvent
object
| Field | Type | Description |
|---|---|---|
datarequired | object | |
data.endpoint_idrequired | string | |
data.messagerequired | string | |
timestamprequired | string | format: date-time · pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}Z$ |
typerequired | const "webhook.test" |
WebsiteKey
string · min length 1 · max length 512
The site key of the captcha widget.
WebsiteUrl
string · format: uri · pattern: ^[Hh][Tt][Tt][Pp][Ss]?:// · min length 8 · max length 4,096
Full URL of the page that shows the captcha (http or https).