---
title: "Mark Booking Held"
method: POST
path: "/api/cal/booking/{booking_uid}/held"
tags: ["Cal.com Webhook"]
---

# Mark Booking Held

`POST /api/cal/booking/{booking_uid}/held`

## Request

- Base URL: `https://api.ruzora.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.ruzora.com/api/cal/booking/{booking_uid}/held`
- Auth: HTTP bearer

Mark a discovery call as actually held (vs just scheduled).

Track B Workflow #1: dashboard "Mark held" button on lead detail.
Matches the lead by `booking_uid` (the cal.com booking identifier,
persisted on the lead row in _upsert_lead_from_booking via ts09).
Sets `leads.booking_held_at = NOW()` and flips the legacy
`discovery_held` boolean for back-compat with existing queries.

Returns the updated lead_id + booking_held_at timestamp.

## Path parameters

- `booking_uid` string, required

## Response `200`

Successful Response

- object

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/ruzora/apis/ruzora-candidate-crm-api.md) · [All operations](https://skmtc.dev/ruzora/apis/ruzora-candidate-crm-api/llms.txt) · [OpenAPI document](https://skmtc.dev/ruzora/apis/ruzora-candidate-crm-api/revisions/f9b8223f3ac4?raw)
