Skip to content

Charts and objects

Build reusable venue geometry from rows, tables, booths, GA areas, sections, zones, shapes, and text.

Updated View as Markdown

A chart is reusable venue geometry plus categories, buyer presentation, and authoring metadata. It has no live availability until a published snapshot is used to create an event.

Object types

Row

Parametric reserved seating defined by origin, count, spacing, direction, curve, and optional seat-level overrides.

Table

Round or rectangular seating that can book individual chairs, an atomic whole table, or a flexible party size within authored bounds.

Booth

One bookable block such as a trade-show stand, VIP box, or private suite.

GA area

A polygon with quantity-based capacity instead of individually presented seat positions.

Section

A named region that owns geometry, far-zoom navigation, and optional generated seat-plan behavior.

Shape

Non-bookable context such as a stage, field, wall, aisle, or decorative polygon.

Text

Wayfinding or descriptive copy placed independently on a floor.

Zone

A higher-level grouping for sections, navigation, focal points, reporting, and zone-scoped best-available selection.

Parametric geometry

Rows and sections store compact design intent rather than an arbitrary list of rendered dots. The renderer deterministically expands that intent into inventory positions.

This model enables consistent labels, scalable large venues, repeatable agent operations, and validation before publication.

Custom shape outlines

Plans often have shapes no rectangle can hold: a curved bar, a ring bar with an open middle, a stage with a rounded front. Draw them as a custom outline (or turn a rectangle into one with Custom outline), then choose Edit outline:

  • Curved sides. Pick a side on the map or in the list and set its Curve from -100 to 100. Positive bows to the left of the side’s direction, the same rule sections use. Straighten this side and Straighten all sides undo it; the points you placed never move.
  • Cut-outs. Add cut-out draws a rectangle or round hole inside the shape: a pillar, an island, the middle of a ring bar. Cut-outs stay inside the outline and never overlap, and a curve that would cross one is refused.

Curves and cut-outs show on the Designer canvas, the buyer map, thumbnails and in 3D, where a cut-out goes right through the solid. Agents can set the curves with update_shapes edgeCurvature (one value per side); cut-outs are drawn in the Designer only, because the tools never accept coordinates.

Tables and inventory identity

Mode Buyer selects Inventory behavior
Individual One or more chairs Each chair has its own identity
Whole table The table All capacity is one atomic unit
Flexible occupancy A party size Table remains exclusive to one buyer within min/max bounds

New events preserve the table mode and capacity from the chart snapshot they were created from. Changing the chart later does not reinterpret an existing event’s inventory.

Standing areas sold as one box

A standing area normally sells per person: each buyer picks how many places. Its Selling choice can instead sell it as one box, like a table: Whole area (one party takes all of its capacity) or Party size (one party picks a number between the fewest and most guests you set). A box is one booking whose label is the area’s technical label, so that label must be unique. An area sold to one party holds at most 100 guests. Buyers are also limited by the event’s “tickets per order” setting, which applies to whole tables too. Events created before this existed keep selling the area per person, and an area made with Join Areas always sells per person.

Wheelchair places marks that many of the area’s places for wheelchair users. They are part of the capacity; buyers who filter for wheelchair access can pick them, and the map shows the wheelchair symbol next to the capacity.

Chair numbers

A table’s Labels line sets how buyers read its chairs: the first number (0–999), the direction (clockwise, or anticlockwise from the last chair), and the format — T1-1, T1-2 …, 1, 2, 3 … or A, B, C …. A gap keeps its number, as a row’s seats do. Numbering is display only: every chair keeps its booking label (T1-1, T1-2 …), so changing it never moves a ticket, hold or booking. A chair’s own label, set while editing chairs, still wins.

Buyer details on tables, booths and standing areas

