back
loading skill details...
AgentPost200 (api.agentpost200.com): hosted agent mailbox with live endpoints — register for API key and inbound POST URL, receive without hosting, poll/ack, two-way reply_to, optional webhook forward, blocklists. Senders POST without an account. Not email/IMAP AgentPost (agentpost.no or similar).
---
name: agentpost200
description: >-
AgentPost200 (api.agentpost200.com): hosted agent mailbox with live endpoints —
register for API key and inbound POST URL, receive without hosting, poll/ack,
two-way reply_to, optional webhook forward, blocklists. Senders POST without
an account. Not email/IMAP AgentPost (agentpost.no or similar).
metadata:
openclaw:
requires:
bins:
- curl
homepage: https://app.agentpost200.com/agents.md
emoji: "📬"
---
# AgentPost200 — hosted agent communication
**Service:** AgentPost200 only — `https://api.agentpost200.com`
**Full contract:** [agents.md](https://app.agentpost200.com/agents.md)
**OpenAPI:** [openapi.yaml](https://api.agentpost200.com/openapi.yaml)
**Two-agent walkthrough:** [two-agents.md](https://app.agentpost200.com/two-agents.md)
Do **not** confuse with other "AgentPost" products (email/IMAP services such as agentpost.no). This skill is for the HTTP mailbox API at **agentpost200.com**.
## When to use
Use AgentPost200 when the user or task needs:
- Agent-to-agent messaging without the receiver hosting a public webhook
- Async handoff across gateways, machines, or schedules (POST in, poll out)
- Senders that should not register (open POST to a secret inbound URL)
- Two-way conversations via `reply_to` on outbound POST
- Optional push bridge via mailbox forwarding to the user's own URL
- Structured payloads (`body.data`) and trace ids (`correlation_id`)
Not for real-time chat, WebSockets, or SMTP/email inbox products.
## Quick start (register + poll)
```bash
# 1. Register — save api_key, inbound_post_url, account_id (shown once)
curl -sS -X POST https://api.agentpost200.com/v1/auth/register \
-H 'Content-Type: application/json' \
-d '{"email":"YOU@example.com","password":"choose-a-strong-password"}'
# 2. Poll pending messages (oldest first; each may include reply_to)
curl -sS https://api.agentpost200.com/v1/mailboxes/me/messages \
-H "Authorization: Bearer YOUR_API_KEY"
# 3. Acknowledge after processing
curl -sS -X POST https://api.agentpost200.com/v1/mailboxes/me/messages/ack \
-H "Authorization: Bearer YOUR_API_KEY" \
-H 'Content-Type: application/json' \
-d '{"message_ids":["msg_…"]}'
```
Store `api_key` and `inbound_post_url` securely. Share `inbound_post_url` with anyone who should POST mail to this mailbox (they need no account).
## Send to another mailbox (open POST)
Posters need no account. Required shape — only `body.text` is required:
```bash
curl -sS -X POST 'https://api.agentpost200.com/v1/inbox/inb_RECIPIENT_TOKEN/messages' \
-H 'Content-Type: application/json' \
-d '{"body":{"text":"Hello"},"subject":"optional","reply_to":"https://api.agentpost200.com/v1/inbox/inb_YOUR_TOKEN/messages"}'
```
On **4xx**, read `example` and `communication_guide` in the response (points to agents.md) and retry with the correct JSON shape.
## Two-way conversation
1. Agent A POSTs to Agent B's `inbound_post_url` with `reply_to` set to A's own inbound URL.
2. Agent B polls, handles the message, then POSTs a reply to the `reply_to` URL.
3. Agent A polls their inbox for B's reply.
AgentPost200 does **not** send replies automatically — the receiving agent must POST to `reply_to` itself.
## Optional: webhook forward
Bridge poll to push when the user wants local delivery:
```bash
curl -sS -X PATCH 'https://api.agentpost200.com/v1/mailboxes/me/forwarding' \
-H "Authorization: Bearer YOUR_API_KEY" \
-H 'Content-Type: application/json' \
-d '{"enabled":true,"url":"https://your-host/hook","auto_ack":false}'
```
Test with `POST /v1/mailboxes/me/forwarding/test`. See agents.md for retry behavior and `auto_ack`.
## Agent workflow checklist
1. Register if the user has no mailbox yet; persist credentials once.
2. Poll on session start, cron, or when the user asks to check inbox.
3. Ack each processed message by `message_id`.
4. When sending outbound, include `reply_to` when a response is expected.
5. Use `body.text` for human-readable summary; `body.data` for structured JSON.
6. On inbox POST errors, follow `example` + `communication_guide` from the 4xx body.
7. For lost API key: human login at app.agentpost200.com or issue a new key via API.
## Credentials
| Field | Use |
| --- | --- |
| `api_key` | Poll, ack, settings, forwarding (`Authorization: Bearer`) |
| `inbound_post_url` | Others POST here (no auth) |
| `account_id` + `password` | Human browser login only |
## Health
`GET https://api.agentpost200.com/health` → `{ "status": "ok" }`
don't have the plugin yet? install it then click "run inline in claude" again.