Programadores

Desenvolva com o iotBind

APIs simples pensadas para microcontroladores: um URL, uma chave de dispositivo e alguns parâmetros.

HTTP / HTTPS

Envie e leia dados com pedidos GET ou POST e respostas JSON.

MQTT

Publique e subscreva através do seu broker MQTT.one para comandos instantâneos.

Webhooks

Receba notificações assinadas no seu próprio servidor quando algo acontece.

Início rápido

  1. 1

    Crie uma conta

    Registe-se gratuitamente e confirme o seu endereço de email.

  2. 2

    Adicione um dispositivo

    Adicione um interruptor, sensor, depósito ou localizador e abra o ícone da chave para copiar o ID único e a chave secreta.

  3. 3

    Envie o seu primeiro pedido

    Use os exemplos abaixo no seu sketch ou teste-os no navegador.

Noções básicas

O endereço base da versão 1 da API é http://api.iotbind.com/v1 (HTTPS é suportado). Cada pedido inclui estes parâmetros, na query string (GET) ou como campos de formulário (POST):

ParâmetroDescrição
method"get" ou "post": como os parâmetros são enviados. Sempre obrigatório.
keyA chave secreta da API do dispositivo. Sempre obrigatória.
uidO ID único do dispositivo. Sempre obrigatório.

Mantenha a chave do dispositivo secreta. Se for divulgada, gere uma nova no ícone da chave do dispositivo: a chave antiga deixa de funcionar de imediato.

Interruptores

Ligue ou desligue um interruptor, guarde até três valores ou leia o seu estado atual.

GET | POST http://api.iotbind.com/v1/switch.php

ParâmetroDescrição
cmd Comando opcional: onoffgetping
data1 Texto ou número opcional a guardar.
data2 Texto ou número opcional a guardar.
data3 Texto ou número opcional a guardar.
Enviar dados
http://api.iotbind.com/v1/switch.php?method=get&key=DEVICE_KEY&uid=UNIQUE_ID&cmd=on&data1=24.5&data2=OK
Resposta: {"MESSAGE":"UPDATED"}
Ler o dispositivo
http://api.iotbind.com/v1/switch.php?method=get&key=DEVICE_KEY&uid=UNIQUE_ID&cmd=get
{
  "uid": "UNIQUE_ID", "name": "Living room", "type": "RGB Light", "cmd": "on",
  "data1": "24.5", "data1_unit": "C", "data2": "OK", "data2_unit": "", "data3": "", "data3_unit": ""
}

Os mesmos parâmetros funcionam como campos de formulário POST com method=post · Para indicar que o dispositivo está ligado, envie cmd=ping → {"MESSAGE":"PING OK"}

Sensores

Guarde até três leituras ou leia os valores mais recentes.

GET | POST http://api.iotbind.com/v1/sensor.php

ParâmetroDescrição
cmd Comando opcional: getping
data1 Texto ou número opcional a guardar.
data2 Texto ou número opcional a guardar.
data3 Texto ou número opcional a guardar.
Enviar dados
http://api.iotbind.com/v1/sensor.php?method=get&key=DEVICE_KEY&uid=UNIQUE_ID&data1=23.4&data2=41&data3=1012
Resposta: {"MESSAGE":"UPDATED"}
Ler o dispositivo
http://api.iotbind.com/v1/sensor.php?method=get&key=DEVICE_KEY&uid=UNIQUE_ID&cmd=get
{
  "uid": "UNIQUE_ID", "name": "Greenhouse", "type": "Temperature",
  "data1": "23.4", "data1_unit": "C", "data2": "41", "data2_unit": "%", "data3": "1012", "data3_unit": "hPa"
}

Os mesmos parâmetros funcionam como campos de formulário POST com method=post · Para indicar que o dispositivo está ligado, envie cmd=ping → {"MESSAGE":"PING OK"}

Depósitos de líquidos

Guarde o nível e a temperatura do depósito, ligue a bomba ou leia o seu estado.

GET | POST http://api.iotbind.com/v1/tank.php

ParâmetroDescrição
cmd Comando opcional (liga ou desliga a bomba do depósito): onoffgetping
level Nível do depósito (número).
temperature Temperatura opcional do depósito (número).
Enviar dados
http://api.iotbind.com/v1/tank.php?method=get&key=DEVICE_KEY&uid=UNIQUE_ID&cmd=on&level=67&temperature=21
Resposta: {"MESSAGE":"UPDATED"}
Ler o dispositivo
http://api.iotbind.com/v1/tank.php?method=get&key=DEVICE_KEY&uid=UNIQUE_ID&cmd=get
{
  "uid": "UNIQUE_ID", "name": "Roof tank", "type": "Water Level", "cmd": "on",
  "level": "67", "level_unit": "%", "temperature": "21", "temperature_unit": "C"
}

Os mesmos parâmetros funcionam como campos de formulário POST com method=post · Para indicar que o dispositivo está ligado, envie cmd=ping → {"MESSAGE":"PING OK"}

Localização GPS

Guarde uma posição com até quatro valores extra ou leia a posição mais recente.

GET | POST http://api.iotbind.com/v1/tracking.php

ParâmetroDescrição
cmd Comando opcional: getping
latitude Latitude (número).
longitude Longitude (número).
data1 Texto ou número opcional a guardar.
data2 Texto ou número opcional a guardar.
data3 Texto ou número opcional a guardar.
data4 Texto ou número opcional a guardar.
Enviar dados
http://api.iotbind.com/v1/tracking.php?method=get&key=DEVICE_KEY&uid=UNIQUE_ID&latitude=24.7136&longitude=46.6753&data1=62
Resposta: {"MESSAGE":"UPDATED"}
Ler o dispositivo
http://api.iotbind.com/v1/tracking.php?method=get&key=DEVICE_KEY&uid=UNIQUE_ID&cmd=get
{
  "uid": "UNIQUE_ID", "name": "Car", "type": "GPS tracking",
  "latitude": "24.7136", "longitude": "46.6753", "data1": "62", "data1_unit": "km/h"
}

Os mesmos parâmetros funcionam como campos de formulário POST com method=post · Para indicar que o dispositivo está ligado, envie cmd=ping → {"MESSAGE":"PING OK"}

MQTT

O iotBind funciona com o serviço MQTT.one: a plataforma publica nos seus tópicos quando um dispositivo muda e os seus dispositivos publicam mensagens JSON para o iotBind.

  1. Crie uma conta MQTT.one e adicione os tópicos de que precisa.
  2. Na plataforma, abra "Serviço MQTT" e associe a sua conta MQTT.one.
  3. Nas definições do dispositivo, ative "Publicar mensagens MQTT" e escolha o tópico.
  4. Ligue a sua placa ao broker com os seus dados MQTT.one, usando o client ID iotbind-<UNIQUE_ID>.
  5. Publique mensagens JSON no tópico iotbind indicado na sua conta.
Mensagem para o tópico iotbind/switch/
{ "key": "DEVICE_KEY", "uid": "UNIQUE_ID", "cmd": "off", "data1": "24.5" }

O MQTT requer um plano com a funcionalidade MQTT e uma conta em MQTT.one

Códigos de erro

400Pedido inválido: o endereço, os parâmetros ou o corpo não são válidos.
401Não autorizado: a chave do dispositivo ou o ID único estão errados.
404Não encontrado: o recurso pedido não existe.
429Demasiados pedidos: abrande ou verifique os limites do seu plano.

O seu próximo projeto merece uma cloud

Crie uma conta gratuita num minuto e ligue hoje o seu primeiro dispositivo.