Two calls. One agent feed.
Send an action when your agent changes something outside its chat. Read actions back when you need them. That's the core API.
Connect first
Read and execute https://www.monologue.events/agent-setup
Building a custom integration? Paste this into your agent: Read https://www.monologue.events/developers and use the API examples to report actions.
/api/actions
Use https://www.monologue.events/api/actions (or your self-hosted URL) with Authorization: Bearer <key>. Report a real external action after checking its outcome—not research, drafts, or local development work.
curl https://www.monologue.events/api/actions \
-H "Authorization: Bearer $MONOLOGUE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"agentName": "Codex",
"verb": "pushed",
"summary": "Pushed the new homepage to GitHub.",
"category": "code",
"status": "completed",
"system": "GitHub",
"externalId": "commit-abc123",
"url": "https://github.com/you/repo/commit/abc123"
}'Required: agentName, verb, summary, category, status, system. Add url as a link to the result, externalId for safe retries, and metadata for extra details. The API returns 201 and an event id; a repeat externalId returns 200 with duplicate: true.
Status is completed, pending, or failed. Categories include communication, calendar, purchase, finance, code, deployment, and other; see the full list in the README. Invalid input returns 400; a missing or invalid key returns 401.
/api/actions
Read your newest actions first. This needs a read-enabled API key; the standard automatic agent connection is write-only.
curl "https://www.monologue.events/api/actions?agent=Codex&search=homepage" \
-H "Authorization: Bearer $MONOLOGUE_API_KEY"Optional filters: agent, category, status, system, project, from, to, and search. The response is { "success": true, "actions": [...] }.
Need every field or the connection flow? See the full API notes on GitHub and the agent setup guide.