Event series dates / Sub-events¶
Resource description¶
Events can represent whole event series if the has_subevents property of the event is active.
In this case, many other resources are additionally connected to an event date (also called sub-event).
The sub-event resource contains the following public fields:
Field |
Type |
Description |
|---|---|---|
id |
integer |
Internal ID of the sub-event |
name |
multi-lingual string |
The sub-event’s full name |
event |
string |
The slug of the parent event |
active |
boolean |
If |
is_public |
boolean |
If |
date_from |
datetime |
The sub-event’s start date |
date_to |
datetime |
The sub-event’s end date (or |
date_admission |
datetime |
The sub-event’s admission date (or |
presale_start |
datetime |
The sub-date at which the ticket shop opens (or |
presale_end |
datetime |
The sub-date at which the ticket shop closes (or |
frontpage_text |
multi-lingual string |
The description of the event (or |
location |
multi-lingual string |
The sub-event location (or |
geo_lat |
float |
Latitude of the location (or |
geo_lon |
float |
Longitude of the location (or |
item_price_overrides |
list of objects |
List of items for which this sub-event overrides the default price or settings |
├ item |
integer |
The internal item ID |
├ disabled |
boolean |
If |
├ available_from |
datetime |
Start of availability (or |
├ available_until |
datetime |
End of availability (or |
└ price |
money (string) |
The price or |
variation_price_overrides |
list of objects |
List of variations for which this sub-event overrides the default price or settings |
├ variation |
integer |
The internal variation ID |
├ disabled |
boolean |
If |
├ available_from |
datetime |
Start of availability (or |
├ available_until |
datetime |
End of availability (or |
└ price |
money (string) |
The price or |
meta_data |
object |
Values set for organizer-specific meta data parameters. |
seating_plan |
integer |
If reserved seating is in use, the ID of a seating
plan. Otherwise |
seat_category_mapping |
object |
An object mapping categories of the seating plan
(strings) to items in the event (integers or |
last_modified |
datetime |
Last modification of this object |
Changed in version 3.3: The attributes geo_lat and geo_lon have been added.
Changed in version 3.10: The disabled attribute has been added to item_price_overrides and variation_price_overrides.
Changed in version 3.12: The last_modified attribute has been added.
Changed in version 3.18: The available_from/available_until attributes have been added to item_price_overrides and variation_price_overrides.
Endpoints¶
Changed in version 3.3: The sub-events resource can now be filtered by meta data attributes.
Changed in version 4.1: The with_availability_for parameter has been added.
-
GET/api/v1/organizers/(organizer)/events/(event)/subevents/¶ Returns a list of all sub-events of an event.
Example request:
GET /api/v1/organizers/bigevents/events/sampleconf/subevents/ HTTP/1.1 Host: pretix.eu Accept: application/json, text/javascript
Example response:
HTTP/1.1 200 OK Vary: Accept Content-Type: application/json { "count": 1, "next": null, "previous": null, "results": [ { "id": 1, "name": {"en": "First Sample Conference"}, "event": "sampleconf", "active": false, "is_public": true, "date_from": "2017-12-27T10:00:00Z", "date_to": null, "date_admission": null, "presale_start": null, "presale_end": null, "seating_plan": null, "seat_category_mapping": {}, "location": null, "geo_lat": null, "geo_lon": null, "item_price_overrides": [ { "item": 2, "disabled": false, "available_from": null, "available_until": null, "price": "12.00" } ], "variation_price_overrides": [], "meta_data": {} } ] }
- Query Parameters
page – The page number in case of a multi-page result set, default is 1
active – If set to
true/false, only events with a matching value ofactiveare returned.is_future – If set to
true(false), only events that happen currently or in the future are (not) returned.is_past – If set to
true(false), only events that are over are (not) returned.ends_after – If set to a date and time, only events that happen during of after the given time are returned.
modified_since (datetime) – Only return objects that have changed since the given date. Be careful: This does not allow you to know if a subevent was deleted.
attr[meta_data_key] (array) – By providing the key and value of a meta data attribute, the list of sub-events will only contain the sub-events matching the set criteria. Providing
?attr[Format]=Seminarwould return only those sub-events having set theirFormatmeta data toSeminar,?attr[Format]=only those, that have no value set. Please note that this filter will respect default values set on organizer or event level.with_availability_for – If set to a sales channel identifier, the response will contain a special
best_availability_stateattribute with values of 100 for “tickets available”, values less than 100 for “tickets sold out or reserved”, andnullfor “status unknown”. These values might be served from a cache. This parameter can make the response slow.
- Parameters
organizer – The
slugfield of a valid organizerevent – The
slugfield of the main event
- Status Codes
200 OK – no error
401 Unauthorized – Authentication failure
403 Forbidden – The requested organizer does not exist or you have no permission to view it.
-
POST/api/v1/organizers/(organizer)/events/(event)/subevents/¶ Creates a new subevent.
Permission required: “Can create events”
Example request:
POST /api/v1/organizers/bigevents/events/sampleconf/subevents/ HTTP/1.1 Host: pretix.eu Accept: application/json, text/javascript Content-Type: application/json { "name": {"en": "First Sample Conference"}, "active": false, "is_public": true, "date_from": "2017-12-27T10:00:00Z", "date_to": null, "date_admission": null, "presale_start": null, "presale_end": null, "location": null, "geo_lat": null, "geo_lon": null, "seating_plan": null, "seat_category_mapping": {}, "item_price_overrides": [ { "item": 2, "disabled": false, "available_from": null, "available_until": null, "price": "12.00" } ], "variation_price_overrides": [], "meta_data": {} }
Example response:
HTTP/1.1 201 Created Vary: Accept Content-Type: application/json { "id": 1, "name": {"en": "First Sample Conference"}, "active": false, "is_public": true, "date_from": "2017-12-27T10:00:00Z", "date_to": null, "date_admission": null, "presale_start": null, "presale_end": null, "location": null, "geo_lat": null, "geo_lon": null, "seating_plan": null, "seat_category_mapping": {}, "item_price_overrides": [ { "item": 2, "disabled": false, "available_from": null, "available_until": null, "price": "12.00" } ], "variation_price_overrides": [], "meta_data": {} }
- Parameters
organizer – The
slugfield of a valid organizerevent – The
slugfield of the main event
- Status Codes
201 Created – no error
400 Bad Request – The sub-event could not be created due to invalid submitted data.
401 Unauthorized – Authentication failure
403 Forbidden – The requested organizer does not exist or you have no permission to create this resource.
-
GET/api/v1/organizers/(organizer)/events/(event)/subevents/(id)/¶ Returns information on one sub-event, identified by its ID.
Example request:
GET /api/v1/organizers/bigevents/events/sampleconf/subevents/1/ HTTP/1.1 Host: pretix.eu Accept: application/json, text/javascript
Example response:
HTTP/1.1 200 OK Vary: Accept Content-Type: application/json { "id": 1, "name": {"en": "First Sample Conference"}, "event": "sampleconf", "active": false, "is_public": true, "date_from": "2017-12-27T10:00:00Z", "date_to": null, "date_admission": null, "presale_start": null, "presale_end": null, "location": null, "geo_lat": null, "geo_lon": null, "seating_plan": null, "seat_category_mapping": {}, "item_price_overrides": [ { "item": 2, "disabled": false, "available_from": null, "available_until": null, "price": "12.00" } ], "variation_price_overrides": [], "meta_data": {} }
- Parameters
organizer – The
slugfield of a valid organizerevent – The
slugfield of the main eventid – The
idfield of the sub-event to fetch
- Status Codes
200 OK – no error
401 Unauthorized – Authentication failure
403 Forbidden – The requested organizer/event does not exist or you have no permission to view it.
-
PATCH/api/v1/organizers/(organizer)/events/(event)/subevents/(id)/¶ Updates a sub-event, identified by its ID. You can also use
PUTinstead ofPATCH. WithPUT, you have to provide all fields of the resource, other fields will be reset to default. WithPATCH, you only need to provide the fields that you want to change.Permission required: “Can change event settings”
Example request:
PATCH /api/v1/organizers/bigevents/events/sampleconf/subevents/1/ HTTP/1.1 Host: pretix.eu Accept: application/json, text/javascript Content-Type: application/json { "name": {"en": "New Subevent Name"}, "item_price_overrides": [ { "item": 2, "disabled": false, "available_from": null, "available_until": null, "price": "23.42" } ], }
Example response:
HTTP/1.1 200 OK Vary: Accept Content-Type: application/json { "id": 1, "name": {"en": "New Subevent Name"}, "event": "sampleconf", "active": false, "is_public": true, "date_from": "2017-12-27T10:00:00Z", "date_to": null, "date_admission": null, "presale_start": null, "presale_end": null, "location": null, "geo_lat": null, "geo_lon": null, "seating_plan": null, "seat_category_mapping": {}, "item_price_overrides": [ { "item": 2, "disabled": false, "available_from": null, "available_until": null, "price": "23.42" } ], "variation_price_overrides": [], "meta_data": {} }
- Parameters
organizer – The
slugfield of a valid organizerevent – The
slugfield of the main eventid – The
idfield of the sub-event to update
- Status Codes
200 OK – no error
400 Bad Request – The sub-event could not be created due to invalid submitted data.
401 Unauthorized – Authentication failure
403 Forbidden – The requested organizer/sub-event does not exist or you have no permission to update this resource.
-
DELETE/api/v1/organizers/(organizer)/events/(event)/subevents/(id)/¶ Delete a sub-event. Note that events with orders cannot be deleted to ensure data integrity.
Permission required: “Can change event settings”
Example request:
DELETE /api/v1/organizers/bigevents/events/sampleconf/subevents/1/ HTTP/1.1 Host: pretix.eu Accept: application/json, text/javascript
Example response:
HTTP/1.1 204 No Content Vary: Accept
- Parameters
organizer – The
slugfield of a valid organizerevent – The
slugfield of the main eventid – The
idfield of the sub-event to delete
- Status Codes
204 No Content – no error
401 Unauthorized – Authentication failure
403 Forbidden – The requested organizer/sub-event does not exist or you have no permission to delete this resource.
-
GET/api/v1/organizers/(organizer)/subevents/¶ Returns a list of all sub-events of any event series you have access to within an organizer account.
Example request:
GET /api/v1/organizers/bigevents/subevents/ HTTP/1.1 Host: pretix.eu Accept: application/json, text/javascript
Example response:
HTTP/1.1 200 OK Vary: Accept Content-Type: application/json { "count": 1, "next": null, "previous": null, "results": [ { "id": 1, "name": {"en": "First Sample Conference"}, "event": "sampleconf", "active": false, "is_public": true, "date_from": "2017-12-27T10:00:00Z", "date_to": null, "date_admission": null, "presale_start": null, "presale_end": null, "location": null, "geo_lat": null, "geo_lon": null, "seating_plan": null, "seat_category_mapping": {}, "item_price_overrides": [ { "item": 2, "disabled": false, "available_from": null, "available_until": null, "price": "12.00" } ], "variation_price_overrides": [], "meta_data": {} } ] }
- Query Parameters
page – The page number in case of a multi-page result set, default is 1
active – If set to
true/false, only events with a matching value ofactiveare returned.event__live – If set to
true/false, only events with a matching value ofliveon the parent event are returned.is_future – If set to
true(false), only events that happen currently or in the future are (not) returned.is_past – If set to
true(false), only events that are over are (not) returned.ends_after – If set to a date and time, only events that happen during of after the given time are returned.
sales_channel – If set to a sales channel identifier, the response will only contain subevents from events available on this sales channel.
- Parameters
organizer – The
slugfield of a valid organizerevent – The
slugfield of the event to fetch
- Status Codes
200 OK – no error
401 Unauthorized – Authentication failure
403 Forbidden – The requested organizer does not exist or you have no permission to view it.