Creazione di un'API

Prerequisiti

Prima di poter creare un'API su API Gateway, assicurati di avere:

Requisiti per l'ID API

Molti dei comandi gcloud mostrati richiedono di specificare l'ID dell'API nel formato API_ID. API Gateway applica i seguenti requisiti per l'ID API:

  • Deve avere una lunghezza massima di 63 caratteri.
  • Deve contenere solo lettere minuscole, numeri o trattini.
  • Non può iniziare con un trattino.
  • Non deve contenere un trattino basso.

Creazione di un'API

Per creare un'API:

  1. Convalida l'ID progetto restituito dal seguente comando per assicurarti che il servizio non venga creato nel progetto sbagliato.

    gcloud config list project

    Se devi modificare il progetto predefinito, esegui questo comando e sostituisci PROJECT_ID con l'ID progetto Google Cloud in cui vuoi creare il servizio:

    gcloud config set project PROJECT_ID

    Se l'ID progetto contiene due punti (:), consulta Progetti basati sul dominio per ulteriori dettagli sulla creazione di un'API nel tuo progetto.

  2. Visualizza la guida per il comando apis create:

    gcloud api-gateway apis create --help
  3. Esegui questo comando per creare l'API:

    gcloud api-gateway apis create API_ID

    dove:

    • API_ID specifica l'ID della nuova API. Per le linee guida per la denominazione delle API, consulta Requisiti per l'ID API.

    Durante la creazione dell'API, API Gateway visualizza le informazioni nel terminale.

  4. Al termine, puoi utilizzare questo comando per visualizzare i dettagli della nuova API:

    gcloud api-gateway apis describe API_ID 

    Questo comando restituisce quanto segue:

    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'

Opzioni gcloud

Google Cloud CLI accetta molte opzioni, incluse quelle descritte nella documentazione di riferimento di gcloud. Inoltre, per API Gateway, puoi impostare le seguenti opzioni durante la creazione di un'API:

  • --async: restituisce immediatamente il controllo al terminale, senza attendere il completamento dell'operazione.
  • --display-name=NAME: specifica il nome visualizzato dell'API, ovvero il nome mostrato nell'UI. Non utilizzare spazi nel nome. Utilizza trattini e trattini bassi. Il valore predefinito è API_ID.
  • --labels=KEY1=VALUE1,KEY2=VALUE2,...: specifica le etichette associate alla configurazione API.
  • --managed-service: specifica un servizio gestito preesistente (ad esempio un servizio Endpoints esistente) per l'API.

Progetti con ambito a livello di dominio

Se il progetto è limitato al tuo dominio, l'ID progetto include il nome del dominio seguito da due punti (:), ad esempio example.com:my-project. Devi fornire un servizio gestito valido quando crei un'API in un progetto con ambito di dominio.

Se utilizzi gcloud, fornisci il nome del servizio gestito utilizzando il flag --managed-service, come descritto in Opzioni gcloud.

API per le schede

Per elencare tutte le API in un progetto:

gcloud api-gateway apis list 

Questo comando restituisce un output nel formato:

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

Utilizza l'ID API per ottenere informazioni dettagliate sull'API:

gcloud api-gateway apis describe API_ID 

Aggiornamento di un'API

Dopo la creazione, puoi aggiornare le etichette e il nome visualizzato di un'API esistente. Utilizza le seguenti opzioni gcloud per aggiornare un'API esistente:

  • --display-name
  • --update-labels
  • --clear-labels
  • --remove-labels

Ad esempio:

gcloud api-gateway apis update API_ID \
  --update-labels=a=1,b=2

Utilizza il comando seguente per visualizzare tutte le opzioni di aggiornamento:

gcloud api-gateway apis update --help

Eliminazione di un'API

Per eliminare un'API devi:

  • Elimina le configurazioni API associate all'API.
  • Elimina l'API.

Per eliminare un'API:

  1. Determina l'elenco delle configurazioni API associate all'API:

    gcloud api-gateway api-configs list --api=API_ID
  2. Elimina ogni configurazione API associata all'API:

    gcloud api-gateway api-configs delete CONFIG_ID --api=API_ID 
  3. Elimina l'API:

    gcloud api-gateway apis delete API_ID 

Passaggi successivi