openapi: 3.0.1 info: title: 'Brushfire API: Version 2025-07-22 AccessCodes 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: AccessCodes paths: /accesscodes: get: tags: - AccessCodes summary: List all access codes for a specific client (and additional parameters) parameters: - name: clientId in: query description: A string, a GUID, or an integer that corresponds to a specific client schema: type: string - name: kind in: query description: An option string value from "Standard", "Template", or "Dynamic" that represents the kind of access code schema: $ref: '#/components/schemas/AccessCodeKind' - name: isRedeemed in: query description: An optional boolean value if the access code has been redeemed schema: type: boolean - name: search in: query description: An option string to filter access codes by name schema: type: string responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/AccessCodeOutput' text/json: schema: type: array items: $ref: '#/components/schemas/AccessCodeOutput' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ApiModelError' text/json: schema: $ref: '#/components/schemas/ApiModelError' security: - apiKey: [] /accesscodes/{accessCodeId}: get: tags: - AccessCodes summary: Get details of a single access code parameters: - name: accessCodeId in: path description: A GUID that corresponds to a specific access code required: true schema: type: string responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/AccessCodeOutput' text/json: schema: $ref: '#/components/schemas/AccessCodeOutput' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ApiModelError' text/json: schema: $ref: '#/components/schemas/ApiModelError' security: - apiKey: [] /accesscodes/dynamic: post: tags: - AccessCodes summary: Creates the specified quantity of dynamic access codes based upon the provided template code requestBody: description: '' content: application/json: schema: $ref: '#/components/schemas/AccessCodeCreateInput' text/json: schema: $ref: '#/components/schemas/AccessCodeCreateInput' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/AccessCodeCreateInput' responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/AccessCodeCreateOutput' text/json: schema: type: array items: $ref: '#/components/schemas/AccessCodeCreateOutput' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ApiModelError' text/json: schema: $ref: '#/components/schemas/ApiModelError' security: - apiKey: [] components: schemas: AccessCodeCreateOutput: type: object properties: Id: type: string format: uuid Description: type: string nullable: true StartsAt: type: string format: date-time nullable: true EndsAt: type: string format: date-time nullable: true Kind: type: string nullable: true IsSingleUse: type: boolean IsRedeemed: type: boolean Names: type: array items: type: string nullable: true Events: type: array items: type: string format: uuid nullable: true AttendeeTypes: type: array items: type: string format: uuid nullable: true Seats: type: array items: type: string format: uuid nullable: true additionalProperties: false StringStringKeyValuePair: type: object properties: Key: type: string nullable: true Value: type: string nullable: true additionalProperties: false AccessCodeOutput: type: object properties: Id: type: string format: uuid Description: type: string nullable: true StartsAt: type: string format: date-time nullable: true EndsAt: type: string format: date-time nullable: true Kind: type: string nullable: true IsSingleUse: type: boolean IsRedeemed: type: boolean Names: type: array items: type: string nullable: true Events: type: array items: type: string format: uuid nullable: true AttendeeTypes: type: array items: type: string format: uuid nullable: true Seats: type: array items: type: string format: uuid nullable: true additionalProperties: false ApiModelError: type: object properties: Errors: type: array items: $ref: '#/components/schemas/StringStringKeyValuePair' nullable: true Message: type: string nullable: true Data: nullable: true StackTrace: type: string nullable: true additionalProperties: false AccessCodeKind: enum: - Standard - Template - Dynamic type: string AccessCodeCreateInput: required: - Prefix - Quantity - TemplateId type: object properties: TemplateId: type: string format: uuid Quantity: maximum: 250 minimum: 1 type: integer format: int32 Prefix: maxLength: 13 minLength: 0 type: string additionalProperties: false securitySchemes: apiKey: type: apiKey description: The App Key you received from https://developer.brushfire.com/key name: Authorization in: header