Update Event
PATCH
/events/{id}Update an existing event's properties. Only the fields you include in the
request body will be modified - all other fields remain unchanged.
Common updates include changing the event name, description, or status
(e.g., publishing a draft event or cancelling an event).
When to use this
- Publishing a draft event to make it visible
- Updating event details like name or description
- Cancelling an event
- Changing the associated venue
Parameters
idpathrequiredEvent ID
Request Body
namestringEvent name
subtitlestringnullShort event subtitle / tagline
descriptionstringnullEvent description
shortDescriptionstringnullCard / listing summary
imageUrlstring,null (uri)Listing / card image URL
heroImageUrlstring,null (uri)Event-page hero image URL
presentationobjectnullEvent-level storefront design override
twoColumnSplitarray
buttonSize"small" | "medium" | "large"
status"draft" | "published" | "on_sale" | "sold_out" | "completed" | "cancelled"Event status
venueIdstringnullVenue ID (link to formal venue)
venueNamestringnullVenue name (text-only, alternative to venueId)
timezonestringEvent timezone
onSaleDatestring,null (date-time)When tickets go on sale
offSaleDatestring,null (date-time)When sales close
tagsstring[]Event tags
idstringTicket type ID (auto-generated if not provided)
name*stringTicket type name
descriptionstringTicket type description
displayOrder*integerDisplay order
venueLayoutTemplateIdstringSource venue layout template ID (if imported)
Response
Event updated successfully
Notes
ℹ️This endpoint uses PATCH semantics - only include fields you want to change.
⚠️Changing an event's status to `cancelled` will notify ticket holders if configured.
💡Fetch the event first with `getEvent` if you need to see current values before updating.
Code Samples
Update an event using the TypeScript SDK:
import { BackstageClient } from '@ticketlayer/backstage';
const client = new BackstageClient({
organisationSlug: 'your-org',
});
client.setAccessToken('YOUR_ACCESS_TOKEN');
// Publish a draft event
const event = await client.events.update('evt_abc123', {
status: 'published',
description: 'Updated description with more details!',
});
console.log(`Event ${event.name} is now ${event.status}`);