Python client for Mistral REST API.
Go to file
Ghanshyam Mann b94abb44d9 Fix tox4 error and use python >=3.8
tox.ini started failing with tox4 which had some
incompatible changes. One of them is to allow
external command to run by adding them into allowlist_externals
and make passenv in new lines.

Fixing tox.ini for tox4 changes.

Minimal python version is now 3.8

Other minor fixes:
* Use devstack-alt-member in tests instead of devstack-alt, as
  the later is having admin role now.
* Fix some of the functional tests not working anymore with the
  latest mistral changes.
* Removing standard actions tests as they are not standard anymore (they
  are in mistral-extra)

Change-Id: Ic0620135c286855dd4befb52eb55522b605eb863
Signed-off-by: Arnaud Morin <>
2023-01-20 01:02:46 +01:00
doc [community goal] Update contributor documentation 2021-05-31 20:33:28 +00:00
functionaltests/resources/v2 remove unused gate code 2019-09-01 11:27:54 +03:00
mistralclient Fix tox4 error and use python >=3.8 2023-01-20 01:02:46 +01:00
releasenotes Update master for stable/zed 2022-09-23 16:27:17 +00:00
tools Avoid for constraints support 2017-12-02 16:58:08 +00:00
.coveragerc Add script for unit test coverage job 2020-01-01 13:01:28 +02:00
.gitignore Switch to using stestr 2018-05-30 17:13:56 +01:00
.gitreview OpenDev Migration Patch 2019-04-19 19:42:33 +00:00
.stestr.conf Migrate python-mistralclient jobs to Zuul v3 2018-08-01 19:04:32 -04:00
.zuul.yaml Fix tox4 error and use python >=3.8 2023-01-20 01:02:46 +01:00
CONTRIBUTING.rst [community goal] Update contributor documentation 2021-05-31 20:33:28 +00:00
LICENSE Moving Mistral Client code from main Mistral repository 2014-01-17 07:15:03 -08:00
README.rst Replace URLs with URLs 2019-04-28 14:04:48 +08:00
functional_creds.conf.sample Fixing launching mistralclient tests 2015-07-11 14:11:10 +03:00
lower-constraints.txt Add support for code sources and dynamic actions 2020-12-09 15:26:44 +07:00
requirements.txt [goal] Migrate testing to ubuntu focal 2020-09-05 16:50:28 +00:00 Add script to run functional CLI and client tests locally 2014-09-30 13:17:58 +04:00
setup.cfg Fix tox4 error and use python >=3.8 2023-01-20 01:02:46 +01:00 Cleanup py27 support 2020-04-04 17:00:08 +02:00
test-requirements.txt Fix hacking min version to 3.0.1 2020-05-12 19:33:38 -05:00
tox.ini Fix tox4 error and use python >=3.8 2023-01-20 01:02:46 +01:00


Team and repository tags



Latest Version

Mistral is a workflow service. Most business processes consist of multiple distinct interconnected steps that need to be executed in a particular order in a distributed environment. A user can describe such a process as a set of tasks and their transitions. After that, it is possible to upload such a description to Mistral, which will take care of state management, correct execution order, parallelism, synchronization and high availability.

Mistral also provides flexible task scheduling so that it can run a process according to a specified schedule (for example, every Sunday at 4.00pm) instead of running it immediately. In Mistral terminology such a set of tasks and relations between them is called a workflow.

Mistral client

Python client for Mistral REST API. Includes python library for Mistral API and Command Line Interface (CLI) library.


First of all, clone the repo and go to the repo directory:

$ git clone
$ cd python-mistralclient

Then just run:

$ pip install -e .


$ pip install -r requirements.txt
$ python install

Running Mistral client

If Mistral authentication is enabled, provide the information about OpenStack auth to environment variables. Type:

$ export OS_AUTH_URL=http://<Keystone_host>:5000/v2.0
$ export OS_USERNAME=admin
$ export OS_TENANT_NAME=tenant
$ export OS_PASSWORD=secret
$ export OS_MISTRAL_URL=http://<Mistral host>:8989/v2  (optional, by
  default URL=http://localhost:8989/v2)

and in the case that you are authenticating against keystone over https:

$ export OS_CACERT=<path_to_ca_cert>


In client, we can use both Keystone auth versions - v2.0 and v3. But server supports only v3.*

To make sure Mistral client works, type:

$ mistral workbook-list

You can see the list of available commands typing:

$ mistral --help