This activity shows you how to create an application, configure its connection settings, create a resource access grant, and initiate an authorization request. After an access token is generated, it is used by a user to update a user attribute.

The following operations are supported by the PingOne APIs:

Workflow order of operations

To configure an application and initiate an authorization code flow, the following tasks must be completed successfully:

  1. Make a POST request to /environments/{environmentId}/applications to add a new application to the specified environment.

  2. Make a GET request to /environments/{environmentId}/applications/{applicationId}/secret to return the new application’s secret attribute.

  3. Make a GET request to /environments/{environmentId}/resources to return a list of all resource entities associated with the specified environment to get the ID for the PingOne platform resource.

  4. Make a GET request to /environments/{environmentId}/resources/{resourceId}/scopes to list all scopes associated with a specified resource (the PingOne platform resource).

  5. Make a POST request to /environments/{environmentId}/applications/{applicationId}/grants to create a new resource access grant for the application.

  6. Make a POST request to /{environmentId}/as/authorize to obtain an authorization grant. This request starts the authorization flow.

  7. To initiate the authentication flow, make a GET request to GET /{environmentId}/flows/{flowID}.

  8. To complete the authentication flow, make a POST request to GET /{environmentId}/flows/{flowID} and provide the user’s login credentials.

  9. After the authorization flow completes and returns an auth code, make a POST request to /{environmentId}/as/token to exchange the auth code for an access token.

  10. Use the access token to make a GET request to /environments/{environmentId}/users/{userId} to view return information about the identified user.

Click the Run in Postman button below to download the Postman collection for this use case.

Run in Postman