Gemini Environments API

Ortamlar, aracı kodunu, araçları ve hizmetleri güvenli bir şekilde çalıştırmak için yalıtılmış yürütme bağlamları sağlar.

CreateEnvironment

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

Ortam oluşturur.

İstek metni

İstek içeriği aşağıdaki yapıyla birlikte verileri içerir:

network EnvironmentNetworkEgressAllowlist veya enum (dize)  (isteğe bağlı)

Ortam için ağ yapılandırması.

Korumalı alan için giden ağ yapılandırması. Trafiği kısıtlamak için "allowlist" dizisine sahip bir nesneyi veya tüm ağ erişimini kapatmak için "disabled" dizesini kabul eder. Başlık eklenmeden giden tüm trafiğe izin vermek için tamamen atlayın.

Olası Türler

object

Korumalı alan için giden ağ yapılandırması. Belirtildiğinde, korumalı alanın hangi harici alanlara ulaşabileceğini kısıtlar. Başlık eklenmeden giden tüm trafiğe izin vermek için tamamen atlayın.

allowlist array (AllowlistEntry)  (isteğe bağlı)

İzin verilen giden alan adlarının listesi. Yalnızca listelenen alanlara yapılan isteklere izin verilir. Belirli alanlara başlık eklemeye devam ederken tüm alanlara izin vermek için [{'domain': '*'}] kullanın.

İsteğe bağlı başlık yerleştirme içeren tek bir alan adı izin verilenler listesi kuralı.

Alanlar

domain dize  (isteğe bağlı)

Giden isteklere izin verilecek alan adı. Joker karakterleri (ör. "*.googleapis.com") destekler. Tüm alan adlarına izin vermek için "*" kullanın.

transform array (object) or object  (isteğe bağlı)

Bu alanla eşleşen tüm giden isteklere eklenecek üstbilgiler. Tek bir sözlük veya sözlük listesi kabul eder. Çıkış proxy'si bunları otomatik olarak ekler.

dize

Tüm ağları kapatır.

Olası değerler

  • disabled

    Tüm ağları kapatır.

sources array (Kaynak)  (isteğe bağlı)

Ortama monte edilecek kaynaklar.

Ortama monte edilecek bir kaynak.

Alanlar

content string  (isteğe bağlı)

"type" değeri "INLINE" ise satır içi içerik.

encoding string  (isteğe bağlı)

Satır içi içerik için isteğe bağlı kodlama (ör. `base64`).

source dize  (isteğe bağlı)

Ortamın kaynağı. Cloud Storage için bu, Cloud Storage yoludur. GitHub için bu, GitHub yoludur.

target dize  (isteğe bağlı)

Kaynağın ortamda nerede görüneceği.

type enum (string)  (isteğe bağlı)

Hiçbir açıklama sağlanmadı.

Olası değerler:

  • gcs

    Cloud Storage paketi.

  • inline

    Satır içi içerik.

  • repository

    Genel bir depo. Kaynak URL'deki protokol öneki, sağlayıcıyı tanımlar (ör. github://, gcs://).

Yanıt

Başarılı olursa yanıt metni aşağıdaki yapıyla birlikte verileri içerir:

created string  (isteğe bağlı)

Yalnızca çıkış. Ortamın oluşturulduğu zaman (ISO 8601 biçiminde) (YYYY-AA-GGTss:dd:ssZ).

file_count dize  (isteğe bağlı)

Yalnızca çıkış. Ortamdaki dosyaların sayısı (yalnızca çıkış).

id dize  (isteğe bağlı)

Zorunlu. Yalnızca çıkış. Ortamın kimliği.

last_accessed string  (isteğe bağlı)

Yalnızca çıkış. Ortama en son erişilen zaman (ISO 8601 biçiminde: YYYY-AA-GGTsa:dk:snZ).

network EnvironmentNetworkEgressAllowlist veya enum (dize)  (isteğe bağlı)

Ortam için ağ yapılandırması.

Korumalı alan için giden ağ yapılandırması. Trafiği kısıtlamak için "allowlist" dizisine sahip bir nesneyi veya tüm ağ erişimini kapatmak için "disabled" dizesini kabul eder. Başlık eklenmeden giden tüm trafiğe izin vermek için tamamen atlayın.

Olası Türler

object

Korumalı alan için giden ağ yapılandırması. Belirtildiğinde, korumalı alanın hangi harici alanlara ulaşabileceğini kısıtlar. Başlık eklenmeden giden tüm trafiğe izin vermek için tamamen atlayın.

allowlist array (AllowlistEntry)  (isteğe bağlı)

İzin verilen giden alan adlarının listesi. Yalnızca listelenen alanlara yapılan isteklere izin verilir. Belirli alanlara başlık eklemeye devam ederken tüm alanlara izin vermek için [{'domain': '*'}] kullanın.

