# Svix

> Svix through One

- Skill: `withoneai/svix` (Agent Skill)
- Install (CLI): `npx skillmds@latest add withoneai/svix`
- Raw SKILL.md: https://api.skillmd.com/api/skills/withoneai/svix/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: withoneai (https://skillmd.com/u/withoneai)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/withoneai/svix

---


# Svix through One

Svix is a webhook delivery service that enables developers to send, receive, and manage webhooks with guaranteed delivery, retries, security (HMAC signing), and performance metrics, simplifying reliable event-driven integrations.

One exposes Svix through four MCP tools. The table below carries real action ids from One's knowledge base, so for a common operation you can skip search and go straight to reading the action's parameters.

## How to run an action

1. Find the action in the table below, or call `search_one_platform_actions` with platform `svix` if it is not listed.
2. Call `get_one_action_knowledge` with the action id. Do this every time, including for actions in this table. The table gives you the id, not the parameters.
3. Call `execute_one_action` with parameters copied from that knowledge.

Never guess a parameter name, a body field, or an enum value. The knowledge has the real schema, and a guessed field is either a 400 or a silent write of the wrong thing.

## Before you start

Call `list_one_integrations` once and confirm Svix is connected. If it is missing, the user has not connected it: say so and point them at https://app.withone.ai rather than reaching for raw HTTP.

Each connection carries an `access` field. If it reports `{"policy": "methods", "methods": ["GET"]}` the agent is read-only here, so plan a read-only answer instead of attempting a write that will be refused.

## Before a write

Creates, updates, deletes and sends land on a real Svix account and cannot be recalled. State the action and the specific target in one line before the first write in a task, and let the user stop you. Reads need no confirmation.

## Actions

### Stream

| Action | Method | Path | Action id |
|---|---|---|---|
| Get a Stream | GET | `/api/v1/stream/{{stream_id}}` | `conn_mod_def::GJkDiA8_0Ug::v2aLs0D2Rl6zC6vmSpI3cQ` |
| Create Stream | POST | `/api/v1/stream` | `conn_mod_def::GJkDh6jUu1g::8eNp6NTcS8-uxP4_BQs_yg` |
| Delete a Stream | DELETE | `/api/v1/stream/{{stream_id}}` | `conn_mod_def::GJkDiTP22Hg::IYqfyLeHRWutfc0tX2nFow` |
| Partially Update a Stream | PATCH | `/api/v1/stream/{{stream_id}}` | `conn_mod_def::GJkDiN90KAA::g8uYzNw0Tl-fPd6KV5TgEg` |
| Update a Stream | PUT | `/api/v1/stream/{{stream_id}}` | `conn_mod_def::GJkDiIOJ-XA::v2U6JVjUR4mThV5ttILQGA` |

### StreamEventType

| Action | Method | Path | Action id |
|---|---|---|---|
| Get a Stream Event Type | GET | `/api/v1/stream/event-type/{{name}}` | `conn_mod_def::GJkDjQv-POA::ydDrMOkgS2apgHKsCQsGMw` |
| Create Stream Event Type | POST | `/api/v1/stream/event-type` | `conn_mod_def::GJkDjI9cQzA::rY9zCSTKRE6VviUANvNFDw` |
| Delete a Stream Event Type | DELETE | `/api/v1/stream/event-type/{{name}}` | `conn_mod_def::GJkDjjqTJRA::4ysGM7yJRvC1_8CVU0RnOw` |
| Patch a Stream Event Type | PATCH | `/api/v1/stream/event-type/{{name}}` | `conn_mod_def::GJkDjd16gNA::4yO07RUPSm-lUMPay5NZMg` |
| Update a Stream Event Type | PUT | `/api/v1/stream/event-type/{{name}}` | `conn_mod_def::GJkDjXX0ZcA::zcy4_-qORd2CpXXTfxeqAA` |

### Application