Setting Tables Booths Standing areas
Name on map (show or hide, size 8–24 pt) ✓ ✓ ✓ (a hidden name keeps the capacity line)
Entrance, up to 40 characters ✓ ✓ ✓
Booth type: inline, corner, peninsula, island (1–4 open sides) ✓
Buyer note, up to 160 characters per chair ✓

Without its own entrance, an object uses the entrance of the section it sits in. The same settings are available to agents through update_tables, update_booths and update_ga_areas (entrance, nameOnMap, nameSize, chairNumbering, boothType, note, and for areas bookingMode, minOccupancy, maxOccupancy, wheelchairPlaces).

Aisle seats

Buyers see Aisle seat on the card of a seat that sits on an aisle. Rows mark them for you: the first and last seat of every row, and the seats on both sides of a removed seat. In a segmented row, a junction set to continuous is not an aisle; a break is. Tables, booths and standing areas have no aisle seats.

A row’s automatic ends can be replaced, for example when one end of the row meets a wall. In the Designer, a row’s Layout has Aisle seats: Start, End, Both or None, with a note naming the row’s aisle seats; Use automatic goes back to the rule. Several selected rows show Mixed when they differ, and one choice sets them all. Agents use update_rows aisleSeats (start, end, both or none); null goes back to automatic. Seats beside a removed seat stay aisle seats either way. POST /v1/events/:eventKey/best-available takes preferAisle: true to prefer a group that includes an aisle seat.

This is separate from the Aisle transfer accessibility type, which marks a seat for moving across from a wheelchair.

Categories, tiers, and price

Every bookable object has a category:

interface Category {
  key: string;
  label: string;
  color: string;
  price?: number;
  tiers?: Array<{
    id: string;
    name: string;
    price: number;
  }>;
}
  • key is the stable integration identity.
  • label is buyer-facing copy.
  • color drives the map legend and seat styling.
  • price and tier prices use major currency units.

See ticket tiers for the buyer-to-server flow.

Sections, zones, and focal points

Sections group rows and other objects for navigation and venue structure. Zones group sections one level higher, for example Lower Bowl, Upper Bowl, and Floor.

Each used zone should have an explicit focal point aimed at its stage, field, or performance area. That focal influences zone-scoped best-available ranking and generated view-from-seat perspective; it does not change inventory identity.

Small venues can omit zones and work directly with sections or bare objects.

Three image jobs

Asset Purpose Buyer receives it?
Private trace reference (referenceImage) Authoring guide for PNG/JPEG/WebP or a selected PDF page No
Imported SVG/DXF primitives Sanitized shapes converted into editable chart objects As resulting shapes
Buyer background (backgroundImage) Optional presentation layer behind the buyer map Yes

Private reference bytes and provenance are stripped from the buyer document. SVG/DXF import supports a bounded primitive subset, not arbitrary scripts, external resources, or full CAD fidelity.

Panorama manifest jobs

Premium Panorama Manifests customers can start a private, revision-pinned CSV or JSON ingest from a trusted server with createPanoramaManifestJob, then poll the source-redacted result with retrievePanoramaManifestJob. Each row targets a stable venue, floor, section, row, or seat identity; URL inputs are fetched and transformed into generated preview and display tiers without exposing the original source URL in status responses.

Job creation never changes the chart and never publishes media. A signed-in human must review a fully ready job in the dashboard and explicitly apply it to the still-matching draft revision. Listing jobs, retrying, cancelling, applying, and publishing are deliberately absent from server-key and MCP surfaces.

Authoring checklist

  • Every bookable identity and visible label is unique where required.
  • Categories use stable keys and intended major-unit prices.
  • Rows/sections use geometry rules rather than manual seat duplication.
  • Table booking modes match how the venue sells them.
  • GA capacity and flexible table bounds are realistic.
  • Sections and zones have readable names and explicit focal points.
  • Private trace references are not confused with buyer backgrounds.
  • Validation passes before publication.

Continue with accessibility and pricing, templates, or publishing and versioning.

Navigation

Type to search…

↑↓ navigate↵ selectEsc close