Signicat Matching API

The Matching API from Signicat — 3 operation(s) for matching.

Business capability
Identity Verification AE-160.30

Operations 6

GET /matching/configurations/{configurationId} Get matching configuration #
PUT /matching/configurations/{configurationId} Update matching configuration #
POST /matching/configurations/{configurationId} Create matching configuration #
DELETE /matching/configurations/{configurationId} Delete a matching configuration #
POST /dossiers/{dossierId}/match Perform matching #
GET /matching/configurations Get all available matching configuration IDs #

Documentation

📖
APIReference
https://developer.signicat.com/apis/data-verification/
📖
APIReference
https://developer.signicat.com/apis/digital-evidence-management/
📖
APIReference
https://developer.signicat.com/apis/eid-hub/
📖
APIReference
https://developer.signicat.com/apis/electronic-signing/sign-api-v2/
📖
APIReference
https://developer.signicat.com/apis/electronic-signing/enterprise/
📖
APIReference
https://developer.signicat.com/apis/electronic-signing/express/
📖
APIReference
https://developer.signicat.com/apis/archive/
📖
APIReference
https://developer.signicat.com/apis/id-document-and-biometric-verification/
📖
APIReference
https://developer.signicat.com/apis/mobileid/
📖
APIReference
https://developer.signicat.com/apis/mobileid-admin/
📖
APIReference
https://developer.signicat.com/apis/ongoing-monitoring/
📖
APIReference
https://developer.signicat.com/apis/person-monitoring/
📖
APIReference
https://developer.signicat.com/apis/reuseid-onboarding/
📖
APIReference
https://developer.signicat.com/apis/reuseid/
📖
APIReference
https://developer.signicat.com/apis/secure-share/
📖
APIReference
https://developer.signicat.com/apis/mint/
📖
APIReference
https://developer.signicat.com/apis/siam/
📖
APIReference
https://developer.signicat.com/apis/audit-logs/
📖
APIReference
https://developer.signicat.com/apis/account-management/
📖
APIReference
https://developer.signicat.com/apis/domain-management/
📖
APIReference
https://developer.signicat.com/apis/events/
📖
APIReference
https://developer.signicat.com/apis/oidc-config/
📖
APIReference
https://developer.signicat.com/apis/usage/

Specifications

Schemas & Data

📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-organization-basic-info-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-person-basic-info-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-organization-ownership-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-business-registry-registration-authority-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-geodata-country-info-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-business-registry-registration-authority-item-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-query-request-body-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-record-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-query-record-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-stats-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-session-data-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-session-request-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-signing-session-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-document-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-document-collection-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-post-document-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-paginated-signing-session-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-merchant-sign-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-signing-order-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-task-status-info-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-forwarding-info-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-event-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-artifact-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-packaging-task-status-info-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-signer-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-update-signer-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-signer-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-document-summary-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-update-signer-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-attachment-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-archive-jsonld-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-archive-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-archive-archive-objects-representation-jsonld-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-archive-archive-patch-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-audit-log-jsonld-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-archive-direct-jsonld-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-capture-configuration-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-capture-configuration-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-process-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-process-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-process-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-match-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-signature-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-account-recovery-details-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-authentication-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-registration-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-user-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-idverification-add-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-application-config-properties-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-application-config-update-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-account-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-e2-ekey-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-apnstoken-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-account-platform-all-details-statistic-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-organisation-data-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-person-response-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-monitor-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-organisation-request-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-monitor-changes-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-create-monitor-request-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-monitor-person-get-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-monitor-create-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-base-monitor-person-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-monitor-get-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-person-changes-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-paged-collection-1-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-device-signature-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-device-registration-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-device-authentication-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-passkey-authentication-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-passkey-registration-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-create-share-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-create-recipient-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-update-recipient-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-update-share-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-share-response-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-recipient-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-journey-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-workflow-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-workflow-template-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-create-workflow-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-update-workflow-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-step-definition-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-user-resource-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-subject-custom-attribute-definition-resource-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-membership-custom-attribute-definition-resource-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-group-custom-attribute-definition-resource-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-membership-resource-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-organization-list-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-audit-log-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-query-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-audit-query-result-audit-log-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-query-metadata-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-query-metadata-response-event-type-properties-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-invoice-item-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-invoice-list-item-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-organization-read-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-account-read-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-organization-create-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-organization-write-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-domain-read-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-get-metadata-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-domain-create-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-check-domain-availability-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-domain-patch-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-check-dns-setup-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-subscription-get-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-subscription-update-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-subscription-event-delivery-attempt-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-subscription-create-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-event-log-item-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-page-subscription-list-item-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-client-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-patch-client-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-public-key-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-signicat-error-template-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-secret-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-custom-claim-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/signicat/json-schema/signicat-usage-set-schema.json

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/signicat:signicat-matching-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

