Os ambientes fornecem contextos de execução isolados para executar código, ferramentas e serviços de agentes com segurança.
CreateEnvironment
Cria um ambiente.
Corpo da solicitação
O corpo da solicitação contém dados com a seguinte estrutura:
rede EnvironmentNetworkEgressAllowlist ou enum (string) (opcional)
Configuração de rede para o ambiente.
Tipos possíveis
object
Configuração de rede de saída para o sandbox. Quando especificado, restringe quais domínios externos o sandbox pode alcançar. Omita completamente para permitir todo o tráfego de saída sem injeção de cabeçalho.
allowlist array (AllowlistEntry) (opcional)
Lista de domínios de saída permitidos. Somente solicitações para domínios listados são permitidas. Use [{'domain': '*'}] para permitir todos os domínios e injetar cabeçalhos em domínios específicos.
Campos
Domínio para permitir solicitações de saída. Aceita caracteres curinga (por exemplo, "*.googleapis.com"). Use "*" para permitir todos os domínios.
Cabeçalhos a serem injetados em todas as solicitações de saída que correspondem a esse domínio. Aceita um único dict ou uma lista de dicts. O proxy de saída os injeta automaticamente.
string
Desativa todas as redes.
Possíveis valores
-
disabledDesativa todas as redes.
sources array (Source) (opcional)
Fontes a serem montadas no ambiente.
Campos
O conteúdo inline se "type" for "INLINE".
Codificação opcional para conteúdo inline (por exemplo, "base64").
A origem do ambiente. No Cloud Storage, é o caminho do Cloud Storage. No GitHub, esse é o caminho do GitHub.
Onde a origem deve aparecer no ambiente.
Nenhuma descrição informada.
Valores possíveis:
-
gcsUm bucket do Cloud Storage.
-
inlineConteúdo inline.
-
repositoryUm repositório genérico. O prefixo do protocolo no URL de origem identifica o provedor (por exemplo, github://, gcs://).
Resposta
Se bem-sucedido, o corpo da resposta incluirá dados com a estrutura a seguir:
Apenas saída. O horário em que o ambiente foi criado no formato ISO 8601 (AAAA-MM-DDThh:mm:ssZ).
Apenas saída. O número de arquivos no ambiente, somente saída.
Obrigatório. Apenas saída. O ID do ambiente.
Apenas saída. A hora em que o ambiente foi acessado pela última vez no formato ISO 8601 (AAAA-MM-DDThh:mm:ssZ).
rede EnvironmentNetworkEgressAllowlist ou enum (string) (opcional)
Configuração de rede para o ambiente.
Tipos possíveis
object
Configuração de rede de saída para o sandbox. Quando especificado, restringe quais domínios externos o sandbox pode alcançar. Omita completamente para permitir todo o tráfego de saída sem injeção de cabeçalho.
allowlist array (AllowlistEntry) (opcional)
Lista de domínios de saída permitidos. Somente solicitações para domínios listados são permitidas. Use [{'domain': '*'}] para permitir todos os domínios e injetar cabeçalhos em domínios específicos.
Campos
Domínio para permitir solicitações de saída. Aceita caracteres curinga (por exemplo, "*.googleapis.com"). Use "*" para permitir todos os domínios.
Cabeçalhos a serem injetados em todas as solicitações de saída que correspondem a esse domínio. Aceita um único dict ou uma lista de dicts. O proxy de saída os injeta automaticamente.
string
Desativa todas as redes.
Possíveis valores
-
disabledDesativa todas as redes.
Apenas saída. O tamanho total dos arquivos do ambiente em bytes, somente saída.
sources array (Source) (opcional)
Fontes a serem montadas no ambiente.
Campos
O conteúdo inline se "type" for "INLINE".
Codificação opcional para conteúdo inline (por exemplo, "base64").
A origem do ambiente. No Cloud Storage, é o caminho do Cloud Storage. No GitHub, esse é o caminho do GitHub.
Onde a origem deve aparecer no ambiente.
Nenhuma descrição informada.
Valores possíveis:
-
gcsUm bucket do Cloud Storage.
-
inlineConteúdo inline.
-
repositoryUm repositório genérico. O prefixo do protocolo no URL de origem identifica o provedor (por exemplo, github://, gcs://).
Apenas saída. O status do contêiner de ambiente.
Valores possíveis:
-
activeApenas saída. O status do contêiner de ambiente.
-
expiredApenas saída. O status do contêiner de ambiente.
Apenas saída. A hora em que o ambiente foi atualizado pela última vez no formato ISO 8601 (AAAA-MM-DDThh:mm:ssZ).
Criar ambiente
Exemplo de resposta
{ "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
Lista os ambientes.
Parâmetros de caminho / consulta
Opcional. Número máximo de ambientes a serem retornados. Se não for especificado, o padrão será 50. O valor máximo é 1.000.
Opcional. Token de paginação.
Resposta
Se bem-sucedido, o corpo da resposta incluirá dados com a estrutura a seguir:
Ambientes pertencentes ao projeto fornecido.
Token de paginação.
Listar ambientes
Exemplo de resposta
{ "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
Recupera metadados de arquivos ou conteúdo de diretórios do snapshot de um ambiente. Para fazer o download do conteúdo do arquivo diretamente, transmita ?alt=media ou use o auxiliar files.download.
Parâmetros de caminho / consulta
Opcional. Número máximo de entradas a serem retornadas por página (para listagem de diretório).
Opcional. Token de paginação para listagem de diretório.
Opcional. Se for "true" e o caminho for um diretório, lista todos os arquivos de forma recursiva.
Resposta
Se bem-sucedido, o corpo da resposta incluirá dados com a estrutura a seguir:
files array (EnvironmentFile) (opcional)
Se o caminho solicitado for um diretório, isso vai conter o conteúdo dele. Se o caminho solicitado for um arquivo, isso vai conter uma única entrada com os metadados do arquivo. Se alt=media foi especificado, este campo fica vazio (o conteúdo é veiculado via "blob").
Campos
Apenas saída. A hora de criação do arquivo/diretório.
Apenas saída. O tipo MIME do arquivo (por exemplo, "text/python", "image/png"). Vazio para diretórios. NOLINT
Apenas saída. A hora da modificação do arquivo/diretório.
Apenas saída. O nome do arquivo ou diretório (por exemplo, "main.py" ou "src").
Apenas saída. O caminho relativo completo no ambiente (por exemplo, "workspace/src/main.py").
Apenas saída. O tamanho do arquivo/diretório em bytes. NOLINT
Apenas saída. O tipo da entrada.
Valores possíveis:
-
fileUm arquivo comum.
-
directoryUm diretório.
Token de paginação para listagem de diretórios. NOLINT
Listar arquivos no ambiente
Exemplo de resposta
{ "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" } ] }
Acessar metadados de arquivo
Exemplo de resposta
{ "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" } ] }
Baixar conteúdo do arquivo
Exemplo de resposta
{ "files": [ { "name": "main.py", "type": "file", "mime_type": "text/x-python", "path": "main.py", "size_bytes": "22" } ] }
GetEnvironment
Recebe um ambiente.
Resposta
Se bem-sucedido, o corpo da resposta incluirá dados com a estrutura a seguir:
Apenas saída. O horário em que o ambiente foi criado no formato ISO 8601 (AAAA-MM-DDThh:mm:ssZ).
Apenas saída. O número de arquivos no ambiente, somente saída.
Obrigatório. Apenas saída. O ID do ambiente.
Apenas saída. A hora em que o ambiente foi acessado pela última vez no formato ISO 8601 (AAAA-MM-DDThh:mm:ssZ).
rede EnvironmentNetworkEgressAllowlist ou enum (string) (opcional)
Configuração de rede para o ambiente.
Tipos possíveis
object
Configuração de rede de saída para o sandbox. Quando especificado, restringe quais domínios externos o sandbox pode alcançar. Omita completamente para permitir todo o tráfego de saída sem injeção de cabeçalho.
allowlist array (AllowlistEntry) (opcional)
Lista de domínios de saída permitidos. Somente solicitações para domínios listados são permitidas. Use [{'domain': '*'}] para permitir todos os domínios e injetar cabeçalhos em domínios específicos.
Campos
Domínio para permitir solicitações de saída. Aceita caracteres curinga (por exemplo, "*.googleapis.com"). Use "*" para permitir todos os domínios.
Cabeçalhos a serem injetados em todas as solicitações de saída que correspondem a esse domínio. Aceita um único dict ou uma lista de dicts. O proxy de saída os injeta automaticamente.
string
Desativa todas as redes.
Possíveis valores
-
disabledDesativa todas as redes.
Apenas saída. O tamanho total dos arquivos do ambiente em bytes, somente saída.
sources array (Source) (opcional)
Fontes a serem montadas no ambiente.
Campos
O conteúdo inline se "type" for "INLINE".
Codificação opcional para conteúdo inline (por exemplo, "base64").
A origem do ambiente. No Cloud Storage, é o caminho do Cloud Storage. No GitHub, esse é o caminho do GitHub.
Onde a origem deve aparecer no ambiente.
Nenhuma descrição informada.
Valores possíveis:
-
gcsUm bucket do Cloud Storage.
-
inlineConteúdo inline.
-
repositoryUm repositório genérico. O prefixo do protocolo no URL de origem identifica o provedor (por exemplo, github://, gcs://).
Apenas saída. O status do contêiner de ambiente.
Valores possíveis:
-
activeApenas saída. O status do contêiner de ambiente.
-
expiredApenas saída. O status do contêiner de ambiente.
Apenas saída. A hora em que o ambiente foi atualizado pela última vez no formato ISO 8601 (AAAA-MM-DDThh:mm:ssZ).
Acessar ambiente
Exemplo de resposta
{ "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
Exclui um ambiente.
Resposta
Se a solicitação for concluída, a resposta estará vazia.
Excluir ambiente
Recursos
Ambiente
Um ambiente de execução para um agente.
Campos
Apenas saída. O horário em que o ambiente foi criado no formato ISO 8601 (AAAA-MM-DDThh:mm:ssZ).
Apenas saída. O número de arquivos no ambiente, somente saída.
Obrigatório. Apenas saída. O ID do ambiente.
Apenas saída. A hora em que o ambiente foi acessado pela última vez no formato ISO 8601 (AAAA-MM-DDThh:mm:ssZ).
rede EnvironmentNetworkEgressAllowlist ou enum (string) (opcional)
Configuração de rede para o ambiente.
Tipos possíveis
object
Configuração de rede de saída para o sandbox. Quando especificado, restringe quais domínios externos o sandbox pode alcançar. Omita completamente para permitir todo o tráfego de saída sem injeção de cabeçalho.
allowlist array (AllowlistEntry) (opcional)
Lista de domínios de saída permitidos. Somente solicitações para domínios listados são permitidas. Use [{'domain': '*'}] para permitir todos os domínios e injetar cabeçalhos em domínios específicos.
Campos
Domínio para permitir solicitações de saída. Aceita caracteres curinga (por exemplo, "*.googleapis.com"). Use "*" para permitir todos os domínios.
Cabeçalhos a serem injetados em todas as solicitações de saída que correspondem a esse domínio. Aceita um único dict ou uma lista de dicts. O proxy de saída os injeta automaticamente.
string
Desativa todas as redes.
Possíveis valores
-
disabledDesativa todas as redes.
Apenas saída. O tamanho total dos arquivos do ambiente em bytes, somente saída.
sources array (Source) (opcional)
Fontes a serem montadas no ambiente.
Campos
O conteúdo inline se "type" for "INLINE".
Codificação opcional para conteúdo inline (por exemplo, "base64").
A origem do ambiente. No Cloud Storage, é o caminho do Cloud Storage. No GitHub, esse é o caminho do GitHub.
Onde a origem deve aparecer no ambiente.
Nenhuma descrição informada.
Valores possíveis:
-
gcsUm bucket do Cloud Storage.
-
inlineConteúdo inline.
-
repositoryUm repositório genérico. O prefixo do protocolo no URL de origem identifica o provedor (por exemplo, github://, gcs://).
Apenas saída. O status do contêiner de ambiente.
Valores possíveis:
-
activeApenas saída. O status do contêiner de ambiente.
-
expiredApenas saída. O status do contêiner de ambiente.
Apenas saída. A hora em que o ambiente foi atualizado pela última vez no formato ISO 8601 (AAAA-MM-DDThh:mm:ssZ).