Skip to main content

Python interface for the Strategy One REST API

Project description

Strategy One Logo

image image image

mstrio: Simple and Secure Access to Strategy One Data

mstrio provides a high-level interface for Python and is designed to give administrators, developers, and data scientists simple and secure access to their Strategy One environment. It wraps Strategy One REST APIs into simple workflows, allowing users to fetch data from cubes and reports, create new datasets, add new data to existing datasets, and manage Users/User Groups, Servers, Projects, and more. Since it enforces Strategy One’s user and object security model, you don’t need to worry about setting up separate security rules.

With mstrio-py for system administration, it’s easy to minimize costs by automating critical, time-consuming administrative tasks, even enabling administrators to leverage the power of Python to address complex administrative workflows for maintaining a Strategy One environment.

With mstrio-py for data science, it’s easy to integrate cross-departmental, trustworthy business data in machine learning workflows and enable decision-makers to take action on predictive insights in Strategy One Reports, Dashboards, HyperIntelligence Cards, and customized, embedded analytical applications.

Table of Contents

Main Features

Main features of mstrio-py allows to access Strategy One data:

  • Connect to your Strategy One environment using Connection class (see code_snippets)

    Note: to log into Library and use mstrio-py user needs to have UseLibrary privilege.

  • Import and filter data from a OlapCube, SuperCube or Report into a Pandas DataFrame (see code_snippets)

  • Export data into Strategy One by creating or updating SuperCube (see code_snippets)

Since version 11.3.0.1, mstrio-py includes also administration modules:

Documentation

Detailed information about mstrio-py package can be found in official documentation.

Usage Remarks

  • It is recommended NOT to use Anaconda environment. Please see Installation section below for details.
  • Currently it is not possible to use mstrio-py package to update cubes created via Web. Unfortunately it is not possible to use any REST API endpoint to check whether cube was created via Web or via REST API to provide some warning. In case of seeing one of the following error messages it is most probable that cube was created via Web and REST API can't handle its update, so if you want to update this particular cube you have to use Web.
When we tried to map the new dataset, we detected that some columns are missing or the data type changed, etc.
We could not obtain the data because the DB connection changed and the table does not exist anymore.
  • When trying to download a big IMDB Cube (or a Report based on such Cube) on multi-node environment, sometimes the process may fail. This is due to the characteristic of data retrieval of IMDB Cubes with connection to more than one node on iServer. For now, known workaround is to log out and just simply try again. This type of issue can be identified when seeing any of the following error messages during work with IMDB Cube on multi-node environment:
Cube cannot be found.

(even if previously it was found without issue)

Error getting cube metadata information. I-Server Error ERR001, (ServiceManager: XML syntax error.)

Installation

Prerequisites

  • Python 3.10+
  • MicroStrategy 2019 Update 4 (11.1.4)+

Install the mstrio-py Package

Note: it is NOT recommended to install mstrio-py in an Anaconda environment. For a seamless experience, install and run it in Python's virtual environment instead.

Installation is easy when using pip.

pip install mstrio-py

Versioning & Changelog

Current version: 11.5.5.101 (23 May 2025). Check out Changelog to see what's new.

mstrio-py is constantly developed to support newest Strategy One REST APIs. Functionalities may be added to mstrio on monthly basis. It is recommended to always install the newest version of mstrio-py, as it will be most stable and still maintain backwards compatibility with various Strategy One installations, dating back to 11.1.4.

Features that will be added to the package but require APIs not supported by your environment (I-Server), will raise VersionException.

mstrio-py can be used for both, data-science related activities and for administrative tasks. Former requires at least MicroStrategy 2019 Update 4 (11.1.4), latter works with 11.2.1 and higher.

If you intend to use mstrio with MicroStrategy 2019 Update 3 (11.1.3) or older, refer to the PyPI package archive to download mstrio 10.11.1, which is supported on:

  • MicroStrategy 2019 (11.1)
  • MicroStrategy 2019 Update 1 (11.1.1)
  • MicroStrategy 2019 Update 2 (11.1.2)
  • MicroStrategy 2019 Update 3 (11.1.3)

Refer to the PyPI package archive for a list of available versions.

To install a specific, archived version of mstrio, choose the desired version available on PyPI package archive and install with pip, as follows:

pip install mstrio-py==10.11.1

Deprecating Features

When features (modules, parameters, attributes, methods etc.) are marked for deprecation but still accessed, the following DeprecationWarning will be shown (example below). The functionality will continue to work until the version specified in the warning is released.

Deprecation warning

More Resources

Project details


Download files

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

Source Distribution

mstrio_py-11.5.5.101.tar.gz (587.9 kB view details)

Uploaded Source

Built Distribution

mstrio_py-11.5.5.101-py3-none-any.whl (631.3 kB view details)

Uploaded Python 3

File details

Details for the file mstrio_py-11.5.5.101.tar.gz.

File metadata

  • Download URL: mstrio_py-11.5.5.101.tar.gz
  • Upload date:
  • Size: 587.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.1

File hashes

Hashes for mstrio_py-11.5.5.101.tar.gz
Algorithm Hash digest
SHA256 00a87880340204bc862382ba106eda852f04dfd62e4102c5dd072adec42b09f3
MD5 05af7d62554f62075a29dcd937e5777b
BLAKE2b-256 b8aed358c2524c211fd68a8ad220d1b8aef75cb329db4be5bbe65ab7f34c2153

See more details on using hashes here.

File details

Details for the file mstrio_py-11.5.5.101-py3-none-any.whl.

File metadata

File hashes

Hashes for mstrio_py-11.5.5.101-py3-none-any.whl
Algorithm Hash digest
SHA256 a70a9a64f01f55c55b525ca448c2a21909985f13edcf7f719697ed94789f17cb
MD5 738da7ce41af673648ab626009e3c574
BLAKE2b-256 693b1036c54b549eb4fef1aa94ee7677417c22266b25c71da03535c580bbb7c6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page