| Action | Method | Path | Action id |
|---|---|---|---|
| Get an Application | GET | `/api/v1/app/{{app_id}}` | `conn_mod_def::GJkDVap0i8g::VtXPSFCLTHiagCPXlZwB6w` |
| Create Application | POST | `/api/v1/app` | `conn_mod_def::GJkDVUMntOA::RI84h95KRjGMcpLOjwYToA` |
| Delete an Application | DELETE | `/api/v1/app/{{app_id}}` | `conn_mod_def::GJkDV6rgFLg::GYmmaq4_RQ2w-ynX5eH6zA` |
| Patch an Application | PATCH | `/api/v1/app/{{app_id}}` | `conn_mod_def::GJkDV0lEyqA::nibm0_1OQwGe-0YU90ddBw` |
| Update an Application | PUT | `/api/v1/app/{{app_id}}` | `conn_mod_def::GJkDVtC17Bg::kwGIXy-2TPiAdg0zWV_YJg` |

### IngestSource

| Action | Method | Path | Action id |
|---|---|---|---|
| Get an Ingest Source | GET | `/ingest/api/v1/source/{{source_id}}` | `conn_mod_def::GJkDcr4Bphg::rJjp2GbATiCCrQXrWxU98w` |
| Create an Ingest Source | POST | `/ingest/api/v1/source` | `conn_mod_def::GJkDcl3CbXg::vaxZNjOSTqWQQC9NaV9ysQ` |
| Delete an Ingest Source | DELETE | `/ingest/api/v1/source/{{source_id}}` | `conn_mod_def::GJkDc4pC_Gg::tkldXCw6R9qIIDES4F365Q` |
| Rotate an Ingest Source’s Token | POST | `/ingest/api/v1/source/{{source_id}}/token/rotate` | `conn_mod_def::GJkDdIAiWGg::ThxY2icSQX-hpIZq-XrnEA` |
| Update an Ingest Source | PUT | `/ingest/api/v1/source/{{source_id}}` | `conn_mod_def::GJkDcyeiokg::qQSxxJREQjGfbpy4CCnngw` |

### Connector

| Action | Method | Path | Action id |
|---|---|---|---|
| Get a Connector | GET | `/api/v1/connector/{{connector_id}}` | `conn_mod_def::GJkDW-CPUYg::FLOS-35GTRCJ6fxWdIRV8Q` |
| Create Connector | POST | `/api/v1/connector` | `conn_mod_def::GJkDW1zlO7g::zehqOKz8THCoS9BN8Lxd5A` |
| Delete a Connector | DELETE | `/api/v1/connector/{{connector_id}}` | `conn_mod_def::GJkDXTwVSpg::RMw7_JGgTB2WoaPga6oVTw` |
| Patch a Connector | PATCH | `/api/v1/connector/{{connector_id}}` | `conn_mod_def::GJkDXL4gilg::9wi1Y19nSSO0G0GM2Czdxg` |
| Update a Connector | PUT | `/api/v1/connector/{{connector_id}}` | `conn_mod_def::GJkDXFLuBTA::p9xC6jAJSSaJikYpvfQZ0w` |

### EventType

| Action | Method | Path | Action id |
|---|---|---|---|
| Get an Event Type | GET | `/api/v1/event-type/{{event_type_name}}` | `conn_mod_def::GJkDaomJ0MA::KCuwM5lxQgaYvHNZPcl3xw` |
| Archive (Delete) an Event Type | DELETE | `/api/v1/event-type/{{event_type_name}}` | `conn_mod_def::GJkDa8xUlMA::QkmaterMRICXAnoZiLwGnw` |
| Create Event Type | POST | `/api/v1/event-type` | `conn_mod_def::GJkDaa1e3rA::WP6LyRhFShWkemOqzi91iw` |
| Patch an Event Type | PATCH | `/api/v1/event-type/{{event_type_name}}` | `conn_mod_def::GJkDa1H5HCg::rotHee2TSyGP0hjedCbxmA` |
| Update an Event Type | PUT | `/api/v1/event-type/{{event_type_name}}` | `conn_mod_def::GJkDavLwa6A::5VXhYj4eSEmmpB4qPyYsvw` |

### StreamSink

