O Endpoints é um sistema de gerenciamento de APIs distribuído. Ele oferece console de APIs, hospedagem, geração de registros, monitoramento e outros recursos para ajudar você a criar, compartilhar, manter e proteger suas APIs. Nesta página, você terá uma visão geral do Cloud Endpoints para OpenAPI. Para mais informações sobre outros tipos de frameworks de API compatíveis com o Endpoints, consulte toda a documentação do Endpoints.
O Endpoints está disponível para uso com o Extensible Service Proxy (ESP) distribuído ou o Extensible Service Proxy V2 Beta (ESPv2 Beta). Cada proxy oferece suporte às plataformas descritas abaixo:
- Ambiente flexível do App Engine (somente ESP)
- Google Kubernetes Engine (ESP ou ESPv2)
- Compute Engine (ESP ou ESPv2)
- Kubernetes (ESP ou ESPv2)
- Padrão do App Engine (somente ESPv2)
- Funções do Cloud Run (somente ESPv2)
- Cloud Run (somente ESPv2)
- Knative serving (somente ESPv2)
Endpoints com o ESP
O Endpoints usa o Extensible Service Proxy (ESP) distribuído para oferecer baixa latência e alto desempenho, assim atendendo até as APIs mais exigentes. O ESP é um proxy de serviço baseado em NGINX (em inglês). Isso garante o escalonamento conforme as necessidades do usuário para processar solicitações simultâneas à API. O ESP é executado no próprio contêiner do Docker para oferecer melhor isolamento e escalonabilidade, além de ser distribuído no Container Registry. É possível usá-lo com o seguinte:
Endpoints com o ESPv2
O ESPv2 é um proxy escalonável de alto desempenho baseado no Envoy que é executado em um back-end de uma API OpenAPI ou gRPC. O ESPv2 é compatível com a versão 2 da especificação OpenAPI e das especificações do gRPC. É possível usá-lo com o seguinte:
- Ambiente padrão do App Engine
- Compute Engine
- Google Kubernetes Engine
- Kubernetes
- Cloud Run
- Knative serving
- Cloud Run functions
Recursos de gerenciamento da API Endpoints
O Endpoints pode ser usado com o ESP ou ESPv2 Beta, oferecendo vários recursos significativos de gerenciamento de API para permitir que você desenvolva, monitore e controle o acesso às APIs.
Registros e métricas
O Endpoints usa o Service Infrastructure para gerenciar APIs e gerar relatórios de registros e métricas. A maioria das APIs do Google Cloud usa essa mesma infraestrutura. É possível gerenciar e monitorar as APIs na página Serviços do Endpoint no Console do Google Cloud.
Hospedagem de API
O Cloud Endpoints é otimizado para o ambiente de contêiner do Docker. É possível hospedar sua API em qualquer lugar em que o Docker seja compatível, desde que tenha acesso de Internet ao Google Cloud.
Como desenvolver uma API REST com o Endpoints para OpenAPI
O Endpoints não depende de linguagens. Você desenvolve a API em qualquer linguagem e framework REST compatível com a descrição dela usando um arquivo de configuração do OpenAPI.
Para usar o Endpoints para OpenAPI, você precisa:
Configurar o Endpoints: descreva a superfície da API e configure os recursos do Endpoints, como chaves de API ou regras de autenticação, em um arquivo de configuração da OpenAPI.
Implantar a configuração do Endpoints: depois de definir a API em um arquivo de configuração do OpenAPI, use a Google Cloud CLI para implantá-la no Service Management, que o Endpoints usa para gerenciar a API. Agora, o Endpoints sabe tudo sobre sua API e como protegê-la.
Como implantar o back-end da API : implante o ESP ou o ESPv2 e o back-end da API em um back-end compatível do Google Cloud, como o Compute Engine. O ESP coordena com os serviços de back-end do Endpoints para proteger e monitorar a API no ambiente de execução.
Como controlar o acesso à API
Com o Endpoints, é possível configurar a API para exigir uma chave de API nas chamadas e validá-la. Também é possível usar o console do Google Cloud para compartilhar a API com outros desenvolvedores. Assim, eles podem ativar a API e gerar chaves para chamá-la.
Autenticar usuários da API
Na maioria das chamadas de API, há um usuário na outra extremidade. As chaves de API indicam o app que faz uma chamada para sua API, e o processo de autenticação identifica o usuário que está utilizando esse app.
Seu servidor de API ainda precisa definir o que o usuário autenticado pode fazer com a API. Para mais informações, consulte o guia de autenticação do Google Cloud.
A seguir
Para se familiarizar com as etapas de implantação e ver como os recursos do Endpoints funcionam, execute o Guia de início rápido do Cloud Endpoints, que usa scripts para implantar uma API de amostra em um back-end flexível do App Engine.
Para saber mais sobre como usar o Endpoints, acesse os tutoriais.