Okta
LAST UPDATED: 03/18/2024
Overview
Okta's cloud-based solution enables businesses to manage and secure user authentication into applications, while empowering developers to create identity controls for their applications, websites, web services, and devices. D3 SOAR's integration with Okta's Identity Access Management Service allows for the execution of CRUD operations on user lifecycle processes.
For example, you can use Okta to allow your users to sign in to other applications instead of requiring them to remember separate sets of credentials for each application or service. Users can simply sign in once and access your full suite of applications.
Okta is available for use in:
Known Limitations
Okta enforces per-minute API call limits. For more information about each category, refer to Rate limits overview | Okta Developer. If any org-wide rate limit is surpassed, an HTTP 429 status code will be returned. To upgrade your account, please visit Pricing | Okta.
Connection
To connect to Okta from D3 SOAR, please follow this part to collect the required information below:
Parameter | Description | Example |
Server URL | The server URL of your Okta instance. | https://*****.com |
API Token | The API token to authenticate the connection. | 00Uu*********************ZPDN |
API Version | The version of the API to use for the connection. | v1 |
Permission Requirements
Each endpoint in the Okta API requires a certain permission scope. The following are required scopes for the commands in this integration:
Command | Required Permission (Any permission listed) |
Activates Users | Group Admin/Organization Admin/Super Admin |
Add Users To Group | Group Admin/Group Membership Administrator/Organization Admin/Super Admin |
Block IPs | Read-only Admin/Organization Admin/Super Admin |
Create User In Group | Group Admin/Organization Admin/Super Admin |
Create Zone | Organization Admin/Super Admin |
Deactivate Users | Group Admin/Organization Admin/Super Admin |
Delete Zones | Read-only Admin/Super Admin |
Fetch Event | Read-only Admin/Organization Admin/Super Admin |
Get Groups | Group Admin/Group Membership Administrator/Read-only Admin/Organization Admin/Super Admin |
Get Logs | Group Admin/Read-only Admin/Organization Admin/Super Admin |
Get User Groups | Group Admin/Group Membership Administrator/Read-only Admin/Organization Admin/Super Admin |
Get Users | Group Admin/Group Membership Administrator/Read-only Admin/Organization Admin/Super Admin |
Get Group Members | Group Admin/Group Membership Administrator/Read-only Admin/Organization Admin/Super Admin |
List Zones | Read-only Admin//Organization Admin/Super Admin |
Reset User Passwords | Group Admin/Organization Admin/Super Admin |
Update Zone | Organization Admin/Super Admin |
Test Connection | Group Admin/Group Membership Administrator/Read-only Admin/Organization Admin/Super Admin |
As Okta is using role-based access control (RBAC), the API access token is generated based on a specific user account and the application. Therefore, the command permissions are inherited from the user account’s role. Users need to configure their user profile from the Okta console for each command in this integration.
READER NOTE
Okta User Management (permissions not listed in any particular order)
Super Admin: Perform all admin activities for an org. Super admins have full management access
Org Admin: Perform most admin activities for an org. Note: Org admins cannot manage applications, authorization servers, hooks, Okta Mobile, or other admins.
Group Admin: Manage users, their profiles, and their credentials. Note: You can specify one or more groups after selecting this role.
App Admin: View and manage user permissions in an application. Note: You can specify one or more applications after selecting this role.
Read-Only Admin: View most data in the Admin Console.
Mobile Admin: perform actions related to mobile policies, sign-on policies, mobile devices, and Okta Mobile.
Help Desk Admin: View and unlock users, reset passwords and reset MFA. Note: You can specify one or more groups after selecting this role.
Report Admin: View all reports and the System log.
API Access Management Admin: Build custom authorization servers to protect your API endpoints.
Group Membership Admin: Manages the membership of groups. Note: You can specify one or more groups after selecting this role.
Please refer to Okta Standard administrator roles and permissions and Learn about administrators for more details.
Configuring Okta to Work with D3 SOAR
Login to Okta (https://<subdomain>.okta.com). To locate your sign-in URL, look in the address bar of your desktop browser, the sign-in URL is the web address you use in your desktop browser to access your company portal.
On the left side menu, go to Security > API
Select the Tokens tab, then Create Token. A Create Token window will appear.
Enter the Token Name, then click Create Token.
The generated token will appear. Copy and store the token in a secure location.
READER NOTE
This is the only time that you will be able to view the token, please store it to a secure location.
To create users with specific roles, follow the steps below:
a. Log in to Okta using a Super Administrator account. On the top left corner of your screen, select Directory > People.
b. Click Add person.
c. Fill in the required user information and click Save.
READER NOTE
Your password must meet the following requirements: at least 8 characters, cannot include any part of your username, and cannot be one of your last four passwords.
d. Locate the created user from the user list, and click Add Individual admin privileges.
e. Use the dropdown menu to assign a role to the user and click Save Changes. You can always modify the user's role later.
f. You may log out of the super admin account and log into the created account. Follow steps 2 to 4 of this section for instructions on creating an API token.
Configuring D3 SOAR to Work with Okta
Log in to D3 SOAR.
Find the Okta integration.
a. Navigate to Configuration on the top header menu.
b. Click on the Integration icon on the left sidebar.
c. Type Okta in the search box to find the integration, then click it to select it.
d. Click + Connection, on the right side of the Connections section. A new connection window will appear.
Configure the following fields to create a connection to Okta.
a. Connection Name: The desired name for the connection.
b. Site: Specifies the site to use the integration connection. Use the drop-down menu to select the site. The Share to Internal Sites option enables all sites defined as internal sites to use the connection. Selecting a specific site will only enable that site to use the connection.
c. Recipient site for events from connections Shared to Internal Sites: This field appears if you selected Share to Internal Sites for Site to let you select the internal site to deploy the integration connection.
d. Agent Name (Optional): Specifies the proxy agent required to build the connection. Use the dropdown menu to select the proxy agent from a list of previously configured proxy agents.
e. Description (Optional): Add your desired description for the connection.
f. Configure User Permissions: Defines which users have access to the connection.
g. Active: Check the tick box to ensure the connection is available for use.
h. System: This section contains the parameters defined specifically for the integration. These parameters must be configured to create the integration connection.
1. Input your domain level Server URL.
2. Input your saved API Token.
3. Input your API Version.
i. Connection Health Check: Updates the connection status you have created. A connection health check is done by scheduling the Test Connection command of this integration. This can only be done when the connection is active.
To set up a connection health check, check the Connection Health Check tick box. You can customize the interval (minutes) for scheduling the health check. An email notification can be set up after a specified number of failed connection attempts.
j. Enable Password Vault: An optional feature that allows users to take the stored credentials from their own password vault. Please refer to the password vault connection guide if needed.
Test the connection.
a. Click Test Connection to verify the account credentials and network connection. If the Test Connection Passed alert window appears, the test connection is successful. You will see Passed with a green check mark appear beside the Test Connection button. If the test connection fails, please check your connection parameters and try again.
b. Click OK to close the alert window.
c. Click Add to create and add the configured connection.
Commands
Okta includes the following executable commands for users to set up schedules or create playbook workflows. With the Test Command, you can execute these commands independently for playbook troubleshooting.
Integration API Note
For more information about the Okta API, please refer to the Okta API reference.
READER NOTE
Certain permissions are required for each command. Please refer to the Permission Requirements and Configuring Okta to Work with D3 SOAR for details.
Note for Time-related parameters
The input format of time-related parameters may vary based on your account settings. As a result, the sample data provided in our commands is different from what you see. To set your preferred time format, follow these steps:
Navigate to Configuration > Application Settings. Select Date/Time Format.
Choose your desired date and time format.
After that, you will be able to view your preferred time format when configuring the DateTime input parameters for commands.
Activates Users
Activates the specified users. This operation can only be performed on users with a STAGED or DEPROVISIONED status. The activation of a user is an asynchronous operation.
READER NOTE
Users who have not configured a password must complete the activation process by visiting the activation link. However, if the user account has the optional password setting enabled, it is optional for the user to use the activation link. For more information, please refer to the Okta API document.
If the status is Stage, running the command will change your status to Pending user action on Okta UI. Go to your user inbox to complete the activation process.
If the status is DEPROVISIONED, it means the user account has been deactivated. To reactivate an account, run the command to change the status to Stage. Make sure to click on Active Person or run the command for a second time. Your status will then change to Pending user action on Okta UI, and you will receive an email with instructions to complete the activation process. Failure to complete the activation process will result in the inability to login to the account after a certain time period.
The input parameter User IDs is required to run this command.
Run the Get Users command to obtain the User IDs. User IDs can be obtained from the returned raw data at the path $[*].id.
Input
Input Parameter | Required/Optional | Description | Example |
User IDs | Required | The IDs of the users to activate. User IDs can be obtained using the Get Users command. | 00u******************5d7 |
Output
Error Handling
If the Return Data is Partially Successful or Failed, an Error tab will appear in the Test Result window.
The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.
Parts in Error | Description | Example |
Failure Indicator | Indicates the command failure that happened at a specific input and/or API call. | Activates Users failed. |
Status Code | The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Okta portal. Refer to the HTTP Status Code Registry and Okta API Error Codes for details. | Okta Code: E0000007. HTTP Status Code: 404. |
Message | The raw data or captured key error message from the integration API server about the API request failure. | Message: User ID Not Found. |
Error Sample Data Activates Users failed. Okta Code: E0000007. HTTP Status Code: 404. Message: User ID Not Found. |
Add Users To Group
Adds the specified users to a group with the OKTA_GROUP type.
READER NOTE
User IDs and Group ID are required parameters to run this command.
Run the Get Users command to obtain the User IDs. User IDs can be found from the returned raw data at the path $[*].id.
Run the Get Groups command to obtain the Group ID. Group ID can be found from the returned raw data at the path $.id.
Alert
When adding a user, ensure that they are not already a member of the input group. Otherwise, an error indicating that the user is already in the group will be returned.
It is not possible to add a user to a built-in group. When retrieving a group, make sure that the group's "type" field is set to "OKTA_GROUP"; if the type is "BUILT_IN", the operation cannot be performed. You can find the group type in the raw data returned by the Get Groups command, at the path $.type.
Input
Input Parameter | Required/Optional | Description | Example |
User IDs | Required | The IDs of the users to add to the group. User IDs can be obtained using the Get Users command. Note: You cannot add a deprovisioned user to a group. | [ "00u*************5d7" ] |
Group ID | Required | The ID of the group to add users. Group ID can be obtained using the Get Groups command. Note: You cannot add users to a built-in group. | 00g*****************5d7 |
Output
Error Handling
If the Return Data is Partially Successful or Failed, an Error tab will appear in the Test Result window.
The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.
Parts in Error | Description | Example |
Failure Indicator | Indicates the command failure that happened at a specific input and/or API call. | Add Users To Group failed. |
Status Code | The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Okta portal. Refer to the HTTP Status Code Registry and Okta Error Code Registry for details. | Okta Code: E0000007. HTTP Status Code: 404. |
Message | The raw data or captured key error message from the integration API server about the API request failure. | Message: User ID Not Found. |
Error Sample Data Add Users To Group failed. Okta Code: E0000007. HTTP Status Code: 404. Message: User ID Not Found. |
Block IPs
Blocks the specified IP addresses in a network zone.
READER NOTE
Zone ID is a required parameter to run this command.
Run the List Zones command to obtain Zone ID. Zone IDs can be found in the returned raw data at the path $[*].id.
When retrieving a zone, make sure that the zone's "type" field is set to "IP" and "usage" field is set to "BLOCKLIST". You can find the zone type in the raw data returned by the List Zones command, at the path $[*].type; you can find the zone usage in the raw data returned by the List Zones command, at the path $[*].usage.
Input
Input Parameter | Required/Optional | Description | Example |
Zone ID | Required | The ID of the network zone to block the IP addresses. The specified zone's type must be IP and its usage must be set to Blocklist. Zone IDs can be obtained using the List Zones command. | nzo***************5d7 |
IP Addresses | Required | The IP addresses to block by the specified zone. The values may take the form of IP Addresses in the format of ***.***.***.***, ***.***.***.***/**, or ***.***.***.***-***.***.***.***. | [ "***.***.***.***", "***.***.***.***/**", "***.***.***.***-***.***.***.***" ] |
Output
Error Handling
If the Return Data is Failed, an Error tab will appear in the Test Result window.
The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.
Parts in Error | Description | Example |
Failure Indicator | Indicates the command failure that happened at a specific input and/or API call. | Block IPs failed. |
Status Code | The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Okta portal. Refer to the HTTP Status Code Registry and Okta Error Code Registry for details. | Okta Code: E0000007. HTTP Status Code: 404. |
Message | The raw data or captured key error message from the integration API server about the API request failure. | Message: Zone ID Not Found. |
Error Sample Data Block IPs failed. Okta Code: E0000007. HTTP Status Code: 404. Message: Zone ID Not Found. |
Create User In Group
Creates a user and adds the user to a group.
READER NOTE
The input parameter Group IDs is required to run this command.
Run the Get Groups command to obtain the Group IDs. Group ID can be found from the returned raw data at the path $.id.
When you use this command to create a user, their status will be set to Staged. To complete the activation process, you can click Activate in the Okta user interface or run the Activate Users command, and then verify the user's email inbox.
Input
Input Parameter | Required/Optional | Description | Example |
First Name | Required | The first name of the user. | ***** |
Last Name | Required | The last name of the user. | ***** |
Required | The email address of the user. Note: The email address must be valid. | *****@*****.com | |
Phone Number | Optional | The phone number of the user. | ***-***-**** |
Group IDs | Required | The IDs of the groups to which the user is added. Group IDs can be obtained using the Get Groups command. | [ "*************" ] |
Output
Error Handling
If the Return Data is Partially Successful or Failed, an Error tab will appear in the Test Result window.
The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.
Parts in Error | Description | Example |
Failure Indicator | Indicates the command failure that happened at a specific input and/or API call. | Create User In Group failed. |
Status Code | The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Okta portal. Refer to the HTTP Status Code Registry and Okta Error Code Registry for details. | Okta Code: E0000007. HTTP Status Code: 404. |
Message | The raw data or captured key error message from the integration API server about the API request failure. | Message: Group ID Not Found. |
Error Sample Data Create User In Group failed. Okta Code: E0000007. HTTP Status Code: 404. Message: Group ID Not Found. |
Create Zone
Creates a new network zone.
Input
Input Parameter | Required/Optional | Description | Example |
Zone Name | Required | The unique name of the zone. The name can have a maximum length of 128 characters, any characters exceeding the limit will be truncated. | blockListNetworkZone |
Zone Type | Optional | The type (i.e., Policy or Dynamic) of the zone. The default value is IP. | IP |
Zone Usage | Optional | The usage (i.e., Policy or Blocklist) of the zone. The default value is Blocklist. | Blocklist |
IP Zone Gateway Addresses | Optional | The IP addresses to act as the gateway for the zone. The values may take the form of IP Addresses in the format of ***.***.***.***, ***.***.***.***/**, or ***.***.***.***-***.***.***.***. Note: This parameter is required when the Zone Type is set to IP and Zone Usage is Blocklist. At least one of the parameters IP Zone Gateway Addresses or IP Zone Proxy Addresses must be defined. | [ "***.***.***.***", "***.***.***.***/**", "***.***.***.***-***.***.***.***" ] |
IP Zone Proxy Addresses | Optional | The IP addresses to act as the proxy addresses for the zone. The values may take the form of IP Addresses in the format of ***.***.***.***, ***.***.***.***/**, or ***.***.***.***-***.***.***.***. Note: At least one of the parameters IP Zone Gateway Addresses or IP Zone Proxy Addresses must be defined. | [ "***.***.***.***", "***.***.***.***/**", "***.***.***.***-***.***.***.***" ] |
Dynamic Zone Proxy Type | Optional | The proxy type of the dynamic zone. The available proxy types are None, Any, Tor Anonymizer and Not Tor Anonymizer. This parameter is only used when the Zone Type is set to Dynamic. | Any |
Dynamic Zone Locations | Optional | The list of location objects containing country and region information (formatted as "country-regionKey") for the zone. Each location object includes an ISO-3166-1 country code and an optional ISO-3166-2 region code. This parameter is only used when the Zone Type is set to Dynamic. For example, the parameter can be formatted as follows: [{"country":"AX"},{"country":"AF","region":"AF-BGL"}]. | [ |
Dynamic Zone ASNs | Optional | The ANS numeric value for the zone. This parameter is only used when the Zone Type is set to Dynamic. | [*****, *****] |
Output
Error Handling
If the Return Data is Failed, an Error tab will appear in the Test Result window.
The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.
Parts in Error | Description | Example |
Failure Indicator | Indicates the command failure that happened at a specific input and/or API call. | Create Zone failed. |
Status Code | The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Okta portal. Refer to the HTTP Status Code Registry and Okta Error Code Registry for details. | Status Code: E0000011. HTTP Status Code: 404. |
Message | The raw data or captured key error message from the integration API server about the API request failure. | Message: Invalid token provided. |
Error Sample Data Create Zone failed. Status Code: E0000011. HTTP Status Code: 404. Message: Invalid token provided. |
Deactivate Users
Deactivates the specified users. This operation can only be performed on users that do not have a DEPROVISIONED status.
READER NOTE
The input parameter User IDs is required to run this command.
Run Get Users to obtain the Users IDs. User IDs can be found in the returned raw data at the path $[*].id.
WARNING
Please be careful when deactivating the users. As an administrator with proper permission set up, you can deactivate all users (even higher privilege users like superadmin).
Deactivated users cannot be listed by the Get Users command.
This operation can only be performed on users that do not have a DEPROVISIONED status. You can check user's status by running Get Users command, at the path $.status
Deactivating a user is a destructive operation. The user is deprovisioned from all assigned applications which may destroy their data such as email or files. This action cannot be recovered!
Please refer to Okta API document for details.
Input
Input Parameter | Required/Optional | Description | Example |
User IDs | Required | The IDs of the users to deactivate. User IDs can be obtained using the Get Users command. | ["00u*************5d7"] |
Output
Error Handling
If the Return Data is Partially Successful or Failed, an Error tab will appear in the Test Result window.
The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.
Parts in Error | Description | Example |
Failure Indicator | Indicates the command failure that happened at a specific input and/or API call. | Deactivate Users failed. |
Status Code | The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Okta portal. Refer to the HTTP Status Code Registry and Okta Error Code Registry for details. | Okta Code: E0000007. HTTP Status Code: 404. |
Message | The raw data or captured key error message from the integration API server about the API request failure. | Message: User ID Not Found. |
Error Sample Data Deactivate Users failed. Okta Code: E0000007. HTTP Status Code: 404. Message: User ID Not Found. |
Delete Zones
Deletes the specified non-system network zones.
READER NOTE
The input parameter Zone IDs is required to run this command.
Run the List Zones command to obtain Zone IDs. Zone IDs can be found in the returned raw data at the path $[*].id.
Input
Input Parameter | Required/Optional | Description | Example |
Zone IDs | Required | The IDs of the network zones to delete. Zone IDs can be obtained using the List Zones command. Note: Only non-system zones can be deleted. | [ "nzo****************5d7", "nzo****************5d7" ] |
Output
Error Handling
If the Return Data is Partially Successful or Failed, an Error tab will appear in the Test Result window.
The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.
Parts in Error | Description | Example |
Failure Indicator | Indicates the command failure that happened at a specific input and/or API call. | Delete Zones failed. |
Status Code | The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Okta portal. Refer to the HTTP Status Code Registry and Okta Error Code Registry for details. | Okta Code: E0000007. HTTP Status Code: 404. |
Message | The raw data or captured key error message from the integration API server about the API request failure. | Message: Zone ID Not Found. |
Error Sample Data Delete Zones failed. Okta Code: E0000007. HTTP Status Code: 404. Message: Zone ID Not Found. |
Fetch Event
Retrieves events from Okta based on the specified criteria. Events (system logs) are retained by Okta for 90 days. Invoking queries with the time range exceeding the retention period will be successful, but only results with a published timestamp within the timeframe will be returned. Note: Events are fetched by creation time.
Input
Input Parameter | Required /Optional | Description | Example |
Start Time | Required | The start time of the time range (by creation time) to fetch events in UTC time. | 2023-03-02 00:00 |
End Time | Optional | The end time of the time range (by creation time) to fetch events in UTC time. | 2023-03-10 00:00 |
Number of Event(s) Fetched | Optional | The maximum number of events to return. When the value is 0, a negative number, or not specified, the command will return all events in the given time range. Note: If the input value is too large, it may affect system performance when returning a large number of events. In this situation, please set a suitable value to limit the number of returned events. | 50 |
Search Condition | Optional | The query expression to filter results. For more information about the query syntax, see System Log API. | eventType eq "user.account.reset_password" |
Output
Fetch Event Field Mapping
Please note that Fetch Event commands require event field mapping. Field mapping plays a key role in the data normalization process part of the event pipeline. Field mapping converts the original data fields from the different providers to the D3 fields which are standardized by the D3 Model. Please refer to Event and Incident Intake Field Mapping for details.
If you require a custom field mapping, click +Add Field to add a custom field mapping. You may also remove built-in field mappings by clicking x. Please note that two underscore characters will automatically prefix the defined Field Name as the System Name for a custom field mapping. Additionally, if an input Field Name contains any spaces, they will automatically be replaced with underscores for the corresponding System Name.
As a system integration, the Okta integration has some pre-configured field mappings for default field mapping.
Default Event Source
The Default Event Source is the default set of field mappings that are applied when this fetch event command is executed. For out-of-the-box integrations, you will find a set of field mapping provided by the system. Default event source provides field mappings for common fields from fetched events. The default event source has a “Main Event JSON Path” (i.e., $) that is used to extract a batch of events from the response raw data. Click Edit Event Source to view the “Main Event JSON Path”.Main Event JSON Path: $.data
The Main Event JSON Path determines the root path where the system starts parsing raw response data into D3 event data. The JSON path begins with $, representing the root element. The path is formed by appending a sequence of child elements to $, each separated by a dot (.). Square brackets with nested quotation marks ([‘...’]) should be used to separate child elements in JSON arrays. For example, the root node of a JSON Path is $. The child node denoting the Unique Event Key field would be uuid. Putting it together, the JSON Path expression to extract the Unique Event Key is $.uuid.
The pre-configured field mappings are detailed below:
Field Name | Source Field |
Device IP address | .client.ipAddress |
Unique Event Key | .uuid |
Event Type | .eventType |
HTTP user agent | .client.userAgent.rawUserAgent |
Start Time | .published |
Description | .displayMessage |
Log username | .actor.displayName |
Severity | .severity |
Error Handling
If the Return Data is Failed, an Error tab will appear in the Test Result window.
The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.
Parts in Error | Description | Example |
Failure Indicator | Indicates the command failure that happened at a specific input and/or API call. | Fetch Event failed. |
Status Code | The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Okta portal. Refer to the HTTP Status Code Registry and Okta Error Code Registry for details. | Okta Code: E0000047. HTTP Status Code: 429. |
Message | The raw data or captured key error message from the integration API server about the API request failure. | Message: API call exceeded rate limit due to too many requests. |
Error Sample Data Fetch Event failed. Okta Code: E0000047. HTTP Status Code: 429. Message: API call exceeded rate limit due to too many requests. |
Get Groups
List groups in your organization with the specified search condition.
Input
Input Parameter | Required/Optional | Description | Example |
Filter | Optional | The expression to filter results. For more information about the syntax, see Core Okta API. | type eq "OKTA_GROUP" and lastUpdated gt "2021-11-13T00:30:00.000Z" |
Limit | Optional | The maximum number of results to return. The default value is 100. Note: If the input value is too large, it may affect system performance when returning a large number of results. In this situation, please set a suitable value to limit the number of returned results. | 100 |
Output
Error Handling
If the Return Data is Failed, an Error tab will appear in the Test Result window.
The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.
Parts in Error | Description | Example |
Failure Indicator | Indicates the command failure that happened at a specific input and/or API call. | Get Groups failed. |
Status Code | The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Okta portal. Refer to the HTTP Status Code Registry and Okta Error Code Registry for details. | Okta Code: E0000031. Status Code: 403. |
Message | The raw data or captured key error message from the integration API server about the API request failure. | Message: Invalid Filter expression. |
Error Sample Data Get Groups failed. Okta Code: E0000031. Status Code: 403. Message: Invalid Filter expression. |
Get Logs
Retrieves system logs from Okta based on the specified criteria. System logs are retained by Okta for 90 days. Invoking queries with the time range exceeding the retention period will be successful, but only results with a published timestamp within the timeframe will be returned.
Input
Input Parameter | Required/Optional | Description | Example |
Filter | Optional | The expression to filter results. For more information about the syntax, see System Log API. | eventType eq "user.account.reset_password" |
Limit | Optional | The maximum number of results to return. The default value is 100. Note: If the input value is too large, it may affect system performance when returning a large number of results. In this situation, please set a suitable value to limit the number of returned results. | 100 |
Start Time | Optional | The start time (in UTC) of the time range to filter results by the log events' published property or persistence time for bounded or polling queries. | 2023-03-01 00:00 |
End Time | Optional | The end time (in UTC) of the time range to filter results by the log events' published property or persistence time for bounded or polling queries. | 2023-03-10 00:00 |
Output
Error Handling
If the Return Data is Failed, an Error tab will appear in the Test Result window.
The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.
Parts in Error | Description | Example |
Failure Indicator | Indicates the command failure that happened at a specific input and/or API call. | Get Logs failed. |
Status Code | The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Okta portal. Refer to the HTTP Status Code Registry and Okta Error Code Registry for details. | Okta Code: E0000031. Status Code: 403. |
Message | The raw data or captured key error message from the integration API server about the API request failure. | Message: Invalid Filter expression. |
Error Sample Data Get Logs failed. Okta Code: E0000031. Status Code: 403. Message: Invalid Filter expression. |
Get User Groups
Retrieves user groups in which the specified user is a member.
READER NOTE
User ID Or Login Name is a required parameter to run this command.
Run the Get Users command to obtain User ID Or Login Name. User ID can be found from the returned raw data at the path $[*].id; Login Name can be found from the returned raw data at the path $[*].profile.login.
Input
Input Parameter | Required/Optional | Description | Example |
User ID Or Login Name | Required | The ID or login name of the user to retrieve user groups. User ID and Login Name can be obtained using the Get Users command. | *****@*****.com |
Output
Error Handling
If the Return Data is Failed, an Error tab will appear in the Test Result window.
The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.
Parts in Error | Description | Example |
Failure Indicator | Indicates the command failure that happened at a specific input and/or API call. | Get User Groups failed. |
Status Code | The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Okta portal. Refer to the HTTP Status Code Registry and Okta Error Code Registry for details. | Okta Code: E0000007. HTTP Status Code: 404. |
Message | The raw data or captured key error message from the integration API server about the API request failure. | Message: User ID Not Found. |
Error Sample Data Get User Groups failed. Okta Code: E0000007. HTTP Status Code: 404. Message: User ID Not Found. |
Get Users
Lists all users matching the filter criteria.
READER NOTE
This command cannot be used to retrieve deactivated users.
The names of certain statuses returned by Okta differ from what is shown on the user interface. While the "Stage" status remains unchanged, "Provisioned", "Active", and "Recovery" statuses are displayed as "Pending user action", "Stage", and "Password reset", respectively.
All input parameters in this command are optional. If no input parameters are defined, the first 100 users in Okta will be returned.
Input
Input Parameter | Required/Optional | Description | Example |
Filter | Optional | The expression to filter results. For more information about the syntax, see Users API. | status eq "ACTIVE" and profile.firstName eq "sysint" |
Limit | Optional | The maximum number of results to return. The default value is 100. Note: If the input value is too large, it may affect system performance when returning a large number of results. In this situation, please set a suitable value to limit the number of returned results. | 100 |
Output
Error Handling
If the Return Data is Failed, an Error tab will appear in the Test Result window.
The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.
Parts in Error | Description | Example |
Failure Indicator | Indicates the command failure that happened at a specific input and/or API call. | Get Users failed. |
Status Code | The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Okta portal. Refer to the HTTP Status Code Registry and Okta Error Code Registry for details. | Okta Code: E0000031. Status Code: 403. |
Message | The raw data or captured key error message from the integration API server about the API request failure. | Message: Invalid Filter expression. |
Error Sample Data Get Users failed. Okta Code: E0000031. Status Code: 403. Message: Invalid Filter expression. |
Get Group Members
List all users that are a member of the specified group.
READER NOTE
Group ID is a required parameter to run this command.
Run Get Groups command to obtain the Group ID. Group IDs can be found from the returned raw data at the path $.id.
The recommended page limit is 200.
If you receive an HTTP 500 status code, it is likely that your request has exceeded the allotted timeout. To resolve this, attempt your request again with a smaller limit. For more information, see Core Okta API.
Input
Input Parameter | Required/Optional | Description | Example |
Group ID | Required | The ID of the group to retrieve members. Group IDs can be obtained using the Get Groups command. | ************* |
Limit | Optional | The maximum number of results to return. The default value is 100. Note: If the input value is too large, it may affect system performance when returning a large number of results. In this situation, please set a suitable value to limit the number of returned results. | 100 |
Output
Error Handling
If the Return Data is Failed, an Error tab will appear in the Test Result window.
The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.
Parts in Error | Description | Example |
Failure Indicator | Indicates the command failure that happened at a specific input and/or API call. | Get Group Members failed. |
Status Code | The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Okta portal. Refer to the HTTP Status Code Registry and Okta Error Code Registry for details. | Okta Code: E0000007. HTTP Status Code: 404. |
Message | The raw data or captured key error message from the integration API server about the API request failure. | Message: Group ID Not Found. |
Error Sample Data Get Group Members failed. Okta Code: E0000007. HTTP Status Code: 404. Message: Group ID Not Found. |
List Zones
Lists all zones matching the filter criteria.
READER NOTE
Zone IDs and After are optional parameters to run this command.
You should already have the desired values on hand to run this command. If you want to know what these values represent, you may run this command with parameters empty. Zone IDs can be obtained from the returned raw data at the path $[*].id; Zone Names can be obtained from the returned raw data at the path $[*].name.
Input
Input Parameter | Required/Optional | Description | Example |
Zone IDs | Optional | The IDs of the zones to retrieve. | [ "nzo****************5d7", "nzo****************5d7" ] |
Zone Usage | Optional | The zone's usage (i.e., Policy or Blocklist) to filter results. | Blocklist |
Limit | Optional | The maximum number of results to return. When the value is 0, a negative number, or not specified, the command will return 20 zones within the given time range. Note: If the input value is too large, it may affect system performance when returning a large number of results. In this situation, please set a suitable value to limit the number of returned results. | 5 |
After | Optional | The name of the last zone in the returned data page. If this parameter is defined, the command will retrieve the zones following the specified zone name. | blockListNetworkZone5 |
Output
Error Handling
If the Return Data is Partially Successful or Failed, an Error tab will appear in the Test Result window.
The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.
Parts in Error | Description | Example |
Failure Indicator | Indicates the command failure that happened at a specific input and/or API call. | List Zones failed. |
Status Code | The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Okta portal. Refer to the HTTP Status Code Registry and Okta Error Code Registry for details. | Okta Code: E0000007. HTTP Status Code: 404. |
Message | The raw data or captured key error message from the integration API server about the API request failure. | Message: Zone ID Not Found. |
Error Sample Data List Zones failed. Okta Code: E0000007. HTTP Status Code: 404. Message: Zone ID Not Found. |
Reset User Passwords
Resets password for a given list of users. A one-time token link can be automatically emailed to each user or returned as a response and can be distributed using a custom flow. This command will transition the users to the status of RECOVERY and the users will not be able to login or initiate a forgotten password flow until they complete the reset flow.
READER NOTE
The input parameter User IDs is required to run this command.
Run Get Users command to obtain the User IDs. User IDs can be obtained from the returned raw data at the path $[*].id.
This operation will change the user's status to "RECOVERY", which will prevent them from logging in or resetting their password until they complete the reset process.
This API can be used to switch a user with the Okta Credential Provider to a Federated Provider. However, the user will no longer be able to sign in using a password after this transition.
Input
Input Parameter | Required/Optional | Description | Example |
User IDs | Required | The IDs of the users to reset passwords. User IDs can be obtained using the Get Users command. | [ "nzo***********5d7", "XE6************FxO" ] |
Automatically Send Email | Optional | The option to automatically send a password reset email to the specified users, when set to True. If this parameter set to False, the generated password reset links will be returned. The default value of this parameter is True. When the Convert User To Federated User parameter is set to True, the parameter is omitted. | True |
Convert User To Federated User | Optional | The option to the specified users to federated users, when set to True. If this parameter set to False, no action will occur. The default value of this parameter is False. When the Automatically Send Email parameter is set to True, the parameter is forcibly set to False. | False |
Output
Error Handling
If the Return Data is Partially Successful or Failed, an Error tab will appear in the Test Result window.
The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.
Parts in Error | Description | Example |
Failure Indicator | Indicates the command failure that happened at a specific input and/or API call. | Reset User Passwords failed. |
Status Code | The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Okta portal. Refer to the HTTP Status Code Registry and Okta Error Code Registry for details. | Okta Code: E0000007. HTTP Status Code: 404. |
Message | The raw data or captured key error message from the integration API server about the API request failure. | Message: User ID Not Found. |
Error Sample Data Reset User Passwords failed. Okta Code: E0000007. HTTP Status Code: 404. Message: User ID Not Found. |
Update Zone
Updates a network zone.
READER NOTE
Zone ID is a required parameter to run this command.
Run the List Zones command to obtain Zone ID. Zone ID can be found in the returned raw data at the path $[*].id.
A valid Zone object with the ID of the Network Zone to update is required.
The updated Network Zone type must be the same as the existing type.
You may update the usage (POLICY, BLOCKLIST) of a Network Zone by updating the usage attribute.
Zone ID is a required parameter to run this command.
Run the List Zones command to obtain Zone ID. Zone IDs can be found in the returned raw data at the path $[*].id.
A valid Zone object with the ID of the Network Zone to update is required.
The updated Network Zone type must be the same as the existing type.
You may update the usage (POLICY, BLOCKLIST) of a Network Zone by updating the usage attribute.
Input
Input Parameter | Required/Optional | Description | Example |
Zone ID | Required | The ID of the zone to update. Zones IDs can be obtained using the List Zones command. | nzo***********5d7 |
Zone Name | Optional | The unique name of the zone. The name can have a maximum length of 128 characters, any characters exceeding the limit will be truncated. | blockListNetworkZone |
Zone Usage | Optional | The usage (i.e., Policy or Blocklist) of the zone. The default value is Blocklist. | Blocklist |
Is Overwrite | Optional | The option to overwrite the existing values for IP addresses, locations, or ASNs, when set to True. | False |
IP Zone Gateway Addresses | Optional | The IP addresses to act as the gateway for the zone. The values may take the form of IP Addresses in the format of ***.***.***.***, ***.***.***.***/**, or ***.***.***.***-***.***.***.***. Note: This parameter is required when the Zone Type is set to IP and Zone Usage is Blocklist. At least one of the parameters IP Zone Gateway Addresses or IP Zone Proxy Addresses must be defined. This parameter will be omitted when the specified zone is Dynamic. | [ "***.***.***.***", "***.***.***.***/**", "***.***.***.***-***.***.***.***" ] |
IP Zone Proxy Addresses | Optional | The IP addresses to act as the proxy addresses for the zone. The values may take the form of IP Addresses in the format of ***.***.***.***, ***.***.***.***/**, or ***.***.***.***-***.***.***.***. Note: When the zone usage is Dynamic, at least one of the parameters IP Zone Gateway Addresses or IP Zone Proxy Addresses must be defined. This parameter will be omitted when the type of the specified zone is Dynamic. | [ "***.***.***.***", "***.***.***.***/**", "***.***.***.***-***.***.***.***" ] |
Dynamic Zone Proxy Type | Optional | The proxy type of the dynamic zone. The available proxy types are None, Any, Tor Anonymizer and Not Tor Anonymizer. This parameter is omitted when the specified zone type is IP. | Any |
Dynamic Zone Locations | Optional | The list of location objects containing country and region information (formatted as "country-regionKey") for the zone. Each location object includes an ISO-3166-1 country code and an optional ISO-3166-2 region code. This parameter is only used when the Zone Type is set to Dynamic. For example, the parameter can be formatted as follows: [{"country":"AX"},{"country":"AF","region":"AF-BGL"}]. | [ |
Dynamic Zone ASNs | Optional | The ANS numeric value for the zone. This parameter is omitted when the specified zone type is IP. | [*****, *****] |
Output
Error Handling
If the Return Data is Failed, an Error tab will appear in the Test Result window.
The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.
Parts in Error | Description | Example |
Failure Indicator | Indicates the command failure that happened at a specific input and/or API call. | Update Zone failed. |
Status Code | The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Okta portal. Refer to the HTTP Status Code Registry and Okta Error Code Registry for details. | Okta Code: E0000007. HTTP Status Code: 404. |
Message | The raw data or captured key error message from the integration API server about the API request failure. | Message: Zone ID Not Found. |
Error Sample Data Update Zone failed. Okta Code: E0000007. HTTP Status Code: 404. Message: Zone ID Not Found. |
Test Connection
Allows you to perform a health check on an integration connection. You can schedule a periodic health check by selecting Connection Health Check when editing an integration connection.
Input
N/A
Output
Output Type | Description | Return Data Type |
Return Data | Indicates one of the possible command execution states: Successful or Failed. The Failed state can be triggered by any of the following errors: - A connection issue with the integration - The API returned an error message - No response from the API You can view more details about an error in the Error tab. | String |
Error Handling
If the Return Data is Failed, an Error tab will appear in the Test Result window.
The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.
Parts in Error | Description | Example |
Failure Indicator | Indicates the command failure that happened at a specific input and/or API call. | Test Connection failed. Failed to check the connector. |
Status Code | The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Okta portal. Refer to the HTTP Status Code Registry and Okta Error Code Registry for details. | Status Code: E0000011. HTTP Status Code: 404. |
Message | The raw data or captured key error message from the integration API server about the API request failure. | Message: Invalid token provided. |
Error Sample Data Test Connection failed. Failed to check the connector. Status Code: E0000011. Invalid token provided. |