signicat-matching-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Signicat Matching API
  version: 1.0.0
  contact: ''
  license: ''
  termsOfService: ''
  description: 'Operations tagged Matching across 2 of this provider''s published API definitions: id-document-and-biometric-verification-openapi.json, signicat-id-document-and-biometric-verification-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.signicat.com/assure
  description: Generated server url
security:
- basicAuth: []
tags:
- name: Matching
paths:
  /matching/configurations/{configurationId}:
    get:
      tags:
      - Matching
      summary: Get matching configuration
      description: Gets an existing matching configuration in JSON format.
      operationId: getMatchingConfiguration
      parameters:
      - name: configurationId
        in: path
        description: The ID of a matching configuration.
        required: true
        schema:
          type: string
        example: Configuration1
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MatchingConfigurationResponse'
        '404':
          description: The resource requested cannot be found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardExceptionNotFound'
      x-codeSamples:
      - lang: curl
        source: curl -X GET 'https://api.signicat.com/assure/matching/configurations/<CONFIGURATION-ID>“';
    put:
      tags:
      - Matching
      summary: Update matching configuration
      description: Updates an existing matching configuration.
      operationId: updateMatchingConfiguration
      parameters:
      - name: configurationId
        in: path
        description: The ID of a matching configuration.
        required: true
        schema:
          type: string
        example: Configuration1
      requestBody:
        description: Matching configuration payload
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MatchingConfiguration'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MatchingConfigurationResponse'
        '400':
          description: The request cannot be fulfilled due to bad syntax
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardExceptionBadRequest'
        '409':
          description: Conflict found while processing the request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardExceptionConflict'
      x-codeSamples:
      - lang: curl
        source: 'curl -X PUT ''https://api.signicat.com/assure/matching/configurations/<CONFIGURATION-ID>'' -H ''Authorization: Bearer <ACCESS_TOKEN> -d ''<ADD-PAYLOAD-HERE>'';'
    post:
      tags:
      - Matching
      summary: Create matching configuration
      description: Creates a new matching configuration.
      operationId: createMatchingConfiguration
      parameters:
      - name: configurationId
        in: path
        description: The ID of a matching configuration.
        required: true
        schema:
          type: string
          maxLength: 100
          minLength: 0
        example: Configuration1
      requestBody:
        description: Matching configuration payload
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MatchingConfiguration'
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MatchingConfigurationResponse'
        '400':
          description: The request cannot be fulfilled due to bad syntax
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardExceptionBadRequest'
        '404':
          description: The resource requested cannot be found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardExceptionNotFound'
      x-codeSamples:
      - lang: curl
        source: 'curl -X POST ''https://api.signicat.com/assure/matching/configurations/<CONFIGURATION-ID>'' -H ''Authorization: Bearer <ACCESS_TOKEN> -d ''<ADD-PAYLOAD-HERE>'';'
    delete:
      tags:
      - Matching
      summary: Delete a matching configuration
      description: Deletes a matching configuration.
      operationId: deleteMatchingConfiguration
      parameters:
      - name: configurationId
        in: path
        description: The ID of a matching configuration.
        required: true
        schema:
          type: string
        example: Configuration1
      responses:
        '204':
          description: Deletes a matching configuration.
        '400':
          description: The request cannot be fulfilled due to bad syntax
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardExceptionBadRequest'
        '404':
          description: The resource requested cannot be found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardExceptionNotFound'
      x-codeSamples:
      - lang: curl
        source: 'curl -X DELETE ''https://api.signicat.com/assure/matching/configurations/<CONFIGURATION-ID>'' -H ''Authorization: Bearer <ACCESS_TOKEN>;'
    servers:
    - url: https://api.signicat.com/assure
      description: Generated server url
  /dossiers/{dossierId}/match:
    post:
      tags:
      - Matching
      summary: Perform matching
      description: You can use this service to corroborate the end-user’s identity. This service matches different sources of information about the end-user.
      operationId: match
      parameters:
      - name: dossierId
        in: path
        description: This ID is obtained from the "Create dossier" response body.
        required: true
        schema:
          type: string
        example: 37191afe-25b3-4c30-b42a-b0ab64aa1d64
      requestBody:
        description: Matching payload
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MatchRequest'
        required: true
      responses:
        '200':
          description: Matching was successful.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MatchResponse'
        '401':
          description: The Bearer token provided in the Authorization header was not valid
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MatchResponse'
        '404':
          description: The resource requested cannot be found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardExceptionNotFound'
      x-codeSamples:
      - lang: curl
        source: 'curl -X POST https://api.signicat.com/assure/dossiers/<DOSSIER-ID>/match -H ''Authorization: Bearer <ACCESS_TOKEN>'' -d ''<ADD-PAYLOAD-HERE>'';'
    servers:
    - url: https://api.signicat.com/assure
      description: Generated server url
  /matching/configurations:
    get:
      tags:
      - Matching
      summary: Get all available matching configuration IDs
      description: Gets all existing matching configuration IDs.
      operationId: getMatchingConfigurations
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/MatchingConfigurationResponse'
      x-codeSamples:
      - lang: curl
        source: 'curl -X GET https://api.signicat.com/assure/matching/configurations -H ''Authorization: Bearer <ACCESS_TOKEN>'';'
    servers:
    - url: https://api.signicat.com/assure
      description: Generated server url
