Update Venue Layout
PATCH
/venues/{id}/layouts/{layoutId}Update a venue layout's basic properties.
Change the layout name, description, or status. This doesn't affect the areas,
seats, or categories within the layout-use the specific area and seat
endpoints for that.
Layouts let you have different seating configurations for the same venue,
like "Concert Setup" vs "Theatre Setup".
When to use this
- Renaming a layout after finalising its configuration
- Marking a layout as active or archived
- Updating the description for clarity
Parameters
idpathrequiredVenue ID
layoutIdpathrequiredLayout ID
Request Body
namestringLayout name
descriptionstringLayout description
status"active" | "archived"Layout status
totalCapacitynumberTotal capacity
idstringFloor ID (auto-generated if not provided)
name*stringFloor name
displayOrder*numberDisplay order (0 = ground, higher = upper floors)
descriptionstringFloor description
idstringCategory ID (auto-generated if not provided)
name*stringCategory name
descriptionstringCategory description
displayOrder*numberDisplay order in UI
colorstringHex color for visual distinction
idstringArea ID (auto-generated if not provided)
name*stringArea name
descriptionstringArea description
type*"unallocated" | "allocated"Area type (unallocated = GA, allocated = assigned seating)
status"active" | "inactive"
floorIdstringFloor ID (for multi-level venues)
capacity*numberTotal capacity
displayOrder*numberDisplay order in UI
colorstringHex color for visual distinction
idstringDecoration ID (auto-generated if not provided)
type*"stage" | "pillar" | "barrier" | "aisle" | "wall" | "exit" | "entrance" | "bar" | "restroom" | "label" | "custom"Decoration type
namestringDecoration name
labelstringDisplay label text
tagsstring[]Layout tags
Response
Venue layout updated successfully
Notes
ℹ️This only updates layout metadata-use other endpoints to modify areas or seats.
💡Create separate layouts for different event configurations rather than constantly updating one.
Code Samples
Update Venue Layout using the TypeScript SDK:
import { BackstageClient } from '@ticketlayer/backstage';
const client = new BackstageClient({
organisationSlug: 'your-org',
});
client.setAccessToken('YOUR_ACCESS_TOKEN');
// Update venuelayout
const updated = await client.venuelayout.update('{{VENUELAYOUT_ID}}', {
name: 'Updated Name',
// Add fields to update
});
console.log(`Updated venuelayout: ${updated.name}`);