Export All Applications Using the Okta API
Last Updated:
Overview
Exporting a list of all applications from a tenant and converting the data to a Comma-Separated Values (CSV) format requires using the Okta API. Execute a GET request to the applications endpoint, copy the JavaScript Object Notation (JSON) response, and convert the data into a CSV file.
Applies To
- Okta Classic Engine
- Okta Identity Engine (OIE)
- Application Programming Interface (API)
- Reporting
- Okta API
Solution
What is the process to export all applications using the Okta API?
Retrieve the application data by executing a GET request to the applications API endpoint and converting the resulting JavaScript Object Notation (JSON) response into a Comma-Separated Values (CSV) file as detailed in either the video demonstration or the written instructions.
-
Use the List Applications API endpoint by executing the following request:
GET {{url}}/api/v1/apps -
Copy the JSON response.
- Convert the JSON response to a CSV file using a preferred conversion tool.
- Download the entire CSV file and filter the data as required.
How are active applications filtered?
Append a status filter to the API endpoint to export only active applications.
GET {{url}}/api/v1/apps?filter=status eq "ACTIVE"
- Review the comprehensive list of Application filters usable with the Okta API.
NOTE: When seeking an application for conducting API calls, review the Postman documentation for instructions on setting up the environment and Postman, and then import the Apps collection into Postman.
How is the result limit increased and pagination handled?
By default, the endpoint <url>/api/v1/apps returns 20 results. Increase this limit to a maximum of 200 results by appending the limit parameter to the endpoint.
?limit=200 like this: {{url}}/api/v1/apps?limit=200
If more than 200 results are needed, pagination should be employed to access the subsequent set of results. If there are multiple pages of results, the Link header contains a next link that should be treated as an opaque value (follow it, do not parse it).
Employ pagination to access the subsequent set of results when more than 200 results are needed. If there are multiple pages of results, the Link header contains a next link that acts as an opaque value. Follow the link directly without parsing it.
Review the following pagination details.
- Requests that return a list of resources support paging. Pagination relies on a cursor rather than a page number. The cursor is opaque to the client. Specify the cursor in either the
beforeorafterquery parameter. Establish a custom page size for some resources using thelimitparameter. - NOTE: For technical reasons, not all APIs respect pagination or the
beforeandlimitparameters (for example, the Events API).
