openapi: 3.1.0
info:
  title: Overview
  version: '1.0'
  termsOfService: https://kycaid.com/terms-and-conditions/
servers:
  - url: https://api.kycaid.com
components:
  securitySchemes:
    your_api_key:
      type: apiKey
      in: header
      name: Authorization
  schemas:
    '400':
      type: object
      properties:
        type:
          type: string
          example: bad_request
        errors:
          type: array
    '429':
      type: object
      properties:
        type:
          type: string
          example: flow
        errors:
          type: array
          items:
            type: object
            properties:
              parameter:
                type: string
                example: limit_exceeded
              message:
                type: string
                example: Rate limit exceeded
    '500':
      type: object
      properties:
        type:
          type: string
          example: internal_server
        errors:
          type: array
    '502':
      type: string
      example: >-
        <!doctype html><meta charset='utf-8'><meta name=viewport
        content='width=device-width, initial-scale=1'><title>502</title>502 Bad
        Gateway
    full_name:
      type:
        - string
        - 'null'
      format: name
      pattern: ^[a-zA-Z ,.''-]{1,100}$
      minLength: 2
      maxLength: 100
      example: Josh Coffey
      description: The full name of a person, which includes a first and last name
    first_name:
      title: First name
      type:
        - string
        - 'null'
      format: name
      minLength: 2
      maxLength: 64
      pattern: ^[a-zA-Z ,.''-]{1,64}$
      example: Josh
      description: The first name of a person
    last_name:
      title: Last name
      type:
        - string
        - 'null'
      format: name
      minLength: 2
      maxLength: 64
      pattern: ^[a-zA-Z ,.''-]{1,64}$
      example: Coffey
      description: The last name of a person
    middle_name:
      title: Middle name
      type:
        - string
        - 'null'
      format: name
      minLength: 2
      maxLength: 64
      pattern: ^[a-zA-Z ,.''-]{1,64}$
      example: David
      description: The middle name of a person
    dob:
      type:
        - string
        - 'null'
      format: date
      example: '1976-02-21'
      description: >-
        The date of birth of a person, formatted as “YYYY-MM-DD” according to
        ISO 8601
    residence_country:
      type:
        - string
        - 'null'
      minLength: 2
      maxLength: 2
      example: GB
      description: >-
        A residence country of an object. A two-letter country code according to
        ISO 3166-2
    bdb_type:
      type: array
      items:
        type: string
        enum:
          - INTERNAL
          - SANCTIONS
          - PEP
          - SELF_RESTICTED
          - WANTED
          - EXPIRED
      example:
        - SANCTIONS
      description: |
        A type of blacklist databases to make a check
        * `SANCTIONS`: Global and local sanctions
        databases
        * `PEP`: Databases of politically exposed persons (PEP)
        * `SELF_RESTICTED`: Databases of persons asked for self-exclusion
        * `WANTED`: Databases of persons being searched for by the police
        * `EXPIRED`: Databases of stolen or lost documents
    accuracy:
      type: integer
      minimum: 50
      maximum: 100
      example: 75
      description: An accuracy of provided information (in percents)
    origin_full_name:
      type:
        - string
        - 'null'
      format: name
      minLength: 1
      maxLength: 100
      example: Джош Кофі
      description: >-
        A full name of an object, which consists of a first name and a last
        name, set in a native language
    origin_first_name:
      type:
        - string
        - 'null'
      format: name
      minLength: 1
      maxLength: 64
      example: Джош
      description: A first name of an object, set in a native language
    origin_last_name:
      type:
        - string
        - 'null'
      format: name
      minLength: 1
      maxLength: 64
      example: Кофі
      description: A last name of an entity, set in a native language
    origin_middle_name:
      type:
        - string
        - 'null'
      format: name
      minLength: 1
      maxLength: 64
      pattern: ^[a-zA-Z ,.''-]{1,64}$
      example: Conrad
      description: A middle name of an object, set in a native language
    gender:
      type:
        - string
        - 'null'
      enum:
        - M
        - F
      example: M
      description: The gender of a person. `M` indicates male; `F` indicates female
    description:
      type:
        - string
        - 'null'
      minLength: 1
      maxLength: 2048
      example: Reciprocal - 2010-04-30
      description: The detailed description of a status in blacklist databases
    bdb_name:
      type:
        - string
        - 'null'
      minLength: 2
      maxLength: 255
      example: Open Sanctions Default
      description: A name of a blacklist database
    bdb--persons--post--200:
      type: object
      properties:
        data:
          type: array
          items:
            type: object
            properties:
              full_name:
                $ref: '#/components/schemas/full_name'
              origin_full_name:
                $ref: '#/components/schemas/origin_full_name'
              first_name:
                $ref: '#/components/schemas/first_name'
              origin_first_name:
                $ref: '#/components/schemas/origin_first_name'
              last_name:
                $ref: '#/components/schemas/last_name'
              origin_last_name:
                $ref: '#/components/schemas/origin_last_name'
              middle_name:
                $ref: '#/components/schemas/middle_name'
              origin_middle_name:
                $ref: '#/components/schemas/origin_middle_name'
              residence_country:
                $ref: '#/components/schemas/residence_country'
              dob:
                $ref: '#/components/schemas/dob'
              gender:
                $ref: '#/components/schemas/gender'
              description:
                $ref: '#/components/schemas/description'
              bdb_name:
                $ref: '#/components/schemas/bdb_name'
              bdb_type:
                $ref: '#/components/schemas/bdb_type'
              accuracy:
                $ref: '#/components/schemas/accuracy'
    bdb--persons--422--all:
      title: A parameter or value is missing
      type: object
      properties:
        type:
          type: string
          example: validation
        errors:
          type: array
          items:
            type: object
            properties:
              parameter:
                type: string
                example: '*'
              message:
                type: string
                example: Full name or first name and last name is required
    bdb--persons--422--full_name:
      title: Full name is invalid
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              parameter:
                type: string
                example: full_name
              message:
                type: string
                example: Full name is not valid.
        data:
          type: array
    name_match_threshold:
      type: number
      format: float
      minimum: 0
      maximum: 1
      multipleOf: 0.01
      example: 0.75
      description: >-
        The minimum similarity score required to include a name in the search
        results. A higher value returns fewer, more exact matches, and a lower
        value returns more results with less similarity
    name_match_weight:
      type: number
      format: float
      minimum: 0
      maximum: 1
      multipleOf: 0.01
      example: 0.7
      description: Influence of a name match on the total match score
    dob_match_enabled:
      type: boolean
      enum:
        - true
        - false
      example: true
      description: Enable or disable inclusion of a date of birth in the total match score
    dob_match_weight:
      type: number
      format: float
      minimum: 0
      maximum: 1
      multipleOf: 0.01
      example: 0.1
      description: Influence of a date of birth match on the total match score
    residence_country_match_enabled:
      type: boolean
      enum:
        - true
        - false
      example: true
      description: >-
        Enable or disable inclusion of a residence country match in the total
        match score
    residence_country_match_weight:
      type: number
      format: float
      minimum: 0
      maximum: 1
      multipleOf: 0.01
      example: 0.05
      description: Influence of a residence country match on the total match score
    gender_match_enabled:
      type: boolean
      enum:
        - true
        - false
      example: true
      description: Enable or disable inclusion of a gender match in the total match score
    gender_match_weight:
      type: number
      format: float
      minimum: 0
      maximum: 1
      multipleOf: 0.01
      example: 0.05
      description: Influence of a gender match on the total match score
    name_match_score:
      type: number
      format: float
      minimum: 0
      maximum: 1
      multipleOf: 0.01
      example: 0.8
      description: Relevance of a name match in a fuzzy search
    total_match_score:
      type: number
      format: float
      minimum: 0
      maximum: 1
      multipleOf: 0.01
      example: 0.86
      description: The calculated relevance score for a search result
    document_number--bdb--documents:
      type: string
      minLength: 2
      maxLength: 32
      example: '920927302325'
      description: A number of a document to check with blacklist databases
    document_type:
      type: string
      enum:
        - PASSPORT
        - DOMESTIC_PASSPORT
        - GOVERNMENT_ID
        - DRIVERS_LICENSE
        - FOREIGN_CITIZEN_PASSPORT
        - PERMANENT_RESIDENCE_PERMIT
        - REFUGEE_CARD
      example: PASSPORT
      description: A type of a document
    document_country:
      type:
        - string
        - 'null'
      minLength: 2
      maxLength: 2
      example: GB
      description: >-
        An issuing country of a document. A two-letter country code according to
        ISO 3166-2
    bdb--documents--post--200:
      type: object
      properties:
        data:
          type: array
          items:
            type: object
            properties:
              document_number:
                $ref: '#/components/schemas/document_number--bdb--documents'
              document_type:
                $ref: '#/components/schemas/document_type'
              document_country:
                $ref: '#/components/schemas/document_country'
              description:
                $ref: '#/components/schemas/description'
              bdb_name:
                $ref: '#/components/schemas/bdb_name'
              bdb_type:
                $ref: '#/components/schemas/bdb_type'
    bdb--documents--post--422:
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              parameter:
                type: string
                example: document_number
              message:
                type: string
                example: >-
                  document_number must have from 2 to 32 characters and only
                  letters and numbers
    tax_id_number:
      type: string
      minLength: 2
      maxLength: 32
      example: '1129821775'
      description: A tax identification number
    tax_id_country:
      type:
        - string
        - 'null'
      minLength: 2
      maxLength: 2
      example: GB
      description: >-
        An issuing country of a tax identification number. A two-letter country
        code according to ISO 3166-2
    bdb--tax-ids--200:
      type: object
      properties:
        data:
          type: array
          items:
            type: object
            properties:
              full_name:
                $ref: '#/components/schemas/full_name'
              origin_full_name:
                $ref: '#/components/schemas/origin_full_name'
              first_name:
                $ref: '#/components/schemas/first_name'
              origin_first_name:
                $ref: '#/components/schemas/origin_first_name'
              last_name:
                $ref: '#/components/schemas/last_name'
              origin_last_name:
                $ref: '#/components/schemas/origin_last_name'
              middle_name:
                $ref: '#/components/schemas/middle_name'
              origin_middle_name:
                $ref: '#/components/schemas/origin_middle_name'
              residence_country:
                $ref: '#/components/schemas/residence_country'
              dob:
                $ref: '#/components/schemas/dob'
              gender:
                $ref: '#/components/schemas/gender'
              description:
                $ref: '#/components/schemas/description'
              bdb_name:
                $ref: '#/components/schemas/bdb_name'
              bdb_type:
                $ref: '#/components/schemas/bdb_type'
              accuracy:
                $ref: '#/components/schemas/accuracy'
    bdb--tax-ids--200--not_found:
      title: Tax ID was not found
      type: object
      properties:
        data:
          type: array
    bdb--tax-ids--422--bdb_types:
      title: Blacklist database name is invalid
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              parameter:
                type: string
                example: bdb_types
              message:
                type: string
                example: Type of blacklist databases is not valid
    bdb--tax-ids--422--tax_id_country:
      title: Issuing country of a tax identification number is invalid
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              parameter:
                type: string
                example: tax_id_country
              message:
                type: string
                example: tax_id_country is required and must have 2 characters
        data:
          type: array
    primary_keywords:
      title: Primary keywords
      type: array
      minLength: 1
      maxLength: 32
      pattern: ^[a-zA-Z0-9 -'`’]{1,32}$
      example:
        - corruption
        - money laundering
        - murder
      description: >-
        A list of primary keywords. Articles must contain at least one of these
        keywords to be considered relevant to the search. A maximum of 20
        primary keywords are permitted (including predefined keywords for
        individuals’s first name and last name)
    secondary_keywords:
      title: Secondary keywords
      type: array
      minLength: 1
      maxLength: 32
      pattern: ^[a-zA-Z0-9 -'`’]{1,32}$
      example:
        - sanctioned
        - whistleblower
        - conviction
      description: >-
        A list of optional secondary keywords. Articles containing these
        keywords may see improved search result ranking. A maximum of 20
        secondary keywords are permitted
    callback_url:
      title: Callback URL
      type: string
      maxLength: 2048
      example: https://webhook.site/34374c1f-3b2b-4060-ad26-8a556478df03
      description: >-
        The endpoint URL where our system will post the callback (webhook)
        notifications
security:
  - your_api_key: []
tags:
  - name: Blacklist databases
    description: Blacklist databases
  - name: Adverse media check
    description: Adverse media check
  - name: Crypto
    description: Crypto
  - name: Phone numbers
    description: Phone numbers
  - name: QES
    description: QES
paths:
  /bdb/persons:
    post:
      tags:
        - Blacklist databases
      summary: Persons v1
      description: >-
        Retrieve information on persons from the Kycaid blacklist databases to
        check for compliance with laws and regulations. Each response may have
        several objects, with one object per a blacklist
      operationId: bdb-persons
      requestBody:
        content:
          application/json:
            schema:
              oneOf:
                - type: object
                  title: Search by a full name
                  properties:
                    full_name:
                      $ref: '#/components/schemas/full_name'
                    first_name:
                      $ref: '#/components/schemas/first_name'
                    last_name:
                      $ref: '#/components/schemas/last_name'
                    middle_name:
                      $ref: '#/components/schemas/middle_name'
                    dob:
                      $ref: '#/components/schemas/dob'
                    residence_country:
                      $ref: '#/components/schemas/residence_country'
                    bdb_types:
                      $ref: '#/components/schemas/bdb_type'
                  required:
                    - full_name
                - type: object
                  title: Search by a first name and a last name
                  properties:
                    first_name:
                      $ref: '#/components/schemas/first_name'
                    last_name:
                      $ref: '#/components/schemas/last_name'
                    full_name:
                      $ref: '#/components/schemas/full_name'
                    middle_name:
                      $ref: '#/components/schemas/middle_name'
                    dob:
                      $ref: '#/components/schemas/dob'
                    residence_country:
                      $ref: '#/components/schemas/residence_country'
                    bdb_type:
                      $ref: '#/components/schemas/bdb_type'
                    accuracy:
                      $ref: '#/components/schemas/accuracy'
                  required:
                    - first_name
                    - last_name
      responses:
        '200':
          description: >
            **OK**


            The request was successful, and our system returned an expected
            response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/bdb--persons--post--200'
        '400':
          description: >
            **Bad Request**


            Our system could not process the request due to invalid syntax,
            missing parameters, or incorrect data format. Check the request
            structure and try again.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/400'
        '422':
          description: >
            **Unprocessable Content**


            Our system understands the request but can’t process it due to
            invalid fields in the request body.
          content:
            application/json:
              schema:
                oneOf:
                  - $ref: '#/components/schemas/bdb--persons--422--all'
                  - $ref: '#/components/schemas/bdb--persons--422--full_name'
        '429':
          description: >
            **Too Many Requests**


            This response indicates that a user has sent too many requests in a
            given amount of time.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/429'
        '500':
          description: >
            **Internal Server Error**


            This response indicates that our system encountered an unexpected
            condition that prevented it from fulfilling the request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/500'
        '502':
          description: >
            **Bad Gateway**


            This response indicates that our system is unable to reach or
            communicate properly with an upstream server it relies on, the URL
            provided is incorrect, or a required token is missing from the
            request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/502'
  /bdb/persons-2:
    post:
      tags:
        - Blacklist databases
      summary: Persons v2
      description: >-
        Retrieve information on persons from the Kycaid blacklist databases
        using fuzzy search to check for compliance with laws and regulations.
        Each response may have several objects, with one object per a blacklist
      operationId: bdb-persons-2
      requestBody:
        content:
          application/json:
            schema:
              oneOf:
                - type: object
                  title: Search by a full name
                  properties:
                    full_name:
                      $ref: '#/components/schemas/full_name'
                    first_name:
                      $ref: '#/components/schemas/first_name'
                    last_name:
                      $ref: '#/components/schemas/last_name'
                    middle_name:
                      $ref: '#/components/schemas/middle_name'
                    dob:
                      $ref: '#/components/schemas/dob'
                    residence_country:
                      $ref: '#/components/schemas/residence_country'
                    gender:
                      $ref: '#/components/schemas/gender'
                    name_match_threshold:
                      $ref: '#/components/schemas/name_match_threshold'
                    name_match_weight:
                      $ref: '#/components/schemas/name_match_weight'
                    dob_match_enabled:
                      $ref: '#/components/schemas/dob_match_enabled'
                    dob_match_weight:
                      $ref: '#/components/schemas/dob_match_weight'
                    residence_country_match_enabled:
                      $ref: '#/components/schemas/residence_country_match_enabled'
                    residence_country_match_weight:
                      $ref: '#/components/schemas/residence_country_match_weight'
                    gender_match_enabled:
                      $ref: '#/components/schemas/gender_match_enabled'
                    gender_match_weight:
                      $ref: '#/components/schemas/gender_match_weight'
                    bdb_types:
                      $ref: '#/components/schemas/bdb_type'
                  required:
                    - full_name
                - type: object
                  title: Search by a first name and a last name
                  properties:
                    full_name:
                      $ref: '#/components/schemas/full_name'
                    first_name:
                      $ref: '#/components/schemas/first_name'
                    last_name:
                      $ref: '#/components/schemas/last_name'
                    middle_name:
                      $ref: '#/components/schemas/middle_name'
                    dob:
                      $ref: '#/components/schemas/dob'
                    residence_country:
                      $ref: '#/components/schemas/residence_country'
                    gender:
                      $ref: '#/components/schemas/gender'
                    name_match_threshold:
                      $ref: '#/components/schemas/name_match_threshold'
                    name_match_weight:
                      $ref: '#/components/schemas/name_match_weight'
                    dob_match_enabled:
                      $ref: '#/components/schemas/dob_match_enabled'
                    dob_match_weight:
                      $ref: '#/components/schemas/dob_match_weight'
                    residence_country_match_enabled:
                      $ref: '#/components/schemas/residence_country_match_enabled'
                    residence_country_match_weight:
                      $ref: '#/components/schemas/residence_country_match_weight'
                    gender_match_enabled:
                      $ref: '#/components/schemas/gender_match_enabled'
                    gender_match_weight:
                      $ref: '#/components/schemas/gender_match_weight'
                    bdb_types:
                      $ref: '#/components/schemas/bdb_type'
                  required:
                    - first_name
                    - last_name
      responses:
        '200':
          description: >
            **OK**


            The request was successful, and our system returned an expected
            response.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      parameters:
                        type: object
                        properties:
                          name_match_threshold:
                            $ref: '#/components/schemas/name_match_threshold'
                          name_match_weight:
                            $ref: '#/components/schemas/name_match_weight'
                          dob_match_enabled:
                            $ref: '#/components/schemas/dob_match_enabled'
                          dob_match_weight:
                            $ref: '#/components/schemas/dob_match_weight'
                          residence_country_match_enabled:
                            $ref: >-
                              #/components/schemas/residence_country_match_enabled
                          residence_country_match_weight:
                            $ref: >-
                              #/components/schemas/residence_country_match_weight
                          gender_match_enabled:
                            $ref: '#/components/schemas/gender_match_enabled'
                          gender_match_weight:
                            $ref: '#/components/schemas/gender_match_weight'
                      result:
                        type: array
                        items:
                          type: object
                          properties:
                            full_name:
                              $ref: '#/components/schemas/full_name'
                            origin_full_name:
                              $ref: '#/components/schemas/origin_full_name'
                            first_name:
                              $ref: '#/components/schemas/first_name'
                            origin_first_name:
                              $ref: '#/components/schemas/origin_first_name'
                            last_name:
                              $ref: '#/components/schemas/last_name'
                            origin_last_name:
                              $ref: '#/components/schemas/origin_last_name'
                            middle_name:
                              $ref: '#/components/schemas/middle_name'
                            origin_middle_name:
                              $ref: '#/components/schemas/origin_middle_name'
                            dob:
                              $ref: '#/components/schemas/dob'
                            residence_country:
                              $ref: '#/components/schemas/residence_country'
                            gender:
                              $ref: '#/components/schemas/gender'
                            description:
                              $ref: '#/components/schemas/description'
                            bdb_name:
                              $ref: '#/components/schemas/bdb_name'
                            aliases:
                              type: array
                              items:
                                type: object
                            addresses:
                              type: array
                              items:
                                type: object
                            name_match_score:
                              $ref: '#/components/schemas/name_match_score'
                            total_match_score:
                              $ref: '#/components/schemas/total_match_score'
        '400':
          description: >
            **Bad Request**


            Our system could not process the request due to invalid syntax,
            missing parameters, or incorrect data format. Check the request
            structure and try again.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/400'
        '422':
          description: >
            **Unprocessable Content**


            Our system understands the request but can’t process it due to
            invalid fields in the request body.
          content:
            application/json:
              schema:
                oneOf:
                  - title: A parameter is absent or has empty value
                    type: object
                    properties:
                      type:
                        type: string
                        example: validation
                      errors:
                        type: array
                        items:
                          type: object
                          properties:
                            parameter:
                              type: string
                              example: first_name
                            message:
                              type: string
                              example: Value must be between 1 and 64 characters
                  - title: A value exceeds minimum or maximum length
                    type: object
                    properties:
                      type:
                        type: string
                        example: validation
                      errors:
                        type: array
                        items:
                          type: object
                          properties:
                            parameter:
                              type: string
                              example: first_name
                            message:
                              type: string
                              example: Value must be between 1 and 64 characters
                  - title: A value has wrong format or data type
                    type: object
                    properties:
                      type:
                        type: string
                        example: validation
                      errors:
                        type: array
                        items:
                          type: object
                          properties:
                            parameter:
                              type: string
                              example: first_name
                            message:
                              type: string
                              example: Value must have correct format or data type
                  - title: A value has wrong format or data type
                    type: object
                    properties:
                      type:
                        type: string
                        example: validation
                      errors:
                        type: array
                        items:
                          type: object
                          properties:
                            parameter:
                              type: string
                              example: gender
                            message:
                              type: string
                              example: Value must be from the list of allowed values
        '429':
          description: >
            **Too Many Requests**


            This response indicates that a user has sent too many requests in a
            given amount of time.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/429'
        '500':
          description: >
            **Internal Server Error**


            This response indicates that our system encountered an unexpected
            condition that prevented it from fulfilling the request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/500'
        '502':
          description: >
            **Bad Gateway**


            This response indicates that our system is unable to reach or
            communicate properly with an upstream server it relies on, the URL
            provided is incorrect, or a required token is missing from the
            request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/502'
  /bdb/documents:
    post:
      tags:
        - Blacklist databases
      summary: Documents
      description: >-
        Retrieve information on documents from the Kycaid blacklist databases to
        check for compliance with laws and regulations. Each response may have
        several objects, with one object per a blacklist
      operationId: bdb-documents
      requestBody:
        content:
          application/json:
            schema:
              type: object
              title: Search by a document number
              properties:
                document_number:
                  $ref: '#/components/schemas/document_number--bdb--documents'
                document_type:
                  $ref: '#/components/schemas/document_type'
                document_country:
                  $ref: '#/components/schemas/document_country'
                bdb_types:
                  $ref: '#/components/schemas/bdb_type'
              required:
                - document_number
      responses:
        '200':
          description: >
            **OK**


            The request was successful, and our system returned an expected
            response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/bdb--documents--post--200'
        '400':
          description: >
            **Bad Request**


            Our system could not process the request due to invalid syntax,
            missing parameters, or incorrect data format. Check the request
            structure and try again.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/400'
        '422':
          description: >
            **Unprocessable Content**


            Our system understands the request but can’t process it due to
            invalid fields in the request body.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/bdb--documents--post--422'
        '429':
          description: >
            **Too Many Requests**


            This response indicates that a user has sent too many requests in a
            given amount of time.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/429'
        '500':
          description: >
            **Internal Server Error**


            This response indicates that our system encountered an unexpected
            condition that prevented it from fulfilling the request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/500'
        '502':
          description: >
            **Bad Gateway**


            This response indicates that our system is unable to reach or
            communicate properly with an upstream server it relies on, the URL
            provided is incorrect, or a required token is missing from the
            request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/502'
  /bdb/tax-ids:
    post:
      tags:
        - Blacklist databases
      summary: Tax ID numbers
      description: >-
        Retrieve information on tax ID numbers from the Kycaid blacklist
        databases to check for compliance with laws and regulations. Each
        response may have several objects, with one object per a blacklist
      operationId: bdb-tax-ids
      requestBody:
        content:
          application/json:
            schema:
              type: object
              title: Search by a tax ID number
              properties:
                tax_id_number:
                  $ref: '#/components/schemas/tax_id_number'
                tax_id_country:
                  $ref: '#/components/schemas/tax_id_country'
                bdb_types:
                  $ref: '#/components/schemas/bdb_type'
              required:
                - tax_id_number
      responses:
        '200':
          description: >
            **OK**


            The request was successful, and our system returned an expected
            response.
          content:
            application/json:
              schema:
                oneOf:
                  - $ref: '#/components/schemas/bdb--tax-ids--200'
                  - $ref: '#/components/schemas/bdb--tax-ids--200--not_found'
        '400':
          description: >
            **Bad Request**


            Our system could not process the request due to invalid syntax,
            missing parameters, or incorrect data format. Check the request
            structure and try again.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/400'
        '422':
          description: >
            **Unprocessable Content**


            Our system understands the request but can’t process it due to
            invalid fields in the request body.
          content:
            application/json:
              schema:
                oneOf:
                  - $ref: '#/components/schemas/bdb--tax-ids--422--bdb_types'
                  - $ref: '#/components/schemas/bdb--tax-ids--422--tax_id_country'
        '429':
          description: >
            **Too Many Requests**


            This response indicates that a user has sent too many requests in a
            given amount of time.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/429'
        '500':
          description: >
            **Internal Server Error**


            This response indicates that our system encountered an unexpected
            condition that prevented it from fulfilling the request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/500'
        '502':
          description: >
            **Bad Gateway**


            This response indicates that our system is unable to reach or
            communicate properly with an upstream server it relies on, the URL
            provided is incorrect, or a required token is missing from the
            request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/502'
  /services/amc:
    post:
      tags:
        - Adverse media check
      summary: Adverse media check
      description: >
        The adverse media check screens individuals against news articles. This
        service may help to identify potential involvement in financial crimes,
        serious offenses, political exposure, or reputational risks
      operationId: amc
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                primary_keywords:
                  $ref: '#/components/schemas/primary_keywords'
                secondary_keywords:
                  $ref: '#/components/schemas/secondary_keywords'
                callback_url:
                  $ref: '#/components/schemas/callback_url'
              required:
                - primary_keywords
                - callback_url
      responses:
        '200':
          description: >
            **OK**


            The request was successful, and our system returned an expected
            response.
          content:
            application/json:
              schema:
                type: object
                title: Information received
                properties:
                  status:
                    type: string
                    example: ok
                  data:
                    type: object
                    properties:
                      primary_keywords:
                        $ref: '#/components/schemas/primary_keywords'
                      secondary_keywords:
                        $ref: '#/components/schemas/secondary_keywords'
                      callback_url:
                        $ref: '#/components/schemas/callback_url'
                    example:
                      primary_keywords:
                        - John
                        - Smith
                        - corruption
                        - money laundering
                        - murder
                      secondary_keywords:
                        - sanctioned
                        - whistleblower
                        - conviction
                      callback_url: >-
                        https://webhook.site/34374c1f-3b2b-4060-ad26-8a556478df03
        '400':
          description: >
            **Bad Request**


            Our system could not process the request due to invalid syntax,
            missing parameters, or incorrect data format. Check the request
            structure and try again.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/400'
        '404':
          description: >
            **Not Found**


            The requested resource does not exist or can’t be found in our
            system.
          content:
            application/json:
              schema: {}
        '500':
          description: >
            **Internal Server Error**


            This response indicates that our system encountered an unexpected
            condition that prevented it from fulfilling the request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/500'
        '502':
          description: >
            **Bad Gateway**


            This response indicates that our system is unable to reach or
            communicate properly with an upstream server it relies on, the URL
            provided is incorrect, or a required token is missing from the
            request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/502'
  /services/crypto/address-verification:
    post:
      tags:
        - Crypto
      summary: Crypto address
      description: |
        Access the article from the previous version of the documentation:

        # [Address verification](https://docs-v1.kycaid.com/#crypto-address)
      operationId: crypto-address-verification
  /services/crypto/transaction-verification:
    post:
      tags:
        - Crypto
      summary: Crypto transaction
      description: |
        Access the article from the previous version of the documentation:

        # [Transaction verification](https://docs-v1.kycaid.com/#crypto-address)
      operationId: crypto-transaction-verification
  /services/phone-number/check/request:
    post:
      tags:
        - Phone numbers
      summary: Send SMS
      description: |
        Access the article from the previous version of the documentation:

        # [Phone number check](https://docs-v1.kycaid.com/#phone-number-check)
      operationId: phone-number-send-sms
  /services/phone-number/check/submit-pin-code:
    post:
      tags:
        - Phone numbers
      summary: Send PIN code from SMS
      description: |
        Access the article from the previous version of the documentation:

        # [Phone number check](https://docs-v1.kycaid.com/#phone-number-check)
      operationId: phone-number-send-pin-code
  /services/ua/smartid/start:
    post:
      tags:
        - QES
      summary: SmartID • Start
      description: |
        Access the article from the previous version of the documentation:

        # [SmartID](https://docs-v1.kycaid.com/#qes-smart-id)
      operationId: qes-smartid-start
  /services/ua/smartid/status:
    post:
      tags:
        - QES
      summary: SmartID • Get status
      description: |
        Access the article from the previous version of the documentation:

        # [SmartID](https://docs-v1.kycaid.com/#qes-smart-id)
      operationId: qes-smartid-get-status
  /services/ua/diia-signature/start:
    post:
      tags:
        - QES
      summary: Diia.Signature • Start
      description: |
        Access the article from the previous version of the documentation:

        # [Diia.Signature](https://docs-v1.kycaid.com/#qes-diia-signature)
      operationId: qes-diia-signature-start
  /services/ua/diia-signature/status:
    post:
      tags:
        - QES
      summary: Diia.Signature • Get status
      description: |
        Access the article from the previous version of the documentation:

        # [Diia.Signature](https://docs-v1.kycaid.com/#qes-diia-signature)
      operationId: qes-diia-signature-get-status
