Add an extra to a cart

Adds an extra (such as merchandise, drinks, or parking) to an existing cart. Pick the extra from the cart's `options.extras` list and send its inventory item ID with one of its price option IDs. A cart can carry several extras: send `quantity` above 1 for more of the same extra, and call again with other extras or price options to mix them. - Only `Extra` inventory items can be added to an existing cart - The item must reference the same occurrence as the cart - Adding the same extra and price option again increases its quantity

Authentication

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

Path parameters

cartIdstringRequiredformat: "(?i)^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"

Headers

X-TT-PlatformenumRequired
Identifies the platform the request comes from.
Allowed values:

Request

This endpoint expects an object.
occurrence_idstringRequired>=1 character
ID of the occurrence
inventory_item_idstringRequired>=1 character

Opaque inventory item ID from the GET inventory-items response

price_option_idstringRequired>=1 character
Opaque price option ID from the inventory item priceOptions array
quantityintegerRequired>=1
Number of units to reserve. Must be greater than or equal to 1.

Response

Extra(s) added to the cart.

idstring
Cart ID
expires_atstring
UTC timestamp when the cart hold expires and inventory is released. Clients should display a countdown timer and warn users before expiration.
itemslist of objects

Items currently in the cart (held inventory). Does NOT include fees, protection, or credits — see receiptLines for those.

receipt_lineslist of objects

Server-ordered display lines for receipt rendering. Iterate in sequence. Always includes SubtotalLine. Conditionally: VoucherLine, ProtectionLine.

totalobject

Monetary amount in minor units (cents for USD). Never uses floating point to avoid precision errors.

protectionobject
Protection covering all items. Null if not added.
optionsobject
Options that can be applied to this cart. Each key is present only when that option is available.
voucherobject
A promo code applied to a cart.
total_taxesobject

Monetary amount in minor units (cents for USD). Never uses floating point to avoid precision errors.