Evident Insurance & COI Verification API

Insurance, contract, and Certificate of Insurance (COI) verification modeled as verification-request attributes, enabling automated checks of coverage and credentials on suppliers and third parties.

OpenAPI Specification

evident-id-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Evident VerifyAPI and SubmitAPI
  description: >-
    Specification of Evident (Evident ID) VerifyAPI and SubmitAPI - RESTful
    JSON APIs for creating and retrieving identity, credential, and insurance
    (COI) verification requests. VerifyAPI authenticates with HTTP Basic Auth
    (username and API key); SubmitAPI authenticates with the userIdentityToken
    bearer token returned by VerifyAPI. Only endpoints documented at
    https://www.evidentid.com/api-documentation-developers/ are modeled here;
    Evident's published reference is partner / account oriented, so request and
    response schemas are summarized rather than exhaustively enumerated.
  termsOfService: https://www.evidentid.com/terms-conditions/
  contact:
    name: Evident Support
    email: support@evidentid.com
  version: '1.0'
servers:
  - url: https://verify.api.evidentid.com/api/v1
    description: Production VerifyAPI
  - url: https://verify.api.demo.evidentid.com/api/v1
    description: Sandbox VerifyAPI
  - url: https://submit.api.evidentid.com/api/v1
    description: Production SubmitAPI
  - url: https://submit.api.demo.evidentid.com/api/v1
    description: Sandbox SubmitAPI
paths:
  /verify/requests:
    post:
      operationId: createVerificationRequest
      tags:
        - Verification Requests
      summary: Create a verification request
      description: >-
        Create a request (VerifyAPI) to verify one or more attributes
        (identity, credentials, or insurance / COI) for an end user. Returns
        the request id, the end-user identifier (idOwnerId), and a multi-use
        userIdentityToken used to authenticate to the SubmitAPI.
      security:
        - basicAuth: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/VerificationRequest'
      responses:
        '200':
          description: Verification request created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VerificationRequestCreated'
  /verify/requests/{requestId}:
    get:
      operationId: getVerificationRequest
      tags:
        - Verification Requests
        - Results
      summary: Retrieve a verification request
      description: >-
        Retrieve an existing verification request (VerifyAPI) by id, including
        the status, type, and values of each requested attribute.
      security:
        - basicAuth: []
      parameters:
        - name: requestId
          in: path
          required: true
          description: Identifier of the verification request.
          schema:
            type: string
      responses:
        '200':
          description: Verification request details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VerificationRequestResult'
  /requests:
    post:
      operationId: submitRequestData
      tags:
        - Submission
      summary: Submit personal data for a verification request
      description: >-
        Send the personal data and credentials needed to satisfy a verification
        request (SubmitAPI). Authenticated with the userIdentityToken bearer
        token returned by VerifyAPI. Use the SubmitAPI server base URL.
      security:
        - bearerAuth: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubmitRequest'
      responses:
        '200':
          description: Submission accepted.
components:
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: HTTP Basic Auth using your Evident username and API key (VerifyAPI).
    bearerAuth:
      type: http
      scheme: bearer
      description: Bearer token using the userIdentityToken returned by VerifyAPI (SubmitAPI).
  schemas:
    VerificationRequest:
      type: object
      properties:
        email:
          type: string
          description: End-user email address.
        summary:
          type: string
          description: Short summary used as the verification email subject.
        description:
          type: string
          description: Intent of the verification request.
        userAuthenticationType:
          type: string
          description: End-user authentication type, e.g. "blindtrust".
        attributesRequested:
          type: array
          description: Attributes to verify.
          items:
            type: object
            properties:
              attributeType:
                type: string
                description: >-
                  Identifier of the attribute to verify (identity, credential,
                  license, background check, or insurance / COI line).
    VerificationRequestCreated:
      type: object
      properties:
        id:
          type: string
          description: Verification request identifier.
        idOwnerId:
          type: string
          description: End-user identifier.
        userIdentityToken:
          type: string
          description: Multi-use token used to authenticate to the SubmitAPI.
    VerificationRequestResult:
      type: object
      properties:
        id:
          type: string
        attributes:
          type: array
          items:
            type: object
            properties:
              status:
                type: string
                description: Verification status of the attribute.
              type:
                type: string
                description: Attribute type.
              values:
                type: array
                description: Verified value(s) for the attribute.
                items:
                  type: object
    SubmitRequest:
      type: object
      properties:
        inputs:
          type: array
          description: Personal data values supplied for the verification request.
          items:
            type: object
            properties:
              type:
                type: string
                description: Attribute / input type.
              value:
                type: string
                description: Value supplied for the input.