Skip to content

Reserved-seat ticketing and seating

SeatLayer developer documentation.

Two ways in. Sell your own tickets with SeatLayer checkout, a box office counter and door check-in. Or add reserved seating to your own platform and keep your checkout and brand.

Test mode includedBrowser holdsServer books
checkout.ts
// Browser: hold and hand off
onCheckout: (_, __, handoff) =>
  fetch('/api/checkout', {
    body: JSON.stringify({
      holdId: handoff.holdId
    })
  })

// Server: confirm the sale
await fetch('https://api.seatlayer.io/v1/events/<YOUR_EVENT_KEY>/book', {
  method: 'POST',
  headers: { authorization: `Bearer ${secretKey}` },
  body: JSON.stringify({ holdId, bookingRef: order.id })
})

Choose your path

From first chart to confirmed booking.

One seating layer, many products

Use the pieces you need. Keep the product you already have.

For platforms, SeatLayer is a seating layer that sits inside the ticketing you already run. Start with an embeddable picker, or connect the Designer, live inventory, server API, control room, and webhooks into your own workflow.

Built to be implemented

Explanation for people. Precise contracts for agents.

01 · Understand

Mental model first

Every journey begins with ownership, trust boundaries, and the lifecycle, not a wall of endpoints.

02 · Implement

Complete examples

Copy-ready browser and server code includes retries, conflicts, security, and production failure paths.

03 · Verify

A definition of done

Best practices and checklists tell a developer or an agent how to prove the integration is safe.

Agent-ready by default

The same pages work for developers and coding agents.

Every guide has a Markdown twin, while the docs homepage negotiates the generated llms.txt agent index.

View agent index

Type to search…

↑↓ navigate↵ selectEsc close