Reservations that have been created can be accessed externally from the MCS interface using a parameter-driven API URL, provided the necessary security feature (auto-login) is enabled.
https://<your-mcs-server>/myspeed/admin/rmolist
Using invalid parameter keys or invalid parameter values will result in an error code. These are explained below.
Key | Format | Required | Default Value | Description |
---|---|---|---|---|
ofmt | json | Yes | None | This key=value must be included in the request for it to work. For example, https://<your-mcs-server>/myspeed/admin/rmolist?ofmt=json |
matchswo | string | Yes* | None | The wildcard character * is accepted. This key is used to filter by the work order name assigned to the reservation. |
matchaid | int | Yes* | None | The wildcard character * is accepted. This key is used to filter by the account ID assigned to the reservation. |
matchgrp | string | Yes* | None | The wildcard character * is accepted. This key is used to filter by the group name assigned to the reservation. |
matchusr | string | Yes* | None | The wildcard character * is accepted. This key is used to filter by the username that created the reservation. |
matchuid | string | Yes* | None | The wildcard character * is accepted. This key is used to filter by UDID. A UDID is the unique string associated with a satellite when it is running. When filtering using this option the request will return any reservation that has been run by a satellite matching the UDID pattern specified here. |
* At least one of the filter parameters must be included on the URL API request. Failure to do so will result in an error.
The example below will return every reservation as the value of matchswo is *.
https://<your-mcs-server>/myspeed/admin/rmolist?ofmt=json&matchswo=*
The example below will return all reservations created by user "admin" with a work order name containing "newyork".
https://<your-mcs-server>/myspeed/admin/rmolist?ofmt=json&matchswo=*newyork*&matchusr=admin
See the sections below for descriptions of error codes and the format of the response.
The format of a successful response is an array, an example of which can be found below.
// [response code, json]
[200, {
"A5433GD6": {
"swo": "swoname",
"aid": "-"
//etc etc
}
}]
If no reservations are found for the parameters provided, the JSON object in the array will be empty. An example of this is below.
// [response code, json]
[200, {}]
The JSON array lists each reservation by alphanumeric key. Each key contains the parameters and values for that reservation. These are explained below.
Key | Description |
---|---|
swo | Work Order. The work order that is assigned to the reservation. |
rsn | Session ID. The session ID set for the reservation. Note, this can be overridden on a case-by-case basis when downloading the reservation. |
grp | Group Name. Specify the satellite group where the reservation will appear when viewing the list of satellites in MCS. If no group name is provided, the default "background" group will be used. If the specified group name doesn't exist, it will be created automatically. |
ct | Creation Time. The date and time the reservation was created as a UNIX timestamp in milliseconds since January 1, 1970 |
usr | Username. The username that was used to create the reservation. |
du | Distributions Used. How many times the reservation has been run on a unique system. |
dlc | Download Count. How many times the reservation has been downloaded. |
itl | Iteration limit. The number of times a single client can run the reservation. |
dtl | Distribution limit. The number of unique clients the reservation can be run on. |
dll | Download limit. The number of downloads allowed for the reservation. -1 = no limit. |
dti | Download time range. Restricts the time window that a reservation can be downloaded. |
rtr | Run-time time range. Restricts the time window that a reservation can be run. |
rir | Run-time IP(s). An IP, IP range, or CIDR if specified. Designed to restrict the running of work orders by IP. |
dir | Download IP(s). An IP, IP range, or CIDR if specified. Designed to restrict downloads by IP. |
aid | Account ID. If there is no account ID this field will be a hyphen. If an account ID exists it will be a 9-19 digit number. |
exp | Expiry. A value of -1 indicates the reservation never expires. Any other value represents the expiration as a UNIX timestamp in milliseconds since January 1, 1970. If the current UNIX timestamp exceeds this value, the reservation has expired. |
sps | Permit State. 0 = Wait and 1 = Permit. |
If an issue occurs during the retrieve reservations request—such as an unexpected parameter or invalid value—an error code from the list below will be returned. Additionally, security measures protect against code injection attempts, which, if detected, will result in a "403 Forbidden" response.
The format of an error response is an array, an example of which can be found below.
// [response code, error string]
[410, 'Error message']
Error codes will be detailed below when available.
Creating a reservation is reserved for users of MCS with admin or rmo privilege.
When utilizing the API URL from remote applications, the auto-login feature must be enabled. This feature automatically treats connections from specified IP addresses as authenticated, assigning them a defined privilege level. For enhanced security and control, it's recommended that reservation requests from external sources originate from a single IP address. You can configure the auto-login feature within MCS at the URL below.
https://<your-mcs-server>/myspeed/admin/serversecurity