AgentPulse Docs

Ingestion API

Report agent runs with a single authenticated HTTP call. No SDK, no library, no agent code changes.

Endpoint

POST https://agentpulse.sentinelflux.in/v1/runs

Authentication

Send the agent's Bearer secret in the Authorization header. The secret identifies both the organisation and the agent the run belongs to.

Authorization: Bearer <agent-secret>

Request body

FieldTypeRequiredDescription
statusstringYessuccess or error. Drives success and error rates.
duration_msnumberNoTotal wall-clock duration of the run, in milliseconds.
tokensnumberNoTotal tokens consumed by the run.
cost_usdnumberNoCost of the run in USD. Rolls up into cost-by-product.
stepsarrayNoExecution-trace steps. See Execution Traces.
errorstringNoError message or context when status is error.

Example

curl -X POST https://agentpulse.sentinelflux.in/v1/runs \
  -H "Authorization: Bearer $AGENTPULSE_SECRET" \
  -H "Content-Type: application/json" \
  -d '{ "status": "success", "duration_ms": 4210, "tokens": 18450, "cost_usd": 0.072 }'

Responses

StatusMeaning
202 AcceptedRun recorded.
400 Bad RequestMalformed body or invalid status.
401 UnauthorizedMissing or invalid Bearer secret.
402 Payment RequiredMonthly run limit for the plan reached.
429 Too Many RequestsRate limited; retry after a short backoff.

Tip: treat reporting as fire-and-forget with a short timeout, or enqueue it and send from a worker. Never block your agent's hot path on the observability call.