Среды обеспечивают изолированные контексты выполнения для безопасного запуска кода агента, инструментов и служб.
Создать среду
Создаёт среду.
Текст запроса
Тело запроса содержит данные следующей структуры:
network EnvironmentNetworkEgressAllowlist или enum (строка) (необязательно)
Настройка сети для данной среды.
Возможные типы
объект
Настройки исходящей сети для песочницы. При указании ограничивает доступ песочницы к внешним доменам. Полное исключение позволяет разрешить весь исходящий трафик без внедрения заголовков.
Массив разрешенных записей (AllowlistEntry) (необязательно)
Список разрешенных исходящих доменов. Разрешены только запросы к перечисленным доменам. Используйте [{'domain': '*'}], чтобы разрешить все домены, но при этом добавить заголовки только к определенным из них.
Поля
Домен, разрешающий исходящие запросы. Поддерживаются подстановочные знаки (например, '*.googleapis.com'). Используйте '*' для разрешения всех доменов.
Заголовки для добавления во все исходящие запросы, соответствующие этому домену. Принимает один словарь или список словарей. Исходящий прокси добавляет их автоматически.
нить
Отключает всю сеть.
Возможные значения
-
disabledОтключает всю сеть.
массив источников (Источник) (необязательно)
Источники, которые будут установлены в окружающей среде.
Поля
Встроенное содержимое, если `type` имеет значение `INLINE`.
Дополнительная кодировка для встроенного контента (например, `base64`).
Источник среды. Для Cloud Storage это путь к Cloud Storage. Для GitHub это путь к GitHub.
Где должен отображаться исходный код в окружающей среде.
Описание отсутствует.
Возможные значения:
-
gcsСегмент облачного хранилища.
-
inlineВстроенный контент.
-
repositoryУниверсальный репозиторий. Префикс протокола в URL-адресе источника идентифицирует поставщика (например, github://, gcs://).
Ответ
В случае успеха тело ответа содержит данные следующей структуры:
Только для вывода. Время создания среды в формате ISO 8601 (ГГГГ-ММ-ДДЧч:мм:ссЗ).
Только вывод. Количество файлов в среде, только вывод.
Обязательно. Только для вывода. Идентификатор среды.
Только вывод. Время последнего доступа к среде в формате ISO 8601 (ГГГГ-ММ-ДДЧч:мм:ссЗ).
network EnvironmentNetworkEgressAllowlist или enum (строка) (необязательно)
Настройка сети для данной среды.
Возможные типы
объект
Настройки исходящей сети для песочницы. При указании ограничивает доступ песочницы к внешним доменам. Полное исключение позволяет разрешить весь исходящий трафик без внедрения заголовков.
Массив разрешенных записей (AllowlistEntry) (необязательно)
Список разрешенных исходящих доменов. Разрешены только запросы к перечисленным доменам. Используйте [{'domain': '*'}], чтобы разрешить все домены, но при этом добавить заголовки только к определенным из них.
Поля
Домен, разрешающий исходящие запросы. Поддерживаются подстановочные знаки (например, '*.googleapis.com'). Используйте '*' для разрешения всех доменов.
Заголовки для добавления во все исходящие запросы, соответствующие этому домену. Принимает один словарь или список словарей. Исходящий прокси добавляет их автоматически.
нить
Отключает всю сеть.
Возможные значения
-
disabledОтключает всю сеть.
Только для вывода. Общий размер файлов окружения в байтах, только для вывода.
массив источников (Источник) (необязательно)
Источники, которые будут установлены в окружающей среде.
Поля
Встроенное содержимое, если `type` имеет значение `INLINE`.
Дополнительная кодировка для встроенного контента (например, `base64`).
Источник среды. Для Cloud Storage это путь к Cloud Storage. Для GitHub это путь к GitHub.
Где должен отображаться исходный код в окружающей среде.
Описание отсутствует.
Возможные значения:
-
gcsСегмент облачного хранилища.
-
inlineВстроенный контент.
-
repositoryУниверсальный репозиторий. Префикс протокола в URL-адресе источника идентифицирует поставщика (например, github://, gcs://).
Только вывод. Состояние контейнера среды.
Возможные значения:
-
activeТолько вывод. Состояние контейнера среды.
-
expiredТолько вывод. Состояние контейнера среды.
Только для вывода. Время последнего обновления среды в формате ISO 8601 (ГГГГ-ММ-ДДЧч:мм:ссЗ).
Создать среду
Пример ответа
{ "created": "2026-08-19T00:00:00Z", "id": "env_abc123", "last_accessed": "2026-08-19T00:00:00Z", "sources": [ { "type": "inline", "content": "print('Hello, World!')", "target": "main.py" } ], "status": "active", "updated": "2026-08-19T00:00:00Z" }
ListEnvironments
Отображает список сред.
Путь / Параметры запроса
Необязательный параметр. Максимальное количество возвращаемых сред.\nЕсли не указано, по умолчанию — 50. Максимальное значение — 1000.
Необязательный параметр. Токен пагинации.
Ответ
В случае успеха тело ответа содержит данные следующей структуры:
Окружающая среда, относящаяся к предоставленному проекту.
Токен пагинации.
Список сред
Пример ответа
{ "environments": [ { "created": "2026-08-19T00:00:00Z", "id": "env_abc123", "last_accessed": "2026-08-19T00:00:00Z", "status": "active", "updated": "2026-08-19T00:00:00Z" } ] }
GetEnvironmentFiles
Извлекает метаданные файлов или содержимое каталогов из снимка среды. Для прямой загрузки содержимого файла передайте параметр ?alt=media или воспользуйтесь вспомогательной функцией files.download.
Путь / Параметры запроса
Необязательно. Максимальное количество записей для отображения на странице (для списка каталога).
Необязательно. Токен пагинации для отображения списка файлов в каталоге.
Необязательный параметр. Если значение равно true и путь является каталогом, рекурсивно выводит список всех файлов.
Ответ
В случае успеха тело ответа содержит данные следующей структуры:
массив файлов (EnvironmentFile) (необязательно)
Если запрошенный путь — это каталог, здесь содержится его содержимое. Если запрошенный путь — это файл, здесь содержится одна запись с метаданными файла. Если указан alt=media, это пустое поле (контент предоставляется через `blob`).
Поля
Только вывод. Время создания файла/каталога.
Только вывод. MIME-тип файла (например, "text/python", "image/png"). Для каталогов поле пустое. NOLINT
Только вывод. Время изменения файла/каталога.
Только вывод. Имя файла или каталога (например, "main.py" или "src").
Только вывод. Полный относительный путь в среде (например, "workspace/src/main.py").
Только вывод. Размер файла/каталога в байтах. NOLINT
Только вывод. Тип записи.
Возможные значения:
-
fileОбычный файл.
-
directoryСправочник.
Токен пагинации для списка файлов в каталоге. NOLINT
Список файлов в среде
Пример ответа
{ "files": [ { "name": "src", "type": "directory", "created": "2026-08-19T00:00:00Z", "modified": "2026-08-19T00:00:00Z", "path": "src" }, { "name": "main.py", "type": "file", "created": "2026-08-19T00:00:00Z", "mime_type": "text/x-python", "modified": "2026-08-19T00:00:00Z", "path": "main.py", "size_bytes": "22" } ] }
Получить метаданные файла
Пример ответа
{ "files": [ { "name": "main.py", "type": "file", "created": "2026-08-19T00:00:00Z", "mime_type": "text/x-python", "modified": "2026-08-19T00:00:00Z", "path": "main.py", "size_bytes": "22" } ] }
Скачать содержимое файла
Пример ответа
{ "files": [ { "name": "main.py", "type": "file", "mime_type": "text/x-python", "path": "main.py", "size_bytes": "22" } ] }
GetEnvironment
Получает среду.
Ответ
В случае успеха тело ответа содержит данные следующей структуры:
Только для вывода. Время создания среды в формате ISO 8601 (ГГГГ-ММ-ДДЧч:мм:ссЗ).
Только вывод. Количество файлов в среде, только вывод.
Обязательно. Только для вывода. Идентификатор среды.
Только вывод. Время последнего доступа к среде в формате ISO 8601 (ГГГГ-ММ-ДДЧч:мм:ссЗ).
network EnvironmentNetworkEgressAllowlist или enum (строка) (необязательно)
Настройка сети для данной среды.
Возможные типы
объект
Настройки исходящей сети для песочницы. При указании ограничивает доступ песочницы к внешним доменам. Полное исключение позволяет разрешить весь исходящий трафик без внедрения заголовков.
Массив разрешенных записей (AllowlistEntry) (необязательно)
Список разрешенных исходящих доменов. Разрешены только запросы к перечисленным доменам. Используйте [{'domain': '*'}], чтобы разрешить все домены, но при этом добавить заголовки только к определенным из них.
Поля
Домен, разрешающий исходящие запросы. Поддерживаются подстановочные знаки (например, '*.googleapis.com'). Используйте '*' для разрешения всех доменов.
Заголовки для добавления во все исходящие запросы, соответствующие этому домену. Принимает один словарь или список словарей. Исходящий прокси добавляет их автоматически.
нить
Отключает всю сеть.
Возможные значения
-
disabledОтключает всю сеть.
Только для вывода. Общий размер файлов окружения в байтах, только для вывода.
массив источников (Источник) (необязательно)
Источники, которые будут установлены в окружающей среде.
Поля
Встроенное содержимое, если `type` имеет значение `INLINE`.
Дополнительная кодировка для встроенного контента (например, `base64`).
Источник среды. Для Cloud Storage это путь к Cloud Storage. Для GitHub это путь к GitHub.
Где должен отображаться исходный код в окружающей среде.
Описание отсутствует.
Возможные значения:
-
gcsСегмент облачного хранилища.
-
inlineВстроенный контент.
-
repositoryУниверсальный репозиторий. Префикс протокола в URL-адресе источника идентифицирует поставщика (например, github://, gcs://).
Только вывод. Состояние контейнера среды.
Возможные значения:
-
activeТолько вывод. Состояние контейнера среды.
-
expiredТолько вывод. Состояние контейнера среды.
Только для вывода. Время последнего обновления среды в формате ISO 8601 (ГГГГ-ММ-ДДЧч:мм:ссЗ).
Получить окружающую среду
Пример ответа
{ "created": "2026-08-19T00:00:00Z", "id": "env_abc123", "last_accessed": "2026-08-19T00:00:00Z", "sources": [ { "type": "inline", "content": "print('Hello, World!')", "target": "main.py" } ], "status": "active", "updated": "2026-08-19T00:00:00Z" }
DeleteEnvironment
Удаляет среду.
Ответ
В случае успеха ответ будет пустым.
Удалить среду
Ресурсы
Среда
Среда выполнения для агента.
Поля
Только для вывода. Время создания среды в формате ISO 8601 (ГГГГ-ММ-ДДЧч:мм:ссЗ).
Только вывод. Количество файлов в среде, только вывод.
Обязательно. Только для вывода. Идентификатор среды.
Только вывод. Время последнего доступа к среде в формате ISO 8601 (ГГГГ-ММ-ДДЧч:мм:ссЗ).
network EnvironmentNetworkEgressAllowlist или enum (строка) (необязательно)
Настройка сети для данной среды.
Возможные типы
объект
Настройки исходящей сети для песочницы. При указании ограничивает доступ песочницы к внешним доменам. Полное исключение позволяет разрешить весь исходящий трафик без внедрения заголовков.
Массив разрешенных записей (AllowlistEntry) (необязательно)
Список разрешенных исходящих доменов. Разрешены только запросы к перечисленным доменам. Используйте [{'domain': '*'}], чтобы разрешить все домены, но при этом добавить заголовки только к определенным из них.
Поля
Домен, разрешающий исходящие запросы. Поддерживаются подстановочные знаки (например, '*.googleapis.com'). Используйте '*' для разрешения всех доменов.
Заголовки для добавления во все исходящие запросы, соответствующие этому домену. Принимает один словарь или список словарей. Исходящий прокси добавляет их автоматически.
нить
Отключает всю сеть.
Возможные значения
-
disabledОтключает всю сеть.
Только для вывода. Общий размер файлов окружения в байтах, только для вывода.
массив источников (Источник) (необязательно)
Источники, которые будут установлены в окружающей среде.
Поля
Встроенное содержимое, если `type` имеет значение `INLINE`.
Дополнительная кодировка для встроенного контента (например, `base64`).
Источник среды. Для Cloud Storage это путь к Cloud Storage. Для GitHub это путь к GitHub.
Где должен отображаться исходный код в окружающей среде.
Описание отсутствует.
Возможные значения:
-
gcsСегмент облачного хранилища.
-
inlineВстроенный контент.
-
repositoryУниверсальный репозиторий. Префикс протокола в URL-адресе источника идентифицирует поставщика (например, github://, gcs://).
Только вывод. Состояние контейнера среды.
Возможные значения:
-
activeТолько вывод. Состояние контейнера среды.
-
expiredТолько вывод. Состояние контейнера среды.
Только для вывода. Время последнего обновления среды в формате ISO 8601 (ГГГГ-ММ-ДДЧч:мм:ссЗ).