TTixFin
API Integration

API Overview

Integrate TIXFIN with your website or app

Connect your own systems to TIXFIN through the Partner API — a read-only, API-key authenticated REST API for pulling a project's events, ticket catalog, tickets, and orders.

What Can You Do?

Common Use Cases

Use CaseDescription
AutomationSync events, tickets, and orders with your systems
AnalyticsPull data for custom reports and dashboards
ReconciliationMatch orders and tickets against your own records
Custom integrationsFeed TIXFIN data into a CRM, warehouse, or BI tool

The Partner API is read-only today. Creating events, selling tickets, and managing check-in happen through the TIXFIN dashboard, not this API.

Getting Started

1. Get an API Key

Log in to your TIXFIN dashboard
Go to SettingsPartner API for the project you want to grant access to
Click "Generate API Key" and choose which endpoint groups it can access
Copy and save it securely — it's shown once, in prefix.secret format

2. Make Your First Request

curl https://api.tixfin.com/api/partner/projects/YOUR_PROJECT_ID/events \
  -H "X-API-Key: YOUR_API_KEY"

API Basics

Base URL

https://api.tixfin.com

All Partner API endpoints are scoped to a project:

/api/partner/projects/{projectId}/...

Authentication

Send your API key as either header:

X-API-Key: YOUR_API_KEY

or

Authorization: Bearer YOUR_API_KEY

See the Authentication guide for details.

Response Format

List endpoints return a paginated envelope:

{
  "items": [ /* ... */ ],
  "total": 42,
  "page": 0,
  "size": 20
}

Single-resource endpoints (like GET /events/{eventId}) return the object directly.

Rate Limits

Two limits apply per project's API key, and one per client IP:

ScopeDefault limit
Per API key600 requests/minute
Per IP address180 requests/minute

Exceeding either returns 429.

Endpoints

Every key is scoped to one or more endpoint groups — calling an endpoint your key isn't scoped for returns 403.

Endpoint group: events.read

List Events

GET /api/partner/projects/{projectId}/events?page=0&size=20

Get Event Details

GET /api/partner/projects/{projectId}/events/{eventId}

Endpoint group: ticket_catalog.read

List Ticket Catalog Items

GET /api/partner/projects/{projectId}/ticket-catalog?eventId={eventId}&page=0&size=20

Endpoint group: tickets.read

List Tickets

GET /api/partner/projects/{projectId}/tickets?eventId={eventId}&paymentReference=&status=&page=0&size=20

eventId, paymentReference, and status are all optional filters.

Endpoint group: orders.read

List Orders

GET /api/partner/projects/{projectId}/orders?eventId={eventId}&page=0&size=20

An "order" is an aggregate over all tickets sharing a paymentReference.

Official SDKs

Instead of calling the REST API directly, use one of the official client libraries — both wrap authentication, pagination params, and error handling:

npm install @tixfin/partner-api-client
import { TixfinPartnerClient } from "@tixfin/partner-api-client";

const client = new TixfinPartnerClient({
  projectId: "YOUR_PROJECT_ID",
  apiKey: process.env.TIXFIN_PARTNER_API_KEY!,
});

const events = await client.listEvents();
pip install tixfin-partner-api
from tixfin_partner_api import TixfinPartnerClient

client = TixfinPartnerClient(
    project_id="YOUR_PROJECT_ID",
    api_key=os.environ["TIXFIN_PARTNER_API_KEY"],
)

events = client.list_events()

Full reference: SDKs guide.

Best Practices

Security

  • Store keys in environment variables, never in client-side code
  • Scope each key to only the endpoint groups it needs
  • Rotate keys regularly and revoke unused ones

Performance

  • Cache responses when possible
  • Use page/size to avoid over-fetching (size max is 100)
  • Filter tickets/orders by eventId when you only need one event

Error Handling

  • Check HTTP status codes
  • Parse the message field in error responses
  • Back off and retry on 429

Error Codes

CodeMeaning
200Success
400Bad request (check parameters)
401Missing or invalid API key
403Key not scoped for this endpoint group
404Resource not found
429Rate limit exceeded
500Server error (contact support)

Error responses look like:

{
  "message": "Invalid API key",
  "status": 401
}

Support

Documentation:

Need Help?

  • Email: api@tixfin.com
  • Include: API key prefix (never the full key), request details, error messages

Next Steps

On this page