Åtkomst till IoT-plattformens API och MQTT-broker
IoT-plattformen exponerar två programmatiska gränssnitt:
- ett REST-API (
https://beta.yggio.net/api/…), fullständigt dokumenterat i Swagger; och - en MQTT-broker (
mqtt.beta.yggio.net:8883) för pub/sub - se MQTT-referensen för fullständiga detaljer.
Den här sidan är en snabbreferens för att komma åt dem med tre vanliga verktyg - curl, Postman och MQTT Explorer. För praktiska genomgångar, se träningslektionerna: Curl, Postman, MQTT Explorer.
Autentisering (REST)
Hämta en användaråtkomsttoken och skicka den som en Bearer-header i varje
autentiserad förfrågan.
POST https://beta.yggio.net/api/auth/local
Content-Type: application/json
{ "username": "…", "password": "…" } → { "token": "eyJ…" }
Authorization: Bearer <token>
Tokens upphör att gälla; begär en ny vid behov. För långlivad applikationsåtkomst, skapa en
klientapp (POST /api/client-apps) eller, för MQTT, en uppsättning grundläggande autentiseringsuppgifter (Basic Credential Set)
(POST /api/basic-credentials-sets). Ändpunkten för att skicka enhetsdata
(/http-push/generic) autentiserar istället med enhetens egen secret.
Vanliga REST-ändpunkter
| Åtgärd | Förfrågan |
|---|---|
| Lista enheter | GET /api/iotnodes (filter: ?q=<field>) |
| En enhet | GET /api/iotnodes/{_id} |
| Uppdatera ett enhetsfält | PUT /api/iotnodes/{_id} |
| Tidsserie | GET /api/iotnodes/{_id}/stats?measurement=<field>&start=<ms>&distance=<s> |
| Skicka data till en generisk enhet | POST /http-push/generic?identifier=secret (body innehåller secret) |
Se Swagger för den fullständiga listan och scheman.
curl
Kommandorad, idealisk för skriptning. Håll token i en variabel:
export YGGIO_URL="beta.yggio.net"
export YGGIO_TOKEN=$(curl -sS -X POST "https://$YGGIO_URL/api/auth/local" \
-H "Content-Type: application/json" \
-d '{"username":"USER","password":"PASS"}' | jq -r .token)
# read
curl -sS "https://$YGGIO_URL/api/iotnodes?q=temperature" \
-H "Authorization: Bearer $YGGIO_TOKEN" | jq .
# push to a generic device (uses the device secret, not the token)
curl -sS "https://$YGGIO_URL/http-push/generic?identifier=secret" \
-H "Content-Type: application/json" \
-d '{"secret":"YOURDEVICESECRET","temperature":22}'
Postman
Grafiskt HTTP-klientverktyg; bra för att utforska API:et och köra sparade collections.
- Skapa en
POST-förfrågan till{{baseUrl}}/api/auth/local(JSON-body medusername/password); i fliken Tests spara token medpm.environment.set("token", pm.response.json().token). - På andra förfrågningar, sätt headern
Authorization: Bearer {{token}}. - Läs med
GET {{baseUrl}}/api/iotnodes; skicka medPOST {{baseUrl}}/http-push/generic?identifier=secret. - För massimport av tidsserier finns en färdig collection - CSV-importcollection (se Lektion 1.4).
MQTT-broker
Anslut med valfri MQTT-klient:
| Inställning | Värde |
|---|---|
| Värd | mqtt.beta.yggio.net |
| Port | 8883 (TLS - aktivera kryptering + certifikatvalidering) |
| Autentiseringsuppgifter | en uppsättning grundläggande autentiseringsuppgifter (Basic Credential Set) |
| Publicera till (generisk enhet) | yggio/generic/v2/<id> |
| Prenumerera på användarutdata | yggio/output/v2/<userID>/# |
Att publicera till yggio/generic/v2/<id> skapar/uppdaterar automatiskt en enhet; delämnen
blir nästlade objekt. Fullständiga detaljer (kanaler, reserverade ämnen, exempel) finns i
MQTT-referensen.
MQTT Explorer
MQTT Explorer är ett skrivbordsklientverktyg för att inspektera brokern:
- Ny anslutning → Värd
mqtt.beta.yggio.net, Port8883, Kryptering på, Validera certifikat på, och din uppsättning grundläggande autentiseringsuppgifter. - Ta bort standardämnena först. MQTT Explorer prenumererar på
#och$SYS/#som standard, men IoT-plattformen ger inte åtkomst till brokerns rot - dessa prenumerationer avvisas (de kräver root-behörighet). Öppna Advanced, ta bort posterna#och$SYS/#, och lägg till ditt eget ämne istället (t.ex. din enhets- eller anvädarutdataämne). Detta är det vanligaste misstaget. - Publicera en JSON-payload till
yggio/generic/v2/<id>för att skapa/uppdatera en enhet. - Prenumerera på ditt eget ämne för att se exakt vad IoT-plattformen publicerar, live.
Verktygsöversikt
| Verktyg | Gränssnitt | Bäst för |
|---|---|---|
| curl | REST | snabba tester, skriptning/automatisering |
| Postman | REST | utforska API:et, sparade collections, CSV-import |
| MQTT Explorer | MQTT | publicera testdata, inspektera brokern |
mosquitto_sub/pub | MQTT | CLI/skriptad MQTT (se MQTT-referensen) |
Se även
- MQTT-referensen - brokern i detalj (kanaler, reserverade ämnen, autentisering).
- Translator API - översättarobjektet och datamodellen.
- Swagger - den fullständiga REST-API-referensen.
- Träning: Curl, Postman, MQTT Explorer.