Ticketbud APIbeta

Easily connect Ticketbud to over 300 services

Zapier  makes it easy to sync data between your web apps to save time and improve productivity. You don't need to be a developer to have your attendee data appear in other software such as Mailchimp and Salesforce.

Example Client Application

Step 1: Create Your Application

  1. Go to "My Account"
  2. Go to "My Applications"
  3. Click on "New Application"
  4. Give your Application a unique name, and setup the callback URL to your application.

Step 2: Authorize

  1. Go to "My Account"
  2. Go to "My Applications"
  3. Click on the Name of your application
  4. Click on the "Authorize" button

This will prompt you to "Authorize" your Ticketbud application with your client application. When you are finished you will be redirected to your callback url.

Step 3: Save your Token

  1. Now that you have authorized your application and have been redirected to your client application, you should have captured your access_token. You are free to now use the Ticketbud API.
  2. all API calls will need to include this access token as a parameter.

Manual Authentication

Authorization:

To request an authorization, you need to have an application setup on ticketbud. Then its as simple as directing a user to authorize at the url below:

https://api.ticketbud.com/oauth/authorize?response_type=code&client_id=your_app_id&redirect_url=your_callback_url

Requesting an Access Token:

When you authorize above and accept the authorization, the response will contain a "code" parameter. To request an access token in your callback you would:

curl https://api.ticketbud.com/oauth/token \
-X POST \
-H Content-Type:application/json
-d "client_id=your_app_id" \
-d "client_secret=your_secret" \
-d "code=CODE_FROM_ABOVE" \
-d "grant_type=authorization_code" \
-d "redirect_uri=your_callback_url"

Will result in the response:

{
"access_token": "some_long_unique_token_much_longer_than_this",
"token_type": "bearer",
"expires_in": 7200,
"refresh_token": "some_long_unique_refresh_token_much_longer_than_this"
}

You should then persist this access_token as it will be required to make api requests.

Accessing User Current User Credentials

Often times you want to know more about the ticketbud user that you are integrating into your system.

curl https://api.ticketbud.com/me.json

If the user is logged in to Ticketbud and authorized for your application you will receive the following response:

{
user: {
id: xxxxxx,
full_name: "Ticketbud Terry",
first_name: "Ticketbud",
last_name: "Terry",
email: "ticketbud.terry@somedomain.com",
default_subdomain: "greatevents",
image: "https://s3.amazonaws.com/attachments.ticketbud.com/users/avatars/xxxxx/original/stringio.txt"
event_ids: [
xxxxxxxx,
xxxxxxxx,
...
]
}
}

Your Events

curl https://api.ticketbud.com/events.json?access_token=your_access_token

This is json response of all of your events.

{
events: [
{
id: 1749846778,
title: "My Great Get Together Support a Good Cause",
event_start: "2012-06-14T21:00:00-05:00",
event_end: "2012-06-29T21:00:00-05:00",
time_zone: "Central Time (US & Canada)",
image: "/path/to/event_image",
tickets_available: 500,
sold_out: false,
over: true,
organizer_id: 10437567843,
event_location: {
address: null,
address2: null,
city: null,
state: null,
zip: null,
country: null,
latitude: "1.000000",
longitude: "0.00000",
name: null,
location: "123 Street Name, Anywhere in the world"
}
},
...]
}

A Single Event

curl https://api.ticketbud.com/events/:id.json?access_token=your_access_token

This is a json reponse for a single event.

