---
title: "Replace all webhook topics"
method: PUT
path: "/webhooks/{id}/topics"
tags: ["Webhooks"]
---

# Replace all webhook topics

`PUT /webhooks/{id}/topics`

## Request

- Base URL: `https://api.pax8.com/api/v2`
- URL: `https://api.pax8.com/api/v2/webhooks/{id}/topics`
- Auth: none declared

Replace all webhook topics

## Path parameters

- `id` string, uuid, required

## Request body

- ReplaceWebhookTopics: Command for replacing webhook topics
  - `webhookTopics` AddWebhookTopic[], required: List of webhook topics to replace existing ones
    - `topic` string, required: The topic name to subscribe to
    - `filters` UpdateWebhookFilter[], required: Advanced filtering configuration
      - `action` string, required: Action to filter on
      - `conditions` UpdateFilterCondition[], required: List of conditions that must all be true
        - `field` string, required: Field path to filter on
        - `operator` 'EQUALS' | 'NOT_EQUALS' | 'GREATER_THAN' | 'LESS_THAN' | 'IN' | 'NOT_IN' | 'CONTAINS', required: Filter operator for webhook conditions
        - `value` string[], required: Values to compare against

## Response `200`

The request has succeeded.

- Webhook: Webhook subscription information
  - `id` string, uuid, required: Unique identifier for the webhook
  - `accountId` string, uuid, required: Account ID that owns this webhook
  - `displayName` string, required: Display name for the webhook
  - `url` string: URL where webhook events will be sent
  - `authorization` string: Authorization header value for webhook
  - `active` boolean, required: Whether the webhook is active
  - `contactEmail` string: Email address to notify when webhook delivery errors occur
  - `errorThreshold` integer, required: Number of times a webhook will be retried and consecutive errors will result in an email notification
  - `integrationId` string, uuid: Id of the integration this webhook is associated with, if applicable
  - `webhookTopics` WebhookTopic[], required: List of topics and configurations this webhook subscribes to
    - `id` string, uuid, required: Unique identifier for the webhook topic
    - `topic` string, required: The topic name
    - `filters` WebhookFilter[], required: Advanced filtering configuration
      - `action` string, required: Action to filter on
      - `conditions` FilterCondition[], required: List of conditions that must all be true
        - `field` string, required: Field path to filter on
        - `operator` 'EQUALS' | 'NOT_EQUALS' | 'GREATER_THAN' | 'LESS_THAN' | 'IN' | 'NOT_IN' | 'CONTAINS', required: Filter operator for webhook conditions
        - `value` string[], required: Values to compare against
  - `lastDeliveryStatus` 'PENDING' | 'SUCCESS' | 'FAILED' | 'RETRYING': Status of webhook delivery
  - `createdAt` string, date-time, required: Timestamp when the webhook was created
  - `updatedAt` string, date-time, required: Timestamp when the webhook was last updated

## Other responses

- `400`: The request is missing required parameters or has invalid parameters
- `401`: Missing or invalid token
- `403`: User does not have permission to access this resource
- `500`: Server error

---

[API](https://skmtc.dev/pax8/apis/webhooks-api.md) - [All operations](https://skmtc.dev/pax8/apis/webhooks-api/llms.txt) - [OpenAPI document](https://skmtc.dev/pax8/apis/webhooks-api/revisions/c0951191e943?raw)
