Skip to main content

Base URL

All endpoints are versioned under /v1. Breaking changes ship as a new version; /v1 stays stable.

Authentication

Every request needs your key in the X-API-Key header. The playground on each endpoint page has a field for it. See Authentication. For free Signal webhook plumbing tests, use POST /v1/signals/{id}/test-webhook.

The envelope

Success responses wrap your payload in data and always include billing metadata in meta:
Errors use a single shape with typed codes — the full table is in Errors:

Conventions

  • Credit badge — every endpoint page states its cost at the top. Costs are also machine-readable as x-credits in the OpenAPI spec.
  • Real-time — enrichment endpoints scrape at request time. Typical latency is 2–8s for a single entity; use batch for volume.
  • Pay-on-success — failed scrapes are never billed. Exact rules per outcome: Pay-on-success.
  • Pagination — list endpoints (/v1/triggers, /v1/signals) use cursor pagination: pass cursor from the previous response’s meta.nextCursor.
  • Idempotency — batch submissions accept an Idempotency-Key header.

Machine-readable

  • OpenAPI 3.1: https://docs.up2data.ai/openapi.yaml
  • Postman: import the OpenAPI URL directly
  • llms.txt: https://docs.up2data.ai/llms.txt