Gemini API anahtarlarını kullanma

Gemini API'yi kullanmak için API anahtarı gerekir. Google Yapay Zeka Studio'da birkaç tıklamayla ücretsiz olarak anahtar oluşturabilirsiniz.

API anahtarınız olduğunda Gemini API'ye bağlanmak için aşağıdaki seçenekleri kullanabilirsiniz:

İlk test için bir API anahtarını sabit kodlayabilirsiniz ancak bu işlem güvenli olmadığından yalnızca geçici olarak yapılmalıdır. API anahtarını sabit kodlamayla ilgili örnekleri API anahtarını açıkça sağlama bölümünde bulabilirsiniz.

API anahtarını ortam değişkeni olarak ayarlama

GEMINI_API_KEY veya GOOGLE_API_KEY ortam değişkenini ayarlarsanız Gemini API kitaplıklarından birini kullanırken API anahtarı istemci tarafından otomatik olarak alınır. Bu değişkenlerden yalnızca birini ayarlamanız önerilir. Ancak her ikisi de ayarlanırsa GOOGLE_API_KEY öncelikli olur.

REST API'yi veya tarayıcıda JavaScript'i kullanıyorsanız API anahtarını açıkça sağlamanız gerekir.

API anahtarınızı farklı işletim sistemlerinde ortam değişkeni olarak yerel olarak nasıl ayarlayabileceğinizi aşağıda bulabilirsiniz. GEMINI_API_KEY

Linux/macOS - Bash

Bash, yaygın bir Linux ve macOS terminal yapılandırmasıdır. Aşağıdaki komutu çalıştırarak yapılandırma dosyanızın olup olmadığını kontrol edebilirsiniz:

~/.bashrc

Yanıt "No such file or directory" (Böyle bir dosya veya dizin yok) ise bu dosyayı oluşturmanız ve aşağıdaki komutları çalıştırarak açmanız ya da zsh kullanmanız gerekir:

touch ~/.bashrc
open ~/.bashrc

Ardından, aşağıdaki dışa aktarma komutunu ekleyerek API anahtarınızı ayarlamanız gerekir:

export GEMINI_API_KEY=<YOUR_API_KEY_HERE>

Dosyayı kaydettikten sonra aşağıdaki komutu çalıştırarak değişiklikleri uygulayın:

source ~/.bashrc

macOS - Zsh

Zsh, yaygın bir Linux ve macOS terminal yapılandırmasıdır. Aşağıdaki komutu çalıştırarak yapılandırma dosyanızın olup olmadığını kontrol edebilirsiniz:

~/.zshrc

Yanıt "No such file or directory" (Böyle bir dosya veya dizin yok) ise bu dosyayı oluşturmanız ve aşağıdaki komutları çalıştırarak açmanız ya da bash kullanmanız gerekir:

touch ~/.zshrc
open ~/.zshrc

Ardından, aşağıdaki dışa aktarma komutunu ekleyerek API anahtarınızı ayarlamanız gerekir:

export GEMINI_API_KEY=<YOUR_API_KEY_HERE>

Dosyayı kaydettikten sonra aşağıdaki komutu çalıştırarak değişiklikleri uygulayın:

source ~/.zshrc

Windows

  1. Sistem ayarlarında "Environment Variables" (Ortam Değişkenleri) ifadesini arayın.
  2. "Kullanıcı değişkenleri"ni (mevcut kullanıcı için) veya "Sistem değişkenleri"ni (tüm kullanıcılar için; dikkatli kullanın) düzenleyin.
  3. Değişkeni oluşturun ve export GEMINI_API_KEY=your_key_here ekleyin
  4. Değişiklikleri uygulama

API anahtarını açıkça sağlama

Bazı durumlarda, API anahtarını açıkça sağlamak isteyebilirsiniz. Örneğin:

  • Basit bir API çağrısı yapıyorsunuz ve API anahtarını sabit kodlamayı tercih ediyorsunuz.
  • Gemini API kitaplıklarının ortam değişkenlerini otomatik olarak keşfetmesine güvenmek zorunda kalmadan açıkça kontrol etmek istiyorsanız
  • Ortam değişkenlerinin desteklenmediği bir ortam (ör.web) kullanıyorsunuz veya REST çağrıları yapıyorsunuz.

