Available from Totara v20.2
API reservations allow an external service to hold seats in a seminar on behalf of learners during a transaction — for example, while an ecommerce payment is being processed. This prevents seats from becoming unavailable before a booking is confirmed.
Reservations are made by an API client user. When enabled, that user can reserve, allocate, and release seats via the GraphQL API.
Prerequisites
Before enabling API reservations on a seminar, the following must be in place:
An API client has been configured at Quick-access menu > Development > API
The API client user has been assigned the required capabilities on the seminar's course module context (see Capabilities below)
Enabling API reservations
Navigate to the seminar activity and select Edit settings.
Expand the API Reservations section.

Set Enable API reservations to Yes.
Optionally, set a value for Maximum reservations — this limits the number of seats the API client user can hold at one time. Set to
0for no limit.Select Save and display.
Maximum reservations
The Maximum reservations setting controls how many seats a single API client user can hold simultaneously across all reservations on this seminar. This limit applies per API client user, not per session or event.
Setting this to 0 applies no limit.
Capabilities
The API client user requires the following capabilities assigned at the seminar's course module context.
Capability | Purpose |
|---|---|
| Reserve, release, query, and allocate reservations |
| Access reservations created by other API users |
Capabilities are assigned to system roles via Quick-access menu > Permissions > Assign system roles.
Related content
Why not visit the Totara Academy for our latest course on Seminar Management in Totara Learn. Here you can learn more about how to use seminars, see best practice, and give it a go yourself.
Join the Totara Community for more resources to help you get the most out of Totara.
© Copyright 2026 Totara Learning Solutions. All rights reserved.