> ## 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.

# Complete a Pix key claim

> Completes the claim after directory confirmation and finalizes the Pix key binding to the claimant. This operation is available only to the claimant, takes no request body, and does not use X-Reason.



## OpenAPI

````yaml en/openapi/v3-current/pix-lerian-dict.yaml POST /claims/{claim_id}/complete
openapi: 3.1.0
info:
  contact:
    name: Lerian Studio
    url: https://lerian.studio
  description: >-
    Public API for Pix keys, claims, fraud markers, infraction reports, and MED
    funds recovery.
  license:
    name: Elastic License 2.0
    url: https://www.elastic.co/licensing/elastic-license
  title: Pix Lerian — DICT
  version: release-candidate
servers:
  - url: https://api.example.com/dict-hub/v1
    description: >-
      Replace the example host with the URL provided during environment
      onboarding.
security:
  - BearerAuth: []
tags:
  - description: Register, retrieve, list, update, and remove Pix keys.
    name: Entries
  - description: Look up Pix keys and check whether keys exist in the DICT directory.
    name: Keys
  - description: Manage ownership and portability claims for Pix keys.
    name: Claims
  - description: Manage participant-scoped MED 2.0 funds recoveries.
    name: Funds Recoveries
  - description: Manage MED 2.0 infraction reports for the authenticated organization.
    name: Infraction Reports
  - description: Create, query, cancel, and settle MED 2.0 refunds.
    name: Refunds
  - description: Create, query, list, and cancel DICT fraud markers.
    name: Fraud Markers
paths:
  /claims/{claim_id}/complete:
    post:
      tags:
        - Claims
      summary: Complete a Pix key claim
      description: >-
        Completes the claim after directory confirmation and finalizes the Pix
        key binding to the claimant. This operation is available only to the
        claimant, takes no request body, and does not use X-Reason.
      operationId: completeClaim
      parameters:
        - description: Client-generated key used to retry exactly the same request safely.
          in: header
          name: Idempotency-Key
          required: true
          schema:
            maxLength: 64
            minLength: 1
            type: string
            description: >-
              Client-generated key used to retry exactly the same request
              safely.
          example: pix-demo-20260903-000001
        - in: path
          name: claim_id
          required: true
          schema:
            examples:
              - 019606c3-5d6e-7f80-1b23-456789012cde
            type: string
          example: 019606c3-5d6e-7f80-1b23-456789012cde
        - description: UUID of the account associated with the operation.
          in: header
          name: X-Account-Id
          schema:
            description: UUID of the account associated with the operation.
            examples:
              - 019606a1-3b4c-7d8e-9f01-234567890abc
            type: string
          example: 019606a1-3b4c-7d8e-9f01-234567890abc
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CompleteClaimOutput'
              examples:
                fictitiousExample:
                  summary: Fictitious example
                  value:
                    accountId: 019606a1-3b4c-7d8e-9f01-234567890abc
                    bacenId: claim-bacen-001
                    cancelReason: cancelreason-example
                    cancelledBy: cancelledby-example
                    claimId: 019606c3-5d6e-7f80-1b23-456789012cde
                    claimer:
                      account:
                        branch: '0001'
                        number: '1234567'
                        openingDate: '2024-03-10'
                        type: CACC
                      document: '52998224725'
                      name: Maria da Silva
                      participant: '87654321'
                      personType: NATURAL_PERSON
                      tradeName: Silva ME
                    completionPeriodEnd: '2026-06-18T03:00:00Z'
                    confirmReason: confirmreason-example
                    correlationId: a9f13566e19f5ca51329479a5bae60c5
                    createdAt: '2026-05-19T14:30:00Z'
                    donorParticipant: '12345678'
                    keyType: PHONE
                    keyValue: '+5511987659999'
                    lastModified: '2026-05-19T14:32:11Z'
                    requestId: e7c1a2b3-4d5e-6f70-8a90-1b2c3d4e5f60
                    resolutionPeriodEnd: '2026-05-25T03:00:00Z'
                    status: WAITING_RESOLUTION
                    type: PORTABILITY
                    updatedAt: '2026-05-19T14:32:11Z'
          description: OK
        '400':
          content:
            application/json:
              example:
                code: PIX-0030
                title: Idempotency Key Required
                message: >-
                  The Idempotency-Key header is required for this operation and
                  must be within the accepted length.
              schema:
                $ref: '#/components/schemas/LegacyErrorEnvelope'
          description: >-
            Idempotency-Key absent or longer than 64 bytes (PIX-0030). Legacy
            {code,title,message} envelope, NOT problem+json.
        '412':
          content:
            application/json:
              example:
                code: PIX-0031
                title: Idempotency Key Conflict
                message: The Idempotency-Key was already used with a different request.
              schema:
                $ref: '#/components/schemas/LegacyErrorEnvelope'
          description: >-
            Idempotency-Key replayed with a divergent request -- a different
            method, URL (including the path parameter), body, or identity header
            among X-Account-Id / X-Reason / X-End-To-End-Id (PIX-0031). Legacy
            {code,title,message} envelope, NOT problem+json.
        default:
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Detail'
          description: Error
      x-codeSamples:
        - lang: bash
          label: cURL with fictitious data
          source: |-
            curl --request POST \
              --url https://api.example.com/dict-hub/v1/claims/019606c3-5d6e-7f80-1b23-456789012cde/complete \
              --header 'Authorization: Bearer demo-access-token' \
              --header 'Idempotency-Key: pix-demo-20260903-000001' \
              --header 'X-Account-Id: 019606a1-3b4c-7d8e-9f01-234567890abc'
