Table of Contents |
---|
...
Input can be provided in the form of HTTP GET URL parameters or an HTTP POST/PUT body that is in application/x-www-form-urlencoded
. Most parameters are optional, when this is not the case this is mentioned in the documentation. Dates and times can be specified in one of the following format:
- 'today' or 'tomorrow' for the current or next day at 0:00;
- Unix timestamp format;
- ISO 8601 format (
yyyy-MM-ddTHH:mm:ss±HH:mm
): elements on the right side (time, time zone) are optional; - Legacy format (
YYYY/MM/DD HH:MM
): the time is optional.
Authentication and authorisation
...
The API uses a version numbering scheme and the base URL of the API is: $base_url/api/v$version
. The current API version is version 0. Non-breaking changes (like the addition of extra information or methods) will be done without incrementing the version number. On breaking changes the version number will be increased. Multiple API versions may exist at the same time. Eveoh will try to support older API versions when technically and economically feasible, but users are encouraged to always use the latest API version.
Multiple databases
During a year rollover, multiple databases Multiple datasources with timetabling data may be available (e.g., when retrieving data from multiple years). By specifying a GET parameter d
, it is possible to select a certain database for the request in certain requests. The list of possible databases can be retrieved with the API Documentation call. If no database is specified, the default database will be used, which is usually the most sensible option. In the future, the API will remove the need to specify a database with a request and will transparently query multiple databases when necessary. For older MyTimetable versions (<v2.4) it is necessary to select the right database with every call, if not using the default database.
Resources
/timetabletypes
...
Description: Query all possible timetable types, these types serve as input for the /timetables, /timetable and /timetablefilters calls. See API Documentation for a discussion on the meaning of the types. Currently this call returns . MyTimetable versions before v2.3 return all possible types of the configured backend, the customer may not use all these types. See supported by the back-end, in that case consult Customer-specific API information to find out what types the customer uses.
Parameters: none
Request URL
...
Name | Description | Default value | |||
type (required) | The type of the timetables, e.g. 'module'. | - | |||
limit | The maximum amount of records returned. | 0 | |||
offset | Starting position of the records returned (e.g. offset=5 skips the first 5 records). | 0 | |||
departmentFilter *Filter | Filter results on a specific filter. If the filtername, as returned by the /timetablefilters call is department , the parameter name is departmentFilter . | - | |||
departmentGroupFilter | Filter results on a specific department group. | - | |||
posFilter | Filter results on a specific posq | Search string to filter results on (available from MyTimetable v2.3+). | - | zoneFilter | Filter results on a specific zone. |
-d | Datasource to search in. Highest priority datasource by default (usually the most current database). | Highest priority datasource |
Example request URL
Code Block | ||
---|---|---|
| ||
$base_url/api/v0/timetables?type=module |
...
Name | Description | Default value |
type (required) | The type of the timetables to retrieve the filters for. | - |
departmentFilter *Filter | Filter results on a specific filter. If the filtername, as returned by the /timetablefilters call is department , the parameter name is departmentFilter . | - |
departmentGroupFilter | Filter results on a specific department group. | - |
zoneFilter | Filter results on a specific zone. | - |
d | Datasource to search in. Highest priority datasource by default (usually the most current database). | Highest priority datasource |
Example request URL
Code Block | ||
---|---|---|
| ||
$base_url/api/v0/timetablefilters?type=pos |
...
Description: Retrieves all subscriptions for the current user (as identified by the OAuth token or elevated API token). For older MyTimetable versions (pre-2.4) only the subscriptions of the currently selected datasource are returned. Newer MyTimetable versions return all subscriptions, use the database
value in the returned subscriptions to determine which datasource a certain subscription belongs to.
Parameters:
Name | Description | Default value |
type | Specifies the type of the subscriptions to include, can be specified multiple times, useful to exclude zone and location subscriptions when requesting a personal list of subscriptions. If not specified all subscriptions will be included in the result. | - |
...
Description: Query the available databasesdatasources, see API Documentation for more information.
...