Reference · Tools
Okta
Manage users in Okta identity and access management platform
The Okta node manages user accounts — creating, reading, updating and deleting them — in Okta's identity platform. A typical build is provisioning an account when someone is added to the HR system and deactivating it on the day they leave.
- Node type
- Action
- Parameters
- 16
- Outputs
- Output, Error
- Credentials
- Okta API
Okta
Create, read, update, and delete users in Okta.
Overview
Okta is an identity and access management platform. This tool allows you to create, retrieve, update, and delete user accounts via the Okta Users API. It supports cursor-based pagination for listing users, search/filter queries, and a simplified response mode that returns only core user fields.
Category: Development
Tool Name: okta
Version: 1
Appearance: Icon: si-okta | Color: #007dc1
Node Type
Action — processes input items and produces output
Input / Output
| Direction | Port(s) |
|---|---|
| Input | Input |
| Output | Output, Error |
Credentials
This tool requires Okta API credentials. See the Credentials Guide for setup instructions.
Resources
| Resource | Value |
|---|---|
| User | user |
Operations
| Operation | Value | Description |
|---|---|---|
| Create | create | Create a new user |
| Delete | delete | Delete an existing user |
| Get | get | Get details of a user |
| Get Many | getAll | Get many users |
| Update | update | Update an existing user |
Parameters
User: Create
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| First Name | string | Yes | — | First name of the user. Supports expressions like {{ $json.firstName }}. |
| Last Name | string | Yes | — | Last name of the user. Supports expressions like {{ $json.lastName }}. |
| Username | string | Yes | — | Unique identifier for the user (must be an email address). Supports expressions. |
string | Yes | — | Primary email address of the user. Supports expressions. | |
| Activate | boolean | No | true | Whether to activate the user and allow access to all assigned applications. |
Fields (getCreateFields) | collection | No | {} | Additional optional fields for user creation. |
| — City | string | No | — | City for the user’s address. |
| — Cost Center | string | No | — | Name of cost center assigned to user. |
| — Country Code | string | No | — | Country code (ISO 3166-1 alpha-2). |
| — Department | string | No | — | Name of user’s department. |
| — Display Name | string | No | — | Name of the user displayed in the UI. |
| — Division | string | No | — | Name of user’s division. |
| — Employee Number | string | No | — | Organization- or company-assigned unique identifier. |
| — Honorific Prefix | string | No | — | Honorific prefix (e.g., Mr., Dr.). |
| — Honorific Suffix | string | No | — | Honorific suffix (e.g., Jr., III). |
| — Locale | string | No | — | User’s default location for time zone and language (e.g., en_US). |
| — Manager | string | No | — | DisplayName of the user’s manager. |
| — Manager ID | string | No | — | ID of the user’s manager. |
| — Middle Name | string | No | — | Middle name of the user. |
| — Mobile Phone | string | No | — | Mobile phone number. |
| — Nick Name | string | No | — | Casual way to address the user. |
| — Organization | string | No | — | Name of the user’s organization. |
| — Password | string | No | — | Initial password for the user. |
| — Postal Address | string | No | — | Mailing address component. |
| — Preferred Language | string | No | — | User’s preferred written or spoken language (e.g., en-US). |
| — Primary Phone | string | No | — | Primary phone number. |
| — Profile URL | string | No | — | URL of the user’s online profile (e.g., a web page). |
| — Recovery Question Answer | string | No | — | Answer to the security/recovery question. |
| — Recovery Question | string | No | — | Security/recovery question text. |
| — Second Email | string | No | — | Alternate email address of the user. |
| — State | string | No | — | State or province component of the user’s address. |
| — Street Address | string | No | — | Full street address component. |
| — Timezone | string | No | — | User’s time zone (IANA format, e.g., America/Los_Angeles). |
| — Title | string | No | — | User’s title (e.g., Vice President). |
| — User Type | string | No | — | Used to describe the organization-to-user relationship. |
| — Zip Code | string | No | — | Zip or postal code. |
Password, Recovery Question and Recovery Question Answer are sent as the new user’s credentials; every other field becomes part of the user’s profile.
User: Delete
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| User ID | string | Yes | — | The Okta user ID or login (username/email). Find in Okta Admin Console: Directory > People > select user > General tab. Supports expressions like {{ $json.userId }}. |
| Send Email | boolean | No | false | Whether to send a deactivation email to the administrator. |
User: Get
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| User ID | string | Yes | — | The Okta user ID or login (username/email). Find in Okta Admin Console: Directory > People > select user > General tab. Supports expressions like {{ $json.userId }}. |
| Simplify | boolean | No | true | Whether to return a simplified version of the response instead of the raw data. |
User: Get Many
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Search Query | string | No | — | Filter users using Okta search expression syntax. See https://developer.okta.com/docs/reference/core-okta-api/#filter for syntax reference. Supports expressions. |
| Return All | boolean | No | false | Whether to return all results or only up to a given limit. |
| Limit | number | No | 20 | Max number of results to return. (shown when Return All is false) |
| Simplify | boolean | No | true | Whether to return a simplified version of the response instead of the raw data. |
User: Update
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| User ID | string | Yes | — | The Okta user ID or login (username/email). Find in Okta Admin Console: Directory > People > select user > General tab. Supports expressions like {{ $json.userId }}. |
Fields (getUpdateFields) | collection | No | {} | Fields to update on the user profile. |
| — City | string | No | — | City for the user’s address. |
| — Cost Center | string | No | — | Name of cost center assigned to user. |
| — Country Code | string | No | — | Country code (ISO 3166-1 alpha-2). |
| — Department | string | No | — | Name of user’s department. |
| — Display Name | string | No | — | Name of the user displayed in the UI. |
| — Division | string | No | — | Name of user’s division. |
string | No | — | Primary email address of the user. | |
| — Employee Number | string | No | — | Organization- or company-assigned unique identifier. |
| — First Name | string | No | — | First name of the user. |
| — Honorific Prefix | string | No | — | Honorific prefix (e.g., Mr., Dr.). |
| — Honorific Suffix | string | No | — | Honorific suffix (e.g., Jr., III). |
| — Last Name | string | No | — | Last name of the user. |
| — Locale | string | No | — | User’s default location for time zone and language (e.g., en_US). |
| — Manager | string | No | — | DisplayName of the user’s manager. |
| — Manager ID | string | No | — | ID of the user’s manager. |
| — Middle Name | string | No | — | Middle name of the user. |
| — Mobile Phone | string | No | — | Mobile phone number. |
| — Nick Name | string | No | — | Casual way to address the user. |
| — Organization | string | No | — | Name of the user’s organization. |
| — Password | string | No | — | Initial password for the user. |
| — Postal Address | string | No | — | Mailing address component. |
| — Preferred Language | string | No | — | User’s preferred written or spoken language (e.g., en-US). |
| — Primary Phone | string | No | — | Primary phone number. |
| — Profile URL | string | No | — | URL of the user’s online profile (e.g., a web page). |
| — Recovery Question | string | No | — | Security/recovery question text. |
| — Recovery Question Answer | string | No | — | Answer to the security/recovery question. |
| — Second Email | string | No | — | Alternate email address of the user. |
| — State | string | No | — | State or province component of the user’s address. |
| — Street Address | string | No | — | Full street address component. |
| — Timezone | string | No | — | User’s time zone (IANA format, e.g., America/Los_Angeles). |
| — Title | string | No | — | User’s title (e.g., Vice President). |
| — User Type | string | No | — | Used to describe the organization-to-user relationship. |
| — Username | string | No | — | Unique identifier (must be an email). |
| — Zip Code | string | No | — | Zip or postal code. |
All Operations
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Max Concurrency | number | No | 10 | Maximum number of items to process concurrently. |
Output Data
The Okta response is merged onto the input item JSON — the fields already on the item pass through and the user object is written on top of them.
| Operation | Output items per input item |
|---|---|
create, get, update | One item carrying the Okta user object. Binary data is forwarded unchanged. |
delete | One item carrying success: true. Binary data is forwarded unchanged. |
getAll | Fans out — one item per user. Binary data is not forwarded on this operation. |
With Simplify on (the default for Get and Get Many), the user object is reduced to the core fields:
{
"id": "00u1abcd2345EfGHIjk6",
"status": "ACTIVE",
"created": "2026-01-15T10:30:00.000Z",
"activated": "2026-01-15T10:31:00.000Z",
"lastLogin": "2026-02-02T08:12:00.000Z",
"lastUpdated": "2026-02-01T17:45:00.000Z",
"passwordChanged": "2026-01-15T10:31:00.000Z",
"profile": {
"firstName": "Nathan",
"lastName": "Smith",
"login": "nathan@example.com",
"email": "nathan@example.com"
}
}
Turn Simplify off to get the raw Okta user object, including the full profile, credentials metadata and _links. Create and Update always return the raw object.
Deleting a user in Okta requires deactivating it first; this node does both in one call, so a still-active user is deactivated and then removed. With Return All on, Get Many pages through every user with the API cursor; with it off, it requests one page capped at Limit.
Reference the result downstream by expression, e.g. {{ $json.id }} or {{ $json.profile.email }}.
Usage Examples
- Create a new Okta user with email and name
- List all active users in Okta
- Delete a deprovisioned user from Okta
- Update a user’s department and title in Okta
- Get details of a specific Okta user by ID
Example Configuration
Create a user with an extended profile, without activating it yet:
{
"type": "okta",
"parameters": {
"resource": "user",
"operation": "create",
"firstName": "{{ $json.firstName }}",
"lastName": "{{ $json.lastName }}",
"login": "{{ $json.email }}",
"email": "{{ $json.email }}",
"activate": false,
"getCreateFields": {
"department": "Engineering",
"title": "Senior Developer",
"mobilePhone": "+1-555-0123",
"manager": "manager@example.com",
"employeeNumber": "EMP001"
}
}
}
Get one user in simplified form:
{
"type": "okta",
"parameters": {
"resource": "user",
"operation": "get",
"userId": "{{ $json.userId }}",
"simplify": true
}
}
List active engineers, 50 at a time:
{
"type": "okta",
"parameters": {
"resource": "user",
"operation": "getAll",
"searchQuery": "profile.department eq \"Engineering\" and status eq \"ACTIVE\"",
"returnAll": false,
"limit": 50,
"simplify": true
}
}
Update a user’s profile:
{
"type": "okta",
"parameters": {
"resource": "user",
"operation": "update",
"userId": "{{ $json.id }}",
"getUpdateFields": {
"title": "Lead Developer",
"department": "Engineering",
"city": "Austin",
"state": "TX"
}
}
}
Delete a user and notify the administrator:
{
"type": "okta",
"parameters": {
"resource": "user",
"operation": "delete",
"userId": "{{ $json.userId }}",
"sendEmail": true
}
}
Error Handling
| Mode | Behavior |
|---|---|
| stop | Halts workflow on first error |
| continue | Skips failed items, passes successful ones through |
| errorPort | Routes failed items to Error output port |
Tips
Create, read, update, and delete user accounts in Okta identity management platform.
Frequently asked questions
What can it manage?
User accounts: create, read, update and delete. It is focused on the user lifecycle rather than the whole Okta object model.
Is this useful for joiner-mover-leaver processes?
Yes, that is the natural fit — creating on hire and deactivating on departure are the two operations most identity workflows want automated first.
Can I combine it with a directory?
Yes. Pairing it with the LDAP node lets one workflow provision in both Okta and a directory server, which is common in hybrid environments.
Which credential does it need?
An Okta API credential with permission to administer users in your org.
Build with the Okta node
Drop it into a workflow, wire it to an agent, or call it on a schedule. You'll need Okta API credentials first.
Open BusyBotLast updated . Spotted something wrong? Tell us.