Menggunakan kunci API untuk mengakses API

Halaman ini menjelaskan cara menggunakan kunci API untuk mengakses Google Cloud API dan layanan yang menerima kunci API.

Tidak semua Google Cloud API menerima kunci API untuk mengizinkan penggunaan. Tinjau dokumentasi layanan atau API yang ingin Anda gunakan untuk menentukan apakah kode menerima kunci API.

Untuk informasi tentang cara membuat dan mengelola kunci API, termasuk membatasi Kunci API, lihat Mengelola kunci API.

Untuk mengetahui informasi tentang cara menggunakan kunci API dengan Google Maps Platform, lihat dokumentasi Google Maps Platform. Untuk informasi selengkapnya tentang API Keys API, lihat Dokumentasi API Keys API.

Menggunakan kunci API dengan REST

Anda dapat meneruskan kunci API ke dalam panggilan REST API sebagai parameter kueri dengan format berikut. Ganti API_KEY dengan string kunci dari kunci API Anda.

Misalnya, untuk meneruskan kunci API bagi permintaan Cloud Natural Language API untuk documents.analyzeEntities:

POST https://language.googleapis.com/v1/documents:analyzeEntities?key=API_KEY

Atau, Anda dapat menggunakan header x-goog-api-key untuk meneruskan kunci. Header ini harus digunakan dengan permintaan gRPC.

curl -X POST \
    -H "X-goog-api-key: API_KEY" \
    -H "Content-Type: application/json; charset=utf-8" \
    -d @request.json \
    "https://translation.googleapis.com/language/translate/v2"

Menggunakan kunci API dengan library klien

Dukungan library klien untuk kunci API bersifat spesifik per bahasa.

Contoh ini menggunakan Cloud Natural Language API, yang mendukung kunci API untuk autentikasi, untuk menunjukkan cara menyediakan kunci API ke library.

Python

Untuk menjalankan contoh ini, Anda harus menginstal Library klien Natural Language dan library klien Kunci API.


from google.cloud import language_v1


def authenticate_with_api_key(api_key_string: str) -> None:
    """
    Authenticates with an API key for Google Language service.

    TODO(Developer): Replace this variable before running the sample.

    Args:
        api_key_string: The API key to authenticate to the service.
    """

    # Initialize the Language Service client and set the API key
    client = language_v1.LanguageServiceClient(
        client_options={"api_key": api_key_string}
    )

    text = "Hello, world!"
    document = language_v1.Document(
        content=text, type_=language_v1.Document.Type.PLAIN_TEXT
    )

    # Make a request to analyze the sentiment of the text.
    sentiment = client.analyze_sentiment(
        request={"document": document}
    ).document_sentiment

    print(f"Text: {text}")
    print(f"Sentiment: {sentiment.score}, {sentiment.magnitude}")
    print("Successfully authenticated using the API key")

Node.js

Untuk menjalankan contoh ini, Anda harus menginstal Library klien Natural Language dan library klien Kunci API](/nodejs/docs/reference/apikeys/latest).


const {
  v1: {LanguageServiceClient},
} = require('@google-cloud/language');

/**
 * Authenticates with an API key for Google Language service.
 *
 * @param {string} apiKey An API Key to use
 */
async function authenticateWithAPIKey(apiKey) {
  const language = new LanguageServiceClient({apiKey});

  // Alternatively:
  // const auth = new GoogleAuth({apiKey});
  // const {GoogleAuth} = require('google-auth-library');
  // const language = new LanguageServiceClient({auth});

  const text = 'Hello, world!';

  const [response] = await language.analyzeSentiment({
    document: {
      content: text,
      type: 'PLAIN_TEXT',
    },
  });

  console.log(`Text: ${text}`);
  console.log(
    `Sentiment: ${response.documentSentiment.score}, ${response.documentSentiment.magnitude}`
  );
  console.log('Successfully authenticated using the API key');
}

authenticateWithAPIKey();

Saat Anda menggunakan kunci API di aplikasi, pastikan kunci tersebut tetap aman selama penyimpanan dan transmisi. Menampilkan kunci API kepada publik dapat menyebabkan tagihan tidak terduga pada akun Anda. Untuk informasi selengkapnya, lihat Praktik terbaik untuk mengelola kunci API.

Langkah selanjutnya