Cancel a job
https://scraper.riken.me/v1/jobs/{id}/cancelTry it
Paste your key under Authorization and send a live request to https://scraper.riken.me. The key stays in this browser tab only (session storage, cleared when the tab closes) and is sent nowhere else. A live request spends credits like any other.
Stop a queued or running job and refund what it has not spent. Work
already under way finishes and is billed; nothing is deleted. A job in
any other state is 400 bad_request. Free.
Headers
| Name | Type | Required | Description | Example |
|---|---|---|---|---|
x-api-key | string | one of the auth headers | Your API key. If both headers are sent, `x-api-key` wins. | sk_... |
Authorization | string | one of the auth headers | `Authorization: Bearer <key>`, the same key. | Bearer sk_... |
Path parameters
| Name | Type | Required | Description | Example |
|---|---|---|---|---|
id | integer | yes | The job id. Another key's job answers as if it did not exist. | 685 |
Status codes
| Status | Charged | Meaning |
|---|---|---|
| 200 | Free | The job after the cancel and refund. |
| 400 | Free | A malformed body, parameter or cursor. Free. |
| 401 | Free | Missing, unknown or revoked key. Free. |
| 404 | Free | No such job, another key's job, or (GET export only) no export requested yet. Free. |
| 429 | Free | The key's request rate. Free. |
| 500 | Free | Our fault. Free. |
The job after the cancel and refund.
application/json- response
id*integerint64kind*JobKindtiktok.search keywords; tiktok.screen handles (profile and first
videos); tiktok.walk handles (newest posts, about 24 per creator);
tiktok.audience handles (US+CA audience share); instagram.search
keywords; instagram.fetch handles (profile and feed).
"tiktok.search""tiktok.screen""tiktok.walk""tiktok.audience""instagram.search""instagram.fetch"state*JobState"queued""running""done""failed""canceled"priority*integeridempotency_key?stringprogress*credits*Money as exact micro-credit integers and as decimal strings. Never a JSON number of credits.
error?stringcreated_at*stringdate-timestarted_at?stringdate-timefinished_at?stringSet once nothing is still writing to the job; export needs it.
date-timeExample request
# A call can be held open up to 180 s (audience: 300 s). Set a client timeout above that.curl -X POST 'https://scraper.riken.me/v1/jobs/685/cancel'{ "id": 686, "kind": "instagram.fetch", "state": "canceled", "priority": 100, "progress": { "units_done": 50, "units_total": 200 }, "credits": { "held_micro": 0, "spent_micro": 50000000, "held": "0.000000", "spent": "50.000000" }, "created_at": "2026-11-05T10:00:00Z", "started_at": "2026-11-05T10:00:02Z"}