Skip to main content
GET
Rate limit tier: general (600 req/min) — see Rate limits. Returns one keyset page of a workflow’s runs, newest first. Follow next_cursor until it is null (see Pagination). Items are slim — id, document_packet_id, status, timestamps. Fetch GET /v3/runs/{run_id}/ for the results envelope.

Filter by upload day

Two optional ISO 8601 datetime query params narrow the page to runs whose document packet was created inside a half-open interval [after, before):
  • document_packet_created_after — inclusive lower bound
  • document_packet_created_before — exclusive upper bound
Adjacent day-buckets tile without overlap: after=2026-07-17T00:00:00 & before=2026-07-18T00:00:00 returns exactly July 17. This is the intended shape for a daily-batch workflow (upload day N, cron enqueues runs, fetch results on day N+1). Timezones: both bounds accept any ISO 8601 offset (Z, +02:00, -05:00, …). Naive values (no offset) are interpreted as UTC. Use your local offset when “one day” means a day in your timezone — e.g. Madrid summer time (+02:00):

Authorizations

Authorization
string
header
required

API key issued from app.anyformat.ai/api-key. Send as Authorization: Bearer <key>.

Path Parameters

workflow_id
string
required

Query Parameters

limit
integer
default:20

Page size, capped at 100.

Required range: 1 <= x <= 100
cursor
string | null

Opaque token from a previous response's next_cursor.

document_packet_created_after
string | null

Include only runs whose document packet was created at or after this ISO 8601 datetime (inclusive lower bound). Combine with document_packet_created_before to fetch one day's uploads.

document_packet_created_before
string | null

Include only runs whose document packet was created before this ISO 8601 datetime (exclusive upper bound). Adjacent day-buckets tile without overlap: after=2026-07-17T00:00:00 & before=2026-07-18T00:00:00 is exactly July 17.

Response

Successful Response

One keyset page of runs.

Fixed (-created_at, -id) order. No totals or page numbers — iterate by following next_cursor until it is null.

items
RunSummaryV3 · object[]
required

Runs on this page, newest first.

next_cursor
string | null

Opaque token to fetch the next page; pass it back as ?cursor=. null on the last page.