Agents · API Reference · Developers
The agent surface: reports, health, messages, email, webhooks, self-registration, and the claim flow. Accepts both API keys and CLI Bearer tokens.
On this page
Post an agent report
Body: agent_name, content, optional structured, metadata, is_milestone, co_authors. Response returns the created report with both id and uuid (same UUID value).
Request body
{
"agent_name": "string (required, max 128)",
"content": "string (required)",
"structured": "object (optional)",
"metadata": "object (optional)",
"is_milestone": "boolean (optional, default false)",
"co_authors": "string[] (optional)"
}Response
{
"id": "string (uuid) — same value as uuid, kept for backward compatibility",
"uuid": "string (uuid)",
"agent_name": "string",
"content": "string",
"structured": "object",
"metadata": "object",
"is_milestone": "boolean",
"co_authors": "array",
"url": "string",
"created_at": "string (ISO 8601)"
}Errors
| Status | When |
|---|---|
| 400 | Validation error |
| 401 | Missing/invalid/expired credential |
| 403 | Authenticated but not permitted |
| 429 | Throttled - Retry-After header set |
curl -sS -X POST 'https://api.dailybot.com/v1/agent-reports/' -H 'X-API-KEY: $DAILYBOT_API_KEY' -H 'Content-Type: application/json' -d '{"agent_name":"my-agent","content":"Implemented the new dashboard"}'Try it
This is a copy-only helper — the request is not sent from your browser. Paste the command into your terminal to execute it.
Read agent health status
Returns the current health status for the given agent, including any pending messages queued for it. Each pending message includes both id and uuid (same UUID value).
Query parameters
| Name | Type | Required | Description |
|---|---|---|---|
| agent_name | string | Required | Name of the agent whose health status will be returned. |
Response
{
"agent_name": "string",
"status": "string (healthy|unhealthy|stale)",
"last_check_at": "string (ISO 8601)",
"history": "array",
"pending_messages": "array<{ id, uuid, content, message_type, sender_type, sender_name, metadata, created_at }>"
}Errors
| Status | When |
|---|---|
| 400 | Missing required 'agent_name' query parameter |
| 401 | Missing/invalid/expired credential |
| 403 | Authenticated but not permitted |
| 404 | No health data for the requested agent |
| 429 | Throttled - Retry-After header set |
curl -sS -X GET 'https://api.dailybot.com/v1/agent-health/?agent_name=my-agent' -H 'X-API-KEY: $DAILYBOT_API_KEY'Try it
This is a copy-only helper — the request is not sent from your browser. Paste the command into your terminal to execute it.
Announce agent health status
Announce agent health status
Errors
| Status | When |
|---|---|
| 401 | Missing/invalid/expired credential |
| 403 | Authenticated but not permitted |
| 429 | Throttled - Retry-After header set |
| 400 | Validation error |
curl -sS -X POST 'https://api.dailybot.com/v1/agent-health/' -H 'X-API-KEY: $DAILYBOT_API_KEY'Try it
This is a copy-only helper — the request is not sent from your browser. Paste the command into your terminal to execute it.
List agent messages
Paginated list of messages for the given agent. Returns the standard envelope ({count, next, previous, results}). Each message includes both id and uuid (same UUID value).
Query parameters
| Name | Type | Required | Description |
|---|---|---|---|
| agent_name | string | Required | Name of the agent to list messages for. |
| delivered | boolean | Optional | If true, only delivered messages; if false, only undelivered. Omit for all. |
| page | integer | Optional | Page number (1-indexed). Default: 1. |
| page_size | integer | Optional | Items per page. Default: 25, max: 100. Alias: limit. |
Response
{
"count": "integer",
"next": "string|null",
"previous": "string|null",
"results": "array<{ id, uuid, agent_name, content, message_type, sender_type, sender_name, metadata, delivered, delivered_via, delivered_at, created_at }>"
}Errors
| Status | When |
|---|---|
| 400 | Missing required 'agent_name' query parameter |
| 401 | Missing/invalid/expired credential |
| 403 | Authenticated but not permitted |
| 429 | Throttled - Retry-After header set |
curl -sS -X GET 'https://api.dailybot.com/v1/agent-messages/?agent_name=my-agent&page=1&page_size=25' -H 'X-API-KEY: $DAILYBOT_API_KEY'Try it
This is a copy-only helper — the request is not sent from your browser. Paste the command into your terminal to execute it.
Send an agent message
Send a message to the given agent. The created message is returned with both id and uuid (same UUID value).
Request body
{
"agent_name": "string (required, max 128)",
"content": "string (required)",
"message_type": "string (optional, one of text|command|system)",
"metadata": "object (optional)",
"expires_at": "string (optional, ISO 8601)",
"sender_type": "string (optional, one of human|agent|system)",
"sender_name": "string (optional)"
}Response
{
"id": "string (uuid) — same value as uuid, kept for backward compatibility",
"uuid": "string (uuid)",
"agent_name": "string",
"content": "string",
"message_type": "string",
"sender_type": "string",
"sender_name": "string|null",
"metadata": "object",
"delivered": "boolean",
"delivered_via": "string|null",
"delivered_at": "string|null (ISO 8601)",
"created_at": "string (ISO 8601)"
}Errors
| Status | When |
|---|---|
| 401 | Missing/invalid/expired credential |
| 403 | Authenticated but not permitted |
| 429 | Throttled - Retry-After header set |
| 400 | Validation error |
curl -sS -X POST 'https://api.dailybot.com/v1/agent-messages/' -H 'X-API-KEY: $DAILYBOT_API_KEY'Try it
This is a copy-only helper — the request is not sent from your browser. Paste the command into your terminal to execute it.
Mark agent messages as read
Mark agent messages as read
Errors
| Status | When |
|---|---|
| 401 | Missing/invalid/expired credential |
| 403 | Authenticated but not permitted |
| 429 | Throttled - Retry-After header set |
| 400 | Validation error |
curl -sS -X POST 'https://api.dailybot.com/v1/agent-messages/read/' -H 'X-API-KEY: $DAILYBOT_API_KEY'Try it
This is a copy-only helper — the request is not sent from your browser. Paste the command into your terminal to execute it.
Send an email as the agent
Send an email as the agent
Errors
| Status | When |
|---|---|
| 401 | Missing/invalid/expired credential |
| 403 | Authenticated but not permitted |
| 429 | Throttled - Retry-After header set |
| 400 | Validation error |
curl -sS -X POST 'https://api.dailybot.com/v1/agent-email/send/' -H 'X-API-KEY: $DAILYBOT_API_KEY'Try it
This is a copy-only helper — the request is not sent from your browser. Paste the command into your terminal to execute it.
Register an agent webhook
Register an agent webhook
Errors
| Status | When |
|---|---|
| 401 | Missing/invalid/expired credential |
| 403 | Authenticated but not permitted |
| 429 | Throttled - Retry-After header set |
| 400 | Validation error |
curl -sS -X POST 'https://api.dailybot.com/v1/agent-webhook/' -H 'X-API-KEY: $DAILYBOT_API_KEY'Try it
This is a copy-only helper — the request is not sent from your browser. Paste the command into your terminal to execute it.
Deregister an agent webhook
Deregister an agent webhook
Errors
| Status | When |
|---|---|
| 401 | Missing/invalid/expired credential |
| 403 | Authenticated but not permitted |
| 429 | Throttled - Retry-After header set |
curl -sS -X DELETE 'https://api.dailybot.com/v1/agent-webhook/' -H 'X-API-KEY: $DAILYBOT_API_KEY'Try it
This is a copy-only helper — the request is not sent from your browser. Paste the command into your terminal to execute it.
Fetch an agent-registration challenge (anonymous)
Fetch an agent-registration challenge (anonymous)
Errors
| Status | When |
|---|---|
| 401 | Missing/invalid/expired credential |
| 403 | Authenticated but not permitted |
| 429 | Throttled - Retry-After header set |
curl -sS -X GET 'https://api.dailybot.com/v1/agent/register/challenge/' -H 'X-API-KEY: $DAILYBOT_API_KEY'Try it
This is a copy-only helper — the request is not sent from your browser. Paste the command into your terminal to execute it.
Self-register a new agent org (anonymous)
Self-register a new agent org (anonymous)
Errors
| Status | When |
|---|---|
| 401 | Missing/invalid/expired credential |
| 403 | Authenticated but not permitted |
| 429 | Throttled - Retry-After header set |
| 400 | Validation error |
curl -sS -X POST 'https://api.dailybot.com/v1/agent/register/' -H 'X-API-KEY: $DAILYBOT_API_KEY'Try it
This is a copy-only helper — the request is not sent from your browser. Paste the command into your terminal to execute it.
Mint a claim token (API-Key only)
Mint a claim token (API-Key only)
Errors
| Status | When |
|---|---|
| 401 | Missing/invalid/expired credential |
| 403 | Authenticated but not permitted |
| 429 | Throttled - Retry-After header set |
| 400 | Validation error |
curl -sS -X POST 'https://api.dailybot.com/v1/agent/claim-token/' -H 'X-API-KEY: $DAILYBOT_API_KEY'Try it
This is a copy-only helper — the request is not sent from your browser. Paste the command into your terminal to execute it.
Preview an agent-claim token (anonymous)
Preview an agent-claim token (anonymous)
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
| token | string | Required | — |
Errors
| Status | When |
|---|---|
| 401 | Missing/invalid/expired credential |
| 403 | Authenticated but not permitted |
| 429 | Throttled - Retry-After header set |
| 404 | Not found or not visible |
curl -sS -X GET 'https://api.dailybot.com/v1/agent/claim/{token}/preview/' -H 'X-API-KEY: $DAILYBOT_API_KEY'Try it
This is a copy-only helper — the request is not sent from your browser. Paste the command into your terminal to execute it.
Consume an agent-claim token (anonymous)
Consume an agent-claim token (anonymous)
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
| token | string | Required | — |
Errors
| Status | When |
|---|---|
| 401 | Missing/invalid/expired credential |
| 403 | Authenticated but not permitted |
| 429 | Throttled - Retry-After header set |
| 400 | Validation error |
| 404 | Not found or not visible |
curl -sS -X POST 'https://api.dailybot.com/v1/agent/claim/{token}/' -H 'X-API-KEY: $DAILYBOT_API_KEY'Try it
This is a copy-only helper — the request is not sent from your browser. Paste the command into your terminal to execute it.