Portal can ingest organizational data—such as users and teams—from your Okta tenant via the Okta API. To do this, you must create a new Okta App with specific permissions to your and configure the Okta catalog provider in Portal.Documentation Index
Fetch the complete documentation index at: https://backstage.spotify.com/docs/llms.txt
Use this file to discover all available pages before exploring further.
Create new App in Okta
Within your Okta dashboard create a new app integration where the sign-in method isAPI Services.
Call the application “Spotify Portal - Provisioning” (or your own custom app name).
Then store the following information:
Client IDPublic KeyKID(A Key ID that is associated with your private key)
Okta API Scopes you need to add the following scopes:
okta.groups.readokta.users.read
Demonstrate Proof of Possession header option. This is required for Portal to properly authenticate with Okta.
Scoping the application
It is important to note that you can scope the application to make sure Portal can access only the users and groups it needs. This can be done by creating and assigning the following Resource Sets and Roles:- Navigate to
Security > Administrators - Click on the
Resourcestab and create a new resource set called “Spotify Portal Users & Groups”. - Add the
UsersandGroupsresources. (For now, we recommend to ingest all users but only a set list of groups.) - Now navigate back to your newly created app
- Select the
Admin rolestab and select add assignment - Select “Create a role” and call it “Spotify Portal org data viewer” with the following permissions
User > View users and their detailsGroup > View groups and their details
- Assign the admin role to the just created resource set
Configure the Okta Org Provider in Portal
- In Config Manager, go to the Catalog plugin
- Scroll to
catalog.providers.okta - from your Okta instance fill in
id(e.g.,default)oktaUrl(URL of your Okta instance)clientIdprivateKeykeyId(which is theKID)

-
Then scroll down and fill in the
Schedulefrequency(We recommend every 30 minutes)timeout(We recommend keeping it consistent with the chosenfrequencyvalue)

- Add groups you want to ingest by adding their Okta names in the
groupssection

- Click Save changes.