A client for Timetric (http://timetric.com).
Requirements (easy-installable, listed as prereqs in setup.py):
httplib2
python-dateutil
simplejson
Optionally, if you want to use OAuth authentication:
oauth
This is not listed as a prereq, so it won’t be installed by default.
Authentication setup
You’ll provide authentication information to the TimetricClient in a config dict. Timetric supports two types of authentication: OAuth and API tokens. You can choose a method using the 'authtype' key to the config dict. The value of this key can be 'oauth' or 'apitoken'; if not given it defaults to 'oauth'.
If an API token is being used, there must be keys for:
‘apitoken_key’
‘apitoken_secret’
If OAuth is being used, there must also be keys for:
‘consumer_key’
‘consumer_secret’
and if you have already done the necessary key exchange, then this can also contain:
‘access_key’
‘access_token’
OAuth setup
The first time you use the OAuth protocol, you’ll need to do some key exchange with Timetric to set up your tokens.
>>> import timetric# You need a config dict with at minimum your secret and key from Timetric # (see the “Applications” pane of the settings page). In a real app you’ll # want to make this config persistant (the shelve module is a lightweight # place to start) because the library will store OAuth authentication # information back to this config. >>> conf = {‘authtype’:’oauth’, … ‘consumer_key: ‘XXX’, … ‘consumer_secret’: ‘XXX’} >>> client = timetric.TimetricClient(conf)
# The first time through you’ll need to authorize your key with Timetric # by sending the user to an authorization request page. >> token = client.get_request_token() >>> import webbrowser >>> webbrowser.open(client.get_authorize_url(token))
# Once the user has authorized at that page, you can continue. >>> access_token = client.get_access_token(token)
# You can now re-authorize to use this token: >>> conf.update({‘oauth_key’:access_token.key, … ‘oauth_secret’:access_token.secret}) >>> client = timetric.TimetricClient(conf)
API token setup
>>> import timetric# Having got your config dict from somewhere: >>> conf = {‘authtype’:’apitoken’, … ‘apitoken_key’: ‘XXX’, .. ‘apitoken-secret’: ‘XXX’}
# you initialize the timetric client: >>> client = timetric.TimetricClient(conf)
Usage
# There's no API method to get a list of a particular
# user's series, so you need to somehow "know" the series ID.
>>> series = client.series('p-DpewL0TO-iBE4nMBCTsQ')
# Get the latest value
>>> series.latest()
(1236707269.0, 2.0)
# Iterate over the whole dataset
>>> for (timestamp, value) in series:
... print timestamp, value
1236463646.39 3.0
1236486562.94 5.0
1236493503.37 6.0
# Update given a single value
>>> series.update(14)
# Update given an iterable of (time, value) pairs
>>> import time
>>> data = [(time.time() - 100, 11), (time.time() + 100, 15)]
>>> series.update(data)
# Update given a file of CSV data
>>> series.update(open('/tmp/data.csv'))
# Clear all the data out of the series
>>> series.delete()
Metadata
Release files for timetric 1.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| timetric-1.3.tar.gz | 7.8 kB | Without provenance | Details |
Release files / timetric-1.3.tar.gz
| Download URL | timetric-1.3.tar.gz |
|---|---|
| Size | 7.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
52aff270fa4177c6e3860eebfe1328c30182a641391108252ab36290808aa6f4
|
|
BLAKE2b-256 checksum How to use checksums |
e4bda833511bffa32e14f5291e33cf50778ce5468225cc5b7fe249180d1ebcd4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Security for timetric 1.3
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.