§ Integration · n8n

n8n calendar booking that doesn't double-book.

One HTTP Request node turns any n8n workflow — or any n8n AI agent — into a race-free booker. It commits through AgentDraft's storage-level conflict engine, so when two workflows reach for the same slot, exactly one wins and the other gets a typed 409 to branch on instead of a double-booked human.

Updated


§ 01The 60-second quickstart

Add one HTTP Request node and point it at AgentDraft. No community node to install — it is a plain authenticated HTTP call, so it works on n8n Cloud and self-hosted alike.

  • Method & URLPOST https://api.agentdraft.io/v1/bookings.
  • Authentication — Generic Credential → Header Auth. Name Authorization, value Bearer avs_live_… (an agent key from the dashboard). n8n stores it encrypted, off the canvas.
  • Header — add Idempotency-Key so a re-run of the same workflow never books twice.
  • Body — JSON, shown below.

§ 02The request body
{
  "start": "2026-05-12T16:00:00Z",
  "end":   "2026-05-12T16:30:00Z",
  "mode":  "commit",
  "metadata": { "title": "Discovery call · Acme" }
}

A 201 returns the booking_id, status, and an audit_event_id. A 409 means another agent won the slot — its body carries winning_agent_id and winning_agent_priority so the next node can pick another time. Set the node's Never Error response option so the 409 flows into an IF branch rather than failing the execution.


§ 03The pre-built workflow

Import the ready-made workflow and wire your own trigger in front of it. It ships the booking call plus the conflict branch already split:

Manual Trigger
   └─ Booking details (Set)
        └─ Commit booking (HTTP Request → /v1/bookings)
             └─ Committed?  (IF statusCode == 201)
                  ├─ true  → Booked
                  └─ false → Outranked — try another slot

In n8n: Workflows → ⋯ → Import from File, then open the Commit booking node and select your AgentDraft Header Auth credential. Download agentdraft-n8n-workflow.json.


§ 04Why a coordination layer matters in n8n

n8n makes it trivial to wire a Google Calendar node into a workflow — and that is exactly where the trouble starts at scale. The Google Calendar node writes the event directly, so two workflows (or two runs of the same workflow, or an n8n AI agent racing a human's assistant) that both see a free slot both succeed in writing. The human gets overlapping events. The multi-agent calendar collision is the predictable consequence.

Routing the booking through AgentDraft first moves the race off the calendar and onto the coordination layer. The conflict engine resolves it at the storage layer — a single TransactWriteItems with conditional writes per time bucket — and only the winner's write reaches the underlying calendar. Keep your Google Calendar node for reads and human-facing flows; let AgentDraft own the contended write.


§ 05As an n8n AI Agent tool

Inside an AI Agent node, attach the same call as an HTTP Request tool. The agent decides when to book; AgentDraft decides which agent wins. Because a lost race comes back as a structured 409 rather than an exception, the model reads the winner's priority and proposes the next slot — the conflict becomes a normal turn in the conversation, not a failed run.


§ 06

Frequently asked

Do I need a community node to use AgentDraft in n8n?

No. AgentDraft is a standard authenticated REST API, so the built-in HTTP Request node is all you need. That means it works the same on n8n Cloud and self-hosted, with no custom node to install or keep updated.

What happens when two n8n workflows book the same slot?

AgentDraft's conflict engine resolves the race at the storage layer via a single conditional write. Exactly one workflow gets a 201; the other gets a 409 carrying the winning agent's id and priority. Route that 409 into an IF branch and have the workflow pick another time.

How do I stop a re-run from booking twice?

Send an Idempotency-Key header with a value that is stable for the booking (for example the lead id and slot). AgentDraft replays the original response for any repeat of the same key, so retries, duplicate webhook deliveries, and manual re-executions are safe.

Do I need a paid AgentDraft account to use it with n8n?

You need an AgentDraft account. Start free on the Developer tier (no card) — one agent, one mailbox, 50 bookings/month. Individual is $10/month for up to three agents; Team is $25/month when multiple agents need shared priority resolution.


§ 07Further reading