A registration of a Badge to an Event.
You must have the registration
ConventionPrivilege to access this.
Tickets are accessed via /api/ticket
.
See "Object Properties" in Introduction for basic shared properties.
Complete details in TicketProperties.
See "Related Objects" in Introduction for how to use them.
The Badge this ticket belongs to.
The BadgeType of the ticket, if the ticket was complimentary with a BadgeType.
The Convention this ticket belongs to.
The Event this ticket belongs to.
The EventGroup of the ticket, if the ticket was complimentary with an EventGroup associated with a BadgeType.
See "Includes" in Introduction for how to use them.
A very descriptive name for this ticket.
It pulls data from several objects,
which is why it is not included by default.
For a ticket,
it is the shortname
concatenated with a ":"
and the mediumname
.
The name of the event concatenated with the user's badge name, e.g. "[event name] for [badge name/info]".
The services used to fetch and manipulate tickets.
This section describes basic searchability of Tickets, which is now available across several main Ticket endpoints.
To request Tickets, a user must make a request via an endpoint for a parent or related object. The parent objects for which this consolidated search behavior is valid are:
Departures/differences from basic behavior will be discussed in the documentation for the specific parent=>ticket relationship.
This search behavior is not available on the following relationships: ConventionCart, ConventionReceipt.
A user can always see Tickets which belong to Badges they own,
or which belong to a Convention for which the user has the merch
privilege.
Returns:
{ "paging" : {...}, "items" : [ { "id" : "xxx", "ticket_number" : 101, ... }, ... ] }
Pass a string query
to search for a partial match in specifically allowed text fields.
The fields with **
can be searched only by specifying the field with query_field=[fieldname]
; see options below.
**
**
**
**
(default field; limit search to just this field by specifying field with query_field=badge.name_full
; see options below)
**
(default field; limit search to just this field by specifying field with query_field=event.name
; see options below)
**
By default, any use of query
will search in the text fields badge.name_full
and event.name
. You can make your search faster by specifying a single field with the query_field
option. Simply set query_field
to the field you want to search in. (Several fields in the list above can be searched only using query_field
.)
0
is default and means uncollected; 1
means collected.
convention_id
is a valid qualifier but will be part of the URI (e.g. in /api/convention/xxx/tickets) or is implicit in all other object endpoints, so there is never need to pass it explicitly.
0
is default and means not for a reservation; 1
means the ticket is for a reservation.
0
is default and means not generic (created for a specific Event); 1
means the ticket is generic (originally created with no association to an Event).
0
is default and means not for a tournament; 1
means for a tournament.
0
is default and means not picked up; 1
means picked up.
0
is default and means not verified (still in cart process or not yet enabled for use); 1
means verified.
0
is default and means not cancelled; 1
means cancelled.
0
is default and means not scheduled; 1
means scheduled.
Note that this is only a shorthand flag field; other factors also designate the event as "scheduled", such as that the Event has assigned Slots.
You almost certainly want to add it to a ConventionCart instead of creating one. Or if you want to administratively create one, then use that method.
POST /api/ticket
Returns the same as a normal read.
This will create a ticket that is fully verified. You'll need to have the registration
ConventionPrivilege to do this.
POST /api/ticket/verified
The same as the Create Ticket service.
Returns the same as a normal read.
GET /api/ticket/xxx
Returns:
{ "id" : "xxx", "name" : "The Captain is Dead", ... }
PUT /api/ticket/xxx
Returns the same as a normal read.
DELETE /api/ticket/xxx
You need to specify this to refund if purchased with cash in the point of sale system.
Returns:
{ "success" : 1 }
PUT /api/ticket/xxx/pick-up
Returns the same as a normal read.
PUT /api/ticket/xxx/reverse-pick-up
Returns the same as a normal read.
This refunds a charge for a ticket without deleting it. Use of this endpoint requires the registration
privilege.
PUT /api/ticket/xxx/convert/free
Returns the same as a normal read.
Convert a ticket purchase to a different Event. This will charge or refund the difference in the costs. This cannot be used for organizer-granted tickets.
POST /api/ticket/xxx/convert/event/:event_id
Returns a normal read of the add-on converted to.
Toggle a ticket's tournament status (in tournament, or eliminated). Calling this for tickets which are not for a tournament event will raise an error.
PUT /api/ticket/xxx/in-tournament