Aşağıda, API anahtarını açıkça nasıl sağlayabileceğinize dair örnekler verilmiştir:

Python

from google import genai

client = genai.Client(api_key="YOUR_API_KEY")

response = client.models.generate_content(
    model="gemini-2.5-flash", contents="Explain how AI works in a few words"
)
print(response.text)

JavaScript

import { GoogleGenAI } from "@google/genai";

const ai = new GoogleGenAI({ apiKey: "YOUR_API_KEY" });

async function main() {
  const response = await ai.models.generateContent({
    model: "gemini-2.5-flash",
    contents: "Explain how AI works in a few words",
  });
  console.log(response.text);
}

main();

Go

package main

import (
    "context"
    "fmt"
    "log"
    "google.golang.org/genai"
)

func main() {
    ctx := context.Background()
    client, err := genai.NewClient(ctx, &genai.ClientConfig{
        APIKey:  "YOUR_API_KEY",
        Backend: genai.BackendGeminiAPI,
    })
    if err != nil {
        log.Fatal(err)
    }

    result, err := client.Models.GenerateContent(
        ctx,
        "gemini-2.5-flash",
        genai.Text("Explain how AI works in a few words"),
        nil,
    )
    if err != nil {
        log.Fatal(err)
    }
    fmt.Println(result.Text())
}

Java

package com.example;

import com.google.genai.Client;
import com.google.genai.types.GenerateContentResponse;

public class GenerateTextFromTextInput {
  public static void main(String[] args) {
    Client client = Client.builder().apiKey("YOUR_API_KEY").build();

    GenerateContentResponse response =
        client.models.generateContent(
            "gemini-2.5-flash",
            "Explain how AI works in a few words",
            null);

    System.out.println(response.text());
  }
}

REST

curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent?key=$YOUR_API_KEY" \
  -H 'Content-Type: application/json' \
  -X POST \
  -d '{
    "contents": [
      {
        "parts": [
          {
            "text": "Explain how AI works in a few words"
          }
        ]
      }
    ]
  }'

API anahtarınızın güvenliğini sağlama

Gemini API anahtarınızı şifre gibi kullanın. Tehlikeye girerse başkaları projenizin kotasını kullanabilir, ücretlere neden olabilir (faturalandırma etkinse) ve dosyalar gibi özel verilerinize erişebilir.

Önemli güvenlik kuralları

  • API anahtarlarını asla kaynak kontrolüne işlemeyin. API anahtarınızı Git gibi sürüm kontrol sistemlerine eklemeyin.

  • API anahtarlarını hiçbir zaman istemci tarafında kullanmayın. API anahtarınızı üretimdeki web veya mobil uygulamalarda doğrudan kullanmayın. İstemci tarafı kodundaki anahtarlar (JavaScript/TypeScript kitaplıklarımız ve REST çağrıları dahil) ayıklanabilir.

En iyi uygulamalar

  • API anahtarlarıyla sunucu tarafı çağrıları kullanma API anahtarınızı kullanmanın en güvenli yolu, anahtarın gizli tutulabileceği bir sunucu tarafı uygulamasından Gemini API'yi çağırmaktır.

  • İstemci tarafı erişim için kısa ömürlü jetonlar kullanma (yalnızca Live API): Live API'ye doğrudan istemci tarafı erişim için kısa ömürlü jetonlar kullanabilirsiniz. Daha düşük güvenlik riskleri içerir ve üretimde kullanıma uygundur. Daha fazla bilgi için geçici jetonlar kılavuzunu inceleyin.

  • Anahtarınıza kısıtlamalar eklemeyi düşünün: API anahtarı kısıtlamaları ekleyerek anahtarın izinlerini sınırlayabilirsiniz. Bu, anahtarın sızdırılması durumunda olası zararı en aza indirir.

Genel en iyi uygulamalar için bu destek makalesini de inceleyebilirsiniz.