Integração da API
Todos os dados de recolha de resíduos estão disponíveis através de uma API HTTP aberta. A API é a base de qualquer integração – utilize-a diretamente nas suas próprias aplicações, scripts ou sistemas de casa inteligente.
Endpoint
O endpoint central devolve em JSON todas as datas de recolha de uma morada, agrupadas por tipo de resíduo. É o mesmo endpoint utilizado na integração openHAB:
POSThttps://binable.app/api/fetch
Método: POST · Resposta: JSON · A chave de API é opcional – são possíveis pedidos anónimos, mas podem ter limites mais restritos.
Transmissão da morada
A morada pode ser transmitida de três formas diferentes – escolha a que melhor se adapta ao seu sistema.
São utilizados os seguintes campos: street, houseNumber, zip, city e country (código de país ISO 3166-1 alpha-2, por exemplo DE).
Parâmetros de consulta
Acrescente os campos da morada ao URL (os carateres acentuados/especiais têm de ser codificados em URL):
https://binable.app/api/fetch?street=Musterstra%C3%9Fe&houseNumber=1a&zip=12345&city=Musterstadt&country=DE
Cabeçalhos HTTP
Transmita a morada através de cabeçalhos X-Address-* – é o que a integração openHAB utiliza. Nota: sem carateres acentuados/especiais nos cabeçalhos, escreva "ue" em vez de "ü".
X-Address-Street: Musterstrasse
X-Address-HouseNumber: 1a
X-Address-Zip: 12345
X-Address-City: Musterstadt
X-Address-Country: DE
Corpo JSON
Envie a morada como objeto JSON no corpo do pedido:
{
"street": "Musterstraße",
"houseNumber": "1a",
"zip": "12345",
"city": "Musterstadt",
"country": "DE"
}
Exemplo: chamada curl
Uma chamada completa com corpo JSON tem este aspeto:
curl -X POST https://binable.app/api/fetch \
-H "Content-Type: application/json" \
-d '{
"street": "Musterstraße",
"houseNumber": "1a",
"zip": "12345",
"city": "Musterstadt",
"country": "DE"
}'
A mesma chamada com uma chave de API:
curl -X POST https://binable.app/api/fetch \
-H "Authorization: ApiKey <dein-api-key>" \
-H "Content-Type: application/json" \
-d '{"street":"Musterstraße","houseNumber":"1a","zip":"12345","city":"Musterstadt","country":"DE"}'
Também poderá gostar
← Vista geral das integrações · Documentação completa da API (abre num novo separador)