About Cloud Endpoints

Cloud Endpoints is a distributed API management system. It provides an API console, hosting, logging, monitoring and other features to help you create, share, maintain, and secure your APIs. This page provides an overview of Cloud Endpoints for gRPC. For information on other types of API frameworks supported by Cloud Endpoints, see All Endpoints Docs.

Cloud Endpoints uses the distributed Extensible Service Proxy (ESP) to provide low latency and high performance for serving even the most demanding APIs. The Extensible Service Proxy is a service proxy based on NGINX, so you can be confident that it scales as needed to handle simultaneous requests to your API. The proxy runs in its own Docker container for better isolation and scalability and is distributed in the Google Container Registry and Docker registry. It can be used with Google App Engine flexible, Google Kubernetes Engine, Google Compute Engine or Kubernetes.

Cloud Endpoints Architecture

Cloud Endpoints uses Google Service Management for managing APIs and Google Service Control for reporting logs and metrics. You can manage and monitor your APIs using the Endpoints dashboard in the Google Cloud Platform Console.

Hosting an API

Cloud Endpoints is optimized for the Docker container environment. You can host your API anywhere Docker is supported so long as it has Internet access to Google Cloud Platform.

However, Cloud Endpoints provides an optimized workflow to run your APIs on the following:

  • Compute Engine
  • Kubernetes Engine
  • App Engine flexible environment, which includes built-in Extensible Server Proxy.

Developing a gRPC API with Cloud Endpoints

  1. Define a gRPC API service using protocol buffers and implement it in any gRPC-supported language.

  2. Write your gRPC API service configuration for Endpoints.

  3. Generate the runtime API configuration for your API and deploy it to Google Service Management.

  4. Deploy your API server.

You can find out more about using gRPC with Endpoints in Cloud Endpoints for gRPC APIs and the relevant Tutorials.

Controlling API access

Cloud Endpoints lets you configure your API to require an API key for any call and validates the API key. You can also use the Google Cloud Platform Console to share your API with other developers so they can enable your API and generate API key(s) to call it.

Authenticating API users

For most API calls, there is a user on the other end of each call. While API keys indicate which app is making a call to your API, the authentication process determines which user is using that app.

Note that your API server still needs to decide what the authenticated user can do with your API. For more information, see the Google Cloud Platform Auth Guide.

What's next?

  • Get familiar with the deployment steps and see Cloud Endpoints features in action by doing the Quickstart for Cloud Endpoints, which uses scripts to deploy a sample API to a Google App Engine flexible backend.

  • Learn more about using Cloud Endpoints by walking through one of the Tutorials.

Was this page helpful? Let us know how we did:

Send feedback about...

Cloud Endpoints with gRPC