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

# Reset a verification

> Clear a verification's collected steps and documents and return it to created, so the user starts over.

Allowed from any status, so a cancelled or completed verification can be revived rather than stranded.



## OpenAPI

````yaml /api-reference/openapi.json post /verifications/{verification_id}/reset
openapi: 3.1.0
info:
  title: Verify with Privue
  description: >-
    Verify your users' identity and business details through Privue's hosted
    flow.


    **Authentication.** Every request takes your API key as a bearer token:
    `Authorization: Bearer <your-key>`.


    **Flow.**


    1. `POST /verifications` with the user's phone. We start their verification
    session and return a `verification_id`.

    2. Redirect the user to `https://verify.privue.ai/<your-slug>` to complete
    the steps.

    3. Poll `GET /verifications/{verification_id}` for status and step progress,
    and `GET /verifications/{verification_id}/data` for the collected result.

    4. Optionally `POST /verifications/{verification_id}/cancel` to end a
    verification early.


    **Identifiers.** `verification_id` is ours and names the verification on
    every read. `reference_id` is your own optional correlation id - stored and
    echoed back, never used as a key.


    **Timestamps.** Timestamps are in IST.


    **Polling.** Reads are free and safe to poll as often as you need.
  version: 0.1.0
servers:
  - url: https://api.verify.privue.ai
    description: Production
security: []
paths:
  /verifications/{verification_id}/reset:
    post:
      tags:
        - Verifications
      summary: Reset a verification
      description: >-
        Clear a verification's collected steps and documents and return it to
        created, so the user starts over.


        Allowed from any status, so a cancelled or completed verification can be
        revived rather than stranded.
      operationId: reset_verification_verifications__verification_id__reset_post
      parameters:
        - name: verification_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
            title: Verification Id
      responses:
        '200':
          description: The verification's status after reset, back to created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VerificationStatusResponse'
              example:
                verification_id: 3f2504e0-4f89-41d3-9a0c-0305e82c3301
                reference_id: ord_991
                status: created
                progress:
                  total: 6
                  pending: 6
                  in_progress: 0
                  completed: 0
                  failed: 0
                  skipped: 0
                steps:
                  - key: consent
                    title: Consent
                    required: true
                    status: pending
                  - key: identity
                    title: Identity
                    required: true
                    status: pending
                  - key: business
                    title: Business details
                    required: true
                    status: pending
                  - key: bank
                    title: Bank account
                    required: true
                    status: pending
                  - key: documents
                    title: Documents
                    required: false
                    status: pending
                  - key: review
                    title: Review and submit
                    required: true
                    status: pending
                created_at: '2026-08-06T14:30:00'
        '401':
          description: Missing, malformed, or rejected API key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                detail: API key is missing, malformed, or rejected.
        '403':
          description: The API key is valid but not enrolled as a verification client.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                detail: No active verification client for this API key.
        '404':
          description: No verification with that verification_id for this client.
          content:
            application/json:
              example:
                detail: No verification with id 3f2504e0-4f89-41d3-9a0c-0305e82c3301.
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
        - HTTPBearer: []
components:
  schemas:
    VerificationStatusResponse:
      properties:
        verification_id:
          type: string
          format: uuid
          title: Verification Id
          description: Our id for this verification
        reference_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Reference Id
          description: Your correlation id, echoed back; null if you sent none
        status:
          $ref: '#/components/schemas/VerificationStatus'
          description: Current lifecycle status
        progress:
          $ref: '#/components/schemas/ProgressPublic'
          description: Step counts by status; they sum to total
        steps:
          items:
            $ref: '#/components/schemas/StepPublic'
          type: array
          title: Steps
          description: Every journey step with its current status
        created_at:
          type: string
          format: date-time
          title: Created At
          description: When the verification was created (IST)
        opened_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Opened At
          description: When the user first opened the flow (IST), or null
        submitted_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Submitted At
          description: When the user submitted (IST), or null
        cancelled_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Cancelled At
          description: When the verification was cancelled (IST), or null
      type: object
      required:
        - verification_id
        - reference_id
        - status
        - progress
        - steps
        - created_at
        - opened_at
        - submitted_at
        - cancelled_at
      title: VerificationStatusResponse
      description: Status and per-step progress for one verification. Safe to poll.
    ErrorResponse:
      properties:
        detail:
          type: string
          title: Detail
          description: A human-readable explanation of what went wrong
      type: object
      required:
        - detail
      title: ErrorResponse
      description: >-
        Every error on this API returns this shape. Branch on the HTTP status,
        not the message text.
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    VerificationStatus:
      type: string
      enum:
        - created
        - in-progress
        - completed
        - cancelled
        - expired
      title: VerificationStatus
      description: >-
        Lifecycle of one user's verification.


        There is no expiry state: a verification is a durable record keyed on
        the user, and the user

        returns to their verification session whenever they choose, so nothing
        lapses on a clock.
    ProgressPublic:
      properties:
        total:
          type: integer
          title: Total
          description: Number of steps in the journey
        pending:
          type: integer
          title: Pending
          description: Steps not started yet
        in_progress:
          type: integer
          title: In Progress
          description: Steps the user is currently on
        completed:
          type: integer
          title: Completed
          description: Steps finished
        failed:
          type: integer
          title: Failed
          description: Steps that could not be completed
        skipped:
          type: integer
          title: Skipped
          description: Optional steps the user skipped
      type: object
      required:
        - total
        - pending
        - in_progress
        - completed
        - failed
        - skipped
      title: ProgressPublic
      description: >-
        The verification's steps tallied by status. The per-status counts always
        sum to ``total``.
    StepPublic:
      properties:
        key:
          type: string
          title: Key
          description: Stable step identifier, e.g. identity or bank
        title:
          type: string
          title: Title
          description: Human-readable step name
        required:
          type: boolean
          title: Required
          description: Whether this step must be completed before the user can submit
        status:
          $ref: '#/components/schemas/StepStatus'
          description: This step's current progress
        completed_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Completed At
          description: When the step was completed (IST), or null if not yet
      type: object
      required:
        - key
        - title
        - required
        - status
      title: StepPublic
      description: One step of the journey.
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
    StepStatus:
      type: string
      enum:
        - pending
        - in-progress
        - completed
        - failed
        - skipped
      title: StepStatus
      description: Progress of one step within a verification.
  securitySchemes:
    HTTPBearer:
      type: http
      scheme: bearer

````