[Документация Yandex Cloud](../../../index.md) > [Yandex API Gateway](../../index.md) > [Концепции](../index.md) > [Расширения спецификации](index.md) > Канареечный релиз

# Канареечный релиз

[Канареечный релиз](https://martinfowler.com/bliki/CanaryRelease.html) — это один из способов выкатки или развертывания новой версии программного обеспечения с целью ее тестирования, при котором текущая версия остается работать, а новая используется только в некоторой доле случаев.

При канареечном релизе API-шлюза входящие запросы случайным образом делятся на две части в соответствии с заданной долей. Обычно небольшая часть запросов обрабатывается канареечным релизом, а остальная — текущим. Вы можете увеличивать или уменьшать долю запросов, на которых тестируются изменения.

## Использование

Чтобы создать канареечный релиз, необходимо написать OpenAPI-спецификацию, использующую одну или несколько переменных (подробнее в разделе [Параметризация спецификации](parametrization.md)), а затем создать или обновить API-шлюз. При этом нужно указать:
* спецификацию с переменными;
* значения переменных для канареечного релиза;
* долю запросов, которые будут обрабатываться канареечным релизом.

Если запрос обрабатывается канареечным релизом, ответ, который возвращает API Gateway, содержит дополнительный заголовок `x-yc-apigateway-release` со значением `canary`.

## Примеры использования {#examples}

* [Канареечный релиз функции Cloud Functions](../../tutorials/canary-release.md)