Eventbrite

Eventbrite is a global platform for building online event planning websites, allowing you to create event pages, register attendees, track attendance, and even sell tickets online or at your doorstep. You can create, share, find and join events as you need them. You can create any kind of event, including music events to business, all can be developed under a single roof.

Authorization

Basic Authentication

The Eventbrite REST API enables the communication between Eventbrite and your application or website using HTTP requests. Transmitted request and response data content is formatted as JSON (although we provide a GET alternative for requests), using UTF-8 encoding and URL-encoded values.

All URLs referenced in the API documentation have the following base https://www.eventbriteapi.com/v3

HTTP requests to the Eventbrite API are protected by requiring authentication. To Authenticating Your Access to the Eventbrite API, you need to request HTTP to the Eventbrite API is protected by requiring authentication.

The Eventbrite API uses the following HTTP (methods) appropriate for each action. An object in the Eventbrite API that represents a business noun, like Event or Attendee. Also referred to as a resource.

Key

Description

Example

Key

Description

Example

GET

Retrieve a resource

List all Events by Venue

POST

Create or update a resource

Create or an Event

DELETE

Delete a resource

Delete an Event

For more information, please visit Authenticating Your Access.

API key Authentication

An API keys identify the calling project for the specific application or site. It allows you to make the call to an API. This Api key Authentication tokens identify a user that can be the person that is using the app or site.

The Eventbrite API:

  • Is REST-based (though we use POST instead of PUT).

  • Uses OAuth2 for authorization.

  • Always returns responses in JSON.

All URLs referenced in the API documentation have the following base: https://www.eventbriteapi.com/v3.

Start your authentication by following the below steps:

  1. Get a Private Token

  2. (For App Partners) Authorize your Users

  3. Authenticate API Requests

To get a private token, you need to login to your Eventbrite account.

To do so visit your API Keys page.

Now, you need to copy your private token.

To Authorize your Users for the app partner you need to follow the below steps: These steps enable you to perform API requests on behalf of other users. To perform API requests on your own behalf, skip to Authenticate API Requests.

First, you need to authorize users, Get the below information:

  • API Key

  • Client Secret

  • Redirect URI

Authenticate API Requests

To authenticate API requests, you'll need to include either your private token or your user's private token.

There are two ways of including your token in an API request:

  • Authorization Header

    Include the following in your Authorization header (replacing MYTOKEN with your token):

    { Authorization: Bearer MYTOKEN }

  • Query Parameter Authentication

    Include the following at the end of the URL (replacing MYTOKEN with your token):

    /v3/users/me/?token=MYTOKEN

For every user you would like to perform API requests on behalf of, repeat (For App Partners) Authorize your Users and Authenticate API Requests.

These best practices ensure that your authentication and access to the Eventbrite API is successful and secure.

Do not use your private token directly in client-side code.

Before you make your application publicly available, ensure that your client-side code does not contain private tokens or any other private information.

Delete unneeded API keys

To minimize your exposure to attack, delete any private tokens that you no longer need.

Errors

When an error occurs during an API request, you will receive:

  • An HTTP error status (in the 400-500 range)

  • A JSON response containing more information about the error

A typical error response looks like this: { "error": "VENUE_AND_ONLINE", "error_description": "You cannot both specify a venue and set online_event", "status_code": 400 }

See below for descriptions of what each line means:

Key

Description

Key

Description

{

 

"error": "VENUE_AND_ONLINE",

“VENUE_AND_ONLINE” is an example of a constant string value for the error. This constant value is what you should base your error handling logic on, because this string won’t change depending on the locale or as the API changes over time.

"error_description": "You cannot both specify a venue and set online_event",

"You cannot both specify a venue and set online_event" is an example of an error description value. This string usually contains a description of the error, and should only be displayed to developers, not your users.

"status_code": 400

400 is an example of a status code value. This value mirrors the HTTP status code you will receive. It’s included for convenience, in case your HTTP client makes it difficult to get status codes, or has one error handler for all error codes.

}

 

 

Basic type of API

