Endpoints es un sistema distribuido de administración de API. Proporciona una consola de API, hosting, registro, supervisión y otras funciones para ayudarte a crear, compartir, mantener y proteger tus API. En esta página, se proporciona una descripción general de Cloud Endpoints para OpenAPI. Si quieres obtener información sobre otros tipos de marcos de trabajo de API compatibles con Endpoints, consulta Todos los documentos de Endpoints.
Endpoints está disponible para su uso con el proxy de servicio extensible (ESP) distribuido o con el proxy de servicio extensible V2 (ESPv2). Cada proxy proporciona asistencia para las plataformas que se describen a continuación:
- Entorno flexible de App Engine (solo ESP)
- Google Kubernetes Engine (ESP o ESPv2)
- Compute Engine (ESP o ESPv2)
- Kubernetes (ESP o ESPv2)
- Entorno estándar de App Engine (solo ESPv2)
- Funciones de Cloud Run (solo ESPv2)
- Cloud Run (solo ESPv2)
- Knative serving (solo ESPv2)
Extremos con ESP
Endpoints usa el proxy de servicio extensible (ESP) distribuido a fin de proporcionar baja latencia y rendimiento alto y así entregar, incluso, las API más exigentes. El ESP es un proxy de servicio basado en NGINX, por lo que puedes quedarte tranquilo de que se escala según sea necesario para controlar solicitudes simultáneas a tu API. El ESP se ejecuta en su propio contenedor de Docker con el fin de lograr un mejor aislamiento y escalabilidad, y se distribuye en Container Registry. Puedes usarlo con lo siguiente:
Extremos con ESPv2
El ESPv2 es un proxy escalable de alto rendimiento basado en Envoy que se ejecuta frente al backend de una API de OpenAPI o de gRPC. El ESPv2 es compatible con la versión 2 de la especificación de OpenAPI y las especificaciones de gRPC. Puedes usarlo con lo siguiente:
- Entorno estándar de App Engine
- Compute Engine
- Google Kubernetes Engine
- Kubernetes
- Cloud Run
- Knative serving
- Funciones de Cloud Run
Funciones de la administración de API de Endpoints
Ya sea que uses Endpoints con el ESP o el ESPv2, este proporciona un número de funciones importantes de administración de API que te permiten desarrollar, supervisar y controlar el acceso a tus API.
Registros y métricas
Endpoints usa la Infraestructura de servicios para administrar las API y también informar sobre registros y métricas. La mayoría de las API de Google Cloud usan esta misma infraestructura. Puedes administrar y supervisar tus APIs en la Página Servicios de Endpoints en la consola de Google Cloud.
Hosting de API
Endpoints está optimizado para el entorno de contenedores de Docker. Puedes alojar tu API en cualquier lugar que sea compatible con Docker, siempre y cuando tenga acceso a Internet para ingresar a Google Cloud.
Desarrolla una API de REST con Endpoints para OpenAPI
Endpoints es independiente del lenguaje. Puedes compilar tu API en cualquier marco de trabajo de REST y lenguaje que sea compatible con la descripción de la API mediante el uso de un archivo de configuración de OpenAPI.
A fin de usar Endpoints para OpenAPI, debes hacer lo siguiente:
Configurar Endpoints: puedes escribir la superficie de la API y configurar las características de Endpoints, como las claves de API o las reglas de autenticación, en un archivo de configuración de OpenAPI.
Implementar la configuración de Endpoints: después de definir tu API en un archivo de configuración de OpenAPI, usas Google Cloud CLI para implementarla a la Administración de servicios, que Endpoints usa para administrar API de gcloud. Ahora Endpoints sabe todo acerca de tu API y cómo protegerla.
Implementar el backend de la API: Implementa el ESP o ESPv2 y el backend de tu API en un backend de Google Cloud compatible, como Compute Engine. El ESP coordina con los servicios de backend de Endpoints para proteger y supervisar la API en el entorno de ejecución.
Cómo controlar el acceso a la API
Endpoints te permite configurar la API a fin de que se solicite una clave de API para cualquier llamada y valida la clave de API. También puedes usar la consola de Google Cloud para compartir tu API con otros desarrolladores para que puede habilitar tu API y generar claves de API para llamarla.
Autentica los usuarios de las API
En la mayoría de las llamadas a la API, hay un usuario en el otro extremo de cada llamada. Mientras que las claves de API indican qué app hace una llamada a la API, el proceso de autenticación determina qué usuario usa esa app.
Ten en cuenta que tu servidor de API aún necesita decidir qué es lo que el usuario autenticado puede hacer con la API. Para obtener más información, consulta la guía de autenticación de Google Cloud.
¿Qué sigue?
Familiarízate con los pasos de implementación y ve las características de Endpoints en acción por medio de la Guía de inicio rápido para Endpoints, que utiliza secuencias de comandos a fin de implementar una API de muestra a un backend de App Engine Flexible.
Para obtener más información sobre Endpoints, realiza uno de los Instructivos.