---
title: "Update User"
method: PUT
path: "/api/v1/users/{userId}"
tags: ["User"]
---

# Update User

`PUT /api/v1/users/{userId}`

## Request

- Base URL: `https://your-subdomain.okta.com`
- URL: `https://your-subdomain.okta.com/api/v1/users/{userId}`
- Auth: API key in header `Authorization`

Update a user's profile and/or credentials using strict-update semantics.

## Path parameters

- `userId` string, required

## Query parameters

- `strict` boolean

## Request body

- User
  - `_embedded` object
  - `_links` object
  - `activated` string, date-time
  - `created` string, date-time
  - `credentials` UserCredentials
    - `password` PasswordCredential
      - `hash` PasswordCredentialHash
        - `algorithm` 'BCRYPT' | 'SHA-512' | 'SHA-256' | 'SHA-1' | 'MD5'
        - `salt` string
        - `saltOrder` string
        - `value` string
        - `workFactor` integer
      - `hook` PasswordCredentialHook
        - `type` string
      - `value` string, password
    - `provider` AuthenticationProvider
      - `name` string
      - `type` 'ACTIVE_DIRECTORY' | 'FEDERATION' | 'LDAP' | 'OKTA' | 'SOCIAL' | 'IMPORT'
    - `recovery_question` RecoveryQuestionCredential
      - `answer` string
      - `question` string
  - `id` string
  - `lastLogin` string, date-time
  - `lastUpdated` string, date-time
  - `passwordChanged` string, date-time
  - `profile` UserProfile
    - `city` string
    - `costCenter` string
    - `countryCode` string
    - `department` string
    - `displayName` string
    - `division` string
    - `email` string
    - `employeeNumber` string
    - `firstName` string
    - `honorificPrefix` string
    - `honorificSuffix` string
    - `lastName` string
    - `locale` string
    - `login` string
    - `manager` string
    - `managerId` string
    - `middleName` string
    - `mobilePhone` string
    - `nickName` string
    - `organization` string
    - `postalAddress` string
    - `preferredLanguage` string
    - `primaryPhone` string
    - `profileUrl` string
    - `secondEmail` string
    - `state` string
    - `streetAddress` string
    - `timezone` string
    - `title` string
    - `userType` string
    - `zipCode` string
  - `status` 'ACTIVE' | 'DEPROVISIONED' | 'LOCKED_OUT' | 'PASSWORD_EXPIRED' | 'PROVISIONED' | 'RECOVERY' | 'STAGED' | 'SUSPENDED'
  - `statusChanged` string, date-time
  - `transitioningToStatus` 'ACTIVE' | 'DEPROVISIONED' | 'LOCKED_OUT' | 'PASSWORD_EXPIRED' | 'PROVISIONED' | 'RECOVERY' | 'STAGED' | 'SUSPENDED'
  - `type` UserType
    - `_links` object
    - `created` string, date-time
    - `createdBy` string
    - `default` boolean
    - `description` string
    - `displayName` string
    - `id` string
    - `lastUpdated` string, date-time
    - `lastUpdatedBy` string
    - `name` string

## Response `200`

Success

- User
  - `_embedded` object
  - `_links` object
  - `activated` string, date-time
  - `created` string, date-time
  - `credentials` UserCredentials
    - `password` PasswordCredential
      - `hash` PasswordCredentialHash
        - `algorithm` 'BCRYPT' | 'SHA-512' | 'SHA-256' | 'SHA-1' | 'MD5'
        - `salt` string
        - `saltOrder` string
        - `value` string
        - `workFactor` integer
      - `hook` PasswordCredentialHook
        - `type` string
      - `value` string, password
    - `provider` AuthenticationProvider
      - `name` string
      - `type` 'ACTIVE_DIRECTORY' | 'FEDERATION' | 'LDAP' | 'OKTA' | 'SOCIAL' | 'IMPORT'
    - `recovery_question` RecoveryQuestionCredential
      - `answer` string
      - `question` string
  - `id` string
  - `lastLogin` string, date-time
  - `lastUpdated` string, date-time
  - `passwordChanged` string, date-time
  - `profile` UserProfile
    - `city` string
    - `costCenter` string
    - `countryCode` string
    - `department` string
    - `displayName` string
    - `division` string
    - `email` string
    - `employeeNumber` string
    - `firstName` string
    - `honorificPrefix` string
    - `honorificSuffix` string
    - `lastName` string
    - `locale` string
    - `login` string
    - `manager` string
    - `managerId` string
    - `middleName` string
    - `mobilePhone` string
    - `nickName` string
    - `organization` string
    - `postalAddress` string
    - `preferredLanguage` string
    - `primaryPhone` string
    - `profileUrl` string
    - `secondEmail` string
    - `state` string
    - `streetAddress` string
    - `timezone` string
    - `title` string
    - `userType` string
    - `zipCode` string
  - `status` 'ACTIVE' | 'DEPROVISIONED' | 'LOCKED_OUT' | 'PASSWORD_EXPIRED' | 'PROVISIONED' | 'RECOVERY' | 'STAGED' | 'SUSPENDED'
  - `statusChanged` string, date-time
  - `transitioningToStatus` 'ACTIVE' | 'DEPROVISIONED' | 'LOCKED_OUT' | 'PASSWORD_EXPIRED' | 'PROVISIONED' | 'RECOVERY' | 'STAGED' | 'SUSPENDED'
  - `type` UserType
    - `_links` object
    - `created` string, date-time
    - `createdBy` string
    - `default` boolean
    - `description` string
    - `displayName` string
    - `id` string
    - `lastUpdated` string, date-time
    - `lastUpdatedBy` string
    - `name` string

---

[API](https://skmtc.dev/okta/apis/okta-api.md) - [All operations](https://skmtc.dev/okta/apis/okta-api/llms.txt) - [OpenAPI document](https://skmtc.dev/okta/apis/okta-api/revisions/7e5249c30571?raw)
