Tickets
Tickets in our system have two ways of delivery:
- PDF & pkpass, where tickets are delivered as attachments in the order confirmation email
- SECURE, where tickets are delivered through our wallet app. SECURE tickets can also be resold through our secondary market.
Fetching tickets
To fetch tickets from all tenants use GET v1/ticket with your JWT. In the response will be all tickets owned by the user. To filter the response, the following fields are available:
format
PDF or SECURE, returns only tickets in that formatwith_enrollment_id
, a boolean, determines if the response object should include the owner's enrollment IDsort_by
determines the column on which to order the resultdirection
isasc
ordesc
with
is a RelationExpression which specifies the ticket sub-objects to include. This has the dot format, ie.[ticket_holder,ticket_config.event]
Manually issuing tickets to users
Users can own tickets through the process of buying tickets, but organizers can also manually issue tickets to users.
The process has two stages: reservation and issuance. If you reserve the tickets but decide not to issue them, you can free them.
-
To reserve tickets for a user use the POST /ticket/reserve endpoint. The reserved tickets are in the response.
The following fields should be in the body:
event_id
- ID of the eventowner_id
- enrollment of the user for which the tickets should be reservedformat
- Format of the tickets (PDF
orSECURE
)ticket_reservation_items
- the array of objects with the following properties:ticket_config_id
- id of the ticket config,quantity
- number of tickets for that ticket config,timeslot_id
- the id of the timeslot that should be applied for the ticket,sector_id
- the id of the sector that should be applied to the ticket
Note: After invoking this endpoint tickets are in the
reserved
state. -
After reserving tickets it is possible to free them with POST /ticket/free endpoint. This makes the tickets
available
again so they can be reserved for some other user, or bought later. -
After reserving tickets, for issuing them use the POST /ticket/issue endpoint. This updates them on the blockchain and after that puts them in the
issued
state.