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

# Update webhook endpoint

> Update name, URL, event subscriptions, or status. URL changes trigger SSRF validation before persistence.



## OpenAPI

````yaml https://api.qa.nlbs.ai/api/openapi.json patch /webhooks/endpoints/{endpoint_uuid}
openapi: 3.1.0
info:
  description: >-
    NL Labs AI AML API. Use Bearer API keys for protected endpoints. The /live
    and /ready probes are public.
  title: NL Labs AI
  version: 0.1.0
servers:
  - url: https://api.qa.nlbs.ai/api
security:
  - ApiKeyAuth: []
tags:
  - description: Runtime health checks and source freshness endpoints.
    name: health
  - description: Canonical entity lookup endpoints used before starting analyses.
    name: entities
  - description: AML analysis creation, status, result, and debug endpoints.
    name: analyses
  - description: Regulatory report (Motor 2) creation, status, result, and debug endpoints.
    name: reports
  - description: Versioned deterministic rules catalog endpoints.
    name: rules
  - description: Versioned regulatory reference catalog endpoints.
    name: regulatory
  - description: Webhook endpoint configuration and delivery-event operations.
    name: webhooks
paths:
  /webhooks/endpoints/{endpoint_uuid}:
    patch:
      tags:
        - webhooks
      summary: Update webhook endpoint
      description: >-
        Update name, URL, event subscriptions, or status. URL changes trigger
        SSRF validation before persistence.
      operationId: update_webhook_endpoint
      parameters:
        - description: Webhook endpoint UUID.
          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: Successful Response
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Missing, malformed, expired, or invalid Bearer API key.
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: The authenticated API key does not have the required scope.
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Webhook endpoint was not found for the authenticated client.
        '422':
          description: >-
            Invalid request body, path parameter, query parameter, or business
            rule.
      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: New human-readable endpoint name.
          title: Name
        status:
          anyOf:
            - type: string
            - type: 'null'
          description: Endpoint lifecycle status.
          examples:
            - active
          title: Status
        subscribed_events:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          description: Replacement event subscription list.
          title: Subscribed Events
        url:
          anyOf:
            - maxLength: 2048
              minLength: 1
              type: string
            - type: 'null'
          description: New HTTPS destination URL. URL changes are SSRF-validated.
          title: Url
      title: WebhookEndpointPatchRequest
      type: object
    WebhookEndpointResponse:
      description: >-
        Endpoint representation — never contains secret_ciphertext or the
        plaintext secret.
      properties:
        consecutive_failures:
          description: Current consecutive delivery failure count.
          title: Consecutive Failures
          type: integer
        created_at:
          description: Endpoint creation timestamp.
          format: date-time
          title: Created At
          type: string
        disabled_at:
          anyOf:
            - format: date-time
              type: string
            - type: 'null'
          description: Timestamp when the endpoint was disabled.
          title: Disabled At
        last_failure_at:
          anyOf:
            - format: date-time
              type: string
            - type: 'null'
          description: Last failed delivery timestamp.
          title: Last Failure At
        last_success_at:
          anyOf:
            - format: date-time
              type: string
            - type: 'null'
          description: Last successful delivery timestamp.
          title: Last Success At
        name:
          description: Human-readable webhook endpoint name.
          title: Name
          type: string
        status:
          description: Endpoint lifecycle status.
          title: Status
          type: string
        subscribed_events:
          description: Subscribed webhook event types.
          items:
            type: string
          title: Subscribed Events
          type: array
        updated_at:
          description: Endpoint last update timestamp.
          format: date-time
          title: Updated At
          type: string
        url:
          description: Destination URL.
          title: Url
          type: string
        uuid:
          description: Webhook endpoint UUID.
          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: Stable public error message.
          examples:
            - Resource not found.
          title: Detail
          type: string
      required:
        - detail
      title: ErrorResponse
      type: object
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key

````