Rookery for developers
Build on your inbox
Your apps and agents can work in Rookery as teammates. They read mail, leave notes, tag and assign, and draft replies. A person says yes before anything goes out.
Fetch: Fetching is my job, and your own tools can do it too. Give them a key with only what they need, and they'll show up by name next to me.
Check your key
curl
curl 'https://app.userookery.com/api/v1/me' \
-H "Authorization: Bearer $ROOKERY_KEY"JavaScript
const response = await fetch("https://app.userookery.com/api/v1/me", {
headers: { Authorization: `Bearer ${process.env.ROOKERY_KEY}` },
});
const data = await response.json();Python
import os
import requests
response = requests.get(
"https://app.userookery.com/api/v1/me",
headers={"Authorization": f"Bearer {os.environ['ROOKERY_KEY']}"},
)
data = response.json()Response200
{
"agent": {
"id": "agt_3n7q2wv9k4hxm8tr",
"name": "Support bot"
},
"scopes": [
"read",
"draft"
]
}
Start here
QuickstartMake a read-only API key, then list the conversations in your inbox. It takes about 2 minutes.
API referenceEvery endpoint, with examples in curl, JavaScript and Python, and Try it with your own key.
Draft, don't sendThe safe pattern for agents. Your agent reads and drafts; a person reads every reply before it goes out.
Connect with MCPConnect Claude Code, Claude Desktop or Cursor to your inbox through Rookery's MCP server and an API key.
Testing and the sandbox Coming soonTest keys, a sandbox workspace and magic addresses for sends and replies.
WebhooksGet told when a client replies, documents come in or a time is booked: signed events, retried for a day.
The basics
- Keys and scopesWhat an API key can see and do, how scopes work, and why someone's private inbox answers 404.
- ErrorsEvery error is a status code and one sentence in an error field. What each code means, and what to do.
- Rate limitsEach key may make 120 requests a minute, across the REST API and the MCP server together.
- PaginationLists come newest first, up to 100 at a time. How to find what you need until cursors arrive.
- RetriesWhich requests are safe to send again after a timeout, and how to check before retrying the ones that aren't.
At a glance
- REST API
https://app.userookery.com/api/v1- MCP server
https://app.userookery.com/mcp- Sign in
Authorization: Bearer rk_…, a key from Settings → Integrations → API keys- Rate limit
- 120 requests a minute per key
- Spec
- OpenAPI 3.1, made from the code the API runs on
- For AI assistants
- llms.txt and llms-full.txt