Getting Started
The Ticket Buyback Partner API enables approved third-party partners and affiliates to integrate ticket resale functionality directly into their own platforms.
With a single integration you can discover events, browse seat availability, generate price quotes, and create confirmed orders β all without handling end-customer payment details.
Base URLβ
All API requests are made to:
https://api.ticketbuyback.com/partner
How It Worksβ
The full partner flow follows these five steps:
1. Authenticate β Exchange credentials for an access token
2. Discover Events β Search events, venues, and performers
3. Browse Seats β Get available sections and rows
4. Create a Quote β Lock in a price for a seat/quantity combo
5. Create an Order β Convert the quote into a confirmed order
Once an order is confirmed, Ticket Buyback returns a ticket transfer email address β your customer accepts the transfer directly from that address.
Before You Beginβ
You must have the following before making any API calls:
| Requirement | Details |
|---|---|
| TBB Partner Account | Provisioned manually by Ticket Buyback during onboarding |
client_id | Public identifier issued at onboarding |
client_secret | Secret key issued at onboarding β treat like a password |
| Routable Payment Method | Must be configured on your TBB account before quotes or orders can be created |
Contact the Ticket Buyback team at support@ticketbuyback.com to get your partner account provisioned.
What You Can Doβ
| Capability | API Flow |
|---|---|
| Discover events, venues, performers | Discovery API |
| Browse available sections and rows | Sections & Rows API |
| Request a sell price quote for a ticket group | Create Quote API |
| Convert a quote to a confirmed order | Create Order API |
| Receive ticket transfer email for your buyer | Order Response |
What You Cannot Doβ
- Access another partner's quotes or orders
- Bypass the Routable payment configuration requirement
- Receive end-customer funds through Ticket Buyback
- Create orders without a valid, unexpired quote
- Use the API without a pre-provisioned TBB partner account
Core Design Principlesβ
Partner-centric billing β Ticket Buyback charges and pays the partner. You manage your own end customer.
No end-user PII required β TBB does not collect or store end-customer emails, phone numbers, or payment details.
Pre-configured payment methods β Partners must configure Routable payout methods on their TBB account before API access is granted.
Scoped token authentication β Each partner account gets isolated API credentials. Tokens are short-lived and cryptographically signed.
Quote-based ordering β All orders require a valid, unexpired quote. Quotes have a defined TTL and become the binding price contract.
Authentication Overviewβ
The API uses a two-step authentication pattern:
Step 1 β Post your client_id and client_secret to /v1/auth/token to receive a short-lived access token.
Step 2 β Include that token as a Bearer token in the Authorization header on every subsequent request.
Authorization: Bearer <your_access_token>
Tokens are valid for 1 hour. After expiry, re-authenticate to get a new token.
β See the full Authentication guide for details.
Standard Request Headersβ
Authorization: Bearer <token> # Required on all authenticated endpoints
Content-Type: application/json # Required on POST/PUT requests
Accept: application/json # Recommended
X-Request-ID: <uuid> # Optional β echoed back for tracing
Response Formatβ
All responses follow a standard envelope:
{
"success": true,
"data": { },
"meta": {
"request_id": "550e8400-e29b-41d4-a716-446655440000",
"timestamp": "2026-02-26T10:30:00Z"
}
}
Errors always return "success": false with an error object:
{
"success": false,
"error": {
"code": "QUOTE_EXPIRED",
"message": "The requested quote has expired. Please create a new quote.",
"details": {
"quote_id": "qt_abc123",
"expired_at": "2026-02-26T09:00:00Z"
}
},
"meta": {
"request_id": "550e8400-e29b-41d4-a716-446655440000",
"timestamp": "2026-02-26T10:30:00Z"
}
}
β See the full Error Reference for all error codes.
Next Stepβ
Once your account is provisioned and Routable is configured, start here: