Bricks
Search
K

Bricks API

The Bricks API is fully documented and open to everyone. If you are a software dev, this section will help you to turn your hardware into a "Brick" and interact with our software.
get
https://brewbricks.com
api/iot/v1?apikey=apikey&type=:type&brand=:brand&version=:version&chipid=:chipid[sakey=:savalue]
IOT endpoint
The sensor / actory key ( sakey ) has follow the following schema ($x_$y_$z_$i):
  • $x all fields are prefixed with a (actor) or s (sensor)
  • $y datatype of the sensor / actor. currently supported are bool and number
  • $z the physical meaning, e.g. temp, wort for sensors. or epower, pressure for actors.
  • $i index on the device, starts with 0. This allows enumeration if multiple interfaces are of the same type. The index needs to be incremented for all groups of $x and $z (the datatype is not relevant).
Return value is a JSON map
{
"error": 0,
"error_text": "",
"warning": 0,
"warning_text": "",
"next_request_ms": 15000
}
Attention: Pay respect to the next_request_ms field. Especially if you contact the backend repetitively too early your Brick might get banned permanently.
Examples:
  • Device 1:
    • s_number_temp_0: first sensor sending a temperature number.
    • s_number_temp_1: second sensor sending a temperature number.
    • s_number_temp_id_0: ID of the first temperature sensor, i.e. 0x00003ffc3664.
    • a_number_epower_0: This a PWM actor.
    • a_bool_epower_1: note, how index is incremented, despite the change of $z.

Sample request and implementations

Example request by the BierBot Brick would look like
https://brewbricks.com/api/iot/v1?type=sonoff_th16&brand=bierbot&version=0.9.4&s_number_temp_0=42&a_bool_epower_0=0&chipid=142424242_5C:CF:FF:20:CC:A5&apikey=YOUR_API_KEY
Sample implementations are available in