This page contains known issues in Endpoints Frameworks.
Java and Python
This section describes known issues that affect both the Java and Python versions of Endpoints Frameworks.
Maximum request timeout
For APIs using Endpoints Frameworks v2, the maximum request timeout is 60 seconds.
Endpoints Frameworks Migration
When you migrate your API to Endpoints Frameworks v2, you must currently
deploy to a new App Engine app version. Reusing an old app version may conflict
with the old Endpoints deployment, causing requests with paths beginning with
/_ah/spi to be sent to the Endpoints Frameworks v2 backend, rather than
Poor performance on Automatic Scaling instances
App Engine offers three scaling types: basic, manual, and automatic. The Endpoints Management Framework uses background threads, which automatic scaling instances do not support. The Endpoints frameworks must communicate with Google services to check quotas and report API activity among other things. For basic and manual scaling instances, a background thread performs this communication to avoid slowing down requests. Automatic scaling instances, however, don't support background threads. Because of this fact, the communication with Google services happens during the request instead. The framework still works but with potentially reduced performance.
Because of this issue, you might want to configure another scaling type. See the following sections in the App Engine documentation:
Paths with trailing slashes are not supported
When you deploy an OpenAPI document via
gcloud endpoints services deploy,
Cloud Endpoints rejects OpenAPI documents that include paths with trailing
If you are using Endpoints Frameworks, you must remove the trailing slash in the method decorator (for Python) or the method annotation (Java).
This section describes known issues in the Java version of Endpoints Frameworks.
Legacy (v1) Java Endpoints Frameworks
The Java framework has a bug that causes an exception to be thrown when an enum is annotated. This issue is caused by a dependency on an old version of Jackson. To workaround this issue, you must migrate to Endpoints Frameworks v2.
This section describes known issues in the Python version of Endpoints Frameworks.
ImportError: cannot import name locked_file
The error message
ImportError: cannot import name locked_file has been
observed in Endpoints Frameworks with Python when you run
pip install with
requirements.txt file. The issue is caused when
pip installs a
version of the
oauth2client package that is incompatible with
google-endpoints-api-management. To workaround this issue, make sure that
google-endpoints-api-management lines appear
first in your
requirements.txt file, for example:
Add other requirements after these lines.
API returns 404 errors when testing locally
All endpoints return 404 when you test your API locally using
dev_appserver.py, but when you deploy your API to App Engine, the
endpoints respond as expected. This issue has been observed in applications
that use the Django-six library.
This issue is believed to be caused by a version conflict between the
python-future library, which is included in the Endpoints Frameworks for
Python library, and the Django-six library. The exact version of the Django-six
library causing the conflict is unknown at this time.