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

# Atualizar endpoint de webhook

> Atualiza nome, URL, inscrições de eventos ou status. Mudanças de URL disparam validação de SSRF antes de persistir.



## OpenAPI

````yaml https://api.nlbs.ai/api/openapi.json patch /webhooks/endpoints/{endpoint_uuid}
openapi: 3.1.0
info:
  description: >-
    API de AML da NL Labs AI. Use apikeys Bearer para os endpoints protegidos.
    As sondas /live e /ready são públicas.
  title: NL Labs AI
  version: 0.1.0
servers:
  - url: https://api.nlbs.ai/api
security:
  - ApiKeyAuth: []
tags:
  - description: >-
      Endpoints de verificação de saúde em tempo de execução e atualização das
      fontes.
    name: health
  - description: >-
      Endpoints de busca de entidades canônicas usados antes de iniciar
      análises.
    name: entities
  - description: >-
      Endpoints de criação, consulta e sub-recursos (grafo, sinais, eventos,
      explicação, snapshot) de análises de AML.
    name: analyses
  - description: >-
      Endpoints de criação, consulta e regeneração de parágrafos de relatórios
      regulatórios (Motor 2).
    name: reports
  - description: Endpoints do catálogo versionado de regras determinísticas.
    name: rules
  - description: Endpoints do catálogo versionado de referências regulatórias.
    name: regulatory
  - description: Operações de configuração de endpoints de webhook e eventos de entrega.
    name: webhooks
paths:
  /webhooks/endpoints/{endpoint_uuid}:
    patch:
      tags:
        - webhooks
      summary: Atualizar endpoint de webhook
      description: >-
        Atualiza nome, URL, inscrições de eventos ou status. Mudanças de URL
        disparam validação de SSRF antes de persistir.
      operationId: update_webhook_endpoint
      parameters:
        - description: UUID do endpoint de webhook.
          in: path
          name: endpoint_uuid
          required: true
          schema:
            description: Webhook endpoint UUID.
            format: uuid
            title: Endpoint Uuid
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WebhookEndpointPatchRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookEndpointResponse'
          description: Resposta bem-sucedida.
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Apikey Bearer ausente, malformada, expirada ou inválida.
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: A apikey autenticada não tem o escopo necessário.
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Endpoint de webhook não encontrado para o cliente autenticado.
        '422':
          description: >-
            Corpo da requisição, parâmetro de rota, parâmetro de query ou regra
            de negócio inválidos.
      security:
        - HTTPBearer: []
components:
  schemas:
    WebhookEndpointPatchRequest:
      examples:
        - name: Updated callback
          status: active
          subscribed_events:
            - webhook.test
      properties:
        name:
          anyOf:
            - maxLength: 128
              minLength: 1
              type: string
            - type: 'null'
          description: Novo nome legível do endpoint.
          title: Name
        status:
          anyOf:
            - type: string
            - type: 'null'
          description: Status de ciclo de vida do endpoint.
          examples:
            - active
          title: Status
        subscribed_events:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          description: Lista de assinatura de eventos, substituindo a atual.
          title: Subscribed Events
        url:
          anyOf:
            - maxLength: 2048
              minLength: 1
              type: string
            - type: 'null'
          description: >-
            Nova URL HTTPS de destino. Mudanças de URL passam por validação
            SSRF.
          title: Url
      title: WebhookEndpointPatchRequest
      type: object
    WebhookEndpointResponse:
      description: >-
        Representação do endpoint — nunca contém secret_ciphertext ou o segredo
        em texto puro.
      properties:
        consecutive_failures:
          description: Contagem atual de falhas consecutivas de entrega.
          title: Consecutive Failures
          type: integer
        created_at:
          description: Timestamp de criação do endpoint.
          format: date-time
          title: Created At
          type: string
        disabled_at:
          anyOf:
            - format: date-time
              type: string
            - type: 'null'
          description: Timestamp de quando o endpoint foi desativado.
          title: Disabled At
        last_failure_at:
          anyOf:
            - format: date-time
              type: string
            - type: 'null'
          description: Timestamp da última entrega com falha.
          title: Last Failure At
        last_success_at:
          anyOf:
            - format: date-time
              type: string
            - type: 'null'
          description: Timestamp da última entrega bem-sucedida.
          title: Last Success At
        name:
          description: Nome legível do endpoint de webhook.
          title: Name
          type: string
        status:
          description: Status do ciclo de vida do endpoint.
          title: Status
          type: string
        subscribed_events:
          description: Tipos de evento de webhook inscritos.
          items:
            type: string
          title: Subscribed Events
          type: array
        updated_at:
          description: Timestamp da última atualização do endpoint.
          format: date-time
          title: Updated At
          type: string
        url:
          description: URL de destino.
          title: Url
          type: string
        uuid:
          description: UUID do endpoint de webhook.
          format: uuid
          title: Uuid
          type: string
      required:
        - uuid
        - name
        - url
        - status
        - subscribed_events
        - consecutive_failures
        - last_success_at
        - last_failure_at
        - disabled_at
        - created_at
        - updated_at
      title: WebhookEndpointResponse
      type: object
    ErrorResponse:
      properties:
        detail:
          description: Mensagem pública estável de erro.
          examples:
            - Resource not found.
          title: Detail
          type: string
      required:
        - detail
      title: ErrorResponse
      type: object
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key

````