components:
  schemas:
    MatchingNormalization:
      type: string
      enum:
      - none
      - upper
      - clean
      - cleanUpper
      - initialsUpper
      - numeric
    MatchingConfiguration:
      type: object
      description: Matching Configuration payload
      properties:
        fields:
          type: array
          items:
            $ref: '#/components/schemas/FieldConfiguration'
    FieldConfiguration:
      type: object
      description: Matching Field Configuration payload
      properties:
        id:
          type: string
          description: The field to be compared.
          example: fieldId1
        sourceField:
          type: string
          description: Data from source node.
          example: firstName
        targetField:
          type: string
          description: Data from target node.
          example: lastName
        normalization:
          $ref: '#/components/schemas/MatchingNormalization'
          description: '<p>The normalization to be applied to source and target values.</p><li>''none'': No conversion - case sensitive scenario.<li>''upper'': Converts all characters to upper case - ignores case scenario.<li>''clean'': Converts into latin script - Following ICAO Doc 9303 Part 3 Section 6 recommendation.<li>''cleanUpper'': Apply clean an upper normalization.<li>''initialsUpper'': Converts to the first two initials from multiple words.<li>''numeric'': Converts to the 0-9 characters only.'
          example: upper
        algorithm:
          $ref: '#/components/schemas/MatchingAlgorithm'
          description: '<p>The matching algorithm to be used.</p><li>''levenshtein'': String compare normalized values</li><span>Exact match: True if all characters match<br>Partial match: True if the similarity ratio is above 90% of characters</span><li>''fuzzy'': String compare normalized values</li><span>Exact match: True if all characters match<br>Partial match: True if the similarity ratio is above 90% of characters or if one of multiple words are an exact match.</span>'
          example: levenshtein
    MatchRequestComponent:
      type: object
      description: Matching result by component
      properties:
        processId:
          type: string
          description: Use only if dataNode is not `userData`. <br> The ID of the process that contains the data used for matching.
          example: a7f11597-19db-4ef0-84d5-268150f5c760
        dataNode:
          type: string
          description: 'Identifies the data node to be used as source/target data for the matching. This data node can be:<ul><li>`userData` in the dossier: In this case you can simply omit `processId` in this request. </li> <li> A data node from a process: It can be `finalResult`'' for `onfido` processes. In this case you must also send `processId` in this request. The possible data nodes that can be used from each process depend on the provider of that process. </li> </ul> For more details on how to perform matching, see the <a href="https://developer.signicat.com/docs/id-document-and-biometric-verification/services/matching/#process-userdata-matching-service">integration documentation</a>.'
          enum:
          - userData
          - finalResult
          - userInfo
          - ocr
          example: finalResult
      required:
      - dataNode
    MatchRequest:
      type: object
      description: Matching request
      example:
        source:
          dataNode: userData
        target:
          processId: 0338a9c5-e135-4c51-9557-dd8ac6ba9e5c
          dataNode: finalResult
      properties:
        source:
          $ref: '#/components/schemas/MatchRequestComponent'
        target:
          $ref: '#/components/schemas/MatchRequestComponent'
        configurationId:
          type: string
          description: Optional field to specify a custom matching configuration.
      required:
      - source
      - target
    FieldMatchResult:
      type: object
      description: Matching result by field
      properties:
        sourceValue:
          type: string
          description: Data from source node.
          example: John
        targetValue:
          type: string
          description: Data from target node.
          example: JOHN
        sourceNormalized:
          type: string
          description: Value string after the normalization is applied.
          example: JOHN
        targetNormalized:
          type: string
          description: Value string after the normalization is applied.
          example: JOHN
        editDistance:
          type: integer
          format: int32
          description: Levenshtein distance between normalized values of source and target. Will be greater than 0 only if exactMatch = false.
          example: 0
        error:
          type: string
          description: (Exists only if an error occurred while performing match) Indicates why this field wasn't matched.
          example: Field not present in source/target.
        algorithm:
          type: string
          description: The matching algorithm configured.
          enum:
          - levenshtein
          - fuzzy
          example: levenshtein
        normalization:
          type: string
          description: The matching normalization configured.
          enum:
          - none
          - upper
          - clean
          - cleanUpper
          - initialsUpper
          - numeric
          example: upper
        exactMatch:
          type: boolean
          description: True if values of source and data fully match, false otherwise. For more details on how to perform matching, see the <a href="https://developer.signicat.com/docs/id-document-and-biometric-verification/services/matching/#process-userdata-matching-service">integration documentation</a>.
          example: true
        partialMatch:
          type: boolean
          description: True if values of source and data match partially, false otherwise. For more details on how to perform matching, see the <a href="https://developer.signicat.com/docs/id-document-and-biometric-verification/services/matching/#process-userdata-matching-service">integration documentation</a>.
          example: true
    StandardExceptionBadRequest:
      type: object
      description: Standard Exception Bad Request
      properties:
        instance:
          type: string
          description: URI of the endpoint called.
          example: /assure/dossiers/
        method:
          type: string
          description: HTTP method associated to the type of request done.
          example: POST
        status:
          type: integer
          format: int32
          description: HTTP status associated with the exception generated.
          example: 400
        type:
          type: string
          description: Type of the exception generated.
          example: base:client-problem
        title:
          type: string
          description: Title of the exception generated.
          example: Malformed Authorization header.
        detail:
          type: string
          description: Detailed message containing information of the exception generated.
          example: Please provide a valid Bearer authentication.
        traceId:
          type: string
          description: TraceID for logging purposes.
          example: 034fb8bbc5da31f4dd2cf66e70ef313c
    StandardExceptionConflict:
      type: object
      description: Standard Exception Conflict
      properties:
        instance:
          type: string
          description: URI of the endpoint called.
          example: /assure/dossiers/
        method:
          type: string
          description: HTTP method associated to the type of request done.
          example: POST
        status:
          type: integer
          format: int32
          description: HTTP status associated with the exception generated.
          example: 409
        type:
          type: string
          description: Type of the exception generated.
          example: base:client-problem
        title:
          type: string
          description: Title of the exception generated.
          example: Conflict
        detail:
          type: string
          description: Detailed message containing information of the exception generated.
          example: Conflict found while processing the request.
        traceId:
          type: string
          description: TraceID for logging purposes.
          example: 034fb8bbc5da31f4dd2cf66e70ef313c
    MatchingConfigurationResponse:
      type: object
      description: Matching Configuration Response
      properties:
        configuration:
          $ref: '#/components/schemas/MatchingConfiguration'
        id:
          type: string
          description: The ID of a capture configuration.
          example: Configuration1
          maxLength: 100
        createdAt:
          type: string
          description: 'The date and time the data was created (ISO-8601 with UTC: YYYY-MM-DDThh:mm:ssZ.)'
          example: '2021-10-04T09:35:19Z'
        updatedAt:
          type: string
          description: 'The date and time the data was updated (ISO-8601 with UTC: YYYY-MM-DDThh:mm:ssZ).'
          example: '2021-10-04T09:35:19Z'
    MatchingAlgorithm:
      type: string
      enum:
      - levenshtein
      - fuzzy
    MatchComponent:
      type: object
      description: Matching result by component
      properties:
        processId:
          type: string
          description: Use only if dataNode is not `userData`. <br> The ID of the process that contains the data used for matching.
          example: a7f11597-19db-4ef0-84d5-268150f5c760
        dataNode:
          type: string
          description: 'Identifies the data node to be used as source/target data for the matching. This data node can be:<ul><li>`userData` in the dossier: In this case you can simply omit `processId` in this request. </li> <li> A data node from a process: It can be `finalResult`'' for `onfido` processes. In this case you must also send `processId` in this request. The possible data nodes that can be used from each process depend on the provider of that process. </li> </ul> For more details on how to perform matching, see the <a href="https://developer.signicat.com/docs/id-document-and-biometric-verification/services/matching/#process-userdata-matching-service">integration documentation</a>.'
          enum:
          - userData
          - finalResult
          - userInfo
          example: finalResult
        updatedAt:
          type: string
          description: 'The date/time (ISO-8601 with UTC: YYYY-MM-DDThh:mm:ssZ) the match was executed. This field is returned only in the response.'
          example: '2019-03-04T15:58:17Z'
      required:
      - dataNode
    StandardExceptionNotFound:
      type: object
      description: Standard Exception Not Found
      properties:
        instance:
          type: string
          description: URI of the endpoint called.
          example: /assure/dossiers/
        method:
          type: string
          description: HTTP method associated to the type of request done.
          example: POST
        status:
          type: integer
          format: int32
          description: HTTP status associated with the exception generated.
          example: 404
        type:
          type: string
          description: Type of the exception generated.
          example: base:client-problem
        title:
          type: string
          description: Title of the exception generated.
          example: Not Found
        detail:
          type: string
          description: Detailed message containing information of the exception generated.
          example: Dossier not found.
        traceId:
          type: string
          description: TraceID for logging purposes.
          example: 034fb8bbc5da31f4dd2cf66e70ef313c
    MatchResponse:
      type: object
      description: Matching response
      example:
        dossierId: 37191afe-25b3-4c30-b42a-b0ab64aa1d64
        createdAt: '2021-03-22T15:21:05.294087Z'
        source:
          dataNode: userData
          updatedAt: '2021-03-22T15:21:02Z'
        target:
          processId: 0338a9c5-e135-4c51-9557-dd8ac6ba9e5c
          dataNode: finalResult
          updatedAt: '2021-03-22T15:11:57Z'
        matchResult:
          firstName:
            sourceValue: John
            targetValue: John Michael
            sourceNormalized: JOHN
            targetNormalized: JOHN MICHAEL
            exactMatch: false
            partialMatch: true
            editDistance: 8
          lastName:
            sourceValue: McClane
            targetValue: McClane
            sourceNormalized: MCCLANE
            targetNormalized: MCCLANE
            exactMatch: true
            partialMatch: true
            editDistance: 0
          gender:
            sourceValue: M
            targetValue: M
            sourceNormalized: M
            targetNormalized: M
            exactMatch: true
            partialMatch: true
            editDistance: 0
          dateOfBirth:
            sourceValue: '1988-08-18'
            targetValue: '1983-04-25'
            sourceNormalized: '19880818'
            targetNormalized: '19830425'
            exactMatch: false
            partialMatch: false
            editDistance: 4
      properties:
        dossierId:
          type: string
          description: Identifies the dossier ID where the matching was performed.
        createdAt:
          type: string
          description: The date and time when the matching was performed.
        source:
          $ref: '#/components/schemas/MatchComponent'
          description: Data from source node.
        target:
          $ref: '#/components/schemas/MatchComponent'
          description: Data from target node.
        matchResult:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/FieldMatchResult'
          description: 'Lists the fields that were matched between the source and target (ex: "firstName", "lastName", "dateOfBirth)".'
  securitySchemes:
    basicAuth:
      type: http
      description: JWT Security Scheme
      scheme: bearer
      bearerFormat: JWT
externalDocs:
  description: See also the user docs on how to get started with the Assure API.
  url: https://developer.signicat.com/docs/id-document-and-biometric-verification/guides/#set-up-an-api-integration
x-refined-from:
- id-document-and-biometric-verification-openapi.json
- signicat-id-document-and-biometric-verification-openapi.yml