openapi: 3.0.3
servers:
  - url: http://okta.local
  - url: ","
info:
  contact: {}
  description: The [Okta User API](/docs/api/rest/users.html) provides operations to manage users in your organization.
  title: Users (Okta API)
  version: 1.0.0
  x-apisguru-categories:
    - security
  x-origin:
    - format: postman
      url: https://www.postman.com/collections/1755573c5cf5fbf7968b
      version: "1.0"
  x-providerName: okta.local
tags:
  - name: Create User
  - name: Credential Operations
  - name: Lifecycle Operations
  - name: List Users
paths:
  /api/v1/users:
    get:
      description: Find User
      operationId: findUser
      parameters:
        - in: query
          name: q
          schema:
            example: user
            type: string
      requestBody:
        content:
          application/octet-stream: {}
      responses:
        "200":
          description: ""
      summary: Find User
    post:
      description: Create User in Group
      operationId: createUserInGroup
      parameters:
        - in: query
          name: activate
          schema:
            example: "false"
            type: string
      requestBody:
        content:
          application/json:
            example:
              groupIds:
                - "{{groupId}}"
              profile:
                email: isaac@{{email-suffix}}
                firstName: Isaac
                lastName: Brock
                login: isaac@{{email-suffix}}
            schema:
              properties:
                groupIds:
                  items:
                    example: "{{groupId}}"
                    type: string
                  type: array
                profile:
                  properties:
                    email:
                      example: isaac@{{email-suffix}}
                      type: string
                    firstName:
                      example: Isaac
                      type: string
                    lastName:
                      example: Brock
                      type: string
                    login:
                      example: isaac@{{email-suffix}}
                      type: string
                  type: object
              type: object
      responses:
        "200":
          description: ""
      summary: Create User in Group
      tags:
        - Create User
  /api/v1/users/me:
    get:
      description: Get Current User
      operationId: getCurrentUser
      requestBody:
        content:
          application/octet-stream: {}
      responses:
        "200":
          description: ""
      summary: Get Current User
  "/api/v1/users/{userId}":
    get:
      description: Get User
      operationId: getUser
      requestBody:
        content:
          application/octet-stream: {}
      responses:
        "200":
          description: ""
      summary: Get User
    parameters:
      - in: path
        name: userId
        required: true
        schema:
          type: string
    put:
      description: Set Recovery Credential
      operationId: setRecoveryCredential
      requestBody:
        content:
          application/json:
            example:
              credentials:
                recovery_question:
                  answer: Annie Oakley
                  question: Who's a major player in the cowboy scene?
            schema:
              properties:
                credentials:
                  properties:
                    recovery_question:
                      properties:
                        answer:
                          example: Annie Oakley
                          type: string
                        question:
                          example: Who's a major player in the cowboy scene?
                          type: string
                      type: object
                  type: object
              type: object
      responses:
        "200":
          description: ""
      summary: Set Recovery Credential
      tags:
        - Credential Operations
  "/api/v1/users/{userId}/appLinks":
    get:
      description: Get Assigned App Links
      operationId: getAssignedAppLinks
      requestBody:
        content:
          application/octet-stream: {}
      responses:
        "200":
          description: ""
      summary: Get Assigned App Links
    parameters:
      - in: path
        name: userId
        required: true
        schema:
          type: string
  "/api/v1/users/{userId}/credentials/change_password":
    parameters:
      - in: path
        name: userId
        required: true
        schema:
          type: string
    post:
      description: Change Password
      operationId: changePassword
      requestBody:
        content:
          application/json:
            example:
              newPassword:
                value: uTVM,TPw55
              oldPassword:
                value: "{{password}}"
            schema:
              properties:
                newPassword:
                  properties:
                    value:
                      example: uTVM,TPw55
                      type: string
                  type: object
                oldPassword:
                  properties:
                    value:
                      example: "{{password}}"
                      type: string
                  type: object
              type: object
      responses:
        "200":
          description: ""
      summary: Change Password
      tags:
        - Credential Operations
  "/api/v1/users/{userId}/credentials/change_recovery_question":
    parameters:
      - in: path
        name: userId
        required: true
        schema:
          type: string
    post:
      description: Change Recovery Question
      operationId: changeRecoveryQuestion
      requestBody:
        content:
          application/json:
            example:
              password:
                value: "{{password}}"
              recovery_question:
                answer: My recovery credentials are updated
                question: What happens when I update my question
            schema:
              properties:
                password:
                  properties:
                    value:
                      example: "{{password}}"
                      type: string
                  type: object
                recovery_question:
                  properties:
                    answer:
                      example: My recovery credentials are updated
                      type: string
                    question:
                      example: What happens when I update my question
                      type: string
                  type: object
              type: object
      responses:
        "200":
          description: ""
      summary: Change Recovery Question
      tags:
        - Credential Operations
  "/api/v1/users/{userId}/credentials/forgot_password":
    parameters:
      - in: path
        name: userId
        required: true
        schema:
          type: string
    post:
      description: Forgot Password (One Time Code)
      operationId: forgotPassword(oneTimeCode)
      parameters:
        - in: query
          name: sendEmail
          schema:
            example: "false"
            type: string
      requestBody:
        content:
          text/plain:
            example: ""
      responses:
        "200":
          description: ""
      summary: Forgot Password (One Time Code)
      tags:
        - Credential Operations
  "/api/v1/users/{userId}/groups":
    get:
      description: Get Groups for User
      operationId: getGroupsForUser
      requestBody:
        content:
          application/octet-stream: {}
      responses:
        "200":
          description: ""
      summary: Get Groups for User
    parameters:
      - in: path
        name: userId
        required: true
        schema:
          type: string
  "/api/v1/users/{userId}/lifecycle/activate":
    parameters:
      - in: path
        name: userId
        required: true
        schema:
          type: string
    post:
      description: Activate User
      operationId: activateUser
      parameters:
        - in: query
          name: sendEmail
          schema:
            example: "false"
            type: string
      requestBody:
        content:
          text/plain:
            example: ""
      responses:
        "200":
          description: ""
      summary: Activate User
      tags:
        - Lifecycle Operations
  "/api/v1/users/{userId}/lifecycle/deactivate":
    parameters:
      - in: path
        name: userId
        required: true
        schema:
          type: string
    post:
      description: Deactivate User
      operationId: deactivateUser
      requestBody:
        content:
          text/plain:
            example: ""
      responses:
        "200":
          description: ""
      summary: Deactivate User
      tags:
        - Lifecycle Operations
  "/api/v1/users/{userId}/lifecycle/expire_password":
    parameters:
      - in: path
        name: userId
        required: true
        schema:
          type: string
    post:
      description: Set Temp Password
      operationId: setTempPassword
      parameters:
        - in: query
          name: tempPassword
          schema:
            example: "true"
            type: string
      requestBody:
        content:
          text/plain:
            example: ""
      responses:
        "200":
          description: ""
      summary: Set Temp Password
      tags:
        - Lifecycle Operations
  "/api/v1/users/{userId}/lifecycle/reset_factors":
    parameters:
      - in: path
        name: userId
        required: true
        schema:
          type: string
    post:
      description: Reset Factors
      operationId: resetFactors
      requestBody:
        content:
          application/octet-stream: {}
      responses:
        "200":
          description: ""
      summary: Reset Factors
  "/api/v1/users/{userId}/lifecycle/reset_password":
    parameters:
      - in: path
        name: userId
        required: true
        schema:
          type: string
    post:
      description: Reset Password
      operationId: resetPassword
      parameters:
        - in: query
          name: sendEmail
          schema:
            example: "false"
            type: string
      requestBody:
        content:
          text/plain:
            example: ""
      responses:
        "200":
          description: ""
      summary: Reset Password
      tags:
        - Lifecycle Operations
  "/api/v1/users/{userId}/lifecycle/suspend":
    parameters:
      - in: path
        name: userId
        required: true
        schema:
          type: string
    post:
      description: Suspend User
      operationId: suspendUser
      requestBody:
        content:
          text/plain:
            example: ""
      responses:
        "200":
          description: ""
      summary: Suspend User
      tags:
        - Lifecycle Operations
  "/api/v1/users/{userId}/lifecycle/unlock":
    parameters:
      - in: path
        name: userId
        required: true
        schema:
          type: string
    post:
      description: Unlock User
      operationId: unlockUser
      requestBody:
        content:
          text/plain:
            example: ""
      responses:
        "200":
          description: ""
      summary: Unlock User
      tags:
        - Lifecycle Operations
  "/api/v1/users/{userId}/lifecycle/unsuspend":
    parameters:
      - in: path
        name: userId
        required: true
        schema:
          type: string
    post:
      description: Unsuspend User
      operationId: unsuspendUser
      requestBody:
        content:
          text/plain:
            example: ""
      responses:
        "200":
          description: ""
      summary: Unsuspend User
      tags:
        - Lifecycle Operations
  "/api/v1/users/{userId}/sessions":
    delete:
      description: Clear User Sessions
      operationId: clearUserSessions
      requestBody:
        content:
          application/octet-stream: {}
      responses:
        "200":
          description: ""
      summary: Clear User Sessions
    parameters:
      - in: path
        name: userId
        required: true
        schema:
          type: string