| Action | Method | Path | Action id |
|---|---|---|---|
| Get a Stream’s Sink | GET | `/api/v1/stream/{{stream_id}}/sink/{{sink_id}}` | `conn_mod_def::GJkDgalLq7A::gpaZAD-IQ1eba72_7CB-XA` |
| Create a Stream Sink | POST | `/api/v1/stream/{{stream_id}}/sink` | `conn_mod_def::GJkDgTb3siA::uLsY9RASQTuURC7mIw_VCw` |
| Delete a Stream Sink | DELETE | `/api/v1/stream/{{stream_id}}/sink/{{sink_id}}` | `conn_mod_def::GJkDgwnJQAA::DGUAjx9ESte_HBT5CmzyQg` |
| Patch a Stream’s Sink | PATCH | `/api/v1/stream/{{stream_id}}/sink/{{sink_id}}` | `conn_mod_def::GJkDgpFLm6A::kkf60GqhQQu_m1Qb8zF5bQ` |
| Update a Stream Sink | PUT | `/api/v1/stream/{{stream_id}}/sink/{{sink_id}}` | `conn_mod_def::GJkDgiztbLA::CMcxUecUQDCQmzaTTfhfJQ` |

### OperationalWebhookEndpoint

| Action | Method | Path | Action id |
|---|---|---|---|
| Get an Operational Webhook Endpoint | GET | `/api/v1/operational-webhook/endpoint/{endpoint_id}` | `conn_mod_def::GJkDj7X6neA::UK1Q4FLfTDaola7WZArR0g` |
| Create an Operational Webhook Endpoint | POST | `/api/v1/operational-webhook/endpoint` | `conn_mod_def::GJkDjzCA4MA::E8i80x9YS-K6wvdH3lPNZA` |
| Delete an Operational Webhook Endpoint | DELETE | `/api/v1/operational-webhook/endpoint/{{endpoint_id}}` | `conn_mod_def::GJkDkJD083g::RrHsL1WcRGOi2d6HAYeLmw` |
| Update an Operational Webhook Endpoint | PUT | `/api/v1/operational-webhook/endpoint/{{endpoint_id}}` | `conn_mod_def::GJkDkBTpnEg::Sw7wPwapT76s50W8JSZJyw` |

### AppIntegration

| Action | Method | Path | Action id |
|---|---|---|---|
| Get an App Integration | GET | `/api/v1/app/{{app_id}}/integration/{{integ_id}}` | `conn_mod_def::GJkDdb-8EFg::dplXgRTQR4-IdWbTfW9prQ` |
| Create an App Integration | POST | `/api/v1/app/{{app_id}}/integration` | `conn_mod_def::GJkDdVk70HA::RyLIlVcGTvOssetxUmb4kg` |
| Delete an App Integration | DELETE | `/api/v1/app/{{app_id}}/integration/{{integ_id}}` | `conn_mod_def::GJkDdq2FhdA::4zr2YRNOQEmaC1PaRUFg0Q` |
| Update an App Integration | PUT | `/api/v1/app/{{app_id}}/integration/{{integ_id}}` | `conn_mod_def::GJkDdkifK4A::8Qid3NCITlinewdWq0kbMA` |

### BackgroundTask

| Action | Method | Path | Action id |
|---|---|---|---|
| Get a Background Task | GET | `/api/v1/background-task/{{task_id}}` | `conn_mod_def::GJkDWnrkBmg::Alz1F0YLTRGvZ1GPzo1HxA` |
| List Background Tasks | GET | `/api/v1/background-task` | `conn_mod_def::GJkDWcACTfA::zszSjZGDQUq4mQItPdcHsg` |
| Aggregate an Organization’s Usage Event Types (Background Task) | PUT | `/api/v1/stats/usage/event-types` | `conn_mod_def::GJkDhthDufg::0QUTSHKCToylMje8uarnhQ` |

### OperationalWebhookEndpointHeaders

| Action | Method | Path | Action id |
|---|---|---|---|
| Get an Operational Webhook Endpoint's Additional Headers | GET | `/api/v1/operational-webhook/endpoint/{{endpoint_id}}/headers` | `conn_mod_def::GJkDkS1u-vA::xLllrXgORIyhOqdYv4GqHg` |
| Update an Operational Webhook Endpoint's Headers | PUT | `/api/v1/operational-webhook/endpoint/{{endpoint_id}}/headers` | `conn_mod_def::GJkDkYe1vmg::yqUbu1FBSHyb4f5tFi6Ozw` |

### OperationalWebhookEndpointSecret

