DevelopersChanges data

cancel_booking

API reference — one of six tools an AI assistant can call on an Avrosh account.

What it does

Cancel a pending or confirmed booking. THIS RELEASES THE ROOM OR SLOT IMMEDIATELY - someone on the waitlist may be emailed about the freed slot in the same moment, so there is no quiet undo. Always read the booking first (get_booking), repeat its details back to the human, and get an explicit yes before calling. A booking is cancelled ONLY when this tool returns the cancelled row - never tell anyone a cancellation happened on any other basis. Refunds are not handled here; money questions go to the operator.

This is the exact text the model reads before deciding to call.

Parameters

business_idstringrequired

The id returned by list_businesses.

booking_idstringrequired

From list_bookings.

Request

curl -X POST https://us.avrosh.com/mcp \
  -H "Authorization: Bearer $AVROSH_KEY" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"cancel_booking","arguments":{"business_id":"926135ac-487d-4367-8bad-25397d0d4b87","booking_id":"b901…"}}}'

Response

The result arrives as an MCP content block; the JSON below is what the text field parses to.

{
  "booking": {
    "id": "b901…",
    "status": "cancelled"
  },
  "releasedInventory": true
}

Authentication

Every request carries Authorization: Bearer avk_…. Create a key in the Avrosh dashboard under Docs; it is shown once, because only its hash is stored.

One key reaches every business on the account that made it, and no others. There are no scopes to configure and nothing to switch on — a connected assistant receives the whole toolset. What bounds it is whose account the key belongs to, which is enforced in the database rather than by a permission anybody sets.

curl https://us.avrosh.com/mcp \
  -H "Authorization: Bearer $AVROSH_KEY"