Dela via


IoT Hub REST

REST-API:erna för IoT Hub erbjuder programmatisk åtkomst till enheten, meddelanden och jobbtjänster samt resursprovidern i IoT Hub. Du kan komma åt meddelandetjänster direkt från en IoT-tjänst som körs i Azure, eller via internet från valfritt program som kan skicka HTTPS-förfrågningar och ta emot HTTPS-svar.

Tjänst

  • Använd det här API:et för att hantera IoT Hub enhetstvillingar. Du kan hämta och uppdatera egenskaper för enhetstvillingar och anropa direktmetoder på enheter.
  • Använd dessa API:er för att hantera enhetsidentiteter i identitetsregistret för en IoT-hubb.
  • Använd det här API:et för att hantera jobb i IoT Hub. Du kan schemalägga, avbryta eller hämta ett jobb.

Alla aktivitetsåtgärder överensstämmer med HTTP/1.1-protokollspecifikationen och varje åtgärd returnerar ett x-ms-request-id huvud som kan användas för att hämta information om begäran. Du måste se till att förfrågningarna mot de här resurserna är säkra. Mer information finns i IoT Hub Utvecklarguide – Säkerhet för information om hur du skapar säkerhetstoken.

Enhetsmeddelanden

Använd dessa API:er från en enhet för att skicka meddelanden från enhet till moln till en IoT-hubb och ta emot meddelanden från molnet till enheten från en IoT-hubb. Alla aktivitetsåtgärder överensstämmer med HTTP/1.1-protokollspecifikationen. Du måste se till att förfrågningarna mot de här resurserna är säkra. Mer information finns i IoT Hub Utvecklarguide – Säkerhet för specifik information om hur du skapar säkerhetstoken.

Resursprovider

Använd dessa API:er för att hantera distributionen av dina IoT Hub resurser. Information om hur du skyddar dessa begäranden finns i Referens för Azure REST API.

Vanliga parametrar och sidhuvuden

Följande information är gemensam för alla uppgifter som rör IoT Hub:

  • Ersätt {api-version} med "2018-06-30" i URI:n.

  • Ersätt {subscription-id} med din prenumerationsidentifierare i URI:n.

  • Ersätt {resourceGroupName} med resursgruppens namn som innehåller (eller kommer att innehålla) din IoT-hubb.

  • Ersätt {IoTHubName} med namnet på din IoT-hubb.

  • Ange rubriken Innehållstyp till application/json.

  • Ange auktoriseringshuvudet till en SAS-token som skapats enligt vad som anges i avsnittet säkerhetstoken iAnvända IoT Hub säkerhetstoken.

  • Etag-huvudet returneras i alla begäranden som är begränsade till en enda enhetsidentitet, enligt RFC7232.

  • Alla PUT/PATCH-åtgärder kräver att följande rubriker anges: If-Match = [*|<etag from get>]

  • DELETE-åtgärder kan innehålla följande rubrik: If-Match = [*|<etag from get>]

Beteendet för ETags visas nedan:

PUT Resursen finns inte Resursen finns
If-Match = "" / frånvarande Skapad 201 200 OK
If-Match = "*" 412 Förhandsvillkoret misslyckades 200 OK
If-Match = "xyz" 412 Förhandsvillkoret misslyckades 200 OK/ 412 Förhandsvillkoret misslyckades
If-None-Match = "*" Skapad 201 412 Förhandsvillkoret misslyckades
DELETE Resursen finns inte Resursen finns
If-Match = "" / frånvarande 204 Inget innehåll 200 OK
If-Match = "*" 204 Inget innehåll 200 OK
If-Match = "xyz" 204 Inget innehåll 200 OK/ 412 Förhandsvillkoret misslyckades

För asynkrona anrop:

  • PUT svarar med 201 Skapad med Azure-AsyncOperation-huvud för alla åtgärder som är asynkrona. Alla synkrona åtgärder (uppdateringar) returnerar 200 OK.

  • DELETE returnerar 202 Accepterade med plats och Retry-After huvuden samt Azure-AsyncOperation sidhuvud för resurser som finns.

  • Platsrubriken innehåller URL för åtgärdsresultatet

  • Retry-After-huvudet innehåller lämpligt återförsöksintervall i sekunder

  • Azure-AsyncOperation-huvudet innehåller URL för resultatstatus för Async-åtgärden

  • När åtgärden har slutförts genererar GET-resultat-URL:en exakt samma resultat som om den ursprungliga åtgärden hade slutförts synkront