FireBoard Cloud API

You can use the FireBoard REST API to access information from the FireBoard Cloud, including devices, sessions, and temperature channels. Requests are in JSON format and require a token authentication method.

The current FireBoard REST API version is v1.

Requirements

To use the FireBoard REST API, you must have a FireBoard account.

Authentication

The FireBoard REST API uses a simple token-based HTTP Authentication scheme. The unique account token can be retrieved through the login endpoint.

POST the login credentials through shell
curl https://fireboard.io/api/rest-auth/login/
-X POST
-H 'Content-Type: application/json'
-d '{"username":"your-username-here","password":"your-password-here"}'

Sample response:

{ "key": "9944bb9966cc22cc9418ad846dd0e4bbdfc6ee4b" }

Retrieve Authentication Token

POST https://fireboard.io/api/rest-auth/login/

JSON Request Parameters

Parameter Description
username Your fireboard.io username or email address required
password Your fireboard.io account password required

Using the Authentication Token

The FireBoard API expects the authentication token to be included in the Authorization HTTP header for all request. The key should be prefixed by the string literal “Token”, with whitespace separating the two strings. For example:

Authorization: Token 9944bb9966cc22cc9418ad846dd0e4bbdfc6ee4b

Device API

The device API allows you to retrieve information about any FireBoard in the authenticated account.

Device properties

Attribute Type Description
id integer Unique identifier resource.
UUID string Alternative unique identifier resource.
title string The name of the FireBoard.
created date-time The date the FireBoard was added to the account.
hardware_id string The serial number of the FireBoard.
latest_temps array An array of the latest temperature readings from this FireBoard. Temperature readings older than 60 seconds are not included.
device_log object Most recent log information from the FireBoard.
channels array An array representing each channel/port on the FireBoard. Channels include labels, alert values, and notification settings.
last_templog date-time The date of the last known temperature recorded by this FireBoard.

List All Devices

curl "https://fireboard.io/api/v1/devices.json"
-H "Authorization: Token 9944bb9966cc22cc9418ad846dd0e4bbdfc6ee4b"

The Devices endpoint allows you to view all FireBoards in your account.

GET https://fireboard.io/api/v1/devices.json

Retrieve a Specific Device

curl "https://fireboard.io/api/v1/devices/1e7a77ea-3ed8-4f5a-824a-53e307a949b2.json"
-H "Authorization: Token 9944bb9966cc22cc9418ad846dd0e4bbdfc6ee4b"

Retrieve detailed information about a specific device by referencing the Device’s UUID.

GET https://fireboard.io/api/v1/devices/<UUID>.json

Get Real-Time Temperature From the Device

curl "https://fireboard.io/api/v1/devices/1e7a77ea-3ed8-4f5a-824a-53e307a949b2/temps.json"
-H "Authorization: Token 9944bb9966cc22cc9418ad846dd0e4bbdfc6ee4b"

Get 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.

GET https://fireboard.io/api/v1/devices/<UUID>/temps.json

Get Real-Time Drive data From the Device

curl "https://fireboard.io/api/v1/devices/1e7a77ea-3ed8-4f5a-824a-53e307a949b2/drivelog.json"
-H "Authorization: Token 9944bb9966cc22cc9418ad846dd0e4bbdfc6ee4b"

Get the latest FireBoard Drive log information for your device using the Drivelog endpoint. Drive log information is returned if less than a minute old.

GET https://fireboard.io/api/v1/devices/<UUID>/drivelog.json

Session API

The session API allows you to retrieve information about any current or historical session in the authenticated account.

Session Properties

Attribute Type Description
id integer Unique identifier resource.
title string The name of the session.
duration string String representation of the total duration of this session (e.g. 5 hours, 30 minutes).
created date-time The date the session was created in the FireBoard Cloud.
start_time date-time The configurable start time for the session.
end_time date-time The configurable end time for the session.
description string A string contained notes entered by the user pertaining to the session.
owner object An object representation of the owner’s account information.
devices array An array of FireBoard devices that were used during the session.

List All Sessions

curl "https://fireboard.io/api/v1/sessions.json"
-H "Authorization: Token 9944bb9966cc22cc9418ad846dd0e4bbdfc6ee4b"

The Sessions endpoint allows you to view all sessions in your account

GET https://fireboard.io/api/v1/sessions.json

Retrieve a Specific Session

curl "https://fireboard.io/api/v1/sessions/123456.json"
-H "Authorization: Token 9944bb9966cc22cc9418ad846dd0e4bbdfc6ee4b"

Retrieve detailed information about a specific session by referencing the session’s id.

GET https://fireboard.io/api/v1/sessions/<id>.json

Retrieve Session Data for Charting

curl "https://fireboard.io/api/v1/sessions/<id>/chart.json"
-H "Authorization: Token 9944bb9966cc22cc9418ad846dd0e4bbdfc6ee4b"

The Chart endpoint provides all temperature data from the session in a format suitable for many charting frameworks. The optional drive parameter can be used to include FireBoard Drive data in the output.

Parameter Description
drive Pass this parameter in the query string with a value of 1 to include Drive data from your session e.g ?drive=1 optional

GET https://fireboard.io/api/v1/sessions/<id>/chart.json

The chart data is an array of objects representing a specific channel on a specific device.

Attribute Type Description
x array Array of unix timestamps
y array Array of temperature values or Drive %
degreetype integer Integer representing the degree type: 1=C°, 2=F°
device string The UUID identifier of the device
label string The configurable label of the channel

Rate Limits

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.

Best Practices:

Limits subject to change at discretion of FireBoard