---
title: "Create Sink"
method: POST
path: "/api/v1/stream/{stream_id}/sink"
tags: ["Sink"]
---

# Create Sink

`POST /api/v1/stream/{stream_id}/sink`

Creates a new sink.

## Path parameters

- `stream_id` string, required — The Stream's ID or UID.

## Headers

- `idempotency-key` string

## Request body

- union
  - object
    - `batchSize` integer — How many events will be batched in a request to the Sink.
    - `channels` string[]
    - `eventTypes` string[] — A list of event types that filter which events are dispatched to the Sink. An empty list (or null) will not filter out any events.
    - `maxWaitSecs` integer — How long to wait before a batch of events is sent, if the `batchSize` is not reached. For example, with a `batchSize` of 100 and `maxWaitSecs` of 10, we will send a request after 10 seconds or 100 events, whichever comes first. Note that we will never send an empty batch of events to the Sink.
    - `metadata` object
    - `status` 'enabled' | 'disabled'
    - `uid` string, nullable — An optional unique identifier for the sink.
    - `type` 'poller', required
  - object
    - `batchSize` integer — How many events will be batched in a request to the Sink.
    - `channels` string[]
    - `eventTypes` string[] — A list of event types that filter which events are dispatched to the Sink. An empty list (or null) will not filter out any events.
    - `maxWaitSecs` integer — How long to wait before a batch of events is sent, if the `batchSize` is not reached. For example, with a `batchSize` of 100 and `maxWaitSecs` of 10, we will send a request after 10 seconds or 100 events, whichever comes first. Note that we will never send an empty batch of events to the Sink.
    - `metadata` object
    - `status` 'enabled' | 'disabled'
    - `uid` string, nullable — An optional unique identifier for the sink.
    - `config` AzureBlobStorageConfigIn, required
      - `accessKey` string, nullable — Access key. Currently a required field, but marked as optional because we may add different authentication in the future.
      - `account` string, required
      - `container` string, required
    - `type` 'azureBlobStorage', required
  - object
    - `batchSize` integer — How many events will be batched in a request to the Sink.
    - `channels` string[]
    - `eventTypes` string[] — A list of event types that filter which events are dispatched to the Sink. An empty list (or null) will not filter out any events.
    - `maxWaitSecs` integer — How long to wait before a batch of events is sent, if the `batchSize` is not reached. For example, with a `batchSize` of 100 and `maxWaitSecs` of 10, we will send a request after 10 seconds or 100 events, whichever comes first. Note that we will never send an empty batch of events to the Sink.
    - `metadata` object
    - `status` 'enabled' | 'disabled'
    - `uid` string, nullable — An optional unique identifier for the sink.
    - `config` OtelTracingConfigIn, required
      - `headers` object
      - `url` string, uri, required
    - `type` 'otelTracing', required
  - object
    - `batchSize` integer — How many events will be batched in a request to the Sink.
    - `channels` string[]
    - `eventTypes` string[] — A list of event types that filter which events are dispatched to the Sink. An empty list (or null) will not filter out any events.
    - `maxWaitSecs` integer — How long to wait before a batch of events is sent, if the `batchSize` is not reached. For example, with a `batchSize` of 100 and `maxWaitSecs` of 10, we will send a request after 10 seconds or 100 events, whichever comes first. Note that we will never send an empty batch of events to the Sink.
    - `metadata` object
    - `status` 'enabled' | 'disabled'
    - `uid` string, nullable — An optional unique identifier for the sink.
    - `config` SinkHttpConfigIn, required
      - `headers` object
      - `key` string, nullable
      - `url` string, uri, required
    - `type` 'http', required
  - object
    - `batchSize` integer — How many events will be batched in a request to the Sink.
    - `channels` string[]
    - `eventTypes` string[] — A list of event types that filter which events are dispatched to the Sink. An empty list (or null) will not filter out any events.
    - `maxWaitSecs` integer — How long to wait before a batch of events is sent, if the `batchSize` is not reached. For example, with a `batchSize` of 100 and `maxWaitSecs` of 10, we will send a request after 10 seconds or 100 events, whichever comes first. Note that we will never send an empty batch of events to the Sink.
    - `metadata` object
    - `status` 'enabled' | 'disabled'
    - `uid` string, nullable — An optional unique identifier for the sink.
    - `config` S3ConfigIn, required
      - `accessKeyId` string, nullable — Access key ID. Currently a required field, but marked as optional because we may add different authentication in the future.
      - `bucket` string, required
      - `endpointUrl` string, uri, nullable
      - `region` string, nullable — The region of the EventBridge bus. Currently a required field, but marked as optional because we may infer it from other fields in the future.
      - `secretAccessKey` string, nullable — Secret access key. Currently a required field, but marked as optional because we may add different authentication in the future.
    - `type` 'amazonS3', required
  - object
    - `batchSize` integer — How many events will be batched in a request to the Sink.
    - `channels` string[]
    - `eventTypes` string[] — A list of event types that filter which events are dispatched to the Sink. An empty list (or null) will not filter out any events.
    - `maxWaitSecs` integer — How long to wait before a batch of events is sent, if the `batchSize` is not reached. For example, with a `batchSize` of 100 and `maxWaitSecs` of 10, we will send a request after 10 seconds or 100 events, whichever comes first. Note that we will never send an empty batch of events to the Sink.
    - `metadata` object
    - `status` 'enabled' | 'disabled'
    - `uid` string, nullable — An optional unique identifier for the sink.
    - `config` GoogleCloudStorageConfigIn, required — Configuration for a Google Cloud Storage sink. Write stream events into the named bucket using the supplied Google Cloud credentials.
      - `bucket` string, required
      - `credentials` string, required — Google Cloud Credentials JSON Object as a string.
    - `type` 'googleCloudStorage', required
  - object
    - `batchSize` integer — How many events will be batched in a request to the Sink.
    - `channels` string[]
    - `eventTypes` string[] — A list of event types that filter which events are dispatched to the Sink. An empty list (or null) will not filter out any events.
    - `maxWaitSecs` integer — How long to wait before a batch of events is sent, if the `batchSize` is not reached. For example, with a `batchSize` of 100 and `maxWaitSecs` of 10, we will send a request after 10 seconds or 100 events, whichever comes first. Note that we will never send an empty batch of events to the Sink.
    - `metadata` object
    - `status` 'enabled' | 'disabled'
    - `uid` string, nullable — An optional unique identifier for the sink.
    - `config` GoogleCloudPubSubConfigIn, required
      - `credentials` string, required — Google Cloud Credentials JSON Object as a string.
      - `projectId` string, required
      - `topicId` string, required
    - `type` 'googleCloudPubSub', required
  - object
    - `batchSize` integer — How many events will be batched in a request to the Sink.
    - `channels` string[]
    - `eventTypes` string[] — A list of event types that filter which events are dispatched to the Sink. An empty list (or null) will not filter out any events.
    - `maxWaitSecs` integer — How long to wait before a batch of events is sent, if the `batchSize` is not reached. For example, with a `batchSize` of 100 and `maxWaitSecs` of 10, we will send a request after 10 seconds or 100 events, whichever comes first. Note that we will never send an empty batch of events to the Sink.
    - `metadata` object
    - `status` 'enabled' | 'disabled'
    - `uid` string, nullable — An optional unique identifier for the sink.
    - `config` SqsConfigIn, required — Configuration for an SQS sink.
      - `accessKeyId` string, nullable — Access key ID. Currently a required field, but marked as optional because we may add different authentication in the future.
      - `endpointUrl` string, uri, nullable
      - `queueUrl` string, uri, required
      - `region` string, nullable — The region of the SQS queue. Currently a required field, but marked as optional because we may infer it from other fields in the future.
      - `secretAccessKey` string, nullable — Secret access key. Currently a required field, but marked as optional because we may add different authentication in the future.
    - `type` 'sqs', required
  - object
    - `batchSize` integer — How many events will be batched in a request to the Sink.
    - `channels` string[]
    - `eventTypes` string[] — A list of event types that filter which events are dispatched to the Sink. An empty list (or null) will not filter out any events.
    - `maxWaitSecs` integer — How long to wait before a batch of events is sent, if the `batchSize` is not reached. For example, with a `batchSize` of 100 and `maxWaitSecs` of 10, we will send a request after 10 seconds or 100 events, whichever comes first. Note that we will never send an empty batch of events to the Sink.
    - `metadata` object
    - `status` 'enabled' | 'disabled'
    - `uid` string, nullable — An optional unique identifier for the sink.
    - `config` SnsConfigIn, required — Configuration for a SNS sink.
      - `accessKeyId` string, nullable — Access key ID. Currently a required field, but marked as optional because we may add different authentication in the future.
      - `endpointUrl` string, uri, nullable
      - `region` string, nullable — The region of the SNS instance. Currently a required field, but marked as optional because we may infer it from other fields in the future.
      - `secretAccessKey` string, nullable — Secret access key. Currently a required field, but marked as optional because we may add different authentication in the future.
      - `topicArn` string, required
    - `type` 'sns', required
  - object
    - `batchSize` integer — How many events will be batched in a request to the Sink.
    - `channels` string[]
    - `eventTypes` string[] — A list of event types that filter which events are dispatched to the Sink. An empty list (or null) will not filter out any events.
    - `maxWaitSecs` integer — How long to wait before a batch of events is sent, if the `batchSize` is not reached. For example, with a `batchSize` of 100 and `maxWaitSecs` of 10, we will send a request after 10 seconds or 100 events, whichever comes first. Note that we will never send an empty batch of events to the Sink.
    - `metadata` object
    - `status` 'enabled' | 'disabled'
    - `uid` string, nullable — An optional unique identifier for the sink.
    - `config` BigQueryConfigIn, required — Configuration for a Google Cloud BigQuery sink.
      - `credentials` string, required — Google Cloud Credentials JSON Object as a string.
      - `datasetId` string, required
      - `projectId` string, required
      - `tableId` string, required
    - `type` 'bigQuery', required
  - object
    - `batchSize` integer — How many events will be batched in a request to the Sink.
    - `channels` string[]
    - `eventTypes` string[] — A list of event types that filter which events are dispatched to the Sink. An empty list (or null) will not filter out any events.
    - `maxWaitSecs` integer — How long to wait before a batch of events is sent, if the `batchSize` is not reached. For example, with a `batchSize` of 100 and `maxWaitSecs` of 10, we will send a request after 10 seconds or 100 events, whichever comes first. Note that we will never send an empty batch of events to the Sink.
    - `metadata` object
    - `status` 'enabled' | 'disabled'
    - `uid` string, nullable — An optional unique identifier for the sink.
    - `config` ClickhouseConfigIn, required
      - `database` string — The Clickhouse database to connect to.
      - `password` string, nullable — Password to access Clickhouse. Currently a required field, but marked as optional because we may add different authentication in the future.
      - `tableName` string, required — The Clickhouse table to write to.
      - `url` string, uri, required — The HTTP URL of the ClickHouse server (e.g. `https://my_clickhouse:8443`).
      - `username` string, nullable — Username to access Clickhouse. Currently a required field, but marked as optional because we may add different authentication in the future.
    - `type` 'clickhouse', required
  - object
    - `batchSize` integer — How many events will be batched in a request to the Sink.
    - `channels` string[]
    - `eventTypes` string[] — A list of event types that filter which events are dispatched to the Sink. An empty list (or null) will not filter out any events.
    - `maxWaitSecs` integer — How long to wait before a batch of events is sent, if the `batchSize` is not reached. For example, with a `batchSize` of 100 and `maxWaitSecs` of 10, we will send a request after 10 seconds or 100 events, whichever comes first. Note that we will never send an empty batch of events to the Sink.
    - `metadata` object
    - `status` 'enabled' | 'disabled'
    - `uid` string, nullable — An optional unique identifier for the sink.
    - `config` EventBridgeConfigIn, required
      - `accessKeyId` string, nullable — Access key ID. Currently a required field, but marked as optional because we may add different authentication in the future.
      - `detailType` string — Free-form string, with a maximum of 128 characters
      - `eventBusName` string, required — The name or ARN of the event bus to receive the event
      - `region` string, nullable — The region of the EventBridge bus. Currently a required field, but marked as optional because we may infer it from other fields in the future.
      - `secretAccessKey` string, nullable — Secret access key. Currently a required field, but marked as optional because we may add different authentication in the future.
    - `type` 'eventBridge', required
  - object
    - `batchSize` integer — How many events will be batched in a request to the Sink.
    - `channels` string[]
    - `eventTypes` string[] — A list of event types that filter which events are dispatched to the Sink. An empty list (or null) will not filter out any events.
    - `maxWaitSecs` integer — How long to wait before a batch of events is sent, if the `batchSize` is not reached. For example, with a `batchSize` of 100 and `maxWaitSecs` of 10, we will send a request after 10 seconds or 100 events, whichever comes first. Note that we will never send an empty batch of events to the Sink.
    - `metadata` object
    - `status` 'enabled' | 'disabled'
    - `uid` string, nullable — An optional unique identifier for the sink.
    - `config` SnowflakeConfigIn, required — Configuration parameters for defining a Snowflake sink.
      - `accountIdentifier` string, required — Snowflake account identifier, which includes both the organization and account IDs separated by a hyphen.
      - `dbName` string — Database name. Only required if not using transformations.
      - `privateKey` string, nullable — PEM-encoded private key used for signing token-based requests to the Snowflake API. Beginning/end delimiters are not required. Currently a required field, but marked as optional because we may add different authentication in the future.
      - `schemaName` string — Schema name. Only required if not using transformations.
      - `tableName` string — Table name. Only required if not using transformations.
      - `userId` string, required — The Snowflake user id.
    - `type` 'snowflake', required
  - object
    - `batchSize` integer — How many events will be batched in a request to the Sink.
    - `channels` string[]
    - `eventTypes` string[] — A list of event types that filter which events are dispatched to the Sink. An empty list (or null) will not filter out any events.
    - `maxWaitSecs` integer — How long to wait before a batch of events is sent, if the `batchSize` is not reached. For example, with a `batchSize` of 100 and `maxWaitSecs` of 10, we will send a request after 10 seconds or 100 events, whichever comes first. Note that we will never send an empty batch of events to the Sink.
    - `metadata` object
    - `status` 'enabled' | 'disabled'
    - `uid` string, nullable — An optional unique identifier for the sink.
    - `config` RabbitMqConfigIn, required — Configuration for a RabbitMq sink.
      - `routingKey` string, required
      - `uri` string, required
    - `type` 'rabbitMq', required
  - object
    - `batchSize` integer — How many events will be batched in a request to the Sink.
    - `channels` string[]
    - `eventTypes` string[] — A list of event types that filter which events are dispatched to the Sink. An empty list (or null) will not filter out any events.
    - `maxWaitSecs` integer — How long to wait before a batch of events is sent, if the `batchSize` is not reached. For example, with a `batchSize` of 100 and `maxWaitSecs` of 10, we will send a request after 10 seconds or 100 events, whichever comes first. Note that we will never send an empty batch of events to the Sink.
    - `metadata` object
    - `status` 'enabled' | 'disabled'
    - `uid` string, nullable — An optional unique identifier for the sink.
    - `config` RedshiftConfigIn, required — Configuration parameters for defining a Redshift sink. For provisioned clusters, set `cluster_identifier` and `db_user`. For Redshift Serverless, set `workgroup_name`.
      - `accessKeyId` string, nullable — Access key ID. Currently a required field, but marked as optional because we may add different authentication in the future.
      - `clusterIdentifier` string, nullable — Required for provisioned clusters.
      - `dbName` string — Database name. Only required if not using transformations.
      - `dbUser` string, nullable — Required for provisioned clusters.
      - `region` string, nullable — The region of the Redshift DB. Currently a required field, but marked as optional because we may infer it from other fields in the future.
      - `schemaName` string, nullable — Schema name. Only used if not using transformations.
      - `secretAccessKey` string, nullable — Secret access key. Currently a required field, but marked as optional because we may add different authentication in the future.
      - `tableName` string — Table name. Only required if not using transformations.
      - `workgroupName` string, nullable — Required for Redshift Serverless.
    - `type` 'redshift', required

