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

# Passport Details Extraction

> Perform OCR on an Indonesian passport and return the extracted fields.



## OpenAPI

````yaml api-reference/openapi.json POST /api/v3/verifications/indonesia/passport-details-extraction
openapi: 3.0.3
info:
  title: IDmeta API
  description: IDmeta verification and integration API.
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://{environment-subdomain}.idmetagroup.com
    description: Your environment (replace `{environment-subdomain}`)
    variables:
      environment-subdomain:
        default: integrate
        description: IDmeta environment subdomain
security:
  - bearerAuth: []
tags:
  - name: Processes
    description: Verification process endpoints
  - name: Trust Flow Links
    description: Trust Flow link generation endpoints
  - name: Compliance
    description: Compliance verification endpoints
  - name: Government Data
    description: Government data verification endpoints
  - name: Alternative Verifications
    description: Alternative verification and intelligence endpoints
  - name: OCR
    description: Document OCR extraction endpoints
paths:
  /api/v3/verifications/indonesia/passport-details-extraction:
    post:
      tags:
        - OCR
      summary: Passport Details Extraction
      description: >-
        Perform OCR on an Indonesian passport and return the extracted fields,
        including passport number, name, biodata, MRZ lines, and cropped photo
        when available.
      operationId: indonesiaPassportDetailsExtractionV3
      parameters:
        - name: Accept
          in: header
          required: false
          schema:
            type: string
            default: application/json
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              type: object
              required:
                - documentImage
                - trustFlowId
                - trustValidationId
              properties:
                documentImage:
                  type: string
                  format: binary
                  description: Image file of the passport document.
                trustFlowId:
                  type: integer
                  description: >-
                    Identifier used to categorize or group requests for tracking
                    or reporting.
                trustValidationId:
                  type: string
                  description: A unique ID used to identify your verification request.
      responses:
        '200':
          description: Indonesia passport details extraction processed successfully
          headers:
            Content-Type:
              schema:
                type: string
                example: application/json
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IdnPassportDetailsExtractionV3Response'
              example:
                success: true
                message: Indonesia passport details extraction processed successfully
                data:
                  outcome: extracted
                  fields:
                    passport_number: C1234567
                    full_name: BUDI SANTOSO
                    surname: SANTOSO
                    given_names: BUDI
                    nationality: INDONESIA
                    place_of_birth: BANDUNG
                    date_of_birth: '1990-01-15'
                    gender: L
                    date_of_issue: '2022-03-10'
                    date_of_expiry: '2032-03-10'
                    issuing_authority: JAKARTA
                    place_of_issue: null
                    registration_number: 1A00XX0000XXXX
                    type: P
                    country_code: IDN
                    mrz_line_1: P<IDNSANTOSO<<BUDI<<<<<<<<<<<<<<<<
                    mrz_line_2: C1234567<0IDN9001151M32031001234567890123456
                    signature: null
                    photo: >-
                      https://media-cdn.portalph.idmetagroup.com/{tenant_id}/{trust_validation_id}/photo-{image_id}.jpeg
                  missingFields: []
                verificationStatus: VERIFIED
                verificationStatusCode: 3
                trustFlowId: 0
                trustValidationId: '{your_trust_validation_id}'
                verificationType: idn_passport_details_extraction
                metadata: null
                createdAt: 2026-07-30 03:48:06+0000
components:
  schemas:
    IdnPassportDetailsExtractionV3Response:
      type: object
      properties:
        success:
          type: boolean
        message:
          type: string
        data:
          type: object
          properties:
            outcome:
              type: string
              description: Extraction outcome, for example `extracted`.
            fields:
              type: object
              properties:
                passport_number:
                  type: string
                  description: Passport number.
                full_name:
                  type: string
                  description: Full name as printed on the passport.
                surname:
                  type: string
                  description: Surname / family name.
                given_names:
                  type: string
                  description: Given names.
                nationality:
                  type: string
                  description: Nationality as printed on the passport.
                place_of_birth:
                  type: string
                  description: Place of birth.
                date_of_birth:
                  type: string
                  description: Date of birth in `YYYY-MM-DD` format.
                gender:
                  type: string
                  description: >-
                    Gender code as printed on the passport, for example `L` or
                    `P`.
                date_of_issue:
                  type: string
                  description: Date of issue in `YYYY-MM-DD` format.
                date_of_expiry:
                  type: string
                  description: Date of expiry in `YYYY-MM-DD` format.
                issuing_authority:
                  type: string
                  description: Issuing authority.
                place_of_issue:
                  type: string
                  nullable: true
                  description: Place of issue, if present.
                registration_number:
                  type: string
                  description: Registration number printed on the passport.
                type:
                  type: string
                  description: Document type code, for example `P` for passport.
                country_code:
                  type: string
                  description: Issuing country code, for example `IDN`.
                mrz_line_1:
                  type: string
                  description: First Machine Readable Zone (MRZ) line.
                mrz_line_2:
                  type: string
                  description: Second Machine Readable Zone (MRZ) line.
                signature:
                  type: string
                  nullable: true
                  format: uri
                  description: URL of the cropped signature image, if available.
                photo:
                  type: string
                  nullable: true
                  format: uri
                  description: URL of the cropped photo image, if available.
            missingFields:
              type: array
              description: Fields that could not be extracted from the document.
              items:
                type: string
        verificationStatus:
          type: string
        verificationStatusCode:
          type: integer
        trustFlowId:
          type: integer
        trustValidationId:
          type: string
        verificationType:
          type: string
        metadata:
          nullable: true
        createdAt:
          type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Use `Bearer {your_api_token}` in the Authorization header.

````