Skip to main content

The ASK SDK DynamoDB Persistence Adapter package provides DynamoDB Adapter, that can be used with ASK SDK Core, for persistence management.

Project description

ASK SDK DynamoDB Adapter of Python ASK SDK

ask-sdk-dynamodb-persistence-adapter is the persistence adapter package for Alexa Skills Kit (ASK) by the Software Development Kit (SDK) team for Python. It has the persistence adapter implementation for connecting the Skill to the AWS DynamoDB. It also provides partition key generator functions, to get the user id or device id from skill request, that can be used as partition keys.

Quick Start


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

$ virtualenv venv
$ . venv/bin/activate
$ pip install ask-sdk-dynamodb-persistence-adapter

You can also install the whole dynamodb persistence adapter package locally by following these steps:

$ git clone
$ cd alexa-skills-kit-sdk-for-python/ask-sdk-dynamodb-persistence-adapter
$ virtualenv venv
$ . venv/bin/activate
$ python install

Usage and Getting Started

Getting started guides, SDK Features, API references, samples etc. can be found in the technical documentation

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 ASK SDK DynamoDB Persistence Adapter package.


  • Docstring changes for generated docs.


  • unicode_type = six.text_type and define long in Python 3 (#1)
  • Use feature detection instead of version detection (#10)
  • Send stringified raw data to Alexa APIs (#12)


  • Remove inspect.getargspec from sb decorators. Closes #20


  • Production release of ASK SDK DynamoDB Persistence Adapter Package.


This release contains the following changes:

  • Introducing runtime layer (#41)
  • Send data to service clients only if present (#39)


This release contains the following changes :

  • Add support for Alexa Presentation Language (Public Beta). The Alexa Presentation Language (APL) enables you to build interactive voice experiences that include graphics, images, slideshows, and to customize them for different device types.


This release contains the following features :


This release contains the following changes :

  • Add helper function for matching CanFulfill Intent name #46 <>
  • Deserialize only if payload is not None 48 <>


This release contains the following changes :

  • Refactor Python version dependencies for Python 3.7 support 50


This release contains the following changes :

  • Update DefaultSerializer to let generic classes to be added as session attributes 60.


This release contains the following changes :

  • Add optional play_behavior attribute to speak and ask methods in response builder 61.


This release contains the following changes :

  • Allow Default API Client to invoke Alexa APIs that require other than ‘application/json’ body type.


This release includes the following :

  • Request utility methods which makes it easier to retrieve common properties from an incoming request.


This release contains the following changes :

  • Viewport Utils support for Echo Show 5 (HUB_LANDSCAPE_SMALL).
  • Add check for device information in ‘get_device_id’ utility function.
  • Add ‘get_user_id’ utility function.

This release contains the following :

  • Fix the regression bug on response_interceptors.

This release contains the following changes :

  • Bug fix on delete persistence attributes, to delete attributes without checking if they are set.
  • Fix type hints on lambda_handler.


This release contains the following changes : - Template Resolvers used to generate responses using templates to handle ASK SDK requests. - Bug fix Delete persistence attributes without checking setter. - Bug fix Allow out-of-session requests. - Bug fix Change get_slot_value function to return None when slot is not present. - Bug fix Change decorator returned by request_handler to return the handler function.


This release contains the following changes :

  • person_id as partition key generator, when storing persistence attributes in dynamo tables.
  • py.typed files for ask-sdk-core. Fixes #121.
  • Minor doc fix in ask-sdk-core readme.


This release contains the following changes :

  • py.typed files added to sdk packages, as per PEP 561. Fixes 121.
  • Fixes the literal check bug in api client, that fails in Python 3.8 127


This release contains the following changes :

  • general bug fixes and updates


This release contains the following changes :

  • A new class UserAgentManager, to help set user agents for higher level frameworks using the SDK

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 ask-sdk-dynamodb-persistence-adapter, version 1.15.0
Filename, size File type Python version Upload date Hashes
Filename, size ask_sdk_dynamodb_persistence_adapter-1.15.0-py2.py3-none-any.whl (9.1 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size ask-sdk-dynamodb-persistence-adapter-1.15.0.tar.gz (9.5 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page