components:
  schemas:
    CompleteClaimOutput:
      additionalProperties: false
      properties:
        accountId:
          examples:
            - 019606a1-3b4c-7d8e-9f01-234567890abc
          type: string
        bacenId:
          examples:
            - claim-bacen-001
          type: string
        cancelReason:
          type: string
        cancelledBy:
          type: string
        claimId:
          examples:
            - 019606c3-5d6e-7f80-1b23-456789012cde
          type: string
        claimer:
          $ref: '#/components/schemas/ClaimClaimerOutput'
        completionPeriodEnd:
          examples:
            - '2026-06-18T03:00:00Z'
          type: string
        confirmReason:
          type: string
        correlationId:
          examples:
            - a9f13566e19f5ca51329479a5bae60c5
          type: string
        createdAt:
          examples:
            - '2026-05-19T14:30:00Z'
          type: string
        donorParticipant:
          examples:
            - '12345678'
          type: string
        keyType:
          examples:
            - PHONE
          type: string
        keyValue:
          examples:
            - '+5511987659999'
          type: string
        lastModified:
          examples:
            - '2026-05-19T14:32:11Z'
          type: string
        requestId:
          examples:
            - e7c1a2b3-4d5e-6f70-8a90-1b2c3d4e5f60
          type: string
        resolutionPeriodEnd:
          examples:
            - '2026-05-25T03:00:00Z'
          type: string
        status:
          examples:
            - WAITING_RESOLUTION
          type: string
        type:
          examples:
            - PORTABILITY
          type: string
        updatedAt:
          examples:
            - '2026-05-19T14:32:11Z'
          type: string
      required:
        - claimId
        - accountId
        - bacenId
        - status
        - type
        - keyType
        - keyValue
        - donorParticipant
        - claimer
        - lastModified
        - createdAt
        - updatedAt
      type: object
    LegacyErrorEnvelope:
      additionalProperties: false
      properties:
        code:
          description: PIX-XXXX error code
          type: string
        message:
          description: Human-readable error message
          type: string
        title:
          description: Short error title
          type: string
      required:
        - code
        - title
        - message
      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
        upstream:
          $ref: '#/components/schemas/Upstream'
          description: >-
            RFC 9457 extension member: the error a proxied third-party provider
            reported. Absent unless the emitting service explicitly surfaced
            one.
      type: object
    ClaimClaimerOutput:
      additionalProperties: false
      properties:
        account:
          $ref: '#/components/schemas/ClaimClaimerAccountOutput'
        document:
          examples:
            - '52998224725'
          type: string
        name:
          examples:
            - Maria da Silva
          type: string
        participant:
          examples:
            - '87654321'
          type: string
        personType:
          examples:
            - NATURAL_PERSON
          type: string
        tradeName:
          examples:
            - Silva ME
          type: string
      required:
        - participant
      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
    Upstream:
      additionalProperties: false
      properties:
        code:
          description: The upstream provider's own error code, verbatim.
          examples:
            - E4001
          type: string
        message:
          description: >-
            The upstream provider's own error message, verbatim (bounded, never
            its raw response body).
          examples:
            - account not found at provider
          type: string
      type: object
    ClaimClaimerAccountOutput:
      additionalProperties: false
      properties:
        branch:
          examples:
            - '0001'
          type: string
        number:
          examples:
            - '1234567'
          type: string
        openingDate:
          examples:
            - '2024-03-10'
          type: string
        type:
          examples:
            - CACC
          type: string
      required:
        - branch
        - number
        - type
        - openingDate
      type: object
  securitySchemes:
    BearerAuth:
      bearerFormat: JWT
      description: JWT bearer token issued by the identity provider.
      scheme: bearer
      type: http

````