IoT Hub REST
REST-API:erna för IoT Hub ger 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 IoT Hub hantera enhetstvillingarna. Du kan hämta och uppdatera egenskaper för enhetstvillingarna och anropa direktmetoder på enheter.
- Använd dessa API:er för att hantera enhetsidentiteter i identitetsregistret för en IoT-hubb.
- Använd dessa API för att hantera jobb i IoT Hub. Du kan schemalägga, avbryta eller hämta ett jobb.
Alla åtgärder följer protokollspecifikationen HTTP/1.1 och varje åtgärd returnerar ett -huvud som kan användas för att x-ms-request-id 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 "enhet till molnet"-meddelanden till en IoT-hubb och ta emot meddelanden från molnet till enheten från en IoT-hubb. Alla åtgärder följer protokollspecifikationen HTTP/1.1. Du måste se till att förfrågningarna mot de här resurserna är säkra. Mer information finns i IoT Hub - 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 Azure REST API Referens.
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 prenumerations-ID 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 Content-Type-rubriken till application/json.
Ange auktoriseringsrubriken till en SAS-token som skapats enligt vad som anges i avsnittet säkerhetstoken i Använda IoT Hub säkerhetstokens.
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 huvuden anges:
If-Match = [*|<etag from get>]DELETE-åtgärder kan innehålla följande huvud:
If-Match = [*|<etag from get>]
Beteendet för ETags visas nedan:
| PUT | Resursen finns inte | Resursen finns |
| If-Match = "" / saknas | 201 Skapad | 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 = "*" | 201 Skapad | 412 Förhandsvillkoret misslyckades |
| DELETE | Resursen finns inte | Resursen finns |
| If-Match = "" / saknas | 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 rubrik för alla åtgärder som är asynkrona. Alla synkrona (uppdateringar) åtgärder returnerar 200 OK.
DELETE returnerar 202 Accepted with Location and Retry-After headers samt Azure-AsyncOperation-huvud för resurser som finns.
Platsrubriken innehåller URL:en för åtgärdsresultatet
Retry-After-huvudet innehåller lämpligt återförsöksintervall i sekunder
Azure-AsyncOperation innehåller URL:en för resultatstatusen för Async-åtgärden
När åtgärden har slutförts genererar GET till åtgärdens resultat-URL exakt samma resultat som om den ursprungliga åtgärden hade slutförts synkront