Crear una API
Requisitos previos
Antes de crear una API en API Gateway, asegúrate de que tienes lo siguiente:
- Has preparado tu entorno de desarrollo tal como se describe en Configurar el entorno de desarrollo.
Requisitos de los IDs de API
Muchos de los comandos gcloud
que se muestran requieren que especifiques el ID de la API, con el formato API_ID.
API Gateway aplica los siguientes requisitos al ID de la API:
- Debe tener una longitud máxima de 63 caracteres.
- Solo debe incluir letras minúsculas, números o guiones.
- No debe empezar por un guion.
- No debe contener un guion bajo.
Crear una API
Para crear una API, sigue estos pasos:
Valida el ID del proyecto devuelto por el siguiente comando para asegurarte de que el servicio no se ha creado en el proyecto incorrecto.
gcloud config list project
Si necesitas cambiar el proyecto predeterminado, ejecuta el siguiente comando y sustituye PROJECT_ID por el Google Cloud ID del proyectoPROJECT_ID en el que quieras crear el servicio:
gcloud config set project PROJECT_ID
Si el ID de tu proyecto contiene dos puntos (
:
), consulta Proyectos con ámbito de dominio para obtener más información sobre cómo crear una API en tu proyecto.Consulta la ayuda del comando
apis create
:gcloud api-gateway apis create --help
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 nueva API. Consulta los requisitos de ID de API para ver las directrices de nomenclatura de las APIs.
- PROJECT_ID especifica el Google Cloud ID del proyecto.
Mientras se crea la API, API Gateway muestra información en la terminal.
Una vez completado el proceso, 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 devuelve 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
La CLI de Google Cloud acepta muchas opciones, incluidas las que se describen en la referencia de gcloud. Además, en API Gateway, puede definir las siguientes opciones al crear una API:
--async
: devuelve el control a la terminal inmediatamente, 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 interfaz de usuario. 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 las etiquetas asociadas a la configuración de la API.--managed-service
: especifica un servicio gestionado preexistente (por ejemplo, un servicio de Endpoints) para la API.
Proyectos con ámbito de dominio
Si tu proyecto está limitado a tu dominio, el ID del proyecto incluye el nombre del dominio seguido de dos puntos (:
). Por ejemplo, example.com:my-project
. Debes proporcionar un servicio gestionado válido al crear una API en un proyecto con ámbito de dominio.
Si usas gcloud
, proporciona el nombre del servicio gestionado con la marca --managed-service
, tal como se describe en las opciones de gcloud.
APIs de fichas
Para mostrar todas las APIs de un proyecto, sigue estos pasos:
gcloud api-gateway apis list --project=PROJECT_ID
Este comando devuelve 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
Una vez creada, puedes actualizar las etiquetas y el nombre visible de una API.
Usa las siguientes opciones de gcloud
para actualizar una API:
--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
Eliminar una API
Para eliminar una API, debes hacer lo siguiente:
- Elimina las configuraciones de API asociadas a la API.
- Elimina la API.
Para eliminar una API, sigue estos pasos:
Determina la lista de configuraciones de API asociadas a la API:
gcloud api-gateway api-configs list --api=API_ID --project=PROJECT_ID
Elimina cada configuración de API asociada a la API:
gcloud api-gateway api-configs delete CONFIG_ID --api=API_ID --project=PROJECT_ID
Elimina la API:
gcloud api-gateway apis delete API_ID --project=PROJECT_ID