Refresh Access Token
To ensure secure and seamless communication between Yeastar Partner Portal and third-party application, we recommend that you use this interface to generate a new access token before the current one expires.
Request URL
POST {base_url}/auth/openapi/v1/oauth/token
Request parameters
- Headers
-
Parameter Required Description User-Agent Yes Provide information about the user agent, such as the type of web browser, operating system, software version, etc., so as to help Yeastar Partner Portal to identify the user or the application that is making the request. Example:
User-Agent: OpenAPI
.Content-Type Yes Specify the type of data that is sent in the body of a POST request. Valid value:
multipart/form-data
orapplication/x-www-form-urlencoded
. - Body
-
Parameter Required Type Description grant_type Yes String The OAuth grant type for refreshing an access token. Valid value:
refresh_token
.refresh_token Yes String The latest refresh_token
value.
Response parameters
Parameter | Type | Description |
---|---|---|
code | String | The response message of the API request. |
detailMessage | String | The detailed error information. When the request is successful, this parameter returns empty. |
requestId | String | The unique ID of the request, which can be used to quickly locate the request. |
result | Object<Token_Details> | Details of the requested tokens. |
status | Integer | The HTTP status code of the API request. |
- Token_Details
-
Parameter Type Description expiresIn String The remaining validity period of the access token (Unit: second). refreshToken String Refresh token, which can be used to refresh an access token. token String The authentication credential for API calls. All API requests must include an access token. tokenHead String The prefix of the access token in the HTTP Authorization header. The value is fixed at Bearer
.
Example
Request example
Refresh an access token.
-
Example 1: Request using content type
multipart/form-data
POST /auth/openapi/v1/oauth/token HTTP/1.1 Host: openapi.partner.yeastar.com User-Agent: OpenAPI Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW ------WebKitFormBoundary7MA4YWxkTrZu0gW Content-Disposition: form-data; name="grant_type" refresh_token ------WebKitFormBoundary7MA4YWxkTrZu0gW Content-Disposition: form-data; name="refresh_token" eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOlsicmVzMSJdLCJYLU1TLVVTRVIiOiJ7XCJleHByXCI6XCIwXCIsXCJ0eXBlXCI6XCJwYXJ0bmVyXCIsXCJ1Y0lkXCI6XCIzMDc2OTEzNjQ0ODkwODMyODk2XCIsXCJ1c2VyQ29kZVwiOlwiRGlzdHJpYnV0b3JcIixcInVzZXJJZFwiOlwiMzA3NjkxMzY0NDkxNTk5ODcyMFwiLFwidXNlcm5hbWVcIjpcImRpc3RyaWJ1dG9yZXhhbXBsZUBvdXRsb29rLmNvbVwifSIsInVzZXJfbmFtZSI6ImRpc3RyaWJ1dG9yZXhhbXBsZUBvdXRsb29rLmNvbSIsInNjb3BlIjpbImFsbCJdLCJhdGkiOiIyNkIxVXhEZ1NEc1RadzhPeHFPYkVtSjE2bEU9IiwiZXhwIjoxNzA5Nzk3NjcxLCJ0b2tlbl90eXBlIjoib3BlbmFwaSIsImF1dGhvcml0aWVzIjpbIjc3Il0sImp0aSI6IlkwWHQ4Sm91aEV1WGNZaXM3ZEFTR0lVY1B3dz0iLCJjbGllbnRfaWQiOiJhYzBmMmU1YmVlNzZiNmQ3ZjQ1NDU2OTZjMjRmYzFmMyJ9.l24t48t5iCQ01EToAdgVLsSASF6GFl8wOM-IANEKjho ------WebKitFormBoundary7MA4YWxkTrZu0gW--
Figure 1. Request example in Postman -
Example 2: Request using content type
application/x-www-form-urlencoded
POST /auth/openapi/v1/oauth/token HTTP/1.1 Host: openapi.partner.yeastar.com User-Agent: OpenAPI Content-Type: application/x-www-form-urlencoded grant_type=refresh_token&refresh_token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOlsicmVzMSJdLCJYLU1TLVVTRVIiOiJ7XCJleHByXCI6XCIwXCIsXCJ0eXBlXCI6XCJwYXJ0bmVyXCIsXCJ1Y0lkXCI6XCIzMDc2OTEzNjQ0ODkwODMyODk2XCIsXCJ1c2VyQ29kZVwiOlwiRGlzdHJpYnV0b3JcIixcInVzZXJJZFwiOlwiMzA3NjkxMzY0NDkxNTk5ODcyMFwiLFwidXNlcm5hbWVcIjpcImRpc3RyaWJ1dG9yZXhhbXBsZUBvdXRsb29rLmNvbVwifSIsInVzZXJfbmFtZSI6ImRpc3RyaWJ1dG9yZXhhbXBsZUBvdXRsb29rLmNvbSIsInNjb3BlIjpbImFsbCJdLCJhdGkiOiI3aWhRdlplVU85VU5XY2Mzem9XVXowVVFUTm89IiwiZXhwIjoxNzA5Nzg5MTk1LCJ0b2tlbl90eXBlIjoib3BlbmFwaSIsImF1dGhvcml0aWVzIjpbIjc3Il0sImp0aSI6IkJSUE85aUYwclplNHMrOGdURThveTh1TlVmTT0iLCJjbGllbnRfaWQiOiJhYzBmMmU1YmVlNzZiNmQ3ZjQ1NDU2OTZjMjRmYzFmMyJ9.pcn0Psd9s9LvMpM-kGA5rJ797XdMMxf0h6-K6UcPxc0
Figure 2. Request example in Postman
Response example
{
"code": "success",
"detailMessage": "",
"requestId": "dbca491c0d11f309d88569b216e5fbce",
"result": {
"expiresIn": 1296000,
"refreshToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOlsicmVzMSJdLCJYLU1TLVVTRVIiOiJ7XCJleHByXCI6XCIwXCIsXCJ0eXBlXCI6XCJwYXJ0bmVyXCIsXCJ1Y0lkXCI6XCIzMDc2OTEzNjQ0ODkwODMyODk2XCIsXCJ1c2VyQ29kZVwiOlwiRGlzdHJpYnV0b3JcIixcInVzZXJJZFwiOlwiMzA3NjkxMzY0NDkxNTk5ODcyMFwiLFwidXNlcm5hbWVcIjpcImRpc3RyaWJ1dG9yZXhhbXBsZUBvdXRsb29rLmNvbVwifSIsInVzZXJfbmFtZSI6ImRpc3RyaWJ1dG9yZXhhbXBsZUBvdXRsb29rLmNvbSIsInNjb3BlIjpbImFsbCJdLCJhdGkiOiJFeGxmMU5TMW9rdndpbHNhNDRSWVpEY1ZwMkE9IiwiZXhwIjoxNzA5Nzk3NjcxLCJ0b2tlbl90eXBlIjoib3BlbmFwaSIsImp0aSI6IlkwWHQ4Sm91aEV1WGNZaXM3ZEFTR0lVY1B3dz0iLCJhdXRob3JpdGllcyI6WyI3NyJdLCJjbGllbnRfaWQiOiJhYzBmMmU1YmVlNzZiNmQ3ZjQ1NDU2OTZjMjRmYzFmMyJ9.qGdmaYV4by6tQS1ou9jpA6xM7qE-fcOAXhqKCrjzsss",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOlsicmVzMSJdLCJYLU1TLVVTRVIiOiJ7XCJleHByXCI6XCIwXCIsXCJ0eXBlXCI6XCJwYXJ0bmVyXCIsXCJ1Y0lkXCI6XCIzMDc2OTEzNjQ0ODkwODMyODk2XCIsXCJ1c2VyQ29kZVwiOlwiRGlzdHJpYnV0b3JcIixcInVzZXJJZFwiOlwiMzA3NjkxMzY0NDkxNTk5ODcyMFwiLFwidXNlcm5hbWVcIjpcImRpc3RyaWJ1dG9yZXhhbXBsZUBvdXRsb29rLmNvbVwifSIsInVzZXJfbmFtZSI6ImRpc3RyaWJ1dG9yZXhhbXBsZUBvdXRsb29rLmNvbSIsInNjb3BlIjpbImFsbCJdLCJleHAiOjE3MzkxOTc2ODIsInRva2VuX3R5cGUiOiJvcGVuYXBpIiwianRpIjoiRXhsZjFOUzFva3Z3aWxzYTQ0UllaRGNWcDJBPSIsImF1dGhvcml0aWVzIjpbIjc3Il0sImNsaWVudF9pZCI6ImFjMGYyZTViZWU3NmI2ZDdmNDU0NTY5NmMyNGZjMWYzIn0.XFbllmn2MXmkFIZdfFNCJRnEJgLE5RVATEsONcNCqD0",
"tokenHead": "Bearer "
},
"status": 200
}