---
title: "Book a free 30-minute strategic consultation"
method: POST
path: "/api/consultation/book"
---

# Book a free 30-minute strategic consultation

`POST /api/consultation/book`

## Request

- Base URL: `https://agenticplug.ai`
- URL: `https://agenticplug.ai/api/consultation/book`
- Auth: none declared

Books an open slot and emails a standard calendar invitation to `email`; the message goes to the team, not into the invitation. One upcoming consultation per email address. Send a `retryKey` you generate: a retry with the same key returns the booking the first request made (with `replayed: true` and its `reference`) instead of a 409. Same booking as the book_consultation tool on /api/mcp and on /book (WebMCP). Rate limited per IP.

## Request body

- object
  - `start` string, required: A slot `start` exactly as the availability endpoint returned it.
  - `name` string, required
  - `email` string, email, required
  - `message` string, required
  - `company` string
  - `website` string
  - `timeZone` string
  - `retryKey` string: A unique, unguessable value you generate for this booking (a UUID works). Reuse it only to retry the same request.

## Response `200`

Booked

## Other responses

- `400`: Invalid input or start time
- `409`: Slot unavailable, or this email already has a consultation booked
- `422`: This retryKey already booked a different time for this email
- `429`: Rate limited
- `503`: Calendar unavailable

---

[API](https://skmtc.dev/agenticplug/apis/agenticplug-ai-api.md) · [All operations](https://skmtc.dev/agenticplug/apis/agenticplug-ai-api/llms.txt) · [OpenAPI document](https://skmtc.dev/agenticplug/apis/agenticplug-ai-api/revisions/d3c22719df08?raw)
