Crea una API

Requisitos previos

Antes de crear una API en API Gateway, asegúrate de haber hecho lo siguiente:

Requisitos de ID de API

Muchos de los comandos gcloud que se muestran a continuación requieren que especifiques el ID de la API, en la forma: API_ID. API Gateway aplica los siguientes requisitos para el ID de API:

  • Debe tener una longitud máxima de 63 caracteres.
  • Debe contener solo letras en minúscula, números o guiones.
  • No debe comenzar con un guion.
  • No debe contener un guion bajo.

Crea una API

Para crear una API:

  1. Valida el ID del proyecto que muestra el siguiente comando para asegurarte de que el servicio no se cree en el proyecto equivocado.

    gcloud config list project

    Si necesitas cambiar el proyecto predeterminado, ejecuta el siguiente comando y reemplaza PROJECT_ID por el ID del proyecto de Google Cloud en el que quieres crear el servicio:

    gcloud config set project PROJECT_ID

    Si el ID de tu proyecto contiene dos puntos (:), consulta Proyectos con permiso de dominio para obtener detalles adicionales sobre cómo crear una API en tu proyecto.

  2. Consulta la ayuda del comando apis create:

    gcloud api-gateway apis create --help
  3. Ejecuta el siguiente comando para crear la API:

    gcloud api-gateway apis create API_ID --project=PROJECT_ID

    Donde:

    • API_ID especifica el ID de la API nueva. Consulta los requisitos de ID de la API para conocer los lineamientos sobre los nombres de las APIs.
    • PROJECT_ID especifica el ID del proyecto de Google Cloud.

    Mientras se crea la API, API Gateway envía información a la terminal.

  4. Cuando el proceso finalice con éxito, puedes usar el siguiente comando para ver los detalles de la nueva API:

    gcloud api-gateway apis describe API_ID --project=PROJECT_ID

    Este comando muestra lo siguiente:

    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'

Opciones de gcloud

Google Cloud CLI tiene muchas opciones, incluidas las descritas en el Referencia de gcloud. Además, Para API Gateway, puedes configurar las siguientes opciones cuando crees una API:

  • --async: Devuelve el control a la terminal de inmediato, sin esperar a que se complete la operación.
  • --display-name=NAME: Especifica el nombre visible de la API, es decir, el nombre que se muestra en la IU. No uses espacios en el nombre. En su lugar, usa guiones y guiones bajos. El valor predeterminado es API_ID.
  • --labels=KEY1=VALUE1,KEY2=VALUE2,...: Especifica etiquetas asociadas con la configuración de la API.
  • --managed-service: Especifica un servicio administrado preexistente (por ejemplo, un servicio de Endpoints existente) para la API.

Proyectos con alcance de dominio

Si tu proyecto tiene alcance en tu dominio, el ID del proyecto incluye el nombre de el dominio seguido de dos puntos (:), por ejemplo, example.com:my-project. Tú debes proporcionar un servicio administrado válido cuando crees una API en un entorno en un proyecto final.

Si usas gcloud, proporciona el nombre del servicio administrado con el parámetro --managed-service, como se describe en gcloud options.

Cómo mostrar listas de APIs

Para enumerar todas las APIs de un proyecto, haz lo siguiente:

gcloud api-gateway apis list --project=PROJECT_ID

Este comando muestra un resultado con el siguiente 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

Usa el ID del proyecto y el ID de la API para obtener información detallada sobre la API:

gcloud api-gateway apis describe API_ID --project=PROJECT_ID

Actualizar una API

Después de la creación, puedes actualizar las etiquetas y el nombre visible de una API existente. Usa las siguientes opciones de gcloud para actualizar una API existente:

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

Por ejemplo:

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

Usa el siguiente comando para ver todas las opciones de actualización:

gcloud api-gateway apis update --help

Borra una API

Para borrar una API, debes hacer lo siguiente:

  • Borra la configuración de la API asociada con la API.
  • Borra la API.

Para borrar una API, sigue estos pasos:

  1. Determina la lista de parámetros de configuración de API asociados con la API:

    gcloud api-gateway api-configs list --api=API_ID --project=PROJECT_ID
  2. Borra cada configuración de API asociada con la API:

    gcloud api-gateway api-configs delete CONFIG_ID --api=API_ID --project=PROJECT_ID
  3. Borra la API:

    gcloud api-gateway apis delete API_ID --project=PROJECT_ID

¿Qué sigue?