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.

  1. Create an organization in the managerarrow-up-right

  2. Generate an API token for the given partnerarrow-up-right

  3. Pass the API token in the Cymbal-Partner-API-Key header 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

Name
Type
Description

Cymbal-Partner-API-Key*

String

Organization's provided API key

Request Body

Name
Type
Description

events*

[Event]

List of events.

Request Schema

Required Fields:

  • id

  • url

  • name

  • image_url

  • start_datetime

  • location

Notes:

  • status options: live | canceled

  • datetime format: 2024-03-02T15:30:00Z in UTC

Response Schema


Create orders

POST https://api.cymbal.co/v1/partners/orders

Create a set of orders for a given organization.

Headers

Name
Type
Description

Cymbal-Partner-API-Key*

String

Organization's provided API key

Request Body

Name
Type
Description

orders*

[Order]

List of orders.

Request Schema

Required Fields:

  • id

  • event_id

  • customer

  • marketing_opt_ins

  • items

Notes:

  • customer fields: only one of phone or email is required

  • item fields: currency_code is optional. USD is the default

  • address can just be a zip code.

Response Schema


Create a contact

POST https://api.cymbal.co/v1/partners/contact

Create a new contact and subscribe them to either email or SMS marketing communication.

Headers

Name
Type
Description

Cymbal-Partner-API-Key*

String

Organization's provided API key

Request Body

Name
Type
Description

contact*

Contact

Contact information.

Request Schema

Required fields:

  • one of phone and/or email is required; all other fields are optional

Notes:

  • customer fields: only one of phone or email is required

  • opt_ins tell Cymbal how to update the subscription status of the contact.

    • true will subscribe the contact to either email or SMS marketing communication

    • false will unsubscribe them

    • null will leave the subscription status unchanged

  • list_id can be found in the Audience tab by clicking on a list and looking at the URL

  • tags must be created within the Cymbal manager first

  • genres must match one of Cymbal's required list of genres: Genres

  • interested_in_event is optional and is used to mark the contact as interested in the event

    • ticketer must be one of our supported ticketing providers. Reach out to our team to get the appropriate value for your use-case.

Response Schema


Get campaign analytics

GET https://api.cymbal.co/v1/partners/campaigns/analytics

Retrieve analytical data for your email or SMS campaigns.

Headers

Name
Type
Description

Cymbal-Partner-API-Key*

String

Organization's provided API key

Query Parameters

Name
Type
Description

page

Integer

Page number of campaigns to return. Default value is 1.

per_page

Integer

Number of records to return per page. Default value is 10.

type

Enum

Type of campaigns to return. Type can be email or sms. Returns both email and sms campaigns if empty.

Response Schema

Notes:

  • attributed_revenue represents the campaign's attributed revenue amount in cents

  • num_links_clicked is the number of unique recipients who clicked a link in a campaign

Last updated