Turn meeting requests
into bookings.
Keep your agents
in sync.
Give your AI scheduling agents an inbox, calendar access, and a shared booking engine. Handle competing requests and trace each decision without stitching together three services.
AgentDraft is an ops API for AI agents that combines per-agent inboxes, calendar availability, race-safe booking commits, and an audit trail in one integration. Developers call one service when agents need to read email, schedule meetings, send replies, or coordinate against other agents writing to the same calendar.
Free Developer tier · no card required · Scope a production pilot
- Agent
- sales-bot · rank 1
- Slot
- 16:00–16:30
- Rules
- v4 · 10m buffers
- Signature
- Ed25519 · verified
Every number is reproducible from the public benchmark harness.
Nightlamp uses AgentDraft mailboxes to test real email flows.
Magic-link login, OTP login, signup confirmation, and round-trip delivery checks all need a deliverable inbox the monitor can poll. AgentDraft provides that mailbox layer, with SPF/DKIM/DMARC facts and audit-friendly message events.
See the monitor patternBy midday the inbox and the calendar are a collision of good intentions.
By "agent" we mean any automated process that books or emails on a human's behalf — Cal.com handlers, OpenAI assistants, internal scripts, the sales bot you wrote last Tuesday.
One agent reads an email and books a discovery call at 09:00. Another replies to a different thread and slots a client meeting at 09:30. A third blocks focus time that neither of the first two can see. The agents are each doing their job. No shared layer holds the rules they should all be following.
The market response has been more agents, not coordination. Every scheduling tool and every inbox integration builds its own private view of availability and commits in isolation. The user becomes the resolver — manually untangling collisions every morning.
AgentDraft is the missing layer. Every agent calls one API before it books — and reads its mail through one inbox. Every booking commits through one deterministic engine. Every action is recorded in one tamper-evident log. Switching tools is just reconfiguring an endpoint; adopting AgentDraft turns scheduling and agent email into infrastructure.
One integration. Every primitive.
Mail, availability, commit, and audit are not four vendors. They are one deterministic surface with one key and one log.
Availability
Agents ask AgentDraft what's open — never the calendar directly. The response is filtered through buffer rules, focus blocks, and any active holds from sibling agents.
GET /v1/availability
?user_id=usr_01H...
?duration=30mCommit
Bookings commit through a single conditional write. When two agents collide, the priority engine resolves deterministically. No retries. No drift.
POST /v1/bookings agent: agt_sales slot: 16:00–16:30 → 201 COMMITTED
POST /v1/bookings agent: agt_recruit slot: 16:00–16:30 → 409 OUTRANKED
Audit
Every hold, commit, eviction and rule change is written immutably. Enterprise governance review is a curl away.
GET /v1/audit
?resource=bkg_3f9
→ 7 events, signedMailbox
Each agent gets a signed, deliverable inbox at inbox.agentdraft.io. Inbound mail is parsed into structured events; outbound replies are DKIM-signed from the same address.
POST /v1/mailbox/messages /<id>/reply → 200 DELIVERED · DKIM ✓
Two agents. One slot.
Deterministic outcome.
Time-bucketed conditional writes resolve in a single DynamoDB TransactWriteItems. No locks. No races. No human in the loop.
- t = 0.000sSALES-BOTGET /availability · sees 16:00 as free
- t = 0.012sRECRUIT-BOTGET /availability · also sees 16:00 as free
- t = 0.080sSALES-BOTPOST /bookings · transaction acquires buckets 16:00..16:25
- t = 0.086sRECRUIT-BOTPOST /bookings · ConditionExpression fails — outranked, priority 1 owns slot
- t = 0.091sRESOLVED201 to sales · 409 to recruit · audit row written · webhook fired
Your agents have a calendar. Now they have a passport.
Every agent can carry a signed identity that travels beyond AgentDraft: human-backed receipts, a signed A2A card, Web Bot Auth request signatures, and an MCP client identity — all from one Ed25519 key.
Point your agents here. Keep your calendar.
Start free. Upgrade when agents do.
- 1 user · 1 calendar
- 3 agents · 1 mailbox
- Higher booking limits
- 30-day audit
- 5 users · 3 calendars/seat
- Unlimited agents · 5 mailboxes
- 1-year audit
- Email support
- 25 users · 10 calendars/seat
- Unlimited agents · 25 mailboxes
- 2-year audit
- Priority support
“I'm not building another scheduling tool. I'm building the protocol that makes scheduling tools cooperate.”