| Action | Method | Path | Action id |
|---|---|---|---|
| Get an Operational Webhook Endpoint Secret | GET | `/api/v1/operational-webhook/endpoint/{{endpoint_id}}/secret` | `conn_mod_def::GJkDkfTrQ2g::WDBsA5H3SECeaGOwB2X1Kw` |
| Rotate an Operational Webhook Endpoint’s Secret | POST | `/api/v1/operational-webhook/endpoint/{{endpoint_id}}/secret/rotate` | `conn_mod_def::GJkDkmj_FWg::SBLj0HpQRKyEybZZX7etgg` |

### EndpointTransformation

| Action | Method | Path | Action id |
|---|---|---|---|
| Get an Endpoint's Transformation | GET | `/api/v1/app/{{app_id}}/endpoint/{{endpoint_id}}/transformation` | `conn_mod_def::GJkDZjxHCkg::_JjTXhQrQMeXrIF7P3BVVQ` |
| Set an App Endpoint’s Transformation (Patch) | PATCH | `/api/v1/app/{{app_id}}/endpoint/{{endpoint_id}}/transformation` | `conn_mod_def::GJkDZq0eIAg::N2WTo9BdQa6v2CqCGnye7g` |

### Environment

| Action | Method | Path | Action id |
|---|---|---|---|
| Export Environment Configuration | POST | `/api/v1/environment/export` | `conn_mod_def::GJkDZxUtCog::HZjtfUlsTa6EqH24cEqEEQ` |
| Import Environment Configuration into the Active Organization | POST | `/api/v1/environment/import` | `conn_mod_def::GJkDZ5L6o1g::sFFbbyTbQcKtd_AsTRVmiA` |

### StreamSinkHeaders

| Action | Method | Path | Action id |
|---|---|---|---|
| Get a Stream Sink’s Headers | GET | `/api/v1/stream/{{stream_id}}/sink/{{sink_id}}/headers` | `conn_mod_def::GJkDg2-QLoA::BWGS-Rn4TzO_o2jh0bIfxA` |
| Patch a Stream Sink's Headers | PATCH | `/api/v1/stream/{{stream_id}}/sink/{{sink_id}}/headers` | `conn_mod_def::GJkDg9hK0fA::ei3L4yZaS0-8I4Hr64FBxQ` |

### StreamSinkSecret

| Action | Method | Path | Action id |
|---|---|---|---|
| Get a Stream Sink's Secret | GET | `/api/v1/stream/{{stream_id}}/sink/{{sink_id}}/secret` | `conn_mod_def::GJkDhEeBHHg::dX5PCY43TcaEEyWqvA0HCQ` |
| Rotate a Stream Sink Secret | POST | `/api/v1/stream/{{stream_id}}/sink/{{sink_id}}/secret/rotate` | `conn_mod_def::GJkDhMd-uJA::kNb-UXilTYCc2W1wc4GTng` |

### Auth

| Action | Method | Path | Action id |
|---|---|---|---|
| Logout (App Token) | POST | `/api/v1/auth/logout` | `conn_mod_def::GJkDWRgiWjA::luSRUKghS9mWW2E44whHrw` |
| Stream Logout (Stream Token) | POST | `/api/v1/auth/stream-logout` | `conn_mod_def::GJkDibUXhEg::VQeIvATZQu-GG8lnhLWNmw` |

### ApplicationEndpoint

| Action | Method | Path | Action id |
|---|---|---|---|
| Create an Application Endpoint | POST | `/api/v1/app/{{app_id}}/endpoint` | `conn_mod_def::GJkDXiyrMjg::iGk2svF1RfuDklx9T59ICA` |
| Update an Application Endpoint | PUT | `/api/v1/app/{{app_id}}/endpoint/{{endpoint_id}}` | `conn_mod_def::GJkDX6pXILA::zspMSJmdQ0WDgueZ7mDJfA` |

### Endpoint

| Action | Method | Path | Action id |
|---|---|---|---|
| Get an App Endpoint | GET | `/api/v1/app/{{app_id}}/endpoint/{{endpoint_id}}` | `conn_mod_def::GJkDXwcCF_g::MMal3m_aR4uUi-Wom8Y4Ng` |
| Partially Update an App Endpoint | PATCH | `/api/v1/app/{{app_id}}/endpoint/{{endpoint_id}}` | `conn_mod_def::GJkDYCK9trg::Mm3jVhdNTmyhiUqNWbw2Ww` |

