Skip to content

Refresh Access Token

POST
/auth/refresh
curl --request POST \
--url https://api.exolink.cloud/auth/refresh \
--header 'Content-Type: application/json' \
--data '{ "refreshToken": "example" }'

Get new access token using refresh token

Media typeapplication/json
object
refreshToken
required

Refresh token from previous authentication

string

Example generated

{
"refreshToken": "example"
}

Token refreshed successfully

Media typeapplication/json
object
Token
required

Authentication tokens

object
AccessToken

JWT access token for API requests

string
RefreshToken

Token for refreshing access tokens

string
ExpiresAt

Expiry of the access token, in seconds since the epoch

integer
UserInfo
required
object
userId

Unique identifier for the user (UUID)

string
email

User’s email address

string
givenName

User’s first name

string
familyName

User’s last name

string
locale

User’s language

string
perms

User permissions per tenant (tenant domain prefix -> role mapping)

object
key
additional properties

User role in a tenant

string
Allowed values: Owner Admin ReadOnly
authTime

Time of authentication, in seconds since the epoch

integer
Settings

User settings with the state of the default tenant. Empty when the user has no tenant.

object
language
string
region
string
timezone
string
cpms

First CPMS of the default tenant

object
url
string
nullable
name
string
nullable
hasChargers

Whether the default tenant has chargers

boolean
customDomains

WebSocket URLs of the default tenant’s fully configured custom domains

Array<string>
default
object
tenant

Default tenant domain prefix

string
connectUrl

WebSocket connection URL of the default tenant

string
key
additional properties
any
Provision

Discovery state of the default tenant. Empty when the user has no tenant.

object
profileId

Profile of the active discovery

integer
mode

1 while a discovery is active

integer
Allowed values: 0 1
duration

Duration of the active discovery in hours

integer
Subscriptions

Subscriptions of the default tenant

Array<object>
object
productName
string

Example

{
"UserInfo": {
"locale": "en",
"perms": {
"additionalProperty": "Owner"
}
},
"Settings": {
"language": "en",
"region": "DE",
"timezone": "Europe/Berlin",
"default": {
"connectUrl": "wss://abc123.broker.exolink.cloud/"
}
},
"Provision": {
"mode": 0
}
}

Missing, invalid or expired credentials

Media typeapplication/json

Error response. Some rejections carry only message.

object
message
required

Error message

string
errorCode

Error code

string
Allowed values: ERR_API_BAD_REQUEST ERR_API_NOT_AUTHORIZED ERR_API_PAYMENT_REQUIRED ERR_API_FORBIDDEN ERR_API_RESOURCE_NOT_FOUND ERR_API_RESOURCE_IN_USE ERR_API_RESOURCE_ALREADY_EXISTS ERR_API_UNEXPECTED_STATE ERR_API_CONTENT_TOO_LARGE ERR_API_VALIDATION_FAILED ERR_API_VERIFICATION_FAILED ERR_API_NO_TENANT ERR_API_INVALID_INVITATION ERR_API_USER_DISABLED ERR_API_FAILED_DEPENDENCY ERR_EXOLINK_GENERIC
details

Failed validations, for requests checked against a schema

Array<object>
object
path

Path of the invalid field

string
message
string
code
string

Example

{
"message": "Not authorized",
"errorCode": "ERR_API_NOT_AUTHORIZED"
}

Resource not found

Media typeapplication/json

Error response. Some rejections carry only message.

object
message
required

Error message

string
errorCode

Error code

string
Allowed values: ERR_API_BAD_REQUEST ERR_API_NOT_AUTHORIZED ERR_API_PAYMENT_REQUIRED ERR_API_FORBIDDEN ERR_API_RESOURCE_NOT_FOUND ERR_API_RESOURCE_IN_USE ERR_API_RESOURCE_ALREADY_EXISTS ERR_API_UNEXPECTED_STATE ERR_API_CONTENT_TOO_LARGE ERR_API_VALIDATION_FAILED ERR_API_VERIFICATION_FAILED ERR_API_NO_TENANT ERR_API_INVALID_INVITATION ERR_API_USER_DISABLED ERR_API_FAILED_DEPENDENCY ERR_EXOLINK_GENERIC
details

Failed validations, for requests checked against a schema

Array<object>
object
path

Path of the invalid field

string
message
string
code
string

Example

{
"message": "Charger '7' not found",
"errorCode": "ERR_API_RESOURCE_NOT_FOUND"
}

Resource is not in a state that allows this request

Media typeapplication/json

Error response. Some rejections carry only message.

object
message
required

Error message

string
errorCode

Error code

string
Allowed values: ERR_API_BAD_REQUEST ERR_API_NOT_AUTHORIZED ERR_API_PAYMENT_REQUIRED ERR_API_FORBIDDEN ERR_API_RESOURCE_NOT_FOUND ERR_API_RESOURCE_IN_USE ERR_API_RESOURCE_ALREADY_EXISTS ERR_API_UNEXPECTED_STATE ERR_API_CONTENT_TOO_LARGE ERR_API_VALIDATION_FAILED ERR_API_VERIFICATION_FAILED ERR_API_NO_TENANT ERR_API_INVALID_INVITATION ERR_API_USER_DISABLED ERR_API_FAILED_DEPENDENCY ERR_EXOLINK_GENERIC
details

Failed validations, for requests checked against a schema

Array<object>
object
path

Path of the invalid field

string
message
string
code
string

Example

{
"message": "Lab '3' is in pending state and can not be deleted yet",
"errorCode": "ERR_API_UNEXPECTED_STATE"
}

Validation or verification failed

Media typeapplication/json

Error response. Some rejections carry only message.

object
message
required

Error message

string
errorCode

Error code

string
Allowed values: ERR_API_BAD_REQUEST ERR_API_NOT_AUTHORIZED ERR_API_PAYMENT_REQUIRED ERR_API_FORBIDDEN ERR_API_RESOURCE_NOT_FOUND ERR_API_RESOURCE_IN_USE ERR_API_RESOURCE_ALREADY_EXISTS ERR_API_UNEXPECTED_STATE ERR_API_CONTENT_TOO_LARGE ERR_API_VALIDATION_FAILED ERR_API_VERIFICATION_FAILED ERR_API_NO_TENANT ERR_API_INVALID_INVITATION ERR_API_USER_DISABLED ERR_API_FAILED_DEPENDENCY ERR_EXOLINK_GENERIC
details

Failed validations, for requests checked against a schema

Array<object>
object
path

Path of the invalid field

string
message
string
code
string

Example

{
"message": "Missing parameter: displayName",
"errorCode": "ERR_API_VALIDATION_FAILED"
}