HyperVerge Input Validation API

Cross-validation of user input against OCR/QR extraction output.

OpenAPI Specification

hyperverge-input-validation-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: HyperVerge Identity Verification Database Verification Input Validation API
  description: "HyperVerge is an AI-based identity verification and customer onboarding platform. This document models HyperVerge's documented public REST surface for India, drawn from HyperVerge's official REST-API documentation repositories on GitHub. The surface spans three region hosts:\n\n\n  * `https://ind-docs.hyperverge.co/v2.0` - KYC document OCR / extraction.\n\n  * `https://ind-verify.hyperverge.co` - central database verification,\n    input validation, and field matching.\n\n  * `https://ind-faceid.hyperverge.co` - face match.\n\n\nAll requests authenticate with an `appId` and `appKey` pair issued by the HyperVerge team (headers are lowercase `appid`/`appkey` on the Face Match host). Credentials are provided after enterprise onboarding. Region hosts exist for other geographies (for example `apac.faceid.hyperverge.co` for Face Match in APAC); only the India hosts are modeled here.\n\nScope note: endpoint paths, methods, and auth are grounded in HyperVerge's published REST documentation. Request/response schemas are modeled representatively (multipart form-data and JSON bodies) rather than copied field-for-field, and are flagged where they are approximate. Liveness detection is delivered via HyperVerge's SDKs/Workflow and is not modeled as a REST operation here because a standalone public REST endpoint was not confirmed at review time."
  version: '1.0'
  contact:
    name: HyperVerge
    url: https://hyperverge.co
  x-modeled-note: Paths, methods, hosts, and appId/appKey auth are confirmed from HyperVerge's public REST-API repositories. Response schemas are representative models, not verbatim contracts.
servers:
- url: https://ind-verify.hyperverge.co
  description: India - Database Verification, Input Validation, Matching
- url: https://ind-docs.hyperverge.co/v2.0
  description: India - KYC OCR / Extraction
- url: https://ind-faceid.hyperverge.co
  description: India - Face Match
security:
- appIdKey: []
tags:
- name: Input Validation
  description: Cross-validation of user input against OCR/QR extraction output.
paths:
  /api/validatePANInput:
    servers:
    - url: https://ind-verify.hyperverge.co
    post:
      operationId: validatePANInput
      tags:
      - Input Validation
      summary: Validate PAN input against OCR
      description: Cross-validates user-entered PAN details against the OCR extraction result and returns per-field match flags.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ValidateInput'
      responses:
        '200':
          description: Per-field validation result.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationResult'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /api/validateAadhaarInput:
    servers:
    - url: https://ind-verify.hyperverge.co
    post:
      operationId: validateAadhaarInput
      tags:
      - Input Validation
      summary: Validate Aadhaar input against OCR/QR
      description: Cross-validates user-entered Aadhaar details (or QR-extracted data) against front/back OCR results.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ValidateInput'
      responses:
        '200':
          description: Per-field validation result.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationResult'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /api/validatePassportInput:
    servers:
    - url: https://ind-verify.hyperverge.co
    post:
      operationId: validatePassportInput
      tags:
      - Input Validation
      summary: Validate passport input against OCR
      description: Cross-validates user-entered passport details against front/back OCR results.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ValidateInput'
      responses:
        '200':
          description: Per-field validation result.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationResult'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /api/validateVoterIdInput:
    servers:
    - url: https://ind-verify.hyperverge.co
    post:
      operationId: validateVoterIdInput
      tags:
      - Input Validation
      summary: Validate Voter ID input against OCR
      description: Cross-validates user-entered Voter ID details against front/back OCR results.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ValidateInput'
      responses:
        '200':
          description: Per-field validation result.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationResult'
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  schemas:
    ValidationResult:
      type: object
      description: Representative per-field match response (modeled).
      properties:
        status:
          type: string
          example: success
        statusCode:
          type: string
          example: '200'
        result:
          type: object
          additionalProperties: true
          description: Per-field match flags, plus an overall `all` flag on matchFields.
    ValidateInput:
      type: object
      description: Representative validation body (modeled). Carries user-entered values under `userInput` and the OCR/QR extraction under `ocrResult`, `ocrResultFront`/`ocrResultBack`, or `qrResult` depending on the document.
      properties:
        userInput:
          type: object
          additionalProperties: true
        ocrResult:
          type: object
          additionalProperties: true
        ocrResultFront:
          type: object
          additionalProperties: true
        ocrResultBack:
          type: object
          additionalProperties: true
        qrResult:
          type: object
          additionalProperties: true
    Error:
      type: object
      properties:
        status:
          type: string
          example: failure
        statusCode:
          type: string
          example: '401'
        error:
          type: string
          example: Invalid credentials.
  responses:
    Unauthorized:
      description: Invalid or missing appId/appKey credentials.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    appIdKey:
      type: apiKey
      in: header
      name: appId
      description: 'HyperVerge issues an appId and appKey pair after enterprise onboarding. Both are sent as request headers: `appId` and `appKey` on the ind-docs and ind-verify hosts, and lowercase `appid` and `appkey` on the ind-faceid (Face Match) host. Do not expose these credentials in browser applications.'