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 <= |