Equinix API Authentication (1.2)
Download OpenAPI specification:Download
Equinix APIs use the OAuth 2.0 for authentication and authorization. Equinix supports the resource owner password and the client credentials flow. To begin, obtain OAuth 2.0 client credentials from the Equinix Developer Console under "My Apps". Then your client application requests an access token from the Equinix API Authorization endpoint, extracts the access_token from the response, and sends the Bearer token to the API that you want to access
Renew Access Tokens
Use this API to refresh an access token using its refresh token. A valid refresh token is needed to retrieve a new access_token.
Request Body schema: application/jsonrequired
Refresh token json payload.
client_id required | string API Consumer Key available under "My Apps" in developer portal |
client_secret required | string API Consumer secret available under "My Apps" in developer portal |
refresh_token required | string The OAuth2 refresh_token retrieved from the previous successful Access Token API call |
Responses
Response Schema: application/json
access_token required | string the OAuth2 Bearer token required to access Equinix API's |
token_timeout required | string Default: "3599 (60 minutes)" The max validity in seconds for this access_token |
user_name required | string The Equinix user account to which this token is associated with |
token_type required | string Default: "Bearer" The type of access_token returned in this response |
refresh_token | string The OAuth2 refresh token which could be used to retrieve a new access_token without user credentials. The refresh_token has a max validity of 60 days after which a new Access Token request must be made. Refresh token is Not returned for "client_credentials" grant type |
refresh_token_timeout | string Default: "5182560 (60 days)" The max validity in seconds for the refresh_token. This field is not retruned for the "client_credentials" grant type |
Request samples
- Payload
{- "client_id": "string",
- "client_secret": "string",
- "refresh_token": "string"
}
Response samples
- 200
- 400
{- "access_token": "string",
- "token_timeout": "3599 (60 minutes)",
- "user_name": "string",
- "token_type": "Bearer",
- "refresh_token": "string",
- "refresh_token_timeout": "5182560 (60 days)"
}
Generate New Access Token
This API handles authentication and authorization of the API developer. It returns an access_token which would be valid for 60 minutes. The user account will get locked after 5 successive invalid attempts.
Request Body schema: application/jsonrequired
Request token json payload
user_name | string Deprecated - The Equinix username used to access portals |
user_password | string Deprecated - The Equinix user password used to access portals |
client_id required | string API Consumer Key available under "My Apps" in developer portal |
client_secret required | string API Consumer secret available under "My Apps" in developer portal |
grant_type | string The OAuth2 grant type used for authorization. Supported values are "password" & "client_credentials". user_name and password is not considered in case this value is "client_credentials". If the grant_type is not passed, by default it would consider "password" type in which user_name and password is required. Note that the password grant type is deprecated. Recommended to use grant_type of 'client_credentials' instead. |
password_encoding | string Default: "none" For enhanced security, you may encrypt the password value while requesting for an access_token. Currently only "md5-b64" hashing is supported. Any other value would treat password value as raw string |
Responses
Response Schema: application/json
access_token required | string the OAuth2 Bearer token required to access Equinix API's |
token_timeout required | string Default: "3599 (60 minutes)" The max validity in seconds for this access_token |
user_name required | string The Equinix user account to which this token is associated with |
token_type required | string Default: "Bearer" The type of access_token returned in this response |
refresh_token | string The OAuth2 refresh token which could be used to retrieve a new access_token without user credentials. The refresh_token has a max validity of 60 days after which a new Access Token request must be made. Refresh token is Not returned for "client_credentials" grant type |
refresh_token_timeout | string Default: "5182560 (60 days)" The max validity in seconds for the refresh_token. This field is not retruned for the "client_credentials" grant type |
Request samples
- Payload
{- "user_name": "string",
- "user_password": "string",
- "client_id": "string",
- "client_secret": "string",
- "grant_type": "string",
- "password_encoding": "none"
}
Response samples
- 200
- 400
{- "access_token": "string",
- "token_timeout": "3599 (60 minutes)",
- "user_name": "string",
- "token_type": "Bearer",
- "refresh_token": "string",
- "refresh_token_timeout": "5182560 (60 days)"
}