Skip to content
Core API
Esc
↑↓navigate↵open⌘Jpreview
On this page

Ticket types

Create and update ticket types with complete curl request examples.

Build a request

Example data only. No request is sent.

POST
Choose the destination IDs
Start with these fields

Event-unique ticket-type name.

in_person, hybrid, or virtual.

Add optional fields (15)

Description.

Profile badge.

Display name.

Networking setting.

Lead scanning setting.

QR setting.

none, any, or specific_lists.

none, any, or specific_lists.

Limit.

Limit.

Visibility setting.

Returned as show-unjoined-registrants-in-apps.

Returned as show-registration-link.

Used as a replacement when the effective mode is specific_lists.

Used as a replacement when the effective mode is specific_lists.

Use the API address and token from your environment. Set up authentication.

curl --fail-with-body --silent --show-error --globoff --max-time 30 --request POST \
  --url "${BRELLA_API_BASE_URL}"'/api/core/organizations/123/events/456/ticket-types' \
  --header "Accept: application/vnd.brella.v4+json" \
  --header "Brella-API-Access-Token: ${BRELLA_API_ACCESS_TOKEN}" \
  --header "Content-Type: application/json" \
  --data-raw '{
  "name": "Virtual attendee",
  "attendance_type": "virtual"
}'
201 CreatedIllustrative response
{
  "data": {
    "id": "1201",
    "type": "ticket-type"
  }
}

The token scope determines returned fields. This selector illustrates that configuration; it does not change your token or the request.

Collection path: events/{event_id}/ticket-types

POST a ticket type

View the complete cURL example
curl --fail-with-body --silent --show-error --globoff --max-time 30 --request POST \
  --url "${BRELLA_API_BASE_URL}"'/api/core/organizations/123/events/456/ticket-types' \
  --header "Accept: application/vnd.brella.v4+json" \
  --header "Brella-API-Access-Token: ${BRELLA_API_ACCESS_TOKEN}" \
  --header "Content-Type: application/json" \
  --data-raw '{
  "name": "Virtual attendee",
  "description": "Online event access",
  "attendance_type": "virtual",
  "networking_enabled": true,
  "lead_scanning_enabled": false,
  "meeting_requests_outgoing": "specific_lists",
  "outgoing_target_list_ids": [
    401
  ],
  "show_invites_in_apps": true,
  "show_booking_system_join_url": true
}'

The response type is ticket-type. Useful write-response fields include name, attendance_type, networking_enabled, show_unjoined_registrants_in_apps (returned as show-unjoined-registrants-in-apps), outgoing_target_list_ids, and updated_at.

PATCH a ticket type

View the complete cURL example
curl --fail-with-body --silent --show-error --globoff --max-time 30 --request PATCH \
  --url "${BRELLA_API_BASE_URL}"'/api/core/organizations/123/events/456/ticket-types/301' \
  --header "Accept: application/vnd.brella.v4+json" \
  --header "Brella-API-Access-Token: ${BRELLA_API_ACCESS_TOKEN}" \
  --header "Content-Type: application/json" \
  --data-raw '{
  "display_name": "Virtual pass",
  "networking_enabled": true,
  "meeting_requests_incoming": "specific_lists",
  "incoming_target_list_ids": [
    401,
    402
  ]
}'

Target list IDs outside the event are rejected. Deleting a ticket type follows Brella’s list business rules; the default ticket type cannot be deleted.

Input reference

17 inputs. Expand a field for its request type and update behavior. These are the example request keys; your administrator can configure aliases.

nameScalar string
POST
Required by the model
PATCH
Optional

Event-unique ticket-type name.

descriptionScalar string or `null`
POST
Optional
PATCH
Optional

Description.

attendance_typeScalar string
POST
Required by the model
PATCH
Optional

in_person, hybrid, or virtual.

profile_badgeScalar string or `null`
POST
Optional
PATCH
Optional

Profile badge.

display_nameScalar string or `null`
POST
Optional
PATCH
Optional

Display name.

networking_enabledJSON boolean
POST
Optional
PATCH
Optional

Networking setting.

lead_scanning_enabledJSON boolean
POST
Optional
PATCH
Optional

Lead scanning setting.

qr_code_visibleJSON boolean
POST
Optional
PATCH
Optional

QR setting.

meeting_requests_outgoingScalar string
POST
Optional
PATCH
Optional

none, any, or specific_lists.

meeting_requests_incomingScalar string
POST
Optional
PATCH
Optional

none, any, or specific_lists.

max_outgoing_meeting_requestsScalar number or `null`
POST
Optional
PATCH
Optional

Limit.

max_accepted_meetingsScalar number or `null`
POST
Optional
PATCH
Optional

Limit.

show_invited_registrantsJSON boolean
POST
Optional
PATCH
Optional

Visibility setting.

show_invites_in_appsJSON boolean
POST
Optional
PATCH
Optional

Returned as show-unjoined-registrants-in-apps.

show_booking_system_join_urlJSON boolean
POST
Optional
PATCH
Optional

Returned as show-registration-link.

outgoing_target_list_idsArray of scalar IDs
POST
Optional
PATCH
Optional

Used as a replacement when the effective mode is specific_lists.

incoming_target_list_idsArray of scalar IDs
POST
Optional
PATCH
Optional

Used as a replacement when the effective mode is specific_lists.

Last updated on August 25, 2026