Create a booking link
Create a booking link for a service.
Authorization
authorization In: header
Request Body
application/json
Booking link params
TypeScript Definitions
Use the request body type in TypeScript.
Request schema for creating a booking link
Response Body
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/v1/booking_links" \ -H "Content-Type: application/json" \ -d '{ "locked_fields": [ "provider_id" ], "max_uses": 5, "name": "VIP onboarding", "provider_ids": [ "prov_d025a96ac0c6" ], "service_id": "srv_d025a96ac0c6" }'{ "data": { "client": null, "created_at": "2017-09-12T12:34:55Z", "expires_at": "2017-10-01T00:00:00Z", "id": "bl_d025a96ac0c6d025a96ac0c6", "locked_fields": [ "provider_id" ], "max_uses": 5, "metadata": { "campaign": "spring" }, "name": "VIP onboarding", "object": "booking_link", "providers": [ { "created_at": "2017-09-12T12:34:55Z", "display_name": "John Smith", "email": "john@example.com", "first_name": "John", "id": "prov_d025a96ac0c6", "last_name": "Smith", "metadata": { "external_id": "123" }, "object": "provider", "time_zone": "America/New_York", "updated_at": "2017-09-13T10:11:12Z" } ], "service_id": "srv_d025a96ac0c6", "status": "active", "updated_at": "2017-09-13T10:11:12Z", "url": "https://example.savvycal.com/c/book/bl_d025a96ac0c6d025a96ac0c6", "uses_count": 1, "uses_remaining": 4 }}Update booking intent PATCH
Update an existing booking intent. Accepts slot fields, client data, and metadata. When all slot fields (provider_id, start_at, end_at, time_zone) are present, automatically transitions to `slot_selected`. Cannot update intents in terminal status (completed or abandoned).
Delete a booking link DELETE
Delete a booking link by ID.