İsteğe bağlı başlık yerleştirme içeren tek bir alan adı izin verilenler listesi kuralı.

Alanlar

domain dize  (isteğe bağlı)

Giden isteklere izin verilecek alan adı. Joker karakterleri (ör. "*.googleapis.com") destekler. Tüm alan adlarına izin vermek için "*" kullanın.

transform array (object) or object  (isteğe bağlı)

Bu alanla eşleşen tüm giden isteklere eklenecek üstbilgiler. Tek bir sözlük veya sözlük listesi kabul eder. Çıkış proxy'si bunları otomatik olarak ekler.

dize

Tüm ağları kapatır.

Olası değerler

  • disabled

    Tüm ağları kapatır.

size_bytes dize  (isteğe bağlı)

Yalnızca çıkış. Bayt cinsinden ortam dosyalarının toplam boyutu (yalnızca çıkış).

sources array (Kaynak)  (isteğe bağlı)

Ortama monte edilecek kaynaklar.

Ortama monte edilecek bir kaynak.

Alanlar

content string  (isteğe bağlı)

"type" değeri "INLINE" ise satır içi içerik.

encoding string  (isteğe bağlı)

Satır içi içerik için isteğe bağlı kodlama (ör. `base64`).

source dize  (isteğe bağlı)

Ortamın kaynağı. Cloud Storage için bu, Cloud Storage yoludur. GitHub için bu, GitHub yoludur.

target dize  (isteğe bağlı)

Kaynağın ortamda nerede görüneceği.

type enum (string)  (isteğe bağlı)

Hiçbir açıklama sağlanmadı.

Olası değerler:

  • gcs

    Cloud Storage paketi.

  • inline

    Satır içi içerik.

  • repository

    Genel bir depo. Kaynak URL'deki protokol öneki, sağlayıcıyı tanımlar (ör. github://, gcs://).

status enum (string)  (isteğe bağlı)

Yalnızca çıkış. Ortam kapsayıcısının durumu.

Olası değerler:

  • active

    Yalnızca çıkış. Ortam kapsayıcısının durumu.

  • expired

    Yalnızca çıkış. Ortam kapsayıcısının durumu.

updated string  (isteğe bağlı)

Yalnızca çıkış. Ortamın en son güncellendiği zaman (ISO 8601 biçiminde: YYYY-AA-GGTsa:dk:snZ).

Ortam Oluştur

Örnek Yanıt

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

Ortamları listeler.

Yol / Sorgu Parametreleri

page_size integer  (isteğe bağlı)

İsteğe bağlı. Döndürülecek maksimum ortam sayısı. Belirtilmezse varsayılan olarak 50 olur. Maksimum 1.000 olabilir.

page_token string  (isteğe bağlı)

İsteğe bağlı. Sayfalama jetonu.

Yanıt

Başarılı olursa yanıt metni aşağıdaki yapıyla birlikte verileri içerir:

environments dizi (Environment)  (isteğe bağlı)

Belirtilen projeye ait ortamlar.

next_page_token dize  (isteğe bağlı)

Sayfalama jetonu.

Ortamları Listeleme

Örnek Yanıt

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

Bir ortamın anlık görüntüsünden dosya meta verilerini veya dizin içeriklerini alır. Dosya içeriklerini doğrudan indirmek için ?alt=media parametresini iletin veya files.download yardımcısını kullanın.

Yol / Sorgu Parametreleri

page_size integer  (isteğe bağlı)

İsteğe bağlı. Sayfa başına döndürülecek maksimum giriş sayısı (dizin listelemesi için).

page_token string  (isteğe bağlı)

İsteğe bağlı. Dizin listelemesi için sayfalara ayırma jetonu.

recursive boolean  (isteğe bağlı)

İsteğe bağlı. Doğruysa ve yol bir dizinse tüm dosyaları tekrar tekrar listeler.

Yanıt

Başarılı olursa yanıt metni aşağıdaki yapıyla birlikte verileri içerir:

files array (EnvironmentFile)  (isteğe bağlı)

İstenen yol bir dizinse bu, içeriğini içerir. İstenen yol bir dosyaysa bu, dosyanın meta verilerini içeren tek bir giriş içerir. alt=media belirtilmişse bu alan boştur (içerik "blob" aracılığıyla sunulur).

Bir ortamdaki dosya veya dizinin meta verileri.

Alanlar

created string  (isteğe bağlı)

Yalnızca çıkış. Dosyanın/dizinin oluşturulma zamanı.

mime_type dize  (isteğe bağlı)

Yalnızca çıkış. Dosyanın MIME türü (ör. "text/python", "image/png"). Dizinler için boş. NOLINT

