Summary event reports
Summary reports are a summarised version of the detailed event reports. They indicate how many objects are in a certain status, category or section.
They also allow you to drill down into the numbers: how many booked seats are there in category A? how many free seats are left in section B?
If your account was created before July 12th 2022, the summary reports count tables that are bookable as a whole as 1 object. So if your event has 5 tables that are bookable as a whole, their count in the reports is 5.
For newer accounts, the reports contain the sum of the seats at the tables. 5 tables of 6 seats count as 30. Get in touch if you would like to enable that behaviour on an old account.
Summary report by availability reason
This report allows you to figure out how many objects are still available, and how many are not - including the reason why they're not available.
That reason can be:
available
(object is available, i.e. it's selectable for ticket buyers)booked
(object is booked)reservedByToken
(object is held)- a custom status (object is assigned a custom status)
not_for_sale
(object is marked as not for sale)
Objects that have a non-free status AND are marked as not for sale get that custom status as availability reason (instead of not_for_sale
).
- Text
- PHP
- C#
- Java
- Ruby
- Python
- Javascript
- Go
GET https://api-{region}.seatsio.net/reports/events/{eventKey}/byAvailabilityReason/summary
$seatsioClient->eventReports->summaryByAvailabilityReason("event34");
await Client.EventReports.SummaryByAvailabilityReasonAsync("event34");
client.eventReports.summaryByAvailabilityReason("event34");
client.event_reports.summary_by_availability_reason("event34")
client.events.reports.summary_by_availability_reason("event34")
await client.eventReports.summaryByAvailabilityReason('eventKey');
report, err := client.EventReports.SummaryByAvailabilityReason("eventKey")
curl https://api-{region}.seatsio.net/reports/events/event34/byAvailabilityReason/summary -u aSecretKey:
{
"available": {
"count": 34,
"bySection": {
"Floor": 12,
"Balcony": 22
},
"byCategoryLabel": {
"premium": 10,
"standard": 24
},
"byCategoryKey": {
"1": 10,
"2": 24
},
"byStatus": {
"free": 34
},
"byChannel": {
"NO_CHANNEL": 34
},
"byAvailability": {
"available": 34
}
},
"booked": {
"count": 80,
"bySection": {
"Balcony": 80
},
"byCategoryLabel": {
"premium": 2,
"standard": 78
},
"byCategoryKey": {
"1": 2,
"2": 78
},
"byStatus": {
"booked": 80
},
"byChannel": {
"NO_CHANNEL": 80
},
"byAvailability": {
"not_available": 80
}
},
"reservedByToken": {
"count": 0,
"bySection": {},
"byCategoryLabel": {},
"byCategoryKey": {},
"byStatus": {},
"byChannel": {},
"byAvailability": {}
},
"not_for_sale": {
"count": 0,
"bySection": {},
"byCategoryLabel": {},
"byCategoryKey": {},
"byStatus": {},
"byChannel": {},
"byAvailability": {}
}
}
Summary report by availability
This report allows you to distinguish between available and non-available objects. An object is considered available if:
- its status equals 'free'
- it's for sale
Available objects can be found under the available
key, non-available objects under not_available
.
- Text
- PHP
- C#
- Java
- Ruby
- Python
- Javascript
- Go
GET https://api-{region}.seatsio.net/reports/events/{eventKey}/byAvailability/summary
$seatsioClient->eventReports->summaryByAvailability("event34");
await Client.EventReports.SummaryByAvailabilityAsync("event34");
client.eventReports.summaryByAvailability("event34");
client.event_reports.summary_by_availability("event34")
client.events.reports.summary_by_availability("event34")
await client.eventReports.summaryByAvailability('eventKey');
report, err := client.EventReports.SummaryByAvailability("eventKey")
curl https://api-{region}.seatsio.net/reports/events/event34/byAvailability/summary -u aSecretKey:
{
"available": {
"count": 34,
"bySection": {
"Floor": 12,
"Balcony": 22
},
"byCategoryLabel": {
"premium": 10,
"standard": 24
},
"byCategoryKey": {
"1": 10,
"2": 24
},
"byStatus": {
"free": 34
},
"byChannel": {
"NO_CHANNEL": 34
}
},
"not_available": {
"count": 80,
"bySection": {
"Balcony": 80
},
"byCategoryLabel": {
"premium": 2,
"standard": 78
},
"byCategoryKey": {
"1": 2,
"2": 78
},
"byStatus": {
"booked": 80
},
"byChannel": {
"NO_CHANNEL": 80
}
}
}
Summary report by status
Most likely you'll want to use the summary report by availability reason instead of the one by status.
The availability reason gives detailed info on why an object is not available: either because it has a non-free status, or because it's not for sale. In the report by status, objects that are not for sale are considered free
(since technically that is their status).
- Text
- PHP
- C#
- Java
- Python
- Ruby
- Javascript
- Go
GET https://api-{region}.seatsio.net/reports/events/{eventKey}/byStatus/summary
$seatsioClient->eventReports->summaryByStatus("event34");
await Client.EventReports.SummaryByStatusAsync("event34");
client.eventReports.summaryByStatus("event34");
client.events.reports.summary_by_status("event34")
client.event_reports.summary_by_status("event34")
await client.eventReports.summaryByStatus('eventKey');
report, err := client.EventReports.SummaryByStatus("eventKey")
curl https://api-{region}.seatsio.net/reports/events/event34/byStatus/summary -u aSecretKey:
Example response
{
"booked": {
"count": 34,
"bySection": {
"Floor": 12,
"Balcony": 22
},
"byCategoryLabel": {
"premium": 10,
"standard": 24
},
"byCategoryKey": {
"1": 10,
"2": 24
},
"byAvailability": {
"not_available": 34
},
"byChannel": {
"NO_CHANNEL": 34
}
},
"free": {
"count": 80,
"bySection": {
"Balcony": 80
},
"byCategoryLabel": {
"premium": 2,
"standard": 78
},
"byCategoryKey": {
"1": 2,
"2": 78
},
"byAvailability": {
"available": 80
},
"byChannel": {
"NO_CHANNEL": 80
}
}
}
Summary report by category label
- Text
- PHP
- C#
- Java
- Python
- Ruby
- Javascript
- Go
GET https://api-{region}.seatsio.net/reports/events/{eventKey}/byCategoryLabel/summary
$seatsioClient->eventReports->summaryByCategoryLabel("event34");
await Client.EventReports.SummaryByCategoryLabelAsync("event34");
client.eventReports.summaryByCategoryLabel("event34");
client.events.reports.summary_by_category_label("event34")
client.event_reports.summary_by_category_label("event34")
await client.eventReports.summaryByCategoryLabel('eventKey');
report, err := client.EventReports.SummaryByCategoryLabel("eventKey")
curl https://api-{region}.seatsio.net/reports/events/event34/byCategoryLabel/summary -u aSecretKey:
{
"premium": {
"count": 34,
"bySection": {
"Floor": 12,
"Balcony": 22
},
"byStatus": {
"free": 10,
"booked": 24
},
"byAvailability": {
"available": 10
"not_available": 24
},
"byChannel": {
"NO_CHANNEL": 34
}
},
"standard": {
"count": 80,
"bySection": {
"Balcony": 80
},
"byStatus": {
"free": 2,
"booked": 78
},
"byAvailability": {
"available": 2
"not_available": 78
},
"byChannel": {
"NO_CHANNEL": 80
}
},
"NO_CATEGORY": {
"count": 0,
"bySection": {},
"byStatus": {},
"byAvailability": {},
"byChannel": {}
}
}
Summary report by category key
- Text
- PHP
- C#
- Java
- Python
- Ruby
- Javascript
- Go
GET https://api-{region}.seatsio.net/reports/events/{eventKey}/byCategoryKey/summary
$seatsioClient->eventReports->summaryByCategoryKey("event34");
await Client.EventReports.SummaryByCategoryKeyAsync("event34");
client.eventReports.summaryByCategoryKey("event34");
client.events.reports.summary_by_category_key("event34")
client.event_reports.summary_by_category_key("event34")
await client.eventReports.summaryByCategoryKey('eventKey');
report, err := client.EventReports.SummaryByCategoryKey("eventKey")
curl https://api-{region}.seatsio.net/reports/events/event34/byCategoryKey/summary -u aSecretKey:
{
"1": {
"count": 34,
"bySection": {
"Floor": 12,
"Balcony": 22
},
"byStatus": {
"free": 10,
"booked": 24
},
"byAvailability": {
"available": 10,
"not_available": 24
},
"byChannel": {
"NO_CHANNEL": 34
}
},
"2": {
"count": 80,
"bySection": {
"Balcony": 80
},
"byStatus": {
"free": 2,
"booked": 78
},
"byAvailability": {
"available": 2,
"not_available": 78
},
"byChannel": {
"NO_CHANNEL": 80
}
},
"NO_CATEGORY": {
"count": 0,
"bySection": {},
"byStatus": {},
"byChannel": {}
}
}
Summary report by section
- Text
- PHP
- C#
- Java
- Python
- Ruby
- Javascript
- Go
GET https://api-{region}.seatsio.net/reports/events/{eventKey}/bySection/summary
$seatsioClient->eventReports->summaryBySection("event34");
await Client.EventReports.SummaryBySectionAsync("event34");
client.eventReports.summaryBySection("event34");
client.events.reports.summary_by_section("event34")
client.event_reports.summary_by_section("event34")
await client.eventReports.summaryBySection('eventKey');
report, err := client.EventReports.SummaryBySection("eventKey")
curl https://api-{region}.seatsio.net/reports/events/event34/bySection/summary -u aSecretKey:
{
"Floor": {
"count": 34,
"byStatus": {
"booked": 12,
"free": 22
},
"byCategoryLabel": {
"premium": 10,
"standard": 24
},
"byCategoryKey": {
"1": 10,
"2": 24
},
"byAvailability": {
"available": 22,
"not_available": 12
},
"byChannel": {
"NO_CHANNEL": 34
}
},
"Balcony": {
"count": 80,
"byStatus": {
"free": 80
},
"byCategoryLabel": {
"premium": 2,
"standard": 78
},
"byCategoryKey": {
"1": 2,
"2": 78
},
"byAvailability": {
"available": 80
},
"byChannel": {
"NO_CHANNEL": 80
}
},
"NO_SECTION": {
"count": 0,
"byStatus": {},
"byCategoryLabel": {},
"byCategoryKey": {},
"byChannel": {}
}
}
Summary report by channel
- Text
- PHP
- C#
- Java
- Python
- Ruby
- Javascript
- Go
GET https://api-{region}.seatsio.net/reports/events/{eventKey}/byChannel/summary
$seatsioClient->eventReports->summaryByChannel("event34");
await Client.EventReports.SummaryByChannelAsync("event34");
client.eventReports.summaryByChannel("event34");
client.events.reports.summary_by_channel("event34")
client.event_reports.summary_by_channel("event34")
await client.eventReports.summaryByChannel('eventKey');
report, err := client.EventReports.SummaryByChannel("eventKey")
curl https://api-{region}.seatsio.net/reports/events/event34/byChannel/summary -u aSecretKey:
{
"channel1": {
"count": 34,
"byStatus": {
"booked": 12,
"free": 22
},
"byCategoryLabel": {
"premium": 10,
"standard": 24
},
"byCategoryKey": {
"1": 10,
"2": 24
},
"byAvailability": {
"available": 22,
"not_available": 12
}
},
"channel2": {
"count": 80,
"byStatus": {
"free": 80
},
"byCategoryLabel": {
"premium": 2,
"standard": 78
},
"byCategoryKey": {
"1": 2,
"2": 78
},
"byAvailability": {
"available": 80
}
},
"NO_CHANNEL": {
"count": 0,
"byStatus": {},
"byCategoryLabel": {},
"byCategoryKey": {}
}
}
Summary report by object type
- Text
- PHP
- C#
- Java
- Python
- Ruby
- Javascript
- Go
GET https://api-{region}.seatsio.net/reports/events/{eventKey}/byObjectType/summary
$seatsioClient->eventReports->summaryByObjectType("event34");
await Client.EventReports.SummaryByObjectTypeAsync("event34");
client.eventReports.summaryByObjectType("event34");
client.events.reports.summary_by_object_type("event34")
client.event_reports.summary_by_object_type("event34")
await client.eventReports.summaryByObjectType('eventKey');
report, err := client.EventReports.SummaryByObjectType("eventKey")
curl https://api-{region}.seatsio.net/reports/events/event34/byObjectType/summary -u aSecretKey:
Example response
{
"seat": {
"count": 34,
"bySection": {
"Floor": 12,
"Balcony": 22
},
"byCategoryLabel": {
"premium": 10,
"standard": 24
},
"byCategoryKey": {
"1": 10,
"2": 24
},
"byAvailability": {
"not_available": 34
},
"byChannel": {
"NO_CHANNEL": 34
},
"byStatus": {
"free": 34
}
},
"generalAdmission": {
"count": 80,
"bySection": {
"Balcony": 80
},
"byCategoryLabel": {
"premium": 2,
"standard": 78
},
"byCategoryKey": {
"1": 2,
"2": 78
},
"byAvailability": {
"available": 80
},
"byChannel": {
"NO_CHANNEL": 80
},
"byStatus": {
"free": 80
}
},
"booth": {
"count": 80,
"bySection": {
"Balcony": 80
},
"byCategoryLabel": {
"premium": 2,
"standard": 78
},
"byCategoryKey": {
"1": 2,
"2": 78
},
"byAvailability": {
"available": 80
},
"byChannel": {
"NO_CHANNEL": 80
},
"byStatus": {
"free": 80
}
},
"table": {
"count": 80,
"bySection": {
"Balcony": 80
},
"byCategoryLabel": {
"premium": 2,
"standard": 78
},
"byCategoryKey": {
"1": 2,
"2": 78
},
"byAvailability": {
"available": 80
},
"byChannel": {
"NO_CHANNEL": 80
},
"byStatus": {
"free": 80
}
}
}
Summary report by zone
- Text
- PHP
- C#
- Java
- Python
- Ruby
- Javascript
- Go
GET https://api-{region}.seatsio.net/reports/events/{eventKey}/byZone/summary
$seatsioClient->eventReports->summaryByZone("event34");
await Client.EventReports.SummaryByZoneAsync("event34");
client.eventReports.summaryByZone("event34");
client.events.reports.summary_by_zone("event34")
client.event_reports.summary_by_zone("event34")
await client.eventReports.summaryByZone('eventKey');
report, err := client.EventReports.SummaryByZone("eventKey")
curl https://api-{region}.seatsio.net/reports/events/event34/byZone/summary -u aSecretKey:
{
"Zone 1": {
"count": 34,
"byStatus": {
"booked": 12,
"free": 22
},
"byCategoryLabel": {
"premium": 10,
"standard": 24
},
"byCategoryKey": {
"1": 10,
"2": 24
},
"byAvailability": {
"available": 22,
"not_available": 12
},
"byChannel": {
"NO_CHANNEL": 34
}
},
"Zone 2": {
"count": 80,
"byStatus": {
"free": 80
},
"byCategoryLabel": {
"premium": 2,
"standard": 78
},
"byCategoryKey": {
"1": 2,
"2": 78
},
"byAvailability": {
"available": 80
},
"byChannel": {
"NO_CHANNEL": 80
}
},
"NO_ZONE": {
"count": 0,
"byStatus": {},
"byCategoryLabel": {},
"byCategoryKey": {},
"byChannel": {}
}
}