> **For AI agents:** this page is a focused, LLM-optimized view of a
> single Fiber AI operation. Before calling it, fetch the routing
> instructions at [`https://api.fiber.ai/llms.txt`](https://api.fiber.ai/llms.txt) and the full operation
> index at [`https://api.fiber.ai/ai-docs/index.md`](https://api.fiber.ai/ai-docs/index.md).

# updateWebhookEndpoint

`PATCH /v1/webhooks/endpoints/{endpointId}`

**Tags:** `Webhooks`

Update webhook endpoint

**Endpoint:** `https://api.fiber.ai/v1/webhooks/endpoints/{endpointId}`

## Description

Update a webhook endpoint. Change its URL, replace the event types it is subscribed to, update its description, or pause and resume delivery. Only the fields you provide are changed. Updating webhooks is free.

⚡ Rate limit: 60 requests per 1 minute

💰 Cost: FREE! No credits are charged for this API. ⓘ

## Parameters

| Name | In | Required | Description |
| --- | --- | --- | --- |
| `endpointId` | path | yes | The unique ID of the webhook endpoint. |

## Request body (JSON Schema)

```json
{
  "type": "object",
  "properties": {
    "apiKey": {
      "type": "string",
      "description": "Your Fiber API key"
    },
    "url": {
      "type": [
        "string",
        "null"
      ],
      "format": "uri",
      "pattern": "^https://",
      "description": "A new HTTPS URL to receive event payloads."
    },
    "eventTypes": {
      "type": [
        "array",
        "null"
      ],
      "items": {
        "type": "string",
        "enum": [
          "reveal.completed",
          "saved_search.run_completed",
          "saved_search.run_upcoming",
          "job.changed",
          "batch_live_enrich.completed",
          "batch_contact_enrich.completed",
          "batch_contact_enrich_v1.completed",
          "github_to_linkedin.completed",
          "github_lookup.completed",
          "domain_lookup.completed",
          "social_media_lookup.completed",
          "google_maps_search.completed",
          "local_business_search.completed",
          "depth_chart.completed",
          "audience.enrichment_completed",
          "audience.prospect_export_completed",
          "audience.company_export_completed",
          "audience.build_completed",
          "combined_search.completed",
          "sales_nav_scrape.completed",
          "sales_nav_lite_scrape.completed",
          "job_changes.profiles_added",
          "tracker.signal_detected",
          "tracker.list_run_completed",
          "tracker.list_run_upcoming",
          "mosaic.completed"
        ]
      },
      "minItems": 1,
      "description": "A new set of event types to subscribe this endpoint to."
    },
    "description": {
      "type": [
        "string",
        "null"
      ],
      "minLength": 1,
      "description": "A new human-readable label for this endpoint."
    },
    "disabled": {
      "type": [
        "boolean",
        "null"
      ],
      "description": "Set to true to pause delivery, or false to resume it."
    }
  },
  "required": [
    "apiKey"
  ]
}
```

## Response — success (JSON Schema)

```json
{
  "type": "object",
  "properties": {
    "output": {
      "type": "object",
      "properties": {
        "endpointId": {
          "type": "string",
          "description": "The unique ID of this webhook endpoint."
        },
        "url": {
          "type": "string",
          "description": "The HTTPS URL that receives event payloads."
        },
        "eventTypes": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The event types this endpoint is subscribed to. An empty array means the endpoint receives every event type; endpoints created through this API are always subscribed to one or more specific event types."
        },
        "description": {
          "type": [
            "string",
            "null"
          ],
          "description": "An optional human-readable label for this endpoint."
        },
        "disabled": {
          "type": "boolean",
          "description": "Whether delivery to this endpoint is currently paused."
        },
        "createdAt": {
          "type": "string",
          "description": "When the endpoint was created (ISO 8601)."
        },
        "updatedAt": {
          "type": "string",
          "description": "When the endpoint was last updated (ISO 8601)."
        }
      },
      "required": [
        "endpointId",
        "url",
        "eventTypes",
        "disabled",
        "createdAt",
        "updatedAt"
      ]
    },
    "chargeInfo": {
      "oneOf": [
        {
          "type": "object",
          "properties": {
            "method": {
              "type": "string",
              "enum": [
                "charged-now"
              ]
            },
            "creditsCharged": {
              "type": "number"
            },
            "lowCreditAlert": {
              "type": [
                "object",
                "null"
              ],
              "properties": {
                "getMoreCreditsUrl": {
                  "type": "string",
                  "format": "uri",
                  "description": "URL to top up credits or restart billing cycle to get fresh credits."
                },
                "message": {
                  "type": "string",
                  "description": "Human-readable credits warning."
                },
                "availableCredits": {
                  "type": "number",
                  "description": "Number of credits remaining in the current billing period."
                }
              },
              "required": [
                "getMoreCreditsUrl",
                "message",
                "availableCredits"
              ],
              "description": "Contains a link to get more credits, a warning message, and the remaining credit count."
            }
          },
          "required": [
            "method",
            "creditsCharged"
          ],
          "description": "Credits were charged immediately for this operation"
        },
        {
          "type": "object",
          "properties": {
            "method": {
              "type": "string",
              "enum": [
                "charging-later"
              ]
            },
            "message": {
              "type": "string"
            },
            "lowCreditAlert": {
              "type": [
                "object",
                "null"
              ],
              "properties": {
                "getMoreCreditsUrl": {
                  "type": "string",
                  "format": "uri",
                  "description": "URL to top up credits or restart billing cycle to get fresh credits."
                },
                "message": {
                  "type": "string",
                  "description": "Human-readable credits warning."
                },
                "availableCredits": {
                  "type": "number",
                  "description": "Number of credits remaining in the current billing period."
                }
              },
              "required": [
                "getMoreCreditsUrl",
                "message",
                "availableCredits"
              ],
              "description": "Contains a link to get more credits, a warning message, and the remaining credit count."
            }
          },
          "required": [
            "method",
            "message"
          ],
          "description": "Credits will be charged after the operation completes"
        },
        {
          "type": "object",
          "properties": {
            "method": {
              "type": "string",
              "enum": [
                "charged-for-async-process"
              ]
            },
            "creditsCharged": {
              "type": "number"
            },
            "message": {
              "type": "string"
            },
            "lowCreditAlert": {
              "type": [
                "object",
                "null"
              ],
              "properties": {
                "getMoreCreditsUrl": {
                  "type": "string",
                  "format": "uri",
                  "description": "URL to top up credits or restart billing cycle to get fresh credits."
                },
                "message": {
                  "type": "string",
                  "description": "Human-readable credits warning."
                },
                "availableCredits": {
                  "type": "number",
                  "description": "Number of credits remaining in the current billing period."
                }
              },
              "required": [
                "getMoreCreditsUrl",
                "message",
                "availableCredits"
              ],
              "description": "Contains a link to get more credits, a warning message, and the remaining credit count."
            }
          },
          "required": [
            "method",
            "creditsCharged",
            "message"
          ],
          "description": "Credits that were charged for an asynchronous operation"
        },
        {
          "type": "object",
          "properties": {
            "method": {
              "type": "string",
              "enum": [
                "free"
              ]
            },
            "message": {
              "type": "string"
            },
            "lowCreditAlert": {
              "type": [
                "object",
                "null"
              ],
              "properties": {
                "getMoreCreditsUrl": {
                  "type": "string",
                  "format": "uri",
                  "description": "URL to top up credits or restart billing cycle to get fresh credits."
                },
                "message": {
                  "type": "string",
                  "description": "Human-readable credits warning."
                },
                "availableCredits": {
                  "type": "number",
                  "description": "Number of credits remaining in the current billing period."
                }
              },
              "required": [
                "getMoreCreditsUrl",
                "message",
                "availableCredits"
              ],
              "description": "Contains a link to get more credits, a warning message, and the remaining credit count."
            }
          },
          "required": [
            "method",
            "message"
          ],
          "description": "No credits were charged for this operation"
        },
        {
          "type": "object",
          "properties": {
            "method": {
              "type": "string",
              "enum": [
                "credits-refunded"
              ]
            },
            "creditsRefunded": {
              "type": "number"
            },
            "message": {
              "type": "string"
            },
            "lowCreditAlert": {
              "type": [
                "object",
                "null"
              ],
              "properties": {
                "getMoreCreditsUrl": {
                  "type": "string",
                  "format": "uri",
                  "description": "URL to top up credits or restart billing cycle to get fresh credits."
                },
                "message": {
                  "type": "string",
                  "description": "Human-readable credits warning."
                },
                "availableCredits": {
                  "type": "number",
                  "description": "Number of credits remaining in the current billing period."
                }
              },
              "required": [
                "getMoreCreditsUrl",
                "message",
                "availableCredits"
              ],
              "description": "Contains a link to get more credits, a warning message, and the remaining credit count."
            }
          },
          "required": [
            "method",
            "creditsRefunded",
            "message"
          ],
          "description": "Credits were refunded for this operation"
        }
      ]
    },
    "warnings": {
      "type": [
        "array",
        "null"
      ],
      "items": {
        "type": "object",
        "properties": {
          "field": {
            "type": "string",
            "description": "Full path to extraneous field (e.g., 'searchParams.ExtraField')"
          },
          "message": {
            "type": "string",
            "description": "Warning message"
          }
        },
        "required": [
          "field",
          "message"
        ]
      },
      "description": "Warnings about extraneous fields in request"
    },
    "advice": {
      "type": [
        "array",
        "null"
      ],
      "items": {
        "type": "string"
      },
      "description": "Tips, recommendations, and suggestions for using this API effectively."
    }
  },
  "required": [
    "output",
    "chargeInfo"
  ],
  "additionalProperties": false
}
```

---

Canonical JSON: [`https://api.fiber.ai/openapi.json`](https://api.fiber.ai/openapi.json)
Operation index: [`https://api.fiber.ai/ai-docs/index.md`](https://api.fiber.ai/ai-docs/index.md)