modified string  (isteğe bağlı)

Yalnızca çıkış. Dosyanın/dizinin değiştirilme zamanı.

name string  (isteğe bağlı)

Yalnızca çıkış. Dosyanın veya dizinin adı (ör. "main.py" veya "src").

path string  (isteğe bağlı)

Yalnızca çıkış. Ortamdaki tam göreli yol (ör. "workspace/src/main.py").

size_bytes dize  (isteğe bağlı)

Yalnızca çıkış. Dosyanın/dizinin bayt cinsinden boyutu. NOLINT

type enum (string)  (isteğe bağlı)

Yalnızca çıkış. Girişin türü.

Olası değerler:

  • file

    Normal bir dosya.

  • directory

    Dizin.

next_page_token dize  (isteğe bağlı)

Dizin listelemesi için sayfalara ayırma jetonu. NOLINT

Ortamdaki Dosyaları Listeleme

Örnek Yanıt

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

Dosya meta verilerini alma

Örnek Yanıt

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

Dosya İçeriğini İndirme

Örnek Yanıt

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

Bir ortamı alır.

Yanıt

Başarılı olursa yanıt metni aşağıdaki yapıyla birlikte verileri içerir:

created string  (isteğe bağlı)

Yalnızca çıkış. Ortamın oluşturulduğu zaman (ISO 8601 biçiminde) (YYYY-AA-GGTss:dd:ssZ).

file_count dize  (isteğe bağlı)

Yalnızca çıkış. Ortamdaki dosyaların sayısı (yalnızca çıkış).

id dize  (isteğe bağlı)

Zorunlu. Yalnızca çıkış. Ortamın kimliği.

last_accessed string  (isteğe bağlı)

Yalnızca çıkış. Ortama en son erişilen zaman (ISO 8601 biçiminde: YYYY-AA-GGTsa:dk:snZ).

network EnvironmentNetworkEgressAllowlist veya enum (dize)  (isteğe bağlı)

Ortam için ağ yapılandırması.

Korumalı alan için giden ağ yapılandırması. Trafiği kısıtlamak için "allowlist" dizisine sahip bir nesneyi veya tüm ağ erişimini kapatmak için "disabled" dizesini kabul eder. Başlık eklenmeden giden tüm trafiğe izin vermek için tamamen atlayın.

Olası Türler

object

Korumalı alan için giden ağ yapılandırması. Belirtildiğinde, korumalı alanın hangi harici alanlara ulaşabileceğini kısıtlar. Başlık eklenmeden giden tüm trafiğe izin vermek için tamamen atlayın.

allowlist array (AllowlistEntry)  (isteğe bağlı)

İzin verilen giden alan adlarının listesi. Yalnızca listelenen alanlara yapılan isteklere izin verilir. Belirli alanlara başlık eklemeye devam ederken tüm alanlara izin vermek için [{'domain': '*'}] kullanın.

İsteğe bağlı başlık yerleştirme içeren tek bir alan adı izin verilenler listesi kuralı.

Alanlar

domain dize  (isteğe bağlı)

Giden isteklere izin verilecek alan adı. Joker karakterleri (ör. "*.googleapis.com") destekler. Tüm alan adlarına izin vermek için "*" kullanın.

transform array (object) or object  (isteğe bağlı)

Bu alanla eşleşen tüm giden isteklere eklenecek üstbilgiler. Tek bir sözlük veya sözlük listesi kabul eder. Çıkış proxy'si bunları otomatik olarak ekler.

dize

Tüm ağları kapatır.

Olası değerler

  • disabled

    Tüm ağları kapatır.

size_bytes dize  (isteğe bağlı)

Yalnızca çıkış. Bayt cinsinden ortam dosyalarının toplam boyutu (yalnızca çıkış).

sources array (Kaynak)  (isteğe bağlı)

Ortama monte edilecek kaynaklar.

Ortama monte edilecek bir kaynak.

Alanlar

content string  (isteğe bağlı)

"type" değeri "INLINE" ise satır içi içerik.

encoding string  (isteğe bağlı)

Satır içi içerik için isteğe bağlı kodlama (ör. `base64`).

source dize  (isteğe bağlı)

Ortamın kaynağı. Cloud Storage için bu, Cloud Storage yoludur. GitHub için bu, GitHub yoludur.

target dize  (isteğe bağlı)

Kaynağın ortamda nerede görüneceği.

type enum (string)  (isteğe bağlı)

Hiçbir açıklama sağlanmadı.

Olası değerler:

  • gcs

    Cloud Storage paketi.

  • inline

    Satır içi içerik.

  • repository

    Genel bir depo. Kaynak URL'deki protokol öneki, sağlayıcıyı tanımlar (ör. github://, gcs://).

status enum (string)  (isteğe bağlı)

