Your project must contain, at a minimum, the following files:
|File and Location||Description|
||The class file (or files, if you implement your API across multiple classes) containing your backend API.|
||Optional file containing your API server code, if you don't include it inside your API class.|
||The web app deployment descriptor required for App Engine configuration.|
The contents of each of these required files is documented in the following sections.
The API class file
The API server file
This file and its contents are fully described under Creating a Web Server.
The bare minimum contents required for this file are as follows:
# Copyright 2021 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. runtime: python27 threadsafe: true api_version: 1 basic_scaling: max_instances: 2 skip_files: - ^(.*/)?#.*#$ - ^(.*/)?.*~$ - ^(.*/)?.*\.py[co]$ - ^(.*/)?.*/RCS/.*$ - ^(.*/)?\..*$ - ^(.*/)?setuptools/script \(dev\).tmpl$ handlers: # The endpoints handler must be mapped to /_ah/api. - url: /_ah/api/.* script: main.api libraries: - name: pycrypto version: 2.6 - name: ssl version: 2.7.11 env_variables: # The following values are to be replaced by information from the output of # 'gcloud endpoints services deploy swagger.json' command. ENDPOINTS_SERVICE_NAME: YOUR-PROJECT-ID.appspot.com ENDPOINTS_SERVICE_VERSION: 2016-08-01r0
mainis the name of the Python module and variable for your API server.
threadsafeis set to true if you want App Engine to send multiple requests in parallel, or set to false, if you want App Engine to send requests serially.
Additional but optional settings are available. See the
for more information. However, note that the information under Requiring login or administrator status and
Secure URLs do not apply to backend APIs.