Gemini Environments API

Los entornos proporcionan contextos de ejecución aislados para ejecutar código, herramientas y servicios de agentes de forma segura.

CreateEnvironment

post https://generativelanguage.googleapis.com/v1beta/environments

Crea un entorno.

Cuerpo de la solicitud

El cuerpo de la solicitud contiene datos con la siguiente estructura:

network EnvironmentNetworkEgressAllowlist o enum (cadena)  (opcional)

Es la configuración de red del entorno.

Es la configuración de redes salientes para la zona de pruebas. Acepta un objeto con un array de "lista de entidades permitidas" para restringir el tráfico o la cadena "disabled" para desactivar todo el acceso a la red. Omite por completo para permitir todo el tráfico saliente sin inserción de encabezados.

Tipos posibles

object

Es la configuración de redes salientes para la zona de pruebas. Cuando se especifica, restringe los dominios externos a los que puede acceder la zona de pruebas. Omite por completo para permitir todo el tráfico saliente sin inserción de encabezados.

allowlist array (AllowlistEntry)  (opcional)

Es la lista de dominios externos permitidos. Solo se permiten las solicitudes a los dominios incluidos en la lista. Usa [{'domain': '*'}] para permitir todos los dominios y, al mismo tiempo, insertar encabezados en los específicos.

Es una sola regla de lista de entidades permitidas de dominio con inserción de encabezado opcional.

Campos

domain cadena  (opcional)

Es el dominio al que se permiten las solicitudes salientes. Admite comodines (p.ej., "*.googleapis.com"). Usa "*" para permitir todos los dominios.

transform array (objeto) o objeto  (opcional)

Encabezados que se insertarán en todas las solicitudes salientes que coincidan con este dominio. Acepta un solo diccionario o una lista de diccionarios. El proxy de salida los inserta automáticamente.

string

Apaga toda la red.

Valores posibles

  • disabled

    Apaga toda la red.

sources array (Source)  (opcional)

Son las fuentes que se deben montar en el entorno.

Es una fuente que se debe montar en el entorno.

Campos

content string  (opcional)

Es el contenido intercalado si `type` es `INLINE`.

encoding string  (opcional)

Es la codificación opcional para el contenido intercalado (p.ej., "base64").

source cadena  (opcional)

Es la fuente del entorno. En el caso de Cloud Storage, esta es la ruta de Cloud Storage. En el caso de GitHub, es la ruta de acceso de GitHub.

target cadena  (opcional)

Es la ubicación en la que debe aparecer la fuente en el entorno.

type enum (string)  (opcional)

No se proporcionó la descripción.

