Partners API
Cymbal provides multiple REST API endpoints for uploading an organization's events, orders, and contacts.
Authentication
The Cymbal Partners API requires an API token for authentication. This API token must be created within the Cymbal manager for a given organization.
Create an organization in the manager: https://manager.cymbal.co
Generate an API token for the given partner: https://manager.cymbal.co/settings/integrations
Pass the API token in the
Cymbal-Partner-API-Keyheader in every API request.
API tokens can be revoked by an organization within the manager. If API requests return a 403 status code, you will need to generate a new API token.
Create events.
POST https://api.cymbal.co/v1/partners/events
Create a set of events for an organization.
Headers
Cymbal-Partner-API-Key*
String
Organization's provided API key
Request Body
events*
[Event]
List of events.
Request Schema
{
"events": [
{
"id": "12345",
"url": "https://bellyupaspen.com/head-and-the-heart/tickets",
"name": "The Head & The Heart",
"image_url": "https://bellyupaspen.com/wp-content/uploads/2023/08/THATH_960x540_See.jpg",
"description": "Head & the Heart performing live at the Belly Up Aspen.",
"tags": ["Folk", "Accoustic"],
"status": "live",
"start_datetime": "2024-03-02T15:30:00Z",
"end_datetime": "2024-03-02T18:00:00Z",
"doors_open_datetime": "2024-03-02T14:30:00Z",
"location": {
"name": "Belly Up Aspen",
"address": "450 S Galena St, Aspen, CO 81611"
},
"ticket_types": [
{
"name": "Standard Admission",
"prefee_price": 30.00,
"total_price": 40.00,
"currency_code": "USD",
"quantity": 150
}
]
}
]
}Required Fields:
idurlnameimage_urlstart_datetimelocation
Notes:
status options:
live|canceleddatetime format:
2024-03-02T15:30:00Zin UTC
Response Schema
{
"code": 0,
"message": "success"
}Create orders.
POST https://api.cymbal.co/v1/partners/orders
Create a set of orders for a given organization.
Headers
Cymbal-Partner-API-Key*
String
Organization's provided API key
Request Body
orders*
[Order]
List of orders.
Request Schema
{
"orders": [
{
"id": "12345",
"event_id": "12345",
"customer": {
"email": "[email protected]",
"phone": "12345678900",
"first_name": "John",
"last_name": "Smith",
"address": "123 Main Street, San Francisco, CA, 94110",
"ip_address": "216.24.84.248"
},
"marketing_opt_ins": {
"email": true,
"sms": false
},
"items": [
{
"ticket_type_name": "Standard Admission",
"quantity": 2,
"prefee_price": 60.00,
"total_price": 80.00,
"currency_code": "USD"
}
],
"created_at": "2024-03-02T15:30:00Z"
}
]
}Required Fields:
idevent_idcustomermarketing_opt_insitems
Notes:
customer fields: only one of
phoneoremailis requireditem fields:
currency_codeis optional.USDis the defaultaddresscan just be a zip code.
Response Schema
{
"code": 0,
"message": "success"
}Create contact.
POST https://api.cymbal.co/v1/partners/contact
Create a new contact and subscribe them to either email or SMS marketing communication.
Headers
Cymbal-Partner-API-Key*
String
Organization's provided API key
Request Body
contact*
Contact
Contact information.
Request Schema
{
"contact": {
"full_name": "John Smith",
"first_name": "John",
"last_name": "Smith",
"email": "[email protected]",
"phone": "+19594746360",
"list_id": 1,
"tags": [
"Tag 1",
"Tag 2"
],
"genres": [
"Rock",
"Dance/Electronic"
]
},
"opt_ins": {
"email": true | false | null,
"sms": true | false | null
},
"interested_in_event_id": "12345"
}Required fields:
one of
phoneand/oremailis required; all other fields are optional
Notes:
customer fields: only one of
phoneoremailis requiredopt_instell Cymbal how to update the subscription status of the contact.truewill subscribe the contact to either email or SMS marketing communicationfalsewill unsubscribe themnullwill leave the subscription status unchanged
list_idcan be found in the Audience tab by clicking on a list and looking at the URLtagsmust be created within the Cymbal manager firstgenresmust match one of Cymbal's required list of genres: Genresinterested_in_event_idis optional and is used to mark the contact as interested in the event
Response Schema
{
"code": 0,
"message": "success"
}Subscribe contacts. - DEPRECATED
POST https://api.cymbal.co/v1/partners/subscribe
Subscribe a given contact to either email or SMS communication.
Headers
Cymbal-Partner-API-Key*
String
Organization's provided API key
Request Body
contact*
Contact
Contact information.
Request Schema
{
"contact": {
"full_name": "John Smith",
"first_name": "John",
"last_name": "Smith",
"email": "[email protected]",
"phone": "+19594746360",
"list_id": 1,
"tags": [
"Tag 1",
"Tag 2"
],
"genres": [
"Rock",
"Dance/Electronic"
]
},
"ticket_url": "https://www.ticketmaster.com/e/12345678"
}Required fields:
one of
phoneand/oremailis required; all other fields are optional
Notes:
customer fields: only one of
phoneoremailis requiredlist_idcan be found in the Audience tab by clicking on a list and looking at the URLtagsmust be created within the Cymbal manager firstgenresmust match one of Cymbal's required list of genres: Genresticket_urlis optional and is used for subscribe forms that are embedded on an event page
Response Schema
{
"code": 0,
"message": "success"
}Last updated