{
event: {
id: 1749846778,
title: "My Great Get Together Support a Good Cause",
event_start: "2012-06-14T21:00:00-05:00",
event_end: "2012-06-29T21:00:00-05:00",
time_zone: "Central Time (US & Canada)",
image: "/path/to/event_image",
tickets_available: 500,
sold_out: false,
over: true,
organizer_id: 10437567843,
event_location: {
address: null,
address2: null,
city: null,
state: null,
zip: null,
country: null,
latitude: "1.000000",
longitude: "0.00000",
name: null,
location: "123 Street Name, Anywhere in the world"
}
}

Event Totals

curl https://api.ticketbud.com/events/:id/totals.json?access_token=your_access_token

or

curl https://api.ticketbud.com/events/:event_id/ticket_sales?access_token=your_access_token

This is a json reponse for event totals to a single event.

{
event: {
id: xxxxx,
uuid: "xxxxxx-xxxxx-xxxxx",
currency: "$",
free_tickets_count: "32",
sold_tickets_count: 500,
sales_total: 12098.00,
total_payout: 12000.00,
sales_chart_data: [],
sales_by_ticket_type: [{name: "General Admission", quantity: 300, sold: 300, available: 0}],
}
}

Sales By Ticket

curl https://api.ticketbud.com/events/:event_id/ticket_sales/:id.json?access_token=your_access_token

This is a json reponse for ticket sales totals for a single ticket type.

{
meta: {
sold: xxxx,
available: xxxx,
total_sales: xxx.xx,
currency: "$"
},
tickets: [
{
id: 58363856478,
event_id: 132643,
name_on_ticket: "Sam I Am",
email: "samiam@drseuss.com",
checked_in: false,
barcode: "4011c03c56ea1c1707a8769a3dade0b52ce9f3b8",
barcode_url: "https://chart.googleapis.com/chart?cht=qr&chs=200x200&chl=4013c03c34eb1c17000a7a69a3dade0b52cef93b8&chld=H|0",
ticket_type: "General Admission",
purchaser: {
status: "free",
full_name: "Cat In The Hat",
email: "catinthehat@drseuss.com"
price_paid: 0,
total_quantity: 3
},
custom_fields: [
{
label: "Do you like Green Eggs and Ham?",
response: "I'd eat them anywhere"
}
]
},
},
...]}

Event Fields

id:  Unique id used to retrieve your event.
title:  Title of your event.
event_start:  UTC start time of the event.
event_end:  UTC end time of the event.
time_zone:  The time zone where the event occurs.
image:  The event image
tickets_available:  The number of tickets available across all your tickets in your event.
sold_out:  A boolean designating whether your event is sold out.
over:  A boolean indicating if your event is over.
organizer_id:  The unique id for the organizer.
event_location:  A container for the events location data.
event_location.address:  The first address line set for the event.
event_location.address2:  The second address line set for the event.
event_location.city:  The city where the event is ocurring.
event_location.state:  The state/province where the event is ocurring.
event_location.zip:  The zip/postal code where the event is ocurring.
event_location.country:  The country where the event is ocurring.
event_location.latitude:  The latitude where the event is ocurring.
event_location.longitude:  The longitude where the event is ocurring.
event_location.name:  A name for the venue where this event is occuring.
event_location.location:  A single string containing the pertainent location data for the event.

Tickets for an Event

curl https://api.ticketbud.com/events/:event_id/tickets.json?access_token=your_access_token

This is a json reponse for all tickets to an event.

{
tickets: [
{
id: 58363856478,
event_id: 132643,
name_on_ticket: "Sam I Am",
email: "samiam@drseuss.com",
checked_in: false,
barcode: "4011c03c56ea1c1707a8769a3dade0b52ce9f3b8",
barcode_url: "https://chart.googleapis.com/chart?cht=qr&chs=200x200&chl=4013c03c34eb1c17000a7a69a3dade0b52cef93b8&chld=H|0",
ticket_type: "General Admission",
purchaser: {
status: "free",
full_name: "Cat In The Hat",
email: "catinthehat@drseuss.com"
price_paid: 0,
total_quantity: 3
},
custom_fields: [
{
label: "Do you like Green Eggs and Ham?",
response: "I'd eat them anywhere"
}
]
},
},
...]}

A Single Ticket

curl https://api.ticketbud.com/events/:event_id/tickets/:id.json?access_token=your_access_token
or
curl https://api.ticketbud.com/events/:event_id/tickets/:barcode.json?access_token=your_access_token

This is a json reponse for a single ticket.

{
ticket: {
id: 58363856478,
event_id: 132643,
name_on_ticket: "Sam I Am",
checked_in: false,
barcode: "4011c03c56ea1c1707a8769a3dade0b52ce9f3b8",
barcode_url: "https://chart.googleapis.com/chart?cht=qr&chs=200x200&chl=4013c03c34eb1c17000a7a69a3dade0b52cef93b8&chld=H|0",
ticket_type: "General Admission",
purchaser: {
status: "free",
full_name: "Cat In The Hat",
price_paid: 0,
total_quantity: 3
},
custom_fields: [
{
label: "Do you like Green Eggs and Ham?",
response: "I'd eat them anywhere"
}
]
}
}