API authentication use the below types of field to authenticate.

  • A standard JSON integer : 10

  • A standard JSON boolean : true

  • A standard JSON string: "Ihre Aal ist r\u00fcckw\u00e4rts"

  • (When POSTing data as application/x-www-form-urlencoded, use a UTF-8 encoded string instead rather than unicode escapes)

  • A standard JSON floating-point decimal : 72.19381730

  • An arbitrary-precision decimal number encoded as a standard JSON string.

  • Decimals are used in cases where floating-point arithmetic inaccuracies could arise with standard JSON floating-point decimals : "72.19381730"

There are four types of date formats:

  1. Date

  2. Datetime

  3. Local Datetime

  4. Datetime with Timezone

  • Date represents a date as a string in ISO8601 date format. If you wish to represent a time as well, you'll need to use Datetime, Local Datetime, or Datetime with Timezone : "2010-01-31"

  • Datetime represents a date and time as a string in ISO8601 combined date and time format in UTC (Coordinated Universal Time) : "2010-01-31T13:00:00Z"

  • Local Datetime represents a date and time as a string in Naive Local ISO8601 date and time format in the timezone of the event : "2010-01-31T13:00:00"

This value is only used for fields where the timezone itself is important information (for example, event start times).

{ "timezone": "America/Los_Angeles", "utc": "2018-05-12T02:00:00Z", "local": "2018-05-11T19:00:00" }

Key

Description

Type

Key

Description

Type

"timezone": "America/Los_Angeles"

A timezone value from the Olson specification

string

"utc": "2018-05-12T02:00:00Z"

A datetime value in the UTC timezone

datetime

"local": "2018-05-11T19:00:00

A datetime value in the named timezone

datetime

When being sent as a request:

  • utc and timezone are required

  • local needs to be ignore

[1, 2, 3, 4] "1,2,3,4"

A list of literal values. With a content-type of application/json, it should be a JSON array of literals, otherwise, for application/x-www-form-urlencoded it should be a string than is a comma separated list of values.

[{"name1": "val1", "name2": "val2"}, {...}] "[{\"name1\": \"val1\", \"name2\": \"val2\"}, {...}]"

A JSON list of object values. With a content-type of application/json, it should be a JSON array, otherwise, for application/x-www-form-urlencoded it should be a string encoding of a JSON array.

A JSON object representation of a dictionary. With a content-type of application/json, it should be a JSON object, otherwise, for application/x-www-form-urlencoded it should be a string encoding of a JSON object.

Returned for fields which represent HTML, like event names and descriptions.

The html key represents the original HTML (which should be sanitized and free from injected script tags etc., but as always, be careful what you put in your DOM), while the text key is a stripped version useful for places where you can't or don't need to display the full HTML version.

  • The ISO 3166 alpha-2 code of a country: "AR"

  • An ISO 4217 3-character code of a currency: "USD"

When submitting as form-encoded POST data, you can instead provide a string indicating the currency and the value separated by a comma, e.g. USD,432 - however, when you submit a JSON POST body, you must submit this as a JSON object with the currency and value fields.

The currency is used for returning monetary values, such as ticket prices, fees charged, and tax amounts.

Currencies are represented as their currency code and an integer value, where the code is the currency code as defined by ISO 4217 <http://en.wikipedia.org/wiki/ISO_4217>_ and the integer value is the number of units of the minor unit of the currency (e.g. cents for US dollars).

You can get a value in the currency's major unit - for example, dollars or pound sterling - by taking the integer value provided and shifting the decimal point left by the exponent value for that currency as defined in ISO 4217 <http://en.wikipedia.org/wiki/ISO_4217>_.

For example, the exponent for USD (the US dollar) is 2, so a value of 2311 becomes $23.11. For JPY (the Japanese yen) it's 0, so a value of 2311 becomes ¥2311.

Eventbrite does not currently sell tickets in non-decimal currencies, such as the Malagasy ariary (MGA), but any value for them would also be returned in minor units (for example, ("MGA", 7) would mean 1.2 MGA, or 1 ariary and 2 francs).

The display value is provided for your convenience; its formatting may change depending on the locale you query the API with (for example, commas for decimal separators in European locales).

