diff options
Diffstat (limited to '.venv/lib/python3.12/site-packages/sendgrid/helpers/inbound/app.py')
-rw-r--r-- | .venv/lib/python3.12/site-packages/sendgrid/helpers/inbound/app.py | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/.venv/lib/python3.12/site-packages/sendgrid/helpers/inbound/app.py b/.venv/lib/python3.12/site-packages/sendgrid/helpers/inbound/app.py new file mode 100644 index 00000000..0d443590 --- /dev/null +++ b/.venv/lib/python3.12/site-packages/sendgrid/helpers/inbound/app.py @@ -0,0 +1,45 @@ +"""Receiver module for processing SendGrid Inbound Parse messages. + +See README.txt for usage instructions.""" +try: + from config import Config +except: + # Python 3+, Travis + from sendgrid.helpers.inbound.config import Config + +try: + from parse import Parse +except: + # Python 3+, Travis + from sendgrid.helpers.inbound.parse import Parse + +from flask import Flask, request, render_template +import os + +app = Flask(__name__) +config = Config() + + +@app.route('/', methods=['GET']) +def index(): + """Show index page to confirm that server is running.""" + return render_template('index.html') + + +@app.route(config.endpoint, methods=['POST']) +def inbound_parse(): + """Process POST from Inbound Parse and print received data.""" + parse = Parse(config, request) + # Sample processing action + print(parse.key_values()) + # Tell SendGrid's Inbound Parse to stop sending POSTs + # Everything is 200 OK :) + return "OK" + + +if __name__ == '__main__': + # Be sure to set config.debug_mode to False in production + port = int(os.environ.get("PORT", config.port)) + if port != config.port: + config.debug = False + app.run(host='0.0.0.0', debug=config.debug_mode, port=port) |