INBOUND · TUE 09:00 · 5 PENDING

The API your
agents call
before writing
to a calendar.

When sales-bot, cal.ai, recruiting-bot, and your focus-time agent all want the same Tuesday 9 AM — Openavail picks one (by your rules, not last-write-wins) and writes the receipt.

v1 · Public Beta · Early Access

Latency
< 200ms
Auth
OAuth + key
Transport
REST · MCP
Audit
Indexed ∞
[LIVE]--:--:--.---
▼ INBOUND · 5 PENDING
$ openavail tail --slot tue@09:00
09:03:14.211[REJ]sales-botsacred meeting · ceo-1on1 in flight
09:03:14.218[REJ]recruiting-botlower priority class
09:03:14.224[PMT]focus-botdisplaced by personal-asst
09:03:14.231[ACC]personal-asstpri 100 · written 188ms · dec_8XnPq7r3
09:03:14.244[CTR]cal.aioffered tue 09:30 · 14:00 · 16:00
━━━ 5 DECISIONS · 1 ACC · arbiter p99 188ms★ WINNER · personal-asst
· LOG dec_8XnPq7r3 · signed

◇ one slot · five agents · one winner · five audit rows

Works withClaude DesktopCal.aiLindyReclaimCustom MCPREST agents

Google Workspace supported today · Microsoft 365 on the roadmap — join the waitlist

One POST.
One decision.
One audit row.

No client SDK required. If your agent speaks HTTP, it speaks Openavail. MCP server lands in v1.5.

▸ REQUEST

curl -X POST https://api.openavail.com/v1/availability \
  -H "Authorization: Bearer ak_01HXYZ..." \
  -H "Idempotency-Key: lead-12345-attempt-1" \
  -d '{
    "owner_email":      "[email protected]",
    "meeting_class":    "external_customer_call",
    "duration_minutes": 30,
    "window": {
      "start": "2026-06-04T09:00:00Z",
      "end":   "2026-06-04T17:00:00Z"
    }
  }'

◂ RESPONSE

{
  "hold_id":    "hld_8XnPq7r3…",
  "expires_at": "2026-06-04T09:05:00Z",
  "slots": [
    { "start": "2026-06-04T10:00:00Z", "end": "2026-06-04T10:30:00Z" },
    { "start": "2026-06-04T14:00:00Z", "end": "2026-06-04T14:30:00Z" }
  ],
  "resolved_calendar_type": "work",
  "warnings": []
}

Three primitives.
That's the whole product.

Ask before you book

Every agent points at one URL — Openavail. Before it writes to Google or Outlook, it asks us: "is this slot really free?" We answer yes, no, or try-this-instead — against rules you set.

Priority, not chaos

When two agents want the same slot in the same millisecond, Openavail picks one — by the rules you wrote, not by whoever was faster to commit. Deterministic. Same inputs always produce the same winner.

How arbitration works →

A receipt for every decision

Every accept, reject, preempt, and counter-propose is an audit row. Which agent. Which key. Which rule fired. Queryable forever, exportable as JSONL.

Many agents in.
One decision out.

Your agents stop talking to Google directly. They talk to Openavail. We hold the only real token — and own the only writes to the calendar.

sales-bot
recruiting-bot
focus-bot
↓ ↓ ↓
openavail · arbitrate
one decision · one audit row · one calendar write

"Planes don't collide because someone, somewhere, is paying attention."

"Which agent
booked over my
CEO 1:1?"

Five-second answer. By agent identity, by API key, by rule fired, by calendar owner. Exportable as JSONL. Indexed forever. The artifact your security team asks for in week one of any procurement review.

Arbiter P99
< 200ms
Audit retention
indefinite
Auth
OAuth + key
Tokens at rest
KMS-wrapped

DECISION HISTORY · LIVE CONSOLE

Openavail audit log showing 19 booking decisions with agent names, decision badges, calendar owners, and API keys

One flat price.
No seat math.

See full pricing →
Free
$0
forever
  • 1 calendar · 1 agent
  • 50 bookings / month
  • 7-day audit log
RECOMMENDED
Pro
$20
per month
  • 5 calendars · 5 agents
  • Simulation + drift detection
  • 90-day audit log
Team
$70
per month
  • 10 calendar owners
  • Team roles + org classes
  • 1-year audit log
How is this different from Calendly or Reclaim?
Those tools are for humans managing their own calendars. Openavail is for AI agents that need to book time on someone else's calendar without trampling each other. There's no scheduling link, no drag-and-drop UI — it's the coordination layer underneath.
Does Openavail replace Google Calendar?
No. Your calendar stays exactly where it is. Openavail sits in front of it — your agents talk to Openavail, Openavail talks to Google on their behalf. Confirmed events still show up in Google Calendar normally.
How do agents authenticate?
With API keys — simple bearer tokens you generate in the dashboard. Openavail holds the OAuth token to Google so your agents never need to handle provider credentials directly. Revoke an agent in Openavail without touching anything on the Google side.
Is the arbitration logic AI-powered?
No — fully deterministic. Same request, same rules, same state → same decision, every time. No model is making judgment calls. If your compliance team asks why a booking was made, the answer is a rule you wrote.
Does it support Microsoft 365?
Google Workspace is supported today. Microsoft 365 is on the roadmap — prioritised based on demand. If you need it, join the waitlist and we'll reach out when it's ready.
All questions →
LANE A · BUILDERS

Running your own stack of agents?

Free tier covers personal calendars and indie projects. Sign in with Google, connect your calendar, point your agents at us. Five minutes.

LANE B · TEAMS

Five agents booking across 200 calendars?

Org-wide rules, multi-user permissions, exportable audit log, SLA. We'll walk your team through it and help you cut over from direct calendar API access.


GOOGLE WORKSPACE SUPPORTED · MICROSOFT 365 ON THE ROADMAP — JOIN THE WAITLIST · PRICING SUBJECT TO CHANGE DURING PUBLIC BETA