Cloud Endpoints mendukung API yang dijelaskan menggunakan spesifikasi OpenAPI versi 2.0. Anda dapat menjelaskan platform API dan mengonfigurasi fitur Endpoint seperti aturan autentikasi atau quotas dalam dokumen OpenAPI.
Endpoint menggunakan secara khusus kolom wajib diisi berikut dalam dokumen OpenAPI Anda:
host
info.title
info.version
operationId
Halaman ini memberikan informasi tentang cara Endpoint menggunakan kolom sebelumnya. Dengan informasi ini, Anda dapat menyelesaikan penyiapan dokumen OpenAPI untuk deployment.
Prasyarat
Sebagai titik awal, halaman ini mengasumsikan bahwa Anda telah:
- Project Google Cloud.
- Pengetahuan dasar tentang OpenAPI.
- Dokumen OpenAPI dalam format yang dijelaskan dalam dokumentasi Struktur dasar Swagger.
host
Cloud Endpoints menggunakan nama yang Anda konfigurasi di kolom host
pada dokumen OpenAPI sebagai nama layanan Anda.
Nama layanan API Anda di Google Cloud harus unik. Karena Endpoint menggunakan nama yang kompatibel dengan DNS untuk mengidentifikasi layanan, sebaiknya gunakan nama domain atau nama subdomain API Anda sebagai nama layanan. Dengan pendekatan ini, nama layanan yang muncul di halaman Layanan Endpoint 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 Anda. Endpoint memiliki persyaratan berikut untuk nama layanan:
- Panjang maksimum nama domain adalah 253 karakter.
- Nama domain harus dimulai dengan huruf kecil.
-
Setiap bagian dalam nama domain, yang dipisahkan dengan titik, memiliki persyaratan berikut:
- Harus diawali dengan huruf kecil.
- Tidak boleh diakhiri dengan tanda hubung.
- Karakter yang tersisa dapat berupa huruf kecil, angka, atau tanda hubung.
- Panjang maksimum adalah 63 karakter.
Anda dapat mendaftarkan domain kustom Anda sendiri (seperti example.com
), atau menggunakan domain yang dikelola oleh Google.
Gunakan domain yang dikelola oleh Google
Google memiliki dan mengelola domaincloud.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, denganYOUR_PROJECT_ID
sebagai 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 menggunakan format berikut, denganYOUR_API_NAME
sebagai 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
.
Gunakan domain kustom
Jika tidak ingin menggunakan domain yang dikelola oleh Google, Anda dapat menggunakan domain kustom (misalnya, myapi.mycompany.com
) yang diizinkan untuk digunakan.
Sebelum men-deploy konfigurasi API, ikuti langkah-langkah dalam artikel Memverifikasi kepemilikan domain.
info.title
Kolom info.title
adalah nama yang mudah digunakan untuk API Anda. Halaman
Endpoint > Layanan di Konsol Google Cloud menampilkan
teks yang Anda konfigurasi 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 Endpoint > Layanan di Konsol Google Cloud menampilkan nomor versi API Anda. Sebelum men-deploy konfigurasi API Anda 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 mengenai 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 digunakan untuk operationId
harus unik dalam API Anda. Lihat deskripsi
operationId
di Spesifikasi OpenAPI untuk mendapatkan panduan tentang penamaan.