Truora Account API

API-key and web integration token management.

OpenAPI Specification

truora-account-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Truora Account API
  description: 'Truora is a Latin American identity verification, background-check, and conversational-onboarding platform. This modeled specification documents the public REST surface across four production hosts: the Checks API (background checks on people, vehicles, and companies), the Validators API (document, facial, email, and phone validation), the Digital Identity API (web and WhatsApp verification processes), and the Account API (API-key and web integration token management). All requests authenticate with a `Truora-API-Key` header.'
  termsOfService: https://www.truora.com/en/terms-and-conditions
  contact:
    name: Truora Developers
    url: https://dev.truora.com/
  version: '1.0'
servers:
- url: https://api.checks.truora.com
  description: Checks API (background checks) - default host
- url: https://api.validations.truora.com
  description: Validators API (KYC validations)
- url: https://api.identity.truora.com
  description: Digital Identity API (web + WhatsApp processes)
- url: https://api.account.truora.com
  description: Account API (API keys and web integration tokens)
security:
- TruoraApiKey: []
tags:
- name: Account
  description: API-key and web integration token management.
paths:
  /v1/api-keys:
    servers:
    - url: https://api.account.truora.com
    post:
      operationId: createApiKey
      tags:
      - Account
      summary: Create an API key or web integration token
      description: Issues a Truora API key. With key_type=backend the returned JWT authenticates server-to-server API calls; with key_type=web it issues a short-lived web integration token used to launch a Digital Identity process in the browser or WhatsApp flow.
      requestBody:
        required: true
        content:
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CreateApiKeyRequest'
      responses:
        '200':
          description: API key created. The JWT is returned once.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiKey'
        '401':
          $ref: '#/components/responses/Unauthorized'
    get:
      operationId: listApiKeys
      tags:
      - Account
      summary: List API keys
      description: Retrieves the API keys registered on the account.
      responses:
        '200':
          description: A list of API keys.
          content:
            application/json:
              schema:
                type: object
                properties:
                  api_keys:
                    type: array
                    items:
                      $ref: '#/components/schemas/ApiKey'
  /v1/api-keys/{api_key_id}:
    servers:
    - url: https://api.account.truora.com
    parameters:
    - name: api_key_id
      in: path
      required: true
      schema:
        type: string
    delete:
      operationId: deleteApiKey
      tags:
      - Account
      summary: Delete (revoke) an API key
      description: Revokes an API key so it can no longer authenticate requests.
      responses:
        '200':
          description: API key revoked.
        '404':
          $ref: '#/components/responses/NotFound'
components:
  responses:
    Unauthorized:
      description: Missing or invalid Truora-API-Key.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    NotFound:
      description: Resource not found.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  schemas:
    CreateApiKeyRequest:
      type: object
      required:
      - key_type
      properties:
        key_type:
          type: string
          enum:
          - backend
          - web
          - sdk
        grant:
          type: string
          description: Product grant, e.g. digital-identity, signals, all.
        api_key_version:
          type: string
          enum:
          - '1'
          - '2'
        country:
          type: string
    ApiKey:
      type: object
      properties:
        api_key_id:
          type: string
        api_key:
          type: string
          description: The JWT credential. Returned once at creation time.
        key_type:
          type: string
        grant:
          type: string
        creation_date:
          type: string
          format: date-time
    Error:
      type: object
      properties:
        code:
          type: integer
        message:
          type: string
  securitySchemes:
    TruoraApiKey:
      type: apiKey
      in: header
      name: Truora-API-Key
      description: A JWT issued from the Truora dashboard or the /v1/api-keys endpoint, sent in the Truora-API-Key request header on every call.