General admission areas
This endpoint belongs to the priority lane.
To book general admission places (let's say 5), you can either:
- pass in the label of the general admission area 5 times
- or pass in the label of the general admission area and a quantity (e.g. 5)
All GA places passed in to this API will be considered as "used seats" for pricing purposes.
- Text
- PHP
- C#
- Java
- Python
- Ruby
- Javascript
- Go
POST https://api-{region}.seatsio.net/events/{eventKey}/actions/change-object-status
POST https://api-{region}.seatsio.net/events/{eventKey}/actions/book
POST https://api-{region}.seatsio.net/events/{eventKey}/actions/hold
POST https://api-{region}.seatsio.net/events/{eventKey}/actions/release
$seatsioClient->events->changeObjectStatus("event1", [["objectId" => "GeneralAdmission1", "quantity" => 3]], "booked");
await Client.Events.ChangeObjectStatusAsync("event1", new [] { new ObjectProperties("GeneralAdmission1", 3") }, "booked");
client.events.changeObjectStatus("event1", List.of(new ObjectProperties("GeneralAdmission1", 3)), "booked");
client.events.change_object_status("event1", [ObjectProperties("GeneralAdmission1", quantity=3)], status="booked")
props = {:objectId => 'A-1', :quantity => 3}
client.events.change_object_status('event1', [props], 'booked')
await client.events.changeObjectStatus('eventKey', {'objectId' : 'GeneralAdmission1', 'quantity' : 3} , 'booked');
// variant 1
client.Events.ChangeObjectStatus([]string{"eventKey"}, string[]{"GA1", "GA1", "GA1"}, 'booked');
// variant 2
ga := events.ObjectProperties{ObjectId: "GA1", Quantity: 3}
objects, err := client.Events.ChangeObjectStatusWithOptions(&events.StatusChangeParams{
Events: []string{"eventKey"},
StatusChanges: events.StatusChanges{
Status: 'booked',
Objects: []events.ObjectProperties{ga},
},
})
Request without quantity
{
"objects": ["GA1", "GA1", "GA1", "GA1", "GA1"],
"status": "booked"
}
Request with quantity
{
"objects": [{"objectId": "GA1", "quantity": 5}],
"status": "booked"
}
Temporarily holding places in a GA area
Holds for GA areas work in the same way as regular objects. Have a look at our documentation for more details.
Custom statuses
It's technically possible to use custom statuses on areas:
{
"objects": [{"objectId": "GA1", "quantity": 5}],
"status": "reserved" // or any other custom status
}
But Seats.io does not keep track of the number of places per status. There's just one counter for the total number of non-free places in an area. We don't know how many places are in a custom status such as "reserved", and how many are booked. We just know the total of reserved and booked places.
That means you don't need to do anything to change the status from a custom status to booked. Our counter already indicates the correct number of non-free places.
If you were to first mark 5 places as "reserved", and then book those places, 10 places would be non-free (which is not what you want).