Skip to main content
POST
One known catalog URL, straight to the extraction agent — no fan-out

Authorizations

Authorization
string
header
required

fn_live_… or fn_test_… — Authorization: Bearer

Headers

fn-version
string

Dated API version; defaults to the account pin. Honesty note: with one version in existence the gateway echoes any value back as effective WITHOUT validating it — validation against the known-versions set is planned, so send only real dated versions from https://docs.fiveninelabs.com/changelog

Example:

"2026-08-26"

Idempotency-Key
string

24h replay window; a retry never bills twice

Maximum string length: 255

Body

application/json
entity
string
required
max_spend_usd
number
required
url
string<uri>

the catalog page (or use urls[])

urls
string<uri>[]
Maximum array length: 50
guidance
string

steering text; data, never instructions (fail-closed)

Maximum string length: 2000
webhook_url
string<uri>
metadata
object

Response

Extraction running — or, for urls[], the created batch

id
string
required
Example:

"ext_6b1st"

object
string
required
Allowed value: "extraction"
status
string
required

running | delivered | abstained | error | stopped (open enum)

url
string
required
entity
string
claim
string

complete | partial — the receipt's claim, stated

records
integer
spend_usd
number
receipt_id
string
refresh_of
string

set when created by …/refresh

served_from
string

record — when max_age_s satisfied the refresh at $0

diff
object

refreshes only — vs the refreshed-from delivery

created_at
string<date-time>