Skip to content
Docs
Operation

Delete Seat

DELETE/venues/{id}/layouts/{layoutId}/areas/{areaId}/seats/{seatId}
Remove a seat from an area. This permanently removes the seat from the venue layout. You can't delete a seat if tickets have been sold for it in any active event. If you need to temporarily remove a seat from sale, consider marking it as unavailable in the event instead.

When to use this

  • Removing seats that have been physically removed from the venue
  • Fixing duplicate seats created by mistake
  • Adjusting layout after venue renovations

Path parameters

idstringRequired
Venue ID
layoutIdstringRequired
Layout ID
areaIdstringRequired
Area ID
seatIdstringRequired
Seat ID

Headers

Idempotency-KeystringOptional
Makes the write safe to retry. The first request with a key does the work and its response is stored for 24 hours; a repeat with the same key and the same request (method, path, query, X-Ticketlayer-Channel, TL-Version and body) gets that stored status and body back, marked `Idempotent-Replay: true`, without running again. The key is scoped to your organisation and your credential. The same key with a different request is 422 IDEMPOTENCY_KEY_REUSED; a repeat while the first is still running waits for it, then answers 409 IDEMPOTENT_REQUEST_IN_PROGRESS if it has not finished. Only a 2xx is stored: after an error the key is free again. Omit the header and the request behaves as it always has.

Returns

Seat deleted successfully

Errors

400
Bad Request - Invalid input
401
Unauthorized - Authentication required
403
Forbidden - Insufficient permissions
404
Not Found - Resource not found
500
Internal Server Error

Every error names its code and links to it. All error codes

Notes

Important
Can't delete seats with active ticket sales. Cancel those tickets first.
Tip
To temporarily block a seat, mark it unavailable in the event rather than deleting it.

Related

import { BackstageClient } from '@ticketlayer/backstage';const client = new BackstageClient({  organisationSlug: 'your-org',});client.setAccessToken('YOUR_ACCESS_TOKEN');// Delete seatfromareaawait client.seatfromarea.delete('{{SEATFROMAREA_ID}}');console.log('SeatFromArea deleted successfully');
Response 200
{
  "success": true
}

Try it in test mode

Path parameters
Venue ID
Layout ID
Area ID
Seat ID