Get an asynchronous job
GET/api/v2/jobs/{id}
Gets an outreach, research, customs-data, or prospect-list preparation job. A job can only be read by its owner, and the API key must still have read permission for the corresponding capability.
Cancel a queued job
POST/api/v2/jobs/{id}/cancel
This endpoint only guarantees cancellation for queued or scheduled jobs and requires write permission for the job's original action. After a job enters running, it may already have called an external service or caused side effects, so the endpoint returns HTTP 409 job_already_running instead of falsely reporting success. A job already in a terminal state is returned unchanged, making retries safe.
cURLcurl -X POST "https://revor.ai/api/v2/jobs/JOB_ID/cancel" \ -H "Authorization: Bearer sk-revor-REPLACE_ME"
Example request
cURLcurl "https://revor.ai/api/v2/jobs/JOB_ID" \ -H "Authorization: Bearer sk-revor-REPLACE_ME"
Job statuses
Example response
JSON{ "ok": true, "request_id": "req_xxx", "item": { "id": "job-uuid", "action": "research.public_web", "status": "succeeded", "progress": { "stage": "completed", "percent": 100 }, "resource": { "type": "company_research_job", "id": "job-uuid" }, "scheduled_at": "2026-08-25T08:00:00.000Z", "started_at": "2026-08-25T08:00:01.000Z", "finished_at": "2026-08-25T08:00:05.000Z", "attempt_count": 1, "result": {}, "error": null, "billing": { "status": "settled", "charged_credits": 5, "pending_units": 0 } } }
Outreach jobs also return channel, with a value of email, linkedin, or whatsapp. This endpoint does not add an extra charge to outreach jobs, so billing.status is normally not_metered.
Polling guidance
- Poll every 2 to 5 seconds and use exponential backoff for network errors.
404 task_not_founddoes not mean that creation is still pending. Do not retry an incorrect job ID indefinitely.- Only
succeeded,failed, andcancelledare terminal states. - For
succeeded,resultis an object anderrorisnull. - For
failed,resultisnullanderror.codeis a stable error identifier.
Prospect-list preparation jobs
The preparation_job.id returned by POST /api/v2/websets only confirms whether a prospect list started successfully. Prospect discovery may still be running when this job is succeeded.
Textpreparation_job: queued → running → succeeded prospect list: generating_criteria → searching → verifying → completed
The job status describes one asynchronous operation, while the prospect-list status describes the entire discovery process. They are not interchangeable.
To determine whether the list is complete, call:
HttpGET /api/v2/websets/{webset_id}