HOST
You share a link
- 01Connect Google or Microsoft.
- 02Copy your public link: topcal.ai/{workspace}/{you}/{event}.
- 03Send it. You never pick a time.
Explore endpoints: fetch the OpenAPI spec, or open Scalar. Guide is on the developers page.
Developers: https://topcal.ai/developers
Explore endpoints: https://app.topcal.ai/docs
OpenAPI: https://app.topcal.ai/api/v1/openapi
Discovery manifest: https://app.topcal.ai/.well-known/agent-discovery.json
Run this in your terminal:
curl -sL "https://app.topcal.ai/api/agent/install" | bashHUMANS GET A LINK · AGENTS GET A SKILL
You send a link. Their agent books it.
Reed
Booker Agent
Working
HOW IT WORKS
HOST
THEIR AGENT
YOUR AGENT
THE PAGE YOU SEND
You send topcal.ai/…/30min. A person opens it and taps a time. An agent fetches the same times as JSON and books for them. Walk both sides in the window — it never writes a meeting.
https://topcal.ai/northwind/jordan/30min
30 min with Jordan
Northwind
Story page — not a live calendar. Pick a time. Both tabs share this step.
WHAT TO PASTE
Paste the link someone sent you. The agent fetches times and finishes the booking for the human.
Book a time that works for me:
https://topcal.ai/{workspace}/{username}/{eventSlug}Your agent installs the CLI, you approve in the browser, and it connects the calendar.
Set up topcal from https://topcal.ai/skill/SKILL.mdWHERE TO GO
Public booker URLs stay on topcal.ai. Sign-in and host API live on app.topcal.ai.
FINDING YOU IS NOT BOOKING YOU
Search, a site, and an answer in ChatGPT can surface your business. That is discovery. The close is a hold — booked by the buyer's agent of choice, or by a form you ship on your own page. Same calendars. Same public API. No API key on the booker plane.
YOUR SITE
Attach a form to an event type in topcal — company, ARR, team size, whatever you need to qualify. Or skip the hosted page and call the same endpoints from your landing, like the enterprise demo on this site. You own the questions. topcal owns free/busy, the email OTP, and the calendar event.
The first GET returns the form definition and required keys. You collect them, then pass customFields on book. Small teams can be sent to Sign up. Enterprise-shaped answers get a real slot.
THEIR AGENT
Sales teams keep sending a link and then playing calendar. The buyer already has ChatGPT, Claude, or Cursor. They paste topcal.ai/…/enterprise. The agent fetches open times, asks which one, emails a 6-digit code to the invitee, and finishes the booking for them.
Your AE never picks a slot. The human still confirms the code. Public MCP tools are find_bookable_calendar, get_availability, request_booking_code, confirm_booking.
GET /api/v1/public/topcal/hello
GET /api/v1/public/topcal/hello/enterprise/slots?timezone={IANA}
POST /api/v1/public/topcal/hello/enterprise/otp
POST /api/v1/public/topcal/hello/enterprise/book { customFields, code }Same four calls the form below uses. Hosted booker, your UI, or their agent — one booker plane.
YOUR PRODUCT
THE BUYER
YOUR SALES TEAM
MOST TEAMS START HERE
Starter is $15 / connected calendar after a 14-day trial. Enterprise is SSO, volume, and a real calendar hold — the custom-form pattern from above, on the same public API their agent can call.
GET topcal.ai/topcal/hello/enterprise via /api/v1/public
14-day trial. No credit card. Then $15/month or $150/year.