Skip to main content

The Flask ASK SDK package provides support for using ASK SDK and Flask, to deploy custom skills as webservice

Project description

Flask ASK SDK - Extending ASK SDK to work with Flask

flask-ask-sdk is the extension package, that will let skill developers use ASK SDK package in their Flask application. It provides an easy way to register and use skills as custom webservices.

Quick Start


These features are currently in beta. You can view the source code in the Ask Python Sdk repo on GitHub. The interface might change when the features are released as stable.

If you already have a skill built using the ASK SDK skill builders, then you only need to do the following, to set this up in your flask app:

from flask import Flask
from ask_sdk_core.skill_builder import SkillBuilder

sb = SkillBuilder()
# Register all handlers, interceptors etc.
# For eg : sb.add_request_handler(LaunchRequestHandler())

app = Flask(__name__)
skill_response = SkillAdapter(
    skill=sb.create(), skill_id=<YOUR_SKILL_ID>, app=app)

skill_response.register(app=app, route="/")

if __name__ == '__main__':

Are you planning to deploy your skill on AWS Lambda? Then, you don’t even need this package. The ASK SDK provides a lambda_handler that can be directly used in your lambda console.

More code examples can be found here.


  • Works as an extension on skills built using ASK SDK. No need to learn something new.
  • Provides default request signature and request timestamp verification. These can be configured on app level by setting / unsetting app configuration.
  • Provides a way to register multiple skills on your app, at different endpoints.



cryptography is a dependency for this package. If you have not already installed cryptography, you might need to install additional prerequisites as detailed in the cryptography installation guide for your operating system.

Assuming that you have Python and virtualenv installed, you can install the package and it’s dependencies (ask-sdk-webservice-support, flask) from PyPi as follows:

$ virtualenv venv
$ . venv/bin/activate
$ pip install flask-ask-sdk

This package is not installed along-side ask-sdk standard distribution, and has to be installed separately if you need support for skill deployment as webservice, using Flask.

SDK Usage and Getting Started

Getting started guides, SDK Features, API references, samples etc. can be found at Read The Docs

Got Feedback?

  • We would like to hear about your bugs, feature requests, questions or quick feedback. Please search for the existing issues before opening a new one. It would also be helpful if you follow the templates for issue and pull request creation. Please follow the contributing guidelines!!
  • Request and vote for Alexa features!



  • Initial release of Flask ASK SDK extension package.


This release contains the following changes :

  • Fix setting the custom user agent on the skill instance, when initializing the handler.

Project details

Download files

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

Files for flask-ask-sdk, version 0.1.1
Filename, size File type Python version Upload date Hashes
Filename, size flask_ask_sdk-0.1.1-py2.py3-none-any.whl (7.8 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size flask-ask-sdk-0.1.1.tar.gz (7.0 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page