Add Seat to Area
POST
/venues/{id}/layouts/{layoutId}/areas/{areaId}/seatsAdd a single seat to an area in a venue layout.
Each seat needs a row and seat number. You can also assign it to a pricing
category and set coordinates for visual seat maps.
For bulk seat creation, consider using the generate or bulk endpoints instead.
When to use this
- Adding individual seats that don't fit the standard grid
- Creating accessible seating positions
- Adding extra seats for specific events
Parameters
idpathrequiredVenue ID
layoutIdpathrequiredLayout ID
areaIdpathrequiredArea ID
Request Body
sectionstringSection identifier
row*stringRow identifier
number*stringSeat number
labelstringDisplay label (auto-generated if not provided)
categoryIdstringCategory ID for pricing
status"available" | "blocked" | "accessible" | "held" | "removed"Seat status
holdTypestringHold type if status is held
attributes"aisle_left" | "aisle_right" | "accessible" | "wheelchair_space" | "companion_seat" | "easy_access" | "obstructed_view" | "restricted_view" | "excellent_view" | "stage_view" | "extra_legroom" | "premium_comfort" | "front_row" | "back_row" | "center"[]Seat attributes
companionSeatsstring[]IDs of companion seats (for wheelchair spaces)
companionTostringID of wheelchair space this is companion to
x*numberX coordinate on map
y*numberY coordinate on map
rotationnumber0-359 degrees
internalNotesstringInternal notes
publicNotesstringPublic notes shown to customers
Response
Seat added successfully
Notes
ℹ️For regular seating rows, use generateSeatsForArea instead-it's much faster.
💡Seat labels should match what's printed on physical seats at the venue.
Code Samples
Add Seat To Area using the TypeScript SDK:
import { BackstageClient } from '@ticketlayer/backstage';
const client = new BackstageClient({
organisationSlug: 'your-org',
});
client.setAccessToken('YOUR_ACCESS_TOKEN');
// Add Seat To Area
const result = await client.seattoarea.addSeatToArea('{{ID}}', { /* request body */ });
console.log('Operation completed:', result);