Mengonfigurasi Cloud Endpoints

Cloud Endpoints mendukung API yang dijelaskan menggunakan spesifikasi OpenAPI versi 2.0. Anda menjelaskan platform API dan mengonfigurasi fitur Endpoint seperti aturan autentikasi atau kuota dalam dokumen OpenAPI.

Endpoints menggunakan kolom wajib berikut secara khusus dalam dokumen OpenAPI Anda:

  • host
  • info.title
  • info.version
  • operationId

Halaman ini memberikan informasi tentang cara Endpoints menggunakan kolom sebelumnya. Dengan informasi ini, Anda dapat menyelesaikan penyiapan dokumen OpenAPI untuk deployment.

Prasyarat

Sebagai titik awal, halaman ini mengasumsikan bahwa Anda telah:

host

Cloud Endpoints menggunakan nama yang Anda konfigurasi di kolom host dokumen OpenAPI sebagai nama layanan Anda.

Nama layanan API Anda harus unik di Google Cloud. Karena Endpoint menggunakan nama yang kompatibel dengan DNS untuk mengidentifikasi layanan, sebaiknya Anda menggunakan nama domain atau nama subdomain API sebagai nama layanan. Dengan pendekatan ini, nama layanan yang muncul di halaman Endpoints Services cocok dengan nama yang digunakan dalam permintaan ke API Anda. Selain itu, jika nama layanan dan nama domain Anda sama, Anda dapat membuat Portal Cloud Endpoints untuk pengguna API. Endpoint memiliki persyaratan berikut untuk nama layanan:

  • Panjang maksimum nama domain adalah 253 karakter.
  • Nama domain harus diawali dengan huruf kecil.
  • Setiap bagian dalam nama domain, yang dipisahkan dengan titik, memiliki persyaratan berikut:
    • Harus dimulai dengan huruf kecil.
    • Tidak boleh diakhiri dengan tanda hubung.
    • Karakter yang tersisa dapat berupa huruf kecil, angka, atau tanda hubung.
    • Panjang maksimumnya adalah 63 karakter.

Anda dapat mendaftarkan domain kustom Anda sendiri (seperti example.com), atau menggunakan domain yang dikelola oleh Google.

Menggunakan domain yang dikelola oleh Google

Google memiliki dan mengelola domain cloud.goog dan appspot.com. Jika ingin menggunakan domain yang dikelola oleh Google, Anda harus menggunakan project ID Google Cloud sebagai bagian dari nama layanan. Karena project Google Cloud memiliki project ID yang unik secara global, persyaratan ini memastikan bahwa Anda memiliki nama layanan yang unik.

Nama domain yang Anda gunakan bergantung pada backend yang menghosting API Anda:

  • Untuk API yang dihosting di lingkungan fleksibel App Engine, Anda harus menggunakan domain appspot.com, dan nama layanan harus dalam format berikut, dengan YOUR_PROJECT_ID adalah project ID Google Cloud Anda:

    YOUR_PROJECT_ID.appspot.com
    

    Saat Anda men-deploy API ke App Engine, entri DNS dengan nama dalam format YOUR_PROJECT_ID.appspot.com akan dibuat secara otomatis.

  • Untuk API yang dihosting di Compute Engine, Google Kubernetes Engine, atau Kubernetes, Anda harus menggunakan domain cloud.goog, dan nama layanan harus dalam format berikut, dengan YOUR_API_NAME adalah nama API Anda:

    YOUR_API_NAME.endpoints.YOUR_PROJECT_ID.cloud.goog
    

    Untuk menggunakan domain ini sebagai nama domain API, baca Mengonfigurasi DNS di domain cloud.goog.

Menggunakan domain kustom

Jika tidak ingin menggunakan domain yang dikelola oleh Google, Anda dapat menggunakan domain kustom (misalnya, myapi.mycompany.com) yang diizinkan untuk Anda gunakan. Sebelum men-deploy konfigurasi API, ikuti langkah-langkah di bagian Memverifikasi kepemilikan domain.

info.title

Kolom info.title adalah nama yang mudah digunakan untuk API Anda. Halaman Endpoints > Services di konsol Google Cloud menampilkan teks yang Anda konfigurasikan di kolom info.title. Jika Anda memiliki lebih dari satu API per project Google Cloud, nama API akan ditampilkan dalam daftar saat Anda pertama kali membuka halaman. Anda dapat mengklik nama API untuk membuka halaman lain yang menampilkan metrik API, histori deployment, dan informasi lainnya.

info.version

Halaman Endpoints > Services di Konsol Google Cloud menampilkan nomor versi untuk API Anda. Sebelum men-deploy konfigurasi API untuk pertama kalinya:

  • Tetapkan nomor versi di kolom info.version ke versi API yang berlaku,misalnya, 1.0.

  • Tetapkan kolom basePath ke nomor versi utama, misalnya, /v1.

Untuk informasi tambahan tentang pembuatan versi API, lihat Pengelolaan siklus proses API.

operationId

Meskipun operationId adalah kolom opsional dalam Spesifikasi OpenAPI, Endpoint memerlukan kolom ini karena digunakan untuk identifikasi internal operasi. String yang Anda gunakan untuk operationId harus unik dalam API Anda. Lihat deskripsi untuk operationId dalam Spesifikasi OpenAPI untuk panduan penamaan.

Langkah selanjutnya