Flat event report
This endpoint does not belong to the priority lane. Do not use it within your ticket sales flow.
The flat report returns all bookable objects of an event as a simple array, without any grouping.
GET /reports/events/{eventKey}
GET /reports/events/{eventKey}.csv
The .csv variant returns the same data in CSV format, which is convenient for export or analysis in spreadsheet tools.
Objects with objectType generalAdmission are areas. All areas have an areaType, which tells you how they are booked:
generalAdmission: places within the area are booked individually. The area stays available as long as there's capacity left.fixedOccupancy: the area is booked as a whole, for its full capacity.variableOccupancy: the area is booked as a whole, but the number of occupied places is chosen by the ticket buyer (betweenminOccupancyandmaxOccupancy).
Limiting the scope of season reports
By default, reports for seasons and partial seasons include objects that have been booked directly on events in the season as well as at the season level. The same is true for reports of events in a season - they contain both bookings at the season level and objects booked directly on them.
If you want a season report to only include objects booked at the season level, you can add a query parameter seasonBookingsPropagated to limit the scope,
e.g. /reports/events/season34/byStatus/booked?seasonBookingsPropagated=false. This can be applied to any season, partial season, or an event in a season.
In an example in which a season has 400 bookings at the top-level season level, and 50 bookings directly on one of the events, the report would change depending
on if you use the seasonBookingsPropagated query parameter.
| Value | Target | Number of bookings |
|---|---|---|
| Omitted | Top-level season | 450 |
| Omitted | Event in season | 450 |
false | Top-level season | 400 |
false | Event in season | 50 |
- Text
- PHP
- C#
- Java
- Python
- Ruby
- Javascript
- Go
GET https://api-{region}.seatsio.net/reports/events/{eventKey}/byAvailabilityReason?seasonBookingsPropagated=false
$withoutPropagation = $this->seatsioClient->eventReports->withSeasonBookingsNotPropagated();
$withoutPropagation->byAvailabilityReason("season34");
$withoutPropagation->byAvailabilityReason("season34", "available");
$withoutPropagation->byAvailabilityReason("eventInSeason34", "booked");
var withoutPropagation = Client.EventReports.WithSeasonBookingsNotPropagated();
await withoutPropagation.ByAvailabilityReasonAsync("season34");
await withoutPropagation.ByAvailabilityReasonAsync("season34", "available");
await withoutPropagation.ByAvailabilityReasonAsync("eventInSeason34", "booked");
EventReports withoutPropagation = client.eventReports.withSeasonBookingsNotPropagated();
withoutPropagation.byAvailabilityReason("season34");
withoutPropagation.byAvailabilityReason("season34", "available");
withoutPropagation.byAvailabilityReason("eventInSeason34", "booked");
without_propagation = self.client.events.reports.with_season_bookings_not_propagated()
without_propagation.by_availability_reason("season34")
without_propagation.by_availability_reason("season34", status="available")
without_propagation.by_availability_reason("eventInSeason34", status="booked")
without_propagation = @seatsio.event_reports.with_season_bookings_not_propagated
without_propagation.by_availability_reason("season34")
without_propagation.by_availability_reason("season34", "available")
without_propagation.by_availability_reason("eventInSeason34", "booked")
const withoutPropagation = client.eventReports.withSeasonBookingsNotPropagated()
await withoutPropagation.byAvailabilityReason('season34');
await withoutPropagation.byAvailabilityReason('season34', 'available');
await withoutPropagation.byAvailabilityReason('eventInSeason34', 'booked');
withoutPropagation := client.EventReports.WithSeasonBookingsNotPropagated()
report, err := withoutPropagation.ByAvailabilityReason("season34")
items, err := withoutPropagation.BySpecificAvailabilityReason("season34", reports.Available)
items, err := withoutPropagation.BySpecificAvailabilityReason("eventInSeason34", reports.Booked)
Creating reports
- Text
- PHP
- C#
- Java
- Python
- Ruby
- Javascript
- Go
GET https://api-{region}.seatsio.net/reports/events/{eventKey}
GET https://api-{region}.seatsio.net/reports/events/{eventKey}.csv
$seatsioClient->eventReports->flatList("event34");
$seatsioClient->eventReports->flatListCsv("event34");
await Client.EventReports.FlatListAsync("event34");
await Client.EventReports.FlatListCsvAsync("event34");
client.eventReports.flatList("event34");
client.eventReports.flatListCsv("event34");
client.events.reports.flat_list("event34")
client.events.reports.flat_list_csv("event34")
client.event_reports.flat_list("event34")
client.event_reports.flat_list_csv("event34")
await client.eventReports.flatList('event34');
await client.eventReports.flatListCsv('event34');
report, err := client.EventReports.FlatList("event34")
csv, err := client.EventReports.FlatListCsv("event34")
curl https://api-{region}.seatsio.net/reports/events/event34 -u aSecretKey:
[
{
"label": "C-11",
"labels": {
"own": { "label": "11", "type": "seat" },
"parent": { "label": "Row C", "type": "row" },
"section": "Section 1"
},
"ids": {
"own": "11",
"parent": "C"
},
"status": "free",
"categoryLabel": "Ground Floor",
"categoryKey": "4",
"entrance": "Main entrance",
"ticketType": "adult",
"section": "Section 1",
"orderId": "order1",
"forSale": true,
"objectType": "seat",
"isAccessible": true,
"isCompanionSeat": false,
"hasLiftUpArmrests": false,
"isHearingImpaired": false,
"isSemiAmbulatorySeat": false,
"hasSignLanguageInterpretation": false,
"isPlusSize": false,
"hasRestrictedView": false,
"leftNeighbour": "C-10",
"rightNeighbour": "C-12",
"isAvailable": true,
"availabilityReason": "available",
"channel": "channel1",
"distanceToFocalPoint": 84.3242,
"seasonStatusOverriddenQuantity": 0,
"floor": {
"name": "1",
"displayName": "Ground Floor"
}
},
{
"label": "GA",
"labels": {
"own": { "label": "General Admission 1", "type": "generalAdmission" }
},
"ids": {
"own": "GA"
},
"status": "free",
"categoryLabel": "Standing",
"categoryKey": 6,
"capacity": 100,
"numBooked": 34,
"numHeld": 6,
"numFree": 60,
"forSale": true,
"objectType": "generalAdmission",
"areaType": "variableOccupancy",
"isAvailable": true,
"availabilityReason": "available",
"channel": "channel1",
"distanceToFocalPoint": 82.832,
"variableOccupancy": true,
"minOccupancy": 5,
"maxOccupancy": 100,
"seasonStatusOverriddenQuantity": 0,
"numNotForSale": 0,
"floor": {
"name": "1",
"displayName": "Ground Floor"
}
},
{
"label": "C-45",
"labels": {
"own": { "label": "45", "type": "seat" },
"parent": { "label": "Row C", "type": "row" }
},
"ids": {
"own": "45",
"parent": "C"
},
"status": "booked",
"categoryLabel": "Balcony",
"categoryKey": "5",
"forSale": true,
"objectType": "seat",
"isAccessible": false,
"isCompanionSeat": false,
"hasLiftUpArmrests": false,
"isHearingImpaired": false,
"isSemiAmbulatorySeat": false,
"hasSignLanguageInterpretation": false,
"isPlusSize": false,
"hasRestrictedView": false,
"leftNeighbour": "C-46",
"rightNeighbour": "C-44",
"isAvailable": false,
"availabilityReason": "booked",
"channel": "channel1",
"distanceToFocalPoint": 10.3245,
"seasonStatusOverriddenQuantity": 0,
"floor": {
"name": "1",
"displayName": "Ground Floor"
}
}
]
Each object in the array has the same fields as in the detailed reports.