tired/api/ref/tickets

reference

tickets

ticket tiers live under an event. tickets themselves are minted at checkout.

the ticket tier object

{
  "id": "tkt_01HYQ9K7W3M5N2",
  "event_id": "evt_01HY…",
  "name": "general admission",
  "price_cents": 2500,
  "currency": "usd",
  "quantity": 120,
  "sold": 84,
  "sale_starts_at": null,
  "sale_ends_at": "2026-05-17T20:00:00-04:00",
  "max_per_order": 6,
  "visibility": "public",
  "access_code": null
}

the ticket object (minted)

{
  "id": "tik_01HYQ9KA2B…",
  "order_id": "ord_01HY…",
  "event_id": "evt_01HY…",
  "tier_id": "tkt_01HY…",
  "attendee_id": "atd_01HY…",
  "status": "active",
  "scan_count": 0,
  "wallet_url": "https://tired.events/w/…",
  "qr_token": "eyJ0eXAi…",
  "issued_at": "2026-05-10T14:02:11Z"
}

endpoints

post/v2/events/{event_id}/tiers
get/v2/events/{event_id}/tiers
patch/v2/tiers/{id}
del/v2/tiers/{id} · only if sold = 0
get/v2/tickets/{id}
post/v2/tickets/{id}/transfer
post/v2/tickets/{id}/void

visibility

public — shown on the event page.
unlisted — only accessible with a direct link.
access_code — requires a code at checkout. set access_code to a string.

transfers

POST /v2/tickets/tik_01HY…/transfer
{
  "to_email": "greta@example.com",
  "message": "dinner first?"
}

the recipient gets an email with a new qr. the original ticket status flips to transferred.

voiding

irreversible. use when a ticket is suspected stolen or double-listed. the order's refund is issued automatically unless you pass refund: false.