> ## 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, eventos assinados, ou status. Mudança de URL dispara validação SSRF antes de persistir.



## OpenAPI

````yaml PATCH /webhooks/endpoints/{endpoint_uuid}
openapi: 3.1.0
info:
  description: Superfície pública da API para clientes autenticados por chave de API.
  title: NL Labs Gateway (Public API)
  version: 0.1.0
servers:
  - url: https://api.nlbs.ai
security: []
tags:
  - description: Busca de entidades canônicas.
    name: entities
  - description: Criação, leitura, grafo e dossiê de análises.
    name: analyses
  - description: Relatório regulatório (COAF/SUSEP).
    name: reports
  - description: Triagem de mídia adversa.
    name: adverse-media
  - description: Versões do manifesto regulatório.
    name: regulatory
  - description: Versões do catálogo de regras do motor de risco.
    name: rules
  - description: Endpoints e eventos de webhook.
    name: webhooks
  - description: >-
      Entrypoints HTTP de workflow: invocar um workflow e consultar sua
      execução.
    name: workflow-endpoints
paths:
  /webhooks/endpoints/{endpoint_uuid}:
    patch:
      tags:
        - webhooks
      summary: Atualizar endpoint de webhook
      description: >-
        Atualiza nome, URL, eventos assinados, ou status. Mudança de URL dispara
        validação SSRF antes de persistir.
      operationId: update_webhook_endpoint
      parameters:
        - description: UUID do endpoint de webhook.
          in: path
          name: endpoint_uuid
          required: true
          schema:
            description: UUID do endpoint de webhook.
            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: Successful Response
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Chave de API ausente, malformada, expirada ou inválida.
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: A chave de API 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.
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:
            - $ref: '#/components/schemas/WebhookEndpointStatus'
            - type: 'null'
          description: Status do ciclo de vida do endpoint.
          examples:
            - active
        subscribed_events:
          anyOf:
            - items:
                $ref: '#/components/schemas/WebhookEventType'
              type: array
            - type: 'null'
          description: Lista substituta de eventos assinados.
          title: Subscribed Events
        url:
          anyOf:
            - maxLength: 2048
              minLength: 1
              type: string
            - type: 'null'
          description: >-
            Nova URL de destino HTTPS. Mudanças de URL passam por validação
            SSRF.
          title: Url
      title: WebhookEndpointPatchRequest
      type: object
    WebhookEndpointResponse:
      properties:
        consecutive_failures:
          description: Contagem atual de falhas de entrega consecutivas.
          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:
          $ref: '#/components/schemas/WebhookEndpointStatus'
          description: Status do ciclo de vida do endpoint.
        subscribed_events:
          description: Tipos de evento assinados.
          items:
            $ref: '#/components/schemas/WebhookEventType'
          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 de erro pública e estável.
          examples:
            - Resource not found.
          title: Detail
          type: string
      required:
        - detail
      title: ErrorResponse
      type: object
    WebhookEndpointStatus:
      enum:
        - active
        - disabled
      title: WebhookEndpointStatus
      type: string
    WebhookEventType:
      enum:
        - webhook.test
        - adverse_media.completed
        - adverse_media.failed
      title: WebhookEventType
      type: string

````