Qumulo API Tools
This package contains the Qumulo Core Python SDK and the qq CLI utility, which allow users to interact with the Qumulo REST API server.
Using the Python SDK
To get started, import the RestClient class from the qumulo.rest_client module and create an instance. The RestClient class contains attributes that allow programmatic access to all of the Qumulo Core REST API endpoints.
For example:
from qumulo.rest_client import RestClient
# Create an instance of RestClient associated with the Qumulo Core file
system at qumulo.mycompany.net
rc = RestClient("qumulo.mycompany.net", 8000)
# Log in to Qumulo Core using local user or Active Directory credentials
rc.login("username", "password")
# Print all of the SMB share configuration information
print(rc.smb.smb_list_shares())
To inspect the various available properties, open a Python REPL and run the following commands:
from qumulo.rest_client import RestClient
rc = RestClient("qumulo.mycompany.net", 8000)
# See REST API groups:
[p for p in dir(rc) if not p.startswith('_')]
# See SDK endpoints within a particular API group
[p for p in dir(rc.quota) if not p.startswith('_')]
Using qq
After installing the qumulo-api package, the qq CLI utility will be installed in your system.
Note: On Windows, qq.exe can be found under the Scripts\ directory in your Python installation. Adding this path your your %%PATH%% environment variable will allow you to run qq.exe without prefixing it with the full path.
To see all commands available from the qq tool:
$ qq --help
For shell tab completion, install the package with the completion extra, which provides a compatible version of argcomplete:
$ pip install 'qumulo-api[completion]' $ eval "$(register-python-argcomplete qq)"
To run most commands against the REST API server, you must first login:
$ qq --host host_ip login --user admin
Once authenticated, you can run other commands:
# Get the network configuation of nodes in the cluster: $ qq --host <qumulo_host> network_poll # Get the list of users $ qq --host <qumulo_host> auth_list_users # Get help with a specific command $ qq --host <qumulo_host> auth_list_users --help
To see the information about the actual HTTP requests and responses sent over the wire for a particular command, use the –debug flag:
$ qq --host <qumulo_host> --debug smb_settings_get
REQUEST: GET https://<qumulo_host>:8000/v1/smb/settings
REQUEST HEADERS:
User-Agent: qq
Content-Type: application/json
Content-Length: 0
Authorization: Bearer <token>
RESPONSE STATUS: 200
RESPONSE:
Date: Fri, 18 Mar 2022 22:15:47 GMT
ETag: "VNhqnQ"
Content-Type: application/json
Content-Length: 329
Strict-Transport-Security: max-age=31536000; includeSubdomain
{'session_encryption': 'NONE', 'supported_dialects': ['SMB2_DIALECT_2_002', 'SMB2_DIALECT_2_1', 'SMB2_DIALECT_3_0', 'SMB2_DIALECT_3_11'], 'hide_shares_from_unauthorized_users': False, 'hide_shares_from_unauthorized_hosts': False, 'snapshot_directory_mode': 'VISIBLE', 'bypass_traverse_checking': False, 'signing_required': False}
Notes
For more information, visit our Knowledge Base site: https://care.qumulo.com
Release files for qumulo-api 7.10.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| qumulo_api-7.10.0-py3-none-any.whl | Python 3 | none | any | Details |
Release files / qumulo_api-7.10.0-py3-none-any.whl
| Download URL | qumulo_api-7.10.0-py3-none-any.whl |
|---|---|
| Size | 336.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2f51f9f8ae1f613bb991af1c83a071cbf4a47fdfdf0535e4adc9612473214192
|
|
BLAKE2b-256 checksum How to use checksums |
132fc31d0434fc6d674d20bf447d51f9271a29149669ec038db716034d68bfe4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.28.1 setuptools/75.3.4 requests-toolbelt/0.9.1 tqdm/4.65.0 CPython/3.8.0
|