Skip to main content

Wrap a WSGI application in an AWS Lambda handler function for running on API Gateway.

Project description

Wrap a WSGI application in an AWS Lambda handler function for running on API Gateway.

A quick example:

from apig_wsgi import make_lambda_handler
from myapp.wsgi import app

# Configure this as your entry point in AWS Lambda
lambda_handler = make_lambda_handler(app)


Use pip:

pip install apig-wsgi

Tested on Python 2.7 and Python 3.6.


make_lambda_handler(app, binary_support=False)

app should be a WSGI app, for example from Django’s or Flask’s Flask() object.

If you want to support sending binary responses, set binary_support to True and make sure you have '*/*' in the ‘binary media types’ configuration on your Rest API on API Gateway. Note, whilst API Gateway supports a list of media types, using ‘/’ is the best way to do it, since it is used to match the request ‘Accept’ header as well.

Note that binary responses aren’t sent if your response has a ‘Content-Type’ starting ‘text/html’ or ‘application/json’ - this is to support sending larger text responses.


Pending Release

1.2.0 (2018-05-14)

  • Work with base64 encoded body values in requests from API Gateway.

1.1.2 (2018-05-11)

  • Fix crash using binary support for responses missing a Content-Type header.

1.1.1 (2018-05-11)

  • Remove debug print()

1.1.0 (2018-05-10)

  • Add binary_support flag to enable sending binary responses, if enabled on API Gateway.

1.0.0 (2018-03-08)

  • First release on PyPI, working basic integration for WSGI apps on API Gateway.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
apig_wsgi-1.2.0-py2.py3-none-any.whl (6.4 kB) Copy SHA256 hash SHA256 Wheel 2.7
apig-wsgi-1.2.0.tar.gz (4.8 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page