Note: The SSF Transmitter API is a self-service Early Access (EA) feature. You must enable the Enable Managed Apple ID federation and provisioning feature in your Org settings to access this feature. See Manage Early Access and Beta features.
Okta uses the Shared Signals Framework (SSF) to send security-related events and other data-subject signals to third-party security vendors. In this scenario, commonly used terms for third-party vendors that receive signals are "receivers", Okta is the "transmitter", and the connection between the two entities is referred to as a "stream."
The SSF Transmitter API allows you to manage SSF stream configurations between the receiver that receives signals transmitted by Okta. Okta sends signals in the form of Security Event Tokens (SETs) to a third-party SSF receiver. To enable the transmission of signals from Okta, you must create an SSF Stream using the SSF Transmitter API and configure the third-party receiver to accept signals from Okta.
Retrieves SSF Transmitter configuration metadata. This includes all supported endpoints and key information about certain properties of the Okta org as the transmitter, such as delivery_methods_supported
, issuer
, and jwks_uri
.
OK
Unauthorized
Forbidden
Not Found
Too Many Requests
{- "delivery_methods_supported": [
- "urn:ietf:rfc:8935"
],
}
ssf.read
Retrieves either a list of all known SSF Stream configurations or the individual configuration if specified by ID.
As Stream configurations are tied to a Client ID, only the Stream associated with the Client ID of the request OAuth 2.0 access token can be viewed.
OK
Unauthorized
Forbidden
Not Found
Too Many Requests
[- {
- "format": "iss_sub",
- "min_verification_interval": 0,
- "stream_id": "esc1k235GIIztAuGK0g5"
}
]
ssf.manage
Creates an SSF Stream for an event receiver to start receiving security events in the form of Security Event Tokens (SETs) from Okta.
An SSF Stream is associated with the Client ID of the OAuth 2.0 access token used to create the stream. The Client ID is provided by Okta for an OAuth 2.0 app integration. One SSF Stream is allowed for each Client ID, hence, one SSF Stream is allowed for each app integration in Okta.
A maximum of 10 SSF Stream configurations can be created for one org.
Created
Bad Request
Unauthorized
Forbidden
Too Many Requests
{- "delivery": {
- "authorization_header": "{authorizationHeaderValue}",
}, - "format": "iss_sub"
}
{- "delivery": {
- "authorization_header": "{authorizationHeaderValue}",
}, - "format": "iss_sub",
- "min_verification_interval": 60,
- "stream_id": "esc1k235GIIztAuGK0g5"
}
ssf.manage
Replaces all properties for an existing SSF Stream configuration.
If the stream_id
isn't provided in the request body, the associated stream with the Client ID (through the request OAuth 2.0 access token) is replaced.
events_requested required | Array of strings <uri> <= 50 items The events (mapped by the array of event type URIs) that the receiver wants to receive | ||||||
required | object (Stream Configuration Delivery) Contains information about the intended SET delivery method by the receiver | ||||||
| |||||||
string or Array of strings The audience used in the SET. This value is set as A read-only parameter that is set by the transmitter. If this parameter is included in the request, the value must match the expected value from the transmitter. | |||||||
One of: The audience used in the SET. This value is set as A read-only parameter that is set by the transmitter. If this parameter is included in the request, the value must match the expected value from the transmitter. string <uri> | |||||||
events_delivered | Array of strings <uri> The events (mapped by the array of event type URIs) that the transmitter actually delivers to the SSF Stream. A read-only parameter that is set by the transmitter. If this parameter is included in the request, the value must match the expected value from the transmitter. | ||||||
events_supported | Array of strings <uri> An array of event type URIs that the transmitter supports. A read-only parameter that is set by the transmitter. If this parameter is included in the request, the value must match the expected value from the transmitter. | ||||||
format | string The Subject Identifier format expected for any SET transmitted. | ||||||
iss | string The issuer used in Security Event Tokens (SETs). This value is set as A read-only parameter that is set by the transmitter. If this parameter is included in the request, the value must match the expected value from the transmitter. | ||||||
min_verification_interval | integer or null The minimum amount of time, in seconds, between two verification requests. A read-only parameter that is set by the transmitter. If this parameter is included in the request, the value must match the expected value from the transmitter. | ||||||
stream_id | string The ID of the SSF Stream configuration |
OK
Bad Request
Unauthorized
Forbidden
Not Found
Too Many Requests
{- "delivery": {
- "authorization_header": "{authorizationHeaderValue}",
}, - "format": "iss_sub",
- "min_verification_interval": 60,
- "stream_id": "esc1k235GIIztAuGK0g5"
}
{- "delivery": {
- "authorization_header": "{authorizationHeaderValue}",
}, - "format": "iss_sub",
- "min_verification_interval": 60,
- "stream_id": "esc1k235GIIztAuGK0g5"
}
ssf.manage
Updates properties for an existing SSF Stream configuration.
If the stream_id
isn't provided in the request body, the associated stream with the Client ID (through the request OAuth 2.0 access token) is updated.
events_requested required | Array of strings <uri> <= 50 items The events (mapped by the array of event type URIs) that the receiver wants to receive | ||||||
required | object (Stream Configuration Delivery) Contains information about the intended SET delivery method by the receiver | ||||||
| |||||||
string or Array of strings The audience used in the SET. This value is set as A read-only parameter that is set by the transmitter. If this parameter is included in the request, the value must match the expected value from the transmitter. | |||||||
One of: The audience used in the SET. This value is set as A read-only parameter that is set by the transmitter. If this parameter is included in the request, the value must match the expected value from the transmitter. string <uri> | |||||||
events_delivered | Array of strings <uri> The events (mapped by the array of event type URIs) that the transmitter actually delivers to the SSF Stream. A read-only parameter that is set by the transmitter. If this parameter is included in the request, the value must match the expected value from the transmitter. | ||||||
events_supported | Array of strings <uri> An array of event type URIs that the transmitter supports. A read-only parameter that is set by the transmitter. If this parameter is included in the request, the value must match the expected value from the transmitter. | ||||||
format | string The Subject Identifier format expected for any SET transmitted. | ||||||
iss | string The issuer used in Security Event Tokens (SETs). This value is set as A read-only parameter that is set by the transmitter. If this parameter is included in the request, the value must match the expected value from the transmitter. | ||||||
min_verification_interval | integer or null The minimum amount of time, in seconds, between two verification requests. A read-only parameter that is set by the transmitter. If this parameter is included in the request, the value must match the expected value from the transmitter. | ||||||
stream_id | string The ID of the SSF Stream configuration |
OK
Bad Request
Unauthorized
Forbidden
Not Found
Too Many Requests
{- "delivery": {
- "authorization_header": "{authorizationHeaderValue}",
}, - "format": "iss_sub",
- "min_verification_interval": 60,
- "stream_id": "esc1k235GIIztAuGK0g5"
}
{- "delivery": {
- "authorization_header": "{authorizationHeaderValue}",
}, - "format": "iss_sub",
- "min_verification_interval": 60,
- "stream_id": "esc1k235GIIztAuGK0g5"
}
ssf.manage
Deletes the specified SSF Stream.
If the stream_id
is not provided in the query string, the associated stream with the Client ID (through the request OAuth 2.0 access token) is deleted. Otherwise, the SSF Stream with the stream_id
is deleted, if found.
No Content
Bad Request
Unauthorized
Forbidden
Not Found
Too Many Requests
{- "errorCode": "E0000001",
- "errorSummary": "Api validation failed: {0}",
- "errorLink": "E0000001",
- "errorId": "sampleiCF-8D5rLW6myqiPItW",
- "errorCauses": [ ]
}