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

# Cancel claim

> Cancels a claim. The cancelling side is derived from the authenticated participant; the reason (USER_REQUESTED or FRAUD) is validated against the claim type per the BACEN DICT reason×type matrix.



## OpenAPI

````yaml en/openapi/v3-current/spi-dict.yaml post /api/v1/dict/claims/{claimID}/cancel
openapi: 3.1.0
info:
  contact:
    email: contact@lerian.studio
    name: Lerian Studio
    url: https://lerian.studio
  description: >-
    OpenAPI 3.1 surface for the DICT (Diretório de Identificadores de Contas
    Transacionais) capability of Lerian SPI, the direct integration between the
    institution and the Brazilian Instant Payment System (SPI/Pix). It covers
    the PIX key lifecycle, portability and ownership claims, infraction reports,
    refunds, fraud markers, synchronous DICT reports, and the internal
    reconciliation and provisioning operations that keep the key directory
    consistent.
  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: 'PIX key lifecycle: register, list, search, lookup, delete, and statistics.'
    name: Keys
  - description: >-
      PIX key portability and ownership claims through their full lifecycle
      (initiate, confirm, reject, cancel, acknowledge, complete).
    name: Claims
  - description: 'DICT infraction reports: create, list, and retrieve.'
    name: Infractions
  - description: 'DICT refund requests: create, list, and retrieve.'
    name: Refunds
  - description: 'PIX fraud markers: create, list, and statistics.'
    name: Fraud Markers
  - description: >-
      Synchronous reports over Lerian SPI's own DICT record: COUNT(*) summaries
      of keys (by type/status) and claims (by type/status + open-past-deadline).
      COUNT-only — DICT holds no money.
    name: Reports
  - description: >-
      Internal DICT operations: reconciliation runs, participant ISPB
      provisioning, claim deadline processing, and orphaned-key cleanup.
    name: Internal
paths:
  /api/v1/dict/claims/{claimID}/cancel:
    post:
      tags:
        - Claims
      summary: Cancel claim
      description: >-
        Cancels a claim. The cancelling side is derived from the authenticated
        participant; the reason (USER_REQUESTED or FRAUD) is validated against
        the claim type per the BACEN DICT reason×type matrix.
      operationId: cancelClaim
      parameters:
        - description: Idempotency key, max 255 characters
          in: header
          name: Idempotency-Key
          schema:
            description: Idempotency key, max 255 characters
            type: string
        - description: Claim UUID
          in: path
          name: claimID
          required: true
          schema:
            description: Claim UUID
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CancelClaimHumaBody'
              description: >-
                Cancellation reason. The cancelling side is derived from the
                authenticated participant, not this body.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClaimResponse'
                description: Claim record with its current status and deadlines
          description: OK
        default:
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Detail'
          description: Error
      security:
        - BearerAuth: []
components:
  schemas:
    CancelClaimHumaBody:
      additionalProperties: false
      properties:
        reason:
          description: >-
            Cancellation reason: USER_REQUESTED (participant withdrawal) or
            FRAUD (anti-fraud cancel, either side on either claim type)
          examples:
            - USER_REQUESTED
          type: string
      required:
        - reason
      type: object
    ClaimResponse:
      additionalProperties: false
      properties:
        claimType:
          description: 'Claim kind: OWNERSHIP or PORTABILITY'
          examples:
            - OWNERSHIP
          type: string
        claimerISPB:
          description: ISPB (8 numeric digits) of the participant initiating the claim
          examples:
            - '12345678'
          type: string
        deadline:
          description: Donor-response deadline, seven days after initiation (RFC 3339, UTC)
          examples:
            - '2025-03-14T14:30:00Z'
          type: string
        donorISPB:
          description: >-
            ISPB (8 numeric digits) of the current key owner (donor), resolved
            during initiation
          examples:
            - '87654321'
          type: string
        id:
          description: Server-assigned claim UUID
          examples:
            - 550e8400-e29b-41d4-a716-446655440000
          type: string
        keyType:
          description: 'PIX key type: CPF, CNPJ, EMAIL, PHONE, or EVP'
          examples:
            - CPF
          type: string
        keyValue:
          description: PIX key value under claim
          examples:
            - '12345678901'
          type: string
        requestedAt:
          description: Claim initiation timestamp (RFC 3339, UTC)
          examples:
            - '2025-03-07T14:30:00Z'
          type: string
        resolution:
          description: >-
            Terminal resolution reason (e.g. DONOR_CONFIRMED,
            CANCELLED_BY_CLAIMER, CANCELLED_BY_CLAIMER_FRAUD,
            CANCELLED_BY_DONOR, CANCELLED_BY_DONOR_FRAUD, DEADLINE_EXPIRED);
            empty until the claim resolves
          examples:
            - ''
          type: string
        resolvedAt:
          description: >-
            Resolution timestamp (RFC 3339, UTC); omitted while the claim is
            unresolved
          examples:
            - ''
          type: string
        status:
          description: >-
            Claim lifecycle state: OPEN, WAITING_RESOLUTION, CONFIRMED,
            CANCELLED, or COMPLETED
          examples:
            - OPEN
          type: string
      required:
        - id
        - claimType
        - keyValue
        - keyType
        - claimerISPB
        - donorISPB
        - status
        - requestedAt
        - deadline
      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

````