> ## Documentation Index
> Fetch the complete documentation index at: https://docs.whop.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Update Verification

> Updates editable profile details or submits answers for items returned in `requested_information`.



## OpenAPI

````yaml /openapi/api-v1-native.yml patch /verifications/{verification_id}
openapi: 3.1.0
info:
  title: Whop API
  description: >-
    Hand-written V1 endpoints. Merged into the GraphqlRestProxy-generated schema
    at build time.
  version: v1
servers:
  - url: https://{defaultHost}
    variables:
      defaultHost:
        default: api.whop.com/api/v1
security: []
paths:
  /verifications/{verification_id}:
    parameters:
      - $ref: '#/components/parameters/ApiVersionDate'
    patch:
      tags:
        - Verifications
      summary: Update Verification
      description: >-
        Updates editable profile details or submits answers for items returned
        in `requested_information`.
      operationId: updateVerification
      parameters:
        - name: verification_id
          in: path
          required: true
          schema:
            type: string
          description: Verification profile ID, prefixed `idpf_`.
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                first_name:
                  type: string
                  description: Updated first name for an individual verification.
                last_name:
                  type: string
                  description: Updated last name for an individual verification.
                date_of_birth:
                  type: string
                  description: Updated date of birth for an individual verification.
                country:
                  type: string
                  description: Updated ISO 3166-1 alpha-2 country code.
                personal_address:
                  type: object
                  additionalProperties: true
                  description: Updated personal address for an individual verification.
                business_name:
                  type: string
                  description: Updated legal business name for a business verification.
                business_address:
                  type: object
                  additionalProperties: true
                  description: Updated business address for a business verification.
                business_structure:
                  type: string
                  description: >-
                    Updated business entity type, such as `llc` or
                    `corporation`.
                requested_information:
                  type: array
                  description: >-
                    Answers to items returned in `requested_information`. Each
                    entry must include the requested item `id` and exactly one
                    answer payload matching the item's `type`: `value` for
                    `text`, `date`, or `phone`; `address` for `address`; `files`
                    for `files`.
                  items:
                    type: object
                    properties:
                      id:
                        type: string
                        description: Requested information item ID, prefixed `inrqi_`.
                      value:
                        type: string
                        description: Answer value for `text`, `date`, or `phone` items.
                      value_type:
                        type: string
                        enum:
                          - raw
                          - vault_token
                        description: Whether `value` is raw input or a vault token.
                      address:
                        type: object
                        additionalProperties: true
                        description: Address payload for address items.
                      files:
                        type: array
                        description: >-
                          Uploaded file payloads for `files` items. Each file
                          should include a `direct_upload_id` from the upload
                          flow, plus the requested file `category` and `kind`
                          when provided.
                        items:
                          type: object
                          properties:
                            direct_upload_id:
                              type: string
                              description: Direct upload ID for the uploaded document.
                            attachment_id:
                              type: string
                              description: >-
                                Existing attachment ID, when reusing an already
                                attached document.
                            category:
                              type: string
                              description: >-
                                Requested file category copied from
                                `requested_files.category`.
                            kind:
                              type: string
                              description: >-
                                Requested document kind copied from
                                `requested_files.kind`.
                    required:
                      - id
              example:
                requested_information:
                  - id: inrqi_textxxxxxxxx
                    value: https://example.com
                    value_type: raw
                  - id: inrqi_addrxxxxxxxx
                    address:
                      line1: 123 Spring Street
                      city: New York
                      state: NY
                      postal_code: '10012'
                      country: US
                  - id: inrqi_filexxxxxxxx
                    files:
                      - direct_upload_id: upload_xxxxxxxxxxxx
                        category: identity_document_front
                        kind: identity_document
        required: true
      responses:
        '200':
          description: verification updated
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    description: Verification profile ID, prefixed `idpf_`.
                  kind:
                    type: string
                    enum:
                      - individual
                      - business
                    description: >-
                      Verification type: `individual` for a person or `business`
                      for a business.
                  status:
                    type: string
                    enum:
                      - not_started
                      - pending
                      - approved
                      - rejected
                      - action_required
                    description: >-
                      Current verification state. `not_started` before any
                      session has been created; `pending` while a session is in
                      progress; `action_required` when items in
                      `requested_information` need answers before review can
                      continue; `approved` once verification succeeds;
                      `rejected` if it fails. Call the Create Verification
                      endpoint again to start a new session.
                  first_name:
                    type:
                      - string
                      - 'null'
                    description: First name on an individual verification.
                  last_name:
                    type:
                      - string
                      - 'null'
                    description: Last name on an individual verification.
                  date_of_birth:
                    type:
                      - string
                      - 'null'
                    description: >-
                      Date of birth for an individual verification, formatted as
                      `YYYY-MM-DD`.
                  business_name:
                    type:
                      - string
                      - 'null'
                    description: Legal business name on a business verification.
                  business_structure:
                    type:
                      - string
                      - 'null'
                    description: Business entity type, such as `llc` or `corporation`.
                  country:
                    type:
                      - string
                      - 'null'
                    description: >-
                      ISO 3166-1 alpha-2 country code for the individual or
                      business being verified.
                  address:
                    type:
                      - object
                      - 'null'
                    description: >-
                      Personal or business address on the verification profile,
                      with `line1`, `line2`, `city`, `state`, `postal_code`, and
                      `country`. `null` when no address is set.
                  session_url:
                    type:
                      - string
                      - 'null'
                    description: >-
                      Hosted verification session URL for the user to complete
                      identity checks. Expires 7 days after creation. Omitted
                      unless this verification's own status is `pending`; `null`
                      if `pending` with no active session.
                  access_token:
                    type:
                      - string
                      - 'null'
                    description: >-
                      Token for embedding the verification session directly in
                      your own UI, as an alternative to redirecting to
                      `session_url`. Follows the same presence rules as
                      `session_url`.
                  requested_information:
                    type: array
                    description: >-
                      Fields or documents Whop still needs before review can
                      continue. Submit answers with the Update Verification
                      endpoint.
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          description: >-
                            Requested information item ID, prefixed `inrqi_`.
                            Include this ID when submitting an answer.
                        field:
                          type: string
                          description: >-
                            Stable field key, such as `ssn` or
                            `business_description`.
                        type:
                          type:
                            - string
                            - 'null'
                          description: >-
                            Input type expected for this item: `text`, `date`,
                            `phone`, `address`, `files`, or `select`.
                        label:
                          type: string
                          description: >-
                            Human-readable label for the field, such as `Social
                            Security Number`.
                        description:
                          type:
                            - string
                            - 'null'
                          description: >-
                            Additional instructions for this requested item, or
                            `null`.
                        requested_files:
                          type: array
                          description: >-
                            Document upload slots for this item. Present when
                            `type` is `files`; upload one file for each required
                            slot and include the slot's `category` when
                            submitting the answer.
                          items:
                            type: object
                            properties:
                              label:
                                type: string
                                description: >-
                                  Label for this upload slot, such as `Front of
                                  ID Document`.
                              category:
                                type:
                                  - string
                                  - 'null'
                                description: >-
                                  File category to include with the uploaded
                                  file so Whop can route the document correctly.
                                  `null` for a generic upload.
                              kind:
                                type:
                                  - string
                                  - 'null'
                                description: >-
                                  Specific document type requested, such as
                                  `Bank Statement`. `null` for standard identity
                                  and business document uploads.
                              is_optional:
                                type: boolean
                                description: Whether this slot can be left empty.
                              multiple:
                                type: boolean
                                description: Whether this slot accepts more than one file.
                        options:
                          type: array
                          description: >-
                            Allowed values for a `select` field (e.g.
                            account_type, business_structure) — the submitted
                            value must be one of these; empty for other types.
                          items:
                            type: string
                        error_message:
                          type:
                            - string
                            - 'null'
                          description: >-
                            Reason a previously submitted value was rejected.
                            `null` if no submitted value has been rejected.
                  created_at:
                    type: string
                    description: >-
                      When the verification profile was created, as an ISO 8601
                      timestamp.
                  updated_at:
                    type: string
                    description: >-
                      When the verification profile was last updated, as an ISO
                      8601 timestamp.
        '400':
          $ref: '#/components/responses/InvalidParameters'
          description: the request body has unsupported fields
        '401':
          $ref: '#/components/responses/Unauthorized'
          description: missing or invalid authentication
        '403':
          $ref: '#/components/responses/Forbidden'
          description: credential lacks the required identity-write scope
        '404':
          $ref: '#/components/responses/NotFound'
          description: no verification with that ID is visible to the credential
      security:
        - bearerAuth:
            - identity:write
components:
  parameters:
    ApiVersionDate:
      name: Api-Version-Date
      in: header
      required: false
      schema:
        type: string
        format: date
        example: '2026-07-01'
      description: Pins the request to a dated API version.
  responses:
    InvalidParameters:
      description: Invalid Parameters
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/V1ErrorResponse'
    Unauthorized:
      description: Unauthorized
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/V1ErrorResponse'
    Forbidden:
      description: Forbidden
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/V1ErrorResponse'
    NotFound:
      description: Resource not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/V1ErrorResponse'
  schemas:
    V1ErrorResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            type:
              type: string
              description: Machine-readable error code.
            message:
              type: string
              description: Human-readable error message.
          required:
            - type
            - message
      required:
        - error
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: auth-scheme
      description: >-
        An account API key, account scoped JWT, app API key, or user OAuth
        token.

````