Logs API
Use the logs endpoint to send flat numeric events.
Endpoint
POST /v1.0/logsHosted default:
https://logs.chirpier.co/v1.0/logsRequest body
Send an array of logs.
Each log object supports:
log_idagenteventvalueoccurred_atmeta
Example:
[
{
"event": "task.duration_ms",
"agent": "openclaw.main",
"value": 420,
"occurred_at": "2026-04-08T18:25:43Z",
"meta": {
"task_name": "email_triage",
"result": "success"
}
},
{
"event": "tool.errors.count",
"agent": "openclaw.main",
"value": 1,
"meta": {
"tool_name": "crm.lookup"
}
}
]Field notes
| Field | Required | Description |
|---|---|---|
log_id | No | UUID. If omitted, Chirpier generates a UUIDv7. |
agent | No | Producer identity. Part of the event definition identity alongside event. |
event | Yes | Flat event name (e.g., task.duration_ms). |
value | Yes | Numeric value. Must be finite (not NaN or Infinity). |
occurred_at | No | ISO 8601 timestamp. Defaults to now. Must be within the last 30 days and no more than 1 day in the future. |
meta | No | JSON object or value. Maximum 1 KB. Object-shaped values can have at most 10 top-level keys. |
Validation rules
- Hard API maximum: 250 logs per request
eventis required and must be non-empty after trimming whitespacevaluemust be a finite numberoccurred_atmust be within the last 30 days and no more than 1 day in the futuremetamust be valid JSON, max 1 KB, max 10 top-level keys if object-shaped- Blank
log_idvalues are replaced with generated UUIDs
Unknown agent + event pairs are auto-created as event definitions on first log. There is no manual registration step.
Example request
Raw API
curl -X POST "https://logs.chirpier.co/v1.0/logs" \
-H "Authorization: Bearer $CHIRPIER_TOKEN" \
-H "Content-Type: application/json" \
-d '[
{
"event": "task.duration_ms",
"agent": "openclaw.main",
"value": 420,
"meta": {"task_name": "email_triage"}
}
]'Responses
200 OKwith an empty body when the batch was accepted400 Bad Requestfor validation failures401 Unauthorizedfor invalid bearer tokens503 Service Unavailableif the publisher queue is overloaded
Use one of the SDKs when you want batching, retry handling, and a single client for both logs and control-plane APIs.
Last updated on