Sisense Python SDK
Project description
Overview
PySense is the fastest, easiest way to manage and automate your Sisense deployment.
PySense is more than just an API wrapper. PySense handles all the complexities of the Sisense API for you so you can spend more time creating value for your customers.
I've taken my years of experience both with implementing BI solutions myself and as a consultant managing implementations for large corporations to streamline what matters most.
With PySense you can manage your BI implementation like a pro with barely any technical skills.
Prerequisites
Required:
- A basic understanding of a high level programing language (JS, Java, Python, C/C++/C#, etc)
- A basic understanding of the following programming concepts
- Control Flows (if, for, while)
- Objects (calling object methods)
- Collections (arrays, lists)
Recommended:
- A basic understanding of Python
If you lack the above but still wish to use PySense I recommend CodeAcademy
Getting Started
You'll need to have Python 3.0+ and an IDE. Development of PySense was done with PyCharm.
If you need help installing Python/PyCharm, see our tutorial
Install PySense with pip:
- pip install PySenseSDK
V 0.3.0 Release Notes
-
Breaking changes
-
Sisense Roles are now an enum.
- There are many different names for a role that are used internally and externally. In an attempt to control for that, Roles are now implemented as an enum in SisenseRoles.Role.
- To get the role from a string, you can use SisenseRole.Role.from_str()
- To add a user with the Viewer role you would do: add_user('my_user@example.com', SisenseRole.Role.from_str('Viewer'))
- This will ensure stability around roles as Sisense terminology changes.
- PySense.get_role_name -> PySense.get_role_by_id()
- This method now returns a SisenseRole.Role enum instead of a string
-
Many methods have been renamed
- Some Sisense components have ids, some have oids, some have _ids, and some have multiple. When I started I wanted to see if I could remove some of the confusion by picking a single naming structure. As Sisense and PySense have grown in complexity, that goal is no longer realistic and so methods have been renamed to match their json attributes more directly.
- In addition some methods have been renamed for brevity, clarity, and to align with the rest of PySense.
- The parameters and usage of these methods has not changes unless noted otherwise
- The following have been changes
- Dashboard.get_name -> Dashboard.get_title
- Dashboard.get_dashboard_folder -> Dashboard.get_folder
- Elasticube.get_name -> Elasticube.get_title
- Elasticube.get_security_for_user -> Elasticube.get_datasecurity_for_user
- Elasticube.get_elasticube_oid -> Elasticube.get_oid
- Folder.get_id -> Folder.get_oid
- Widget.get_id -> Widget.get_oid
- Group.get_id -> Group.get_oid
-
Undocumented endpoints have been disabled
- When PySense first started as more of a hacked together project, I felt it would be nice to incorporate hidden endpoints. As PySense has grown it is unsustainable to keep these end points reliable.
- The following methods have been modified
- DataModel.export_to_smodel no longer works on Windows
- Elasticube.get_model no longer works on Windows
- To manipulate datamodels in Windows, use the CLI/Prism
-
Snippets have been removed as the effort required to keep them in sync with versions was not worth it
-
-
Additions
- A public training series is being created. The reference material for that will be stored in the PySense Tutorial folder.
-
Fixes
- More consistent version checking
-
Known Issues
- REST API sometimes becomes responsive on Linux builds
- 0.3.0 has a large number of changes. If you encounter problems, feel free to create GitHub issues.
- Scripts folder was updated, but due to the difficulty of testing the scripts, there may be syntax issues. If you find them, feel free to create a GitHub issue.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file PySenseSDK-0.3.0.tar.gz
.
File metadata
- Download URL: PySenseSDK-0.3.0.tar.gz
- Upload date:
- Size: 26.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2bf745ed8c2b22a7ec3b3853fa2461a834582bc93c92bb9a35ddfded3c9a0677 |
|
MD5 | 92ed7f0274319597cc2c53567650d108 |
|
BLAKE2b-256 | 4102ecad081815ca62a18023de351c5b30a35717ad1636baca9188794c6cb2c6 |
File details
Details for the file PySenseSDK-0.3.0-py3-none-any.whl
.
File metadata
- Download URL: PySenseSDK-0.3.0-py3-none-any.whl
- Upload date:
- Size: 48.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f9a33377c2805be21cfd43f12a281e6960a61b5c9869eb31f4dc89f4fa6603ab |
|
MD5 | a816dd148f8ef1a4dda82c5196cf9b74 |
|
BLAKE2b-256 | c792aa13699ef81806e009b8e9cd87e18eb60459d7dcc736f26b6a4969f14be4 |