Though address formatting varies considerably between different countries and regions, Eventbrite still has a common address return format to keep things consistent.

In general, you should treat address_1, address_2, city, and region as opaque lines of the address printed in that order. The postal_code field contains the local postal or zip code equivalent, if available, and the country field contains the ISO 3166 <http://en.wikipedia.org/wiki/ISO_3166-1>_ country code for the country (with the name of the country broken out for your convenience).

All fields apart from address_1 and country are optional.

Address Fields

Key

Description

Type

Key

Description

Type

address_1

The street/location address (part 1)

string

address_2

The street/location address (part 2)

string

city

The city

string

region

The ISO 3166-2 2- or 3-character region code for the state, province, region, or district

string

postal_code

The postal code

string

country

The ISO 3166-1 2-character international code for the country

string

latitude

The latitude portion of the address coordinates

decimal

longitude

The longitude portion of the address coordinates

decimal

localized_address_display

The format of the address display localized to the address country

string

localized_area_display

The format of the address's area display localized to the address country

string

localized_multi_line_address_display

The multi-line format order of the address display localized to the address country, where each line is an item in the list

list

The standard base representation for first-class objects in Eventbrite, such as :format:event, :format:venue and :format:order.

The resource_uri is an absolute URL to the API endpoint that will return you the canonical representation of the event, and the id is a :format:string that represents a unique identifier for the event (note that it is not necessarily numeric).

Other fields on objects are defined on their individual pages, but note that fields may not be present if their value is null; we have noted fields that may not contain a value with (optional).

Attendee Object

The Attendee object represents the details of Attendee (ticket holder to an Event). The model is one Attendee per each sold ticket.

If the Event is specified to only collect information on the Order owner (the default), all returned Attendees have the same information, apart from the barcodes and Ticket Class ID.

Attendee objects are considered private; meaning that all Attendee information is only available to the User and Order owner.

Attendee Fields

Key

Description

Type

Key

Description

Type

created

Attendee creation date and time (i.e. when order was placed).

datetime

changed

Date and time of last change to Attendee.

datetime

ticket_class_id

Ticket Class used by Attendee when registering.

string

variant_id

Variant of Ticket Class used by Attendee when registering.

string

ticket_class_name

Name of Ticket Class used by Attendee when registering.

string

quantity

Always 1.

integer

costs

Attendee ticket cost breakdown.

attendee_cost

profile

Attendee basic profile information.

attendee-profile

addresses

Attendee address.

attendee-addresses

questions

(Optional) Custom questions for the Attendee.

attendee-questions

answers

(Optional) Attendee's anwers to custom questions.

attendee-answers

barcodes

Attendee's entry bar code.

attendee-barcodes

team

(Optional) Attendee team information.

attendee-team

affiliate

(Optional) Attendee’s affiliate code.

attendee-affiliate

checked_in

true = Attendee checked in.

boolean

cancelled

true = Attendee cancelled.

boolean

refunded

true = Attendee receives a refund.

boolean

status

Attendee status.

string

event_id

Event ID of the Attendee's Event.

string

order_id

Order ID under which this Attendee's ticket was purchased.

string

guestlist_id

Guest list ID under which the Attendee is listed. A null value means that this Attendee is not a guest.

string

invited_by

Attendee who invited guest. A null value means that this Attendee is not a guest.

string

delivery_method

Ticket delivery method used for the Attendee. Can be will_call, electronic, standard_shipping or third_party_shipping.

string

Attendee Cost Fields

Contains the Attendee’s cost breakdown.

Key

Description

Type

Key

Description

Type

base_price

Attendee's ticket price excluding fees and tax. Do not expose to Attendee as it displays an incorrect value if the Ticket Class include_fee field is used.

currency

eventbrite_fee

Attendee's fee. Do not expose this field to Attendee as it displays an incorrect value if the TicketClass include_fee field is used.

currency

tax

Amount of tax charged for the ticket.

currency

payment_fee

Fee for ticket payment processing.

currency

gross

Attendee total cost (base_price + eventbrite_fee + payment_fee + tax).

currency

Attendee Profile Fields

