Base URL
All API requests are served over HTTPS from the Tixallo apex domain under the /api/v1 path:
https://tixallo.com/api/v1Plain HTTP is not supported. Requests over http://will be rejected at the edge.
Required headers
Every request needs these two headers:
Authorization: Bearer YOUR_API_KEY
Content-Type: application/jsonThe Authorization header carries a workspace-scoped API key. The Content-Type header is required on all requests that include a JSON body (POST, PUT, PATCH).
Workflow
- Create an account or workspace. Sign up at
tixallo.comand finish the short onboarding so your workspace exists. - Generate an API key. Inside the Tixallo app, open the integrations area and create a new key. Copy it once — you won't be able to view it again.
- Make a test request. Use the snippet in the next section to confirm your key authenticates and returns JSON.
- Create or fetch tickets. Start integrating: list recent tickets, fetch a single ticket with its conversation, or create one from your own UI.
- Register webhooks if required. Configure webhook endpoints in the Tixallo app to receive ticket and message events in real time.
A simple test request
The fastest way to confirm your key works is to list your recent tickets. A successful call returns HTTP 200 with a data array.
curl https://tixallo.com/api/v1/tickets?limit=5 \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"Example response:
{
"data": [
{
"id": "9f6c…",
"ticket_number": 1042,
"subject": "Cannot log in after password reset",
"status": "new",
"priority": "medium",
"source": "api",
"created_at": "2026-05-04T10:55:02Z",
"updated_at": "2026-05-04T10:55:02Z",
"customer_id": "c1a2…"
}
]
}If you get HTTP 401, your key is wrong or missing — re-check the Authorization header. Anything in the 5xx range is a server-side issue and is safe to retry with backoff.
Creating your first ticket
Send a POST with a subject, description and customer email. Tixallo will look up the customer by email within your workspace and create one automatically if it doesn't exist.
curl https://tixallo.com/api/v1/tickets \
-X POST \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"subject": "Webhook delivery delayed",
"description": "Our order.created webhook took 12s to fire.",
"customer_email": "alex@example.com",
"customer_name": "Alex Example",
"priority": "high"
}'A successful create returns HTTP 201 and the new ticket payload. The ticket.created webhook fires immediately afterwards.