### AppEndpointHeaders

| Action | Method | Path | Action id |
|---|---|---|---|
| Get an App Endpoint’s Headers | GET | `/api/v1/app/{{app_id}}/endpoint/{{endpoint_id}}/headers` | `conn_mod_def::GJkDYY29Q9g::q0w05YXwRIOa8WK1RbP6UA` |
| Update an App Endpoint’s Additional Headers | PUT | `/api/v1/app/{{app_id}}/endpoint/{{endpoint_id}}/headers` | `conn_mod_def::GJkDYiOfI1g::_a5J1gjKTYOswHKvZJTPSA` |

### EndpointSecret

| Action | Method | Path | Action id |
|---|---|---|---|
| Get an App Endpoint's Secret | GET | `/api/v1/app/{{app_id}}/endpoint/{{endpoint_id}}/secret` | `conn_mod_def::GJkDZFQISXg::UiPRO4RwSxOF0ix5Pnlc3Q` |
| Rotate an App Endpoint's Secret | POST | `/api/v1/app/{{app_id}}/endpoint/{{endpoint_id}}/secret/rotate` | `conn_mod_def::GJkDZNFNWSg::qQCQixOlTHGWwoNGqU3kAQ` |

### EventTypes

| Action | Method | Path | Action id |
|---|---|---|---|
| List Event Types | GET | `/api/v1/event-type` | `conn_mod_def::GJkDaUYu6lA::wyiQf1C3RGSKHSCHSI6Ocg` |
| Import Event Types From an OpenAPI Spec | POST | `/api/v1/event-type/import/openapi` | `conn_mod_def::GJkDaiZOfsA::VDt3aGnRRCWeZXC8jdqR1w` |

### IngestEndpoint

| Action | Method | Path | Action id |
|---|---|---|---|
| Get an Ingest Endpoint | GET | `/ingest/api/v1/source/{{source_id}}/endpoint/{{endpoint_id}}` | `conn_mod_def::GJkDbbqcIlA::obXf9R5dQNaJeZax_g-DLA` |
| Create an Ingest Endpoint for a Source | POST | `/ingest/api/v1/source/{{source_id}}/endpoint` | `conn_mod_def::GJkDbUZoAsg::WBMHnxmLS7iXA5bbMlaMSw` |

### IntegrationKey

| Action | Method | Path | Action id |
|---|---|---|---|
| Get an App Integration's Key | GET | `/api/v1/app/{{app_id}}/integration/{{integ_id}}/key` | `conn_mod_def::GJkDdx8PWWA::FJga228ISeOdQeziWAP7Gw` |
| Rotate an App Integration's Key | POST | `/api/v1/app/{{app_id}}/integration/{{integ_id}}/key/rotate` | `conn_mod_def::GJkDd5MXwYA::63vB0xxBTxeIPx4qJv8geg` |

### Messages

| Action | Method | Path | Action id |
|---|---|---|---|
| List an App’s Messages | GET | `/api/v1/app/{{app_id}}/msg` | `conn_mod_def::GJkDeB4eSUg::1X-HVYS1RBG3slA4Lea4XQ` |
| Create a Message for an Application | POST | `/api/v1/app/{{app_id}}/msg` | `conn_mod_def::GJkDeKoVuPA::a-yvRtmuRWGIKB09RhvUAw` |

### Attempts

| Action | Method | Path | Action id |
|---|---|---|---|
| List Attempts By Endpoint (for an App) | GET | `/api/v1/app/{{app_id}}/attempt/endpoint/{{endpoint_id}}` | `conn_mod_def::GJkDfNXG9hg::PEs6mqmEQoKCeJsjN25jWA` |
| List Attempts by Message (for an App) | GET | `/api/v1/app/{{app_id}}/attempt/msg/{{msg_id}}` | `conn_mod_def::GJkDfWdM-XA::u1PWkj_ETSugM7k5Nu8G3A` |

### StreamPollerToken

| Action | Method | Path | Action id |
|---|---|---|---|
| Get a Stream Poller Token | GET | `/api/v1/auth/stream/{{stream_id}}/sink/{{sink_id}}/poller/token` | `conn_mod_def::GJkDixaAMDA::p7vfttohQLCrz8Lj9KvN_w` |

