> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lerian.studio/llms.txt
> Use this file to discover all available pages before exploring further.

# Consultar chave PIX

> Consulta uma chave PIX pelo valor do corpo JSON. Utiliza o cache quando disponível, recorre ao banco de dados e ao DICT do BACEN, e retorna ownerTaxId completo e sem máscara conforme a API-DICT do BACEN.



## OpenAPI

````yaml pt/openapi/v3-current/spi-dict.yaml post /api/v1/dict/keys/lookup
openapi: 3.1.0
info:
  contact:
    email: contact@lerian.studio
    name: Lerian Studio
    url: https://lerian.studio
  description: >-
    Interface OpenAPI 3.1 da capacidade DICT (Diretório de Identificadores de
    Contas Transacionais) do Lerian SPI, a integração direta entre a instituição
    e o Sistema de Pagamentos Instantâneos Brasileiro (SPI/Pix). Abrange o ciclo
    de vida das chaves PIX, as reivindicações de portabilidade e titularidade,
    os relatos de infração, as devoluções, os marcadores de fraude, os
    relatórios DICT síncronos e as operações internas de conciliação e
    provisionamento que mantêm o diretório de chaves consistente.
  license:
    name: Lerian Studio General License
  title: Lerian SPI — DICT API
  version: 1.0.0
servers:
  - url: https://spi.sandbox.lerian.net
security: []
tags:
  - description: >-
      Ciclo de vida das chaves PIX: registro, listagem, busca, consulta,
      exclusão e estatísticas.
    name: Keys
  - description: >-
      Reivindicações de portabilidade e titularidade de chaves PIX ao longo de
      todo o seu ciclo de vida (iniciar, confirmar, rejeitar, cancelar,
      reconhecer, concluir).
    name: Claims
  - description: 'Relatos de infração DICT: criar, listar e recuperar.'
    name: Infractions
  - description: 'Solicitações de devolução DICT: criar, listar e recuperar.'
    name: Refunds
  - description: 'Marcadores de fraude PIX: criar, listar e estatísticas.'
    name: Fraud Markers
  - description: >-
      Relatórios síncronos sobre o próprio registro DICT do Lerian SPI: resumos
      COUNT(*) de chaves (por tipo/status) e reivindicações (por tipo/status +
      em aberto após o prazo). Somente COUNT — o DICT não retém dinheiro.
    name: Reports
  - description: >-
      Operações internas do DICT: execuções de conciliação, provisionamento do
      ISPB do participante, processamento de prazos de reivindicações e limpeza
      de chaves órfãs.
    name: Internal
paths:
  /api/v1/dict/keys/lookup:
    post:
      tags:
        - Keys
      summary: Consultar chave PIX
      description: >-
        Consulta uma chave PIX pelo valor do corpo JSON. Utiliza o cache quando
        disponível, recorre ao banco de dados e ao DICT do BACEN, e retorna
        ownerTaxId completo e sem máscara conforme a API-DICT do BACEN.
      operationId: lookupKey
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LookupKeyRequest'
              description: PIX key value to resolve via cache, database, or BACEN DICT
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PIXKeyLookupResponse'
                description: >-
                  Resolved PIX key details, including ownerTaxId full and
                  unmasked per BACEN API-DICT
          description: OK
        default:
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Detail'
          description: Error
      security:
        - BearerAuth: []
components:
  schemas:
    LookupKeyRequest:
      additionalProperties: false
      properties:
        keyValue:
          description: PIX key value to look up, in its canonical format for the key type.
          examples:
            - '12345678901'
          type: string
      required:
        - keyValue
      type: object
    PIXKeyLookupResponse:
      additionalProperties: false
      properties:
        accountNumber:
          description: Account number (1..20 digits), omitted for a tuple-less key.
          examples:
            - '9988776'
          type: string
        accountType:
          description: >-
            BACEN account type (CACC, TRAN, SLRY, SVGS), omitted for a
            tuple-less key.
          enum:
            - CACC
            - TRAN
            - SLRY
            - SVGS
          examples:
            - CACC
          type: string
        branch:
          description: Account branch (1..4 digits), omitted when unset.
          examples:
            - '0001'
          type: string
        createdAt:
          description: Key creation timestamp, RFC 3339 (UTC).
          examples:
            - '2025-03-07T14:30:00Z'
          type: string
        id:
          description: Unique PIX key identifier (UUID) assigned by the service.
          examples:
            - 550e8400-e29b-41d4-a716-446655440000
          type: string
        keyType:
          description: 'PIX key type: CPF, CNPJ, EMAIL, PHONE, or EVP (random key).'
          examples:
            - CPF
          type: string
        keyValue:
          description: PIX key value in its canonical format for the key type.
          examples:
            - '12345678901'
          type: string
        openingDate:
          description: Account opening date, RFC 3339, omitted for a tuple-less key.
          examples:
            - '2020-01-15T00:00:00Z'
          format: date-time
          type: string
        ownerName:
          description: Full legal name of the key owner.
          examples:
            - João Silva
          type: string
        ownerTaxId:
          description: >-
            Owner tax identifier (CPF or CNPJ), digits only, returned full and
            unmasked per BACEN API-DICT.
          examples:
            - '12345678901'
          type: string
        ownerTradeName:
          description: Owner trade name (legal-entity owners), omitted when unset.
          examples:
            - Silva ME
          type: string
        participantISPB:
          description: Owning participant ISPB, the 8-digit BACEN institution identifier.
          examples:
            - '12345678'
          type: string
        status:
          description: >-
            Key lifecycle status: ACTIVE, INACTIVE, PENDING_CLAIM, or
            PENDING_BACEN_SYNC.
          examples:
            - ACTIVE
          type: string
        updatedAt:
          description: Timestamp of the last update to the key, RFC 3339 (UTC).
          examples:
            - '2025-03-07T14:30:00Z'
          type: string
      required:
        - id
        - keyType
        - keyValue
        - ownerName
        - ownerTaxId
        - participantISPB
        - status
        - createdAt
        - updatedAt
      type: object
    Detail:
      additionalProperties: false
      properties:
        code:
          description: >-
            Stable, machine-readable domain error code scoped to the emitting
            service (format: <SERVICE>-NNNN).
          examples:
            - ERR-0001
          type: string
        detail:
          description: >-
            A human-readable explanation specific to this occurrence of the
            problem.
          examples:
            - Property foo is required but is missing.
          type: string
        errors:
          description: Optional list of individual error details
          items:
            $ref: '#/components/schemas/ErrorDetail'
          type:
            - array
            - 'null'
        instance:
          description: >-
            A URI reference that identifies the specific occurrence of the
            problem.
          examples:
            - https://example.com/error-log/abc123
          format: uri
          type: string
        status:
          description: HTTP status code
          examples:
            - 400
          format: int64
          type: integer
        title:
          description: >-
            A short, human-readable summary of the problem type. This value
            should not change between occurrences of the error.
          examples:
            - Bad Request
          type: string
        type:
          default: about:blank
          description: A URI reference to human-readable documentation for the error.
          examples:
            - https://example.com/errors/example
          format: uri
          type: string
      type: object
    ErrorDetail:
      additionalProperties: false
      properties:
        location:
          description: >-
            Where the error occurred, e.g. 'body.items[3].tags' or
            'path.thing-id'
          type: string
        message:
          description: Error message text
          type: string
        value:
          description: The value at the given location
      type: object
  securitySchemes:
    BearerAuth:
      bearerFormat: JWT
      description: JWT bearer token issued by the identity provider.
      scheme: bearer
      type: http

````