OpenTicket is a system focused on event and ticket management. It is therefore not surprising that events and tickets are at the heart of the system. In the following sections, you will learn how to set up simple events and how to create tickets for those events. All of this can also be done through the dashboard. However, the documentation focuses on setting up all the necessary resources through the API.
OpenTicket uses many resources, many of which are connected in one way or another. It is not uncommon that a resource cannot be created if another resource does not exist, or that a resource cannot be deleted if another resource still exists. To make this clear, this section of the documentation describes the resources that are used to set up events and tickets.
The Entity Relation (ER) diagram shown above visualizes a small subset of the resources used by the OpenTicket system and shows how these resources relate to each other. The remainder of this section explains in more detail why these resources are related.
There are many locations in the world where events can take place, but the OpenTicket system does not know all of them by default. This makes sense because storing all of these locations would be a big waste of memory. Instead, the OpenTicket system requires you to create these locations by hand. To do this, you create a
location resource that stores relevant information about a location, such as its
address. It is possible to store much more information in a
location, as the next sections of the documentation will show.
Analogous to the
location, you must also create a resource for an event. An
event resource stores relevant information about an event, such as its
description. As the diagram above shows, an
event and a
location are related. This makes sense since every event must take place somewhere. In a sense, a location provides the ability to host an event. The OpenTicket system reflects this as well: you must first create a
location, and only then an
event can be created. This
event then uses the
location to indicate where an event will take place.
After you create a
location, you can associate many
event resources with it. Thus, each
location can be associated with zero or more
event resources. On the other hand, an
event is associated with only one
location, which means that an event cannot take place at two different locations.
Each event takes place on a certain date and lasts for a certain time. It may sound logical to include this information in the
event. However, this limits the OpenTicket system in several ways. Therefore, the OpenTicket system uses the
eventDate resource instead. This resource stores the
end date and time, and can be associated with an
event to indicate when the event begins and ends.
It is clear that the
event resources are related. As described above, an
event must first be created, then an
eventDate can be created and associated with an
event. It is possible to associate multiple
eventDate resources with a single
event. This allows the sale of day-based tickets for events that take place on multiple days, but will not be discussed in detail in the following sections. On the other hand, an
eventDate can only be associated with one specific event.
In the following sections, you will create the above-mentioned resources in the OpenTicket system through the API. To keep this as clear as possible, only required fields for creating these resources are shown. However, in practice, there is much more information that can be added to these resources. The API reference mentions all additional fields that can be added to these resources.