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

# Excluir Assinatura de Webhook

> Esta operação realiza uma exclusão lógica (soft delete) definindo `is_active = false` e `deleted_at = NOW()`.
A assinatura não receberá mais eventos de webhook.

## Regras
- Apenas a conta bancária proprietária da assinatura pode excluí-la.
- Tentar excluir uma assinatura de outra conta retorna 404 (não 403, para evitar vazamento de existência).
- Excluir uma assinatura já excluída retorna 404.

Requer permissão `ManageWebhooks`.



## OpenAPI

````yaml /api-reference/banking/openapi.pt.json delete /v1/webhooks/{id}
openapi: 3.1.0
info:
  title: API Conta Digital
  description: API pública para gerenciamento de conta, extrato e operações PIX
  license:
    name: ''
  version: 0.1.0
servers:
  - url: https://conta-public-api.kiwify.com
    description: Production environment
security: []
tags:
  - name: Conta
    description: Detalhes da conta, saldo, limites e chaves PIX
  - name: Extrato
    description: Extrato e histórico de transações
  - name: Enviar Pix
    description: Enviar dinheiro via transferências PIX
  - name: Receber Pix
    description: Reembolsar transações PIX
  - name: Pagar boletos
    description: Pagar boletos via API
  - name: QR Codes PIX
    description: Geração de QR codes PIX para receber pagamentos
  - name: Webhooks
    description: >-
      Gerenciamento de assinaturas de webhook para recebimento de notificações
      de eventos
paths:
  /v1/webhooks/{id}:
    delete:
      tags:
        - Webhooks
      summary: Excluir Assinatura de Webhook
      description: >-
        Esta operação realiza uma exclusão lógica (soft delete) definindo
        `is_active = false` e `deleted_at = NOW()`.

        A assinatura não receberá mais eventos de webhook.


        ## Regras

        - Apenas a conta bancária proprietária da assinatura pode excluí-la.

        - Tentar excluir uma assinatura de outra conta retorna 404 (não 403,
        para evitar vazamento de existência).

        - Excluir uma assinatura já excluída retorna 404.


        Requer permissão `ManageWebhooks`.
      operationId: delete_webhook
      parameters:
        - name: id
          in: path
          description: Webhook subscription ID to delete
          required: true
          schema:
            type: integer
            format: int64
      responses:
        '204':
          description: Webhook subscription deleted successfully
        '401':
          description: >-
            Authentication failed - invalid or missing service account
            credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Access denied - service account requires ManageWebhooks permission
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: 'Webhook subscription not found. Error code: WEBHOOK_NOT_FOUND'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: 'Internal server error. Error code: INTERNAL_ERROR'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
        - AccessId: []
          PoPChallenge: []
          PoPFormat: []
          PoPSignature: []
components:
  schemas:
    ErrorResponse:
      type: object
      required:
        - error
        - timestamp
      properties:
        error:
          $ref: '#/components/schemas/ErrorDetails'
          description: Error payload.
        timestamp:
          type: string
          format: date-time
          description: ISO 8601 / RFC 3339 UTC timestamp of when the error occurred.
          example: '2026-05-28T14:30:00Z'
    ErrorDetails:
      type: object
      required:
        - code
        - message
      properties:
        code:
          type: string
          description: >-
            Machine-readable error code. Use this for branching logic, not
            `message`.
          example: INVALID_REQUEST
        details:
          type: object
          description: >-
            Optional structured details. For `INVALID_REQUEST`, may be an array
            of field validation errors or a `validation_failed` object depending
            on the endpoint.
        message:
          type: string
          description: >-
            Human-readable error description. Do not rely on this text for
            programmatic handling.
  securitySchemes:
    AccessId:
      type: apiKey
      in: header
      name: x-access-id
      description: UUID of the service account (e.g., 550e8400-e29b-41d4-a716-446655440000)
    PoPChallenge:
      type: apiKey
      in: header
      name: X-PoP-Challenge
      description: >-
        Unix timestamp in milliseconds (e.g., 1704636800000). Must be within 5
        minutes of server time.
    PoPFormat:
      type: apiKey
      in: header
      name: X-PoP-Format
      description: Must be 'service-account' for service account authentication
    PoPSignature:
      type: apiKey
      in: header
      name: X-PoP-Signature
      description: >-
        EdDSA signature of the request in base64 format. Signs:
        uri:method:body:timestamp

````