Cloud Endpoints Frameworks is a web framework for the App Engine standard Python 2.7 and Java 8 runtime environments. Cloud Endpoints Frameworks provides the tools and libraries that allow you to generate REST APIs and client libraries for your application.
Like other web frameworks, Endpoints Frameworks handles the low-level communication details of HTTP requests and responses for your application. When a client sends a request to your API, Endpoints Frameworks routes the request's URL to the function or method in your code that processes the request. Endpoints Frameworks converts the return value to JSON and sends the response. You add metadata (by using annotations in Java and decorators in Python) to your source code. The metadata defines the surface of the REST APIs for your application.
Java
In the example code, the
annotations begin with
the @
character.
Python
In the example code, the
decorators begin with
the @
character.
With Endpoints Frameworks, you don't have to deploy a third-party web server (such as Apache Tomcat or Gunicorn) with your application. You annotate or decorate the code and deploy your application as you normally would to the App Engine standard environment.
API management
The Extensible Service Proxy (ESP) provides API management features for Endpoints for OpenAPI and Endpoints for gRPC. ESP runs in a container alongside each instance of your backend.
Because the App Engine standard environment didn't support multi-container deployments when Endpoints Frameworks was under development, Endpoints Frameworks doesn't use ESP. Instead, Endpoints Frameworks includes a built-in API gateway that provides API management features that are comparable to the features that ESP provides for Endpoints for OpenAPI and Endpoints for gRPC.
Endpoints Frameworks intercepts all requests and performs any necessary checks (such as authentication) before forwarding the request to the API backend. When the backend responds, Endpoints Frameworks gathers and reports telemetry. You can view metrics for your API on the Endpoints Services page in the Google Cloud console.
You can use Endpoints Frameworks with or without API management functionality. Use of Endpoints Frameworks without API management functionality is offered at no charge. API management functionality is charged according to the Endpoints pricing page.
Limitations
- Endpoints Frameworks is supported only on the App Engine standard Python 2.7 and Java 8 runtime environments.
- Endpoints Frameworks doesn't support the Node.js, PHP, and Go runtime environments on the App Engine standard environment.
- Endpoints Frameworks doesn't support the App Engine flexible environment.
- Endpoints Frameworks doesn't support Cloud Run functions, Compute Engine, and Google Kubernetes Engine.
What's next
To learn more about the differences between ESP and Endpoints Frameworks, see Comparing Extensible Service Proxy and Endpoints Frameworks.
For information on the language-specific libraries and tools, see the following:
To learn how to configure, deploy, and send requests to a sample API, see the following: