Brushfire Cart API
The Cart API from Brushfire — 11 operation(s) for cart.
The Cart API from Brushfire — 11 operation(s) for cart.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/brushfire-cart-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: 'Brushfire API: Version 2025-07-22 AccessCodes Cart API'
version: '2025-07-22'
description: 'The Brushfire REST API provides programmatic access to the Brushfire event ticketing and registration platform. It covers events, ticket types, sections and seats, attendees, orders, the shopping cart and checkout flow, groups, sessions and check-in, promotions and access codes, payment profiles, and webhooks (Hooks). Authenticate by sending your App Key (requested at https://developer.brushfire.com/key) in the Authorization header. The API is date-versioned: send the desired version in the api-version request header (for example, 2025-07-22). This document is the live specification published at api.brushfire.com/swagger.'
contact:
name: Brushfire Developers
url: https://developer.brushfire.com
servers:
- url: https://api.brushfire.com
description: Brushfire API (date-versioned via the api-version header)
tags:
- name: Cart
paths:
/cart/{cartId}:
get:
tags:
- Cart
summary: Retrieve events and attendees for a specific cart
parameters:
- name: cartId
in: path
description: A valid CartId that was previously generated by /cart/id
required: true
schema:
type: string
- name: accessKey
in: query
description: The Access Key for the user context
schema:
type: string
- name: pos
in: query
description: A boolean indicating if this cart should be retrieved for POS mode
schema:
type: boolean
default: false
- name: exclude
in: query
description: A comma-separated list of GUIDs representing the ID of each promotion you would like to exclude from the cart
schema:
type: string
- name: slipstream
in: query
description: ''
schema:
type: string
- name: originalOrderId
in: query
description: A valid OrderId to ease adding other attendees and add-ons
schema:
type: string
- name: exchangeId
in: query
description: A valid ExchangeId to associate this cart with an exchange
schema:
type: string
format: uuid
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/CartEventOutput'
text/json:
schema:
type: array
items:
$ref: '#/components/schemas/CartEventOutput'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiModelError'
text/json:
schema:
$ref: '#/components/schemas/ApiModelError'
security:
- apiKey: []
/cart/{cartId}/events/{eventId}:
delete:
tags:
- Cart
summary: Delete all attendees for a specific event in a specific cart
parameters:
- name: cartId
in: path
description: A valid CartId that was previously generated by /cart/id
required: true
schema:
type: string
- name: eventId
in: path
description: An integer or a GUID that corresponds to a specific event
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CartDeleteEventOutput'
text/json:
schema:
$ref: '#/components/schemas/CartDeleteEventOutput'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiModelError'
text/json:
schema:
$ref: '#/components/schemas/ApiModelError'
security:
- apiKey: []
get:
tags:
- Cart
summary: Retrieve event and attendees for a specific cart and specific event
parameters:
- name: cartId
in: path
description: A valid CartId that was previously generated by /cart/id
required: true
schema:
type: string
- name: eventId
in: path
description: An integer or a GUID that corresponds to a specific event
required: true
schema:
type: string
- name: accessKey
in: query
description: The Access Key for the user context
schema:
type: string
- name: pos
in: query
description: A boolean indicating if this cart should be retrieved for POS mode
schema:
type: boolean
default: false
- name: exclude
in: query
description: A comma-separated list of GUIDs representing the ID of each promotion you would like to exclude from the cart
schema:
type: string
- name: slipstream
in: query
description: ''
schema:
type: string
- name: originalOrderId
in: query
description: A valid OrderId for a post-order add-on purchase
schema:
type: string
- name: exchangeId
in: query
description: A valid ExchangeId to associate this cart with an exchange
schema:
type: string
format: uuid
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CartEventOutput'
text/json:
schema:
$ref: '#/components/schemas/CartEventOutput'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiModelError'
text/json:
schema:
$ref: '#/components/schemas/ApiModelError'
security:
- apiKey: []
post:
tags:
- Cart
summary: Update a specific event in a specific cart
parameters:
- name: cartId
in: path
description: A valid CartId that was previously generated by /cart/id
required: true
schema:
type: string
- name: eventId
in: path
description: An integer or a GUID that corresponds to a specific event
required: true
schema:
type: string
- name: originalOrderId
in: query
description: A valid OrderId for a post-order add-on purchase
schema:
type: string
- name: exchangeId
in: query
description: A valid ExchangeId to associate this cart with an exchange
schema:
type: string
format: uuid
requestBody:
description: Any options not provided will not be updated
content:
application/json:
schema:
$ref: '#/components/schemas/CartUpdateEventInput'
text/json:
schema:
$ref: '#/components/schemas/CartUpdateEventInput'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/CartUpdateEventInput'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CartEventOutput'
text/json:
schema:
$ref: '#/components/schemas/CartEventOutput'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiModelError'
text/json:
schema:
$ref: '#/components/schemas/ApiModelError'
security:
- apiKey: []
/cart/{cartId}/events/{eventId}/attendees:
post:
tags:
- Cart
summary: Add attendees to the specified cart
parameters:
- name: cartId
in: path
description: A valid CartId that was previously generated by /cart/id
required: true
schema:
type: string
- name: eventId
in: path
description: An integer or a GUID that corresponds to a specific event
required: true
schema:
type: string
- name: originalOrderId
in: query
description: A valid OrderId for a post-order add-on purchase
schema:
type: string
- name: exchangeId
in: query
description: A valid ExchangeId to associate this cart with an exchange
schema:
type: string
format: uuid
requestBody:
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/CartAddAttendeeInput'
text/json:
schema:
$ref: '#/components/schemas/CartAddAttendeeInput'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/CartAddAttendeeInput'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CartAddAttendeeOutput'
text/json:
schema:
$ref: '#/components/schemas/CartAddAttendeeOutput'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiModelError'
text/json:
schema:
$ref: '#/components/schemas/ApiModelError'
security:
- apiKey: []
/cart/{cartId}/events/{eventId}/attendees/{attendeeId}:
delete:
tags:
- Cart
summary: Delete a specific attendee from a specific cart
parameters:
- name: cartId
in: path
description: A valid CartId that was previously generated by /cart/id
required: true
schema:
type: string
- name: eventId
in: path
description: An integer or a GUID that corresponds to a specific event
required: true
schema:
type: string
- name: attendeeId
in: path
description: An integer or a GUID that corresponds to a specific attendee
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CartDeleteAttendeeOutput'
text/json:
schema:
$ref: '#/components/schemas/CartDeleteAttendeeOutput'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiModelError'
text/json:
schema:
$ref: '#/components/schemas/ApiModelError'
security:
- apiKey: []
get:
tags:
- Cart
summary: Retrieve information for a specific attendee in a specific cart
parameters:
- name: cartId
in: path
description: A valid CartId that was previously generated by /cart/id
required: true
schema:
type: string
- name: eventId
in: path
description: An integer or a GUID that corresponds to a specific event
required: true
schema:
type: string
- name: attendeeId
in: path
description: An integer or a GUID that corresponds to a specific attendee
required: true
schema:
type: string
- name: originalOrderId
in: query
description: A valid OrderId for a post-order add-on purchase
schema:
type: string
- name: exchangeId
in: query
description: A valid ExchangeId to associate this cart with an exchange
schema:
type: string
format: uuid
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CartAttendeeOutput'
text/json:
schema:
$ref: '#/components/schemas/CartAttendeeOutput'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiModelError'
text/json:
schema:
$ref: '#/components/schemas/ApiModelError'
security:
- apiKey: []
post:
tags:
- Cart
summary: Update information for a specific attendee in a specific cart
parameters:
- name: cartId
in: path
description: A valid CartId that was previously generated by /cart/id
required: true
schema:
type: string
- name: eventId
in: path
description: An integer or a GUID that corresponds to a specific event
required: true
schema:
type: string
- name: attendeeId
in: path
description: An integer or a GUID that corresponds to a specific attendee
required: true
schema:
type: string
- name: originalOrderId
in: query
description: A valid OrderId for a post-order add-on purchase
schema:
type: string
- name: exchangeId
in: query
description: A valid ExchangeId to associate this cart with an exchange
schema:
type: string
format: uuid
requestBody:
description: Any options not provided will not be updated
content:
application/json:
schema:
$ref: '#/components/schemas/CartUpdateAttendeeInput'
text/json:
schema:
$ref: '#/components/schemas/CartUpdateAttendeeInput'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/CartUpdateAttendeeInput'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CartAttendeeOutput'
text/json:
schema:
$ref: '#/components/schemas/CartAttendeeOutput'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiModelError'
text/json:
schema:
$ref: '#/components/schemas/ApiModelError'
security:
- apiKey: []
/cart/{cartId}/events/{eventId}/attendees/{attendeeId}/form:
get:
tags:
- Cart
summary: Retrieve form for a specific attendee for a specific event in a specific cart
parameters:
- name: cartId
in: path
description: A valid CartId that was previously generated by /cart/id
required: true
schema:
type: string
- name: eventId
in: path
description: An integer or a GUID that corresponds to a specific event
required: true
schema:
type: string
- name: attendeeId
in: path
description: An integer, GUID, or a string that corresponds to a specific attendee
required: true
schema:
type: string
- name: accessKey
in: query
description: The Access Key for the user context
schema:
type: string
- name: originalOrderId
in: query
description: A valid OrderId for a post-order add-on purchase
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/FormOutput'
text/json:
schema:
$ref: '#/components/schemas/FormOutput'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiModelError'
text/json:
schema:
$ref: '#/components/schemas/ApiModelError'
security:
- apiKey: []
post:
tags:
- Cart
summary: Update form for a specific attendee for a specific event in a specific cart
parameters:
- name: cartId
in: path
description: A valid CartId that was previously generated by /cart/id
required: true
schema:
type: string
- name: eventId
in: path
description: An integer or a GUID that corresponds to a specific event
required: true
schema:
type: string
- name: attendeeId
in: path
description: An integer, GUID, or a string that corresponds to a specific attendee
required: true
schema:
type: string
- name: originalOrderId
in: query
description: A valid OrderId for a post-order add-on purchase
schema:
type: string
requestBody:
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/CartAttendeeFormInput'
text/json:
schema:
$ref: '#/components/schemas/CartAttendeeFormInput'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/CartAttendeeFormInput'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/FormOutput'
text/json:
schema:
$ref: '#/components/schemas/FormOutput'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiModelError'
text/json:
schema:
$ref: '#/components/schemas/ApiModelError'
security:
- apiKey: []
/cart/{cartId}/events/{eventId}/form:
get:
tags:
- Cart
summary: Retrieve form for the buyer for a specific event in a specific cart
parameters:
- name: cartId
in: path
description: A valid CartId that was previously generated by /cart/id
required: true
schema:
type: string
- name: eventId
in: path
description: An integer or a GUID that corresponds to a specific event
required: true
schema:
type: string
- name: accessKey
in: query
description: The Access Key for the user context
schema:
type: string
- name: originalOrderId
in: query
description: A valid OrderId for a post-order add-on purchase
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/FormOutput'
text/json:
schema:
$ref: '#/components/schemas/FormOutput'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiModelError'
text/json:
schema:
$ref: '#/components/schemas/ApiModelError'
security:
- apiKey: []
post:
tags:
- Cart
summary: Update form for the buyer for a specific event in a specific cart
parameters:
- name: cartId
in: path
description: A valid CartId that was previously generated by /cart/id
required: true
schema:
type: string
- name: eventId
in: path
description: An integer or a GUID that corresponds to a specific event
required: true
schema:
type: string
- name: originalOrderId
in: query
description: A valid OrderId for a post-order add-on purchase
schema:
type: string
requestBody:
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/FieldUpdateInput'
text/json:
schema:
$ref: '#/components/schemas/FieldUpdateInput'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/FieldUpdateInput'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/FormOutput'
text/json:
schema:
$ref: '#/components/schemas/FormOutput'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiModelError'
text/json:
schema:
$ref: '#/components/schemas/ApiModelError'
security:
- apiKey: []
/cart/{cartId}/events/{eventId}/forms:
get:
tags:
- Cart
summary: Retrieve forms for the buyer and attendees for a specific event in a specific cart
parameters:
- name: cartId
in: path
description: A valid CartId that was previously generated by /cart/id
required: true
schema:
type: string
- name: eventId
in: path
description: An integer or a GUID that corresponds to a specific event
required: true
schema:
type: string
- name: accessKey
in: query
description: The Access Key for the user context
schema:
type: string
- name: originalOrderId
in: query
description: A valid OrderId for a post-order add-on purchase
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/FormOutput'
text/json:
schema:
type: array
items:
$ref: '#/components/schemas/FormOutput'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiModelError'
text/json:
schema:
$ref: '#/components/schemas/ApiModelError'
security:
- apiKey: []
/cart/{cartId}/lookup:
get:
tags:
- Cart
summary: Search customer accounts and past orders for checkout information for specified cart
parameters:
- name: cartId
in: path
description: A valid CartId that was previously generated by /cart/{cartId}
required: true
schema:
type: string
- name: name
in: query
description: Name you are searching for (first and/or last)
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/CartLookupOutput'
text/json:
schema:
type: array
items:
$ref: '#/components/schemas/CartLookupOutput'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiModelError'
text/json:
schema:
$ref: '#/components/schemas/ApiModelError'
security:
- apiKey: []
/cart/{cartId}/promotions:
post:
tags:
- Cart
summary: Adds a promotion (by name) to a specific cart
parameters:
- name: cartId
in: path
description: A valid CartId that was previously generated by /cart/{cartId}
required: true
schema:
type: string
- name: originalOrderId
in: query
description: A valid OrderId for a post-order add-on purchase
schema:
type: string
- name: exchangeId
in: query
description: A valid ExchangeId to associate this cart with an exchange
schema:
type: string
format: uuid
requestBody:
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/CartAddPromotionInput'
text/json:
schema:
$ref: '#/components/schemas/CartAddPromotionInput'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/CartAddPromotionInput'
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/CartPromotionOutput'
text/json:
schema:
type: array
items:
$ref: '#/components/schemas/CartPromotionOutput'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiModelError'
text/json:
schema:
$ref: '#/components/schemas/ApiModelError'
security:
- apiKey: []
/cart/{cartId}/promotions/{promotionId}:
delete:
tags:
- Cart
summary: Delete a promotion from a specific cart
parameters:
- name: cartId
in: path
description: A valid CartId that was previously generated by /cart/{cartId}
required: true
schema:
type: string
- name: promotionId
in: path
description: A GUID that corresponds to a specific promotion
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CartDeletePromotionOutput'
text/json:
schema:
$ref: '#/components/schemas/CartDeletePromotionOutput'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiModelError'
text/json:
schema:
$ref: '#/components/schemas/ApiModelError'
security:
- apiKey: []
/cart/id:
get:
tags:
- Cart
summary: Retreive a system-generated CartId for use in other calls
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CartIdOutput'
text/json:
schema:
$ref: '#/components/schemas/CartIdOutput'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiModelError'
text/json:
schema:
$ref: '#/components/schemas/ApiModelError'
security:
- apiKey: []
components:
schemas:
PaymentMethodOutput:
type: object
properties:
PaymentMethodId:
type: string
format: uuid
Name:
type:
- string
- 'null'
IsElectronic:
type: boolean
InfoGrouping:
type:
- string
- 'null'
Grouping:
$ref: '#/components/schemas/InfoGrouping'
additionalProperties: false
FormOutput:
type: object
properties:
Id:
type: string
format: uuid
ObjectId:
type: string
format: uuid
IsAttendee:
type: boolean
AttendeeNumber:
type:
- integer
- 'null'
format: int64
IsPreRegistered:
type: boolean
IsGift:
type: boolean
ShareEmail:
type:
- string
- 'null'
CopyEnabled:
type: boolean
GiftingEnabled:
type: boolean
PreRegEnabled:
type: boolean
IsCopySource:
type: boolean
IsCopyDestination:
type: boolean
readOnly: true
CanContinue:
type: boolean
AttendeeTypeId:
type: string
format: uuid
AttendeeTypeName:
type:
- string
- 'null'
IsCompleted:
type: boolean
SeatId:
type:
- string
- 'null'
format: uuid
SectionName:
type:
- string
- 'null'
RowName:
type:
- string
- 'null'
SeatLabel:
type:
- string
- 'null'
DistanceCount:
type:
- integer
- 'null'
format: int32
UnitPrice:
type: number
format: double
UnitAddons:
type: number
format: double
UnitFee:
type: number
format: double
UnitTax:
type: number
format: double
DisplayPrice:
type: number
format: double
PriceDescription:
type:
- string
- 'null'
IsInclusiveFees:
type: boolean
IsInclusiveTaxes:
type: boolean
Culture:
type:
- string
- 'null'
CopyableAttendeeNumbers:
type:
- array
- 'null'
items:
type: integer
format: int64
DisplayName:
type:
- string
- 'null'
readOnly: true
AttendeeDisplay:
type:
- array
- 'null'
items:
type: string
readOnly: true
Fields:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/FieldOutput'
additionalProperties: false
EventVerbiage:
enum:
- Registrations
- Tickets
type: string
UnitFeeLineItemOutput:
type: object
properties:
Label:
type:
- string
- 'null'
description: Display label (e.g. "Service Fee", "Sales Tax").
FeeType:
$ref: '#/components/schemas/FeeItemType'
Amount:
type: number
description: The evaluated amount for this line item.
format: double
additionalProperties: false
description: 'A single fee or tax line item evaluated for an attendee from the attendee
type''s customFees configuration. On cart outputs this is a live evaluation;
on order outputs it is the snapshot of what was collected at purchase time.'
CartDeleteAttendeeOutput:
type: object
properties:
ExpiresAt:
type:
- string
- 'null'
format: date-time
TotalCount:
type: integer
format: int32
DeletedCount:
type: integer
format: int32
additionalProperties: false
CartDeletePromotionOutput:
type: object
properties:
DeletedCount:
type: integer
format: int32
additionalProperties: false
CartAddPromotionInput:
required:
- CodeName
type: object
properties:
CodeName:
minLength: 1
type: string
AccessKey:
type:
- string
- 'null'
Exclude:
type:
- string
# --- truncated at 32 KB (57 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/brushfire/refs/heads/main/openapi/brushfire-cart-api-openapi.yml