Eventlayer / Understand the model

Events

Create and manage events with timezone-aware scheduling.

Events are the top-level resource in Eventlayer. Every attendee, ticket type, and ticket belongs to an event.

What belongs to an event

Events give you a single container for everything related to a gathering — attendees, ticket types, and tickets all live under one event. This makes it easy to manage access control, track check-ins, and organize your data.

Eventlayer handles timezone-aware scheduling so you can preserve the event’s venue-local time while also keeping a UTC representation for display and logic.

Create or configure an event

Use the API when your product creates events. The quickstart shows a complete example. The dashboard works with the same resources and is useful for reviewing the schedule, ticket types and Wallet design.

How events work

Every event has a name, optional location, and a start/end time. Times are specified as an object containing both a UTC timestamp and an IANA timezone identifier:

{
  "utc": "2026-09-15T09:00:00Z",
  "timezone": "America/New_York"
}

Eventlayer stores both the local time and the UTC equivalent, so your application can display the correct local time to attendees regardless of where they are.

When you create an event, a default "General Admission" ticket type is automatically created for it. You can disable this by passing disableDefaultTicketType: true in the create request.

Create an event through the API

// Create an event
const { data: event, error: eventError } = await eventlayer.events.create({
  name: "Conf 2026",
  startAt: {
    utc: "2026-09-15T09:00:00Z",
    timezone: "America/New_York",
  },
  endAt: {
    utc: "2026-09-16T17:00:00Z",
    timezone: "America/New_York",
  },
  location: "Javits Center, New York",
});
if (eventError) throw eventError;

// List all events
const { data: page, error: pageError } = await eventlayer.events.list();
if (pageError) throw pageError;
const items = page;

See the Events API Reference for full request and response schemas, including all available fields and filtering options.

Next steps