# Svix

Svix is an enterprise-ready webhooks service that enables developers to send webhooks reliably and securely.

- **Category:** developer tools
- **Auth:** API_KEY
- **Composio Managed App Available?** N/A
- **Tools:** 37
- **Triggers:** 0
- **Slug:** `SVIX`
- **Version:** 20260316_00

## Tools

### Create Application

**Slug:** `SVIX_APP_CREATE`

Tool to create a new Svix application. Use when you need to register an application with specific settings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `uid` | string | No | Optional unique identifier for the application. |
| `name` | string | Yes | The name of the application to create. |
| `metadata` | object | No | Optional metadata key-value pairs (string values) for the application. |
| `rateLimit` | integer | No | Optional rate limit (messages per second) for this application. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Svix Application

**Slug:** `SVIX_APP_DELETE`

Permanently delete a Svix application by its ID or UID. Use this to remove an application and all its associated endpoints, messages, and webhooks. This action is destructive and cannot be undone.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `app_id` | string | Yes | The application's ID (e.g., 'app_123abc456def') or custom UID to delete. This permanently removes the application and all associated data. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Application

**Slug:** `SVIX_APP_GET`

Tool to retrieve details of a specific Svix application by its ID. Use when you need application metadata after authenticating with Svix.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `app_id` | string | Yes | The application's ID (e.g., 'app_xxx') or its UID if one was set during creation. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Applications

**Slug:** `SVIX_APP_LIST`

Tool to list all applications. Use when you need to retrieve or paginate through your Svix applications.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Number of items to return. Must be between 1 and 250. Defaults to server default (50). |
| `order` | string ("asc" | "desc") | No | Sorting order for the applications list. |
| `iterator` | string | No | Cursor for pagination. Use the iterator from a previous response to fetch the next set of results. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Svix Application

**Slug:** `SVIX_APP_UPDATE`

Tool to update an existing Svix application by ID. Use when you need to modify properties like name, rate limit, UID, or metadata. Call after confirming the correct app_id.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `uid` | string | No | The new user-defined ID for the application. |
| `name` | string | No | The new name for the application. |
| `app_id` | string | Yes | The application's unique ID or UID. |
| `metadata` | object | No | Key-value metadata pairs (string values) to associate with the application. |
| `rateLimit` | integer | No | The new rate limit for the application (messages per second). Must be at least 1 if set. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Attempt Details

**Slug:** `SVIX_ATTEMPT_GET`

Tool to retrieve details of a specific message attempt. Use after confirming app_id, msg_id, and attempt_id.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `app_id` | string | Yes | The Svix application ID (prefixed with 'app_') or custom UID. |
| `msg_id` | string | Yes | The message ID (prefixed with 'msg_') to look up the attempt for. |
| `attempt_id` | string | Yes | The delivery attempt ID (prefixed with 'atmpt_') to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Message Attempts

**Slug:** `SVIX_ATTEMPT_LIST`

Tool to list all delivery attempts for a specific message. Use after confirming message ID to debug attempts.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `after` | string | No | Only return attempts after this ISO 8601 datetime |
| `limit` | integer | No | Maximum number of attempts to return per page (1-250). Defaults to 50 if not specified. |
| `app_id` | string | Yes | The Svix application ID (e.g., app_xxxx) containing the message |
| `before` | string | No | Only return attempts before this ISO 8601 datetime |
| `msg_id` | string | Yes | The message ID (e.g., msg_xxxx) to list delivery attempts for |
| `status` | integer | No | Filter by attempt status: 0=pending, 1=success, 2=fail, 3=sending, 4=exhausted |
| `iterator` | string | No | Pagination cursor from a previous response's 'iterator' field to fetch the next page |
| `endpoint_id` | string | No | Filter attempts to only those for a specific endpoint ID |
| `event_types` | array | No | Filter by event type names of the original message |
| `status_code_class` | integer | No | Filter by HTTP status code class: 0 (none), 100 (1xx), 200 (2xx), 300 (3xx), 400 (4xx), 500 (5xx) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Endpoint

**Slug:** `SVIX_ENDPOINT_CREATE`

