Hoppa till huvudinnehåll

NGSI

Detta dokument innehåller några exempel på några vanliga API-anrop för att hantera iotnoder med NGSI v2 API. Du kan också interagera med iotnoder genom det vanliga Yggio API:et. För mer information om Yggio API, se Hantera Iotnodes.

Alla exempel som kräver åtkomsttoken kommer att anges som "Bearer <token>" där <token> bör ersättas med ditt eget åtkomsttoken.

fiware-userid bör vara ditt användar-id, som kan hittas i användarprofilen i kontrollpanelen.

<device_id> är de 24 tecken långa hexadecimala tecken som används för att identifiera din nod.

Skapa en ny entitet

I detta exempel skapar vi en ny entitet av typen Room med några attribut.

curl https://public.yggio.net/ngsi/v2/entities -s -S -H "Fiware-UserToken: $TKN" -H 'Content-Type: application/json' -d @- <<EOF
{"id":"myRoom","type":"Room","temperature":{"value":23,"type":"Float"},"humidity":{"value":45,"type":"Integer"}}
EOF

Uppdatera en entitet

I detta exempel uppdaterar vi beskrivningen av entiteten.

curl -sS -X POST https://public.yggio.net/ngsi/v2/entities/<device_id>/attrs?type=Device \
-H 'authorization: Fiware-UserToken <token>' \
-H 'content-type: application/json' \
-H 'fiware-service: yggio' \
-H 'fiware-servicepath: /' \
-H 'fiware-userid: <userid>' \
-d @- <<EOF
{
"description": "My new description"
}
EOF

Hämta entiteter

I detta exempel hämtar vi alla entiteter av en specifik typ, i detta fall Room.

curl https://public.yggio.net/ngsi/v2/entities?type=Room -H "Fiware-UserToken: $TKN"

I detta exempel visar vi hur man hämtar entiteter som matchar en specifik "q-query".

curl "https://ngsi.public.yggio.net/v2/entities?type=Device&q=<root key>.<key><condition>%27<value>%27" -H "Fiware-UserToken: <token>" -H "fiware-service: yggio" -H "fiware-servicepath: /"

Full example:
curl "https://ngsi.public.yggio.net/v2/entities?type=Device&q=contextMap.Place %3D%3D%%27Building1%27" -H "Fiware-UserToken: <token>" -H "fiware-service: yggio" -H "fiware-servicepath: /"

Skapa en NGSI-prenumeration

curl -sS -X POST https://ngsi.public.yggio.net/v2/subscriptions -H "Fiware-UserToken: <token>" -H 'Content-Type: application/json' -d @- <<EOF
{
"description": "Initiate NSGI subscription",
"subject": {
"entities": [
{
"id": <id>,
"type": <type>
}]},
"notification": {
"http": {
"url": <url>
}}}
EOF

Lista NGSI-prenumerationer

curl https://ngsi.public.yggio.net/v2/subscriptions -H "Fiware-UserToken: <token>"