Acquire Ticket Lock
?renew=true is the heartbeat of a tab that holds the lock: UPDATE only, 409 ticket_lock_lost when a handoff removed it (never re-creates it; issue #2172 review 2026-10-07). When the caller has no row but someone else holds a live lock it answers 409 ticket_locked naming them (issue #4169); ticket_lock_lost means nobody holds it. Without it: claim the ticket for the calling principal, or renew an already-held claim -- the desk calls this once on opening a ticket and again on a heartbeat interval while it stays open (see service.acquire_ticket_lock's own docstring for why renewal and first-claim are the same call). 409s with a structured body (_handle_domain_errors's TicketLockHeld branch) when someone else is already in it, naming who and until when -- exactly what the desk needs to render "Rowena is in this one" without a second round trip.
Request
- Base URL: https://api.pigeonly.com (the document declares no server; this is the origin it was published from)
- URL: https://api.pigeonly.com/api/cs/tickets/{ticket_id}/lock
- Auth: none declared
Path parameters
Query parameters
Response
Successful Response
Changes
No recorded changes to this operation across all 1 revision of this API.