notice

This is documentation for Rasa Action Server Documentation v2.x, which is no longer actively maintained.
For up-to-date documentation, see the latest version (3.x).

Version: 2.x

Running a Rasa SDK Action Server

There are two ways to run the action server, depending on whether you are using an environment with rasa installed or not:

If rasa is installed, you can run the action server using a rasa command:

rasa run actions

Alternatively you can make your assistant listen on a specific address using the SANIC_HOST environment variable:

SANIC_HOST=192.168.69.150 rasa run actions

If rasa is not installed, you can run the action server directly as a python module:

python -m rasa_sdk --actions actions

Running the action server directly as a python module allows for SANIC_HOST too:

SANIC_HOST=192.168.69.150 python -m rasa_sdk --actions actions
New in 2.6

Support for the SANIC_HOST environment variable was added.

Using the command above, rasa_sdk will expect to find your actions in a file called actions.py or in a package directory called actions. You can specify a different actions module or package with the --actions flag.

The full list of options for running the action server with either command is:

usage: __main__.py [-h] [-p PORT] [--cors [CORS [CORS ...]]]
[--actions ACTIONS] [--ssl-keyfile SSL_KEYFILE]
[--ssl-certificate SSL_CERTIFICATE]
[--ssl-password SSL_PASSWORD] [--auto-reload] [-v] [-vv]
[--quiet] [--log-file LOG_FILE]
[--logging-config_file LOGGING_CONFIG_FILE]
starts the action endpoint
optional arguments:
-h, --help show this help message and exit
-p PORT, --port PORT port to run the server at
--cors [CORS [CORS ...]]
enable CORS for the passed origin. Use * to whitelist
all origins
--actions ACTIONS name of action package to be loaded
--ssl-keyfile SSL_KEYFILE
Set the SSL certificate to create a TLS secured
server.
--ssl-certificate SSL_CERTIFICATE
Set the SSL certificate to create a TLS secured
server.
--ssl-password SSL_PASSWORD
If your ssl-keyfile is protected by a password, you
can specify it using this paramer.
--auto-reload Enable auto-reloading of modules containing Action
subclasses.
-v, --verbose Be verbose. Sets logging level to INFO
-vv, --debug Print lots of debugging statements. Sets logging level
to DEBUG
--quiet Be quiet! Sets logging level to WARNING
--log-file LOG_FILE Store logs in specified file.
--logging-config_file LOGGING_CONFIG_FILE
If set, the name of the logging configuration file
will be set to the given name.
Changed in 2.3.0

The --log-file argument was added.