Initiation Request

The client on a limited input device sends an Initiation request to Zoho Accounts on behalf of the user.

  • URI Endpoint: https://accounts.zoho.com/oauth/v3/device/code
  • HTTP Request Type: POST
  • Mandatory Parameters:
    • client_id - Obtained from registering your client at the Zoho Accounts developer console.
    • grant_type - Value must be 'device_request'.
    • Scope - Sample scope - "AaaServer.profile.READ"
  • Optional Parameters:
    • access_type - Value can be 'offline' or 'online'. If the value is offline, you will receive a refresh token along with an access token. You can use the access token to make API calls. You can use the refresh token to request for another access token after expiration.
    • prompt - Value must be 'consent.' If this parameter is included in the query, every time you request an access token using a refresh token the user's consent approval is mandatory.
  • Initiation Response Parameters:
    • user_code - Unique code to identify the client and the requested scopes.
    • device_code - Unique code to identify the limited input device requesting for authorization.
    • interval - Time duration the limited input device has to wait between polling requests, in milliseconds.
    • expires_in - Time taken for the JSON response to expire, in milliseconds.
    • verification_url - URL the user must navigate to in a browser to authenticate and grant or deny access.

Sample HTTP Request


				https://accounts.zoho.com/oauth/v3/device/code?
client_id=1000.GMB0YULZHJK411248S8I5GZ4CHUEX0&
scope=AaaServer.profile.READ&
grant_type=device_request			

Sample JSON Response


				{
    "user_code":"WLKU-4502",
    "device_code":"1004.d8a96b56e597e2x2966c418e07ee24ff.9cec9aed3",
    "expires_in":300000,
    "interval":30000,
    "verification_url":"https://accounts.zoho.com/oauth/v3/device"
}