---
title: Okta Identity Management
slug: connectors/okta-identity-management
docTags: 
createdAt: 2026-06-09T16:30:32.784Z
---

The Okta Identity Management connector enables seamless integration with Okta's services, providing a suite of actions for user and application management.

Okta Identity Management is a comprehensive identity and access management service that enables secure user authentication and lifecycle management. This connector allows Swimlane Turbine users to automate user and application lifecycle processes, streamline group management, and enhance security operations with Okta's robust API capabilities. By integrating with Okta, security teams can efficiently manage identities, enforce security policies, and respond to incidents with precision, all within the Swimlane Turbine platform.

## Prerequisites

To utilize the Okta Identity Management connector with Swimlane Turbine, ensure you have the following prerequisites:

- API Key Authentication with the necessary parameters:
  - URL: The endpoint URL for the Okta API.
  - API Key: A valid API key to authenticate requests to Okta.

## Capabilities

The Okta Connector has the following capabilities:

- Activate User
- Deactivate User
- Suspend User
- Unsuspend User
- Unlock User
- Force User Password Reset
- Clear User Session
- Get Users: List All, filter, get by ID, search
- Get Events: List All, filter by keyword, filter by query string.
- Get Applications: List all or filter
- Get Application by ID
- Activate Application by ID
- Deactivate Application by ID
- Delete Application by ID
- List Groups
  *... and so on*

## Notes

