Brushfire Exchanges API
The Exchanges API from Brushfire — 2 operation(s) for exchanges.
The Exchanges API from Brushfire — 2 operation(s) for exchanges.
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-exchanges-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 Exchanges 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: Exchanges
paths:
/exchanges:
post:
tags:
- Exchanges
summary: Create an exchange
requestBody:
description: Exchange create body
content:
application/json:
schema:
$ref: '#/components/schemas/ExchangeInput'
text/json:
schema:
$ref: '#/components/schemas/ExchangeInput'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/ExchangeInput'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ExchangeOutput'
text/json:
schema:
$ref: '#/components/schemas/ExchangeOutput'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiModelError'
text/json:
schema:
$ref: '#/components/schemas/ApiModelError'
security:
- apiKey: []
/exchanges/{exchangeId}:
delete:
tags:
- Exchanges
summary: Deletes an exchange based on the provided exchange ID and client key.
parameters:
- name: exchangeId
in: path
description: A valid ExchangeId
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
type: boolean
text/json:
schema:
type: boolean
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiModelError'
text/json:
schema:
$ref: '#/components/schemas/ApiModelError'
security:
- apiKey: []
get:
tags:
- Exchanges
summary: Get full details of an exchange
parameters:
- name: exchangeId
in: path
description: A valid ExchangeId
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ExchangeOutput'
text/json:
schema:
$ref: '#/components/schemas/ExchangeOutput'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiModelError'
text/json:
schema:
$ref: '#/components/schemas/ApiModelError'
security:
- apiKey: []
put:
tags:
- Exchanges
summary: Update an exchange
parameters:
- name: exchangeId
in: path
description: A valid ExchangeId
required: true
schema:
type: string
requestBody:
description: Exchange update body
content:
application/json:
schema:
$ref: '#/components/schemas/ExchangeInput'
text/json:
schema:
$ref: '#/components/schemas/ExchangeInput'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/ExchangeInput'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ExchangeOutput'
text/json:
schema:
$ref: '#/components/schemas/ExchangeOutput'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiModelError'
text/json:
schema:
$ref: '#/components/schemas/ApiModelError'
security:
- apiKey: []
components:
schemas:
ExchangeInput:
required:
- AccessKey
- AttendeeNumbers
- ClientKey
- ExchangeMethod
- SourceEventId
type: object
properties:
ClientKey:
minLength: 1
type: string
AttendeeNumbers:
type: array
items:
type: integer
format: int64
ExchangeMethod:
$ref: '#/components/schemas/ExchangeMethod'
AccessKey:
minLength: 1
type: string
SourceEventId:
type: string
format: uuid
additionalProperties: false
ExchangeMethod:
enum:
- SameEvent
- NewEvent
type: string
StringStringKeyValuePair:
type: object
properties:
Key:
type:
- string
- 'null'
Value:
type:
- string
- 'null'
additionalProperties: false
ApiModelError:
type: object
properties:
Errors:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/StringStringKeyValuePair'
Message:
type:
- string
- 'null'
Data: {}
StackTrace:
type:
- string
- 'null'
additionalProperties: false
ExchangeOutput:
type: object
properties:
ExchangeId:
type: string
format: uuid
ExchangeMethod:
$ref: '#/components/schemas/ExchangeMethod'
ClientKey:
type:
- string
- 'null'
ExchangeAttendees:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/ExchangeAttendeeOutput'
LastModifiedAt:
type: string
format: date-time
SourceEventId:
type: string
format: uuid
IsExchangeRefundAllowed:
type: boolean
ExchangeAttendeesTotal:
type: number
format: double
readOnly: true
additionalProperties: false
ExchangeAttendeeOutput:
type: object
properties:
AttendeeId:
type: string
format: uuid
AttendeeNumber:
type: integer
format: int64
EventId:
type: string
format: uuid
AttendeeTypeId:
type: string
format: uuid
TypeName:
type:
- string
- 'null'
Amount:
type: number
format: double
Addons:
type: number
format: double
Discounts:
type: number
format: double
Fees:
type: number
format: double
Taxes:
type: number
format: double
Deliveries:
type: number
description: Deprecated. Delivery has been folded into API.Models.ExchangeAttendeeOutput.Fees; this property is kept for backwards compatibility but should be ignored.
format: double
Status:
type:
- string
- 'null'
IsCompleted:
type: boolean
ExternalId:
type:
- string
- 'null'
ExternalDescription:
type:
- string
- 'null'
IsAddon:
type: boolean
Total:
type: number
format: double
readOnly: true
additionalProperties: false
securitySchemes:
apiKey:
type: apiKey
description: The App Key you received from https://developer.brushfire.com/key
name: Authorization
in: header