---
url: https://docs.ogmabox.com/ru/app/environment.md
description: >-
  Управляйте переменными окружения Ogma для Replay, Automate, рабочих процессов
  и контекста тестирования.
---

# Окружение {#environment}

Переменные окружения хранят значения для повторного использования в запросах Replay, Automate и рабочих процессов.

## Создание и редактирование переменных {#creating-and-editing-variables}

1. Откройте **Окружение** в левой панели навигации.
2. Нажмите **Добавить переменную**.
3. Введите имя, начинающееся с буквы или подчёркивания, за которым следуют буквы, цифры, подчёркивания или дефисы (не более 64 символов).
4. Введите значение.
5. Включите **Секрет**, если значение конфиденциально (ключи API, токены, пароли). Секретные значения скрываются в интерфейсе и исключаются из контекста ИИ.
6. Нажмите **Сохранить**.

Чтобы изменить существующую переменную, нажмите её строку и обновите имя или значение.

## Использование переменных в запросах {#using-variables-in-requests}

Ссылайтесь на переменную окружения с префиксом `env.`:

```
{{env.VARIABLE_NAME}}
```

Примеры:

* Поле хоста: {{env.TARGET\_HOST}} (сохраните имя хоста, а не полный URL).
* Заголовок авторизации: Bearer {{env.AUTH\_TOKEN}}.
* Тело запроса: {"tenant": "{{env.TENANT\_ID}}"}; включите шаблонизацию тела в Replay, если нужны подстановки внутри тела.

Ogma подставляет значения корректных переменных окружения при отправке. Отсутствующая переменная вызывает ошибку, а не незаметную отправку неподставленного значения. Отправка из Raw и Hex в Replay сохраняет точные байты без подстановки значений в шаблоны.

## Область действия переменных {#variable-scope}

Выберите **Глобальная** для значений, общих для проектов рабочего пространства Ogma, или **Проект** для значений активного проекта. Переменные проекта переопределяют одноимённые глобальные переменные. Replay также поддерживает переопределения коллекции и сессии; приоритет: сессия, коллекция, проект, затем глобальная переменная.

## Преобразования и динамические значения {#transforms-and-dynamic-values}

Добавляйте преобразования через вертикальную черту, например {{env.AUTH\_TOKEN|base64\_encode}} или {{env.SEARCH|url\_encode}}. Цепочка применяется слева направо. Проверьте результат тестовым запросом: неизвестные имена преобразований пропускаются без сообщения об ошибке.

Для встроенных значений сохранять переменную не нужно:

| Шаблон | Значение |
| --- | --- |
| {{$timestamp}} | Текущее время Unix в миллисекундах. |
| {{$timestamp\_s}} | Текущее время Unix в секундах. |
| {{$uuid}} | Новый UUID. |
| {{$random(16)}} | 16 случайных байт в шестнадцатеричном представлении. |
| {{$date(%Y-%m-%d)}} | Текущая дата UTC по шаблону формата даты. |

В сохранённых значениях не выполняется рекурсивная подстановка. Если значение содержит другой шаблон, этот вложенный текст остаётся без изменений.

## Доступ ИИ-помощника {#ai-assistant-access}

ИИ-помощник может читать имена и значения несекретных переменных для контекста, когда вы просите проанализировать запрос или составить план тестирования. Секретные переменные никогда не включаются в контекст ИИ.

## Типичные применения {#common-uses}

| Переменная | Пример значения |
| --- | --- |
| `BASE_URL` | `https://api.example.com` |
| `AUTH_TOKEN` | `eyJhbGci...` (пометьте как секрет) |
| `TARGET_HOST` | `app.example.com` |
| `API_KEY` | `sk-...` (пометьте как секрет) |
| `USER_ID` | `12345` |

## Связанные страницы {#related-pages}

* [Повторная отправка](./replay.md)
* [Автоматизация](./automate.md)
* [Сценарии](./workflows.md)