### StreamSinkPollerToken

| Action | Method | Path | Action id |
|---|---|---|---|
| Rotate a Stream Sink’s Poller Token | POST | `/api/v1/auth/stream/{{stream_id}}/sink/{{sink_id}}/poller/token/rotate` | `conn_mod_def::GJkDi4uOBhg::CKwkR5ZmQFauwAeICRc0CQ` |

### StreamEventTypes

| Action | Method | Path | Action id |
|---|---|---|---|
| List Stream Event Types | GET | `/api/v1/stream/event-type` | `conn_mod_def::GJkDjAskHjA::UI4i3nE6TIGzF31m9bQCxQ` |

### StreamPortalAccess

| Action | Method | Path | Action id |
|---|---|---|---|
| Get Stream Portal Access | POST | `/api/v1/auth/stream-portal-access/{{stream_id}}` | `conn_mod_def::GJkDiiyyYfg::oE9cBve9Q7e5HLmFz2ALaw` |

### EndpointStats

| Action | Method | Path | Action id |
|---|---|---|---|
| Get an App Endpoint’s Stats | GET | `/api/v1/app/{{app_id}}/endpoint/{{endpoint_id}}/stats` | `conn_mod_def::GJkDZdDtYZg::WG7AkR6SQc-ig4zMppdU9w` |

### IngestEndpointSecret

| Action | Method | Path | Action id |
|---|---|---|---|
| Get an Ingest Endpoint's Secret | GET | `/ingest/api/v1/source/{{source_id}}/endpoint/{{endpoint_id}}/secret` | `conn_mod_def::GJkDb-VZXQg::nhtfSZq0TzSUe0rMQ6pqHg` |

### IngestEndpointTransformation

| Action | Method | Path | Action id |
|---|---|---|---|
| Get an Ingest Endpoint's Transformation | GET | `/ingest/api/v1/source/{{source_id}}/endpoint/{{endpoint_id}}/transformation` | `conn_mod_def::GJkDcQ8jbug::hU7sqR90TwuubYK-uwV0Tg` |

### Streams

| Action | Method | Path | Action id |
|---|---|---|---|
| List Streams | GET | `/api/v1/stream` | `conn_mod_def::GJkDh0gM7eA::4yqCl2Z7QMCpI1_v_AxDuQ` |

### StreamTokens

| Action | Method | Path | Action id |
|---|---|---|---|
| Expire All Tokens for a Stream | POST | `/api/v1/auth/stream/{{stream_id}}/expire-all` | `conn_mod_def::GJkDirIYxfg::7-KwzvezR_mdhYxOTp5SHw` |

### OperationalWebhookEndpoints

| Action | Method | Path | Action id |
|---|---|---|---|
| List Operational Webhook Endpoints | GET | `/api/v1/operational-webhook/endpoint` | `conn_mod_def::GJkDjp0E6Wg::pbw7hjhmTue_XjqVe1bGvg` |

### Applications

| Action | Method | Path | Action id |
|---|---|---|---|
| List Applications | GET | `/api/v1/app` | `conn_mod_def::GJkDVNOEaBg::rMdUsyYNSuSGigX5GIsoJg` |

### ConsumerAppPortalAccess

| Action | Method | Path | Action id |
|---|---|---|---|
| Get Consumer App Portal Access for an Application | POST | `/api/v1/auth/app-portal-access/{{app_id}}` | `conn_mod_def::GJkDWEbA_Pg::rZKYEUl-TUW0VNoMXJVcQg` |

This lists 90 of 127 actions. For anything not here, call `search_one_platform_actions` with platform `svix`. The full catalog is at https://www.withone.ai/knowledge/svix.

## When a call fails

The error comes from Svix, not from One. A 400 or 422 means your parameters do not match the schema, so re-read the knowledge and fix the field. A 401 or 403 means the connection needs re-authorizing, which no retry will fix. A 404 means the id is not on this account. A 429 means slow down. Never retry a write more than once: the first attempt may have landed.

Full catalog: https://www.withone.ai/knowledge/svix

Integration knowledge by One (withone.ai), licensed under [One-Knowledge-1.0](https://www.withone.ai/licenses/knowledge). Attribution must be preserved in derivative works.

