[Документация Yandex Cloud](../../../index.md) > [Yandex API Gateway](../../index.md) > [Концепции](../index.md) > [Расширения спецификации](index.md) > Интеграции > Data Streams

# Расширение x-yc-apigateway-integration:cloud_datastreams

Расширение `x-yc-apigateway-integration:cloud_datastreams` позволяет обращаться к Yandex Data Streams для выполнения операции с [потоком](../../../data-streams/concepts/glossary.md#stream-concepts). На данный момент поддерживается только операция [PutRecord](../../../data-streams/kinesisapi/methods/putrecord.md). 

Добавить расширение в спецификацию можно с помощью [конструктора спецификаций](../../operations/spec-constructor/index.md).

## Поддерживаемые параметры {#parameters}

В таблице ниже перечислены параметры, специфичные для API-шлюза сервиса API Gateway. Описание остальных параметров читайте в [спецификации OpenAPI 3.0](https://github.com/OAI/OpenAPI-Specification).

Параметр | Тип | Описание
----|----|----
`action` | `string` | Выполняемая операция. Возможные значения: `PutRecord`.
`stream_name` | `string` | Имя потока Data Streams.
`partition_key` | `string` | Необязательный параметр. [Ключ сегмента](../../../data-streams/concepts/glossary.md#partition-key). Если не указан, запись будет выполнена в случайный сегмент. В `partition_key` осуществляется подстановка параметров.
`payload_format_type` | `string` | Необязательный параметр. Тип содержимого записи. Если значение — `body`, в поток записывается только тело запроса, если `request` — весь [запрос](cloud-functions.md#request_v1) в формате JSON. Значение по умолчанию — `body`.
`service_account_id` | `string` | Идентификатор сервисного аккаунта. Используется для авторизации при выполнении операции с потоком Data Streams. Если параметр не указан, используется значение [верхнеуровневого параметра](index.md#top-level) `service_account_id`.

## Спецификация расширения {#spec}

Пример спецификации:

```yaml
  /pets-stream/{petId}:
    post:
      x-yc-apigateway-integration:
        type: cloud_datastreams
        action: PutRecord
        stream_name: /kz1/b1v1emj927uv********/ett01h3uz7qm********/pets-stream
        partition_key: '{petId}'
        service_account_id: ajeqvh23fi2********
      parameters:
      - description: petId
        explode: false
        in: path
        name: petId
        required: true
        schema:
          type: string
        style: simple
```