Skip to navigation

List available inventory items

Returns a paginated list of the inventory an occurrence lists for sale, plus any sold-out area kept on display (see the end of this description). Use the inventoryVariant._type field to differentiate between item types:

  • AssignedSeat — specific physical seat (section, row, seat number)
  • GeneralAdmission — general admission area with available quantity
  • Extra — an add-on such as drinks, merchandise or parking
  • GiftCard — a gift card. Most gift-card events return one item per denomination, each carrying the balance it is issued with in value. An event whose buyer chooses the amount returns one GiftCard item instead, carrying valueRange and presetValues and no value; a cart for it must send the chosen amount as giftCard.value. A gift-card event’s occurrence and venue are placeholders: do not render a date, a time or a venue for one.

InventoryVariant.id is stable across all occurrences, enabling seating chart integration.

Send the quantity query parameter to shape the list around a party of that size; omit it to see all inventory. Most inventory the party cannot buy is dropped. A seat the party can pick carries selectionGroup.inventoryItemIds: the items to add to the cart together when the customer picks it. A seat that is in stock but not sold to a party of that size stays listed with selectionBlocked.chainSize, the quantity that would work. A listed seat with neither field cannot be picked at that size, for example because taking it would strand a single seat. Show both as unavailable and do not add them to a cart. Pagination applies to the shaped list, so fetch every page with the same quantity.

While the inventory does not change, items come back in the same order on every request, so the pages of one list fit together. A seat that sells between page requests shifts the items after it.

Send the voucherCode query parameter with a presale or access code to include the inventory sold only to holders of that code.

A GeneralAdmission area that has sold out but is configured to stay listed is returned with quantityAvailable 0 and an empty priceOptions, after every purchasable item. Show it as unavailable; it cannot be added to a cart.

Authentication

X-TT-API-Keystring
API Key authentication via header

Path parameters

eventIdstringRequiredformat: "^[1-9]\d*$">=1 character
Event ID
occurrenceIdstringRequiredformat: "^[1-9]\d*$">=1 character
Occurrence ID

Headers

X-TT-RetailerstringRequired
Your retailer identifier, provided during onboarding. It must be a retailer your API key was issued for.
X-TT-PlatformenumRequired
Identifies the platform the request comes from.
Allowed values:

Query parameters

providerCodestringOptionalformat: ".*\S.*"0-255 characters

Optional rate code: prices this request at a pricing tier your TTG contact set up for you (see Rate Codes). Omit it for the default tier; a code not set up for this event and retailer is rejected with a 404 naming the code.

currencystringOptionalformat: "^[A-Z]{3}$"

ISO 4217 currency to price in. Omit for the event base currency. A currency this event is not sold in returns 400; one it is sold in but that cannot be priced right now returns 503.

quantityintegerOptional

Number of tickets the party needs. Seats the whole party can sit in together carry a selectionGroup; seats in stock but not sold at that size carry selectionBlocked; general admission areas without enough tickets remaining are dropped. Omit to see all inventory.

voucherCodestringOptionalformat: ".*\S.*"0-15 characters

Presale or access code the shopper has entered. Inventory sold only to holders of this code is included and priced with the code applied. A code this event does not recognize is ignored: the response is the same as without it. A blank code, or one longer than 15 characters, is rejected with a 400.

includelist of enumsOptional

Optional extras to add to the response, comma-separated. IMAGES gives every assigned seat images: the views of the stage from that seat, empty for a seat with none. Leave out an extra the page does not display; each one adds to the response time. An unknown value is rejected with a 400.

Allowed values:
limitintegerOptional1-1000Defaults to 50
Maximum number of results to return.
offsetintegerOptional>=0Defaults to 0
Number of results to skip for pagination.

Response headers

X-RateLimit-Limitinteger
How many requests this API key may make for this retailer in the current window. Sent only when the request was counted against that limit. A response served from cache was not counted and repeats the value it was cached with.
X-RateLimit-Remaininginteger
How many requests this API key has left for this retailer in the current window. Sent only when the request was counted against that limit. A response served from cache was not counted and repeats the value it was cached with.

Response

Paginated list of available inventory items.
datalist of objectsOptional
List of entities in the current page.
paginationobjectOptional
Pagination metadata.

Errors

400
Bad Request Error
401
Unauthorized Error
403
Forbidden Error
404
Not Found Error
409
Conflict Error
429
Too Many Requests Error
500
Internal Server Error
503
Service Unavailable Error