Membuat API
Prasyarat
Sebelum dapat membuat API di API Gateway, pastikan Anda telah:
- Menyiapkan lingkungan pengembangan Anda seperti yang dijelaskan dalam Mengonfigurasi lingkungan pengembangan Anda.
Persyaratan ID API
Banyak perintah gcloud yang ditampilkan mengharuskan Anda menentukan ID API, dalam bentuk: API_ID.
API Gateway menerapkan persyaratan berikut untuk ID API:
- Harus memiliki panjang maksimum 63 karakter.
- Hanya boleh berisi huruf kecil, angka, atau tanda hubung.
- Tidak boleh diawali dengan tanda hubung.
- Tidak boleh berisi garis bawah.
Membuat API
Untuk membuat API:
Validasi project ID yang ditampilkan dari perintah berikut untuk memastikan bahwa layanan tidak dibuat di project yang salah.
gcloud config list project
Jika Anda perlu mengubah project default, jalankan perintah berikut dan ganti PROJECT_ID dengan project ID tempat Anda ingin membuat layanan: Google Cloud
gcloud config set project PROJECT_ID
Jika project ID Anda berisi titik dua (
:), lihat Project cakupan domain untuk mengetahui detail tambahan tentang pembuatan API di project Anda.Melihat bantuan untuk perintah
apis create:gcloud api-gateway apis create --help
Jalankan perintah berikut untuk membuat API:
gcloud api-gateway apis create API_ID
dengan:
- API_ID menentukan ID API baru. Lihat persyaratan ID API untuk mengetahui pedoman penamaan API.
Saat membuat API, API Gateway akan menampilkan informasi ke terminal.
Setelah berhasil diselesaikan, Anda dapat menggunakan perintah berikut untuk melihat detail tentang API baru:
gcloud api-gateway apis describe API_ID
Perintah ini menampilkan hal berikut:
createTime: '2020-02-29T21:52:20.297426875Z' displayName: API_ID managedService: MANAGED_SERVICE_NAME.apigateway.PROJECT_ID.cloud.goog name: projects/PROJECT_ID/locations/global/apis/API_ID state: ACTIVE updateTime: '2020-02-29T21:52:20.647923711Z'
Opsi gcloud
Google Cloud CLI memiliki banyak opsi, termasuk yang dijelaskan dalam Referensi gcloud. Selain itu, untuk API Gateway, Anda dapat menetapkan opsi berikut saat membuat API:
--async: Segera kembalikan kontrol ke terminal, tanpa menunggu operasi selesai.--display-name=NAME: Menentukan nama tampilan API, yang berarti nama yang ditampilkan di UI. Jangan gunakan spasi dalam nama. Gunakan tanda hubung dan garis bawah sebagai gantinya. Nilai defaultnya adalah API_ID.--labels=KEY1=VALUE1,KEY2=VALUE2,...: Menentukan label yang terkait dengan konfigurasi API.--managed-service: Menentukan layanan terkelola yang sudah ada (misalnya, layanan Endpoints yang sudah ada) untuk API.
Project cakupan domain
Jika project Anda dicakup ke domain Anda, project ID akan menyertakan nama
domain yang diikuti dengan titik dua (:), misalnya, example.com:my-project. Anda
harus menyediakan layanan terkelola yang valid saat membuat API di project
cakupan domain.
Jika menggunakan gcloud, berikan nama layanan terkelola menggunakan
flag --managed-service, seperti yang dijelaskan dalam
opsi gcloud.
API Listingan
Untuk mencantumkan semua API dalam project:
gcloud api-gateway apis list
Perintah ini menampilkan output dalam bentuk:
NAME DISPLAY_NAME MANAGED_SERVICE STATE projects/PROJECT_ID/locations/global/apis/API_ID API_ID MANAGED_SERVICE_NAME.apigateway.PROJECT_ID.cloud.goog ACTIVE
Gunakan ID API untuk mendapatkan informasi mendetail tentang API:
gcloud api-gateway apis describe API_ID
Memperbarui API
Setelah pembuatan, Anda dapat memperbarui label dan nama tampilan API yang ada.
Gunakan opsi gcloud berikut untuk memperbarui API yang ada:
--display-name--update-labels--clear-labels--remove-labels
Contoh:
gcloud api-gateway apis update API_ID \ --update-labels=a=1,b=2
Gunakan perintah berikut untuk melihat semua opsi update:
gcloud api-gateway apis update --help
Menghapus API
Untuk menghapus API, Anda harus:
- Hapus konfigurasi API yang terkait dengan API.
- Hapus API.
Untuk menghapus API:
Tentukan daftar konfigurasi API yang terkait dengan API:
gcloud api-gateway api-configs list --api=API_ID
Hapus setiap konfigurasi API yang terkait dengan API:
gcloud api-gateway api-configs delete CONFIG_ID --api=API_ID
Hapus API:
gcloud api-gateway apis delete API_ID