---
title: "Update a endpoint"
method: PUT
path: "/workspaces/{ws_id}/endpoints/{id}"
tags: ["Endpoint"]
---

# Update a endpoint

`PUT /workspaces/{ws_id}/endpoints/{id}`

## Path parameters

- `id` string, required

## Request body

- Endpoint
  - `id` string
  - `name` string, nullable
  - `description` string, nullable
  - `enabled` boolean
  - `request` object
    - `url` string, required
    - `method` 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH'
    - `headers` object, nullable
    - `timeout` integer
  - `retry` object
    - `strategy` 'fixed'
    - `config` object
      - `attempts` integer[]
  - `events` string[]
  - `metadata` Metadata
  - `rate_limit` RateLimit, nullable — The rate limit that uses GCRA algorithm (a variant of the leaky bucket algorithm that supports bursts).
    - `quota` integer, required — Rate limiting quota that allowed in every period.
    - `period` integer, required — Rate limiting period in seconds.
  - `created_at` integer
  - `updated_at` integer

## Response `200`

OK

- Endpoint
  - `id` string
  - `name` string, nullable
  - `description` string, nullable
  - `enabled` boolean
  - `request` object
    - `url` string, required
    - `method` 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH'
    - `headers` object, nullable
    - `timeout` integer
  - `retry` object
    - `strategy` 'fixed'
    - `config` object
      - `attempts` integer[]
  - `events` string[]
  - `metadata` Metadata
  - `rate_limit` RateLimit, nullable — The rate limit that uses GCRA algorithm (a variant of the leaky bucket algorithm that supports bursts).
    - `quota` integer, required — Rate limiting quota that allowed in every period.
    - `period` integer, required — Rate limiting period in seconds.
  - `created_at` integer
  - `updated_at` integer

## Changes

- **2025-09-12** `a69667e09d64` — 2 info
  - added the new optional request property `rate_limit`
  - added the optional property `rate_limit` to the response with the `200` status
- **2025-07-29** `232f34fd9749` — 12 breaking, 4 warning, 30 info
  - request property `retry/strategy` was restricted to a list of enum values
  - the `retry/config/attempts` request property's minItems was increased to `1`
  - the `request/url` request property's minLength was increased from `0` to `1`
  - the response property `description` became nullable for the status `200`
  - …42 more
- **2025-07-04** `52cf706a43db` — 2 info
  - added the new optional request property `metadata`
  - added the optional property `metadata` to the response with the `200` status
- **2024-09-06** `041875436163` — 8 breaking, 11 warning, 11 info
  - request property `request/method` was restricted to a list of enum values
  - the `request/headers` request property type/format changed from ``/`` to `object`/``
  - the `request/timeout` request property type/format changed from `object`/`` to `integer`/``
  - the `retry/config/attempts/items/` request property type/format changed from `number`/`` to `integer`/``
  - …26 more
- **2024-08-26** `7d89e4682519` — 1 warning
  - deleted the `path` request parameter `ws_id`

[Full history](https://skmtc.dev/webhookx-io/apis/webhookx-admin-api/changes/workspaces/:ws_id/endpoints/:id/put.md)

---

[API](https://skmtc.dev/webhookx-io/apis/webhookx-admin-api.md) · [All operations](https://skmtc.dev/webhookx-io/apis/webhookx-admin-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/webhookx-io/webhookx-admin-api/revisions/0afb563ce365/schema)
