Developers

API reference

Reference for the datawebot. Jobs REST API: authentication, endpoints, the Job request body, statuses, errors and limits.

Authentication and base URL

Base URL: https://api.datawebot.com. Send a dwb_ API key as Authorization: Bearer <key> on every request. Every response carries an X-Request-Id header. The machine-readable contract is /openapi.json.

The same operations are available as MCP tools (list_job_blueprints, submit_job, get_job, get_results) at https://mcp.datawebot.com/mcp.

Endpoints

Method and pathPurpose
GET /v1/job-blueprintsDiscover blueprints. q searches store, domain or operation; site filters by hostname; blueprint_id alone returns one contract. page_size up to 100 (default 30); follow next_cursor with the same filters
GET /v1/job-blueprints/searchCompact store search, or resolve a target URL to its store's blueprints, without fetching the source
POST /v1/jobsSubmit one URL as one Job. Requires Idempotency-Key
GET /v1/jobsYour Jobs, newest first. page_size up to 100 (default 25)
GET /v1/jobs/{id}Status, original request, credits and poll_after_seconds
GET /v1/jobs/{id}/resultsA page of records. page_size up to 100; follow next_cursor
GET /v1/accountCredits available and held
GET /v1/usageJobs, results and credits charged this UTC month, by blueprint

Job request body

FieldRequiredMeaning
blueprint_idYesAn ID returned by discovery; never construct one
urlYesThe public URL to extract, up to 2,048 characters, matching the blueprint's input_schema
parametersNoBlueprint-specific limits such as max_pages or max_products, within the blueprint's input_schema. Default is one page
blueprint_versionNoAlways "1"

Job statuses

StatusMeaning
PENDING / INITIATEDAccepted or running. Poll after poll_after_seconds
COMPLETEDFinished; results are available
PARTIAL_COMPLETEFinished with some pages missing; available results are returned and only fetched pages are charged
FAILEDFinished without results. Not charged
UNAVAILABLEThe blueprint is not accepting Jobs right now. Not charged

Errors

CodeHTTPWhat to do
unauthorized401Check the key; it may be missing, expired or revoked
insufficient_credits402The balance can't cover the credit hold. Ask for fewer pages
not_found404No such Job for this account
idempotency_conflict409The key was used for a different request. Use a new key for a new Job
results_expired410Results were kept for seven days. Run a new Job
invalid_input / idempotency_key_required422Fix the request against the blueprint's input_schema
rate_limited / job_limit429Wait for Retry-After, or for active Jobs to finish
internal_error500Saved work is kept. Retry with the same Idempotency-Key

Limits

  • 20 submissions a minute and 20 active Jobs per account.
  • Request bodies up to 8 KB, sent as application/json.
  • Page limits come from each blueprint's input_schema and price (max_units).
  • Results are kept for seven days after a Job finishes.

Need help? Contact support.