- Information for event actions including filter expressions, event types and correlations can be found at: [https://developer.okta.com/docs/reference/api/system-log/#request-parameters](https://developer.okta.com/docs/reference/api/system-log/#request-parameters)
- Information for user actions including search examples, filter examples and name queries can be found at: [https://developer.okta.com/docs/reference/api/users/#get-user-with-login-shortname](https://developer.okta.com/docs/reference/api/users/#get-user-with-login-shortname)
- Information for group actions including filtering expressions can be found at: [https://developer.okta.com/docs/reference/api/groups/#group-rule-operations](https://developer.okta.com/docs/reference/api/groups/#group-rule-operations)
- The complete documentation for the API is found at: [https://developer.okta.com/docs/reference/](https://developer.okta.com/docs/reference/)

## Additional Documentation

- [Okta Identity Management Connector Documentation](https://docs.swimlane.com/connectors/okta-identity-management)
- [Okta Identity Management API Documentation](https://developer.okta.com/docs/reference/)
- [Okta Identity Management Authentication Guide](https://docs.swimlane.com/authentication-guides/okta-identity-management)

# Configurations

## OKTA API Key Authentication

Authenticates using an API Key.

### Configuration Parameters

| **Parameter** | **Description**                    | **Type** | **Required** |
| ------------- | ---------------------------------- | -------- | ------------ |
| url           | A URL to the target host.          | string   | Required     |
| apikey        | API key.                           | string   | Required     |
| verify\_ssl   | Verify SSL certificate.            | boolean  | Optional     |
| http\_proxy   | A proxy to route requests through. | string   | Optional     |

# Actions

## Activate User By ID

Activates an Okta user account with the provided 'userId' path parameter.

### Endpoint

- **URL:** `/api/v1/users/{{userId}}/lifecycle/activate`
- **Method:** `POST`

### Input

| **Argument Name**        | **Type** | **Required** | **Description**                                |
| ------------------------ | -------- | ------------ | ---------------------------------------------- |
| `path_parameters.userId` | string   | Required     | ID of an existing Okta user.                   |
| `parameters.sendEmail`   | boolean  | Optional     | Sends an activation email to the user if true. |

### Input Example

`{"path_parameters":{"userId":"string"},"parameters":{"sendEmail":true}}`

### Output

| **Parameter**          | **Type** | **Description**                    |
| ---------------------- | -------- | ---------------------------------- |
| `status_code`          | number   | HTTP status code of the response   |
| `reason`               | string   | Response reason phrase             |
| `json`                 | object   | Output field: json                 |
| `json.activationToken` | string   | Output field: json.activationToken |
| `json.activationUrl`   | string   | URL endpoint for the request       |

### Output Example

`{"status_code":200,"response_headers":{"content-length":"140","content-type":"application/json","Date":"Wed, 8 Jan 2025 20:37:23 GMT"},"reason":"OK","json":{"activationToken":"XE6wE17zmphl3KqAPFxO","activationUrl":"https://{yourOktaDomain}/welcome/XE6wE17zmphl3KqAPFxO"}}`

## Add user to Group

Adds a specified user to a designated group in Okta Identity Management by utilizing the provided groupId and userId.

### Endpoint

- **URL:** `/api/v1/groups/{{groupId}}/users/{{userId}}`
- **Method:** `PUT`

### Input

| **Argument Name**         | **Type** | **Required** | **Description** |
| ------------------------- | -------- | ------------ | --------------- |
| `path_parameters.groupId` | string   | Required     | Group ID.       |
| `path_parameters.userId`  | string   | Required     | User ID.        |

### Input Example

`{"path_parameters":{"groupId":"string","userId":"string"}}`

### Output

| **Parameter** | **Type** | **Description**                  |
| ------------- | -------- | -------------------------------- |
| `status_code` | number   | HTTP status code of the response |
| `reason`      | string   | Response reason phrase           |
| `json`        | object   | Output field: json               |

### Output Example

`{"status_code":204,"response_headers":{"content-length":"140","content-type":"application/json","Date":"Wed, 8 Jan 2025 20:37:23 GMT"},"reason":"OK","json":{}}`

## Activate Application By ID

Activates an inactive application within Okta Identity Management using a specified application ID.

### Endpoint

- **URL:** `/api/v1/apps/{{appId}}/lifecycle/activate`
- **Method:** `POST`

### Input

| **Argument Name**       | **Type** | **Required** | **Description** |
| ----------------------- | -------- | ------------ | --------------- |
| `path_parameters.appId` | string   | Required     | Application ID  |

### Input Example

`{"path_parameters":{"appId":"string"}}`

### Output

| **Parameter** | **Type** | **Description**                  |
| ------------- | -------- | -------------------------------- |
| `status_code` | number   | HTTP status code of the response |
| `reason`      | string   | Response reason phrase           |
| `headers`     | object   | HTTP headers for the request     |
| `response`    | object   | Output field: response           |

### Output Example

`{"status_code":200,"reason":"Ok","headers":null,"response":{}}`

## Deactivate Application By ID

Deactivates an active application in Okta Identity Management by using the provided application ID.

### Endpoint

- **URL:** `/api/v1/apps/{{appId}}/lifecycle/deactivate`
- **Method:** `POST`

### Input

| **Argument Name**       | **Type** | **Required** | **Description** |
| ----------------------- | -------- | ------------ | --------------- |
| `path_parameters.appId` | string   | Required     | Application ID. |

### Input Example

`{"path_parameters":{"appId":"string"}}`

### Output

| **Parameter** | **Type** | **Description**                  |
| ------------- | -------- | -------------------------------- |
| `status_code` | number   | HTTP status code of the response |
| `reason`      | string   | Response reason phrase           |
| `headers`     | object   | HTTP headers for the request     |
| `response`    | object   | Output field: response           |

### Output Example

`{"status_code":200,"reason":"Ok","headers":null,"response":{}}`

## Delete Application By ID

Removes an inactive application from Okta Identity Management using the specified application ID.

### Endpoint

- **URL:** `/api/v1/apps/{{appId}}`
- **Method:** `DELETE`

### Input

| **Argument Name**       | **Type** | **Required** | **Description** |
| ----------------------- | -------- | ------------ | --------------- |
| `path_parameters.appId` | string   | Required     | Application ID. |

### Input Example

`{"path_parameters":{"appId":"string"}}`

### Output

| **Parameter** | **Type** | **Description**                  |
| ------------- | -------- | -------------------------------- |
| `status_code` | number   | HTTP status code of the response |
| `reason`      | string   | Response reason phrase           |
| `headers`     | object   | HTTP headers for the request     |
| `response`    | object   | Output field: response           |

### Output Example

`{"status_code":200,"reason":"Ok","headers":null,"response":{}}`

## Get Applications

Retrieves a paginated list of all applications in Okta Identity Management, with optional query-based filtering.

### Endpoint

- **URL:** `/api/v1/apps`
- **Method:** `GET`

### Input

| **Argument Name**                                                               | **Type** | **Required** | **Description**                                                                                                                                                                                                                                             |
| ------------------------------------------------------------------------------- | -------- | ------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `parameters.q`                                                                  | string   | Optional     | Searches for apps with name or label properties that starts with the q value using the startsWith operation.                                                                                                                                                |
| `parameters.after`                                                              | string   | Optional     | Specifies the pagination cursor for the next page of results. Treat this as an opaque value obtained through the next link relationship.                                                                                                                    |
| `parameters.useOptimization`                                                    | boolean  | Optional     | Specifies whether to use query optimization. If you specify useOptimization=true in the request query, the response contains a subset of app instance properties.                                                                                           |
| `parameters.limit`                                                              | number   | Optional     | It should be integer <br />:::Iframe{code="<int32>"}

:::<br /> \<= 200. Specifies the number of results per page.                                                                                                                                          |
| `parameters.filter`                                                             | string   | Optional     | Filters apps by status, user.id, group.id, credentials.signing.kid or name expression that supports the eq operator. Filter for active apps:                                                                                                                |
| filter=status eq "ACTIVE"                                                       |          |              |                                                                                                                                                                                                                                                             |
| Filter for apps with `okta_org2org` name:                                       |          |              |                                                                                                                                                                                                                                                             |
| filter=name eq "okta\_org2org"                                                  |          |              |                                                                                                                                                                                                                                                             |
| Filter for apps using a specific key:                                           |          |              |                                                                                                                                                                                                                                                             |
| filter=credentials.signing.kid eq "SIMcCQNY3uwXoW3y0vf6VxiBb5n9pf8L2fK8d-F1bm4" |          |              |                                                                                                                                                                                                                                                             |
| `parameters.expand`                                                             | string   | Optional     | An optional parameter used for link expansion to embed more resources in the response. Only supports expand=user/ and must be used with the user.id eq "" filter query for the same user. Returns the assigned Application User in the \_embedded property. |
| `parameters.includeNonDeleted`                                                  | boolean  | Optional     | Specifies whether to include non-active, but not deleted apps in the results.                                                                                                                                                                               |

### Input Example

`{"parameters":{"q":"Okta","after":"16278919418571","useOptimization":false,"limit":-1,"filter":"credentials.signing.kid eq SIMcCQNY3uwXoW3y0vf6VxiBb5n9pf8L2fK8d-F1bm4","expand":"user/0oa1gjh63g214q0Hq0g4","includeNonDeleted":false}}`

### Output

| **Parameter**                               | **Type** | **Description**                    |
| ------------------------------------------- | -------- | ---------------------------------- |
| `status_code`                               | number   | HTTP status code of the response   |
| `reason`                                    | string   | Response reason phrase             |
| `headers`                                   | object   | HTTP headers for the request       |
| `headers.content-type`                      | string   | HTTP headers for the request       |
| `headers.content-length`                    | string   | HTTP headers for the request       |
| `headers.connection`                        | string   | HTTP headers for the request       |
| `headers.date`                              | string   | HTTP headers for the request       |
| `headers.server`                            | string   | HTTP headers for the request       |
| `headers.x-request-id`                      | string   | HTTP headers for the request       |
| `headers.x-runtime`                         | string   | HTTP headers for the request       |
| `headers.x-powered-by`                      | string   | HTTP headers for the request       |
| `headers.x-frame-options`                   | string   | HTTP headers for the request       |
| `headers.x-xss-protection`                  | string   | HTTP headers for the request       |
| `headers.x-content-type-options`            | string   | HTTP headers for the request       |
| `headers.x-download-options`                | string   | HTTP headers for the request       |
| `headers.x-permitted-cross-domain-policies` | string   | HTTP headers for the request       |
| `headers.referrer-policy`                   | string   | HTTP headers for the request       |
| `headers.strict-transport-security`         | string   | HTTP headers for the request       |
| `headers.x-content-security-policy`         | string   | HTTP headers for the request       |
| `response`                                  | array    | Output field: response             |
| `response.id`                               | string   | Unique identifier                  |
| `response.name`                             | string   | Name of the resource               |
| `response.label`                            | string   | Output field: response.label       |
| `response.status`                           | string   | Status value                       |
| `response.lastUpdated`                      | string   | Output field: response.lastUpdated |

### Output Example

`{"status_code":200,"reason":"Ok","headers":{"content-type":"application/json; charset=utf-8","content-length":"0","connection":"close","date":"Tue, 10 Mar 2020 15:00:00 GMT","server":"nginx","x-request-id":"a1b2c3d4e5f6g7h8i9j0","x-runtime":"0.000000","x-powered-by":"Phusion Passenger 5.3.7","x-frame-options":"SAMEORIGIN","x-xss-protection":"1; mode=block","x-content-type-options":"nosniff","x-download-options":"noopen","x-permitted-cross-domain-policies":"none","referrer-policy":"strict-origin-...`

## Get Application By ID

Retrieve details for a specific application in Okta Identity Management using the unique application ID.

### Endpoint

- **URL:** `/api/v1/apps/{{appId}}`
- **Method:** `GET`

### Input

| **Argument Name**       | **Type** | **Required** | **Description**                                                                                                             |
| ----------------------- | -------- | ------------ | --------------------------------------------------------------------------------------------------------------------------- |
| `path_parameters.appId` | string   | Required     | Application ID.                                                                                                             |
| `parameters.expand`     | string   | Optional     | An optional query parameter to return the specified Application User in the \_embedded property. Valid value: expand=user/. |

### Input Example

`{"path_parameters":{"appId":"string"},"parameters":{"expand":"string"}}`

### Output

| **Parameter**                               | **Type** | **Description**                    |
| ------------------------------------------- | -------- | ---------------------------------- |
| `status_code`                               | number   | HTTP status code of the response   |
| `reason`                                    | string   | Response reason phrase             |
| `headers`                                   | object   | HTTP headers for the request       |
| `headers.content-type`                      | string   | HTTP headers for the request       |
| `headers.content-length`                    | string   | HTTP headers for the request       |
| `headers.connection`                        | string   | HTTP headers for the request       |
| `headers.date`                              | string   | HTTP headers for the request       |
| `headers.server`                            | string   | HTTP headers for the request       |
| `headers.x-request-id`                      | string   | HTTP headers for the request       |
| `headers.x-runtime`                         | string   | HTTP headers for the request       |
| `headers.x-powered-by`                      | string   | HTTP headers for the request       |
| `headers.x-frame-options`                   | string   | HTTP headers for the request       |
| `headers.x-xss-protection`                  | string   | HTTP headers for the request       |
| `headers.x-content-type-options`            | string   | HTTP headers for the request       |
| `headers.x-download-options`                | string   | HTTP headers for the request       |
| `headers.x-permitted-cross-domain-policies` | string   | HTTP headers for the request       |
| `headers.referrer-policy`                   | string   | HTTP headers for the request       |
| `headers.strict-transport-security`         | string   | HTTP headers for the request       |
| `headers.x-content-security-policy`         | string   | HTTP headers for the request       |
| `response`                                  | object   | Output field: response             |
| `response.id`                               | string   | Unique identifier                  |
| `response.name`                             | string   | Name of the resource               |
| `response.label`                            | string   | Output field: response.label       |
| `response.status`                           | string   | Status value                       |
| `response.lastUpdated`                      | string   | Output field: response.lastUpdated |

### Output Example

`{"status_code":200,"reason":"Ok","headers":{"content-type":"application/json; charset=utf-8","content-length":"0","connection":"close","date":"Tue, 10 Mar 2020 15:00:00 GMT","server":"nginx","x-request-id":"a1b2c3d4e5f6g7h8i9j0","x-runtime":"0.000000","x-powered-by":"Phusion Passenger 5.3.7","x-frame-options":"SAMEORIGIN","x-xss-protection":"1; mode=block","x-content-type-options":"nosniff","x-download-options":"noopen","x-permitted-cross-domain-policies":"none","referrer-policy":"strict-origin-...`

## Clear User Session

Ends a specific user's session in Okta Identity Management, targeting only the specified session without impacting other app sessions.

### Endpoint

- **URL:** `/api/v1/users/{{userId}}/sessions`
- **Method:** `DELETE`

### Input

| **Argument Name**        | **Type** | **Required** | **Description**                                                   |
| ------------------------ | -------- | ------------ | ----------------------------------------------------------------- |
| `path_parameters.userId` | string   | Required     | User ID.                                                          |
| `parameters.oauthTokens` | boolean  | Optional     | Revoke issued OpenID Connect and OAuth refresh and access tokens. |

### Input Example

`{"path_parameters":{"userId":"string"},"parameters":{"oauthTokens":true}}`

### Output

| **Parameter** | **Type** | **Description**                  |
| ------------- | -------- | -------------------------------- |
| `status_code` | number   | HTTP status code of the response |
| `reason`      | string   | Response reason phrase           |
| `headers`     | object   | HTTP headers for the request     |
| `response`    | object   | Output field: response           |

### Output Example

`{"status_code":204,"reason":"Ok","headers":null,"response":{}}`

## Deactivate User By ID

Deactivates a specified Okta user account using the 'userId' path parameter.

### Endpoint

- **URL:** `/api/v1/users/{{userId}}/lifecycle/deactivate`
- **Method:** `POST`

### Input

| **Argument Name**        | **Type** | **Required** | **Description**                                  |
| ------------------------ | -------- | ------------ | ------------------------------------------------ |
| `path_parameters.userId` | string   | Required     | User ID.                                         |
| `parameters.sendEmail`   | boolean  | Optional     | Sends a deactivation email to the admin if true. |
| `headers`                | object   | Optional     | Headers                                          |
| `headers.Prefer`         | string   | Optional     | Request asynchronous processing.                 |

### Input Example

`{"path_parameters":{"userId":"string"},"parameters":{"sendEmail":true},"headers":{"Prefer":"respond-async"}}`

### Output

| **Parameter** | **Type** | **Description**                  |
| ------------- | -------- | -------------------------------- |
| `status_code` | number   | HTTP status code of the response |
| `reason`      | string   | Response reason phrase           |
| `headers`     | object   | HTTP headers for the request     |
| `response`    | object   | Output field: response           |

### Output Example

`{"status_code":200,"reason":"Ok","headers":null,"response":{}}`

## Force Password Reset

Initiates a forced password reset for a specified user in Okta Identity Management, with an option to send a notification email.

### Endpoint

- **URL:** `/api/v1/users/{{userId}}/lifecycle/reset_password`
- **Method:** `POST`

### Input

| **Argument Name**           | **Type** | **Required** | **Description**                                                                                                |
| --------------------------- | -------- | ------------ | -------------------------------------------------------------------------------------------------------------- |
| `path_parameters.userId`    | string   | Required     | User ID                                                                                                        |
| `parameters.sendEmail`      | boolean  | Required     | When this is True, sends the reset link directly to the User's email, otherwise, the Url will be returned here |
| `parameters.revokeSessions` | boolean  | Optional     | Revokes all User sessions, except for the current session, if set to true.                                     |

### Input Example

`{"path_parameters":{"userId":"string"},"parameters":{"sendEmail":true,"revokeSessions":true}}`

### Output

| **Parameter**           | **Type** | **Description**                  |
| ----------------------- | -------- | -------------------------------- |
| `status_code`           | number   | HTTP status code of the response |
| `reason`                | string   | Response reason phrase           |
| `json`                  | object   | Output field: json               |
| `json.summary`          | string   | Output field: json.summary       |
| `json.resetPasswordUrl` | string   | URL endpoint for the request     |

### Output Example

`{"status_code":204,"response_headers":{"content-length":"140","content-type":"application/json","Date":"Wed, 8 Jan 2025 20:37:23 GMT"},"reason":"OK","json":{"summary":"Reset password without sending email","resetPasswordUrl":"https://{yourOktaDomain}/reset_password/XE6wE17zmphl3KqAPFxO"}}`

## Generic Task

Executes a customizable task within Okta Identity Management, providing full control over the request parameters.

### Input

| **Argument Name** | **Type** | **Required** | **Description**                                                                                     |
| ----------------- | -------- | ------------ | --------------------------------------------------------------------------------------------------- |
| `endpoint`        | string   | Optional     | Path to the endpoint after url in asset. Use double brackets with path parameters for dynamic URLs. |
| `method`          | string   | Optional     | Method of the request such as: POST, GET, PUT, PATCH, DELETE. (Note, others are available to use)   |
| `data_body`       | object   | Optional     | Body to send as data, this allows you to set the content-type in the headers manually.              |
| `headers`         | object   | Optional     | Request headers to send with the individual request.                                                |

### Input Example

`{"endpoint":"api/v3/users"}`

### Output

| **Parameter**   | **Type** | **Description**                                                              |
| --------------- | -------- | ---------------------------------------------------------------------------- |
| `status_code`   | number   | The HTTP response status code                                                |
| `data`          | object   | The JSON response body                                                       |
| `response_text` | string   | Output field: response\_text                                                 |
| `reason`        | string   | The HTTP reason, often times an error message can be here. OK means success. |

### Output Example

`{"response_text":"string"}`

## Get Events

Retrieves a comprehensive list of System Log events from Okta Identity Management for effective monitoring or analysis.

### Endpoint

- **URL:** `/api/v1/logs`
- **Method:** `GET`

### Input

| **Argument Name**      | **Type** | **Required** | **Description**                                                                                                                                                                                    |
| ---------------------- | -------- | ------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `parameters.since`     | string   | Optional     | Filters the lower time bound of the log events published property for bounded queries or persistence time for polling queries.                                                                     |
| `parameters.until`     | string   | Optional     | Filters the upper time bound of the log events published property for bounded queries or persistence time for polling queries.                                                                     |
| `parameters.after`     | string   | Optional     | Retrieves the next page of results. Okta returns a link in the HTTP Header (rel=next) that includes the after query parameter.                                                                     |
| `parameters.filter`    | string   | Optional     | Filter expression that filters the results. All operators except \[ ] are supported.                                                                                                               |
| `parameters.q`         | string   | Optional     | Filters log events results by one or more case insensitive keywords. URL encoded string. Max length is 40 characters per keyword, with a maximum of 10 keyword filters per query (before encoding. |
| `parameters.limit`     | number   | Optional     | Sets the number of results that are returned in the response. Integer between 0 and 1000.                                                                                                          |
| `parameters.sortOrder` | string   | Optional     | The order of the returned events that are sorted by the published property.                                                                                                                        |

### Input Example

`{"parameters":{"since":"7 days prior to until","until":"current time","after":" ","filter":" ","q":" ","limit":100,"sortOrder":"ASCENDING"}}`

### Output

| **Parameter**                                     | **Type** | **Description**                                               |
| ------------------------------------------------- | -------- | ------------------------------------------------------------- |
| `status_code`                                     | number   | HTTP status code of the response                              |
| `reason`                                          | string   | Response reason phrase                                        |
| `json`                                            | object   | Output field: json                                            |
| `json.actor`                                      | object   | Output field: json.actor                                      |
| `json.actor.id`                                   | string   | Unique identifier                                             |
| `json.actor.type`                                 | string   | Type of the resource                                          |
| `json.actor.alternateId`                          | string   | Unique identifier                                             |
| `json.actor.displayName`                          | string   | Name of the resource                                          |
| `json.actor.detailEntry`                          | object   | Output field: json.actor.detailEntry                          |
| `json.client`                                     | object   | Output field: json.client                                     |
| `json.client.userAgent`                           | object   | Output field: json.client.userAgent                           |
| `json.client.userAgent.rawUserAgent`              | string   | Output field: json.client.userAgent.rawUserAgent              |
| `json.client.userAgent.os`                        | string   | Output field: json.client.userAgent.os                        |
| `json.client.userAgent.browser`                   | string   | Output field: json.client.userAgent.browser                   |
| `json.client.zone`                                | object   | Output field: json.client.zone                                |
| `json.client.device`                              | string   | Output field: json.client.device                              |
| `json.client.id`                                  | object   | Unique identifier                                             |
| `json.client.ipAddress`                           | string   | Output field: json.client.ipAddress                           |
| `json.client.geographicalContext`                 | object   | Output field: json.client.geographicalContext                 |
| `json.client.geographicalContext.city`            | string   | Output field: json.client.geographicalContext.city            |
| `json.client.geographicalContext.state`           | string   | Output field: json.client.geographicalContext.state           |
| `json.client.geographicalContext.country`         | string   | Output field: json.client.geographicalContext.country         |
| `json.client.geographicalContext.postalCode`      | number   | Output field: json.client.geographicalContext.postalCode      |
| `json.client.geographicalContext.geolocation`     | object   | Output field: json.client.geographicalContext.geolocation     |
| `json.client.geographicalContext.geolocation.lat` | number   | Output field: json.client.geographicalContext.geolocation.lat |

### Output Example

`{"status_code":200,"response_headers":{"content-length":"140","content-type":"application/json","Date":"Wed, 8 Jan 2025 20:37:23 GMT"},"reason":"OK","json":{"actor":{"id":"00uttidj01jqL21aM1d6","type":"User","alternateId":"john.doe@example.com","displayName":"John Doe","detailEntry":null},"client":{"userAgent":{},"zone":null,"device":"Computer","id":null,"ipAddress":"10.0.0.1","geographicalContext":{}},"device":{"id":"guofdhyjex1feOgbN1d9","name":"Mac15,6","os_platform":"OSX","os_version":"14.6....`

## Get Groups

Retrieves a comprehensive list of user groups from Okta Identity Management without the need for additional parameters.

### Endpoint

- **URL:** `/api/v1/groups`
- **Method:** `GET`

### Input

| **Argument Name**                                                                                                                   | **Type** | **Required** | **Description**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| ----------------------------------------------------------------------------------------------------------------------------------- | -------- | ------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `parameters.q`                                                                                                                      | string   | Optional     | Finds a group that matches the name property. Paging and searching are currently mutually exclusive.  You can't page a query.  The default limit for a query is 300 results. Query is intended for an auto-complete picker use case where users refine their search string to constrain the results.                                                                                                                                                                                                           |
| `parameters.filter`                                                                                                                 | string   | Optional     | All filters must be URL encoded. For example, filter=lastUpdated gt "2013-06-01T00:00:00.000Z" is encoded as filter=lastUpdated%20gt%20%222013-06-01T00:00:00.000Z%22. Examples: Filter group with a specific ID:                                                                                                                                                                                                                                                                                              |
| filter=id eq "00g1emaKYZTWRYYRRTSK"                                                                                                 |          |              |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| Filter groups that are of the type `OKTA_GROUP`:                                                                                    |          |              |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| filter=type eq "OKTA\_GROUP"                                                                                                        |          |              |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| Filter groups that are of the type `OKTA_GROUP` with profile updated after 11/11/2015:                                              |          |              |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| filter=type eq "OKTA\_GROUP" and lastUpdated gt "2016-11-11T00:00:00.000Z"                                                          |          |              |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| Filter groups that are of the type `OKTA_GROUP` with profile or memberships updated before 11/11/2015:                              |          |              |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| filter=type eq "OKTA\_GROUP" and (lastUpdated lt "2015-11-11T00:00:00.000Z" or lastMembershipUpdated lt "2015-11-11T00:00:00.000Z") |          |              |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `parameters.after`                                                                                                                  | string   | Optional     | Specifies the pagination cursor for the next page of groups. The after cursor should be treated as an opaque value and obtained through the next link relation.                                                                                                                                                                                                                                                                                                                                                |
| `parameters.limit`                                                                                                                  | number   | Optional     | Specifies the number of group results in a page. Don't write code that depends on the default or maximum value, as it might change. If you receive an HTTP 500 status code, you likely exceeded the request timeout. Retry your request with a smaller limit and page the results. The Okta default Everyone group isn't returned for users with a group Admin role. Note: We strongly encourage using a limit that's less than or equal to 200. Any number greater than 200 affects performance and accuracy. |
| `parameters.expand`                                                                                                                 | string   | Optional     | If specified, additional metadata is included in the response. Possible values are stats and app. This additional metadata is listed in the \_embedded key of the response. Note: You can use the stats value to return the number of users within a group.  This is listed as the \_embedded.stats.usersCount value in the response.                                                                                                                                                                          |
| `parameters.search`                                                                                                                 | string   | Optional     | Searches for groups with a supported filtering expression for all attributes except for \_embedded, \_links, and objectClass. Search currently performs a startsWith match but it should be considered an implementation detail and might change without notice in the future. This operation supports pagination. Using search requires URL encoding, for example, search=type eq "OKTA\_GROUP" is encoded as search=type+eq+%22OKTA\_GROUP%22. This operation searches many properties:                      |
| Any group profile property, including imported app group profile properties.                                                        |          |              |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| The top-level properties id, created, lastMembershipUpdated, lastUpdated, and type.                                                 |          |              |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| The source of groups with type of APP\_GROUP, accessed as source.id.                                                                |          |              |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| You can also use sortBy and sortOrder parameters.                                                                                   |          |              |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `parameters.sortBy`                                                                                                                 | string   | Optional     | Specifies field to sort by (for search queries only). sortBy can be any single property, for example sortBy=profile.name.                                                                                                                                                                                                                                                                                                                                                                                      |
| `parameters.sortOrder`                                                                                                              | string   | Optional     | Specifies sort order: asc or desc (for search queries only). This parameter is ignored if if sortBy is not present. Groups with the same value for the sortBy property will be ordered by id.                                                                                                                                                                                                                                                                                                                  |

### Input Example

`{"parameters":{"q":"West&limit=10","filter":"lastUpdated gt 2013-06-01T00:00:00.000Z","after":" ","limit":200,"expand":" ","search":"type eq APP_GROUP","sortBy":"lastUpdated","sortOrder":"asc"}}`

### Output

| **Parameter**                | **Type** | **Description**                          |
| ---------------------------- | -------- | ---------------------------------------- |
| `status_code`                | number   | HTTP status code of the response         |
| `reason`                     | string   | Response reason phrase                   |
| `json`                       | object   | Output field: json                       |
| `json.id`                    | string   | Unique identifier                        |
| `json.created`               | string   | Output field: json.created               |
| `json.lastUpdated`           | string   | Output field: json.lastUpdated           |
| `json.lastMembershipUpdated` | string   | Output field: json.lastMembershipUpdated |
| `json.objectClass`           | array    | Output field: json.objectClass           |
| `json.type`                  | string   | Type of the resource                     |
| `json.profile`               | object   | Output field: json.profile               |
| `json.profile.name`          | string   | Name of the resource                     |
| `json.profile.description`   | string   | Output field: json.profile.description   |
| `json._links`                | object   | Output field: json.\_links               |
| `json._links.logo`           | array    | Output field: json.\_links.logo          |
| `json._links.logo.name`      | string   | Name of the resource                     |
| `json._links.logo.href`      | string   | Output field: json.\_links.logo.href     |
| `json._links.logo.type`      | string   | Type of the resource                     |
| `json._links.users`          | object   | Output field: json.\_links.users         |
| `json._links.users.href`     | string   | Output field: json.\_links.users.href    |
| `json._links.apps`           | object   | Output field: json.\_links.apps          |
| `json._links.apps.href`      | string   | Output field: json.\_links.apps.href     |

### Output Example

`{"status_code":200,"response_headers":{"content-length":"140","content-type":"application/json","Date":"Wed, 8 Jan 2025 20:37:23 GMT"},"reason":"OK","json":{"id":"00g1emaKYZTWRYYRRTSK","created":"2015-02-06T10:11:28.000Z","lastUpdated":"2015-10-05T19:16:43.000Z","lastMembershipUpdated":"2015-11-28T19:15:32.000Z","objectClass":["okta:user_group"],"type":"OKTA_GROUP","profile":{"name":"West Coast users","description":"All users West of The Rockies"},"_links":{"logo":[],"users":{},"apps":{}}}}`

## Get Users

Retrieves a comprehensive list of user accounts from Okta Identity Management for account management and analysis.

### Endpoint

- **URL:** `/api/v1/users`
- **Method:** `GET`

### Input

| **Argument Name**                                                                                                                                                         | **Type** | **Required** | **Description**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `parameters.q`                                                                                                                                                            | string   | Optional     | Finds users who match the specified query. This doesn't support pagination. This might not deliver optimal performance for large orgs, and is deprecated for such use cases.  To ensure optimal performance, use a search parameter instead. Use the q parameter for a simple lookup of users by name, for example when creating a people picker. The value of q is matched against firstName, lastName, or email. This performs a startsWith match, but this is an implementation detail and can change without notice. You don't need to specify firstName, lastName, or email.                                                                                                                                                                                                                                                                                                                                               |
| `parameters.filter`                                                                                                                                                       | string   | Optional     | Filters users with a supported expression for a subset of properties. This requires URL encoding. For example, filter=lastUpdated gt "2013-06-01T00:00:00.000Z" is encoded as filter=lastUpdated%20gt%20%222013-06-01T00:00:00.000Z%22. Filtering is case-sensitive for attribute names and query values, while attribute operators are case-insensitive. Filtering supports the following limited number of properties: status, lastUpdated, id, profile.login, profile.email, profile.firstName, and profile.lastName. Additionally, filtering supports only the equal eq operator from the standard Okta API filtering semantics, except in the case of the lastUpdated property. This property can also use the inequality operators (gt, ge, lt, and le). For logical operators, only the logical operators and and or are supported. The not operator isn't supported. See Filtering and Operators. for more information. |
| `parameters.after`                                                                                                                                                        | string   | Optional     | Specifies the pagination cursor for the next page of groups. The after cursor should be treated as an opaque value and obtained through the next link relation.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `parameters.limit`                                                                                                                                                        | number   | Optional     | Specifies the number of results returned. Defaults to 10 if q is provided.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `parameters.expand`                                                                                                                                                       | string   | Optional     | An optional parameter to include metadata in the `_embedded` attribute. Valid value: `classification`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `parameters.search`                                                                                                                                                       | string   | Optional     | Searches for users with a supported filtering expression for most properties. Okta recommends using this parameter for search for best performance. This operation supports pagination. Use an ID lookup for records that you update to ensure your results contain the latest data. Property names in the search parameter are case sensitive, whereas operators (eq, sw, and so on) and string values are case insensitive. Unlike with user logins, diacritical marks are significant in search string values: a search for isaac.brock finds Isaac.Brock, but doesn't find a property whose value is isáàc.bröck. This operation requires URL encoding.  For example, search=profile.department eq "Engineering" is encoded as search=profile.department%20eq%20%22Engineering%22.                                                                                                                                          |
| `parameters.sortBy`                                                                                                                                                       | string   | Optional     | Specifies field to sort by (for search queries only). This can be any single property, for example sortBy=profile.lastName. Users with the same value for the sortBy property will be ordered by id.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `parameters.sortOrder`                                                                                                                                                    | string   | Optional     | Specifies sort order asc or desc (for search queries only). Sorting is done in ASCII sort order (that is, by ASCII character value), but isn't case sensitive. sortOrder is ignored if sortBy is not present.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `headers`                                                                                                                                                                 | object   | Optional     | HTTP headers for the request                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `headers.Content-Type`                                                                                                                                                    | string   | Optional     | Specifies the media type of the resource. Optional okta-response value can be included for performance optimization. Complex DelAuth configurations may degrade performance when fetching specific parts of the response, and passing this parameter can omit these parts, bypassing the bottleneck. Enum values for okta-response:                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| omitCredentials: Omits the credentials subobject from the response.                                                                                                       |          |              |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| omitCredentialsLinks: Omits the following HAL links from the response: Change Password, Change Recovery Question, Forgot Password, Reset Password, Reset Factors, Unlock. |          |              |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| omitTransitioningToStatus: Omits the transitioningToStatus field from the response.                                                                                       |          |              |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |

### Input Example

`{"parameters":{"q":"West&limit=10","filter":"lastUpdated gt 2013-06-01T00:00:00.000Z","after":" ","limit":200,"expand":" ","search":"type eq APP_GROUP","sortBy":"lastUpdated","sortOrder":"asc"},"headers":{"Content-Type":"omitCredentials"}}`

### Output

| **Parameter**                    | **Type** | **Description**                         |
| -------------------------------- | -------- | --------------------------------------- |
| `status_code`                    | number   | HTTP status code of the response        |
| `reason`                         | string   | Response reason phrase                  |
| `json`                           | object   | Output field: json                      |
| `json.id`                        | string   | Unique identifier                       |
| `json.status`                    | string   | Status value                            |
| `json.created`                   | string   | Output field: json.created              |
| `json.activated`                 | object   | Output field: json.activated            |
| `json.statusChanged`             | object   | Status value                            |
| `json.lastLogin`                 | string   | Output field: json.lastLogin            |
| `json.lastUpdated`               | string   | Output field: json.lastUpdated          |
| `json.passwordChanged`           | string   | Output field: json.passwordChanged      |
| `json.type`                      | object   | Type of the resource                    |
| `json.type.id`                   | string   | Unique identifier                       |
| `json.profile`                   | object   | Output field: json.profile              |
| `json.profile.firstName`         | string   | Name of the resource                    |
| `json.profile.lastName`          | string   | Name of the resource                    |
| `json.profile.mobilePhone`       | object   | Output field: json.profile.mobilePhone  |
| `json.profile.secondEmail`       | object   | Output field: json.profile.secondEmail  |
| `json.profile.login`             | string   | Output field: json.profile.login        |
| `json.profile.email`             | string   | Output field: json.profile.email        |
| `json.realmId`                   | string   | Unique identifier                       |
| `json.credentials`               | object   | Output field: json.credentials          |
| `json.credentials.password`      | object   | Output field: json.credentials.password |
| `json.credentials.provider`      | object   | Unique identifier                       |
| `json.credentials.provider.type` | string   | Unique identifier                       |

### Output Example

`{"status_code":200,"response_headers":{"content-length":"140","content-type":"application/json","Date":"Wed, 8 Jan 2025 20:37:23 GMT"},"reason":"OK","json":{"id":"00u118oQYT4TBGuay0g4","status":"ACTIVE","created":"2022-04-04T15:56:05.000Z","activated":null,"statusChanged":null,"lastLogin":"2022-05-04T19:50:52.000Z","lastUpdated":"2022-05-05T18:15:44.000Z","passwordChanged":"2022-04-04T16:00:22.000Z","type":{"id":"oty1162QAr8hJjTaq0g4"},"profile":{"firstName":"Alice","lastName":"Smith","mobilePho...`

## Remove User to Group

Removes a user from a specified group in Okta Identity Management using the unique groupId and userId.

### Endpoint

- **URL:** `/api/v1/groups/{{groupId}}/users/{{userId}}`
- **Method:** `DELETE`

### Input

| **Argument Name**         | **Type** | **Required** | **Description**              |
| ------------------------- | -------- | ------------ | ---------------------------- |
| `path_parameters.groupId` | string   | Required     | Group ID.                    |
| `path_parameters.userId`  | string   | Required     | ID of an existing Okta user. |

### Input Example

`{"path_parameters":{"groupId":"string","userId":"string"}}`

### Output

| **Parameter** | **Type** | **Description**                  |
| ------------- | -------- | -------------------------------- |
| `status_code` | number   | HTTP status code of the response |
| `reason`      | string   | Response reason phrase           |
| `json`        | object   | Output field: json               |

### Output Example

`{"status_code":200,"response_headers":{"content-length":"140","content-type":"application/json","Date":"Wed, 8 Jan 2025 20:37:23 GMT"},"reason":"OK","json":{}}`

## Suspend User By ID

Suspends an Okta user account using the specified userId, essential for rapidly disabling access when necessary.

### Endpoint

- **URL:** `/api/v1/users/{{userId}}/lifecycle/suspend`
- **Method:** `POST`

### Input

| **Argument Name**        | **Type** | **Required** | **Description**              |
| ------------------------ | -------- | ------------ | ---------------------------- |
| `path_parameters.userId` | string   | Required     | ID of an existing Okta user. |

### Input Example

`{"path_parameters":{"userId":"string"}}`

### Output

| **Parameter** | **Type** | **Description**                  |
| ------------- | -------- | -------------------------------- |
| `status_code` | number   | HTTP status code of the response |
| `reason`      | string   | Response reason phrase           |
| `json`        | object   | Output field: json               |

### Output Example

`{"status_code":200,"response_headers":{"content-length":"140","content-type":"application/json","Date":"Wed, 8 Jan 2025 20:37:23 GMT"},"reason":"OK","json":{}}`

## Unlock User By ID

Unlocks an Okta user account with LOCKED\_OUT status or permits sign-in from unknown devices for ACTIVE users, requiring the userId.

### Endpoint

- **URL:** `/api/v1/users/{{userId}}/lifecycle/unlock`
- **Method:** `POST`

### Input

| **Argument Name**        | **Type** | **Required** | **Description**              |
| ------------------------ | -------- | ------------ | ---------------------------- |
| `path_parameters.userId` | string   | Required     | ID of an existing Okta user. |

### Input Example

`{"path_parameters":{"userId":"string"}}`

### Output

| **Parameter** | **Type** | **Description**                  |
| ------------- | -------- | -------------------------------- |
| `status_code` | number   | HTTP status code of the response |
| `reason`      | string   | Response reason phrase           |
| `json`        | object   | Output field: json               |

### Output Example

`{"status_code":200,"response_headers":{"content-length":"140","content-type":"application/json","Date":"Wed, 8 Jan 2025 20:37:23 GMT"},"reason":"OK","json":{}}`

## Unsuspend User By ID

Reactivates a suspended user in Okta Identity Management, setting their status to ACTIVE using the user's unique identifier (userId).

### Endpoint

- **URL:** `/api/v1/users/{{userId}}/lifecycle/unsuspend`
- **Method:** `POST`

### Input

| **Argument Name**        | **Type** | **Required** | **Description**              |
| ------------------------ | -------- | ------------ | ---------------------------- |
| `path_parameters.userId` | string   | Required     | ID of an existing Okta user. |

### Input Example

`{"path_parameters":{"userId":"string"}}`

### Output

| **Parameter** | **Type** | **Description**                  |
| ------------- | -------- | -------------------------------- |
| `status_code` | number   | HTTP status code of the response |
| `reason`      | string   | Response reason phrase           |
| `json`        | object   | Output field: json               |

### Output Example

`{"status_code":200,"response_headers":{"content-length":"140","content-type":"application/json","Date":"Wed, 8 Jan 2025 20:37:23 GMT"},"reason":"OK","json":{}}`

# Response Headers

| **Header**     | **Description**                                       | **Example**                   |
| -------------- | ----------------------------------------------------- | ----------------------------- |
| content-length | The length of the response body in bytes              | 140                           |
| content-type   | The media type of the resource                        | application/json              |
| Date           | The date and time at which the message was originated | Thu, 01 Jan 2024 00:00:00 GMT |
