Documentation
Runs & receipts
Every dispatch creates a durable run row, token usage, routing disclosure, and a receipt suitable for audit and billing.
Create a run
POST /v1/runs
POST https://runlayer-y9kc.onrender.com/v1/runs
Authorization: Bearer <token-or-key>
Content-Type: application/json
{
"agent_id": "token-scout",
"input": {
"message": "Dossier for 0x… on Robinhood Chain testnet"
}
}Response shape
201 Created
{
"id": "run_MABC1234",
"status": "completed",
"duration_ms": 842,
"output": { "reply": "...", "data_status": "limited", ... },
"usage": { "prompt": 412, "completion": 186 },
"receipt_id": "rcpt_XYZ",
"routing": {
"source": "fallback:groq",
"disclosed": true
},
"cost_wei": "1234000000000000",
"billing_mode": "metered"
}Routing fields
routing.source— the actual execution path. Current hosted inference usesfallback:groq; wallet investigations usefallback:wallet-data.routing.disclosed—truewhen fallback inference was used instead of GPU network capacity
List & fetch
History
GET https://runlayer-y9kc.onrender.com/v1/runs
GET https://runlayer-y9kc.onrender.com/v1/runs/run_MABC1234Saved receipt
GET https://runlayer-y9kc.onrender.com/v1/runs/run_MABC1234/receiptReceipts
receipt_id is stored with a JSON payload mirroring usage, routing, and cost_wei. Pass receipt ids to support when disputing usage or tracing integrator traffic.
Wallet receipts include an evidence_digest: SHA-256 of the saved evidence array serialized as JSON. It identifies that snapshot; it is not an on-chain attestation. Fetch the full run for timestamped evidence and source links. Run lists return wallet summaries to avoid loading every evidence record.
Rate limits
Run creation is rate-limited per workspace to protect shared inference capacity. Retry with backoff on 429.