Brushfire Groups API

The Groups API from Brushfire — 7 operation(s) for groups.

Operations 9

POST /groups Create a group #
PUT /groups Update a group #
GET /groups/{groupId} Retrieve information about a group #
POST /groups/{groupId}/community Set or clear the community for the specified group and all of its attendees #
GET /groups/{groupId}/fields Retrieve fields for a group #
POST /groups/{groupId}/fields Update fields for a group #
GET /groups/{groupId}/print Retrieve the printable resources for a single group #
GET /groups/helpdesk/{email} Retrieve groups that match provided email #
POST /groups/print Retrieve the printable resources for multiple groups #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/brushfire-groups-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

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 Specification

brushfire-groups-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: 'Brushfire API: Version 2025-07-22 Groups API'
  version: '2025-07-22'
  description: The Brushfire REST API provides programmatic access to the Brushfire event ticketing and registration platform.
  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: Groups
paths:
  /groups:
    post:
      tags:
      - Groups
      summary: Create a group
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GroupCreateInput'
          text/json:
            schema:
              $ref: '#/components/schemas/GroupCreateInput'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/GroupCreateInput'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupCreateOutput'
            text/json:
              schema:
                $ref: '#/components/schemas/GroupCreateOutput'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
            text/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
      security:
      - apiKey: []
      operationId: postGroups
      x-operation-id-source: derived
    put:
      tags:
      - Groups
      summary: Update a group
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GroupUpdateInput'
          text/json:
            schema:
              $ref: '#/components/schemas/GroupUpdateInput'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/GroupUpdateInput'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupCreateOutput'
            text/json:
              schema:
                $ref: '#/components/schemas/GroupCreateOutput'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
            text/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
      security:
      - apiKey: []
      operationId: putGroups
      x-operation-id-source: derived
  /groups/{groupId}:
    get:
      tags:
      - Groups
      summary: Retrieve information about a group
      parameters:
      - name: groupId
        in: path
        description: A GUID or an integer representing a group
        required: true
        schema:
          type: string
      - name: accessKey
        in: query
        description: The Access Key for the user context
        schema:
          type: string
      - name: qrSize
        in: query
        description: The width and height of the QR Code. If blank, no QR will be sent.
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupSingleOutput'
            text/json:
              schema:
                $ref: '#/components/schemas/GroupSingleOutput'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
            text/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
      security:
      - apiKey: []
      operationId: getGroupsByGroupId
      x-operation-id-source: derived
  /groups/{groupId}/community:
    post:
      tags:
      - Groups
      summary: Set or clear the community for the specified group and all of its attendees
      parameters:
      - name: groupId
        in: path
        description: A GUID or an integer representing a group
        required: true
        schema:
          type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GroupCommunityInput'
          text/json:
            schema:
              $ref: '#/components/schemas/GroupCommunityInput'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/GroupCommunityInput'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupCreateOutput'
            text/json:
              schema:
                $ref: '#/components/schemas/GroupCreateOutput'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
            text/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
      security:
      - apiKey: []
      operationId: postGroupsByGroupIdCommunity
      x-operation-id-source: derived
  /groups/{groupId}/fields:
    get:
      tags:
      - Groups
      summary: Retrieve fields for a group
      parameters:
      - name: groupId
        in: path
        description: A GUID or an integer representing a group
        required: true
        schema:
          type: string
      - name: accessKey
        in: query
        description: The Access Key for the user context
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FieldOutput'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FieldOutput'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
            text/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
      security:
      - apiKey: []
      operationId: getGroupsByGroupIdFields
      x-operation-id-source: derived
    post:
      tags:
      - Groups
      summary: Update fields for a group
      parameters:
      - name: groupId
        in: path
        description: A GUID or an integer representing a group
        required: true
        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:
                type: array
                items:
                  $ref: '#/components/schemas/FieldOutput'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FieldOutput'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
            text/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
      security:
      - apiKey: []
      operationId: postGroupsByGroupIdFields
      x-operation-id-source: derived
  /groups/{groupId}/print:
    get:
      tags:
      - Groups
      summary: Retrieve the printable resources for a single group
      parameters:
      - name: groupId
        in: path
        description: A GUID or an integer representing a group
        required: true
        schema:
          type: string
      - name: type
        in: query
        description: A string that is one of "Ticket", "ETicket", or "Namebadge"
        schema:
          $ref: '#/components/schemas/PrintType'
      - name: format
        in: query
        description: A string that is one of "PDF", "PNG", "JPG", "GIF", "BMP" or "TIFF"
        schema:
          $ref: '#/components/schemas/PrintFormat'
      - name: imageDpi
        in: query
        description: An int representing the dots per inch of the images produced that is 72, 96, 150, 300 or 600. 0 for PDF
        schema:
          type: integer
          format: int32
          default: 0
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  type: string
                  format: byte
            text/json:
              schema:
                type: array
                items:
                  type: string
                  format: byte
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
            text/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
      security:
      - apiKey: []
      operationId: getGroupsByGroupIdPrint
      x-operation-id-source: derived
  /groups/helpdesk/{email}:
    get:
      tags:
      - Groups
      summary: Retrieve groups that match provided email
      parameters:
      - name: email
        in: path
        description: An email to search across group email fields
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/GroupHelpdeskOutput'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/GroupHelpdeskOutput'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
            text/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
      security:
      - apiKey: []
      operationId: getGroupsHelpdeskByEmail
      x-operation-id-source: derived
  /groups/print:
    post:
      tags:
      - Groups
      summary: Retrieve the printable resources for multiple groups
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GroupPrintInput'
          text/json:
            schema:
              $ref: '#/components/schemas/GroupPrintInput'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/GroupPrintInput'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  type: string
                  format: byte
            text/json:
              schema:
                type: array
                items:
                  type: string
                  format: byte
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
            text/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
      security:
      - apiKey: []
      operationId: postGroupsPrint
      x-operation-id-source: derived