Contains Attendee personal information.

Key

Description

Type

Key

Description

Type

name

Attendee name. To ensure forward compatibility with non-Western names, use this field instead of first_name/last_name.

string

email

Attendee email address.

string

first_name

Attendee first name. Use name field instead.

string

last_name

Attendee last name. Use name field instead.

string

prefix

(Optional) Attendee title or honorific that appears at the front of the name, such as Mr., Ms.

string

suffix

(Optional) Attendee suffix that appears at the end of the name (e.g. Jr., Sr.)

string

age

(Optional) Attendee age.

integer

job_title

(Optional) Attendee job title.

string

company

(Optional) Attendee company name.

string

website

(Optional) Attendee website address.

string

blog

(Optional) Attendee blog address.

string

gender

(Optional) Attendee gender, currently either “male” or “female”.

string

birth_date

(Optional) Attendee birth date.

date

cell_phone

(Optional) Attendee cell/mobile phone number.

string

Attendee Address Fields

This field contains home, shipping, and work addresses associated with the Attendee. All fields are optional.

Key

Description

Type

Key

Description

Type

home

Attendee home address.

address

ship

Attendee shipping address.

address

work

Attendee work address.

address

Attendee Questions Fields

Use to present custom questions to an Attendee.

Key

Description

Type

Key

Description

Type

id

Custom question ID.

string

label

Custom question label.

string

type

Can be text, url, email, date, number, address, or dropdown.

string

required

true = Answer is required.

boolean

Attendee Answers Fields

Contains information on an Attendee's answers to custom questions.

Key

Description

Type

Key

Description

Type

question_id

Custom question ID.

string

question

Text of the custom question.

string

type

Can be text, url, email, date, number, address, or dropdown.

string

answer

Answer type. Generally use the string value; except when an answer of address or date is more appropriate.

varies

Attendee Barcodes Fields

This field represents the barcodes for this Attendee Order (usually one Attendee per each sold ticket).

Key

Description

Type

Key

Description

Type

barcode

Barcode contents. This field value is null when:

  • User has turned off the printable tickets option.

  • Method of ticket delivery does not match Attendee.

  • Attendee method of ticket delivery is not electronic.

in order to prevent exposing the barcode value to the Attendee. When viewed by the User with “event.orders:read” permission, the barcode is always shown.

string

status

Barcode status. Can be unused, used, or refunded.

string

created

Attendee barcode creation date and time.

datetime

changed

Last change date and time to Attendee barcode.

datetime

is_printed

true = Ticket is printed.

boolean

Attendee Team Fields

This field represents Attendee team information if the Event has teams configured. An Attendee team is a group of Attendees at an Event, for example a team at a sports tournament.

Key

Description

Type

Key

Description

Type

id

Team ID.

string

name

Team name.

string

date_joined

When Attendee joined the team.

datetime

event_id

Event the team is part of.

string

Attendee Assigned Unit Fields

Contains details of Attendee seating assignment.

Key

Description

Type

Key

Description

Type

unit_id

Attendee seating assignment ID. This value can never be null.

string

description

Detailed description of seating assignment. This is concatenated from the 'labels' and 'titles' fields. This value can never be null.

string

location_image

Physical location of seat assignment on the seatmap. This value is null or omitted if seatmap is not published for the Event.

