API · Performers
Performers are the people or groups appearing at your events: DJs, bands, comedians, speakers. Each performer is account-scoped and can be assigned to any number of events via the event’s lineup.
GET /admin/performers
Returns all performers in your account, alphabetically by name. Includes a count of events each performer is assigned to.
curl -H "Authorization: Bearer your-token-here" \
-H "Accept: application/json" \
https://app.usetix.io/admin/performers
Response:
{
"performers": [
{
"id": 17,
"name": "DJ Snake",
"performer_type": "person",
"bio": "House DJ since 2010.",
"bio_html": "<div class=\"trix-content\"><p>House DJ since 2010.</p></div>",
"website_url": "https://djsnake.example.com",
"instagram_url": null,
"spotify_url": null,
"soundcloud_url": null,
"tiktok_url": null,
"youtube_url": null,
"image_url": null,
"event_count": 3
}
]
}
GET /admin/performers/:id
Returns a single performer along with the events they’re assigned to.
curl -H "Authorization: Bearer your-token-here" \
-H "Accept: application/json" \
https://app.usetix.io/admin/performers/17
The events array uses the same shape as the events endpoint.
POST /admin/performers
Creates a new performer.
curl -X POST \
-H "Authorization: Bearer your-token-here" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"name": "Berlin Beats Collective", "performer_type": "performing_group", "bio": "<p>House and techno DJs from Berlin.</p>"}' \
https://app.usetix.io/admin/performers
Body parameters:
| Field | Required | Notes |
|---|---|---|
name |
yes | Display name. Unique within your account. |
performer_type |
no | person (default) or performing_group. |
bio |
no | Rich text. Accepts HTML; we sanitize unsafe tags and attributes server-side. |
website_url |
no | External URL. |
instagram_url |
no | External URL. |
spotify_url |
no | External URL. |
soundcloud_url |
no | External URL. |
tiktok_url |
no | External URL. |
youtube_url |
no | External URL. |
image |
no | signed_id from a direct upload. |
Response: 201 Created with the performer JSON and a Location header.
PATCH /admin/performers/:id
Updates a performer. Send only the fields you want to change.
curl -X PATCH \
-H "Authorization: Bearer your-token-here" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"bio": "<p>Updated bio.</p>"}' \
https://app.usetix.io/admin/performers/17
Response: 200 OK with the updated performer JSON.
DELETE /admin/performers/:id
Deletes a performer. Removing a performer also clears them from any event lineups they were assigned to (the events themselves remain).
curl -X DELETE \
-H "Authorization: Bearer your-token-here" \
-H "Accept: application/json" \
https://app.usetix.io/admin/performers/17
Response: 204 No Content on success.
Performer fields
| Field | Type | Notes |
|---|---|---|
id |
integer | Internal numeric ID. Path parameter. |
name |
string | Display name. Unique within the account. |
performer_type |
string | person or performing_group. |
bio |
string | null | Plain-text version of the bio (rich text body, stripped of HTML). |
bio_html |
string | null | Sanitized HTML version of the bio, ready to embed. |
website_url |
string | null | External URL. |
instagram_url |
string | null | External URL. |
spotify_url |
string | null | External URL. |
soundcloud_url |
string | null | External URL. |
tiktok_url |
string | null | External URL. |
youtube_url |
string | null | External URL. |
image_url |
string | null | URL to the performer’s image, if attached. Set via direct upload — pass the signed_id to image on create or update. |
event_count |
integer | Number of events this performer is assigned to (only present on index). |