Skip to main content

A client library for accessing data through the SparkWorks Rest API.

SparkWorks Rest API Python Client

This Python package is automatically generated by the Swagger Codegen project:

  • API version: v2.0

  • Build package: io.swagger.codegen.languages.PythonClientCodegen For more information, please visit http://www.sparkworks.net/

Requirements.

Python 2.7 and 3.4+

Installation & Usage

pip install

pip install sparkworksrest

(you may need to run pip with root permission: sudo pip install sparkworksrest)

Then import the package:

import sparkworks_client

Python Client Documentation

Documentation for the client can be found on Github

Setting up the access to the SparkWorks Rest API

import sparkworks_client

# Configure OAuth2 access token for authorization: oauth2
configuration = sparkworks_client.Configuration("username", "password", "client_id", "client_secret")
configuration.connect()

# create an instance of the API class
api_client = sparkworks_client.ApiClient(configuration)

#initialize the clients needed
unit_api_instance = sparkworks_client.UnitApi(api_client)
group_api_instance = sparkworks_client.GroupApi(api_client)
phenomenon_api_instance = sparkworks_client.PhenomenonApi(api_client)
gateway_api_instance = sparkworks_client.GatewayApi(api_client)
resource_api_instance = sparkworks_client.ResourceApi(api_client)
command_api_instance = sparkworks_client.CommandApi(api_client)
registry_api_instance = sparkworks_client.RegistryApi(api_client)
data_api_instance = sparkworks_client.DataApi(api_client)
participatorySensing_api_instance = sparkworks_client.ParticipatorySensingApi(api_client)

Examples

Example 1: List Resources and Access Resource Data

import time

import sparkworks_client

# Configure OAuth2 access token for authorization: oauth2
configuration = sparkworks_client.Configuration("username", "password", "client_id", "client_secret")
configuration.connect()
print("access_token: " + configuration.access_token)

# create an instance of the API class

api_client = sparkworks_client.ApiClient(configuration)

resource_api_instance = sparkworks_client.ResourceApi(api_client)
unit_api_instance = sparkworks_client.UnitApi(api_client)
phenomenon_api_instance = sparkworks_client.PhenomenonApi(api_client)
data_api_instance = sparkworks_client.DataApi(api_client)

# list all Resources
resources = resource_api_instance.get_resources()

print("====resource====")
# retrieve resource by uuid
resource = resource_api_instance.get_resource_by_uuid(resources[0].uuid)
print(resource)

print("====phenomenon====")
phenomenon = phenomenon_api_instance.get_phenomenon_by_uuid(resource.phenomenon_uuid)
print(phenomenon)

print("====unit====")
unit = unit_api_instance.get_unit_by_uuid(resource.unit_uuid)
print(unit)

time_from = (int(round(time.time())) - 5 * 60 * 60) * 1000
time_to = int(round(time.time())) * 1000

print("====data 5min====")
# retrieve data - granularity 5min
data = data_api_instance.query_time_range({
    "queries": [
        {
            "from": time_from,
            "to": time_to,
            "granularity": "5min",
            "resourceUuid": resource.uuid
        }
    ]
})

for d in data.results.values():
    for datum in d.data:
        print("5min", datum)

print("====data hour====")
# retrieve data - granularity hour
data = data_api_instance.query_time_range({
    "queries": [
        {
            "from": time_from,
            "to": time_to,
            "granularity": "hour",
            "resourceUuid": resource.uuid
        }
    ]
})

for d in data.results.values():
    for datum in d.data:
        print("hour", datum)

Example 2: List Groups and Group Resources

import sparkworks_client

# Configure OAuth2 access token for authorization: oauth2
configuration = sparkworks_client.Configuration("username", "password", "client_id", "client_secret")
configuration.connect()
print("access_token: " + configuration.access_token)

# create an instance of the API class

api_client = sparkworks_client.ApiClient(configuration)

resource_api_instance = sparkworks_client.ResourceApi(api_client)
group_api_instance = sparkworks_client.GroupApi(api_client)

print("====groups====")
# list all groups
groups = group_api_instance.get_all_groups()
for group in groups:
    print(group)

print("====group[0].resources====")
# retrieve resources by group uuid
resources = group_api_instance.get_group_resources(groups[0].uuid)
for resource in resources:
    print(resource)

Metadata

Release files for sparkworksrest 1.0.15

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for sparkworksrest 1.0.15
File Size Uploaded Provenance Actions
sparkworksrest-1.0.15.tar.gz 57.0 kB Without provenance Details for sparkworksrest-1.0.15.tar.gz

Release files / sparkworksrest-1.0.15.tar.gz

Download URL sparkworksrest-1.0.15.tar.gz
Size 57.0 kB
Tags Source
SHA-256 checksum
How to use checksums
ec6ae93fae48db1f8aa9a81bccb2ea841b25eab3722624e629c016ec2c46b741
BLAKE2b-256 checksum
How to use checksums
a3450c12696be961ef714fadf182e655789e7c2ab92119c408c7a00f37d9268c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.2

Security for sparkworksrest 1.0.15

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page