Seat Map API and JavaScript SDK
Embed an interactive seat map into any ticketing stack. A TypeScript renderer SDK handles the front end, REST Booking API v2 handles the lock-confirm flow, and the server settles every seat conflict.
See what the renderer produces
The @seatmap.pro/renderer SDK mounts this WebGL view on any DOM container. Pan, zoom, and select seats — the same interactions your users get in production.
Open the full playground in a new tab The renderer is the same @seatmap.pro/renderer package published to npm.
What the seat map API and SDK cover
The building blocks for embedding interactive seat selection into your own platform.
| Capability | How Seatmap.pro delivers |
|---|---|
| Front-end integration | The @seatmap.pro/renderer npm package mounts on any DOM node and works with React, Vue, Angular, Svelte, or vanilla JavaScript. |
| Booking flow | REST Booking API v2 covers events, prices, seat locks, and confirmed sales with a lock-then-confirm model your backend drives. |
| Availability and holds | The renderer reads seat availability when the event loads, and the Booking API will not lock a seat that is already held, so two buyers cannot hold the same seat. |
| Typed and described API | Endpoints are OpenAPI-described and the SDK ships TypeScript types, so requests and responses are typed end to end. |
| AI-assisted integration | A single machine-readable guide at /ai-integration-complete.md lets AI coding assistants generate working integration code without extra lookups. |
| Deployment | Call the EU cloud API or run the whole platform on-premise with Docker and Helm behind your own gateway. |
Why developers integrate with Seatmap.pro
Typed from map to checkout
A TypeScript SDK and OpenAPI-described REST API mean your editor tooling knows the shape of every event, price, lock, and sale — fewer runtime surprises during integration.
Conflicts settled on the server
Booking sessions, added in 1.73.0, give each seat exactly one owner and sell the whole cart or none of it at confirm, so concurrent buyers cannot be sold the same seat.
Runs where you do
The same Booking API v2 and renderer SDK back both the EU cloud and on-premise deployments, so you can move between them without rewriting your integration.
Seat map API FAQ
Common questions from developers integrating interactive seat maps.
What does the seat map API do?
The Seatmap.pro API is the backend for interactive seat selection. REST Booking API v2 exposes events, prices, seat locks, and confirmed sales, while the @seatmap.pro/renderer SDK draws the map on the front end and reports selections. Together they let your platform sell reserved seating without building a rendering or availability engine.
Which front-end frameworks does the SDK support?
The renderer mounts on any DOM container, so it works with React, Vue, Angular, Svelte, or plain vanilla JavaScript. You control the surrounding UI; the SDK owns the seat map canvas and emits selection events.
How does real-time seat availability work?
The renderer reads seat availability when the event loads, so a seat another buyer takes or releases after that shows up on a reload or a new read. Who gets a seat is decided on the server. The Booking API will not lock a seat that is already held, and booking sessions, added in 1.73.0, give each seat exactly one owner, so two buyers cannot be sold the same seat.
Is the API documented with OpenAPI?
Yes. Booking API v2 is OpenAPI-described and the renderer ships TypeScript type definitions, so you get typed request and response models and generated-client compatibility. There is also a consolidated AI integration guide for code assistants.
Can I self-host the API?
Yes. Beyond the EU cloud, the full platform — editor, renderer SDK, Admin Renderer, and Booking API v2 — ships as signed Docker images and a maintained Helm chart, so the API runs inside your own infrastructure with the same contract as the cloud.
How do seat locks and confirmations work?
The flow is lock-then-confirm. Your backend locks the selected seats, completes payment, then confirms the sale to finalize them, and unlocks any seats it no longer needs. Booking sessions, added in 1.73.0 and turned on per organization, add a server-held cart that puts its seats back on sale when the hold time runs out and sells the whole cart or none of it at confirm. This keeps inventory accurate under concurrent load.
Where to next
Ready to Get Started?
Request a demo, and see Seatmap Pro in action. Map out your success with a secure, user-friendly and versatile solution for ticketing platforms.
Request a Demo