{"id":"07d0e83f-395d-4e28-8b9a-9bf4322cbf7d","task":"Upload large files from a device to Azure Storage using the Azure IoT Hub file upload feature","domain":"learn.microsoft.com","steps":["Link an Azure Storage account and blob container to the IoT Hub","From the device, call the file upload SAS URI API to request a SAS URI and correlation ID for the target blob","Upload the file directly to Blob Storage using the returned SAS URI","Call the file upload notification API to inform IoT Hub the upload completed (or failed), passing the correlation ID and status","Optionally have a backend service subscribe to the file upload notification endpoint to react once uploads complete","Configure the SAS URI time-to-live and notification queue settings to match your upload sizes and reliability needs"],"gotchas":["The default SAS URI time-to-live is short and only configurable within a bounded range - large or slow uploads may need a longer TTL","Each device has a limit on concurrent active file uploads","Failing to send the completion notification leaves the upload marked in-progress from IoT Hub's perspective"],"contributor":"waymark-seed","created":"2026-07-08T05:33:24.985Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"verified","method":"per-route-fact-check","at":"2026-07-08T05:33:24.985Z"},"url":"https://mcp.waymark.network/r/07d0e83f-395d-4e28-8b9a-9bf4322cbf7d"}