[unit-location-image] (#unit-location-image)

labels

Label of seating assignment. This value can never be null.

list

titles

Title of seating assignment. This value can never be null. Number of titles are always equal to or more than the number of labels. If seat location is displayed in the grid view, API client is expected to group assigned locations by title and use a separate grid for each unique title.

list

Attendee Note Fields

The Attendee note represents a free-form text note related to an Attendee.

Key

Description

Type

Key

Description

Type

created

Note creation date and time.

datetime

text

Note content up to 2000 characters.

string

type

This value is always ‘attendee’.

string

event_id

Event associated with this Attendee note.

event

order_id

Order associated with this Attendee note.

order

attendeee_id

Attendee ID associated with this Attendee note.

attendee

author_name

First and last name Attendee who created the note.

string

 

Unit Location Image Fields

Seat assignment physical coordinate on the seatmap and the corresponding seatmap image URL.

Key

Description

Type

Key

Description

Type

url

Fully qualified URL of the seatmap image. Currently all seatmap images are in 660x660 .png format. This value can never be null.

string

x

Seat's x-coordinate location within the seatmap, as measured by % from the left edge of seatmap. The value ranges from 0.0 to 100.0. This value can never be null.

float

y

Seat's y-coordinate location within the seatmap, as measured by % from the left edge of seatmap. The value ranges from 0.0 to 100.0. This value can never be null.

float

Expansions

Information from expansions fields are not normally returned when requesting information. To receive this information in a request, expand the request.

Key Expansion

Source

Description

Key Expansion

Source

Description

event

event_id

Attendee's Event.

order

order_id

Attendee's Order.

promotional_code

promotional_code

Promotional Code applied to Attendee's Order.

assigned_number

assigned_number

Attendee bib number, if one exists for a race or endurance Event.

answers

attendee-answers

(Optional) Attendee answers to custom questions.

survey

attendee-questions

(Optional) Custom questions presented to the Attendee.

survey_responses

attendee-survey-responses(object)

(Optional) Attendee's responses to survey questions.

assigned_unit

attendee-assigned-unit

(Optional) Attendee’s seating assignment details if Event has reserved seating.

contact_list_preferences

contact_list_preferences

(Optional) Opt-in preferences for the email address associated with the Attendee.

You need to retrieve an Attendee by Attendee ID.

List Attendees by Event ID. Returns a paginated response.

List Attendees of an Organization's Events retrieve by Organization ID. Returns a paginated response.

An overarching category that an event falls into (vertical). Examples are "Music", and "Endurance".

Gets a category by ID as category.

Retrieve a Subcategory by Subcategory ID.

Returns a list of Category as categories, including subcategories nested. Returns a paginated response.

List of Subcategories

List all available Subcategories. Returns a paginated response.

Discount Object

The Discount object represents a discount that an Order owner can use when purchasing tickets to an Event.

A Discount can be used to a single TicketClass or across multiple Ticket Classes for multiple Events simultaneously (known as a cross event Discount).

There are four types of Discounts:

  • Public Discount. Publically displays Discount to Order owner on the Event Listing and Checkout pages. Only used with a single Event.

  • Coded Discount. Requires Order owner to use a secret code to access the Discount.

  • Access Code. Requires Order owner to use a secret code to access hidden tickets. Access codes can also optionally contain a discount amount.

  • Hold Discount. Allows Order owner to apply or unlock Discount for seats on hold.

The display price of a ticket is calculated as:
price_before_discount - discount_amount = display_price

Fields

Use these fields to specify information about a Discount.

Key

Description

Type

Key

Description

Type

code

Discount name for a Public Discount, or the code for a Coded Discount and Access Code.

string

type

Discount type. Can be access, coded, public or hold.

string

end_date

Date until which the Discount code is usable. Date is naive and assumed relative to the timezone of an Event. If null or empty, the discount is usable until the Event end_date. ISO 8601 notation: YYYY-MM-DDThh:mm:ss.

datetime

end_date_relative

End time in seconds before the start of the Event until which the Discount code is usable. If null or empty, the discount is usable until the Event end_date.

integer

amount_off

Fixed amount applied as a Discount. This amount is not expressed with a currency; instead uses the Event currency from 0.01 to 99999.99. Only two decimals are allowed. The default is null for an Access Code.

decimal

percent_off

Percentage amount applied as a Discount. Displayed in the ticket price during checkout, from 1.00 to 100.00. Only two decimals are allowed. The default is null for an Access Code.

decimal

quantity_available

Number of times this Discount can be used; 0 indicates unlimited use.

integer

quantity_sold

Number of times this Discount has been used. This is a read only field.

integer

start_date

Date from which the Discount code is usable. If null or empty, the Discount is usable effective immediately.

local datetime

start_date_relative

Start time in seconds before the start of the Event from which the Discount code is usable. If null or empty, the Discount is usable effective immediately.

integer

ticket_class_ids

List of discounted Ticket Class IDs for a single Event. Leave empty if you want to see all the tickets for the Event.

list

event_id

Single Event ID to which the Discount can be used. Leave empty for Discounts.

string

ticket_group_id

Ticket Group ID to which the Discount can be used.

string

hold_ids

List of hold IDs this discount can unlock. Null if this discount does not unlock a hold.

list

The following conditions define the extend of the Discount:

  • If event_id is provided and ticket_class_ids are not provided, a single Event Discount is created for all Event tickets.

  • If both event_id and ticket_class_ids are provided, a single Event Discount is created for the specific Event tickets.

  • If ticket_group_id is provided, a Discount is created for the Ticket Group.

  • If neither event_id nor ticket_group_id are provided, a Discount is created that applies to all tickets for an Organization's Events, including future Events.

Expansions

Information from expansions fields are not normally returned when requesting information. To receive this information in a request, expand the request.

Expansion

Source

Description

Expansion

Source

Description

event

event_id

Single Event to which the Discount can be used.

ticket_group

ticket_group_id

Ticket Group to which the Discount can be used.

reserved_seating

ticket-reserved-seating-settings

Reserved seating settings for the Ticket Class. This expansion is not returned for Ticket Classes that do not support reserved seating.

Retrieve a Discount by Discount ID.

Create a new Discount.

Update a Discount by Discount ID.

List Discounts by Organization ID. Returns a paginated response.

Delete a Discount. Only unused Discounts can be deleted.

Note: A Discount cannot be restored after being deleted.

The Display Settings object represents the settings that create the Event display as shown on the Event Listing page.

Retrieve the Display Settings for an Event by Event ID.

Update Display Settings for an Event by Event ID.

Retrieve the capacity tier for an event.

Update the capacity tier for an event. Partial updates are supported. Submit only attributes that are changed.

These rules must apply when updating capacity tier:

  • Sum of quantity_total from capacity holds cannot exceed remaining capacity quantity

  • If the event is already oversold, new remaining capacity quantity cannot become further negative (oversold)

To create GA capacity hold inventory tiers for an event, include payload with holds. capacity_total must be supplied if event does not have a capacity set.

For example:

To update/delete GA capacity hold inventory tiers for an event, include payload with holds that contain id and fields of the hold tier to be updated. Deleting is the same as updating with is_deleted set to true.

Deleting a hold tier that has tickets sold or associated with attendees will be denied. quantity_total for a hold tier cannot be reduced below the quantity used (quantity_sold + quantity_pending). Payload can contain partial data/partial hold inventory tiers to be updated/deleted.

For example:

Event Description

Event Descriptions have two representations:

  1. A fully-rendered HTML version of the event summary AND event description, and

  2. A "raw" version of the description that is broken up into its distinct modules. To set and retrieve modules, please see the Structured Content documentation.

For more in depth description for how to set the event description, please see the event description tutorial.

Retrieve Full HTML Description

Returns the fully rendered description for an Event as a string of HTML. This endpoint will work with events created using New or Classic Create.

Permissions: event.details:read

Event Schedule

The Event Schedule object is a set of rules that is used to add occurrences to a series parent event. A series parent event may have multiple schedules associated with it. Each schedule may only be associated with one series parent event.

Create an event schedule

Creating an event schedule requires that a series parent event has already been created. For instructions on how to create a series parent event, please refer to the Create Event API.

Creating an event schedule will add occurrences to a series parent event, according to the pattern specified in the schedule. Each occurrence is backed by an Event, and will be associated with the series parent event specified in the request. If an occurrence specified by the schedule has the same date and time as an existing occurrence, the new occurrence is ignored and not created (the rest of the occurrences specified by the schedule are still created).

You need to follow a systematic process for make a request on API. It mentioned in the below field.

To make the request:

  1. Make a call to any listing endpoint that retrieves a paginated response.

  2. Your format will vary, but it might look something like this: GET https://www.eventbriteapi.com/v3/categories/.

  3. Verify that the "has_more_items" attribute is "true" before continuing. If it is "false", there are no additional pages to retrieve, so you can stop here.

  4. Copy the continuation token from your response.

  5. Call the endpoint again, after adding a continuation token as a query string parameter to the URI.

  6. Your call format will vary, but it might look something like this: https://www.eventbriteapi.com/v3/categories/?continuation=AEtFRyiWxkr0ZXyCJcnZ5U1-uSWXJ6vO0sxN06GbrDngaX5U5i8XYmEuZfmZZYB9Uq6bSizOLYoV

  7. Repeat until all desired records have been retrieved.

Eventbrite has many models that refer to each other, and often you’ll want to fetch related data along with the primary model you’re querying—for example, you may want to fetch an organizer along with each event you get back. The way of doing this in the Eventbrite API is called "expansions":

You can specify a set of relationships to additionally fetch with every call, which reduces the number of API requests you must make to obtain your data.

To "Create API Key" to create a new application.

The available expansions are based on the type of object that the API is returning; each of the return formats lists available expansions, as you can see in the event and attendee documentation, for example.

Provide the details asked to save the OAuth consent screen, including:

  • Contact details

  • Application name and website

  • Register the URL you will use to receive the callback once the user logs into Eventbrite.

Save the form to proceed further. Eventbrite will immediately create credentials. If you need to access them again, you can head back anytime to your apps dashboard.

To find this information, visit API Key Authentication

OAuth 2.0 Authentication

The Eventbrite API uses OAuth 2.0 for authorization.

There are two ways to authorize users:

  • Server-side

  • Client-side

We strongly recommend handling authorization on the server side for security reasons.

  • Server-Side Authorization

You need to redirect users to our authorization URL, while including your API key and redirect URI as query parameters: https://www.eventbrite.com/oauth/authorize?response_type=code&client_id=YOUR_API_KEY&redirect_uri=YOUR_REDIRECT_URI

When the user authorizes your app, your redirect URI will receive a request from our authorization server with your access code included as a query parameter.

Here's an example of the URI you will be redirected to (with the access code included as a query parameter): http://localhost:8080/oauth/redirect?code=YOUR_ACCESS_CODE

Send a POST request to https://www.eventbrite.com/oauth/token that specifies the grant type and includes your access code, client secret, and API key. This data should be sent as part of your request header.

Here's an example of a POST request:

The server will verify the access code and call your redirect URI. The user's private token will be available in the JSON response. Use this private token to make API requests on behalf of this user.

  • Client-Side Authorization

Redirect users to our authorization URL, while including your API key and redirect URI as query parameters: https://www.eventbrite.com/oauth/authorize?response_type=token&client_id=YOUR_API_KEY&redirect_uri=YOUR_REDIRECT_URI

When the user authorizes your app, your redirect URI will receive a request with the private token included as a query parameter. verify callback, which accepts these credentials and calls done providing a user, as well as options specifying a client ID, client secret, and callback URL.

Authenticate Requests
Use passport.authenticate(), specifying the 'eventbrite' strategy, to authenticate requests.

To authenticate Users via the API, make sure you have the following information, available from your Eventbrite App Management page.

Key

Description

Key

Description

App Key

Identifies your app during the OAuth handshake. Not secret.

Client Secret

Identifies your app during a server-side handshake. Secret.

Redirect URI

URI to which Users are redirected once they confirm access to your app. You need to set this in the Eventbrite app settings.

The Eventbrite API uses the OAuth 2 authentication protocol.

To Link your Eventbrite account to the other Application, you need to follow the below steps :

  • Add a new blank automation (it does not need to be saved).

  • Click on "Connections" on the top-left menu.

  • Search for the "Eventbrite" connector and then click on "Add" (visible when you hover over the connector).

  • Now click on the "Link connection" to connect your application.

  • You'll then be redirected to the Eventbrite login page. Enter your credentials and click on "Log in".

  • Eventbrite will present you with the choice to allow the connection. Click on "Allow".

  • Once you are redirected to the specific connection area, click on "Ok" to complete the authentication. 

For more information please visit : Eventbrite API Documentation

Eventbrite Connections

Basic Connection

API key Connection

OAuth 2.0 Connection

 

 

Actions