Yalnızca çıkış. Ortam kapsayıcısının durumu.

Olası değerler:

  • active

    Yalnızca çıkış. Ortam kapsayıcısının durumu.

  • expired

    Yalnızca çıkış. Ortam kapsayıcısının durumu.

updated string  (isteğe bağlı)

Yalnızca çıkış. Ortamın en son güncellendiği zaman (ISO 8601 biçiminde: YYYY-AA-GGTsa:dk:snZ).

Ortam Alma

Örnek Yanıt

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

Bir ortamı siler.

Yanıt

Başarılı olursa yanıt boş olur.

Ortam Silme

Kaynaklar

Ortam

Bir aracı için yürütme ortamı.

Alanlar

created string  (isteğe bağlı)

Yalnızca çıkış. Ortamın oluşturulduğu zaman (ISO 8601 biçiminde) (YYYY-AA-GGTss:dd:ssZ).

file_count dize  (isteğe bağlı)

Yalnızca çıkış. Ortamdaki dosyaların sayısı (yalnızca çıkış).

id dize  (isteğe bağlı)

Zorunlu. Yalnızca çıkış. Ortamın kimliği.

last_accessed string  (isteğe bağlı)

Yalnızca çıkış. Ortama en son erişilen zaman (ISO 8601 biçiminde: YYYY-AA-GGTsa:dk:snZ).

network EnvironmentNetworkEgressAllowlist veya enum (dize)  (isteğe bağlı)

Ortam için ağ yapılandırması.

Korumalı alan için giden ağ yapılandırması. Trafiği kısıtlamak için "allowlist" dizisine sahip bir nesneyi veya tüm ağ erişimini kapatmak için "disabled" dizesini kabul eder. Başlık eklenmeden giden tüm trafiğe izin vermek için tamamen atlayın.

Olası Türler

object

Korumalı alan için giden ağ yapılandırması. Belirtildiğinde, korumalı alanın hangi harici alanlara ulaşabileceğini kısıtlar. Başlık eklenmeden giden tüm trafiğe izin vermek için tamamen atlayın.

allowlist array (AllowlistEntry)  (isteğe bağlı)

İzin verilen giden alan adlarının listesi. Yalnızca listelenen alanlara yapılan isteklere izin verilir. Belirli alanlara başlık eklemeye devam ederken tüm alanlara izin vermek için [{'domain': '*'}] kullanın.

İsteğe bağlı başlık yerleştirme içeren tek bir alan adı izin verilenler listesi kuralı.

Alanlar

domain dize  (isteğe bağlı)

Giden isteklere izin verilecek alan adı. Joker karakterleri (ör. "*.googleapis.com") destekler. Tüm alan adlarına izin vermek için "*" kullanın.

transform array (object) or object  (isteğe bağlı)

Bu alanla eşleşen tüm giden isteklere eklenecek üstbilgiler. Tek bir sözlük veya sözlük listesi kabul eder. Çıkış proxy'si bunları otomatik olarak ekler.

dize

Tüm ağları kapatır.

Olası değerler

  • disabled

    Tüm ağları kapatır.

size_bytes dize  (isteğe bağlı)

Yalnızca çıkış. Bayt cinsinden ortam dosyalarının toplam boyutu (yalnızca çıkış).

sources array (Kaynak)  (isteğe bağlı)

Ortama monte edilecek kaynaklar.

Ortama monte edilecek bir kaynak.

Alanlar

content string  (isteğe bağlı)

"type" değeri "INLINE" ise satır içi içerik.

encoding string  (isteğe bağlı)

Satır içi içerik için isteğe bağlı kodlama (ör. `base64`).

source dize  (isteğe bağlı)

Ortamın kaynağı. Cloud Storage için bu, Cloud Storage yoludur. GitHub için bu, GitHub yoludur.

target dize  (isteğe bağlı)

Kaynağın ortamda nerede görüneceği.

type enum (string)  (isteğe bağlı)

Hiçbir açıklama sağlanmadı.

Olası değerler:

  • gcs

    Cloud Storage paketi.

  • inline

    Satır içi içerik.

  • repository

    Genel bir depo. Kaynak URL'deki protokol öneki, sağlayıcıyı tanımlar (ör. github://, gcs://).

status enum (string)  (isteğe bağlı)

Yalnızca çıkış. Ortam kapsayıcısının durumu.

Olası değerler:

  • active

    Yalnızca çıkış. Ortam kapsayıcısının durumu.

  • expired

    Yalnızca çıkış. Ortam kapsayıcısının durumu.

updated string  (isteğe bağlı)

Yalnızca çıkış. Ortamın en son güncellendiği zaman (ISO 8601 biçiminde: YYYY-AA-GGTsa:dk:snZ).