The Okta Push Providers API provides a centralized integration platform to fetch and manage push provider configurations. Okta administrators can use these APIs to provide their push provider credentials, for example from APNs and FCM, so that Okta can send push notifications to their own custom app authenticator applications.
The Push Providers API supports the following Authorization Schemes:
Notes:
- Some of the curl code examples on this page include SSWS API token authentication. However, Okta recommends using scoped OAuth 2.0 and OIDC access tokens to authenticate with Okta management APIs. OAuth 2.0 and OIDC access tokens provide fine-grain control over the bearer's actions on specific endpoints. See Okta API authentication methods.
- You can use the Push Providers API as part of the "Create a custom authenticator" flow. See the Custom authenticator integration guide.
okta.pushProviders.read
Lists all push providers
OK
Forbidden
Too Many Requests
{- "value": [
- {
- "id": "ppchvbeucdTgqeiGxR0g4",
- "providerType": "APNS",
- "name": "Example Push Provider 1",
- "lastUpdatedDate": "2022-01-00T00:00:00.000Z",
- "configuration": {
- "keyId": "ABC123DEFG",
- "teamId": "DEF123GHIJ",
- "fileName": "fileName.p8"
}, - "_links": {
- "self": {
- "hints": {
- "allow": [
- "DELETE",
- "GET",
- "PUT"
]
}
}
}
}, - {
- "id": "ppctekcmngGaqeiBxB0g4",
- "providerType": "FCM",
- "name": "Example Push Provider 2",
- "lastUpdatedDate": "2022-01-00T00:00:00.000Z",
- "configuration": {
- "projectId": "PROJECT_ID",
- "fileName": "fileName.json"
}, - "_links": {
- "self": {
- "hints": {
- "allow": [
- "DELETE",
- "GET",
- "PUT"
]
}
}
}
}
]
}
okta.pushProviders.manage
Creates a new push provider. Each Push Provider must have a unique name
.
OK
Bad Request
Forbidden
Too Many Requests
{- "name": "APNs Example",
- "providerType": "APNS",
- "configuration": {
- "keyId": "KEY_ID",
- "teamId": "TEAM_ID",
- "tokenSigningKey": "-----BEGIN PRIVATE KEY-----\\nPRIVATE_KEY\\n-----END PRIVATE KEY-----\\n",
- "fileName": "fileName.p8"
}
}
{- "id": "ppctekcmngGaqeiBxB0g4",
- "name": "APNs Example",
- "providerType": "APNS",
- "lastUpdatedDate": "2022-01-01T00:00:00.000Z",
- "configuration": {
- "keyId": "KEY_ID",
- "teamId": "TEAM_ID",
- "fileName": "fileName.p8"
}, - "_links": {
- "self": {
- "hints": {
- "allow": [
- "DELETE",
- "GET",
- "PUT"
]
}
}
}
}
okta.pushProviders.read
Retrieves a push provider by pushProviderId
OK
Forbidden
Not Found
Too Many Requests
{- "id": "ppctekcmngGaqeiBxB0g4",
- "name": "APNs Example",
- "providerType": "APNS",
- "lastUpdatedDate": "2022-01-01T00:00:00.000Z",
- "configuration": {
- "keyId": "KEY_ID",
- "teamId": "TEAM_ID",
- "fileName": "fileName.p8"
}, - "_links": {
- "self": {
- "hints": {
- "allow": [
- "DELETE",
- "GET",
- "PUT"
]
}
}
}
}
okta.pushProviders.manage
Replaces a push provider by pushProviderId
OK
Bad Request
Forbidden
Not Found
Too Many Requests
{- "name": "APNs Example",
- "providerType": "APNS",
- "configuration": {
- "keyId": "KEY_ID",
- "teamId": "TEAM_ID",
- "tokenSigningKey": "-----BEGIN PRIVATE KEY-----\\nPRIVATE_KEY\\n-----END PRIVATE KEY-----\\n",
- "fileName": "fileName.p8"
}
}
{- "id": "ppctekcmngGaqeiBxB0g4",
- "name": "APNs Example",
- "providerType": "APNS",
- "lastUpdatedDate": "2022-01-01T00:00:00.000Z",
- "configuration": {
- "keyId": "KEY_ID",
- "teamId": "TEAM_ID",
- "fileName": "fileName.p8"
}, - "_links": {
- "self": {
- "hints": {
- "allow": [
- "DELETE",
- "GET",
- "PUT"
]
}
}
}
}
okta.pushProviders.manage
Deletes a push provider by pushProviderId
. If the push provider is currently being used in the org by a custom authenticator, the delete will not be allowed.
No Content
Forbidden
Not Found
Conflict
Too Many Requests
{- "errorCode": "E0000006",
- "errorSummary": "You do not have permission to perform the requested action",
- "errorLink": "E0000006",
- "errorId": "sampleNUSD_8fdkFd8fs8SDBK",
- "errorCauses": [ ]
}