## Response `201`

- union
  - object
    - `batchSize` integer, required
    - `channels` string[]
    - `createdAt` string, date-time, required
    - `currentIterator` string, required
    - `eventTypes` string[]
    - `failureReason` string, nullable
    - `id` string, required — The sink's ID.
    - `maxWaitSecs` integer, required
    - `metadata` object, required
    - `nextRetryAt` string, date-time, nullable
    - `status` 'enabled' | 'paused' | 'disabled' | 'retrying', required
    - `uid` string, nullable — The sink's UID.
    - `updatedAt` string, date-time, required
    - `type` 'poller', required
  - object
    - `batchSize` integer, required
    - `channels` string[]
    - `createdAt` string, date-time, required
    - `currentIterator` string, required
    - `eventTypes` string[]
    - `failureReason` string, nullable
    - `id` string, required — The sink's ID.
    - `maxWaitSecs` integer, required
    - `metadata` object, required
    - `nextRetryAt` string, date-time, nullable
    - `status` 'enabled' | 'paused' | 'disabled' | 'retrying', required
    - `uid` string, nullable — The sink's UID.
    - `updatedAt` string, date-time, required
    - `config` AzureBlobStorageConfigOut, required
      - `account` string, required
      - `container` string, required
    - `type` 'azureBlobStorage', required
  - object
    - `batchSize` integer, required
    - `channels` string[]
    - `createdAt` string, date-time, required
    - `currentIterator` string, required
    - `eventTypes` string[]
    - `failureReason` string, nullable
    - `id` string, required — The sink's ID.
    - `maxWaitSecs` integer, required
    - `metadata` object, required
    - `nextRetryAt` string, date-time, nullable
    - `status` 'enabled' | 'paused' | 'disabled' | 'retrying', required
    - `uid` string, nullable — The sink's UID.
    - `updatedAt` string, date-time, required
    - `config` OtelTracingConfigOut, required
      - `headers` EndpointHeadersOut, required — The value of the headers is returned in the `headers` field. Sensitive headers that have been redacted are returned in the sensitive field.
        - `headers` object, required
        - `sensitive` string[], required
      - `url` string, uri, required
    - `type` 'otelTracing', required
  - object
    - `batchSize` integer, required
    - `channels` string[]
    - `createdAt` string, date-time, required
    - `currentIterator` string, required
    - `eventTypes` string[]
    - `failureReason` string, nullable
    - `id` string, required — The sink's ID.
    - `maxWaitSecs` integer, required
    - `metadata` object, required
    - `nextRetryAt` string, date-time, nullable
    - `status` 'enabled' | 'paused' | 'disabled' | 'retrying', required
    - `uid` string, nullable — The sink's UID.
    - `updatedAt` string, date-time, required
    - `config` SinkHttpConfigOut, required
      - `headers` EndpointHeadersOut, required — The value of the headers is returned in the `headers` field. Sensitive headers that have been redacted are returned in the sensitive field.
        - `headers` object, required
        - `sensitive` string[], required
      - `url` string, uri, required
    - `type` 'http', required
  - object
    - `batchSize` integer, required
    - `channels` string[]
    - `createdAt` string, date-time, required
    - `currentIterator` string, required
    - `eventTypes` string[]
    - `failureReason` string, nullable
    - `id` string, required — The sink's ID.
    - `maxWaitSecs` integer, required
    - `metadata` object, required
    - `nextRetryAt` string, date-time, nullable
    - `status` 'enabled' | 'paused' | 'disabled' | 'retrying', required
    - `uid` string, nullable — The sink's UID.
    - `updatedAt` string, date-time, required
    - `config` S3ConfigOut, required
      - `accessKeyId` string, required
      - `bucket` string, required
      - `endpointUrl` string, uri, nullable
      - `region` string, required
    - `type` 'amazonS3', required
  - object
    - `batchSize` integer, required
    - `channels` string[]
    - `createdAt` string, date-time, required
    - `currentIterator` string, required
    - `eventTypes` string[]
    - `failureReason` string, nullable
    - `id` string, required — The sink's ID.
    - `maxWaitSecs` integer, required
    - `metadata` object, required
    - `nextRetryAt` string, date-time, nullable
    - `status` 'enabled' | 'paused' | 'disabled' | 'retrying', required
    - `uid` string, nullable — The sink's UID.
    - `updatedAt` string, date-time, required
    - `config` SnowflakeConfigOut, required
      - `accountIdentifier` string, required
      - `dbName` string — Database name. Only required if not using transformations.
      - `schemaName` string — Schema name. Only required if not using transformations.
      - `tableName` string — Table name. Only required if not using transformations.
      - `userId` string, required
    - `type` 'snowflake', required
  - object
    - `batchSize` integer, required
    - `channels` string[]
    - `createdAt` string, date-time, required
    - `currentIterator` string, required
    - `eventTypes` string[]
    - `failureReason` string, nullable
    - `id` string, required — The sink's ID.
    - `maxWaitSecs` integer, required
    - `metadata` object, required
    - `nextRetryAt` string, date-time, nullable
    - `status` 'enabled' | 'paused' | 'disabled' | 'retrying', required
    - `uid` string, nullable — The sink's UID.
    - `updatedAt` string, date-time, required
    - `config` GoogleCloudStorageConfigOut, required
      - `bucket` string, required
    - `type` 'googleCloudStorage', required
  - object
    - `batchSize` integer, required
    - `channels` string[]
    - `createdAt` string, date-time, required
    - `currentIterator` string, required
    - `eventTypes` string[]
    - `failureReason` string, nullable
    - `id` string, required — The sink's ID.
    - `maxWaitSecs` integer, required
    - `metadata` object, required
    - `nextRetryAt` string, date-time, nullable
    - `status` 'enabled' | 'paused' | 'disabled' | 'retrying', required
    - `uid` string, nullable — The sink's UID.
    - `updatedAt` string, date-time, required
    - `config` GoogleCloudPubSubConfigOut, required
      - `projectId` string, required
      - `topicId` string, required
    - `type` 'googleCloudPubSub', required
  - object
    - `batchSize` integer, required
    - `channels` string[]
    - `createdAt` string, date-time, required
    - `currentIterator` string, required
    - `eventTypes` string[]
    - `failureReason` string, nullable
    - `id` string, required — The sink's ID.
    - `maxWaitSecs` integer, required
    - `metadata` object, required
    - `nextRetryAt` string, date-time, nullable
    - `status` 'enabled' | 'paused' | 'disabled' | 'retrying', required
    - `uid` string, nullable — The sink's UID.
    - `updatedAt` string, date-time, required
    - `config` RedshiftConfigOut, required
      - `accessKeyId` string, required
      - `clusterIdentifier` string, nullable
      - `dbName` string — Database name. Only required if not using transformations.
      - `dbUser` string, nullable
      - `region` string, required
      - `schemaName` string, nullable — Schema name. Only used if not using transformations.
      - `tableName` string — Table name. Only required if not using transformations.
      - `workgroupName` string, nullable
    - `type` 'redshift', required
  - object
    - `batchSize` integer, required
    - `channels` string[]
    - `createdAt` string, date-time, required
    - `currentIterator` string, required
    - `eventTypes` string[]
    - `failureReason` string, nullable
    - `id` string, required — The sink's ID.
    - `maxWaitSecs` integer, required
    - `metadata` object, required
    - `nextRetryAt` string, date-time, nullable
    - `status` 'enabled' | 'paused' | 'disabled' | 'retrying', required
    - `uid` string, nullable — The sink's UID.
    - `updatedAt` string, date-time, required
    - `config` BigQueryConfigOut, required
      - `datasetId` string, required
      - `projectId` string, required
      - `tableId` string, required
    - `type` 'bigQuery', required
  - object
    - `batchSize` integer, required
    - `channels` string[]
    - `createdAt` string, date-time, required
    - `currentIterator` string, required
    - `eventTypes` string[]
    - `failureReason` string, nullable
    - `id` string, required — The sink's ID.
    - `maxWaitSecs` integer, required
    - `metadata` object, required
    - `nextRetryAt` string, date-time, nullable
    - `status` 'enabled' | 'paused' | 'disabled' | 'retrying', required
    - `uid` string, nullable — The sink's UID.
    - `updatedAt` string, date-time, required
    - `config` ClickhouseConfigOut, required
      - `database` string, required
      - `tableName` string, required
      - `url` string, uri, required
      - `username` string, required
    - `type` 'clickhouse', required
  - object
    - `batchSize` integer, required
    - `channels` string[]
    - `createdAt` string, date-time, required
    - `currentIterator` string, required
    - `eventTypes` string[]
    - `failureReason` string, nullable
    - `id` string, required — The sink's ID.
    - `maxWaitSecs` integer, required
    - `metadata` object, required
    - `nextRetryAt` string, date-time, nullable
    - `status` 'enabled' | 'paused' | 'disabled' | 'retrying', required
    - `uid` string, nullable — The sink's UID.
    - `updatedAt` string, date-time, required
    - `config` RabbitMqConfigOut, required
      - `routingKey` string, required
    - `type` 'rabbitMq', required
  - object
    - `batchSize` integer, required
    - `channels` string[]
    - `createdAt` string, date-time, required
    - `currentIterator` string, required
    - `eventTypes` string[]
    - `failureReason` string, nullable
    - `id` string, required — The sink's ID.
    - `maxWaitSecs` integer, required
    - `metadata` object, required
    - `nextRetryAt` string, date-time, nullable
    - `status` 'enabled' | 'paused' | 'disabled' | 'retrying', required
    - `uid` string, nullable — The sink's UID.
    - `updatedAt` string, date-time, required
    - `config` SqsConfigOut, required
      - `accessKeyId` string, required
      - `endpointUrl` string, uri, nullable
      - `queueUrl` string, uri, required
      - `region` string, required
    - `type` 'sqs', required
  - object
    - `batchSize` integer, required
    - `channels` string[]
    - `createdAt` string, date-time, required
    - `currentIterator` string, required
    - `eventTypes` string[]
    - `failureReason` string, nullable
    - `id` string, required — The sink's ID.
    - `maxWaitSecs` integer, required
    - `metadata` object, required
    - `nextRetryAt` string, date-time, nullable
    - `status` 'enabled' | 'paused' | 'disabled' | 'retrying', required
    - `uid` string, nullable — The sink's UID.
    - `updatedAt` string, date-time, required
    - `config` EventBridgeConfigOut, required
      - `accessKeyId` string, required
      - `detailType` string, required
      - `eventBusName` string, required
      - `region` string, required
    - `type` 'eventBridge', required
  - object
    - `batchSize` integer, required
    - `channels` string[]
    - `createdAt` string, date-time, required
    - `currentIterator` string, required
    - `eventTypes` string[]
    - `failureReason` string, nullable
    - `id` string, required — The sink's ID.
    - `maxWaitSecs` integer, required
    - `metadata` object, required
    - `nextRetryAt` string, date-time, nullable
    - `status` 'enabled' | 'paused' | 'disabled' | 'retrying', required
    - `uid` string, nullable — The sink's UID.
    - `updatedAt` string, date-time, required
    - `config` SnsConfigOut, required
      - `accessKeyId` string, required
      - `region` string, required
      - `topicArn` string, required
    - `type` 'sns', required

## Other responses

- `400` — Bad request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found
- `409` — Conflict
- `422` — Validation Error
- `429` — Too Many Requests

---

[API](https://skmtc.net/svix/apis/svix-api.md) · [All operations](https://skmtc.net/svix/apis/svix-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/svix/svix-api/revisions/b0c8a1820333/schema)
