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.
IOT endpoint
GET
https://brewbricks.comapi/iot/v1?apikey=apikey&type=:type&brand=:brand&version=:version&chipid=:chipid[sakey=:savalue]
This method is the main endpoint for connecting various IOT devices to BierBot Bricks.
Query Parameters
apikey
string
The `apikey` of your brewery.
type
string
A hardware descriptor, e.g. sonoff_th16
, wemos_d1
, rapsberry_3b
(logic: manufacturer_board
).
brand
string
Who produced your device. For own / opensource projects please use oss
.
version
string
Firmware version of your hardware. E.g. 0.4.2
.
chipid
string
The chipid / similar of your device. This has to be unique among all devices of one brewery.
sakey
string
For how `sakey` has to be shaped, please see below. `savalue` can be anything of the following:
- 0/1
: indicating the current state of an relay.
- 0-1023
indicating the current state of an PWM signal.
- 0-105
indicating a temperature reading in degree celsius.
- 0-20
indicating the specific graviy (SG) in degree plato (°P).
The sensor / actory key ( sakey
) has follow the following schema ($x_$y_$z_$i
):
$x
all fields are prefixed witha
(actor) ors
(sensor)$y
datatype of the sensor / actor. currently supported arebool
andnumber
$z
the physical meaning, e.g.temp
,wort
for sensors. orepower
,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
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
Sample implementations are available in
Last updated