---
title: "Analyze Custom AML Data (Mesh Format), Its a BETA feature"
method: POST
path: "/verify/analyze_mesh_aml_data"
tags: ["AML Monitoring"]
---

# Analyze Custom AML Data (Mesh Format), Its a BETA feature

`POST /verify/analyze_mesh_aml_data`

## Request

- Base URL: `https://api-sandbox.aiprise.com/api/v1`
- URL: `https://api-sandbox.aiprise.com/api/v1/verify/analyze_mesh_aml_data`
- Auth: API key in header `X-API-KEY`
- TypeScript: <https://skmtc.dev/aiprise/apis/aiprise-apis/docs/verify/analyze_mesh_aml_data/post.ts> (a function with typed inputs; its response is checked against the schema)

Upload customer-provided AML data in Mesh format and trigger waterfall analysis.
This endpoint allows customers to submit their own ComplyAdvantage (Mesh) AML monitoring data
and optionally trigger automated analysis on the entities found.

## Request body

- CustomAMLRequest
  - `entity_type` 'person' | 'business', required: Type of entity being screened
  - `entity_data` object, required: Basic information about the person or business being screened
    - `first_name` string
    - `last_name` string
    - `date_of_birth` string, date
    - `country_code` string
    - `business_name` string
    - `registration_number` string
  - `aml_data` union, required: AML screening data in Mesh format (ComplyAdvantage) - can be a single object or array of risk objects
    - object
      - `risks` object[]
    - object[]
  - `template_id` string, required: Verification template ID to use for analysis
  - `search_metadata` object: Optional metadata about the AML search
  - `customer_reference_id` string: Customer's reference ID for this entity
  - `trigger_analysis` boolean: Whether to trigger automated analysis on the AML hits
  - `client_reference_id` string: Client's reference ID for tracking
  - `client_reference_data` object: Additional client reference data
  - `additional_info` AdditionalInfo[]: Additional information items
    - IndividualAdditionalInfo[]: A list of additional information.
      - `additional_info_type` 'KBA' | 'KENYA_KRA_PIN' | 'BANK_STATEMENT_DOCUMENT' | 'BUSINESS_REGISTRATION_DOCUMENT' | 'OPERATING_LICENSE_DOCUMENT' | 'SOURCE_OF_FUNDS_DOCUMENT' | 'VISA_DOCUMENT' | 'US_AAMVA' | 'AADHAAR_DOCUMENT_FRONT' | 'AADHAAR_DOCUMENT_BACK' | 'USER_SELFIE' | 'GENDER' | 'SEON_SESSION_PAYLOAD' | 'ADDRESS_PROOF_DOCUMENT' | 'NIGERIA_BVN_NUMBER' | 'TAX_IDENTIFICATION_NUMBER' | 'PREVIOUS_VERIFICATION_SESSION_ID' | 'FRAUD_CHECK_DOCUMENT' | 'OPERATION_CARD' | 'TRANSPORTATION_PERMIT' | 'VEHICLE_OWNERSHIP_CARD' | 'TAX_CERTIFICATE' | 'OTHER': The type of additional information being submitted or returned for an individual. Business verification uses BusinessAdditionalInfoType instead.
      - `additional_info_data` union
        - string: The additional data as a string.
        - object: The additional data as an object. For file-based types, may include file_data, file_uuid, and document_input_title.
          - `file_data` string: The file content as base64 or S3 URL.
          - `file_uuid` string: The unique identifier of the file.
          - `document_input_title` string, nullable: An optional unique identifier for the document input, if provided during document check.
        - object[]: Accepted only for ADDRESS_PROOF_DOCUMENT, which may carry more than one file. Each entry declares one document; only `file` and `file_sub_type` are read.
          - `file` string, required: The file content, base64-encoded.
          - `file_sub_type` 'NATIONAL_ID_FRONT' | 'NATIONAL_ID_BACK' | 'UTILITY_SERVICE_BILLS' | 'FINANCIAL_STATEMENTS' | 'GOVERNMENT_CORRESPONDENCE' | 'RESIDENTIAL_DOCUMENT' | 'EMPLOYMENT_EDUCATION_DOCUMENT' | 'LEGAL_DOCUMENT' | 'ADDRESS_DOCUMENT_OTHERS': The document type the user declared when uploading an address proof. When it is set to a specific type and the classified poa_document_category disagrees, a DOCUMENT_TYPE_MISMATCH warning is raised. ADDRESS_DOCUMENT_OTHERS, RESIDENTIAL_DOCUMENT, LEGAL_DOCUMENT and EMPLOYMENT_EDUCATION_DOCUMENT accept any category, so they do not trigger that check.
        - object[]: Accepted only for KBA. Each entry is one answered knowledge-based-authentication question.
          - `type` string, required: The question identifier.
          - `answer` string, required: The submitted answer.
  - `verification_options` object: Verification options
  - `callback_url` string, uri: URL to receive verification completion callback
  - `events_callback_url` string, uri: URL to receive verification event callbacks

## Response `200`

Successful operation

- CustomAMLResponse
  - `status` 'success' | 'error'
  - `data` object
    - `verification_session_id` string: ID of the created verification session
    - `entity_hits_count` integer: Number of AML entity hits found
    - `analysis_tasks` string[]: List of analysis task IDs that were scheduled
    - `message` string: Human-readable status message

## Other responses

- `400`: Bad Request - Invalid request format or data validation failed
- `403`: Forbidden - Template not associated with company or missing permissions
- `500`: Internal Server Error - Failed to process custom AML data

## Changes

- **2026-11-03** `74fc7a5199fb`: 1 breaking, 9 info
  - removed the enum value `BANK_ACCOUNT_DETAILS` of the request property `additional_info/items/items/additional_info_type`
  - added the new `AADHAAR_DOCUMENT_BACK` enum value to the request property `additional_info/items/items/additional_info_type`
  - added the new `AADHAAR_DOCUMENT_FRONT` enum value to the request property `additional_info/items/items/additional_info_type`
  - added the new `KBA` enum value to the request property `additional_info/items/items/additional_info_type`
  - …6 more

[Operation history](https://skmtc.dev/aiprise/apis/aiprise-apis/changes/verify/analyze_mesh_aml_data/post.md)

---

[API](https://skmtc.dev/aiprise/apis/aiprise-apis.md) - [All operations](https://skmtc.dev/aiprise/apis/aiprise-apis/llms.txt) - [OpenAPI document](https://skmtc.dev/aiprise/apis/aiprise-apis/revisions/74fc7a5199fb?raw)
