A rest api client for your fireboard thermometer
Project description
fireboard_cloud_api_client
A rest api client for your fireboard thermometer.
Note about rate limits
From the Fireboard docs:
Users will be limited to 200 API calls per hour, if this rate limit is exceeded then user access will be blocked for 30 minutes.
See Fireboard API: Rate Limits
Usage
import asyncio
from fireboard_cloud_api_client import FireboardAPI
# replace with your fireboard account email
FIREBOARD_USER_EMAIL = 'someone@example.com'
# replace with your fireboard account password
FIREBOARD_USER_PASSWORD = 'somepassword'
async def initialize_app(email, password):
fireboard_client = FireboardAPI(email, password)
devices = await fireboard_client.list_devices()
print("devices", devices)
asyncio.run(initialize_app(FIREBOARD_USER_EMAIL, FIREBOARD_USER_PASSWORD))
API Reference
fireboard_client = FireboardAPI(email, password, base_url, session)
Params:
- email: the email for your fireboard account.
- password: the password for your fireboard account.
- base_url: (optional) the url for the fireboard could api (default:
https://fireboard.io/api
). - session: (optional) an aiohttp ClientSession object to use for requests.
Returns: a fireboard client object
await fireboard_client.list_devices()
Params: none
Returns: all fireboard devices associated with your account.
See: Fireboard API: List All Devices
await fireboard_client.get_device(device_uuid)
Params:
- device_uuid: the uuid of the device you want details for
Returns: detailed information about a specific device by referencing the Device’s UUID.
See: Fireboard API: Realtime Temperature
await fireboard_client.get_realtime_temperature(device_uuid)
Params:
- device_uuid: the uuid of the device you want details for
Returns: the latest temperature values per channel from the device using the Temps endpoint. Temperature values are included if they are less than a minute old, otherwise nothing is returned for the channel.
Example:
[
{
"temp": 69.9,
"created": "2021-12-01T19:07:25Z",
"degreetype": 2,
"channel": 1
},
{
"temp": 72.6,
"created": "2021-12-01T19:07:25Z",
"degreetype": 2,
"channel": 2
},
{
"temp": 71.9,
"created": "2021-12-01T19:07:25Z",
"degreetype": 2,
"channel": 3
}
]
await fireboard_client.get_realtime_drivelog(device_uuid)
Params:
- device_uuid: the uuid of the device you want details for
Returns: the latest FireBoard Drive log information for your device using the Drivelog endpoint. Drive log information is returned if less than a minute old
See: Fireboard API: Realtime Drive Data
await fireboard_client.list_sessions()
Params: none
Returns: all sessions associated with your account.
See: Fireboard API: List All Sessions
await fireboard_client.get_session(session_id)
Params:
- session_id: id of the session to retrieve
Returns: data about a single session
See: Fireboard API: Retrieve a Specific Session
await fireboard_client.get_session_chart(session_id)
Params:
- session_id: id of the session to retrieve
- drive: (optional, default = False) True to include drive data
Returns: all temperature data from the session in a format suitable for many charting frameworks.
See: Fireboard API: Retrieve a Specific Session
External Reference
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
Hashes for fireboard_cloud_api_client-0.0.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0ba7fb7eda10ba0ca24c1986635deeb1252fac44f95a3b5ea9f2ded04fb519ff |
|
MD5 | e327907f95aff997a13f8373216c9171 |
|
BLAKE2b-256 | d7d9346e1df8707f1c37493df0d2fa4cef84667e4f8f457d39a2e04defc73607 |
Hashes for fireboard_cloud_api_client-0.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2684d59b120971c95ee28ac38dc8c0b9cab5f5dfd1101cd55829b413e7cc6d0d |
|
MD5 | 57fbf1854664536d53c85d468c172b63 |
|
BLAKE2b-256 | 581e518ff101431222cdcdf1ce40bf35926495cb35e0001b87c4271b60796e22 |