components:
  schemas:
    DomainValidationOutput:
      type: object
      properties:
        AllowDomains:
          type:
          - array
          - 'null'
          items:
            type: string
        DisallowDomains:
          type:
          - array
          - 'null'
          items:
            type: string
      additionalProperties: false
    GroupHelpdeskOutput:
      type: object
      properties:
        Id:
          type: string
          format: uuid
        GroupNumber:
          type: integer
          format: int64
        Name:
          type:
          - string
          - 'null'
        JoinCode:
          type:
          - string
          - 'null'
        AttendeeCount:
          type: integer
          format: int32
        EventNumber:
          type: integer
          format: int64
        EventTitle:
          type:
          - string
          - 'null'
        EventSubtitle:
          type:
          - string
          - 'null'
      additionalProperties: false
    PrintType:
      enum:
      - Ticket
      - ETicket
      - Receipt
      - MailingLabel
      - WillCall
      - NameBadge
      - Season
      type: string
    GroupSingleOutput:
      type: object
      properties:
        Id:
          type: string
          format: uuid
        GroupNumber:
          type: integer
          format: int64
        EventNumber:
          type: integer
          format: int64
        EventId:
          type: string
          format: uuid
        Name:
          type:
          - string
          - 'null'
        Email:
          type:
          - string
          - 'null'
        AttendeeTypeId:
          type: string
          format: uuid
        JoinCode:
          type:
          - string
          - 'null'
        TypeName:
          type:
          - string
          - 'null'
        AttendeeCount:
          type: integer
          format: int32
        CommunityId:
          type:
          - string
          - 'null'
          format: uuid
        CommunityPartition:
          type:
          - string
          - 'null'
        CommunityName:
          type:
          - string
          - 'null'
        Fields:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/FieldOutput'
        Attendees:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/GroupAttendeeSummaryOutput'
        QRCode:
          type:
          - string
          - 'null'
      additionalProperties: false
    GroupUpdateInput:
      required:
      - Email
      - GroupId
      - JoinCode
      - Name
      type: object
      properties:
        GroupId:
          type: string
          format: uuid
        AttendeeTypeId:
          type:
          - string
          - 'null'
          format: uuid
        Name:
          maxLength: 50
          minLength: 5
          type: string
        Email:
          minLength: 1
          pattern: ^([0-9A-Za-zÀ-ÖØ-öø-ÿ']+[-._+&])*[0-9A-Za-zÀ-ÖØ-öø-ÿ_']+@([-0-9A-Za-zÀ-ÖØ-öø-ÿ]+[.])+[a-zA-Z]{2,63}$
          type: string
        JoinCode:
          maxLength: 20
          minLength: 4
          type: string
        AccessKey:
          type:
          - string
          - 'null'
        CommunityId:
          type:
          - string
          - 'null'
          format: uuid
        FieldValues:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/FieldInput'
        UpdateNewOnly:
          type: boolean
        OverrideCapacity:
          type: boolean
        DontFollowRules:
          type: boolean
      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
    FieldInput:
      required:
      - Id
      type: object
      properties:
        Id:
          type: string
          format: uuid
        Value: {}
      additionalProperties: false
    GroupCreateOutput:
      type: object
      properties:
        Id:
          type: string
          format: uuid
        GroupNumber:
          type: integer
          format: int64
        Name:
          type:
          - string
          - 'null'
        Email:
          type:
          - string
          - 'null'
        AttendeeTypeId:
          type: string
          format: uuid
        JoinCode:
          type:
          - string
          - 'null'
        TypeName:
          type:
          - string
          - 'null'
        CommunityId:
          type:
          - string
          - 'null'
          format: uuid
        CommunityPartition:
          type:
          - string
          - 'null'
        CommunityName:
          type:
          - string
          - 'null'
        AttendeeCount:
          type: integer
          format: int32
        Fields:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/FieldOutput'
      additionalProperties: false
    FieldUpdateInput:
      type: object
      properties:
        AccessKey:
          type:
          - string
          - 'null'
        FieldValues:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/FieldInput'
        UpdateNewOnly:
          type: boolean
      additionalProperties: false
    FieldOutput:
      type: object
      properties:
        Id:
          type: string
          format: uuid
        Label:
          type:
          - string
          - 'null'
        Type:
          type:
          - string
          - 'null'
        Value: {}
        DisplayValue:
          type:
          - string
          - 'null'
        ValidationExpression:
          type:
          - string
          - 'null'
        IsRequired:
          type: boolean
        Notes:
          type:
          - string
          - 'null'
        ErrorMessage:
          type:
          - string
          - 'null'
        IsDisabled:
          type: boolean
        IsSensitive:
          type: boolean
        SpecialFieldId:
          type: string
          format: uuid
        ParentOptionId:
          type:
          - string
          - 'null'
          format: uuid
        ParentFieldId:
          type:
          - string
          - 'null'
          format: uuid
        FormObjectId:
          type:
          - string
          - 'null'
          format: uuid
        Options:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/FieldOptionFullOutput'
        ParentOptionIsSelected:
          type: boolean
        HasError:
          type: boolean
        HasRelevantOutput:
          type: boolean
        MinDate:
          type:
          - string
          - 'null'
          format: date-time
        MaxDate:
          type:
          - string
          - 'null'
          format: date-time
        AttendeeTypes:
          type:
          - array
          - 'null'
          items:
            type: string
            format: uuid
        RemoteUrl:
          type:
          - string
          - 'null'
        SelectedOptionId:
          type:
          - string
          - 'null'
          format: uuid
          readOnly: true
        Confirm:
          type: boolean
        DomainValidation:
          $ref: '#/components/schemas/DomainValidationOutput'
        DisplayIsPrimary:
          type: boolean
      additionalProperties: false
    StringStringKeyValuePair:
      type: object
      properties:
        Key:
          type:
          - string
          - 'null'
        Value:
          type:
          - string
          - 'null'
      additionalProperties: false
    GroupCommunityInput:
      type: object
      properties:
        CommunityId:
          type:
          - string
          - 'null'
          format: uuid
        OverrideCapacity:
          type: boolean
        DontFollowRules:
          type: boolean
      additionalProperties: false
    GroupCreateInput:
      required:
      - AttendeeTypeId
      - Email
      - JoinCode
      - Name
      type: object
      properties:
        AttendeeTypeId:
          type: string
          format: uuid
        Name:
          maxLength: 50
          minLength: 5
          type: string
        Email:
          maxLength: 100
          minLength: 0
          type: string
        JoinCode:
          maxLength: 20
          minLength: 4
          type: string
        AccessKey:
          type:
          - string
          - 'null'
        CommunityId:
          type:
          - string
          - 'null'
          format: uuid
        FieldValues:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/FieldInput'
      additionalProperties: false
    PrintFormat:
      enum:
      - PDF
      - PNG
      - JPG
      - GIF
      - BMP
      - TIFF
      - ZPL
      type: string
    GroupAttendeeSummaryOutput:
      type: object
      properties:
        AttendeeNumber:
          type: integer
          format: int64
        AttendeeCode:
          type:
          - string
          - 'null'
        FirstName:
          type:
          - string
          - 'null'
        LastName:
          type:
          - string
          - 'null'
        SectionName:
          type:
          - string
          - 'null'
        RowName:
          type:
          - string
          - 'null'
        SeatLabel:
          type:
          - string
          - 'null'
        TypeName:
          type:
          - string
          - 'null'
      additionalProperties: false
    GroupPrintInput:
      required:
      - EventId
      - Groups
      - Type
      type: object
      properties:
        Type:
          $ref: '#/components/schemas/PrintType'
        Groups:
          type: array
          items:
            type: string
        EventId:
          minLength: 1
          type: string
        Format:
          $ref: '#/components/schemas/PrintFormat'
        ImageDpi:
          type: integer
          format: int32
      additionalProperties: false
    FieldOptionFullOutput:
      type: object
      properties:
        Id:
          type: string
          format: uuid
        Label:
          type:
          - string
          - 'null'
        Capacity:
          type:
          - integer
          - 'null'
          format: int32
        Quantity:
          type: integer
          format: int32
        HasUnitPrice:
          type: boolean
        UnitPrice:
          type:
          - number
          - 'null'
          format: double
        UnitTax:
          type:
          - number
          - 'null'
          format: double
        IsInclusiveTaxes:
          type: boolean
        DisplayPrice:
          type:
          - number
          - 'null'
          format: double
        PriceDescription:
          type:
          - string
          - 'null'
        IsSelected:
          type: boolean
        HasCapacity:
          type: boolean
        SpotsRemaining:
          type:
          - integer
          - 'null'
          format: int32
        RemainingText:
          type:
          - string
          - 'null'
      additionalProperties: false
  securitySchemes:
    apiKey:
      type: apiKey
      description: The App Key you received from https://developer.brushfire.com/key
      name: Authorization
      in: header