Operation
Add Area to Layout
POST
/venues/{id}/layouts/{layoutId}/areasCreate a new seating area within a venue layout.
Areas group seats together-think "Stalls", "Circle", "Balcony", or "GA Floor".
Each area can have its own capacity, either as assigned seats or general
admission.
After creating an area, you'll typically add seats to it using the seat
endpoints or the bulk generation tools.
When to use this
- Setting up a new seating section in a venue
- Creating a general admission standing area
- Adding accessible seating sections
Path parameters
idstringRequired- Venue ID
layoutIdstringRequired- Layout 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.
Body
name*stringArea name
descriptionstringArea description
type*"unallocated" | "allocated"Area type (unallocated for GA, allocated for assigned seating)
status"active" | "inactive"Area status
capacity*numberTotal capacity for this area
displayOrdernumberDisplay order in UI (auto-assigned if not provided)
colorstringHex color for visual distinction
seatsany[]Seats array (only for allocated seating areas, leave empty for GA)
x*number
y*number
width*number
height*number
categoryIdstringCategory ID for pricing (especially for GA areas)
Returns
Area added 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
Note
Areas are containers for seats-create the area first, then add seats to it.
Tip
Give areas clear names that match what's printed on physical signage at the venue.
Related
import { BackstageClient } from '@ticketlayer/backstage';const client = new BackstageClient({ organisationSlug: 'your-org',});client.setAccessToken('YOUR_ACCESS_TOKEN');// Add Area To Venue Layoutconst result = await client.areatovenuelayout.addAreaToVenueLayout('{{ID}}', { /* request body */ });console.log('Operation completed:', result);Response 201
{
"area": {
"id": "vla_abc123",
"name": "Main Floor",
"description": "General admission area",
"type": "unallocated",
"status": "active",
"capacity": 500,
"displayOrder": 1,
"color": "#FFD700",
"seats": []
}
}