Download OpenAPI specification:Download
The ExtremeGuest API allows developers to programmatically create, access, and manage guest users, devices, sites, customers, and access points in a simple and secure manner. It is based on RESTful principles and uses standard HTTP methods for requests and responses. API request and response bodies are formatted in JavaScript Object Notation (JSON).
You can use any language or library that can submit REST API requests and process JSON to query the ExtremeGuest API. Examples of languages and libraries that can build REST clients include:
You can access the REST API Development Center via the ExtremeGuest Graphical User Interface (GUI). Go to Operations > REST API
in the GUI to test out API calls. You can also use tools like Postman, an easy-to-use Chrome extension for making HTTP requests.
Note: To submit API calls and make configuration changes through the REST API, your RESTful API consuming program needs to have logged in using full Administrator credentials.
The ExtremeGuest API supports the HTTP Bearer Authentication scheme in conjuntion with the OAuth 2.0 protocol to provide secure authorized access to the API. OAuth is an authorization framework that enables web, mobile, and desktop applications to access protected resources.
To begin, pass your login credentials within a POST request to the /v1/oauth2/token
endpoint with the following JSON data and structure:
{
"grantType": "password",
"userId": "string",
"password": "string"
}
In exchange for these credentials the ExtremeGuest authorization server issues tokens called bearer tokens that you need to include in the Authorization header when making subsequent REST API calls. Below is a sample response to the token request:
{
"access_token":"OWtsSajgOvHo7TOQV4nrQdMWp1bW8TZG",
"token_type":"Bearer",
"idle_timeout":0,
"twoFactorAuthenticationRequired":false,
"resetPassword":false,
"aclTemplate":{},
"expires_in":86400
}
Note: Access tokens have a finite lifetime. The expires_in
field in the response indicates the lifetime, in seconds, of the access token. For example, a value of 3600 indicates that the access token
expires in one hour from the time the response was generated. The API endpoint issues a HTTP 401 Unauthorized status code when it detects an expired token.
To construct a REST API request, combine the following components:
Component | Description |
---|---|
The HTTP method |
|
The base URL of the API | https://{IP_Address} , where {IP_Address} is the IPv4 or IPv6 address of the server that hosts the on-premise ExtremeGuest installation. |
The URI to the resource | The resource to create, update, query, or delete. For example, /v1/guestdevices . |
Path parameters | These variables are part of the full URL path and are used to point to a specific resource within a collection. For example, /v1/guestUsers/{guestUserId} , where {guestUserId} is the path parameter and is substituted with an actual value when making the API call. |
Query string parameters | For most REST GET calls, you can specify one or more optional query parameters on the request URI to filter, limit the size of, and sort the data in an API response. Query string parameters appear after a question mark (?) in the endpoint. Each parameter is listed one right after the other with an ampersand (&) separating them. The order of the query string parameters does not matter. |
HTTP request headers | The following HTTP headers are supported:
|
JSON request body | Required for most POST and PUT requests. |
When you POST or PUT data to the REST API server, set the Content-Type header to application/json
. It can also be useful to set the following request headers:
accept: application/json
accept-encoding: gzip,deflate,br
accept-language: en-US,en;q=0.8,und;q=0.6
The ExtremeGuest REST API returns standard HTTP response codes in addition to JSON-based error messages in the response body to help you identify the source of a problem:
HTTP Code | Description |
---|---|
200 OK | The request was successful |
201 Created | The resource was created successfully |
204 No Content | Success with no response body |
400 Bad Request | The operation failed because the request is syntactically incorrect or violated schema |
401 Unauthorized | The authentication credentials are invalid or the user is not authorized to use the API |
404 Not Found | The server did not find the specified resource that matches the request URL |
405 Method Not Allowed | The API does not support the requested HTTP method |
A valid RequestTokenElement object containing the manadatory properties for administrator authentication and authorization
grantType required | string [ 8 .. 16 ] characters Default: "password" A non-empty, valid string with the default value of password |
userId required | string [ 1 .. 64 ] characters Username for the account |
scope | string <= 128 characters Scope of the access token. This field is not currently used. |
password required | string [ 1 .. 64 ] characters Password for the above user account. |
Access token was created successfully
ExtremeGuest API Server URL
Configure and manage guest users. Operations supported by this resource correspond to managing guest users through the ExtremeGuest Web Admin GUI.
A valid GuestUserElement object with the attributes to be created
firstName required | string <= 64 characters First name of the guest user. |
lastName required | string <= 64 characters Last name of the guest user. |
string [ 6 .. 128 ] characters Email address of the guest user. The email address can not be reused for another guest user. At least one field must be provided among userId, email, and mobileNumber. This property can not be modified after creation. | |
mobileNumber | string [ 10 .. 64 ] characters Mobile number of the guest user. The string must contain numbers only, including country code. The mobile number can not be reused for another guest user. At least one field must be provided among userId, email, and mobileNumber. This property can not be modified after creation. |
userId | string [ 1 .. 128 ] characters User name for the guest user account. It is recommended to use only lower case letters and digits in the user name. White space characters and the characters @, -, :, . are not permitted in user name. The user name cannot be all digits and cannot be reused for another guest user. At least one field must be provided among userId, email, and mobileNumber. This property can not be modified after creation. |
password required | string [ 1 .. 128 ] characters Password for the guest user account |
organization | string <= 128 characters Name of the guest user organization |
reason | string <= 128 characters Field to add any additional notes |
siteName required | string [ 1 .. 32 ] characters Initial site of the guest user. The site must be already present. |
groupName required | string [ 1 .. 64 ] characters User group of the guest user. The group must be already present. |
startTime required | string <date-time> Time when the guest user account gets activated |
expiryTime required | string <date-time> Time when the guest user account expires |
id | string A unique identifier generated by ExtremeGuest for each resource |
Guest user account was created
Invalid input
ExtremeGuest API Server URL
Returns a single or multiple guest users
siteName | string A valid site name of the specified guest user |
networkName | string A valid network name of the specified guest user |
page | integer The zero-relative start index of the entire list of items that are returned in the response. Default value of page is 0 |
page_size | integer The number of items to return in the response. For example, the combination of page=0 and page_size=20 returns the first 20 items |
Guest user information
Invalid input supplied
Guest user not found
ExtremeGuest API Server URL
Returns a single guest user
guestUserId required | string A valid ID for the guest user account to be retrieved |
Guest user information
Invalid ID supplied
Guest user not found
ExtremeGuest API Server URL
guestUserId required | string A valid ID for the guest user account to be updated |
A valid GuestUserElement object containing the updated parameters
firstName required | string <= 64 characters First name of the guest user. |
lastName required | string <= 64 characters Last name of the guest user. |
string [ 6 .. 128 ] characters Email address of the guest user. The email address can not be reused for another guest user. At least one field must be provided among userId, email, and mobileNumber. This property can not be modified after creation. | |
mobileNumber | string [ 10 .. 64 ] characters Mobile number of the guest user. The string must contain numbers only, including country code. The mobile number can not be reused for another guest user. At least one field must be provided among userId, email, and mobileNumber. This property can not be modified after creation. |
userId | string [ 1 .. 128 ] characters User name for the guest user account. It is recommended to use only lower case letters and digits in the user name. White space characters and the characters @, -, :, . are not permitted in user name. The user name cannot be all digits and cannot be reused for another guest user. At least one field must be provided among userId, email, and mobileNumber. This property can not be modified after creation. |
password required | string [ 1 .. 128 ] characters Password for the guest user account |
organization | string <= 128 characters Name of the guest user organization |
reason | string <= 128 characters Field to add any additional notes |
siteName required | string [ 1 .. 32 ] characters Initial site of the guest user. The site must be already present. |
groupName required | string [ 1 .. 64 ] characters User group of the guest user. The group must be already present. |
startTime required | string <date-time> Time when the guest user account gets activated |
expiryTime required | string <date-time> Time when the guest user account expires |
id | string A unique identifier generated by ExtremeGuest for each resource |
Updated guest user information
Invalid input
ExtremeGuest API Server URL
guestUserId required | string A valid ID of the guest user account to be deleted |
Guest user account was deleted successfully
Invalid ID supplied
Guest user not found
ExtremeGuest API Server URL
Returns a single guest user
emailId required | string A valid guest user email ID |
page | integer The zero-relative start index of the entire list of items that are returned in the response. Default value of page is 0 |
page_size | integer The number of items to return in the response. For example, the combination of page=0 and page_size=20 returns the first 20 items |
Guest user account information
Invalid ID supplied
Guest user not found
ExtremeGuest API Server URL
emailId required | string The email address for the guest user account to be updated |
A valid GuestUserElement object containing the new values of parameters to be updated.
firstName required | string <= 64 characters First name of the guest user. |
lastName required | string <= 64 characters Last name of the guest user. |
string [ 6 .. 128 ] characters Email address of the guest user. The email address can not be reused for another guest user. At least one field must be provided among userId, email, and mobileNumber. This property can not be modified after creation. | |
mobileNumber | string [ 10 .. 64 ] characters Mobile number of the guest user. The string must contain numbers only, including country code. The mobile number can not be reused for another guest user. At least one field must be provided among userId, email, and mobileNumber. This property can not be modified after creation. |
userId | string [ 1 .. 128 ] characters User name for the guest user account. It is recommended to use only lower case letters and digits in the user name. White space characters and the characters @, -, :, . are not permitted in user name. The user name cannot be all digits and cannot be reused for another guest user. At least one field must be provided among userId, email, and mobileNumber. This property can not be modified after creation. |
password required | string [ 1 .. 128 ] characters Password for the guest user account |
organization | string <= 128 characters Name of the guest user organization |
reason | string <= 128 characters Field to add any additional notes |
siteName required | string [ 1 .. 32 ] characters Initial site of the guest user. The site must be already present. |
groupName required | string [ 1 .. 64 ] characters User group of the guest user. The group must be already present. |
startTime required | string <date-time> Time when the guest user account gets activated |
expiryTime required | string <date-time> Time when the guest user account expires |
id | string A unique identifier generated by ExtremeGuest for each resource |
Guest user account has been updated
Invalid input
ExtremeGuest API Server URL
emailId required | string The email address of the guest user account to be deleted |
Guest user account has been deleted
Invalid ID supplied
Guest user not found
ExtremeGuest API Server URL
Returns a single guest user
mobileNumber required | string The mobile number associated with the guest user account. The string must contain numbers only, including country code. |
page | integer The zero-relative start index of the entire list of items that are returned in the response. Default value of page is 0 |
page_size | integer The number of items to return in the response. For example, the combination of page=0 and page_size=20 returns the first 20 items |
Guest user account information
Invalid mobile number supplied
Guest user not found
ExtremeGuest API Server URL
mobileNumber required | string The mobile number associated with the guest user account to be updated. The string must contain numbers only, including country code. |
A valid GuestUserElement object containing the new values for parameters to be updated
firstName required | string <= 64 characters First name of the guest user. |
lastName required | string <= 64 characters Last name of the guest user. |
string [ 6 .. 128 ] characters Email address of the guest user. The email address can not be reused for another guest user. At least one field must be provided among userId, email, and mobileNumber. This property can not be modified after creation. | |
mobileNumber | string [ 10 .. 64 ] characters Mobile number of the guest user. The string must contain numbers only, including country code. The mobile number can not be reused for another guest user. At least one field must be provided among userId, email, and mobileNumber. This property can not be modified after creation. |
userId | string [ 1 .. 128 ] characters User name for the guest user account. It is recommended to use only lower case letters and digits in the user name. White space characters and the characters @, -, :, . are not permitted in user name. The user name cannot be all digits and cannot be reused for another guest user. At least one field must be provided among userId, email, and mobileNumber. This property can not be modified after creation. |
password required | string [ 1 .. 128 ] characters Password for the guest user account |
organization | string <= 128 characters Name of the guest user organization |
reason | string <= 128 characters Field to add any additional notes |
siteName required | string [ 1 .. 32 ] characters Initial site of the guest user. The site must be already present. |
groupName required | string [ 1 .. 64 ] characters User group of the guest user. The group must be already present. |
startTime required | string <date-time> Time when the guest user account gets activated |
expiryTime required | string <date-time> Time when the guest user account expires |
id | string A unique identifier generated by ExtremeGuest for each resource |
Guest user account was updated successfully
Invalid input provided
ExtremeGuest API Server URL
mobileNumber required | string The mobile number of the guest user account to be deleted. The string must contain numbers only, including country code. |
Guest user account deleted successfully
Invalid ID supplied
Guest user not found
ExtremeGuest API Server URL
Configure and manage guest devices. Operations supported by this resource correspond to managing guest devices through the ExtremeGuest Vendor Admin GUI.
A valid GuestDeviceElement object with the attributes to be created
macAddress required | string [ 12 .. 17 ] characters MAC address of the guest device in AA-BB-CC-DD-EE-FF format. This property can not be modified after creation. |
siteName required | string [ 1 .. 32 ] characters Name of the guest device site. The site must be already present. |
networkName required | string [ 1 .. 32 ] characters Name of the network that serves this guest device. The network must be already present. |
groupName required | string [ 1 .. 64 ] characters User group of the guest device. The group must be already present. |
vendorName required | string <= 128 characters Name of the vendor to classify the guest device |
deviceType required | string <= 128 characters Type of the guest device |
deviceOs required | string <= 128 characters Name of the operating system in the guest device |
deviceBrowser required | string <= 128 characters Name of the web browser in the guest device |
expiryTime required | string <date-time> Time when the guest device will be automatically deleted |
id | string A unique identifier generated by ExtremeGuest for each resource |
Returns the newly created guest device object
Invalid input
ExtremeGuest API Server URL
Returns a single or multiple guest device
siteName | string A valid site name of the specified guest device |
networkName | string A valid network name of the specified guest device |
page | integer The zero-relative start index of the entire list of items that are returned in the response. Default value of page is 0 |
page_size | integer The number of items to return in the response. For example, the combination of page=0 and page_size=20 returns the first 20 items |
Guest device information
Invalid ID supplied
Guest device not found
ExtremeGuest API Server URL
Returns a single guest device
guestDeviceId required | string A valid ID of the guest device to be retrieved |
Guest device information
Invalid ID supplied
Guest device not found
ExtremeGuest API Server URL
guestDeviceId required | string A valid ID of the guest device to be updated |
A valid GuestDeviceElement object containing the new values for parameter to be updated
macAddress required | string [ 12 .. 17 ] characters MAC address of the guest device in AA-BB-CC-DD-EE-FF format. This property can not be modified after creation. |
siteName required | string [ 1 .. 32 ] characters Name of the guest device site. The site must be already present. |
networkName required | string [ 1 .. 32 ] characters Name of the network that serves this guest device. The network must be already present. |
groupName required | string [ 1 .. 64 ] characters User group of the guest device. The group must be already present. |
vendorName required | string <= 128 characters Name of the vendor to classify the guest device |
deviceType required | string <= 128 characters Type of the guest device |
deviceOs required | string <= 128 characters Name of the operating system in the guest device |
deviceBrowser required | string <= 128 characters Name of the web browser in the guest device |
expiryTime required | string <date-time> Time when the guest device will be automatically deleted |
id | string A unique identifier generated by ExtremeGuest for each resource |
Updated guest device information
Invalid input
ExtremeGuest API Server URL
guestDeviceId required | string A valid ID of the guest device to be deleted |
Guest device was deleted successfully
Invalid ID supplied
Guest device not found
ExtremeGuest API Server URL
Returns a single guest device
macAddress required | string A valid MAC address of the guest device to be retrieved |
Guest device information
Invalid ID supplied
Guest device not found
ExtremeGuest API Server URL
macAddress required | string A valid MAC address of the guest device to be updated |
A valid GuestDeviceElement object containing the new values of parameters to be updated
macAddress required | string [ 12 .. 17 ] characters MAC address of the guest device in AA-BB-CC-DD-EE-FF format. This property can not be modified after creation. |
siteName required | string [ 1 .. 32 ] characters Name of the guest device site. The site must be already present. |
networkName required | string [ 1 .. 32 ] characters Name of the network that serves this guest device. The network must be already present. |
groupName required | string [ 1 .. 64 ] characters User group of the guest device. The group must be already present. |
vendorName required | string <= 128 characters Name of the vendor to classify the guest device |
deviceType required | string <= 128 characters Type of the guest device |
deviceOs required | string <= 128 characters Name of the operating system in the guest device |
deviceBrowser required | string <= 128 characters Name of the web browser in the guest device |
expiryTime required | string <date-time> Time when the guest device will be automatically deleted |
id | string A unique identifier generated by ExtremeGuest for each resource |
Updated guest device information
Invalid input
ExtremeGuest API Server URL
macAddress required | string A valid MAC address of the guest device to be deleted |
Guest device deleted successfully
Invalid ID supplied
Guest device not found
ExtremeGuest API Server URL
Periodically query this path to learn destination interest in callbacks
List of objects to receive callback including interval to query the path
Error response
ExtremeGuest API Server URL
A valid SiteCallbackElement with the configured parameters
siteId | string <uuid> siteId is stored as UUID |
siteName | string |
mgmtIp | string |
mgmtHostname | string |
mgmtMac | string |
country | string |
timezone | string |
region | string |
city | string |
location | string |
contact | string |
desc | string |
customerId | string For ExtremeCloud, tenant ID is used as customerId, for ExtremeCloud Appliance, accountCsn is used as customerId |
deviceGroups | Array of objects (DeviceGroupCallbackElement) List of device groups in the given site |
Site created successfully
Error response
ExtremeGuest API Server URL
siteId required | string <uuid> A non-empty, valid siteId (UUID) of the site to be deleted |
customerId | string >= 1 Customer ID |
Site deleted successfully
Error response
ExtremeGuest API Server URL
Create an accesspoint, not neccesary assigned to a site
A valid AccessPointCallbackElement with the configured parameters
hardwareType | string The model number of the device. |
platform | string The platform of the device. |
serialNumber | string The globally unique serial number of the device being registered. |
customerId | string |
siteId | string <uuid> |
deviceGroupId | string <uuid> |
apName | string [ 1 .. 64 ] characters Represents the friendly name of the access point |
swVersion | string Software version of the access point |
macAddress | string <mac> |
radios | Array of objects (RadioCallbackElement) List of Radios in the access point |
Access point created successfully
Error response
ExtremeGuest API Server URL
serialNumber required | string A non-empty, valid serial number for the accesspoint to be deleted |
customerId | string >= 1 Customer ID |
Access point deleted successfully
Error response
ExtremeGuest API Server URL
A valid ServiceCallbackElement object with parameters to be configured
customerId | string |
serviceId | string <uuid> |
serviceName | string |
ssidName | string |
enabled | boolean |
Service created successfully
Error response
ExtremeGuest API Server URL
serviceId required | string <uuid> A non-empty, valid service ID (UUID) |
Service deleted successfully
Error response
ExtremeGuest API Server URL