Valores posibles:

  • gcs

    Un bucket de Cloud Storage

  • inline

    Contenido intercalado.

  • repository

    Es un repositorio genérico. El prefijo del protocolo en la URL de origen identifica al proveedor (p.ej., github://, gcs://).

Respuesta

Si se ejecuta correctamente, el cuerpo de la respuesta contendrá datos con la siguiente estructura:

created cadena  (opcional)

Solo salida. Fecha y hora en que se creó el entorno en formato ISO 8601 (AAAA-MM-DDThh:mm:ssZ).

file_count cadena  (opcional)

Solo salida. Es la cantidad de archivos en el entorno (solo salida).

id cadena  (opcional)

Obligatorio. Solo salida. Es el ID del entorno.

last_accessed cadena  (opcional)

Solo salida. Fecha y hora en que se accedió al entorno por última vez en formato ISO 8601 (AAAA-MM-DDThh:mm:ssZ).

network EnvironmentNetworkEgressAllowlist o enum (cadena)  (opcional)

Es la configuración de red del entorno.

Es la configuración de redes salientes para la zona de pruebas. Acepta un objeto con un array de "lista de entidades permitidas" para restringir el tráfico o la cadena "disabled" para desactivar todo el acceso a la red. Omite por completo para permitir todo el tráfico saliente sin inserción de encabezados.

Tipos posibles

object

Es la configuración de redes salientes para la zona de pruebas. Cuando se especifica, restringe los dominios externos a los que puede acceder la zona de pruebas. Omite por completo para permitir todo el tráfico saliente sin inserción de encabezados.

allowlist array (AllowlistEntry)  (opcional)

Es la lista de dominios externos permitidos. Solo se permiten las solicitudes a los dominios incluidos en la lista. Usa [{'domain': '*'}] para permitir todos los dominios y, al mismo tiempo, insertar encabezados en los específicos.

Es una sola regla de lista de entidades permitidas de dominio con inserción de encabezado opcional.

Campos

domain cadena  (opcional)

Es el dominio al que se permiten las solicitudes salientes. Admite comodines (p.ej., "*.googleapis.com"). Usa "*" para permitir todos los dominios.

transform array (objeto) o objeto  (opcional)

Encabezados que se insertarán en todas las solicitudes salientes que coincidan con este dominio. Acepta un solo diccionario o una lista de diccionarios. El proxy de salida los inserta automáticamente.

string

Apaga toda la red.

Valores posibles

  • disabled

    Apaga toda la red.

size_bytes cadena  (opcional)

Solo salida. Es el tamaño total de los archivos del entorno en bytes (solo salida).

sources array (Source)  (opcional)

Son las fuentes que se deben montar en el entorno.

Es una fuente que se debe montar en el entorno.

Campos

content string  (opcional)

Es el contenido intercalado si `type` es `INLINE`.

encoding string  (opcional)

Es la codificación opcional para el contenido intercalado (p.ej., "base64").

source cadena  (opcional)

Es la fuente del entorno. En el caso de Cloud Storage, esta es la ruta de Cloud Storage. En el caso de GitHub, es la ruta de acceso de GitHub.

target cadena  (opcional)

Es la ubicación en la que debe aparecer la fuente en el entorno.

type enum (string)  (opcional)

No se proporcionó la descripción.

Valores posibles:

  • gcs

    Un bucket de Cloud Storage

  • inline

    Contenido intercalado.

  • repository

    Es un repositorio genérico. El prefijo del protocolo en la URL de origen identifica al proveedor (p.ej., github://, gcs://).

status enum (cadena)  (opcional)

Solo salida. Es el estado del contenedor del entorno.

Valores posibles:

  • active

    Solo salida. Es el estado del contenedor del entorno.

  • expired

    Solo salida. Es el estado del contenedor del entorno.

updated string  (opcional)

Solo salida. Fecha y hora en la que se actualizó el entorno por última vez en formato ISO 8601 (AAAA-MM-DDThh:mm:ssZ).

Crear entorno

Ejemplo de respuesta

{
  "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

get https://generativelanguage.googleapis.com/v1beta/environments

Enumera los entornos.

Parámetros de ruta de acceso y de consulta

page_size integer  (opcional)

Opcional. Es la cantidad máxima de entornos que se devolverán.\nSi no se especifica, el valor predeterminado es 50. El valor máximo es 1,000.

page_token cadena  (opcional)

Opcional. Es el token de paginación.

Respuesta

Si se ejecuta correctamente, el cuerpo de la respuesta contendrá datos con la siguiente estructura:

environments array (Environment)  (opcional)

Son los entornos que pertenecen al proyecto proporcionado.

next_page_token cadena  (opcional)

Es el token de paginación.

Enumerar entornos

Ejemplo de respuesta

{
  "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

get https://generativelanguage.googleapis.com/v1beta/environments/{environment}/files/{path}

Recupera los metadatos de un archivo o el contenido de un directorio desde la instantánea de un entorno. Para descargar el contenido del archivo directamente, pasa ?alt=media o usa el asistente files.download.

Parámetros de ruta de acceso y de consulta

page_size integer  (opcional)

Opcional. Es la cantidad máxima de entradas que se devolverán por página (para la lista de directorios).

page_token cadena  (opcional)

Opcional. Es el token de paginación para la lista de directorios.

recursive boolean  (opcional)

Opcional. Si es verdadero y la ruta de acceso es un directorio, se enumeran de forma recursiva todos los archivos.

Respuesta

Si se ejecuta correctamente, el cuerpo de la respuesta contendrá datos con la siguiente estructura:

files array (EnvironmentFile)  (opcional)

Si la ruta solicitada es un directorio, este contiene su contenido. Si la ruta de acceso solicitada es un archivo, este campo contiene una sola entrada con los metadatos del archivo. Si se especificó alt=media, este campo está vacío (el contenido se entrega a través de "blob").

Son los metadatos de un archivo o directorio dentro de un entorno.

Campos

created cadena  (opcional)

Solo salida. Es la hora de creación del archivo o directorio.

mime_type cadena  (opcional)

Solo salida. Tipo de MIME del archivo (p.ej., "text/python", "image/png"). Está vacío para los directorios. NOLINT

modified cadena  (opcional)

Solo salida. Es la hora de modificación del archivo o directorio.

name cadena  (opcional)

Solo salida. Es el nombre del archivo o directorio (p.ej., "main.py" o "src").

ruta de acceso cadena  (opcional)

Solo salida. Es la ruta relativa completa dentro del entorno (p.ej., "workspace/src/main.py").

size_bytes cadena  (opcional)

Solo salida. Tamaño del archivo o directorio en bytes. NOLINT

type enum (string)  (opcional)

Solo salida. Es el tipo de entrada.

Valores posibles:

  • file

    Es un archivo normal.

  • directory

    Es un directorio.

next_page_token cadena  (opcional)

Es el token de paginación para la lista de directorios. NOLINT

Enumera los archivos en el entorno

Ejemplo de respuesta

{
  "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"
    }
  ]
}

Obtener metadatos de archivos

Ejemplo de respuesta

{
  "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"
    }
  ]
}

