After you send the authorization request and get a code, exchange the code for an access token.
| Required Editions |
|---|
| Available in: both Salesforce Classic (not available in all orgs) and Lightning Experience |
| Available in: Enterprise, Unlimited, and Developer Editions |
-
From the Headless Identity API Demo folder in Postman, select Username Password Login - Token Exchange.
Note the location of the POST request. It’s the
/services/oauth2/tokenendpoint on your Experience Cloud site. -
To see the request body, click Body. The token request for headless login includes these parameters.
code—The authorization code from Salesforce.grant_type—The OAuth 2.0 grant type. Because the OAuth 2.0 authorization code grant type is the foundation of this flow, this parameter is set toauthorization_code.client_id—The external client app consumer key.redirect_uri—The external client app callback URL, which points to the OAuth 2.0 echo endpoint.
-
For the
code, enter the authorization code that you received in your response from the previous step. -
To send the request to the token endpoint, click Send.
Salesforce validates the token request and returns a response to your app. The response contains an access token that can be used to access Salesforce APIs and other identifying parameters. Here’s an example access token response in Postman.
{ "access_token": "00DR**********", "sfdc_community_url": "https://MyExperienceCloudSite.my.site.com", "sfdc_community_id": "0DBXXXXXXXXXXXXXXXX", "signature": "CPk2JprUcxOmRHND71gJFn+SxyKe7jWqA1rQnFz9zZg=", "token_format": "opaque", "scope": "openid api", "id_token": "eyJr**************", "instance_url": "https://yourInstance.salesforce.com", "id": "https://yourInstance.salesforce.com/id/00Dxxxxxxxxxxxx/005xxxxxxxxxxxx", "token_type": "Bearer", "issued_at": "1667600739962" }