KasadaWorkTimeProxyLess
Mint the per-request x-kpsdk-cd proof-of-work for a Kasada session you already hold.
Once a Kasada session exists, some sites additionally require an x-kpsdk-cd header on every protected request. It is a proof-of-work computed from the session's x-kpsdk-st timestamp: cheap, single-use, and unrelated to solving the challenge itself. This task mints one.
You need it only when the browser sends x-kpsdk-cd on the requests you are reproducing. Check DevTools first.
Never reuse a cd value
Generate a fresh x-kpsdk-cd immediately before each protected request. Replaying one across requests fails.
Where st comes from
st is the x-kpsdk-st response header from the /tl POST: either the one you made with
KasadaTlPayloadProxyLess or
KasadaPayloadProxyLess, or the value returned in the solution of a managed
solve. Send the same userAgent the session was opened with.
Supported Providers
| Provider | Price per 1,000 | Routing |
|---|---|---|
| $0.10 |
Request Schema
| Field | Type | Required | Description |
|---|---|---|---|
clientKey* | string | Yes | Your API key. Create one in the AnySolver dashboard. Example: |
task* | object | Yes | The task body. Required fields depend on the task type. See Tasks for per-task schemas. View task properties |
settings | object | No | Per-request settings for routing, auto retry, auto fallback, and proxy behavior. See Routing Strategies. View settings reference |
Task Object Properties
The task field accepts an object with the following properties:
| Field | Type | Required | Description |
|---|---|---|---|
type* | Yes | ||
domain* | string | Yes | Hostname of the protected site, without scheme or path. Example: |
userAgent* | string | Yes | User-Agent the Kasada session was opened with. Example: |
st* | string | Yes | The Example: |
workTime | string | No | Override for the proof-of-work timestamp. Leave it out to use the current time. Example: |
{ "clientKey": "your-api-key-from-dashboard", "task": { "type": "KasadaWorkTimeProxyLess", "domain": "www.hyatt.com", "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36", "st": "1759149934586" }}Optional fields are not guaranteed across providers
Response Schema
| Field | Type | Required | Description |
|---|---|---|---|
status* | Yes | Task status: "processing", "ready", or "failed". Example: | |
errorId* | Yes | 0 = success, 1 = external error, 2 = internal error. Example: | |
taskId | string | No | Unique identifier returned when the task was created. Example: |
errorCode | No | Machine-readable error code. Example: | |
errorDescription | string | No | Human-readable error message with resolution hints. Example: |
cost | number | No | Actual cost charged for this task in USD. Example: |
taskType | No | The type of CAPTCHA task to solve. Example: | |
provider | No | Provider that handled this task. While processing, the provider currently solving it. Example: | |
solution | object | No |
Solution Object Properties
The solution field contains an object with the following properties:
| Field | Type | Required | Description |
|---|---|---|---|
payload* | string | Yes | Value for the Example: |
raw* | Record<string, unknown> | Yes | Raw provider response data for advanced use cases. |