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

# Update webhook subscription

> Update a webhook subscription.

    > **Required scope:** `WEBHOOKS_WRITE`
    >
    > **Rate limit:** 30 requests per minute



## OpenAPI

````yaml https://openapi.enginy.ai/definitions.json patch /v1/webhooks/{webhookId}
openapi: 3.1.0
info:
  title: Enginy API
  version: 1.0.0
  description: Public API for Enginy platform
servers:
  - url: https://openapi.enginy.ai
    description: Configured server
security: []
tags:
  - name: AI Variables
    description: >-
      Manage AI variables and discover the entity fields you can reference in
      prompts and entity requests.
  - name: Inbox
    description: >-
      Inbox endpoints for listing contact threads, reading thread messages,
      managing tags, and sending manual replies.
  - name: Workflows
    description: >-
      Build, validate, publish, run, and inspect advanced (graph) workflows,
      plus the block/condition catalog needed to author a workflow plan.
paths:
  /v1/webhooks/{webhookId}:
    patch:
      tags:
        - Webhooks
      summary: Update webhook subscription
      description: |-
        Update a webhook subscription.

            > **Required scope:** `WEBHOOKS_WRITE`
            >
            > **Rate limit:** 30 requests per minute
      parameters:
        - schema:
            type: string
            description: Webhook ID
          required: true
          description: Webhook ID
          name: webhookId
          in: path
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  minLength: 1
                  maxLength: 255
                  description: Descriptive name for the webhook
                url:
                  type: string
                  format: uri
                  description: Webhook URL
                secret:
                  type:
                    - string
                    - 'null'
                  minLength: 8
                  maxLength: 256
                  description: Webhook secret (null to remove)
                events:
                  type: array
                  items:
                    type: string
                    enum:
                      - CONNECTION_REQUEST_SENT
                      - CONNECTION_REQUEST_ACCEPTED
                      - LINKEDIN_MESSAGE_SENT
                      - EMAIL_SENT
                      - INMAIL_SENT
                      - MESSAGE_REPLIED
                      - POST_LIKED
                      - PROFILE_VISITED
                  minItems: 1
                  description: Array of event types
                campaignIds:
                  type: array
                  items:
                    type: number
                  description: Array of campaign IDs to filter
                customFields:
                  type: array
                  items:
                    type: string
                  description: >-
                    Additional fields to include. Use `GET /v1/contacts/fields`
                    (MCP tool `get_contact_field_metadata`) and `GET
                    /v1/companies/fields` (MCP tool
                    `get_company_field_metadata`) to discover valid field names.
                enabled:
                  type: boolean
                  description: Enable or disable webhook
      responses:
        '200':
          description: Webhook updated successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    enum:
                      - success
                  message:
                    type: string
                  data:
                    type: object
                    properties:
                      id:
                        type: number
                        description: Webhook ID
                      name:
                        type: string
                        description: Webhook name
                      url:
                        type: string
                        description: Webhook URL
                      events:
                        type: array
                        items:
                          type: string
                        description: Subscribed event types
                      campaignIds:
                        type: array
                        items:
                          type: number
                        description: Filtered campaign IDs
                      customFields:
                        type: array
                        items:
                          type: string
                        description: >-
                          Custom fields included in payloads. Use `GET
                          /v1/contacts/fields` (MCP tool
                          `get_contact_field_metadata`) and `GET
                          /v1/companies/fields` (MCP tool
                          `get_company_field_metadata`) to discover valid field
                          names.
                      enabled:
                        type: boolean
                        description: Whether webhook is enabled
                      createdAt:
                        type: string
                        format: date-time
                        description: Creation date
                      updatedAt:
                        type: string
                        format: date-time
                        description: Last update date
                      hasSecret:
                        type: boolean
                        description: >-
                          Whether a secret is configured (actual secret is never
                          returned for security)
                    required:
                      - id
                      - name
                      - url
                      - events
                      - campaignIds
                      - customFields
                      - enabled
                      - createdAt
                      - updatedAt
                      - hasSecret
                required:
                  - status
                  - message
                  - data
        '404':
          description: Webhook not found
      security:
        - apiKey: []
components:
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: x-api-key

````