Descargar contenido del archivo

Ejemplo de respuesta

{
  "files": [
    {
      "name": "main.py",
      "type": "file",
      "mime_type": "text/x-python",
      "path": "main.py",
      "size_bytes": "22"
    }
  ]
}

GetEnvironment

get https://generativelanguage.googleapis.com/v1beta/environments/{id}

Obtiene un entorno.

Respuesta

Si se ejecuta correctamente, el cuerpo de la respuesta contendrá datos con la siguiente estructura:

created cadena  (opcional)

Solo salida. Fecha y hora en que se creó el entorno en formato ISO 8601 (AAAA-MM-DDThh:mm:ssZ).

file_count cadena  (opcional)

Solo salida. Es la cantidad de archivos en el entorno (solo salida).

id cadena  (opcional)

Obligatorio. Solo salida. Es el ID del entorno.

last_accessed cadena  (opcional)

Solo salida. Fecha y hora en que se accedió al entorno por última vez en formato ISO 8601 (AAAA-MM-DDThh:mm:ssZ).

network EnvironmentNetworkEgressAllowlist o enum (cadena)  (opcional)

Es la configuración de red del entorno.

Es la configuración de redes salientes para la zona de pruebas. Acepta un objeto con un array de "lista de entidades permitidas" para restringir el tráfico o la cadena "disabled" para desactivar todo el acceso a la red. Omite por completo para permitir todo el tráfico saliente sin inserción de encabezados.

Tipos posibles

object

Es la configuración de redes salientes para la zona de pruebas. Cuando se especifica, restringe los dominios externos a los que puede acceder la zona de pruebas. Omite por completo para permitir todo el tráfico saliente sin inserción de encabezados.

allowlist array (AllowlistEntry)  (opcional)

Es la lista de dominios externos permitidos. Solo se permiten las solicitudes a los dominios incluidos en la lista. Usa [{'domain': '*'}] para permitir todos los dominios y, al mismo tiempo, insertar encabezados en los específicos.

Es una sola regla de lista de entidades permitidas de dominio con inserción de encabezado opcional.

Campos

domain cadena  (opcional)

Es el dominio al que se permiten las solicitudes salientes. Admite comodines (p.ej., "*.googleapis.com"). Usa "*" para permitir todos los dominios.

transform array (objeto) o objeto  (opcional)

Encabezados que se insertarán en todas las solicitudes salientes que coincidan con este dominio. Acepta un solo diccionario o una lista de diccionarios. El proxy de salida los inserta automáticamente.

string

Apaga toda la red.

Valores posibles

  • disabled

    Apaga toda la red.

size_bytes cadena  (opcional)

Solo salida. Es el tamaño total de los archivos del entorno en bytes (solo salida).

sources array (Source)  (opcional)

Son las fuentes que se deben montar en el entorno.

Es una fuente que se debe montar en el entorno.

Campos

content string  (opcional)

Es el contenido intercalado si `type` es `INLINE`.

encoding string  (opcional)

Es la codificación opcional para el contenido intercalado (p.ej., "base64").

source cadena  (opcional)

Es la fuente del entorno. En el caso de Cloud Storage, esta es la ruta de Cloud Storage. En el caso de GitHub, es la ruta de acceso de GitHub.

target cadena  (opcional)

Es la ubicación en la que debe aparecer la fuente en el entorno.

type enum (string)  (opcional)

No se proporcionó la descripción.

