# Svix API API

> Svix API API on Apizie: 55 endpoints (Get Consumer App Portal Access, Logout, Expire All, List Applications, …) returned as clean JSON through one API key. Send your own provider key in the x-upstream-key header. Call it over REST at https://apizie.tech/v1/communication:svix/{endpoint} or from Claude, ChatGPT and Cursor through the Apizie MCP server. Free plan: 1,000 requests a month.

- Project key: `communication:svix`
- Category: Communication
- Status: byok
- Source: https://svix.com
- Page: https://apizie.tech/api/communication/svix
- OpenAPI: https://apizie.tech/api/communication/svix/openapi.json

Welcome to the Svix API documentation! Useful links: [Homepage](https://www.svix.com) | [Support email](mailto:support+docs@svix.com) | [Blog](https://www.svix.com/blog/) | [Slack…

## Endpoints

### Get Consumer App Portal Access
`POST https://apizie.tech/v1/communication:svix/authentication-generate-magic-links` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| idempotency-key | string | no | The request's idempotency key |
| body | object | yes | JSON request body |

### Logout
`POST https://apizie.tech/v1/communication:svix/authentication-logout-token` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| idempotency-key | string | no | The request's idempotency key |

### Expire All
`POST https://apizie.tech/v1/communication:svix/authentication-expire-all-tokens` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| idempotency-key | string | no | The request's idempotency key |
| body | object | yes | JSON request body |

### List Applications
`GET https://apizie.tech/v1/communication:svix/application-list-all` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| limit | integer | no | Limit the number of returned items |
| iterator | string | no | The iterator returned from a prior invocation |
| order | string | no | The sorting order of the returned items |

### Create Application
`POST https://apizie.tech/v1/communication:svix/application-create-new-application` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| get_if_exists | boolean | no | Get an existing application, or create a new one if doesn't exist. It's two separate functions in the libs. |
| idempotency-key | string | no | The request's idempotency key |
| body | object | yes | JSON request body |

### Get Application
`GET https://apizie.tech/v1/communication:svix/application-get-by-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |

### Update Application
`POST https://apizie.tech/v1/communication:svix/application-update-application-by-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| body | object | yes | JSON request body |

### Patch Application
`POST https://apizie.tech/v1/communication:svix/application-partially-update` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| body | object | yes | JSON request body |

### Delete Application
`POST https://apizie.tech/v1/communication:svix/application-remove-app` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |

### List Endpoints
`GET https://apizie.tech/v1/communication:svix/endpoint-list-endpoints` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| limit | integer | no | Limit the number of returned items |
| iterator | string | no | The iterator returned from a prior invocation |
| order | string | no | The sorting order of the returned items |

### Create Endpoint
`POST https://apizie.tech/v1/communication:svix/endpoint-create-or-update` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| idempotency-key | string | no | The request's idempotency key |
| body | object | yes | JSON request body |

### Get Endpoint
`GET https://apizie.tech/v1/communication:svix/endpoint-get-details` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| endpoint_id | string | yes | The ep's ID or UID |

### Update Endpoint
`POST https://apizie.tech/v1/communication:svix/endpoint-update-endpoint-by-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| endpoint_id | string | yes | The ep's ID or UID |
| body | object | yes | JSON request body |

### Patch Endpoint
`POST https://apizie.tech/v1/communication:svix/endpoint-partially-update` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| endpoint_id | string | yes | The ep's ID or UID |
| body | object | yes | JSON request body |

### Delete Endpoint
`POST https://apizie.tech/v1/communication:svix/endpoint-remove` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| endpoint_id | string | yes | The ep's ID or UID |

### Get Endpoint Secret
`GET https://apizie.tech/v1/communication:svix/endpoint-get-signing-secret` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| endpoint_id | string | yes | The ep's ID or UID |

### Rotate Endpoint Secret
`POST https://apizie.tech/v1/communication:svix/endpoint-rotate-secret` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| endpoint_id | string | yes | The ep's ID or UID |
| idempotency-key | string | no | The request's idempotency key |
| body | object | yes | JSON request body |

### Get Endpoint Headers
`GET https://apizie.tech/v1/communication:svix/endpoint-get-headers` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| endpoint_id | string | yes | The ep's ID or UID |

### Update Endpoint Headers
`POST https://apizie.tech/v1/communication:svix/endpoint-set-webhook-headers` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| endpoint_id | string | yes | The ep's ID or UID |
| body | object | yes | JSON request body |

### Patch Endpoint Headers
`POST https://apizie.tech/v1/communication:svix/endpoint-partially-set-headers` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| endpoint_id | string | yes | The ep's ID or UID |
| body | object | yes | JSON request body |

### Replay Missing Webhooks
`POST https://apizie.tech/v1/communication:svix/endpoint-replay-missing-webhooks` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| endpoint_id | string | yes | The ep's ID or UID |
| idempotency-key | string | no | The request's idempotency key |
| body | object | yes | JSON request body |

### Get Endpoint Transformation
`GET https://apizie.tech/v1/communication:svix/endpoint-get-transformation-code` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| endpoint_id | string | yes | The ep's ID or UID |

### Set Endpoint Transformation
`POST https://apizie.tech/v1/communication:svix/endpoint-set-transformation-code` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| endpoint_id | string | yes | The ep's ID or UID |
| body | object | yes | JSON request body |

### Endpoint Stats
`GET https://apizie.tech/v1/communication:svix/endpoint-get-statistics` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| endpoint_id | string | yes | The ep's ID or UID |
| since | string | no | Filter the range to data starting from this date |
| until | string | no | Filter the range to data ending by this date |

### Recover Failed Webhooks
`POST https://apizie.tech/v1/communication:svix/endpoint-resend-failed-messages` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| endpoint_id | string | yes | The ep's ID or UID |
| idempotency-key | string | no | The request's idempotency key |
| body | object | yes | JSON request body |

### Send Event Type Example Message
`POST https://apizie.tech/v1/communication:svix/endpoint-send-example-message-type` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| endpoint_id | string | yes | The ep's ID or UID |
| idempotency-key | string | no | The request's idempotency key |
| body | object | yes | JSON request body |

### List Event Types
`GET https://apizie.tech/v1/communication:svix/event-type-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| limit | integer | no | Limit the number of returned items |
| iterator | string | no | The iterator returned from a prior invocation |
| order | string | no | The sorting order of the returned items |
| include_archived | boolean | no | When `true` archived (deleted but not expunged) items are included in the response |
| with_content | boolean | no | When `true` the full item (including the schema) is included in the response |

### Create Event Type
`POST https://apizie.tech/v1/communication:svix/event-type-create-or-update` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| idempotency-key | string | no | The request's idempotency key |
| body | object | yes | JSON request body |

### Event Type Import From Openapi
`POST https://apizie.tech/v1/communication:svix/event-type-import-from-openapi` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| idempotency-key | string | no | The request's idempotency key |
| body | object | yes | JSON request body |

### Get Event Type
`GET https://apizie.tech/v1/communication:svix/event-type-get-event-type` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| event_type_name | string | yes | The event type's name |

### Update Event Type
`POST https://apizie.tech/v1/communication:svix/event-type-update-event-type-name` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| event_type_name | string | yes | The event type's name |
| body | object | yes | JSON request body |

### Patch Event Type
`POST https://apizie.tech/v1/communication:svix/event-type-partially-update-event-type` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| event_type_name | string | yes | The event type's name |
| body | object | yes | JSON request body |

### Delete Event Type
`POST https://apizie.tech/v1/communication:svix/event-type-archive` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| event_type_name | string | yes | The event type's name |
| expunge | boolean | no | By default event types are archived when "deleted". Passing this to `true` deletes them entirely. |

### List Messages
`GET https://apizie.tech/v1/communication:svix/message-list-all-messages` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| limit | integer | no | Limit the number of returned items |
| iterator | string | no | The iterator returned from a prior invocation |
| channel | string | no | Filter response based on the channel |
| before | string | no | Only include items created before a certain date |
| after | string | no | Only include items created after a certain date |
| with_content | boolean | no | When `true` message payloads are included in the response |
| tag | string | no | Filter messages matching the provided tag |
| event_types | array | no | Filter response based on the event type |

### Create Message
`POST https://apizie.tech/v1/communication:svix/message-create-new-msg` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| with_content | boolean | no | When `true` message payloads are included in the response |
| idempotency-key | string | no | The request's idempotency key |
| body | object | yes | JSON request body |

### Get Message
`GET https://apizie.tech/v1/communication:svix/message-get-by-id-or-event-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| msg_id | string | yes | The msg's ID or UID |
| with_content | boolean | no | When `true` message payloads are included in the response |

### Delete message payload
`POST https://apizie.tech/v1/communication:svix/message-delete-payload` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| msg_id | string | yes | The msg's ID or UID |

### List Attempts By Endpoint
`GET https://apizie.tech/v1/communication:svix/message-attempt-list-by-endpoint` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| limit | integer | no | Limit the number of returned items |
| iterator | string | no | The iterator returned from a prior invocation |
| status | integer | no | Filter response based on the delivery status |
| status_code_class | integer | no | Filter response based on the HTTP status code |
| channel | string | no | Filter response based on the channel |
| tag | string | no | Filter response based on the tag |
| before | string | no | Only include items created before a certain date |
| after | string | no | Only include items created after a certain date |
| with_content | boolean | no | When `true` attempt content is included in the response |
| with_msg | boolean | no | When `true`, the message information is included in the response |
| event_types | array | no | Filter response based on the event type |
| app_id | string | yes | The app's ID or UID |
| endpoint_id | string | yes | The ep's ID or UID |

### List Attempts By Msg
`GET https://apizie.tech/v1/communication:svix/message-attempt-list-by-msg` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| limit | integer | no | Limit the number of returned items |
| iterator | string | no | The iterator returned from a prior invocation |
| status | integer | no | Filter response based on the delivery status |
| status_code_class | integer | no | Filter response based on the HTTP status code |
| channel | string | no | Filter response based on the channel |
| tag | string | no | Filter response based on the tag |
| endpoint_id | string | no | Filter the attempts based on the attempted endpoint |
| before | string | no | Only include items created before a certain date |
| after | string | no | Only include items created after a certain date |
| with_content | boolean | no | When `true` attempt content is included in the response |
| app_id | string | yes | The app's ID or UID |
| msg_id | string | yes | The msg's ID or UID |
| event_types | array | no | Filter response based on the event type |

### List Attempted Messages
`GET https://apizie.tech/v1/communication:svix/message-attempt-list-attempted-messages` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| limit | integer | no | Limit the number of returned items |
| iterator | string | no | The iterator returned from a prior invocation |
| channel | string | no | Filter response based on the channel |
| tag | string | no | Filter response based on the message tags |
| status | integer | no | Filter response based on the delivery status |
| before | string | no | Only include items created before a certain date |
| after | string | no | Only include items created after a certain date |
| with_content | boolean | no | When `true` message payloads are included in the response |
| app_id | string | yes | The app's ID or UID |
| endpoint_id | string | yes | The ep's ID or UID |
| event_types | array | no | Filter response based on the event type |

### List Attempted Destinations
`GET https://apizie.tech/v1/communication:svix/message-attempt-list-attempted-destinations` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| limit | integer | no | Limit the number of returned items |
| iterator | string | no | The iterator returned from a prior invocation |
| app_id | string | yes | The app's ID or UID |
| msg_id | string | yes | The msg's ID or UID |

### Get Attempt
`GET https://apizie.tech/v1/communication:svix/message-attempt-get-by-attempt` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| msg_id | string | yes | The msg's ID or UID |
| attempt_id | string | yes | The attempt's ID |

### Delete attempt response body
`POST https://apizie.tech/v1/communication:svix/message-attempt-delete-response-body` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| msg_id | string | yes | The msg's ID or UID |
| attempt_id | string | yes | The attempt's ID |

### Resend Webhook
`POST https://apizie.tech/v1/communication:svix/message-attempt-resend-webhook` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| msg_id | string | yes | The msg's ID or UID |
| endpoint_id | string | yes | The ep's ID or UID |
| idempotency-key | string | no | The request's idempotency key |

### Aggregate App Stats
`POST https://apizie.tech/v1/communication:svix/statistics-calculate-message-destinations-for-apps` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| idempotency-key | string | no | The request's idempotency key |
| body | object | yes | JSON request body |

### Aggregate Event Types
`POST https://apizie.tech/v1/communication:svix/statistics-calculate-event-types-for-apps` (byok)

### List Integrations
`GET https://apizie.tech/v1/communication:svix/integration-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| limit | integer | no | Limit the number of returned items |
| iterator | string | no | The iterator returned from a prior invocation |
| order | string | no | The sorting order of the returned items |

### Create Integration
`POST https://apizie.tech/v1/communication:svix/integration-create-new-integration` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| idempotency-key | string | no | The request's idempotency key |
| body | object | yes | JSON request body |

### Get Integration
`GET https://apizie.tech/v1/communication:svix/integration-get-by-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| integ_id | string | yes | The integ's ID |

### Update Integration
`POST https://apizie.tech/v1/communication:svix/integration-update-integration-by-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| integ_id | string | yes | The integ's ID |
| body | object | yes | JSON request body |

### Delete Integration
`POST https://apizie.tech/v1/communication:svix/integration-delete-by-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| integ_id | string | yes | The integ's ID |

### Rotate Integration Key
`POST https://apizie.tech/v1/communication:svix/integration-rotate-key` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| app_id | string | yes | The app's ID or UID |
| integ_id | string | yes | The integ's ID |
| idempotency-key | string | no | The request's idempotency key |

### List Background Tasks
`GET https://apizie.tech/v1/communication:svix/background-tasks-get-past-tasks` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| status | string | no | Filter the response based on the status |
| task | string | no | Filter the response based on the type |
| limit | integer | no | Limit the number of returned items |
| iterator | string | no | The iterator returned from a prior invocation |
| order | string | no | The sorting order of the returned items |

### Get Background Task
`GET https://apizie.tech/v1/communication:svix/background-tasks-get-by-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| task_id | string | yes |  |

### Health
`GET https://apizie.tech/v1/communication:svix/health-check-status` (byok)

## Example
```
curl "https://apizie.tech/v1/communication:svix/authentication-generate-magic-links" \
  -H "x-api-key: $APIZIE_KEY" \
  -H "x-upstream-key: $PROVIDER_KEY"
```

## FAQ

### How do I call the Svix API API?
Create a free Apizie key, then send POST https://apizie.tech/v1/communication:svix/authentication-generate-magic-links with the header x-api-key. Every endpoint returns { project, data, timestamp }.

### Is the Svix API API free on Apizie?
Yes. The Free plan includes 1,000 requests a month at 100 requests a minute, no credit card. Svix API itself also needs your own key from api.eu.svix.com.

### Can AI agents use the Svix API API?
Yes. Add the Apizie MCP server (https://apizie.tech/mcp) to Claude, ChatGPT, Cursor or VS Code, then ask in plain language. The agent calls run_scraper with project key communication:svix.

### What is the status of the Svix API API?
Needs your own provider key (bring your own key)