Tool to create a new Svix webhook endpoint. Use after obtaining the app ID to register your webhook receiver URL.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `uid` | string | No | Optional unique identifier for the endpoint. Must be unique within the application. |
| `url` | string | Yes | The webhook endpoint URL that will receive POST requests with event payloads Must use HTTPS and be publicly accessible; localhost and private network URLs will fail delivery. |
| `app_id` | string | Yes | The application's ID or UID. Use SVIX_APP_CREATE to create an application first. |
| `secret` | string | No | Signing secret for webhook signature verification. Auto-generated if omitted. Must start with 'whsec_' prefix if provided. |
| `version` | integer | No | Endpoint version number. Defaults to 1 if not specified. |
| `channels` | array | No | List of message channels to filter. Only messages sent to these channels will be delivered. Omit to receive messages from all channels. |
| `disabled` | boolean | No | Set to true to create the endpoint in a disabled state (won't receive webhooks) |
| `rate_limit` | integer | No | Maximum number of webhook deliveries per second. Leave empty for no limit. |
| `description` | string | No | Human-readable description to identify the endpoint's purpose |
| `filter_types` | array | No | List of event type names to filter. Only these event types will be sent to this endpoint. Omit to receive all event types. Event type names must exactly match; mismatches silently prevent delivery. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Endpoint

**Slug:** `SVIX_ENDPOINT_DELETE`

Tool to delete an endpoint. Use when you need to remove a specific endpoint after confirming its application and endpoint IDs.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `app_id` | string | Yes | The unique identifier of the application. |
| `endpoint_id` | string | Yes | The unique identifier of the endpoint to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Endpoint

**Slug:** `SVIX_ENDPOINT_GET`

Tool to retrieve details of a specific endpoint. Use after confirming app_id and endpoint_id.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `app_id` | string | Yes | The unique identifier of the Svix application. |
| `endpoint_id` | string | Yes | The unique identifier of the webhook endpoint. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Endpoints

**Slug:** `SVIX_ENDPOINT_LIST`

Tool to list all endpoints for a specific application. Use after obtaining the application ID to retrieve its endpoints.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of endpoints to return. Must be between 1 and 100. Defaults to server default (50). |
| `order` | string ("asc" | "desc") | No | Sorting order for the endpoints list. |
| `app_id` | string | Yes | The unique identifier of the application. |
| `iterator` | string | No | Cursor for pagination. Use the iterator from a previous response to fetch the next set of results. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Patch Endpoint

**Slug:** `SVIX_ENDPOINT_PATCH`

Tool to partially update an endpoint’s configuration. Use when you need to adjust endpoint settings without full replacement.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `uid` | string | No | A custom unique identifier for the endpoint. |
| `url` | string | No | The URL to which the endpoint will send events. |
| `app_id` | string | Yes | The unique identifier of the Svix application. |
| `secret` | string | No | Optional new signing secret; only include to rotate the secret. |
| `channels` | array | No | List of delivery channels for this endpoint. |
| `disabled` | boolean | No | Whether the endpoint should be disabled. |
| `rateLimit` | integer | No | Rate limit for the endpoint (deliveries per second). Must be non-negative. |
| `description` | string | No | A new description for the endpoint. |
| `endpoint_id` | string | Yes | The unique identifier of the endpoint to patch. |
| `filterTypes` | array | No | List of event types to forward to this endpoint. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Patch Endpoint Headers

**Slug:** `SVIX_ENDPOINT_PATCH_HEADERS`

Tool to partially update headers for a specific endpoint. Use when you need to add, modify, or remove custom headers after endpoint creation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `app_id` | string | Yes | The unique identifier of the application. |
| `headers` | object | Yes | A mapping of header names to values. Use string value to set or modify a header, or null to remove a header. |
| `endpoint_id` | string | Yes | The unique identifier of the endpoint to update headers for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Recover Failed Webhooks

**Slug:** `SVIX_ENDPOINT_RECOVER_FAILED_WEBHOOKS`

Tool to recover messages that failed to send to an endpoint. Use when you need to retry webhook delivery for failed events after identifying delivery failures.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `since` | string | Yes | Recover failed webhooks since this timestamp (ISO 8601). Must be within the last 14 days. |
| `until` | string | No | Recover failed webhooks up to this timestamp (ISO 8601). If not specified, recovers up to the current time. |
| `app_id` | string | Yes | The unique identifier of the Svix application. |
| `endpoint_id` | string | Yes | The unique identifier of the Svix endpoint whose failed webhooks should be recovered. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Replay Missing Webhooks

**Slug:** `SVIX_ENDPOINT_REPLAY_MISSING`

Tool to replay missing webhooks for a specific endpoint. Use when some webhooks failed or were lost and need to be resent.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `since` | string | Yes | Replay missing webhooks since this timestamp (ISO 8601). Must be within the last 14 days. |
| `until` | string | No | Replay missing webhooks up to this timestamp (ISO 8601). Defaults to now if not specified. |
| `app_id` | string | Yes | The unique identifier of the Svix application. |
| `endpoint_id` | string | Yes | The unique identifier of the webhook endpoint. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Endpoint Secret

**Slug:** `SVIX_ENDPOINT_SECRET_GET`

Tool to retrieve the secret for a specific endpoint. Use after confirming app_id and endpoint_id.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `app_id` | string | Yes | The unique identifier of the Svix application. |
| `endpoint_id` | string | Yes | The unique identifier of the webhook endpoint. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Rotate Endpoint Secret

**Slug:** `SVIX_ENDPOINT_SECRET_ROTATE`

Tool to rotate the signing secret key for an endpoint. Use when you need to invalidate the current secret and generate or supply a new one. Call after confirming app_id and endpoint_id.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `key` | string | No | Optional new signing secret to use for rotation. Must be in the format 'whsec_' followed by a valid base64-encoded string (e.g., 'whsec_MfKQ9r8GKYqrTwjUPD8ILPZIo2LaLaSw'). If omitted, a secret will be auto-generated by the server. |
| `app_id` | string | Yes | The unique identifier of the Svix application. |
| `endpoint_id` | string | Yes | The unique identifier of the webhook endpoint. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Send Example Message

**Slug:** `SVIX_ENDPOINT_SEND_EXAMPLE_MESSAGE`

Tool to send a test message for a specific event type to an endpoint. Use after setting up an endpoint to verify its configuration. Note: the endpoint's filter_types must include the event_type being tested; otherwise real events will not be delivered even if the example message sends successfully.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `app_id` | string | Yes | The unique identifier of the Svix application. |
| `event_type` | string | Yes | The event type to send as an example. The event type must have a schema with examples defined. |
| `endpoint_id` | string | Yes | The unique identifier of the Svix webhook endpoint. |
| `payload_overrides` | object | No | Optional overrides for the default example payload. Use this to customize the example message content. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Endpoint Stats

**Slug:** `SVIX_ENDPOINT_STATS_GET`

Tool to retrieve basic statistics for a specific endpoint. Use after confirming app_id and endpoint_id.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `app_id` | string | Yes | The unique identifier of the Svix application. |
| `endpoint_id` | string | Yes | The unique identifier of the webhook endpoint. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Endpoint Transformation

**Slug:** `SVIX_ENDPOINT_TRANSFORMATION_GET`

Tool to retrieve transformation settings for a specific endpoint. Use after confirming app_id and endpoint_id.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `app_id` | string | Yes | The unique identifier of the Svix application. |
| `endpoint_id` | string | Yes | The unique identifier of the webhook endpoint. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set Endpoint Transformation

**Slug:** `SVIX_ENDPOINT_TRANSFORMATION_SET`

Tool to set or update transformation settings for an endpoint. Use when you need to configure or toggle an endpoint's transformation code after creation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `code` | string | No | JavaScript code defining how to transform the webhook's HTTP method, URL, or body payload. |
| `app_id` | string | Yes | The unique identifier of the Svix application. |
| `enabled` | boolean | No | Set to true to enable the transformation; false to disable it. |
| `endpoint_id` | string | Yes | The unique identifier of the webhook endpoint. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Endpoint

**Slug:** `SVIX_ENDPOINT_UPDATE`

Tool to update an existing endpoint or create it if it doesn't exist (upsert). Use when you need to modify endpoint settings like URL, rate limit, channels, or metadata. If the endpoint doesn't exist, a new one will be created with the specified endpoint_id as its uid.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `uid` | string | No | Custom unique identifier for the endpoint. Must be unique within the application. |
| `url` | string | Yes | The webhook URL to which events will be sent via POST request. |
| `app_id` | string | Yes | The app's ID or UID. Use the application identifier where the endpoint belongs. |
| `version` | integer | No | The endpoint version number. Defaults to 1 if not specified. |
| `channels` | array | No | List of message channels this endpoint subscribes to. |
| `disabled` | boolean | No | Set to true to disable the endpoint, false to enable it. |
| `metadata` | object | No | Key-value metadata to store with the endpoint. Values must be strings. |
| `rateLimit` | integer | No | Maximum messages per second to send to this endpoint. Use 0 or null for no limit. |
| `description` | string | No | Human-readable description for the endpoint. |
| `endpoint_id` | string | Yes | The endpoint's ID or UID. Use the endpoint identifier to update. |
| `filterTypes` | array | No | List of event types to deliver to this endpoint. If empty/null, all events are delivered. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Endpoint Headers

**Slug:** `SVIX_ENDPOINT_UPDATE_HEADERS`

Tool to completely replace headers for a specific endpoint. Use when you need to set a full new header mapping.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `app_id` | string | Yes | The unique identifier of the application. |
| `headers` | object | Yes | Mapping of header names to their values. All existing headers will be replaced. |
| `endpoint_id` | string | Yes | The unique identifier of the endpoint to update headers for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Event Type

**Slug:** `SVIX_EVENT_TYPE_CREATE`

Create a new event type in Svix or unarchive an existing one. Event types are identifiers (like 'order.created', 'user.signup') that categorize the webhooks your application sends. Use period-delimited naming to group related events. Both 'name' and 'description' are required. Returns HTTP 409 if the event type already exists.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Unique identifier for the event type. Use period-delimited naming like 'group.event' (e.g., 'order.created', 'user.signup', 'invoice.paid'). This helps group related events in the UI. |
| `schemas` | object | No | Optional JSON Schema definitions for validating event payloads. Must be a mapping where the key is '1' and the value is a JSONSchema (Draft 7) object. Example: {"1": {"type": "object", "properties": {...}}}. Note: Svix does not enforce schema validation when sending messages. |
| `archived` | boolean | No | Set to false to unarchive a previously archived event type. Defaults to false for new event types. |
| `description` | string | Yes | Human-readable description explaining when this event type fires and what it represents. |
| `featureFlag` | string | No | Optional feature flag identifier to conditionally enable/disable this event type |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Event Type

**Slug:** `SVIX_EVENT_TYPE_DELETE`

Tool to delete an event type. Use when you need to archive or permanently expunge a specific event type after confirming its name.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expunge` | boolean | No | If true, permanently delete the event type instead of archiving it. |
| `event_type_name` | string | Yes | The unique name (ID) of the event type to delete or archive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Event Type

**Slug:** `SVIX_EVENT_TYPE_GET`

Retrieve details of a specific event type by its name. Use this to inspect an existing event type's configuration, schema, and status. Event types define the categories of events that can be sent through Svix webhooks.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `event_type_name` | string | Yes | The name of the event type to retrieve (e.g., 'user.created', 'order.completed'). Event type names typically use dot-notation to represent hierarchical categories. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Event Types

**Slug:** `SVIX_EVENT_TYPE_LIST`

Tool to retrieve a list of all event types. Use when you need to inspect available event types, optionally including their JSON schemas. Use after authenticating the client.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of event types to return (1-100). Defaults to server default. |
| `iterator` | string | No | Cursor for pagination; use the iterator from a previous response to fetch next results. |
| `with_content` | boolean | No | If true, include the JSON schema for each event type. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Event Type

**Slug:** `SVIX_EVENT_TYPE_UPDATE`

Update an existing event type's description, schema, feature flags, or archive status. Use this to modify event type configuration. The event type must already exist - use List Event Types or Get Event Type to find valid event type names.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `schemas` | object | No | Optional mapping of schema versions to JSON Schema definitions. Keys are version strings (e.g., '1'), values are JSON Schema objects. |
| `archived` | boolean | No | Whether the event type should be marked as archived. Set to true to archive, false to unarchive. |
| `description` | string | Yes | Human-readable description of the event type. Required for update. |
| `feature_flag` | string | No | Optional single feature-flag key to associate with the event type. |
| `event_type_name` | string | Yes | The name of the event type to update (e.g., 'user.created', 'order.completed'). Event type names typically use dot-notation to represent hierarchical categories. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Integration

**Slug:** `SVIX_INTEGRATION_CREATE`

Tool to create a new integration for a specific application. Use after confirming the application ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | A descriptive name for the integration (e.g., 'Zapier Integration', 'Make.com Webhook'). |
| `app_id` | string | Yes | The application's ID or UID. Use app_list to find existing application IDs. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Integration

**Slug:** `SVIX_INTEGRATION_DELETE`

Permanently delete an integration from a Svix application. This is a destructive operation that cannot be undone. Use when removing webhook integrations that are no longer needed. Requires both the application ID and the integration ID. Use 'List Integrations' first if you need to find the integration_id.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `app_id` | string | Yes | The application ID or UID. Can be the Svix-assigned ID (e.g., 'app_1srOrx2ZWZBpBUvZwXKQmoEYga2') or a custom UID you assigned when creating the app. |
| `integration_id` | string | Yes | The unique identifier of the integration to delete. Starts with 'integ_' prefix. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Integration

**Slug:** `SVIX_INTEGRATION_GET`

Tool to retrieve details of a specific integration. Use after confirming app_id and integration_id.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `app_id` | string | Yes | The application's ID or UID. Can be the internal app_id (e.g., 'app_12345') or the user-defined UID. |
| `integration_id` | string | Yes | The unique identifier of the integration to retrieve (e.g., 'integ_12345'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Integrations

**Slug:** `SVIX_INTEGRATION_LIST`

Tool to list all integrations for a specific application. Use after confirming the application ID, supporting pagination via limit and iterator. Use when you need to enumerate integrations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of integrations to return (1-100). Defaults to server default. |
| `app_id` | string | Yes | The application's ID or UID. Use an app_id (e.g., 'app_12345') or a custom UID if one was set. |
| `iterator` | string | No | Cursor for pagination; use the iterator from a previous response to fetch next results. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Integration

**Slug:** `SVIX_INTEGRATION_UPDATE`

Tool to update an existing integration by ID. Use when you need to modify an integration's name or feature flags.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The new name for the integration. |
| `app_id` | string | Yes | The Application's ID or UID. |
| `integ_id` | string | Yes | The Integration's ID (format: integ_XXXX...). |
| `feature_flags` | array | No | The set of feature flags the integration will have access to. Each flag must match pattern ^[a-zA-Z0-9\-_.]+$. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Message

**Slug:** `SVIX_MESSAGE_CREATE`

Tool to create a new message for a specific application in Svix. Use after confirming app ID and event details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `app_id` | string | Yes | The unique identifier of the Svix application. |
| `payload` | object | Yes | The JSON payload to include in the message event. |
| `channels` | array | No | List of channels to deliver this message to (default: ['*']). |
| `eventType` | string | Yes | The event type to dispatch (e.g., 'order.created'). |
| `idempotencyKey` | string | No | Idempotency key for ensuring unique message creation. |
| `payloadRetentionPeriod` | integer | No | Number of days to retain the payload (1-90 days). Defaults to 90 days if not specified. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Message

**Slug:** `SVIX_MESSAGE_GET`

Tool to retrieve details of a specific message by its ID. Use when you need message metadata and status after dispatch.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `app_id` | string | Yes | The unique identifier of the Svix application (e.g., 'app_1srOrx2ZWZBpBUvZwXKQmoEYga2'). |
| `msg_id` | string | Yes | The unique identifier of the Svix message (e.g., 'msg_1srOrx2ZWZBpBUvZwXKQmoEYga2'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Messages

**Slug:** `SVIX_MESSAGE_LIST`

Tool to list all messages for a specific application. Use when you need to fetch or paginate messages after obtaining the application ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `tag` | string | No | Filter messages by tag. |
| `after` | string | No | Fetch messages created after this timestamp (ISO 8601 format). |
| `limit` | integer | No | Maximum number of messages to return (1-100). Defaults to server default. |
| `app_id` | string | Yes | The application's unique ID |
| `before` | string | No | Fetch messages created before this timestamp (ISO 8601 format). |
| `status` | integer | No | Filter messages by status code. |
| `channel` | string | No | Filter messages by channel. |
| `iterator` | string | No | Cursor for pagination. Use the iterator from a previous response to fetch the next page. |
| `event_types` | array | No | Filter messages by one or more event types. |
| `with_content` | boolean | No | Include message payloads in the response. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Source

**Slug:** `SVIX_SOURCE_CREATE`

Creates a new Svix Ingest source for receiving webhooks from external providers. A source generates an ingest URL that you can share with a webhook provider (e.g., GitHub, Stripe) as the destination for their webhooks. Svix will verify signatures based on the source type and forward the webhooks to your configured endpoints. Use 'genericWebhook' type to skip signature verification for providers not natively supported.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `uid` | string | No | Optional unique identifier for the source. If not provided, one will be generated automatically. |
| `name` | string | Yes | The name of the source. Used to identify this source in the dashboard. |
| `config` | object | No | Provider-specific configuration. For most providers, this should contain a 'secret' key with the webhook signing secret. For 'genericWebhook', this can be empty or null. |
| `source_type` | string | Yes | The webhook provider type for signature verification. Use 'genericWebhook' to skip signature verification (useful for unsupported providers). Supported providers include: github, stripe, svix, shopify, slack, hubspot, clerk, zoom, docusign, beehiiv, brex, segment, resend, telnyx, airwallex, and many more. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