Note that we also side load the event and user information if it exists for a given ticket.

Check In A Single Ticket

curl -X PUT https://api.ticketbud.com/events/:event_id/tickets/:id/check_in.json?access_token=your_access_token

Un-Check In A Single Ticket

curl -X PUT https://api.ticketbud.com/events/:event_id/tickets/:id/check_in.json?access_token=your_access_token&reverse=true

This is a json reponse for a single ticket check in.

{
"ticket": {
"id": xxxxxxx,
"event_id": xxxxxx,
"name_on_ticket": "John Smith",
"email": "john@smith.com",
"checked_in": true or false,
"barcode": "xxxxxxxxxxxxx"
"barcode_url":"https://chart.googleapis.com/chart?cht=qr\u0026chs=200x200\u0026chl=xxxxxxxxxxxxxxxchld=H|0",
"ticket_type":"RSVP",
"event":{
"id": xxxxxx,
"title":"Ticketbud Happy Hour",
"event_start":"2014-05-12T18:00:00-05:00",
"event_end":"2014-05-12T23:55:00-05:00",
"time_zone":"America/Chicago",
"image":"/banner_images/original/missing.png",
"share_image":"/hero_images/original/missing.png",
"tickets_available": xxx,
"sold_out": true or false,
"over": true or false,
"organizer_id": xxxx,
"event_hashtag": "ticketbudhh",
"uuid": "507bc664-cb2b-11e3-a340-1becc03bc7d8",
"event_location":{
"id": xxxxx,
"address":"1621 W 5th St",
"address2":null,
"city": "Austin",
"state": "TX",
"zip": "78703",
"country": "US",
"latitude": "30.2746816",
"longitude": "-97.76486390000002",
"name": "Mean Eyed Cat",
"location": "1621 West 5th Street, Austin, TX 78703, USA",
"event_page_id": xxxxxx
}
},
"user":{
"id": xxxx,
"full_name":"John Smith",
"first_name":"John",
"last_name":"Smith",
"email":"john@smith.com",
"default_subdomain": "wonderful-scene-1216",
"image":"https://s3.amazonaws.com/dev.attachments.ticketbud.com/users/avatars/6279/original/stringio.txt",
"event_ids": [xxxx,xxxx,xxxx]
},
"purchaser":{
"status": "paid",
"full_name": "John Smith",
"email": "john@smith.com",
"price_paid": "0.0",
"total_quantity": 2
},
"custom_fields":[]
},
"meta":{
"check_in_count": xxx,
"total_to_scan": xxx
}
}

Ticket Fields

id:  Unique id used to retrieve your ticket.
event_id:  The id of the event that this ticket belongs to.
name_on_ticket:  The name of the ticket holder.
checked_in:  A boolean indicating whether the ticket has been checked in.
barcode:  The unique barcode given to the ticket.
barcode_url:  A url to view the scannable QR code for the ticket.
ticket_type:  The name of the ticket that was sold.
purchaser:  A container holding information about the purchaser of the ticket
purchaser.status:  The status of this ticket sale, one of incomplete,attempted,pending,paid,comp,free
purchaser.full_name:  The full name of the purchaser.
purchaser.price_paid:  The price paid for all tickets in this purchase.
purchaser.total_quantity:  The number of tickets in this purchase made by this purchaser.
custom_fields:  A container for all custom fields included in the purchase (if any)
custom_fields[index].label:  The label for the custom form field.
custom_fields[index].response:  The response this ticket holder made to the above label.

Paint Collaboration

curl -X POST https://api.ticketbud.com/events/:event_id/collaboration/paint.json?access_token=your_access_token&color='#FFFFFF'
color:  The hex code you want to paint this event. "#FFFFFF"

Invite Collaborators

curl -X POST https://api.ticketbud.com/events/:event_id/collaboration.json?access_token=your_access_token&emails[]=box@example.com&emails[]=sam@example.com
emails:  An array of email addresses to invite.