Valores posibles:

  • gcs

    Un bucket de Cloud Storage

  • inline

    Contenido intercalado.

  • repository

    Es un repositorio genérico. El prefijo del protocolo en la URL de origen identifica al proveedor (p.ej., github://, gcs://).

status enum (cadena)  (opcional)

Solo salida. Es el estado del contenedor del entorno.

Valores posibles:

  • active

    Solo salida. Es el estado del contenedor del entorno.

  • expired

    Solo salida. Es el estado del contenedor del entorno.

updated string  (opcional)

Solo salida. Fecha y hora en la que se actualizó el entorno por última vez en formato ISO 8601 (AAAA-MM-DDThh:mm:ssZ).

Obtener entornos

Ejemplo de respuesta

{
  "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

delete https://generativelanguage.googleapis.com/v1beta/environments/{id}

Borra un entorno.

Respuesta

Si se ejecuta correctamente, la respuesta estará vacía.

Borrar entornos

Recursos

Entorno

Es un entorno de ejecución para un agente.

Campos

created cadena  (opcional)

Solo salida. Fecha y hora en que se creó el entorno en formato ISO 8601 (AAAA-MM-DDThh:mm:ssZ).

file_count cadena  (opcional)

Solo salida. Es la cantidad de archivos en el entorno (solo salida).

id cadena  (opcional)

Obligatorio. Solo salida. Es el ID del entorno.

last_accessed cadena  (opcional)

Solo salida. Fecha y hora en que se accedió al entorno por última vez en formato ISO 8601 (AAAA-MM-DDThh:mm:ssZ).

network EnvironmentNetworkEgressAllowlist o enum (cadena)  (opcional)

Es la configuración de red del entorno.

Es la configuración de redes salientes para la zona de pruebas. Acepta un objeto con un array de "lista de entidades permitidas" para restringir el tráfico o la cadena "disabled" para desactivar todo el acceso a la red. Omite por completo para permitir todo el tráfico saliente sin inserción de encabezados.

Tipos posibles

object

Es la configuración de redes salientes para la zona de pruebas. Cuando se especifica, restringe los dominios externos a los que puede acceder la zona de pruebas. Omite por completo para permitir todo el tráfico saliente sin inserción de encabezados.

allowlist array (AllowlistEntry)  (opcional)

Es la lista de dominios externos permitidos. Solo se permiten las solicitudes a los dominios incluidos en la lista. Usa [{'domain': '*'}] para permitir todos los dominios y, al mismo tiempo, insertar encabezados en los específicos.

Es una sola regla de lista de entidades permitidas de dominio con inserción de encabezado opcional.

Campos

domain cadena  (opcional)

Es el dominio al que se permiten las solicitudes salientes. Admite comodines (p.ej., "*.googleapis.com"). Usa "*" para permitir todos los dominios.

transform array (objeto) o objeto  (opcional)

Encabezados que se insertarán en todas las solicitudes salientes que coincidan con este dominio. Acepta un solo diccionario o una lista de diccionarios. El proxy de salida los inserta automáticamente.

string

Apaga toda la red.

Valores posibles

  • disabled

    Apaga toda la red.

size_bytes cadena  (opcional)

Solo salida. Es el tamaño total de los archivos del entorno en bytes (solo salida).

sources array (Source)  (opcional)

Son las fuentes que se deben montar en el entorno.

Es una fuente que se debe montar en el entorno.

Campos

content string  (opcional)

Es el contenido intercalado si `type` es `INLINE`.

encoding string  (opcional)

Es la codificación opcional para el contenido intercalado (p.ej., "base64").

source cadena  (opcional)

Es la fuente del entorno. En el caso de Cloud Storage, esta es la ruta de Cloud Storage. En el caso de GitHub, es la ruta de acceso de GitHub.

target cadena  (opcional)

Es la ubicación en la que debe aparecer la fuente en el entorno.

type enum (string)  (opcional)

No se proporcionó la descripción.

Valores posibles:

  • gcs

    Un bucket de Cloud Storage

  • inline

    Contenido intercalado.

  • repository

    Es un repositorio genérico. El prefijo del protocolo en la URL de origen identifica al proveedor (p.ej., github://, gcs://).

status enum (cadena)  (opcional)

Solo salida. Es el estado del contenedor del entorno.

Valores posibles:

  • active

    Solo salida. Es el estado del contenedor del entorno.

  • expired

    Solo salida. Es el estado del contenedor del entorno.

updated string  (opcional)

Solo salida. Fecha y hora en la que se actualizó el entorno por última vez en formato ISO 8601 (AAAA-MM-DDThh:mm:ssZ).