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

Tracks

Tracks: available fields, filters, associations, and API operations.

Operations

Event-level resource. Every operation requires an enabled Core API scope for this resource and access to the URL context.

GETList records

/api/core/organizations/123/events/456/tracks

Permission: Read access. Readable fields, query filters and related objects must be selected in the scope.

curl --fail-with-body --silent --show-error --globoff --max-time 30 --request GET \
  --url "${BRELLA_API_BASE_URL}"'/api/core/organizations/123/events/456/tracks' \
  --header "Accept: application/vnd.brella.v4+json" \
  --header "Brella-API-Access-Token: ${BRELLA_API_ACCESS_TOKEN}"

Response: 200 OK. A JSON:API data array and pagination metadata. Default page size 30; maximum 100.

View response structure
{
  "data": [
    {
      "id": "1201",
      "type": "track"
    }
  ],
  "meta": {
    "total_count": 1,
    "total_pages": 1,
    "current_page": 1
  }
}

Illustrative, with no additional response fields selected.

Errors: 400 for invalid parameter shapes; 403 for a missing/expired token or disallowed operation; 404 when the URL context, record or a referenced record is inaccessible; 429 for rate limits. Troubleshooting and retry guidance.

GETGet a record

/api/core/organizations/123/events/456/tracks/1201

Permission: Read access. Readable fields, query filters and related objects must be selected in the scope.

curl --fail-with-body --silent --show-error --globoff --max-time 30 --request GET \
  --url "${BRELLA_API_BASE_URL}"'/api/core/organizations/123/events/456/tracks/1201' \
  --header "Accept: application/vnd.brella.v4+json" \
  --header "Brella-API-Access-Token: ${BRELLA_API_ACCESS_TOKEN}"

Response: 200 OK. A JSON:API data object; fields depend on the token scope.

View response structure
{
  "data": {
    "id": "1201",
    "type": "track"
  }
}

Illustrative, with no additional response fields selected.

Errors: 400 for invalid parameter shapes; 403 for a missing/expired token or disallowed operation; 404 when the URL context, record or a referenced record is inaccessible; 429 for rate limits. Troubleshooting and retry guidance.

POSTCreate a record

/api/core/organizations/123/events/456/tracks

Permission: Write access with the create action. Every request key must map to an allowed writable field; unconfigured inputs are ignored.

curl --fail-with-body --silent --show-error --globoff --max-time 30 --request POST \
  --url "${BRELLA_API_BASE_URL}"'/api/core/organizations/123/events/456/tracks' \
  --header "Accept: application/vnd.brella.v4+json" \
  --header "Brella-API-Access-Token: ${BRELLA_API_ACCESS_TOKEN}" \
  --header "Content-Type: application/json" \
  --data-raw '{
  "name": "Main stage"
}'

Response: 201 Created. Save data.id for later requests. Attributes come from Write-response fields.

View response structure
{
  "data": {
    "id": "1201",
    "type": "track"
  }
}

Illustrative, with no additional response fields selected.

Errors: 400 for invalid parameter shapes; 403 for a missing/expired token or disallowed operation; 404 when the URL context, record or a referenced record is inaccessible; 422 for validation or business rules; 429 for rate limits. Troubleshooting and retry guidance.

PATCHUpdate a record

/api/core/organizations/123/events/456/tracks/501

Permission: Write access with the update action. Every request key must map to an allowed writable field; unconfigured inputs are ignored.

curl --fail-with-body --silent --show-error --globoff --max-time 30 --request PATCH \
  --url "${BRELLA_API_BASE_URL}"'/api/core/organizations/123/events/456/tracks/501' \
  --header "Accept: application/vnd.brella.v4+json" \
  --header "Brella-API-Access-Token: ${BRELLA_API_ACCESS_TOKEN}" \
  --header "Content-Type: application/json" \
  --data-raw '{
  "name": "Main stage and keynotes",
  "color": "#234567",
  "sponsor_ids": [
    103705,
    103706
  ],
  "highlighted_speaker_ids": [
    801
  ]
}'

Response: 200 OK. Attributes come from Write-response fields; these can differ from readable fields.

View response structure
{
  "data": {
    "id": "1201",
    "type": "track"
  }
}

Illustrative, with no additional response fields selected.

Errors: 400 for invalid parameter shapes; 403 for a missing/expired token or disallowed operation; 404 when the URL context, record or a referenced record is inaccessible; 422 for validation or business rules; 429 for rate limits. Troubleshooting and retry guidance.

PATCH changes supplied fields. Collection inputs can replace existing values; read the input notes before sending arrays.

DELETEDelete a record

/api/core/organizations/123/events/456/tracks/1201

Permission: Write access with the delete action.

curl --fail-with-body --silent --show-error --globoff --max-time 30 --request DELETE \
  --url "${BRELLA_API_BASE_URL}"'/api/core/organizations/123/events/456/tracks/1201' \
  --header "Accept: application/vnd.brella.v4+json" \
  --header "Brella-API-Access-Token: ${BRELLA_API_ACCESS_TOKEN}"

Response: 204 No Content, with an empty response body.

Errors: 400 for invalid parameter shapes; 403 for a missing/expired token or disallowed operation; 404 when the URL context, record or a referenced record is inaccessible; 422 for validation or business rules; 429 for rate limits. Troubleshooting and retry guidance.

Deletion can remove related data or be refused by resource constraints. Read the resource notes and confirm the target before using this operation.

Path: events/{event_id}/tracks
Methods: GET collection/record, POST, PATCH, DELETE.

Fields, filters and associations

Browse 15 response fields

The scope chooses these response fields. id is always returned. Configuration names and response names can differ.

event-id
Scope field: event_id
name
Scope field: name
description
Scope field: description
color
Scope field: color
position
Scope field: position
enabled
Scope field: enabled
default
Scope field: default
togglable
Scope field: togglable
track-type
Scope field: type
show-highlighted-speakers
Scope field: show_highlighted_speakers
created-at
Scope field: created_at
updated-at
Scope field: updated_at
default-session-cover-image-url
Scope field: default_session_cover_image_url
sponsor-ids
Scope field: sponsor_ids
highlighted-speaker-ids
Scope field: highlighted_speaker_ids
  • Filters: enabled, default, track_type.
  • Associations: none.
GET .../tracks?enabled=true&track_type=ContentTrack

Writing this resource

Writable fields: name, description, color, enabled, show_highlighted_speakers.

Additional inputs: default_session_cover_image, sponsor_ids (array), highlighted_speaker_ids (array).

{
  "name": "Main stage",
  "description": "Keynotes and panels",
  "color": "#123456",
  "enabled": true,
  "sponsor_ids": [103705],
  "highlighted_speaker_ids": [801, 802]
}

POST creates a content track. Sponsors and speakers must belong to the event. The image input accepts a base64 data URI; a blank value on PATCH removes the current cover image.

Last updated on August 21, 2026