xml/Azure.Iot.DeviceUpdate/DeviceManagementClient.xml (6,219 lines of code) (raw):

<Type Name="DeviceManagementClient" FullName="Azure.IoT.DeviceUpdate.DeviceManagementClient"> <TypeSignature Language="C#" Value="public class DeviceManagementClient" /> <TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit DeviceManagementClient extends System.Object" /> <TypeSignature Language="DocId" Value="T:Azure.IoT.DeviceUpdate.DeviceManagementClient" /> <TypeSignature Language="VB.NET" Value="Public Class DeviceManagementClient" /> <TypeSignature Language="F#" Value="type DeviceManagementClient = class" /> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <Base> <BaseTypeName>System.Object</BaseTypeName> </Base> <Interfaces /> <Docs> <summary> The DeviceManagement service client. </summary> <remarks>To be added.</remarks> </Docs> <Members> <Member MemberName=".ctor"> <MemberSignature Language="C#" Value="protected DeviceManagementClient ();" /> <MemberSignature Language="ILAsm" Value=".method familyhidebysig specialname rtspecialname instance void .ctor() cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.#ctor" /> <MemberSignature Language="VB.NET" Value="Protected Sub New ()" /> <MemberType>Constructor</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <Parameters /> <Docs> <summary> Initializes a new instance of DeviceManagementClient for mocking. </summary> <remarks>To be added.</remarks> </Docs> </Member> <Member MemberName=".ctor"> <MemberSignature Language="C#" Value="public DeviceManagementClient (Uri endpoint, string instanceId, Azure.Core.TokenCredential credential);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(class System.Uri endpoint, string instanceId, class Azure.Core.TokenCredential credential) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.#ctor(System.Uri,System.String,Azure.Core.TokenCredential)" /> <MemberSignature Language="VB.NET" Value="Public Sub New (endpoint As Uri, instanceId As String, credential As TokenCredential)" /> <MemberSignature Language="F#" Value="new Azure.IoT.DeviceUpdate.DeviceManagementClient : Uri * string * Azure.Core.TokenCredential -&gt; Azure.IoT.DeviceUpdate.DeviceManagementClient" Usage="new Azure.IoT.DeviceUpdate.DeviceManagementClient (endpoint, instanceId, credential)" /> <MemberType>Constructor</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <Parameters> <Parameter Name="endpoint" Type="System.Uri" /> <Parameter Name="instanceId" Type="System.String" /> <Parameter Name="credential" Type="Azure.Core.TokenCredential" /> </Parameters> <Docs> <param name="endpoint"> The Device Update for IoT Hub account endpoint (hostname only, no protocol). </param> <param name="instanceId"> The Device Update for IoT Hub account instance identifier. </param> <param name="credential"> A credential used to authenticate to an Azure Service. </param> <summary> Initializes a new instance of DeviceManagementClient. </summary> <remarks>To be added.</remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="endpoint" />, <paramref name="instanceId" /> or <paramref name="credential" /> is null. </exception> </Docs> </Member> <Member MemberName=".ctor"> <MemberSignature Language="C#" Value="public DeviceManagementClient (Uri endpoint, string instanceId, Azure.Core.TokenCredential credential, Azure.IoT.DeviceUpdate.DeviceUpdateClientOptions options);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(class System.Uri endpoint, string instanceId, class Azure.Core.TokenCredential credential, class Azure.IoT.DeviceUpdate.DeviceUpdateClientOptions options) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.#ctor(System.Uri,System.String,Azure.Core.TokenCredential,Azure.IoT.DeviceUpdate.DeviceUpdateClientOptions)" /> <MemberSignature Language="VB.NET" Value="Public Sub New (endpoint As Uri, instanceId As String, credential As TokenCredential, options As DeviceUpdateClientOptions)" /> <MemberSignature Language="F#" Value="new Azure.IoT.DeviceUpdate.DeviceManagementClient : Uri * string * Azure.Core.TokenCredential * Azure.IoT.DeviceUpdate.DeviceUpdateClientOptions -&gt; Azure.IoT.DeviceUpdate.DeviceManagementClient" Usage="new Azure.IoT.DeviceUpdate.DeviceManagementClient (endpoint, instanceId, credential, options)" /> <MemberType>Constructor</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <Parameters> <Parameter Name="endpoint" Type="System.Uri" /> <Parameter Name="instanceId" Type="System.String" /> <Parameter Name="credential" Type="Azure.Core.TokenCredential" /> <Parameter Name="options" Type="Azure.IoT.DeviceUpdate.DeviceUpdateClientOptions" /> </Parameters> <Docs> <param name="endpoint"> The Device Update for IoT Hub account endpoint (hostname only, no protocol). </param> <param name="instanceId"> The Device Update for IoT Hub account instance identifier. </param> <param name="credential"> A credential used to authenticate to an Azure Service. </param> <param name="options"> The options for configuring the client. </param> <summary> Initializes a new instance of DeviceManagementClient. </summary> <remarks>To be added.</remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="endpoint" />, <paramref name="instanceId" /> or <paramref name="credential" /> is null. </exception> </Docs> </Member> <Member MemberName="CreateOrUpdateDeployment"> <MemberSignature Language="C#" Value="public virtual Azure.Response CreateOrUpdateDeployment (string groupId, string deploymentId, Azure.Core.RequestContent content, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Response CreateOrUpdateDeployment(string groupId, string deploymentId, class Azure.Core.RequestContent content, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.CreateOrUpdateDeployment(System.String,System.String,Azure.Core.RequestContent,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function CreateOrUpdateDeployment (groupId As String, deploymentId As String, content As RequestContent, Optional context As RequestContext = Nothing) As Response" /> <MemberSignature Language="F#" Value="abstract member CreateOrUpdateDeployment : string * string * Azure.Core.RequestContent * Azure.RequestContext -&gt; Azure.Response&#xA;override this.CreateOrUpdateDeployment : string * string * Azure.Core.RequestContent * Azure.RequestContext -&gt; Azure.Response" Usage="deviceManagementClient.CreateOrUpdateDeployment (groupId, deploymentId, content, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Response</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deploymentId" Type="System.String" /> <Parameter Name="content" Type="Azure.Core.RequestContent" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deploymentId"> Deployment identifier. </param> <param name="content"> The content to send as the body of the request. Details of the request body schema are in the Remarks section below. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Creates or updates a deployment. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the request and response payloads. Request Body: Schema for <c>Deployment</c>: <code>{ deploymentId: string, # Required. The caller-provided deployment identifier. This cannot be longer than 73 characters, must be all lower-case, and cannot contain '&amp;', '^', '[', ']', '{', '}', '|', '&lt;', '&gt;', forward slash, backslash, or double quote. The Updates view in the Azure Portal IoT Hub resource generates a GUID for deploymentId when you create a deployment. startDateTime: string (ISO 8601 Format), # Required. The deployment start datetime. update: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Required. Update information for the update in the deployment. groupId: string, # Required. The group identity for the devices the deployment is intended to update. deviceClassSubgroups: [string], # Optional. The device class subgroups the deployment is compatible with and subgroup deployments have been created for. This is not provided by the caller during CreateOrUpdateDeployment but is automatically determined by Device Update isCanceled: boolean, # Optional. Boolean flag indicating whether the deployment was canceled. isRetried: boolean, # Optional. Boolean flag indicating whether the deployment has been retried. rollbackPolicy: { update: UpdateInfo, # Required. Update to rollback to. failure: { devicesFailedPercentage: number, # Required. Percentage of devices that failed. devicesFailedCount: number, # Required. Number of devices that failed. }, # Required. Failure conditions to initiate rollback policy. }, # Optional. The rollback policy for the deployment. isCloudInitiatedRollback: boolean, # Optional. Boolean flag indicating whether the deployment is a rollback deployment. } </code> Response Body: Schema for <c>Deployment</c>: <code>{ deploymentId: string, # Required. The caller-provided deployment identifier. This cannot be longer than 73 characters, must be all lower-case, and cannot contain '&amp;', '^', '[', ']', '{', '}', '|', '&lt;', '&gt;', forward slash, backslash, or double quote. The Updates view in the Azure Portal IoT Hub resource generates a GUID for deploymentId when you create a deployment. startDateTime: string (ISO 8601 Format), # Required. The deployment start datetime. update: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Required. Update information for the update in the deployment. groupId: string, # Required. The group identity for the devices the deployment is intended to update. deviceClassSubgroups: [string], # Optional. The device class subgroups the deployment is compatible with and subgroup deployments have been created for. This is not provided by the caller during CreateOrUpdateDeployment but is automatically determined by Device Update isCanceled: boolean, # Optional. Boolean flag indicating whether the deployment was canceled. isRetried: boolean, # Optional. Boolean flag indicating whether the deployment has been retried. rollbackPolicy: { update: UpdateInfo, # Required. Update to rollback to. failure: { devicesFailedPercentage: number, # Required. Percentage of devices that failed. devicesFailedCount: number, # Required. Number of devices that failed. }, # Required. Failure conditions to initiate rollback policy. }, # Optional. The rollback policy for the deployment. isCloudInitiatedRollback: boolean, # Optional. Boolean flag indicating whether the deployment is a rollback deployment. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" />, <paramref name="deploymentId" /> or <paramref name="content" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> or <paramref name="deploymentId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call CreateOrUpdateDeployment with required parameters and request content, and how to parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); var data = new { deploymentId = "<deploymentId>", startDateTime = "2022-05-10T18:57:31.2311892Z", update = new { updateId = new { provider = "<provider>", name = "<name>", version = "<version>", }, }, groupId = "<groupId>", }; Response response = client.CreateOrUpdateDeployment("<groupId>", "<deploymentId>", RequestContent.Create(data)); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("deploymentId").ToString()); Console.WriteLine(result.GetProperty("startDateTime").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); ]]></code> This sample shows how to call CreateOrUpdateDeployment with all parameters and request content, and how to parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); var data = new { deploymentId = "<deploymentId>", startDateTime = "2022-05-10T18:57:31.2311892Z", update = new { updateId = new { provider = "<provider>", name = "<name>", version = "<version>", }, }, groupId = "<groupId>", deviceClassSubgroups = new[] { "<String>" }, isCanceled = true, isRetried = true, rollbackPolicy = new { update = new { updateId = new { provider = "<provider>", name = "<name>", version = "<version>", }, }, failure = new { devicesFailedPercentage = 1234, devicesFailedCount = 1234, }, }, isCloudInitiatedRollback = true, }; Response response = client.CreateOrUpdateDeployment("<groupId>", "<deploymentId>", RequestContent.Create(data)); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("deploymentId").ToString()); Console.WriteLine(result.GetProperty("startDateTime").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("deviceClassSubgroups")[0].ToString()); Console.WriteLine(result.GetProperty("isCanceled").ToString()); Console.WriteLine(result.GetProperty("isRetried").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("failure").GetProperty("devicesFailedPercentage").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("failure").GetProperty("devicesFailedCount").ToString()); Console.WriteLine(result.GetProperty("isCloudInitiatedRollback").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="CreateOrUpdateDeploymentAsync"> <MemberSignature Language="C#" Value="public virtual System.Threading.Tasks.Task&lt;Azure.Response&gt; CreateOrUpdateDeploymentAsync (string groupId, string deploymentId, Azure.Core.RequestContent content, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1&lt;class Azure.Response&gt; CreateOrUpdateDeploymentAsync(string groupId, string deploymentId, class Azure.Core.RequestContent content, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.CreateOrUpdateDeploymentAsync(System.String,System.String,Azure.Core.RequestContent,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function CreateOrUpdateDeploymentAsync (groupId As String, deploymentId As String, content As RequestContent, Optional context As RequestContext = Nothing) As Task(Of Response)" /> <MemberSignature Language="F#" Value="abstract member CreateOrUpdateDeploymentAsync : string * string * Azure.Core.RequestContent * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;&#xA;override this.CreateOrUpdateDeploymentAsync : string * string * Azure.Core.RequestContent * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;" Usage="deviceManagementClient.CreateOrUpdateDeploymentAsync (groupId, deploymentId, content, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Threading.Tasks.Task&lt;Azure.Response&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deploymentId" Type="System.String" /> <Parameter Name="content" Type="Azure.Core.RequestContent" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deploymentId"> Deployment identifier. </param> <param name="content"> The content to send as the body of the request. Details of the request body schema are in the Remarks section below. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Creates or updates a deployment. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the request and response payloads. Request Body: Schema for <c>Deployment</c>: <code>{ deploymentId: string, # Required. The caller-provided deployment identifier. This cannot be longer than 73 characters, must be all lower-case, and cannot contain '&amp;', '^', '[', ']', '{', '}', '|', '&lt;', '&gt;', forward slash, backslash, or double quote. The Updates view in the Azure Portal IoT Hub resource generates a GUID for deploymentId when you create a deployment. startDateTime: string (ISO 8601 Format), # Required. The deployment start datetime. update: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Required. Update information for the update in the deployment. groupId: string, # Required. The group identity for the devices the deployment is intended to update. deviceClassSubgroups: [string], # Optional. The device class subgroups the deployment is compatible with and subgroup deployments have been created for. This is not provided by the caller during CreateOrUpdateDeployment but is automatically determined by Device Update isCanceled: boolean, # Optional. Boolean flag indicating whether the deployment was canceled. isRetried: boolean, # Optional. Boolean flag indicating whether the deployment has been retried. rollbackPolicy: { update: UpdateInfo, # Required. Update to rollback to. failure: { devicesFailedPercentage: number, # Required. Percentage of devices that failed. devicesFailedCount: number, # Required. Number of devices that failed. }, # Required. Failure conditions to initiate rollback policy. }, # Optional. The rollback policy for the deployment. isCloudInitiatedRollback: boolean, # Optional. Boolean flag indicating whether the deployment is a rollback deployment. } </code> Response Body: Schema for <c>Deployment</c>: <code>{ deploymentId: string, # Required. The caller-provided deployment identifier. This cannot be longer than 73 characters, must be all lower-case, and cannot contain '&amp;', '^', '[', ']', '{', '}', '|', '&lt;', '&gt;', forward slash, backslash, or double quote. The Updates view in the Azure Portal IoT Hub resource generates a GUID for deploymentId when you create a deployment. startDateTime: string (ISO 8601 Format), # Required. The deployment start datetime. update: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Required. Update information for the update in the deployment. groupId: string, # Required. The group identity for the devices the deployment is intended to update. deviceClassSubgroups: [string], # Optional. The device class subgroups the deployment is compatible with and subgroup deployments have been created for. This is not provided by the caller during CreateOrUpdateDeployment but is automatically determined by Device Update isCanceled: boolean, # Optional. Boolean flag indicating whether the deployment was canceled. isRetried: boolean, # Optional. Boolean flag indicating whether the deployment has been retried. rollbackPolicy: { update: UpdateInfo, # Required. Update to rollback to. failure: { devicesFailedPercentage: number, # Required. Percentage of devices that failed. devicesFailedCount: number, # Required. Number of devices that failed. }, # Required. Failure conditions to initiate rollback policy. }, # Optional. The rollback policy for the deployment. isCloudInitiatedRollback: boolean, # Optional. Boolean flag indicating whether the deployment is a rollback deployment. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" />, <paramref name="deploymentId" /> or <paramref name="content" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> or <paramref name="deploymentId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call CreateOrUpdateDeploymentAsync with required parameters and request content, and how to parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); var data = new { deploymentId = "<deploymentId>", startDateTime = "2022-05-10T18:57:31.2311892Z", update = new { updateId = new { provider = "<provider>", name = "<name>", version = "<version>", }, }, groupId = "<groupId>", }; Response response = await client.CreateOrUpdateDeploymentAsync("<groupId>", "<deploymentId>", RequestContent.Create(data)); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("deploymentId").ToString()); Console.WriteLine(result.GetProperty("startDateTime").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); ]]></code> This sample shows how to call CreateOrUpdateDeploymentAsync with all parameters and request content, and how to parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); var data = new { deploymentId = "<deploymentId>", startDateTime = "2022-05-10T18:57:31.2311892Z", update = new { updateId = new { provider = "<provider>", name = "<name>", version = "<version>", }, }, groupId = "<groupId>", deviceClassSubgroups = new[] { "<String>" }, isCanceled = true, isRetried = true, rollbackPolicy = new { update = new { updateId = new { provider = "<provider>", name = "<name>", version = "<version>", }, }, failure = new { devicesFailedPercentage = 1234, devicesFailedCount = 1234, }, }, isCloudInitiatedRollback = true, }; Response response = await client.CreateOrUpdateDeploymentAsync("<groupId>", "<deploymentId>", RequestContent.Create(data)); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("deploymentId").ToString()); Console.WriteLine(result.GetProperty("startDateTime").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("deviceClassSubgroups")[0].ToString()); Console.WriteLine(result.GetProperty("isCanceled").ToString()); Console.WriteLine(result.GetProperty("isRetried").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("failure").GetProperty("devicesFailedPercentage").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("failure").GetProperty("devicesFailedCount").ToString()); Console.WriteLine(result.GetProperty("isCloudInitiatedRollback").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="DeleteDeployment"> <MemberSignature Language="C#" Value="public virtual Azure.Response DeleteDeployment (string groupId, string deploymentId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Response DeleteDeployment(string groupId, string deploymentId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.DeleteDeployment(System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function DeleteDeployment (groupId As String, deploymentId As String, Optional context As RequestContext = Nothing) As Response" /> <MemberSignature Language="F#" Value="abstract member DeleteDeployment : string * string * Azure.RequestContext -&gt; Azure.Response&#xA;override this.DeleteDeployment : string * string * Azure.RequestContext -&gt; Azure.Response" Usage="deviceManagementClient.DeleteDeployment (groupId, deploymentId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Response</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deploymentId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deploymentId"> Deployment identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Deletes a deployment. </summary> <returns> The response returned from the service. </returns> <remarks> Schema for <c>Response Error</c>: <code>{ error: { code: string, message: string, target: string, details: [Error], innererror: { code: string, message: string, errorDetail: string, innerError: InnerError }, occurredDateTime: string (ISO 8601 Format) } } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" /> or <paramref name="deploymentId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> or <paramref name="deploymentId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call DeleteDeployment with required parameters. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = client.DeleteDeployment("<groupId>", "<deploymentId>"); Console.WriteLine(response.Status); ]]></code></example> </Docs> </Member> <Member MemberName="DeleteDeploymentAsync"> <MemberSignature Language="C#" Value="public virtual System.Threading.Tasks.Task&lt;Azure.Response&gt; DeleteDeploymentAsync (string groupId, string deploymentId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1&lt;class Azure.Response&gt; DeleteDeploymentAsync(string groupId, string deploymentId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.DeleteDeploymentAsync(System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function DeleteDeploymentAsync (groupId As String, deploymentId As String, Optional context As RequestContext = Nothing) As Task(Of Response)" /> <MemberSignature Language="F#" Value="abstract member DeleteDeploymentAsync : string * string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;&#xA;override this.DeleteDeploymentAsync : string * string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;" Usage="deviceManagementClient.DeleteDeploymentAsync (groupId, deploymentId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Threading.Tasks.Task&lt;Azure.Response&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deploymentId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deploymentId"> Deployment identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Deletes a deployment. </summary> <returns> The response returned from the service. </returns> <remarks> Schema for <c>Response Error</c>: <code>{ error: { code: string, message: string, target: string, details: [Error], innererror: { code: string, message: string, errorDetail: string, innerError: InnerError }, occurredDateTime: string (ISO 8601 Format) } } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" /> or <paramref name="deploymentId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> or <paramref name="deploymentId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call DeleteDeploymentAsync with required parameters. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = await client.DeleteDeploymentAsync("<groupId>", "<deploymentId>"); Console.WriteLine(response.Status); ]]></code></example> </Docs> </Member> <Member MemberName="DeleteDeploymentForDeviceClassSubgroup"> <MemberSignature Language="C#" Value="public virtual Azure.Response DeleteDeploymentForDeviceClassSubgroup (string groupId, string deviceClassId, string deploymentId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Response DeleteDeploymentForDeviceClassSubgroup(string groupId, string deviceClassId, string deploymentId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.DeleteDeploymentForDeviceClassSubgroup(System.String,System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function DeleteDeploymentForDeviceClassSubgroup (groupId As String, deviceClassId As String, deploymentId As String, Optional context As RequestContext = Nothing) As Response" /> <MemberSignature Language="F#" Value="abstract member DeleteDeploymentForDeviceClassSubgroup : string * string * string * Azure.RequestContext -&gt; Azure.Response&#xA;override this.DeleteDeploymentForDeviceClassSubgroup : string * string * string * Azure.RequestContext -&gt; Azure.Response" Usage="deviceManagementClient.DeleteDeploymentForDeviceClassSubgroup (groupId, deviceClassId, deploymentId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Response</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="deploymentId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deviceClassId"> Device class identifier. </param> <param name="deploymentId"> Deployment identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Deletes a device class subgroup deployment. </summary> <returns> The response returned from the service. </returns> <remarks>To be added.</remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" />, <paramref name="deviceClassId" /> or <paramref name="deploymentId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" />, <paramref name="deviceClassId" /> or <paramref name="deploymentId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call DeleteDeploymentForDeviceClassSubgroup with required parameters. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = client.DeleteDeploymentForDeviceClassSubgroup("<groupId>", "<deviceClassId>", "<deploymentId>"); Console.WriteLine(response.Status); ]]></code></example> </Docs> </Member> <Member MemberName="DeleteDeploymentForDeviceClassSubgroupAsync"> <MemberSignature Language="C#" Value="public virtual System.Threading.Tasks.Task&lt;Azure.Response&gt; DeleteDeploymentForDeviceClassSubgroupAsync (string groupId, string deviceClassId, string deploymentId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1&lt;class Azure.Response&gt; DeleteDeploymentForDeviceClassSubgroupAsync(string groupId, string deviceClassId, string deploymentId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.DeleteDeploymentForDeviceClassSubgroupAsync(System.String,System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function DeleteDeploymentForDeviceClassSubgroupAsync (groupId As String, deviceClassId As String, deploymentId As String, Optional context As RequestContext = Nothing) As Task(Of Response)" /> <MemberSignature Language="F#" Value="abstract member DeleteDeploymentForDeviceClassSubgroupAsync : string * string * string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;&#xA;override this.DeleteDeploymentForDeviceClassSubgroupAsync : string * string * string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;" Usage="deviceManagementClient.DeleteDeploymentForDeviceClassSubgroupAsync (groupId, deviceClassId, deploymentId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Threading.Tasks.Task&lt;Azure.Response&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="deploymentId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deviceClassId"> Device class identifier. </param> <param name="deploymentId"> Deployment identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Deletes a device class subgroup deployment. </summary> <returns> The response returned from the service. </returns> <remarks>To be added.</remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" />, <paramref name="deviceClassId" /> or <paramref name="deploymentId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" />, <paramref name="deviceClassId" /> or <paramref name="deploymentId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call DeleteDeploymentForDeviceClassSubgroupAsync with required parameters. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = await client.DeleteDeploymentForDeviceClassSubgroupAsync("<groupId>", "<deviceClassId>", "<deploymentId>"); Console.WriteLine(response.Status); ]]></code></example> </Docs> </Member> <Member MemberName="DeleteDeviceClass"> <MemberSignature Language="C#" Value="public virtual Azure.Response DeleteDeviceClass (string deviceClassId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Response DeleteDeviceClass(string deviceClassId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.DeleteDeviceClass(System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function DeleteDeviceClass (deviceClassId As String, Optional context As RequestContext = Nothing) As Response" /> <MemberSignature Language="F#" Value="abstract member DeleteDeviceClass : string * Azure.RequestContext -&gt; Azure.Response&#xA;override this.DeleteDeviceClass : string * Azure.RequestContext -&gt; Azure.Response" Usage="deviceManagementClient.DeleteDeviceClass (deviceClassId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Response</ReturnType> </ReturnValue> <Parameters> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="deviceClassId"> Device class identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Deletes a device class. Device classes are created automatically when Device Update-enabled devices are connected to the hub but are not automatically cleaned up since they are referenced by DeviceClassSubgroups. If the user has deleted all DeviceClassSubgroups for a device class they can also delete the device class to remove the records from the system and to stop checking the compatibility of this device class with new updates. If a device is ever reconnected for this device class it will be re-created. </summary> <returns> The response returned from the service. </returns> <remarks>To be added.</remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="deviceClassId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="deviceClassId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call DeleteDeviceClass with required parameters. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = client.DeleteDeviceClass("<deviceClassId>"); Console.WriteLine(response.Status); ]]></code></example> </Docs> </Member> <Member MemberName="DeleteDeviceClassAsync"> <MemberSignature Language="C#" Value="public virtual System.Threading.Tasks.Task&lt;Azure.Response&gt; DeleteDeviceClassAsync (string deviceClassId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1&lt;class Azure.Response&gt; DeleteDeviceClassAsync(string deviceClassId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.DeleteDeviceClassAsync(System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function DeleteDeviceClassAsync (deviceClassId As String, Optional context As RequestContext = Nothing) As Task(Of Response)" /> <MemberSignature Language="F#" Value="abstract member DeleteDeviceClassAsync : string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;&#xA;override this.DeleteDeviceClassAsync : string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;" Usage="deviceManagementClient.DeleteDeviceClassAsync (deviceClassId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Threading.Tasks.Task&lt;Azure.Response&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="deviceClassId"> Device class identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Deletes a device class. Device classes are created automatically when Device Update-enabled devices are connected to the hub but are not automatically cleaned up since they are referenced by DeviceClassSubgroups. If the user has deleted all DeviceClassSubgroups for a device class they can also delete the device class to remove the records from the system and to stop checking the compatibility of this device class with new updates. If a device is ever reconnected for this device class it will be re-created. </summary> <returns> The response returned from the service. </returns> <remarks>To be added.</remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="deviceClassId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="deviceClassId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call DeleteDeviceClassAsync with required parameters. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = await client.DeleteDeviceClassAsync("<deviceClassId>"); Console.WriteLine(response.Status); ]]></code></example> </Docs> </Member> <Member MemberName="DeleteDeviceClassSubgroup"> <MemberSignature Language="C#" Value="public virtual Azure.Response DeleteDeviceClassSubgroup (string groupId, string deviceClassId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Response DeleteDeviceClassSubgroup(string groupId, string deviceClassId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.DeleteDeviceClassSubgroup(System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function DeleteDeviceClassSubgroup (groupId As String, deviceClassId As String, Optional context As RequestContext = Nothing) As Response" /> <MemberSignature Language="F#" Value="abstract member DeleteDeviceClassSubgroup : string * string * Azure.RequestContext -&gt; Azure.Response&#xA;override this.DeleteDeviceClassSubgroup : string * string * Azure.RequestContext -&gt; Azure.Response" Usage="deviceManagementClient.DeleteDeviceClassSubgroup (groupId, deviceClassId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Response</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deviceClassId"> Device class identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Deletes a device class subgroup. This subgroup is automatically created when a Device Update-enabled device is connected to the hub and reports its properties. Groups, subgroups, and deployments are not automatically cleaned up but are retained for history purposes. Users can call this method to delete a subgroup if they do not need to retain any of the history of the subgroup and no longer need it. If a device is ever connected again for this subgroup after the subgroup was deleted it will be automatically re-created but there will be no history. </summary> <returns> The response returned from the service. </returns> <remarks>To be added.</remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" /> or <paramref name="deviceClassId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> or <paramref name="deviceClassId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call DeleteDeviceClassSubgroup with required parameters. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = client.DeleteDeviceClassSubgroup("<groupId>", "<deviceClassId>"); Console.WriteLine(response.Status); ]]></code></example> </Docs> </Member> <Member MemberName="DeleteDeviceClassSubgroupAsync"> <MemberSignature Language="C#" Value="public virtual System.Threading.Tasks.Task&lt;Azure.Response&gt; DeleteDeviceClassSubgroupAsync (string groupId, string deviceClassId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1&lt;class Azure.Response&gt; DeleteDeviceClassSubgroupAsync(string groupId, string deviceClassId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.DeleteDeviceClassSubgroupAsync(System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function DeleteDeviceClassSubgroupAsync (groupId As String, deviceClassId As String, Optional context As RequestContext = Nothing) As Task(Of Response)" /> <MemberSignature Language="F#" Value="abstract member DeleteDeviceClassSubgroupAsync : string * string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;&#xA;override this.DeleteDeviceClassSubgroupAsync : string * string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;" Usage="deviceManagementClient.DeleteDeviceClassSubgroupAsync (groupId, deviceClassId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Threading.Tasks.Task&lt;Azure.Response&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deviceClassId"> Device class identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Deletes a device class subgroup. This subgroup is automatically created when a Device Update-enabled device is connected to the hub and reports its properties. Groups, subgroups, and deployments are not automatically cleaned up but are retained for history purposes. Users can call this method to delete a subgroup if they do not need to retain any of the history of the subgroup and no longer need it. If a device is ever connected again for this subgroup after the subgroup was deleted it will be automatically re-created but there will be no history. </summary> <returns> The response returned from the service. </returns> <remarks>To be added.</remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" /> or <paramref name="deviceClassId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> or <paramref name="deviceClassId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call DeleteDeviceClassSubgroupAsync with required parameters. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = await client.DeleteDeviceClassSubgroupAsync("<groupId>", "<deviceClassId>"); Console.WriteLine(response.Status); ]]></code></example> </Docs> </Member> <Member MemberName="DeleteGroup"> <MemberSignature Language="C#" Value="public virtual Azure.Response DeleteGroup (string groupId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Response DeleteGroup(string groupId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.DeleteGroup(System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function DeleteGroup (groupId As String, Optional context As RequestContext = Nothing) As Response" /> <MemberSignature Language="F#" Value="abstract member DeleteGroup : string * Azure.RequestContext -&gt; Azure.Response&#xA;override this.DeleteGroup : string * Azure.RequestContext -&gt; Azure.Response" Usage="deviceManagementClient.DeleteGroup (groupId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Response</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Deletes a device group. This group is automatically created when a Device Update-enabled device is connected to the hub and reports its properties. Groups, subgroups, and deployments are not automatically cleaned up but are retained for history purposes. Users can call this method to delete a group if they do not need to retain any of the history of the group and no longer need it. If a device is ever connected again for this group after the group was deleted it will be automatically re-created but there will be no history. </summary> <returns> The response returned from the service. </returns> <remarks> Schema for <c>Response Error</c>: <code>{ error: { code: string, message: string, target: string, details: [Error], innererror: { code: string, message: string, errorDetail: string, innerError: InnerError }, occurredDateTime: string (ISO 8601 Format) } } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call DeleteGroup with required parameters. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = client.DeleteGroup("<groupId>"); Console.WriteLine(response.Status); ]]></code></example> </Docs> </Member> <Member MemberName="DeleteGroupAsync"> <MemberSignature Language="C#" Value="public virtual System.Threading.Tasks.Task&lt;Azure.Response&gt; DeleteGroupAsync (string groupId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1&lt;class Azure.Response&gt; DeleteGroupAsync(string groupId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.DeleteGroupAsync(System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function DeleteGroupAsync (groupId As String, Optional context As RequestContext = Nothing) As Task(Of Response)" /> <MemberSignature Language="F#" Value="abstract member DeleteGroupAsync : string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;&#xA;override this.DeleteGroupAsync : string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;" Usage="deviceManagementClient.DeleteGroupAsync (groupId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Threading.Tasks.Task&lt;Azure.Response&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Deletes a device group. This group is automatically created when a Device Update-enabled device is connected to the hub and reports its properties. Groups, subgroups, and deployments are not automatically cleaned up but are retained for history purposes. Users can call this method to delete a group if they do not need to retain any of the history of the group and no longer need it. If a device is ever connected again for this group after the group was deleted it will be automatically re-created but there will be no history. </summary> <returns> The response returned from the service. </returns> <remarks> Schema for <c>Response Error</c>: <code>{ error: { code: string, message: string, target: string, details: [Error], innererror: { code: string, message: string, errorDetail: string, innerError: InnerError }, occurredDateTime: string (ISO 8601 Format) } } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call DeleteGroupAsync with required parameters. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = await client.DeleteGroupAsync("<groupId>"); Console.WriteLine(response.Status); ]]></code></example> </Docs> </Member> <Member MemberName="GetBestUpdatesForDeviceClassSubgroup"> <MemberSignature Language="C#" Value="public virtual Azure.Response GetBestUpdatesForDeviceClassSubgroup (string groupId, string deviceClassId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Response GetBestUpdatesForDeviceClassSubgroup(string groupId, string deviceClassId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetBestUpdatesForDeviceClassSubgroup(System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetBestUpdatesForDeviceClassSubgroup (groupId As String, deviceClassId As String, Optional context As RequestContext = Nothing) As Response" /> <MemberSignature Language="F#" Value="abstract member GetBestUpdatesForDeviceClassSubgroup : string * string * Azure.RequestContext -&gt; Azure.Response&#xA;override this.GetBestUpdatesForDeviceClassSubgroup : string * string * Azure.RequestContext -&gt; Azure.Response" Usage="deviceManagementClient.GetBestUpdatesForDeviceClassSubgroup (groupId, deviceClassId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Response</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deviceClassId"> Device class identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Get the best available update for a device class subgroup and a count of how many devices need this update. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>DeviceClassSubgroupUpdatableDevices</c>: <code>{ groupId: string, # Required. The group Id deviceClassId: string, # Required. The device class subgroup's device class Id update: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Required. Update information. deviceCount: number, # Required. Total number of devices for which the update is applicable. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" /> or <paramref name="deviceClassId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> or <paramref name="deviceClassId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetBestUpdatesForDeviceClassSubgroup with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = client.GetBestUpdatesForDeviceClassSubgroup("<groupId>", "<deviceClassId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("deviceCount").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetBestUpdatesForDeviceClassSubgroupAsync"> <MemberSignature Language="C#" Value="public virtual System.Threading.Tasks.Task&lt;Azure.Response&gt; GetBestUpdatesForDeviceClassSubgroupAsync (string groupId, string deviceClassId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1&lt;class Azure.Response&gt; GetBestUpdatesForDeviceClassSubgroupAsync(string groupId, string deviceClassId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetBestUpdatesForDeviceClassSubgroupAsync(System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetBestUpdatesForDeviceClassSubgroupAsync (groupId As String, deviceClassId As String, Optional context As RequestContext = Nothing) As Task(Of Response)" /> <MemberSignature Language="F#" Value="abstract member GetBestUpdatesForDeviceClassSubgroupAsync : string * string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;&#xA;override this.GetBestUpdatesForDeviceClassSubgroupAsync : string * string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;" Usage="deviceManagementClient.GetBestUpdatesForDeviceClassSubgroupAsync (groupId, deviceClassId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Threading.Tasks.Task&lt;Azure.Response&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deviceClassId"> Device class identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Get the best available update for a device class subgroup and a count of how many devices need this update. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>DeviceClassSubgroupUpdatableDevices</c>: <code>{ groupId: string, # Required. The group Id deviceClassId: string, # Required. The device class subgroup's device class Id update: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Required. Update information. deviceCount: number, # Required. Total number of devices for which the update is applicable. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" /> or <paramref name="deviceClassId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> or <paramref name="deviceClassId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetBestUpdatesForDeviceClassSubgroupAsync with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = await client.GetBestUpdatesForDeviceClassSubgroupAsync("<groupId>", "<deviceClassId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("deviceCount").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetBestUpdatesForGroups"> <MemberSignature Language="C#" Value="public virtual Azure.Pageable&lt;BinaryData&gt; GetBestUpdatesForGroups (string groupId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Pageable`1&lt;class System.BinaryData&gt; GetBestUpdatesForGroups(string groupId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetBestUpdatesForGroups(System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetBestUpdatesForGroups (groupId As String, Optional context As RequestContext = Nothing) As Pageable(Of BinaryData)" /> <MemberSignature Language="F#" Value="abstract member GetBestUpdatesForGroups : string * Azure.RequestContext -&gt; Azure.Pageable&lt;BinaryData&gt;&#xA;override this.GetBestUpdatesForGroups : string * Azure.RequestContext -&gt; Azure.Pageable&lt;BinaryData&gt;" Usage="deviceManagementClient.GetBestUpdatesForGroups (groupId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Pageable&lt;System.BinaryData&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Get the best available updates for a device group and a count of how many devices need each update. </summary> <returns> The <see cref="T:Azure.Pageable`1" /> from the service containing a list of <see cref="T:System.BinaryData" /> objects. Details of the body schema for each item in the collection are in the Remarks section below. </returns> <remarks> Below is the JSON schema for one item in the pageable response. Response Body: Schema for <c>DeviceClassSubgroupUpdatableDevicesListValue</c>: <code>{ groupId: string, # Required. The group Id deviceClassId: string, # Required. The device class subgroup's device class Id update: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Required. Update information. deviceCount: number, # Required. Total number of devices for which the update is applicable. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetBestUpdatesForGroups with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); foreach (var data in client.GetBestUpdatesForGroups("<groupId>")) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("deviceCount").ToString()); } ]]></code></example> </Docs> </Member> <Member MemberName="GetBestUpdatesForGroupsAsync"> <MemberSignature Language="C#" Value="public virtual Azure.AsyncPageable&lt;BinaryData&gt; GetBestUpdatesForGroupsAsync (string groupId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.AsyncPageable`1&lt;class System.BinaryData&gt; GetBestUpdatesForGroupsAsync(string groupId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetBestUpdatesForGroupsAsync(System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetBestUpdatesForGroupsAsync (groupId As String, Optional context As RequestContext = Nothing) As AsyncPageable(Of BinaryData)" /> <MemberSignature Language="F#" Value="abstract member GetBestUpdatesForGroupsAsync : string * Azure.RequestContext -&gt; Azure.AsyncPageable&lt;BinaryData&gt;&#xA;override this.GetBestUpdatesForGroupsAsync : string * Azure.RequestContext -&gt; Azure.AsyncPageable&lt;BinaryData&gt;" Usage="deviceManagementClient.GetBestUpdatesForGroupsAsync (groupId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.AsyncPageable&lt;System.BinaryData&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Get the best available updates for a device group and a count of how many devices need each update. </summary> <returns> The <see cref="T:Azure.AsyncPageable`1" /> from the service containing a list of <see cref="T:System.BinaryData" /> objects. Details of the body schema for each item in the collection are in the Remarks section below. </returns> <remarks> Below is the JSON schema for one item in the pageable response. Response Body: Schema for <c>DeviceClassSubgroupUpdatableDevicesListValue</c>: <code>{ groupId: string, # Required. The group Id deviceClassId: string, # Required. The device class subgroup's device class Id update: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Required. Update information. deviceCount: number, # Required. Total number of devices for which the update is applicable. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetBestUpdatesForGroupsAsync with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); await foreach (var data in client.GetBestUpdatesForGroupsAsync("<groupId>")) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("deviceCount").ToString()); } ]]></code></example> </Docs> </Member> <Member MemberName="GetDeployment"> <MemberSignature Language="C#" Value="public virtual Azure.Response GetDeployment (string groupId, string deploymentId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Response GetDeployment(string groupId, string deploymentId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDeployment(System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDeployment (groupId As String, deploymentId As String, Optional context As RequestContext = Nothing) As Response" /> <MemberSignature Language="F#" Value="abstract member GetDeployment : string * string * Azure.RequestContext -&gt; Azure.Response&#xA;override this.GetDeployment : string * string * Azure.RequestContext -&gt; Azure.Response" Usage="deviceManagementClient.GetDeployment (groupId, deploymentId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Response</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deploymentId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deploymentId"> Deployment identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets the deployment properties. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>Deployment</c>: <code>{ deploymentId: string, # Required. The caller-provided deployment identifier. This cannot be longer than 73 characters, must be all lower-case, and cannot contain '&amp;', '^', '[', ']', '{', '}', '|', '&lt;', '&gt;', forward slash, backslash, or double quote. The Updates view in the Azure Portal IoT Hub resource generates a GUID for deploymentId when you create a deployment. startDateTime: string (ISO 8601 Format), # Required. The deployment start datetime. update: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Required. Update information for the update in the deployment. groupId: string, # Required. The group identity for the devices the deployment is intended to update. deviceClassSubgroups: [string], # Optional. The device class subgroups the deployment is compatible with and subgroup deployments have been created for. This is not provided by the caller during CreateOrUpdateDeployment but is automatically determined by Device Update isCanceled: boolean, # Optional. Boolean flag indicating whether the deployment was canceled. isRetried: boolean, # Optional. Boolean flag indicating whether the deployment has been retried. rollbackPolicy: { update: UpdateInfo, # Required. Update to rollback to. failure: { devicesFailedPercentage: number, # Required. Percentage of devices that failed. devicesFailedCount: number, # Required. Number of devices that failed. }, # Required. Failure conditions to initiate rollback policy. }, # Optional. The rollback policy for the deployment. isCloudInitiatedRollback: boolean, # Optional. Boolean flag indicating whether the deployment is a rollback deployment. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" /> or <paramref name="deploymentId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> or <paramref name="deploymentId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDeployment with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = client.GetDeployment("<groupId>", "<deploymentId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("deploymentId").ToString()); Console.WriteLine(result.GetProperty("startDateTime").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("deviceClassSubgroups")[0].ToString()); Console.WriteLine(result.GetProperty("isCanceled").ToString()); Console.WriteLine(result.GetProperty("isRetried").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("failure").GetProperty("devicesFailedPercentage").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("failure").GetProperty("devicesFailedCount").ToString()); Console.WriteLine(result.GetProperty("isCloudInitiatedRollback").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetDeploymentAsync"> <MemberSignature Language="C#" Value="public virtual System.Threading.Tasks.Task&lt;Azure.Response&gt; GetDeploymentAsync (string groupId, string deploymentId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1&lt;class Azure.Response&gt; GetDeploymentAsync(string groupId, string deploymentId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDeploymentAsync(System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDeploymentAsync (groupId As String, deploymentId As String, Optional context As RequestContext = Nothing) As Task(Of Response)" /> <MemberSignature Language="F#" Value="abstract member GetDeploymentAsync : string * string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;&#xA;override this.GetDeploymentAsync : string * string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;" Usage="deviceManagementClient.GetDeploymentAsync (groupId, deploymentId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Threading.Tasks.Task&lt;Azure.Response&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deploymentId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deploymentId"> Deployment identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets the deployment properties. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>Deployment</c>: <code>{ deploymentId: string, # Required. The caller-provided deployment identifier. This cannot be longer than 73 characters, must be all lower-case, and cannot contain '&amp;', '^', '[', ']', '{', '}', '|', '&lt;', '&gt;', forward slash, backslash, or double quote. The Updates view in the Azure Portal IoT Hub resource generates a GUID for deploymentId when you create a deployment. startDateTime: string (ISO 8601 Format), # Required. The deployment start datetime. update: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Required. Update information for the update in the deployment. groupId: string, # Required. The group identity for the devices the deployment is intended to update. deviceClassSubgroups: [string], # Optional. The device class subgroups the deployment is compatible with and subgroup deployments have been created for. This is not provided by the caller during CreateOrUpdateDeployment but is automatically determined by Device Update isCanceled: boolean, # Optional. Boolean flag indicating whether the deployment was canceled. isRetried: boolean, # Optional. Boolean flag indicating whether the deployment has been retried. rollbackPolicy: { update: UpdateInfo, # Required. Update to rollback to. failure: { devicesFailedPercentage: number, # Required. Percentage of devices that failed. devicesFailedCount: number, # Required. Number of devices that failed. }, # Required. Failure conditions to initiate rollback policy. }, # Optional. The rollback policy for the deployment. isCloudInitiatedRollback: boolean, # Optional. Boolean flag indicating whether the deployment is a rollback deployment. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" /> or <paramref name="deploymentId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> or <paramref name="deploymentId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDeploymentAsync with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = await client.GetDeploymentAsync("<groupId>", "<deploymentId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("deploymentId").ToString()); Console.WriteLine(result.GetProperty("startDateTime").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("deviceClassSubgroups")[0].ToString()); Console.WriteLine(result.GetProperty("isCanceled").ToString()); Console.WriteLine(result.GetProperty("isRetried").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("failure").GetProperty("devicesFailedPercentage").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("failure").GetProperty("devicesFailedCount").ToString()); Console.WriteLine(result.GetProperty("isCloudInitiatedRollback").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetDeploymentForDeviceClassSubgroup"> <MemberSignature Language="C#" Value="public virtual Azure.Response GetDeploymentForDeviceClassSubgroup (string groupId, string deviceClassId, string deploymentId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Response GetDeploymentForDeviceClassSubgroup(string groupId, string deviceClassId, string deploymentId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDeploymentForDeviceClassSubgroup(System.String,System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDeploymentForDeviceClassSubgroup (groupId As String, deviceClassId As String, deploymentId As String, Optional context As RequestContext = Nothing) As Response" /> <MemberSignature Language="F#" Value="abstract member GetDeploymentForDeviceClassSubgroup : string * string * string * Azure.RequestContext -&gt; Azure.Response&#xA;override this.GetDeploymentForDeviceClassSubgroup : string * string * string * Azure.RequestContext -&gt; Azure.Response" Usage="deviceManagementClient.GetDeploymentForDeviceClassSubgroup (groupId, deviceClassId, deploymentId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Response</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="deploymentId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deviceClassId"> Device class identifier. </param> <param name="deploymentId"> Deployment identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets the deployment properties. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>Deployment</c>: <code>{ deploymentId: string, # Required. The caller-provided deployment identifier. This cannot be longer than 73 characters, must be all lower-case, and cannot contain '&amp;', '^', '[', ']', '{', '}', '|', '&lt;', '&gt;', forward slash, backslash, or double quote. The Updates view in the Azure Portal IoT Hub resource generates a GUID for deploymentId when you create a deployment. startDateTime: string (ISO 8601 Format), # Required. The deployment start datetime. update: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Required. Update information for the update in the deployment. groupId: string, # Required. The group identity for the devices the deployment is intended to update. deviceClassSubgroups: [string], # Optional. The device class subgroups the deployment is compatible with and subgroup deployments have been created for. This is not provided by the caller during CreateOrUpdateDeployment but is automatically determined by Device Update isCanceled: boolean, # Optional. Boolean flag indicating whether the deployment was canceled. isRetried: boolean, # Optional. Boolean flag indicating whether the deployment has been retried. rollbackPolicy: { update: UpdateInfo, # Required. Update to rollback to. failure: { devicesFailedPercentage: number, # Required. Percentage of devices that failed. devicesFailedCount: number, # Required. Number of devices that failed. }, # Required. Failure conditions to initiate rollback policy. }, # Optional. The rollback policy for the deployment. isCloudInitiatedRollback: boolean, # Optional. Boolean flag indicating whether the deployment is a rollback deployment. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" />, <paramref name="deviceClassId" /> or <paramref name="deploymentId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" />, <paramref name="deviceClassId" /> or <paramref name="deploymentId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDeploymentForDeviceClassSubgroup with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = client.GetDeploymentForDeviceClassSubgroup("<groupId>", "<deviceClassId>", "<deploymentId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("deploymentId").ToString()); Console.WriteLine(result.GetProperty("startDateTime").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("deviceClassSubgroups")[0].ToString()); Console.WriteLine(result.GetProperty("isCanceled").ToString()); Console.WriteLine(result.GetProperty("isRetried").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("failure").GetProperty("devicesFailedPercentage").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("failure").GetProperty("devicesFailedCount").ToString()); Console.WriteLine(result.GetProperty("isCloudInitiatedRollback").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetDeploymentForDeviceClassSubgroupAsync"> <MemberSignature Language="C#" Value="public virtual System.Threading.Tasks.Task&lt;Azure.Response&gt; GetDeploymentForDeviceClassSubgroupAsync (string groupId, string deviceClassId, string deploymentId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1&lt;class Azure.Response&gt; GetDeploymentForDeviceClassSubgroupAsync(string groupId, string deviceClassId, string deploymentId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDeploymentForDeviceClassSubgroupAsync(System.String,System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDeploymentForDeviceClassSubgroupAsync (groupId As String, deviceClassId As String, deploymentId As String, Optional context As RequestContext = Nothing) As Task(Of Response)" /> <MemberSignature Language="F#" Value="abstract member GetDeploymentForDeviceClassSubgroupAsync : string * string * string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;&#xA;override this.GetDeploymentForDeviceClassSubgroupAsync : string * string * string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;" Usage="deviceManagementClient.GetDeploymentForDeviceClassSubgroupAsync (groupId, deviceClassId, deploymentId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Threading.Tasks.Task&lt;Azure.Response&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="deploymentId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deviceClassId"> Device class identifier. </param> <param name="deploymentId"> Deployment identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets the deployment properties. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>Deployment</c>: <code>{ deploymentId: string, # Required. The caller-provided deployment identifier. This cannot be longer than 73 characters, must be all lower-case, and cannot contain '&amp;', '^', '[', ']', '{', '}', '|', '&lt;', '&gt;', forward slash, backslash, or double quote. The Updates view in the Azure Portal IoT Hub resource generates a GUID for deploymentId when you create a deployment. startDateTime: string (ISO 8601 Format), # Required. The deployment start datetime. update: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Required. Update information for the update in the deployment. groupId: string, # Required. The group identity for the devices the deployment is intended to update. deviceClassSubgroups: [string], # Optional. The device class subgroups the deployment is compatible with and subgroup deployments have been created for. This is not provided by the caller during CreateOrUpdateDeployment but is automatically determined by Device Update isCanceled: boolean, # Optional. Boolean flag indicating whether the deployment was canceled. isRetried: boolean, # Optional. Boolean flag indicating whether the deployment has been retried. rollbackPolicy: { update: UpdateInfo, # Required. Update to rollback to. failure: { devicesFailedPercentage: number, # Required. Percentage of devices that failed. devicesFailedCount: number, # Required. Number of devices that failed. }, # Required. Failure conditions to initiate rollback policy. }, # Optional. The rollback policy for the deployment. isCloudInitiatedRollback: boolean, # Optional. Boolean flag indicating whether the deployment is a rollback deployment. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" />, <paramref name="deviceClassId" /> or <paramref name="deploymentId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" />, <paramref name="deviceClassId" /> or <paramref name="deploymentId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDeploymentForDeviceClassSubgroupAsync with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = await client.GetDeploymentForDeviceClassSubgroupAsync("<groupId>", "<deviceClassId>", "<deploymentId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("deploymentId").ToString()); Console.WriteLine(result.GetProperty("startDateTime").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("deviceClassSubgroups")[0].ToString()); Console.WriteLine(result.GetProperty("isCanceled").ToString()); Console.WriteLine(result.GetProperty("isRetried").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("failure").GetProperty("devicesFailedPercentage").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("failure").GetProperty("devicesFailedCount").ToString()); Console.WriteLine(result.GetProperty("isCloudInitiatedRollback").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetDeploymentsForDeviceClassSubgroups"> <MemberSignature Language="C#" Value="public virtual Azure.Pageable&lt;BinaryData&gt; GetDeploymentsForDeviceClassSubgroups (string groupId, string deviceClassId, string orderBy = default, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Pageable`1&lt;class System.BinaryData&gt; GetDeploymentsForDeviceClassSubgroups(string groupId, string deviceClassId, string orderBy, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDeploymentsForDeviceClassSubgroups(System.String,System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDeploymentsForDeviceClassSubgroups (groupId As String, deviceClassId As String, Optional orderBy As String = Nothing, Optional context As RequestContext = Nothing) As Pageable(Of BinaryData)" /> <MemberSignature Language="F#" Value="abstract member GetDeploymentsForDeviceClassSubgroups : string * string * string * Azure.RequestContext -&gt; Azure.Pageable&lt;BinaryData&gt;&#xA;override this.GetDeploymentsForDeviceClassSubgroups : string * string * string * Azure.RequestContext -&gt; Azure.Pageable&lt;BinaryData&gt;" Usage="deviceManagementClient.GetDeploymentsForDeviceClassSubgroups (groupId, deviceClassId, orderBy, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Pageable&lt;System.BinaryData&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="orderBy" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deviceClassId"> Device class identifier. </param> <param name="orderBy"> Orders the set of deployments returned. You can order by start date. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets a list of deployments for a device class subgroup. </summary> <returns> The <see cref="T:Azure.Pageable`1" /> from the service containing a list of <see cref="T:System.BinaryData" /> objects. Details of the body schema for each item in the collection are in the Remarks section below. </returns> <remarks> Below is the JSON schema for one item in the pageable response. Response Body: Schema for <c>DeploymentsListValue</c>: <code>{ deploymentId: string, # Required. The caller-provided deployment identifier. This cannot be longer than 73 characters, must be all lower-case, and cannot contain '&amp;', '^', '[', ']', '{', '}', '|', '&lt;', '&gt;', forward slash, backslash, or double quote. The Updates view in the Azure Portal IoT Hub resource generates a GUID for deploymentId when you create a deployment. startDateTime: string (ISO 8601 Format), # Required. The deployment start datetime. update: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Required. Update information for the update in the deployment. groupId: string, # Required. The group identity for the devices the deployment is intended to update. deviceClassSubgroups: [string], # Optional. The device class subgroups the deployment is compatible with and subgroup deployments have been created for. This is not provided by the caller during CreateOrUpdateDeployment but is automatically determined by Device Update isCanceled: boolean, # Optional. Boolean flag indicating whether the deployment was canceled. isRetried: boolean, # Optional. Boolean flag indicating whether the deployment has been retried. rollbackPolicy: { update: UpdateInfo, # Required. Update to rollback to. failure: { devicesFailedPercentage: number, # Required. Percentage of devices that failed. devicesFailedCount: number, # Required. Number of devices that failed. }, # Required. Failure conditions to initiate rollback policy. }, # Optional. The rollback policy for the deployment. isCloudInitiatedRollback: boolean, # Optional. Boolean flag indicating whether the deployment is a rollback deployment. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" /> or <paramref name="deviceClassId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> or <paramref name="deviceClassId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDeploymentsForDeviceClassSubgroups with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); foreach (var data in client.GetDeploymentsForDeviceClassSubgroups("<groupId>", "<deviceClassId>")) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("deploymentId").ToString()); Console.WriteLine(result.GetProperty("startDateTime").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); } ]]></code> This sample shows how to call GetDeploymentsForDeviceClassSubgroups with all parameters, and how to parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); foreach (var data in client.GetDeploymentsForDeviceClassSubgroups("<groupId>", "<deviceClassId>", "<orderBy>")) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("deploymentId").ToString()); Console.WriteLine(result.GetProperty("startDateTime").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("deviceClassSubgroups")[0].ToString()); Console.WriteLine(result.GetProperty("isCanceled").ToString()); Console.WriteLine(result.GetProperty("isRetried").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("failure").GetProperty("devicesFailedPercentage").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("failure").GetProperty("devicesFailedCount").ToString()); Console.WriteLine(result.GetProperty("isCloudInitiatedRollback").ToString()); } ]]></code></example> </Docs> </Member> <Member MemberName="GetDeploymentsForDeviceClassSubgroupsAsync"> <MemberSignature Language="C#" Value="public virtual Azure.AsyncPageable&lt;BinaryData&gt; GetDeploymentsForDeviceClassSubgroupsAsync (string groupId, string deviceClassId, string orderBy = default, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.AsyncPageable`1&lt;class System.BinaryData&gt; GetDeploymentsForDeviceClassSubgroupsAsync(string groupId, string deviceClassId, string orderBy, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDeploymentsForDeviceClassSubgroupsAsync(System.String,System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDeploymentsForDeviceClassSubgroupsAsync (groupId As String, deviceClassId As String, Optional orderBy As String = Nothing, Optional context As RequestContext = Nothing) As AsyncPageable(Of BinaryData)" /> <MemberSignature Language="F#" Value="abstract member GetDeploymentsForDeviceClassSubgroupsAsync : string * string * string * Azure.RequestContext -&gt; Azure.AsyncPageable&lt;BinaryData&gt;&#xA;override this.GetDeploymentsForDeviceClassSubgroupsAsync : string * string * string * Azure.RequestContext -&gt; Azure.AsyncPageable&lt;BinaryData&gt;" Usage="deviceManagementClient.GetDeploymentsForDeviceClassSubgroupsAsync (groupId, deviceClassId, orderBy, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.AsyncPageable&lt;System.BinaryData&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="orderBy" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deviceClassId"> Device class identifier. </param> <param name="orderBy"> Orders the set of deployments returned. You can order by start date. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets a list of deployments for a device class subgroup. </summary> <returns> The <see cref="T:Azure.AsyncPageable`1" /> from the service containing a list of <see cref="T:System.BinaryData" /> objects. Details of the body schema for each item in the collection are in the Remarks section below. </returns> <remarks> Below is the JSON schema for one item in the pageable response. Response Body: Schema for <c>DeploymentsListValue</c>: <code>{ deploymentId: string, # Required. The caller-provided deployment identifier. This cannot be longer than 73 characters, must be all lower-case, and cannot contain '&amp;', '^', '[', ']', '{', '}', '|', '&lt;', '&gt;', forward slash, backslash, or double quote. The Updates view in the Azure Portal IoT Hub resource generates a GUID for deploymentId when you create a deployment. startDateTime: string (ISO 8601 Format), # Required. The deployment start datetime. update: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Required. Update information for the update in the deployment. groupId: string, # Required. The group identity for the devices the deployment is intended to update. deviceClassSubgroups: [string], # Optional. The device class subgroups the deployment is compatible with and subgroup deployments have been created for. This is not provided by the caller during CreateOrUpdateDeployment but is automatically determined by Device Update isCanceled: boolean, # Optional. Boolean flag indicating whether the deployment was canceled. isRetried: boolean, # Optional. Boolean flag indicating whether the deployment has been retried. rollbackPolicy: { update: UpdateInfo, # Required. Update to rollback to. failure: { devicesFailedPercentage: number, # Required. Percentage of devices that failed. devicesFailedCount: number, # Required. Number of devices that failed. }, # Required. Failure conditions to initiate rollback policy. }, # Optional. The rollback policy for the deployment. isCloudInitiatedRollback: boolean, # Optional. Boolean flag indicating whether the deployment is a rollback deployment. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" /> or <paramref name="deviceClassId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> or <paramref name="deviceClassId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDeploymentsForDeviceClassSubgroupsAsync with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); await foreach (var data in client.GetDeploymentsForDeviceClassSubgroupsAsync("<groupId>", "<deviceClassId>")) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("deploymentId").ToString()); Console.WriteLine(result.GetProperty("startDateTime").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); } ]]></code> This sample shows how to call GetDeploymentsForDeviceClassSubgroupsAsync with all parameters, and how to parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); await foreach (var data in client.GetDeploymentsForDeviceClassSubgroupsAsync("<groupId>", "<deviceClassId>", "<orderBy>")) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("deploymentId").ToString()); Console.WriteLine(result.GetProperty("startDateTime").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("deviceClassSubgroups")[0].ToString()); Console.WriteLine(result.GetProperty("isCanceled").ToString()); Console.WriteLine(result.GetProperty("isRetried").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("failure").GetProperty("devicesFailedPercentage").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("failure").GetProperty("devicesFailedCount").ToString()); Console.WriteLine(result.GetProperty("isCloudInitiatedRollback").ToString()); } ]]></code></example> </Docs> </Member> <Member MemberName="GetDeploymentsForGroups"> <MemberSignature Language="C#" Value="public virtual Azure.Pageable&lt;BinaryData&gt; GetDeploymentsForGroups (string groupId, string orderBy = default, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Pageable`1&lt;class System.BinaryData&gt; GetDeploymentsForGroups(string groupId, string orderBy, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDeploymentsForGroups(System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDeploymentsForGroups (groupId As String, Optional orderBy As String = Nothing, Optional context As RequestContext = Nothing) As Pageable(Of BinaryData)" /> <MemberSignature Language="F#" Value="abstract member GetDeploymentsForGroups : string * string * Azure.RequestContext -&gt; Azure.Pageable&lt;BinaryData&gt;&#xA;override this.GetDeploymentsForGroups : string * string * Azure.RequestContext -&gt; Azure.Pageable&lt;BinaryData&gt;" Usage="deviceManagementClient.GetDeploymentsForGroups (groupId, orderBy, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Pageable&lt;System.BinaryData&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="orderBy" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="orderBy"> Orders the set of deployments returned. You can order by start date. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets a list of deployments for a device group. </summary> <returns> The <see cref="T:Azure.Pageable`1" /> from the service containing a list of <see cref="T:System.BinaryData" /> objects. Details of the body schema for each item in the collection are in the Remarks section below. </returns> <remarks> Below is the JSON schema for one item in the pageable response. Response Body: Schema for <c>DeploymentsListValue</c>: <code>{ deploymentId: string, # Required. The caller-provided deployment identifier. This cannot be longer than 73 characters, must be all lower-case, and cannot contain '&amp;', '^', '[', ']', '{', '}', '|', '&lt;', '&gt;', forward slash, backslash, or double quote. The Updates view in the Azure Portal IoT Hub resource generates a GUID for deploymentId when you create a deployment. startDateTime: string (ISO 8601 Format), # Required. The deployment start datetime. update: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Required. Update information for the update in the deployment. groupId: string, # Required. The group identity for the devices the deployment is intended to update. deviceClassSubgroups: [string], # Optional. The device class subgroups the deployment is compatible with and subgroup deployments have been created for. This is not provided by the caller during CreateOrUpdateDeployment but is automatically determined by Device Update isCanceled: boolean, # Optional. Boolean flag indicating whether the deployment was canceled. isRetried: boolean, # Optional. Boolean flag indicating whether the deployment has been retried. rollbackPolicy: { update: UpdateInfo, # Required. Update to rollback to. failure: { devicesFailedPercentage: number, # Required. Percentage of devices that failed. devicesFailedCount: number, # Required. Number of devices that failed. }, # Required. Failure conditions to initiate rollback policy. }, # Optional. The rollback policy for the deployment. isCloudInitiatedRollback: boolean, # Optional. Boolean flag indicating whether the deployment is a rollback deployment. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDeploymentsForGroups with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); foreach (var data in client.GetDeploymentsForGroups("<groupId>")) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("deploymentId").ToString()); Console.WriteLine(result.GetProperty("startDateTime").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); } ]]></code> This sample shows how to call GetDeploymentsForGroups with all parameters, and how to parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); foreach (var data in client.GetDeploymentsForGroups("<groupId>", "<orderBy>")) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("deploymentId").ToString()); Console.WriteLine(result.GetProperty("startDateTime").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("deviceClassSubgroups")[0].ToString()); Console.WriteLine(result.GetProperty("isCanceled").ToString()); Console.WriteLine(result.GetProperty("isRetried").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("failure").GetProperty("devicesFailedPercentage").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("failure").GetProperty("devicesFailedCount").ToString()); Console.WriteLine(result.GetProperty("isCloudInitiatedRollback").ToString()); } ]]></code></example> </Docs> </Member> <Member MemberName="GetDeploymentsForGroupsAsync"> <MemberSignature Language="C#" Value="public virtual Azure.AsyncPageable&lt;BinaryData&gt; GetDeploymentsForGroupsAsync (string groupId, string orderBy = default, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.AsyncPageable`1&lt;class System.BinaryData&gt; GetDeploymentsForGroupsAsync(string groupId, string orderBy, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDeploymentsForGroupsAsync(System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDeploymentsForGroupsAsync (groupId As String, Optional orderBy As String = Nothing, Optional context As RequestContext = Nothing) As AsyncPageable(Of BinaryData)" /> <MemberSignature Language="F#" Value="abstract member GetDeploymentsForGroupsAsync : string * string * Azure.RequestContext -&gt; Azure.AsyncPageable&lt;BinaryData&gt;&#xA;override this.GetDeploymentsForGroupsAsync : string * string * Azure.RequestContext -&gt; Azure.AsyncPageable&lt;BinaryData&gt;" Usage="deviceManagementClient.GetDeploymentsForGroupsAsync (groupId, orderBy, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.AsyncPageable&lt;System.BinaryData&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="orderBy" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="orderBy"> Orders the set of deployments returned. You can order by start date. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets a list of deployments for a device group. </summary> <returns> The <see cref="T:Azure.AsyncPageable`1" /> from the service containing a list of <see cref="T:System.BinaryData" /> objects. Details of the body schema for each item in the collection are in the Remarks section below. </returns> <remarks> Below is the JSON schema for one item in the pageable response. Response Body: Schema for <c>DeploymentsListValue</c>: <code>{ deploymentId: string, # Required. The caller-provided deployment identifier. This cannot be longer than 73 characters, must be all lower-case, and cannot contain '&amp;', '^', '[', ']', '{', '}', '|', '&lt;', '&gt;', forward slash, backslash, or double quote. The Updates view in the Azure Portal IoT Hub resource generates a GUID for deploymentId when you create a deployment. startDateTime: string (ISO 8601 Format), # Required. The deployment start datetime. update: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Required. Update information for the update in the deployment. groupId: string, # Required. The group identity for the devices the deployment is intended to update. deviceClassSubgroups: [string], # Optional. The device class subgroups the deployment is compatible with and subgroup deployments have been created for. This is not provided by the caller during CreateOrUpdateDeployment but is automatically determined by Device Update isCanceled: boolean, # Optional. Boolean flag indicating whether the deployment was canceled. isRetried: boolean, # Optional. Boolean flag indicating whether the deployment has been retried. rollbackPolicy: { update: UpdateInfo, # Required. Update to rollback to. failure: { devicesFailedPercentage: number, # Required. Percentage of devices that failed. devicesFailedCount: number, # Required. Number of devices that failed. }, # Required. Failure conditions to initiate rollback policy. }, # Optional. The rollback policy for the deployment. isCloudInitiatedRollback: boolean, # Optional. Boolean flag indicating whether the deployment is a rollback deployment. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDeploymentsForGroupsAsync with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); await foreach (var data in client.GetDeploymentsForGroupsAsync("<groupId>")) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("deploymentId").ToString()); Console.WriteLine(result.GetProperty("startDateTime").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); } ]]></code> This sample shows how to call GetDeploymentsForGroupsAsync with all parameters, and how to parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); await foreach (var data in client.GetDeploymentsForGroupsAsync("<groupId>", "<orderBy>")) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("deploymentId").ToString()); Console.WriteLine(result.GetProperty("startDateTime").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("deviceClassSubgroups")[0].ToString()); Console.WriteLine(result.GetProperty("isCanceled").ToString()); Console.WriteLine(result.GetProperty("isRetried").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("failure").GetProperty("devicesFailedPercentage").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("failure").GetProperty("devicesFailedCount").ToString()); Console.WriteLine(result.GetProperty("isCloudInitiatedRollback").ToString()); } ]]></code></example> </Docs> </Member> <Member MemberName="GetDeploymentStatus"> <MemberSignature Language="C#" Value="public virtual Azure.Response GetDeploymentStatus (string groupId, string deploymentId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Response GetDeploymentStatus(string groupId, string deploymentId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDeploymentStatus(System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDeploymentStatus (groupId As String, deploymentId As String, Optional context As RequestContext = Nothing) As Response" /> <MemberSignature Language="F#" Value="abstract member GetDeploymentStatus : string * string * Azure.RequestContext -&gt; Azure.Response&#xA;override this.GetDeploymentStatus : string * string * Azure.RequestContext -&gt; Azure.Response" Usage="deviceManagementClient.GetDeploymentStatus (groupId, deploymentId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Response</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deploymentId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deploymentId"> Deployment identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets the status of a deployment including a breakdown of how many devices in the deployment are in progress, completed, or failed. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>DeploymentStatus</c>: <code>{ groupId: string, # Required. The group identity deploymentState: "Active" | "ActiveWithSubgroupFailures" | "Failed" | "Inactive" | "Canceled", # Required. The state of the deployment. error: { code: string, # Required. Server defined error code. message: string, # Required. A human-readable representation of the error. target: string, # Optional. The target of the error. details: [Error], # Optional. An array of errors that led to the reported error. innererror: { code: string, # Required. A more specific error code than what was provided by the containing error. message: string, # Optional. A human-readable representation of the error. errorDetail: string, # Optional. The internal error or exception message. innerError: InnerError, # Optional. An object containing more specific information than the current object about the error. }, # Optional. An object containing more specific information than the current object about the error. occurredDateTime: string (ISO 8601 Format), # Optional. Date and time in UTC when the error occurred. }, # Optional. The error details of the Failed state. This is not present if the deployment state is not Failed. subgroupStatus: [ { groupId: string, # Required. The group identity deviceClassId: string, # Required. The device class subgroup identity deploymentState: "Active" | "Failed" | "Inactive" | "Canceled", # Required. The state of the subgroup deployment. error: Error, # Optional. The error details of the Failed state. This is not present if the deployment state is not Failed. totalDevices: number, # Optional. The total number of devices in the deployment. devicesInProgressCount: number, # Optional. The number of devices that are currently in deployment. devicesCompletedFailedCount: number, # Optional. The number of devices that have completed deployment with a failure. devicesCompletedSucceededCount: number, # Optional. The number of devices which have successfully completed deployment. devicesCanceledCount: number, # Optional. The number of devices which have had their deployment canceled. } ], # Required. The collection of device class subgroup status objects } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" /> or <paramref name="deploymentId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> or <paramref name="deploymentId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDeploymentStatus with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = client.GetDeploymentStatus("<groupId>", "<deploymentId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("deploymentState").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("code").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("message").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("target").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("innererror").GetProperty("code").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("innererror").GetProperty("message").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("innererror").GetProperty("errorDetail").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("occurredDateTime").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("deploymentState").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("error").GetProperty("code").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("error").GetProperty("message").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("error").GetProperty("target").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("error").GetProperty("innererror").GetProperty("code").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("error").GetProperty("innererror").GetProperty("message").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("error").GetProperty("innererror").GetProperty("errorDetail").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("error").GetProperty("occurredDateTime").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("totalDevices").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("devicesInProgressCount").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("devicesCompletedFailedCount").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("devicesCompletedSucceededCount").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("devicesCanceledCount").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetDeploymentStatusAsync"> <MemberSignature Language="C#" Value="public virtual System.Threading.Tasks.Task&lt;Azure.Response&gt; GetDeploymentStatusAsync (string groupId, string deploymentId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1&lt;class Azure.Response&gt; GetDeploymentStatusAsync(string groupId, string deploymentId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDeploymentStatusAsync(System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDeploymentStatusAsync (groupId As String, deploymentId As String, Optional context As RequestContext = Nothing) As Task(Of Response)" /> <MemberSignature Language="F#" Value="abstract member GetDeploymentStatusAsync : string * string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;&#xA;override this.GetDeploymentStatusAsync : string * string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;" Usage="deviceManagementClient.GetDeploymentStatusAsync (groupId, deploymentId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Threading.Tasks.Task&lt;Azure.Response&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deploymentId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deploymentId"> Deployment identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets the status of a deployment including a breakdown of how many devices in the deployment are in progress, completed, or failed. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>DeploymentStatus</c>: <code>{ groupId: string, # Required. The group identity deploymentState: "Active" | "ActiveWithSubgroupFailures" | "Failed" | "Inactive" | "Canceled", # Required. The state of the deployment. error: { code: string, # Required. Server defined error code. message: string, # Required. A human-readable representation of the error. target: string, # Optional. The target of the error. details: [Error], # Optional. An array of errors that led to the reported error. innererror: { code: string, # Required. A more specific error code than what was provided by the containing error. message: string, # Optional. A human-readable representation of the error. errorDetail: string, # Optional. The internal error or exception message. innerError: InnerError, # Optional. An object containing more specific information than the current object about the error. }, # Optional. An object containing more specific information than the current object about the error. occurredDateTime: string (ISO 8601 Format), # Optional. Date and time in UTC when the error occurred. }, # Optional. The error details of the Failed state. This is not present if the deployment state is not Failed. subgroupStatus: [ { groupId: string, # Required. The group identity deviceClassId: string, # Required. The device class subgroup identity deploymentState: "Active" | "Failed" | "Inactive" | "Canceled", # Required. The state of the subgroup deployment. error: Error, # Optional. The error details of the Failed state. This is not present if the deployment state is not Failed. totalDevices: number, # Optional. The total number of devices in the deployment. devicesInProgressCount: number, # Optional. The number of devices that are currently in deployment. devicesCompletedFailedCount: number, # Optional. The number of devices that have completed deployment with a failure. devicesCompletedSucceededCount: number, # Optional. The number of devices which have successfully completed deployment. devicesCanceledCount: number, # Optional. The number of devices which have had their deployment canceled. } ], # Required. The collection of device class subgroup status objects } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" /> or <paramref name="deploymentId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> or <paramref name="deploymentId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDeploymentStatusAsync with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = await client.GetDeploymentStatusAsync("<groupId>", "<deploymentId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("deploymentState").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("code").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("message").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("target").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("innererror").GetProperty("code").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("innererror").GetProperty("message").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("innererror").GetProperty("errorDetail").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("occurredDateTime").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("deploymentState").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("error").GetProperty("code").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("error").GetProperty("message").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("error").GetProperty("target").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("error").GetProperty("innererror").GetProperty("code").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("error").GetProperty("innererror").GetProperty("message").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("error").GetProperty("innererror").GetProperty("errorDetail").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("error").GetProperty("occurredDateTime").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("totalDevices").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("devicesInProgressCount").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("devicesCompletedFailedCount").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("devicesCompletedSucceededCount").ToString()); Console.WriteLine(result.GetProperty("subgroupStatus")[0].GetProperty("devicesCanceledCount").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetDevice"> <MemberSignature Language="C#" Value="public virtual Azure.Response GetDevice (string deviceId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Response GetDevice(string deviceId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDevice(System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDevice (deviceId As String, Optional context As RequestContext = Nothing) As Response" /> <MemberSignature Language="F#" Value="abstract member GetDevice : string * Azure.RequestContext -&gt; Azure.Response&#xA;override this.GetDevice : string * Azure.RequestContext -&gt; Azure.Response" Usage="deviceManagementClient.GetDevice (deviceId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Response</ReturnType> </ReturnValue> <Parameters> <Parameter Name="deviceId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="deviceId"> Device identifier in Azure IoT Hub. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets the device properties and latest deployment status for a device connected to Device Update for IoT Hub. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>Device</c>: <code>{ deviceId: string, # Required. Device identity. moduleId: string, # Optional. Device module identity. deviceClassId: string, # Required. Device class identity. groupId: string, # Optional. Device group identity. lastAttemptedUpdate: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Optional. The update that device last attempted to install. deploymentStatus: "Succeeded" | "InProgress" | "Canceled" | "Failed", # Optional. State of the device in its last deployment. installedUpdate: UpdateInfo, # Optional. Currently installed update on device. onLatestUpdate: boolean, # Required. Boolean flag indicating whether the latest update (the best compatible update for the device's device class and group) is installed on the device lastDeploymentId: string, # Optional. The deployment identifier for the last deployment to the device lastInstallResult: { resultCode: number, # Required. Install result code. extendedResultCode: number, # Required. Install extended result code resultDetails: string, # Optional. A string containing further details about the install result stepResults: [ { update: UpdateInfo, # Optional. The update that this step installs if it is of reference type. description: string, # Optional. Step description. resultCode: number, # Required. Install result code. extendedResultCode: number, # Required. Install extended result code resultDetails: string, # Optional. A string containing further details about the install result } ], # Optional. Array of step results }, # Optional. Last install result. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="deviceId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="deviceId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDevice with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = client.GetDevice("<deviceId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("deviceId").ToString()); Console.WriteLine(result.GetProperty("moduleId").ToString()); Console.WriteLine(result.GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("deploymentStatus").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("onLatestUpdate").ToString()); Console.WriteLine(result.GetProperty("lastDeploymentId").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("resultCode").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("extendedResultCode").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("resultDetails").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("resultCode").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("extendedResultCode").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("resultDetails").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetDeviceAsync"> <MemberSignature Language="C#" Value="public virtual System.Threading.Tasks.Task&lt;Azure.Response&gt; GetDeviceAsync (string deviceId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1&lt;class Azure.Response&gt; GetDeviceAsync(string deviceId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDeviceAsync(System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDeviceAsync (deviceId As String, Optional context As RequestContext = Nothing) As Task(Of Response)" /> <MemberSignature Language="F#" Value="abstract member GetDeviceAsync : string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;&#xA;override this.GetDeviceAsync : string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;" Usage="deviceManagementClient.GetDeviceAsync (deviceId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Threading.Tasks.Task&lt;Azure.Response&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="deviceId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="deviceId"> Device identifier in Azure IoT Hub. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets the device properties and latest deployment status for a device connected to Device Update for IoT Hub. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>Device</c>: <code>{ deviceId: string, # Required. Device identity. moduleId: string, # Optional. Device module identity. deviceClassId: string, # Required. Device class identity. groupId: string, # Optional. Device group identity. lastAttemptedUpdate: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Optional. The update that device last attempted to install. deploymentStatus: "Succeeded" | "InProgress" | "Canceled" | "Failed", # Optional. State of the device in its last deployment. installedUpdate: UpdateInfo, # Optional. Currently installed update on device. onLatestUpdate: boolean, # Required. Boolean flag indicating whether the latest update (the best compatible update for the device's device class and group) is installed on the device lastDeploymentId: string, # Optional. The deployment identifier for the last deployment to the device lastInstallResult: { resultCode: number, # Required. Install result code. extendedResultCode: number, # Required. Install extended result code resultDetails: string, # Optional. A string containing further details about the install result stepResults: [ { update: UpdateInfo, # Optional. The update that this step installs if it is of reference type. description: string, # Optional. Step description. resultCode: number, # Required. Install result code. extendedResultCode: number, # Required. Install extended result code resultDetails: string, # Optional. A string containing further details about the install result } ], # Optional. Array of step results }, # Optional. Last install result. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="deviceId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="deviceId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDeviceAsync with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = await client.GetDeviceAsync("<deviceId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("deviceId").ToString()); Console.WriteLine(result.GetProperty("moduleId").ToString()); Console.WriteLine(result.GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("deploymentStatus").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("onLatestUpdate").ToString()); Console.WriteLine(result.GetProperty("lastDeploymentId").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("resultCode").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("extendedResultCode").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("resultDetails").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("resultCode").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("extendedResultCode").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("resultDetails").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetDeviceClass"> <MemberSignature Language="C#" Value="public virtual Azure.Response GetDeviceClass (string deviceClassId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Response GetDeviceClass(string deviceClassId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDeviceClass(System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDeviceClass (deviceClassId As String, Optional context As RequestContext = Nothing) As Response" /> <MemberSignature Language="F#" Value="abstract member GetDeviceClass : string * Azure.RequestContext -&gt; Azure.Response&#xA;override this.GetDeviceClass : string * Azure.RequestContext -&gt; Azure.Response" Usage="deviceManagementClient.GetDeviceClass (deviceClassId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Response</ReturnType> </ReturnValue> <Parameters> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="deviceClassId"> Device class identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets the properties of a device class. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>DeviceClass</c>: <code>{ deviceClassId: string, # Required. The device class identifier. This is generated from the model Id and the compat properties reported by the device update agent in the Device Update PnP interface in IoT Hub. It is a hex-encoded SHA1 hash. friendlyName: string, # Optional. The device class friendly name. This can be updated by callers after the device class has been automatically created. deviceClassProperties: { contractModel: { id: string, # Required. The Device Update agent contract model Id of the device class. This is also used to calculate the device class Id. name: string, # Required. The Device Update agent contract model name of the device class. Intended to be a more readable form of the contract model Id. }, # Optional. The Device Update agent contract model. compatProperties: Dictionary&lt;string, string&gt;, # Required. The compat properties of the device class. This object can be thought of as a set of key-value pairs where the key is the name of the compatibility property and the value is the value of the compatibility property. There will always be at least 1 compat property }, # Required. The device class properties that are used to calculate the device class Id bestCompatibleUpdate: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Optional. Update that is the highest version compatible with this device class. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="deviceClassId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="deviceClassId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDeviceClass with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = client.GetDeviceClass("<deviceClassId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("deviceClassProperties").GetProperty("contractModel").GetProperty("id").ToString()); Console.WriteLine(result.GetProperty("deviceClassProperties").GetProperty("contractModel").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("deviceClassProperties").GetProperty("compatProperties").GetProperty("<test>").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("friendlyName").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetDeviceClassAsync"> <MemberSignature Language="C#" Value="public virtual System.Threading.Tasks.Task&lt;Azure.Response&gt; GetDeviceClassAsync (string deviceClassId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1&lt;class Azure.Response&gt; GetDeviceClassAsync(string deviceClassId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDeviceClassAsync(System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDeviceClassAsync (deviceClassId As String, Optional context As RequestContext = Nothing) As Task(Of Response)" /> <MemberSignature Language="F#" Value="abstract member GetDeviceClassAsync : string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;&#xA;override this.GetDeviceClassAsync : string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;" Usage="deviceManagementClient.GetDeviceClassAsync (deviceClassId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Threading.Tasks.Task&lt;Azure.Response&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="deviceClassId"> Device class identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets the properties of a device class. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>DeviceClass</c>: <code>{ deviceClassId: string, # Required. The device class identifier. This is generated from the model Id and the compat properties reported by the device update agent in the Device Update PnP interface in IoT Hub. It is a hex-encoded SHA1 hash. friendlyName: string, # Optional. The device class friendly name. This can be updated by callers after the device class has been automatically created. deviceClassProperties: { contractModel: { id: string, # Required. The Device Update agent contract model Id of the device class. This is also used to calculate the device class Id. name: string, # Required. The Device Update agent contract model name of the device class. Intended to be a more readable form of the contract model Id. }, # Optional. The Device Update agent contract model. compatProperties: Dictionary&lt;string, string&gt;, # Required. The compat properties of the device class. This object can be thought of as a set of key-value pairs where the key is the name of the compatibility property and the value is the value of the compatibility property. There will always be at least 1 compat property }, # Required. The device class properties that are used to calculate the device class Id bestCompatibleUpdate: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Optional. Update that is the highest version compatible with this device class. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="deviceClassId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="deviceClassId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDeviceClassAsync with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = await client.GetDeviceClassAsync("<deviceClassId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("deviceClassProperties").GetProperty("contractModel").GetProperty("id").ToString()); Console.WriteLine(result.GetProperty("deviceClassProperties").GetProperty("contractModel").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("deviceClassProperties").GetProperty("compatProperties").GetProperty("<test>").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("friendlyName").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetDeviceClasses"> <MemberSignature Language="C#" Value="public virtual Azure.Pageable&lt;BinaryData&gt; GetDeviceClasses (string filter = default, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Pageable`1&lt;class System.BinaryData&gt; GetDeviceClasses(string filter, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDeviceClasses(System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDeviceClasses (Optional filter As String = Nothing, Optional context As RequestContext = Nothing) As Pageable(Of BinaryData)" /> <MemberSignature Language="F#" Value="abstract member GetDeviceClasses : string * Azure.RequestContext -&gt; Azure.Pageable&lt;BinaryData&gt;&#xA;override this.GetDeviceClasses : string * Azure.RequestContext -&gt; Azure.Pageable&lt;BinaryData&gt;" Usage="deviceManagementClient.GetDeviceClasses (filter, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Pageable&lt;System.BinaryData&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="filter" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="filter"> Restricts the set of device classes returned. You can filter on friendly name. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets a list of all device classes (sets of devices compatible with the same updates based on the model Id and compat properties reported in the Device Update PnP interface in IoT Hub) for all devices connected to Device Update for IoT Hub. </summary> <returns> The <see cref="T:Azure.Pageable`1" /> from the service containing a list of <see cref="T:System.BinaryData" /> objects. Details of the body schema for each item in the collection are in the Remarks section below. </returns> <remarks> Below is the JSON schema for one item in the pageable response. Response Body: Schema for <c>DeviceClassesListValue</c>: <code>{ deviceClassId: string, # Required. The device class identifier. This is generated from the model Id and the compat properties reported by the device update agent in the Device Update PnP interface in IoT Hub. It is a hex-encoded SHA1 hash. friendlyName: string, # Optional. The device class friendly name. This can be updated by callers after the device class has been automatically created. deviceClassProperties: { contractModel: { id: string, # Required. The Device Update agent contract model Id of the device class. This is also used to calculate the device class Id. name: string, # Required. The Device Update agent contract model name of the device class. Intended to be a more readable form of the contract model Id. }, # Optional. The Device Update agent contract model. compatProperties: Dictionary&lt;string, string&gt;, # Required. The compat properties of the device class. This object can be thought of as a set of key-value pairs where the key is the name of the compatibility property and the value is the value of the compatibility property. There will always be at least 1 compat property }, # Required. The device class properties that are used to calculate the device class Id bestCompatibleUpdate: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Optional. Update that is the highest version compatible with this device class. } </code></remarks> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDeviceClasses and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); foreach (var data in client.GetDeviceClasses()) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("deviceClassProperties").GetProperty("compatProperties").GetProperty("<test>").ToString()); } ]]></code> This sample shows how to call GetDeviceClasses with all parameters, and how to parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); foreach (var data in client.GetDeviceClasses("<filter>")) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("deviceClassProperties").GetProperty("contractModel").GetProperty("id").ToString()); Console.WriteLine(result.GetProperty("deviceClassProperties").GetProperty("contractModel").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("deviceClassProperties").GetProperty("compatProperties").GetProperty("<test>").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("friendlyName").ToString()); } ]]></code></example> </Docs> </Member> <Member MemberName="GetDeviceClassesAsync"> <MemberSignature Language="C#" Value="public virtual Azure.AsyncPageable&lt;BinaryData&gt; GetDeviceClassesAsync (string filter = default, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.AsyncPageable`1&lt;class System.BinaryData&gt; GetDeviceClassesAsync(string filter, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDeviceClassesAsync(System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDeviceClassesAsync (Optional filter As String = Nothing, Optional context As RequestContext = Nothing) As AsyncPageable(Of BinaryData)" /> <MemberSignature Language="F#" Value="abstract member GetDeviceClassesAsync : string * Azure.RequestContext -&gt; Azure.AsyncPageable&lt;BinaryData&gt;&#xA;override this.GetDeviceClassesAsync : string * Azure.RequestContext -&gt; Azure.AsyncPageable&lt;BinaryData&gt;" Usage="deviceManagementClient.GetDeviceClassesAsync (filter, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.AsyncPageable&lt;System.BinaryData&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="filter" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="filter"> Restricts the set of device classes returned. You can filter on friendly name. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets a list of all device classes (sets of devices compatible with the same updates based on the model Id and compat properties reported in the Device Update PnP interface in IoT Hub) for all devices connected to Device Update for IoT Hub. </summary> <returns> The <see cref="T:Azure.AsyncPageable`1" /> from the service containing a list of <see cref="T:System.BinaryData" /> objects. Details of the body schema for each item in the collection are in the Remarks section below. </returns> <remarks> Below is the JSON schema for one item in the pageable response. Response Body: Schema for <c>DeviceClassesListValue</c>: <code>{ deviceClassId: string, # Required. The device class identifier. This is generated from the model Id and the compat properties reported by the device update agent in the Device Update PnP interface in IoT Hub. It is a hex-encoded SHA1 hash. friendlyName: string, # Optional. The device class friendly name. This can be updated by callers after the device class has been automatically created. deviceClassProperties: { contractModel: { id: string, # Required. The Device Update agent contract model Id of the device class. This is also used to calculate the device class Id. name: string, # Required. The Device Update agent contract model name of the device class. Intended to be a more readable form of the contract model Id. }, # Optional. The Device Update agent contract model. compatProperties: Dictionary&lt;string, string&gt;, # Required. The compat properties of the device class. This object can be thought of as a set of key-value pairs where the key is the name of the compatibility property and the value is the value of the compatibility property. There will always be at least 1 compat property }, # Required. The device class properties that are used to calculate the device class Id bestCompatibleUpdate: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Optional. Update that is the highest version compatible with this device class. } </code></remarks> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDeviceClassesAsync and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); await foreach (var data in client.GetDeviceClassesAsync()) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("deviceClassProperties").GetProperty("compatProperties").GetProperty("<test>").ToString()); } ]]></code> This sample shows how to call GetDeviceClassesAsync with all parameters, and how to parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); await foreach (var data in client.GetDeviceClassesAsync("<filter>")) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("deviceClassProperties").GetProperty("contractModel").GetProperty("id").ToString()); Console.WriteLine(result.GetProperty("deviceClassProperties").GetProperty("contractModel").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("deviceClassProperties").GetProperty("compatProperties").GetProperty("<test>").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("friendlyName").ToString()); } ]]></code></example> </Docs> </Member> <Member MemberName="GetDeviceClassSubgroup"> <MemberSignature Language="C#" Value="public virtual Azure.Response GetDeviceClassSubgroup (string groupId, string deviceClassId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Response GetDeviceClassSubgroup(string groupId, string deviceClassId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDeviceClassSubgroup(System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDeviceClassSubgroup (groupId As String, deviceClassId As String, Optional context As RequestContext = Nothing) As Response" /> <MemberSignature Language="F#" Value="abstract member GetDeviceClassSubgroup : string * string * Azure.RequestContext -&gt; Azure.Response&#xA;override this.GetDeviceClassSubgroup : string * string * Azure.RequestContext -&gt; Azure.Response" Usage="deviceManagementClient.GetDeviceClassSubgroup (groupId, deviceClassId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Response</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deviceClassId"> Device class identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets device class subgroup details. A device class subgroup is the set of devices within the group that share the same device class. All devices within the same device class are compatible with the same updates. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>DeviceClassSubgroup</c>: <code>{ deviceClassId: string, # Required. Device class subgroup identity. This is generated from the model Id and the compat properties reported by the device update agent in the Device Update PnP interface in IoT Hub. It is a hex-encoded SHA1 hash. groupId: string, # Required. Group identity. createdDateTime: string, # Required. Date and time when the device class subgroup was created. deviceCount: number, # Optional. The number of devices in the device class subgroup. deploymentId: string, # Optional. The active deployment Id for the device class subgroup. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" /> or <paramref name="deviceClassId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> or <paramref name="deviceClassId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDeviceClassSubgroup with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = client.GetDeviceClassSubgroup("<groupId>", "<deviceClassId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("createdDateTime").ToString()); Console.WriteLine(result.GetProperty("deviceCount").ToString()); Console.WriteLine(result.GetProperty("deploymentId").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetDeviceClassSubgroupAsync"> <MemberSignature Language="C#" Value="public virtual System.Threading.Tasks.Task&lt;Azure.Response&gt; GetDeviceClassSubgroupAsync (string groupId, string deviceClassId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1&lt;class Azure.Response&gt; GetDeviceClassSubgroupAsync(string groupId, string deviceClassId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDeviceClassSubgroupAsync(System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDeviceClassSubgroupAsync (groupId As String, deviceClassId As String, Optional context As RequestContext = Nothing) As Task(Of Response)" /> <MemberSignature Language="F#" Value="abstract member GetDeviceClassSubgroupAsync : string * string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;&#xA;override this.GetDeviceClassSubgroupAsync : string * string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;" Usage="deviceManagementClient.GetDeviceClassSubgroupAsync (groupId, deviceClassId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Threading.Tasks.Task&lt;Azure.Response&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deviceClassId"> Device class identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets device class subgroup details. A device class subgroup is the set of devices within the group that share the same device class. All devices within the same device class are compatible with the same updates. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>DeviceClassSubgroup</c>: <code>{ deviceClassId: string, # Required. Device class subgroup identity. This is generated from the model Id and the compat properties reported by the device update agent in the Device Update PnP interface in IoT Hub. It is a hex-encoded SHA1 hash. groupId: string, # Required. Group identity. createdDateTime: string, # Required. Date and time when the device class subgroup was created. deviceCount: number, # Optional. The number of devices in the device class subgroup. deploymentId: string, # Optional. The active deployment Id for the device class subgroup. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" /> or <paramref name="deviceClassId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> or <paramref name="deviceClassId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDeviceClassSubgroupAsync with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = await client.GetDeviceClassSubgroupAsync("<groupId>", "<deviceClassId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("createdDateTime").ToString()); Console.WriteLine(result.GetProperty("deviceCount").ToString()); Console.WriteLine(result.GetProperty("deploymentId").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetDeviceClassSubgroupDeploymentStatus"> <MemberSignature Language="C#" Value="public virtual Azure.Response GetDeviceClassSubgroupDeploymentStatus (string groupId, string deviceClassId, string deploymentId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Response GetDeviceClassSubgroupDeploymentStatus(string groupId, string deviceClassId, string deploymentId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDeviceClassSubgroupDeploymentStatus(System.String,System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDeviceClassSubgroupDeploymentStatus (groupId As String, deviceClassId As String, deploymentId As String, Optional context As RequestContext = Nothing) As Response" /> <MemberSignature Language="F#" Value="abstract member GetDeviceClassSubgroupDeploymentStatus : string * string * string * Azure.RequestContext -&gt; Azure.Response&#xA;override this.GetDeviceClassSubgroupDeploymentStatus : string * string * string * Azure.RequestContext -&gt; Azure.Response" Usage="deviceManagementClient.GetDeviceClassSubgroupDeploymentStatus (groupId, deviceClassId, deploymentId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Response</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="deploymentId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deviceClassId"> Device class identifier. </param> <param name="deploymentId"> Deployment identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets the status of a deployment including a breakdown of how many devices in the deployment are in progress, completed, or failed. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>DeviceClassSubgroupDeploymentStatus</c>: <code>{ groupId: string, # Required. The group identity deviceClassId: string, # Required. The device class subgroup identity deploymentState: "Active" | "Failed" | "Inactive" | "Canceled", # Required. The state of the subgroup deployment. error: { code: string, # Required. Server defined error code. message: string, # Required. A human-readable representation of the error. target: string, # Optional. The target of the error. details: [Error], # Optional. An array of errors that led to the reported error. innererror: { code: string, # Required. A more specific error code than what was provided by the containing error. message: string, # Optional. A human-readable representation of the error. errorDetail: string, # Optional. The internal error or exception message. innerError: InnerError, # Optional. An object containing more specific information than the current object about the error. }, # Optional. An object containing more specific information than the current object about the error. occurredDateTime: string (ISO 8601 Format), # Optional. Date and time in UTC when the error occurred. }, # Optional. The error details of the Failed state. This is not present if the deployment state is not Failed. totalDevices: number, # Optional. The total number of devices in the deployment. devicesInProgressCount: number, # Optional. The number of devices that are currently in deployment. devicesCompletedFailedCount: number, # Optional. The number of devices that have completed deployment with a failure. devicesCompletedSucceededCount: number, # Optional. The number of devices which have successfully completed deployment. devicesCanceledCount: number, # Optional. The number of devices which have had their deployment canceled. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" />, <paramref name="deviceClassId" /> or <paramref name="deploymentId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" />, <paramref name="deviceClassId" /> or <paramref name="deploymentId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDeviceClassSubgroupDeploymentStatus with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = client.GetDeviceClassSubgroupDeploymentStatus("<groupId>", "<deviceClassId>", "<deploymentId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("deploymentState").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("code").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("message").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("target").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("innererror").GetProperty("code").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("innererror").GetProperty("message").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("innererror").GetProperty("errorDetail").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("occurredDateTime").ToString()); Console.WriteLine(result.GetProperty("totalDevices").ToString()); Console.WriteLine(result.GetProperty("devicesInProgressCount").ToString()); Console.WriteLine(result.GetProperty("devicesCompletedFailedCount").ToString()); Console.WriteLine(result.GetProperty("devicesCompletedSucceededCount").ToString()); Console.WriteLine(result.GetProperty("devicesCanceledCount").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetDeviceClassSubgroupDeploymentStatusAsync"> <MemberSignature Language="C#" Value="public virtual System.Threading.Tasks.Task&lt;Azure.Response&gt; GetDeviceClassSubgroupDeploymentStatusAsync (string groupId, string deviceClassId, string deploymentId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1&lt;class Azure.Response&gt; GetDeviceClassSubgroupDeploymentStatusAsync(string groupId, string deviceClassId, string deploymentId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDeviceClassSubgroupDeploymentStatusAsync(System.String,System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDeviceClassSubgroupDeploymentStatusAsync (groupId As String, deviceClassId As String, deploymentId As String, Optional context As RequestContext = Nothing) As Task(Of Response)" /> <MemberSignature Language="F#" Value="abstract member GetDeviceClassSubgroupDeploymentStatusAsync : string * string * string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;&#xA;override this.GetDeviceClassSubgroupDeploymentStatusAsync : string * string * string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;" Usage="deviceManagementClient.GetDeviceClassSubgroupDeploymentStatusAsync (groupId, deviceClassId, deploymentId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Threading.Tasks.Task&lt;Azure.Response&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="deploymentId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deviceClassId"> Device class identifier. </param> <param name="deploymentId"> Deployment identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets the status of a deployment including a breakdown of how many devices in the deployment are in progress, completed, or failed. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>DeviceClassSubgroupDeploymentStatus</c>: <code>{ groupId: string, # Required. The group identity deviceClassId: string, # Required. The device class subgroup identity deploymentState: "Active" | "Failed" | "Inactive" | "Canceled", # Required. The state of the subgroup deployment. error: { code: string, # Required. Server defined error code. message: string, # Required. A human-readable representation of the error. target: string, # Optional. The target of the error. details: [Error], # Optional. An array of errors that led to the reported error. innererror: { code: string, # Required. A more specific error code than what was provided by the containing error. message: string, # Optional. A human-readable representation of the error. errorDetail: string, # Optional. The internal error or exception message. innerError: InnerError, # Optional. An object containing more specific information than the current object about the error. }, # Optional. An object containing more specific information than the current object about the error. occurredDateTime: string (ISO 8601 Format), # Optional. Date and time in UTC when the error occurred. }, # Optional. The error details of the Failed state. This is not present if the deployment state is not Failed. totalDevices: number, # Optional. The total number of devices in the deployment. devicesInProgressCount: number, # Optional. The number of devices that are currently in deployment. devicesCompletedFailedCount: number, # Optional. The number of devices that have completed deployment with a failure. devicesCompletedSucceededCount: number, # Optional. The number of devices which have successfully completed deployment. devicesCanceledCount: number, # Optional. The number of devices which have had their deployment canceled. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" />, <paramref name="deviceClassId" /> or <paramref name="deploymentId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" />, <paramref name="deviceClassId" /> or <paramref name="deploymentId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDeviceClassSubgroupDeploymentStatusAsync with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = await client.GetDeviceClassSubgroupDeploymentStatusAsync("<groupId>", "<deviceClassId>", "<deploymentId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("deploymentState").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("code").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("message").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("target").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("innererror").GetProperty("code").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("innererror").GetProperty("message").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("innererror").GetProperty("errorDetail").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("occurredDateTime").ToString()); Console.WriteLine(result.GetProperty("totalDevices").ToString()); Console.WriteLine(result.GetProperty("devicesInProgressCount").ToString()); Console.WriteLine(result.GetProperty("devicesCompletedFailedCount").ToString()); Console.WriteLine(result.GetProperty("devicesCompletedSucceededCount").ToString()); Console.WriteLine(result.GetProperty("devicesCanceledCount").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetDeviceClassSubgroupsForGroups"> <MemberSignature Language="C#" Value="public virtual Azure.Pageable&lt;BinaryData&gt; GetDeviceClassSubgroupsForGroups (string groupId, string filter = default, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Pageable`1&lt;class System.BinaryData&gt; GetDeviceClassSubgroupsForGroups(string groupId, string filter, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDeviceClassSubgroupsForGroups(System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDeviceClassSubgroupsForGroups (groupId As String, Optional filter As String = Nothing, Optional context As RequestContext = Nothing) As Pageable(Of BinaryData)" /> <MemberSignature Language="F#" Value="abstract member GetDeviceClassSubgroupsForGroups : string * string * Azure.RequestContext -&gt; Azure.Pageable&lt;BinaryData&gt;&#xA;override this.GetDeviceClassSubgroupsForGroups : string * string * Azure.RequestContext -&gt; Azure.Pageable&lt;BinaryData&gt;" Usage="deviceManagementClient.GetDeviceClassSubgroupsForGroups (groupId, filter, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Pageable&lt;System.BinaryData&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="filter" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="filter"> Restricts the set of device class subgroups returned. You can filter on compat properties by name and value. (i.e. filter=compatProperties/propertyName1 eq 'value1' and compatProperties/propertyName2 eq 'value2'). </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Get the device class subgroups for the group. A device class subgroup is the set of devices within the group that share the same device class. All devices within the same device class are compatible with the same updates. </summary> <returns> The <see cref="T:Azure.Pageable`1" /> from the service containing a list of <see cref="T:System.BinaryData" /> objects. Details of the body schema for each item in the collection are in the Remarks section below. </returns> <remarks> Below is the JSON schema for one item in the pageable response. Response Body: Schema for <c>DeviceClassSubgroupsListValue</c>: <code>{ deviceClassId: string, # Required. Device class subgroup identity. This is generated from the model Id and the compat properties reported by the device update agent in the Device Update PnP interface in IoT Hub. It is a hex-encoded SHA1 hash. groupId: string, # Required. Group identity. createdDateTime: string, # Required. Date and time when the device class subgroup was created. deviceCount: number, # Optional. The number of devices in the device class subgroup. deploymentId: string, # Optional. The active deployment Id for the device class subgroup. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDeviceClassSubgroupsForGroups with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); foreach (var data in client.GetDeviceClassSubgroupsForGroups("<groupId>")) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("createdDateTime").ToString()); } ]]></code> This sample shows how to call GetDeviceClassSubgroupsForGroups with all parameters, and how to parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); foreach (var data in client.GetDeviceClassSubgroupsForGroups("<groupId>", "<filter>")) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("createdDateTime").ToString()); Console.WriteLine(result.GetProperty("deviceCount").ToString()); Console.WriteLine(result.GetProperty("deploymentId").ToString()); } ]]></code></example> </Docs> </Member> <Member MemberName="GetDeviceClassSubgroupsForGroupsAsync"> <MemberSignature Language="C#" Value="public virtual Azure.AsyncPageable&lt;BinaryData&gt; GetDeviceClassSubgroupsForGroupsAsync (string groupId, string filter = default, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.AsyncPageable`1&lt;class System.BinaryData&gt; GetDeviceClassSubgroupsForGroupsAsync(string groupId, string filter, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDeviceClassSubgroupsForGroupsAsync(System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDeviceClassSubgroupsForGroupsAsync (groupId As String, Optional filter As String = Nothing, Optional context As RequestContext = Nothing) As AsyncPageable(Of BinaryData)" /> <MemberSignature Language="F#" Value="abstract member GetDeviceClassSubgroupsForGroupsAsync : string * string * Azure.RequestContext -&gt; Azure.AsyncPageable&lt;BinaryData&gt;&#xA;override this.GetDeviceClassSubgroupsForGroupsAsync : string * string * Azure.RequestContext -&gt; Azure.AsyncPageable&lt;BinaryData&gt;" Usage="deviceManagementClient.GetDeviceClassSubgroupsForGroupsAsync (groupId, filter, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.AsyncPageable&lt;System.BinaryData&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="filter" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="filter"> Restricts the set of device class subgroups returned. You can filter on compat properties by name and value. (i.e. filter=compatProperties/propertyName1 eq 'value1' and compatProperties/propertyName2 eq 'value2'). </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Get the device class subgroups for the group. A device class subgroup is the set of devices within the group that share the same device class. All devices within the same device class are compatible with the same updates. </summary> <returns> The <see cref="T:Azure.AsyncPageable`1" /> from the service containing a list of <see cref="T:System.BinaryData" /> objects. Details of the body schema for each item in the collection are in the Remarks section below. </returns> <remarks> Below is the JSON schema for one item in the pageable response. Response Body: Schema for <c>DeviceClassSubgroupsListValue</c>: <code>{ deviceClassId: string, # Required. Device class subgroup identity. This is generated from the model Id and the compat properties reported by the device update agent in the Device Update PnP interface in IoT Hub. It is a hex-encoded SHA1 hash. groupId: string, # Required. Group identity. createdDateTime: string, # Required. Date and time when the device class subgroup was created. deviceCount: number, # Optional. The number of devices in the device class subgroup. deploymentId: string, # Optional. The active deployment Id for the device class subgroup. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDeviceClassSubgroupsForGroupsAsync with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); await foreach (var data in client.GetDeviceClassSubgroupsForGroupsAsync("<groupId>")) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("createdDateTime").ToString()); } ]]></code> This sample shows how to call GetDeviceClassSubgroupsForGroupsAsync with all parameters, and how to parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); await foreach (var data in client.GetDeviceClassSubgroupsForGroupsAsync("<groupId>", "<filter>")) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("createdDateTime").ToString()); Console.WriteLine(result.GetProperty("deviceCount").ToString()); Console.WriteLine(result.GetProperty("deploymentId").ToString()); } ]]></code></example> </Docs> </Member> <Member MemberName="GetDeviceClassSubgroupUpdateCompliance"> <MemberSignature Language="C#" Value="public virtual Azure.Response GetDeviceClassSubgroupUpdateCompliance (string groupId, string deviceClassId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Response GetDeviceClassSubgroupUpdateCompliance(string groupId, string deviceClassId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDeviceClassSubgroupUpdateCompliance(System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDeviceClassSubgroupUpdateCompliance (groupId As String, deviceClassId As String, Optional context As RequestContext = Nothing) As Response" /> <MemberSignature Language="F#" Value="abstract member GetDeviceClassSubgroupUpdateCompliance : string * string * Azure.RequestContext -&gt; Azure.Response&#xA;override this.GetDeviceClassSubgroupUpdateCompliance : string * string * Azure.RequestContext -&gt; Azure.Response" Usage="deviceManagementClient.GetDeviceClassSubgroupUpdateCompliance (groupId, deviceClassId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Response</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deviceClassId"> Device class identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Get device class subgroup update compliance information such as how many devices are on their latest update, how many need new updates, and how many are in progress on receiving a new update. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>UpdateCompliance</c>: <code>{ totalDeviceCount: number, # Required. Total number of devices. onLatestUpdateDeviceCount: number, # Required. Number of devices on the latest update. newUpdatesAvailableDeviceCount: number, # Required. Number of devices with a newer update available. updatesInProgressDeviceCount: number, # Required. Number of devices with update in-progress. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" /> or <paramref name="deviceClassId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> or <paramref name="deviceClassId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDeviceClassSubgroupUpdateCompliance with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = client.GetDeviceClassSubgroupUpdateCompliance("<groupId>", "<deviceClassId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("totalDeviceCount").ToString()); Console.WriteLine(result.GetProperty("onLatestUpdateDeviceCount").ToString()); Console.WriteLine(result.GetProperty("newUpdatesAvailableDeviceCount").ToString()); Console.WriteLine(result.GetProperty("updatesInProgressDeviceCount").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetDeviceClassSubgroupUpdateComplianceAsync"> <MemberSignature Language="C#" Value="public virtual System.Threading.Tasks.Task&lt;Azure.Response&gt; GetDeviceClassSubgroupUpdateComplianceAsync (string groupId, string deviceClassId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1&lt;class Azure.Response&gt; GetDeviceClassSubgroupUpdateComplianceAsync(string groupId, string deviceClassId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDeviceClassSubgroupUpdateComplianceAsync(System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDeviceClassSubgroupUpdateComplianceAsync (groupId As String, deviceClassId As String, Optional context As RequestContext = Nothing) As Task(Of Response)" /> <MemberSignature Language="F#" Value="abstract member GetDeviceClassSubgroupUpdateComplianceAsync : string * string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;&#xA;override this.GetDeviceClassSubgroupUpdateComplianceAsync : string * string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;" Usage="deviceManagementClient.GetDeviceClassSubgroupUpdateComplianceAsync (groupId, deviceClassId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Threading.Tasks.Task&lt;Azure.Response&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deviceClassId"> Device class identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Get device class subgroup update compliance information such as how many devices are on their latest update, how many need new updates, and how many are in progress on receiving a new update. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>UpdateCompliance</c>: <code>{ totalDeviceCount: number, # Required. Total number of devices. onLatestUpdateDeviceCount: number, # Required. Number of devices on the latest update. newUpdatesAvailableDeviceCount: number, # Required. Number of devices with a newer update available. updatesInProgressDeviceCount: number, # Required. Number of devices with update in-progress. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" /> or <paramref name="deviceClassId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> or <paramref name="deviceClassId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDeviceClassSubgroupUpdateComplianceAsync with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = await client.GetDeviceClassSubgroupUpdateComplianceAsync("<groupId>", "<deviceClassId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("totalDeviceCount").ToString()); Console.WriteLine(result.GetProperty("onLatestUpdateDeviceCount").ToString()); Console.WriteLine(result.GetProperty("newUpdatesAvailableDeviceCount").ToString()); Console.WriteLine(result.GetProperty("updatesInProgressDeviceCount").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetDeviceModule"> <MemberSignature Language="C#" Value="public virtual Azure.Response GetDeviceModule (string deviceId, string moduleId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Response GetDeviceModule(string deviceId, string moduleId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDeviceModule(System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDeviceModule (deviceId As String, moduleId As String, Optional context As RequestContext = Nothing) As Response" /> <MemberSignature Language="F#" Value="abstract member GetDeviceModule : string * string * Azure.RequestContext -&gt; Azure.Response&#xA;override this.GetDeviceModule : string * string * Azure.RequestContext -&gt; Azure.Response" Usage="deviceManagementClient.GetDeviceModule (deviceId, moduleId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Response</ReturnType> </ReturnValue> <Parameters> <Parameter Name="deviceId" Type="System.String" /> <Parameter Name="moduleId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="deviceId"> Device identifier in Azure IoT Hub. </param> <param name="moduleId"> Device module identifier in Azure IoT Hub. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets the device module properties and latest deployment status for a device module connected to Device Update for IoT Hub. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>Device</c>: <code>{ deviceId: string, # Required. Device identity. moduleId: string, # Optional. Device module identity. deviceClassId: string, # Required. Device class identity. groupId: string, # Optional. Device group identity. lastAttemptedUpdate: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Optional. The update that device last attempted to install. deploymentStatus: "Succeeded" | "InProgress" | "Canceled" | "Failed", # Optional. State of the device in its last deployment. installedUpdate: UpdateInfo, # Optional. Currently installed update on device. onLatestUpdate: boolean, # Required. Boolean flag indicating whether the latest update (the best compatible update for the device's device class and group) is installed on the device lastDeploymentId: string, # Optional. The deployment identifier for the last deployment to the device lastInstallResult: { resultCode: number, # Required. Install result code. extendedResultCode: number, # Required. Install extended result code resultDetails: string, # Optional. A string containing further details about the install result stepResults: [ { update: UpdateInfo, # Optional. The update that this step installs if it is of reference type. description: string, # Optional. Step description. resultCode: number, # Required. Install result code. extendedResultCode: number, # Required. Install extended result code resultDetails: string, # Optional. A string containing further details about the install result } ], # Optional. Array of step results }, # Optional. Last install result. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="deviceId" /> or <paramref name="moduleId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="deviceId" /> or <paramref name="moduleId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDeviceModule with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = client.GetDeviceModule("<deviceId>", "<moduleId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("deviceId").ToString()); Console.WriteLine(result.GetProperty("moduleId").ToString()); Console.WriteLine(result.GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("deploymentStatus").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("onLatestUpdate").ToString()); Console.WriteLine(result.GetProperty("lastDeploymentId").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("resultCode").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("extendedResultCode").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("resultDetails").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("resultCode").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("extendedResultCode").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("resultDetails").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetDeviceModuleAsync"> <MemberSignature Language="C#" Value="public virtual System.Threading.Tasks.Task&lt;Azure.Response&gt; GetDeviceModuleAsync (string deviceId, string moduleId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1&lt;class Azure.Response&gt; GetDeviceModuleAsync(string deviceId, string moduleId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDeviceModuleAsync(System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDeviceModuleAsync (deviceId As String, moduleId As String, Optional context As RequestContext = Nothing) As Task(Of Response)" /> <MemberSignature Language="F#" Value="abstract member GetDeviceModuleAsync : string * string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;&#xA;override this.GetDeviceModuleAsync : string * string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;" Usage="deviceManagementClient.GetDeviceModuleAsync (deviceId, moduleId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Threading.Tasks.Task&lt;Azure.Response&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="deviceId" Type="System.String" /> <Parameter Name="moduleId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="deviceId"> Device identifier in Azure IoT Hub. </param> <param name="moduleId"> Device module identifier in Azure IoT Hub. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets the device module properties and latest deployment status for a device module connected to Device Update for IoT Hub. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>Device</c>: <code>{ deviceId: string, # Required. Device identity. moduleId: string, # Optional. Device module identity. deviceClassId: string, # Required. Device class identity. groupId: string, # Optional. Device group identity. lastAttemptedUpdate: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Optional. The update that device last attempted to install. deploymentStatus: "Succeeded" | "InProgress" | "Canceled" | "Failed", # Optional. State of the device in its last deployment. installedUpdate: UpdateInfo, # Optional. Currently installed update on device. onLatestUpdate: boolean, # Required. Boolean flag indicating whether the latest update (the best compatible update for the device's device class and group) is installed on the device lastDeploymentId: string, # Optional. The deployment identifier for the last deployment to the device lastInstallResult: { resultCode: number, # Required. Install result code. extendedResultCode: number, # Required. Install extended result code resultDetails: string, # Optional. A string containing further details about the install result stepResults: [ { update: UpdateInfo, # Optional. The update that this step installs if it is of reference type. description: string, # Optional. Step description. resultCode: number, # Required. Install result code. extendedResultCode: number, # Required. Install extended result code resultDetails: string, # Optional. A string containing further details about the install result } ], # Optional. Array of step results }, # Optional. Last install result. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="deviceId" /> or <paramref name="moduleId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="deviceId" /> or <paramref name="moduleId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDeviceModuleAsync with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = await client.GetDeviceModuleAsync("<deviceId>", "<moduleId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("deviceId").ToString()); Console.WriteLine(result.GetProperty("moduleId").ToString()); Console.WriteLine(result.GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("deploymentStatus").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("onLatestUpdate").ToString()); Console.WriteLine(result.GetProperty("lastDeploymentId").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("resultCode").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("extendedResultCode").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("resultDetails").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("resultCode").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("extendedResultCode").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("resultDetails").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetDevices"> <MemberSignature Language="C#" Value="public virtual Azure.Pageable&lt;BinaryData&gt; GetDevices (string filter = default, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Pageable`1&lt;class System.BinaryData&gt; GetDevices(string filter, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDevices(System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDevices (Optional filter As String = Nothing, Optional context As RequestContext = Nothing) As Pageable(Of BinaryData)" /> <MemberSignature Language="F#" Value="abstract member GetDevices : string * Azure.RequestContext -&gt; Azure.Pageable&lt;BinaryData&gt;&#xA;override this.GetDevices : string * Azure.RequestContext -&gt; Azure.Pageable&lt;BinaryData&gt;" Usage="deviceManagementClient.GetDevices (filter, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Pageable&lt;System.BinaryData&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="filter" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="filter"> Restricts the set of devices returned. You can filter on GroupId, DeviceClassId, or GroupId and DeploymentStatus. Use DeploymentStatus eq null to query for devices with no deployment status (that have never been deployed to). </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets a list of devices connected to Device Update for IoT Hub. </summary> <returns> The <see cref="T:Azure.Pageable`1" /> from the service containing a list of <see cref="T:System.BinaryData" /> objects. Details of the body schema for each item in the collection are in the Remarks section below. </returns> <remarks> Below is the JSON schema for one item in the pageable response. Response Body: Schema for <c>DevicesListValue</c>: <code>{ deviceId: string, # Required. Device identity. moduleId: string, # Optional. Device module identity. deviceClassId: string, # Required. Device class identity. groupId: string, # Optional. Device group identity. lastAttemptedUpdate: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Optional. The update that device last attempted to install. deploymentStatus: "Succeeded" | "InProgress" | "Canceled" | "Failed", # Optional. State of the device in its last deployment. installedUpdate: UpdateInfo, # Optional. Currently installed update on device. onLatestUpdate: boolean, # Required. Boolean flag indicating whether the latest update (the best compatible update for the device's device class and group) is installed on the device lastDeploymentId: string, # Optional. The deployment identifier for the last deployment to the device lastInstallResult: { resultCode: number, # Required. Install result code. extendedResultCode: number, # Required. Install extended result code resultDetails: string, # Optional. A string containing further details about the install result stepResults: [ { update: UpdateInfo, # Optional. The update that this step installs if it is of reference type. description: string, # Optional. Step description. resultCode: number, # Required. Install result code. extendedResultCode: number, # Required. Install extended result code resultDetails: string, # Optional. A string containing further details about the install result } ], # Optional. Array of step results }, # Optional. Last install result. } </code></remarks> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDevices and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); foreach (var data in client.GetDevices()) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("deviceId").ToString()); Console.WriteLine(result.GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("onLatestUpdate").ToString()); } ]]></code> This sample shows how to call GetDevices with all parameters, and how to parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); foreach (var data in client.GetDevices("<filter>")) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("deviceId").ToString()); Console.WriteLine(result.GetProperty("moduleId").ToString()); Console.WriteLine(result.GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("deploymentStatus").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("onLatestUpdate").ToString()); Console.WriteLine(result.GetProperty("lastDeploymentId").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("resultCode").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("extendedResultCode").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("resultDetails").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("resultCode").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("extendedResultCode").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("resultDetails").ToString()); } ]]></code></example> </Docs> </Member> <Member MemberName="GetDevicesAsync"> <MemberSignature Language="C#" Value="public virtual Azure.AsyncPageable&lt;BinaryData&gt; GetDevicesAsync (string filter = default, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.AsyncPageable`1&lt;class System.BinaryData&gt; GetDevicesAsync(string filter, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDevicesAsync(System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDevicesAsync (Optional filter As String = Nothing, Optional context As RequestContext = Nothing) As AsyncPageable(Of BinaryData)" /> <MemberSignature Language="F#" Value="abstract member GetDevicesAsync : string * Azure.RequestContext -&gt; Azure.AsyncPageable&lt;BinaryData&gt;&#xA;override this.GetDevicesAsync : string * Azure.RequestContext -&gt; Azure.AsyncPageable&lt;BinaryData&gt;" Usage="deviceManagementClient.GetDevicesAsync (filter, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.AsyncPageable&lt;System.BinaryData&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="filter" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="filter"> Restricts the set of devices returned. You can filter on GroupId, DeviceClassId, or GroupId and DeploymentStatus. Use DeploymentStatus eq null to query for devices with no deployment status (that have never been deployed to). </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets a list of devices connected to Device Update for IoT Hub. </summary> <returns> The <see cref="T:Azure.AsyncPageable`1" /> from the service containing a list of <see cref="T:System.BinaryData" /> objects. Details of the body schema for each item in the collection are in the Remarks section below. </returns> <remarks> Below is the JSON schema for one item in the pageable response. Response Body: Schema for <c>DevicesListValue</c>: <code>{ deviceId: string, # Required. Device identity. moduleId: string, # Optional. Device module identity. deviceClassId: string, # Required. Device class identity. groupId: string, # Optional. Device group identity. lastAttemptedUpdate: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Optional. The update that device last attempted to install. deploymentStatus: "Succeeded" | "InProgress" | "Canceled" | "Failed", # Optional. State of the device in its last deployment. installedUpdate: UpdateInfo, # Optional. Currently installed update on device. onLatestUpdate: boolean, # Required. Boolean flag indicating whether the latest update (the best compatible update for the device's device class and group) is installed on the device lastDeploymentId: string, # Optional. The deployment identifier for the last deployment to the device lastInstallResult: { resultCode: number, # Required. Install result code. extendedResultCode: number, # Required. Install extended result code resultDetails: string, # Optional. A string containing further details about the install result stepResults: [ { update: UpdateInfo, # Optional. The update that this step installs if it is of reference type. description: string, # Optional. Step description. resultCode: number, # Required. Install result code. extendedResultCode: number, # Required. Install extended result code resultDetails: string, # Optional. A string containing further details about the install result } ], # Optional. Array of step results }, # Optional. Last install result. } </code></remarks> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDevicesAsync and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); await foreach (var data in client.GetDevicesAsync()) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("deviceId").ToString()); Console.WriteLine(result.GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("onLatestUpdate").ToString()); } ]]></code> This sample shows how to call GetDevicesAsync with all parameters, and how to parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); await foreach (var data in client.GetDevicesAsync("<filter>")) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("deviceId").ToString()); Console.WriteLine(result.GetProperty("moduleId").ToString()); Console.WriteLine(result.GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("lastAttemptedUpdate").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("deploymentStatus").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("installedUpdate").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("onLatestUpdate").ToString()); Console.WriteLine(result.GetProperty("lastDeploymentId").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("resultCode").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("extendedResultCode").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("resultDetails").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("resultCode").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("extendedResultCode").ToString()); Console.WriteLine(result.GetProperty("lastInstallResult").GetProperty("stepResults")[0].GetProperty("resultDetails").ToString()); } ]]></code></example> </Docs> </Member> <Member MemberName="GetDeviceStatesForDeviceClassSubgroupDeployments"> <MemberSignature Language="C#" Value="public virtual Azure.Pageable&lt;BinaryData&gt; GetDeviceStatesForDeviceClassSubgroupDeployments (string groupId, string deviceClassId, string deploymentId, string filter = default, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Pageable`1&lt;class System.BinaryData&gt; GetDeviceStatesForDeviceClassSubgroupDeployments(string groupId, string deviceClassId, string deploymentId, string filter, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDeviceStatesForDeviceClassSubgroupDeployments(System.String,System.String,System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDeviceStatesForDeviceClassSubgroupDeployments (groupId As String, deviceClassId As String, deploymentId As String, Optional filter As String = Nothing, Optional context As RequestContext = Nothing) As Pageable(Of BinaryData)" /> <MemberSignature Language="F#" Value="abstract member GetDeviceStatesForDeviceClassSubgroupDeployments : string * string * string * string * Azure.RequestContext -&gt; Azure.Pageable&lt;BinaryData&gt;&#xA;override this.GetDeviceStatesForDeviceClassSubgroupDeployments : string * string * string * string * Azure.RequestContext -&gt; Azure.Pageable&lt;BinaryData&gt;" Usage="deviceManagementClient.GetDeviceStatesForDeviceClassSubgroupDeployments (groupId, deviceClassId, deploymentId, filter, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Pageable&lt;System.BinaryData&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="deploymentId" Type="System.String" /> <Parameter Name="filter" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deviceClassId"> Device class identifier. </param> <param name="deploymentId"> Deployment identifier. </param> <param name="filter"> Restricts the set of deployment device states returned. You can filter on deviceId and moduleId and/or deviceState. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets a list of devices in a deployment along with their state. Useful for getting a list of failed devices. </summary> <returns> The <see cref="T:Azure.Pageable`1" /> from the service containing a list of <see cref="T:System.BinaryData" /> objects. Details of the body schema for each item in the collection are in the Remarks section below. </returns> <remarks> Below is the JSON schema for one item in the pageable response. Response Body: Schema for <c>DeploymentDeviceStatesListValue</c>: <code>{ deviceId: string, # Required. Device identity. moduleId: string, # Optional. Device module identity. retryCount: number, # Required. The number of times this deployment has been retried on this device. movedOnToNewDeployment: boolean, # Required. Boolean flag indicating whether this device is in a newer deployment and can no longer retry this deployment. deviceState: "Succeeded" | "InProgress" | "Canceled" | "Failed", # Required. Deployment device state. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" />, <paramref name="deviceClassId" /> or <paramref name="deploymentId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" />, <paramref name="deviceClassId" /> or <paramref name="deploymentId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDeviceStatesForDeviceClassSubgroupDeployments with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); foreach (var data in client.GetDeviceStatesForDeviceClassSubgroupDeployments("<groupId>", "<deviceClassId>", "<deploymentId>")) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("deviceId").ToString()); Console.WriteLine(result.GetProperty("retryCount").ToString()); Console.WriteLine(result.GetProperty("movedOnToNewDeployment").ToString()); Console.WriteLine(result.GetProperty("deviceState").ToString()); } ]]></code> This sample shows how to call GetDeviceStatesForDeviceClassSubgroupDeployments with all parameters, and how to parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); foreach (var data in client.GetDeviceStatesForDeviceClassSubgroupDeployments("<groupId>", "<deviceClassId>", "<deploymentId>", "<filter>")) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("deviceId").ToString()); Console.WriteLine(result.GetProperty("moduleId").ToString()); Console.WriteLine(result.GetProperty("retryCount").ToString()); Console.WriteLine(result.GetProperty("movedOnToNewDeployment").ToString()); Console.WriteLine(result.GetProperty("deviceState").ToString()); } ]]></code></example> </Docs> </Member> <Member MemberName="GetDeviceStatesForDeviceClassSubgroupDeploymentsAsync"> <MemberSignature Language="C#" Value="public virtual Azure.AsyncPageable&lt;BinaryData&gt; GetDeviceStatesForDeviceClassSubgroupDeploymentsAsync (string groupId, string deviceClassId, string deploymentId, string filter = default, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.AsyncPageable`1&lt;class System.BinaryData&gt; GetDeviceStatesForDeviceClassSubgroupDeploymentsAsync(string groupId, string deviceClassId, string deploymentId, string filter, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetDeviceStatesForDeviceClassSubgroupDeploymentsAsync(System.String,System.String,System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetDeviceStatesForDeviceClassSubgroupDeploymentsAsync (groupId As String, deviceClassId As String, deploymentId As String, Optional filter As String = Nothing, Optional context As RequestContext = Nothing) As AsyncPageable(Of BinaryData)" /> <MemberSignature Language="F#" Value="abstract member GetDeviceStatesForDeviceClassSubgroupDeploymentsAsync : string * string * string * string * Azure.RequestContext -&gt; Azure.AsyncPageable&lt;BinaryData&gt;&#xA;override this.GetDeviceStatesForDeviceClassSubgroupDeploymentsAsync : string * string * string * string * Azure.RequestContext -&gt; Azure.AsyncPageable&lt;BinaryData&gt;" Usage="deviceManagementClient.GetDeviceStatesForDeviceClassSubgroupDeploymentsAsync (groupId, deviceClassId, deploymentId, filter, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.AsyncPageable&lt;System.BinaryData&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="deploymentId" Type="System.String" /> <Parameter Name="filter" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deviceClassId"> Device class identifier. </param> <param name="deploymentId"> Deployment identifier. </param> <param name="filter"> Restricts the set of deployment device states returned. You can filter on deviceId and moduleId and/or deviceState. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets a list of devices in a deployment along with their state. Useful for getting a list of failed devices. </summary> <returns> The <see cref="T:Azure.AsyncPageable`1" /> from the service containing a list of <see cref="T:System.BinaryData" /> objects. Details of the body schema for each item in the collection are in the Remarks section below. </returns> <remarks> Below is the JSON schema for one item in the pageable response. Response Body: Schema for <c>DeploymentDeviceStatesListValue</c>: <code>{ deviceId: string, # Required. Device identity. moduleId: string, # Optional. Device module identity. retryCount: number, # Required. The number of times this deployment has been retried on this device. movedOnToNewDeployment: boolean, # Required. Boolean flag indicating whether this device is in a newer deployment and can no longer retry this deployment. deviceState: "Succeeded" | "InProgress" | "Canceled" | "Failed", # Required. Deployment device state. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" />, <paramref name="deviceClassId" /> or <paramref name="deploymentId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" />, <paramref name="deviceClassId" /> or <paramref name="deploymentId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetDeviceStatesForDeviceClassSubgroupDeploymentsAsync with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); await foreach (var data in client.GetDeviceStatesForDeviceClassSubgroupDeploymentsAsync("<groupId>", "<deviceClassId>", "<deploymentId>")) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("deviceId").ToString()); Console.WriteLine(result.GetProperty("retryCount").ToString()); Console.WriteLine(result.GetProperty("movedOnToNewDeployment").ToString()); Console.WriteLine(result.GetProperty("deviceState").ToString()); } ]]></code> This sample shows how to call GetDeviceStatesForDeviceClassSubgroupDeploymentsAsync with all parameters, and how to parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); await foreach (var data in client.GetDeviceStatesForDeviceClassSubgroupDeploymentsAsync("<groupId>", "<deviceClassId>", "<deploymentId>", "<filter>")) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("deviceId").ToString()); Console.WriteLine(result.GetProperty("moduleId").ToString()); Console.WriteLine(result.GetProperty("retryCount").ToString()); Console.WriteLine(result.GetProperty("movedOnToNewDeployment").ToString()); Console.WriteLine(result.GetProperty("deviceState").ToString()); } ]]></code></example> </Docs> </Member> <Member MemberName="GetGroup"> <MemberSignature Language="C#" Value="public virtual Azure.Response GetGroup (string groupId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Response GetGroup(string groupId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetGroup(System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetGroup (groupId As String, Optional context As RequestContext = Nothing) As Response" /> <MemberSignature Language="F#" Value="abstract member GetGroup : string * Azure.RequestContext -&gt; Azure.Response&#xA;override this.GetGroup : string * Azure.RequestContext -&gt; Azure.Response" Usage="deviceManagementClient.GetGroup (groupId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Response</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets the device group properties. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>Group</c>: <code>{ groupId: string, # Required. Group identity. This is created from the value of the ADUGroup tag in the Iot Hub's device/module twin or $default for devices with no tag. groupType: "IoTHubTag" | "DefaultNoTag", # Required. Group type. createdDateTime: string, # Required. Date and time when the update was created. deviceCount: number, # Optional. The number of devices in the group. subgroupsWithNewUpdatesAvailableCount: number, # Optional. The count of subgroups with new updates available. subgroupsWithUpdatesInProgressCount: number, # Optional. The count of subgroups with updates in progress. subgroupsWithOnLatestUpdateCount: number, # Optional. The count of subgroups with devices on the latest update. deployments: [string], # Optional. The active deployment Ids for the group } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetGroup with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = client.GetGroup("<groupId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("groupType").ToString()); Console.WriteLine(result.GetProperty("createdDateTime").ToString()); Console.WriteLine(result.GetProperty("deviceCount").ToString()); Console.WriteLine(result.GetProperty("subgroupsWithNewUpdatesAvailableCount").ToString()); Console.WriteLine(result.GetProperty("subgroupsWithUpdatesInProgressCount").ToString()); Console.WriteLine(result.GetProperty("subgroupsWithOnLatestUpdateCount").ToString()); Console.WriteLine(result.GetProperty("deployments")[0].ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetGroupAsync"> <MemberSignature Language="C#" Value="public virtual System.Threading.Tasks.Task&lt;Azure.Response&gt; GetGroupAsync (string groupId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1&lt;class Azure.Response&gt; GetGroupAsync(string groupId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetGroupAsync(System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetGroupAsync (groupId As String, Optional context As RequestContext = Nothing) As Task(Of Response)" /> <MemberSignature Language="F#" Value="abstract member GetGroupAsync : string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;&#xA;override this.GetGroupAsync : string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;" Usage="deviceManagementClient.GetGroupAsync (groupId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Threading.Tasks.Task&lt;Azure.Response&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets the device group properties. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>Group</c>: <code>{ groupId: string, # Required. Group identity. This is created from the value of the ADUGroup tag in the Iot Hub's device/module twin or $default for devices with no tag. groupType: "IoTHubTag" | "DefaultNoTag", # Required. Group type. createdDateTime: string, # Required. Date and time when the update was created. deviceCount: number, # Optional. The number of devices in the group. subgroupsWithNewUpdatesAvailableCount: number, # Optional. The count of subgroups with new updates available. subgroupsWithUpdatesInProgressCount: number, # Optional. The count of subgroups with updates in progress. subgroupsWithOnLatestUpdateCount: number, # Optional. The count of subgroups with devices on the latest update. deployments: [string], # Optional. The active deployment Ids for the group } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetGroupAsync with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = await client.GetGroupAsync("<groupId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("groupType").ToString()); Console.WriteLine(result.GetProperty("createdDateTime").ToString()); Console.WriteLine(result.GetProperty("deviceCount").ToString()); Console.WriteLine(result.GetProperty("subgroupsWithNewUpdatesAvailableCount").ToString()); Console.WriteLine(result.GetProperty("subgroupsWithUpdatesInProgressCount").ToString()); Console.WriteLine(result.GetProperty("subgroupsWithOnLatestUpdateCount").ToString()); Console.WriteLine(result.GetProperty("deployments")[0].ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetGroups"> <MemberSignature Language="C#" Value="public virtual Azure.Pageable&lt;BinaryData&gt; GetGroups (string orderBy = default, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Pageable`1&lt;class System.BinaryData&gt; GetGroups(string orderBy, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetGroups(System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetGroups (Optional orderBy As String = Nothing, Optional context As RequestContext = Nothing) As Pageable(Of BinaryData)" /> <MemberSignature Language="F#" Value="abstract member GetGroups : string * Azure.RequestContext -&gt; Azure.Pageable&lt;BinaryData&gt;&#xA;override this.GetGroups : string * Azure.RequestContext -&gt; Azure.Pageable&lt;BinaryData&gt;" Usage="deviceManagementClient.GetGroups (orderBy, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Pageable&lt;System.BinaryData&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="orderBy" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="orderBy"> Orders the set of groups returned. You can order by groupId, deviceCount, createdDate, subgroupsWithNewUpdatesAvailableCount, subgroupsWithUpdatesInProgressCount, or subgroupsOnLatestUpdateCount. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets a list of all device groups. The $default group will always be returned first. </summary> <returns> The <see cref="T:Azure.Pageable`1" /> from the service containing a list of <see cref="T:System.BinaryData" /> objects. Details of the body schema for each item in the collection are in the Remarks section below. </returns> <remarks> Below is the JSON schema for one item in the pageable response. Response Body: Schema for <c>GroupsListValue</c>: <code>{ groupId: string, # Required. Group identity. This is created from the value of the ADUGroup tag in the Iot Hub's device/module twin or $default for devices with no tag. groupType: "IoTHubTag" | "DefaultNoTag", # Required. Group type. createdDateTime: string, # Required. Date and time when the update was created. deviceCount: number, # Optional. The number of devices in the group. subgroupsWithNewUpdatesAvailableCount: number, # Optional. The count of subgroups with new updates available. subgroupsWithUpdatesInProgressCount: number, # Optional. The count of subgroups with updates in progress. subgroupsWithOnLatestUpdateCount: number, # Optional. The count of subgroups with devices on the latest update. deployments: [string], # Optional. The active deployment Ids for the group } </code></remarks> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetGroups and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); foreach (var data in client.GetGroups()) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("groupType").ToString()); Console.WriteLine(result.GetProperty("createdDateTime").ToString()); } ]]></code> This sample shows how to call GetGroups with all parameters, and how to parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); foreach (var data in client.GetGroups("<orderBy>")) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("groupType").ToString()); Console.WriteLine(result.GetProperty("createdDateTime").ToString()); Console.WriteLine(result.GetProperty("deviceCount").ToString()); Console.WriteLine(result.GetProperty("subgroupsWithNewUpdatesAvailableCount").ToString()); Console.WriteLine(result.GetProperty("subgroupsWithUpdatesInProgressCount").ToString()); Console.WriteLine(result.GetProperty("subgroupsWithOnLatestUpdateCount").ToString()); Console.WriteLine(result.GetProperty("deployments")[0].ToString()); } ]]></code></example> </Docs> </Member> <Member MemberName="GetGroupsAsync"> <MemberSignature Language="C#" Value="public virtual Azure.AsyncPageable&lt;BinaryData&gt; GetGroupsAsync (string orderBy = default, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.AsyncPageable`1&lt;class System.BinaryData&gt; GetGroupsAsync(string orderBy, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetGroupsAsync(System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetGroupsAsync (Optional orderBy As String = Nothing, Optional context As RequestContext = Nothing) As AsyncPageable(Of BinaryData)" /> <MemberSignature Language="F#" Value="abstract member GetGroupsAsync : string * Azure.RequestContext -&gt; Azure.AsyncPageable&lt;BinaryData&gt;&#xA;override this.GetGroupsAsync : string * Azure.RequestContext -&gt; Azure.AsyncPageable&lt;BinaryData&gt;" Usage="deviceManagementClient.GetGroupsAsync (orderBy, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.AsyncPageable&lt;System.BinaryData&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="orderBy" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="orderBy"> Orders the set of groups returned. You can order by groupId, deviceCount, createdDate, subgroupsWithNewUpdatesAvailableCount, subgroupsWithUpdatesInProgressCount, or subgroupsOnLatestUpdateCount. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets a list of all device groups. The $default group will always be returned first. </summary> <returns> The <see cref="T:Azure.AsyncPageable`1" /> from the service containing a list of <see cref="T:System.BinaryData" /> objects. Details of the body schema for each item in the collection are in the Remarks section below. </returns> <remarks> Below is the JSON schema for one item in the pageable response. Response Body: Schema for <c>GroupsListValue</c>: <code>{ groupId: string, # Required. Group identity. This is created from the value of the ADUGroup tag in the Iot Hub's device/module twin or $default for devices with no tag. groupType: "IoTHubTag" | "DefaultNoTag", # Required. Group type. createdDateTime: string, # Required. Date and time when the update was created. deviceCount: number, # Optional. The number of devices in the group. subgroupsWithNewUpdatesAvailableCount: number, # Optional. The count of subgroups with new updates available. subgroupsWithUpdatesInProgressCount: number, # Optional. The count of subgroups with updates in progress. subgroupsWithOnLatestUpdateCount: number, # Optional. The count of subgroups with devices on the latest update. deployments: [string], # Optional. The active deployment Ids for the group } </code></remarks> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetGroupsAsync and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); await foreach (var data in client.GetGroupsAsync()) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("groupType").ToString()); Console.WriteLine(result.GetProperty("createdDateTime").ToString()); } ]]></code> This sample shows how to call GetGroupsAsync with all parameters, and how to parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); await foreach (var data in client.GetGroupsAsync("<orderBy>")) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("groupType").ToString()); Console.WriteLine(result.GetProperty("createdDateTime").ToString()); Console.WriteLine(result.GetProperty("deviceCount").ToString()); Console.WriteLine(result.GetProperty("subgroupsWithNewUpdatesAvailableCount").ToString()); Console.WriteLine(result.GetProperty("subgroupsWithUpdatesInProgressCount").ToString()); Console.WriteLine(result.GetProperty("subgroupsWithOnLatestUpdateCount").ToString()); Console.WriteLine(result.GetProperty("deployments")[0].ToString()); } ]]></code></example> </Docs> </Member> <Member MemberName="GetHealthOfDevices"> <MemberSignature Language="C#" Value="public virtual Azure.Pageable&lt;BinaryData&gt; GetHealthOfDevices (string filter, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Pageable`1&lt;class System.BinaryData&gt; GetHealthOfDevices(string filter, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetHealthOfDevices(System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetHealthOfDevices (filter As String, Optional context As RequestContext = Nothing) As Pageable(Of BinaryData)" /> <MemberSignature Language="F#" Value="abstract member GetHealthOfDevices : string * Azure.RequestContext -&gt; Azure.Pageable&lt;BinaryData&gt;&#xA;override this.GetHealthOfDevices : string * Azure.RequestContext -&gt; Azure.Pageable&lt;BinaryData&gt;" Usage="deviceManagementClient.GetHealthOfDevices (filter, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Pageable&lt;System.BinaryData&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="filter" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="filter"> Restricts the set of devices for which device health is returned. You can filter on status, device id and module id. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Get list of device health. </summary> <returns> The <see cref="T:Azure.Pageable`1" /> from the service containing a list of <see cref="T:System.BinaryData" /> objects. Details of the body schema for each item in the collection are in the Remarks section below. </returns> <remarks> Below is the JSON schema for one item in the pageable response. Response Body: Schema for <c>DeviceHealthListValue</c>: <code>{ deviceId: string, # Required. Device id moduleId: string, # Optional. Module id state: "healthy" | "unhealthy", # Required. Aggregate device health state digitalTwinModelId: string, # Optional. Digital twin model Id healthChecks: [ { name: string, # Optional. Health check name result: "success" | "userError", # Optional. Health check result } ], # Required. Array of health checks and their results } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="filter" /> is null. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetHealthOfDevices with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); foreach (var data in client.GetHealthOfDevices("<filter>")) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("deviceId").ToString()); Console.WriteLine(result.GetProperty("moduleId").ToString()); Console.WriteLine(result.GetProperty("state").ToString()); Console.WriteLine(result.GetProperty("digitalTwinModelId").ToString()); Console.WriteLine(result.GetProperty("healthChecks")[0].GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("healthChecks")[0].GetProperty("result").ToString()); } ]]></code></example> </Docs> </Member> <Member MemberName="GetHealthOfDevicesAsync"> <MemberSignature Language="C#" Value="public virtual Azure.AsyncPageable&lt;BinaryData&gt; GetHealthOfDevicesAsync (string filter, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.AsyncPageable`1&lt;class System.BinaryData&gt; GetHealthOfDevicesAsync(string filter, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetHealthOfDevicesAsync(System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetHealthOfDevicesAsync (filter As String, Optional context As RequestContext = Nothing) As AsyncPageable(Of BinaryData)" /> <MemberSignature Language="F#" Value="abstract member GetHealthOfDevicesAsync : string * Azure.RequestContext -&gt; Azure.AsyncPageable&lt;BinaryData&gt;&#xA;override this.GetHealthOfDevicesAsync : string * Azure.RequestContext -&gt; Azure.AsyncPageable&lt;BinaryData&gt;" Usage="deviceManagementClient.GetHealthOfDevicesAsync (filter, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.AsyncPageable&lt;System.BinaryData&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="filter" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="filter"> Restricts the set of devices for which device health is returned. You can filter on status, device id and module id. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Get list of device health. </summary> <returns> The <see cref="T:Azure.AsyncPageable`1" /> from the service containing a list of <see cref="T:System.BinaryData" /> objects. Details of the body schema for each item in the collection are in the Remarks section below. </returns> <remarks> Below is the JSON schema for one item in the pageable response. Response Body: Schema for <c>DeviceHealthListValue</c>: <code>{ deviceId: string, # Required. Device id moduleId: string, # Optional. Module id state: "healthy" | "unhealthy", # Required. Aggregate device health state digitalTwinModelId: string, # Optional. Digital twin model Id healthChecks: [ { name: string, # Optional. Health check name result: "success" | "userError", # Optional. Health check result } ], # Required. Array of health checks and their results } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="filter" /> is null. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetHealthOfDevicesAsync with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); await foreach (var data in client.GetHealthOfDevicesAsync("<filter>")) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("deviceId").ToString()); Console.WriteLine(result.GetProperty("moduleId").ToString()); Console.WriteLine(result.GetProperty("state").ToString()); Console.WriteLine(result.GetProperty("digitalTwinModelId").ToString()); Console.WriteLine(result.GetProperty("healthChecks")[0].GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("healthChecks")[0].GetProperty("result").ToString()); } ]]></code></example> </Docs> </Member> <Member MemberName="GetInstallableUpdatesForDeviceClasses"> <MemberSignature Language="C#" Value="public virtual Azure.Pageable&lt;BinaryData&gt; GetInstallableUpdatesForDeviceClasses (string deviceClassId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Pageable`1&lt;class System.BinaryData&gt; GetInstallableUpdatesForDeviceClasses(string deviceClassId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetInstallableUpdatesForDeviceClasses(System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetInstallableUpdatesForDeviceClasses (deviceClassId As String, Optional context As RequestContext = Nothing) As Pageable(Of BinaryData)" /> <MemberSignature Language="F#" Value="abstract member GetInstallableUpdatesForDeviceClasses : string * Azure.RequestContext -&gt; Azure.Pageable&lt;BinaryData&gt;&#xA;override this.GetInstallableUpdatesForDeviceClasses : string * Azure.RequestContext -&gt; Azure.Pageable&lt;BinaryData&gt;" Usage="deviceManagementClient.GetInstallableUpdatesForDeviceClasses (deviceClassId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Pageable&lt;System.BinaryData&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="deviceClassId"> Device class identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets a list of installable updates for a device class. </summary> <returns> The <see cref="T:Azure.Pageable`1" /> from the service containing a list of <see cref="T:System.BinaryData" /> objects. Details of the body schema for each item in the collection are in the Remarks section below. </returns> <remarks> Below is the JSON schema for one item in the pageable response. Response Body: Schema for <c>UpdateInfoListValue</c>: <code>{ updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="deviceClassId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="deviceClassId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetInstallableUpdatesForDeviceClasses with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); foreach (var data in client.GetInstallableUpdatesForDeviceClasses("<deviceClassId>")) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("friendlyName").ToString()); } ]]></code></example> </Docs> </Member> <Member MemberName="GetInstallableUpdatesForDeviceClassesAsync"> <MemberSignature Language="C#" Value="public virtual Azure.AsyncPageable&lt;BinaryData&gt; GetInstallableUpdatesForDeviceClassesAsync (string deviceClassId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.AsyncPageable`1&lt;class System.BinaryData&gt; GetInstallableUpdatesForDeviceClassesAsync(string deviceClassId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetInstallableUpdatesForDeviceClassesAsync(System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetInstallableUpdatesForDeviceClassesAsync (deviceClassId As String, Optional context As RequestContext = Nothing) As AsyncPageable(Of BinaryData)" /> <MemberSignature Language="F#" Value="abstract member GetInstallableUpdatesForDeviceClassesAsync : string * Azure.RequestContext -&gt; Azure.AsyncPageable&lt;BinaryData&gt;&#xA;override this.GetInstallableUpdatesForDeviceClassesAsync : string * Azure.RequestContext -&gt; Azure.AsyncPageable&lt;BinaryData&gt;" Usage="deviceManagementClient.GetInstallableUpdatesForDeviceClassesAsync (deviceClassId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.AsyncPageable&lt;System.BinaryData&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="deviceClassId"> Device class identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets a list of installable updates for a device class. </summary> <returns> The <see cref="T:Azure.AsyncPageable`1" /> from the service containing a list of <see cref="T:System.BinaryData" /> objects. Details of the body schema for each item in the collection are in the Remarks section below. </returns> <remarks> Below is the JSON schema for one item in the pageable response. Response Body: Schema for <c>UpdateInfoListValue</c>: <code>{ updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="deviceClassId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="deviceClassId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetInstallableUpdatesForDeviceClassesAsync with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); await foreach (var data in client.GetInstallableUpdatesForDeviceClassesAsync("<deviceClassId>")) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("friendlyName").ToString()); } ]]></code></example> </Docs> </Member> <Member MemberName="GetLogCollection"> <MemberSignature Language="C#" Value="public virtual Azure.Response GetLogCollection (string logCollectionId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Response GetLogCollection(string logCollectionId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetLogCollection(System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetLogCollection (logCollectionId As String, Optional context As RequestContext = Nothing) As Response" /> <MemberSignature Language="F#" Value="abstract member GetLogCollection : string * Azure.RequestContext -&gt; Azure.Response&#xA;override this.GetLogCollection : string * Azure.RequestContext -&gt; Azure.Response" Usage="deviceManagementClient.GetLogCollection (logCollectionId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Response</ReturnType> </ReturnValue> <Parameters> <Parameter Name="logCollectionId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="logCollectionId"> Log collection identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Get the device diagnostics log collection. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>LogCollection</c>: <code>{ operationId: string, # Optional. The log collection id. deviceList: [ { deviceId: string, # Required. Device Id moduleId: string, # Optional. Module Id } ], # Required. Array of Device Update agent ids description: string, # Optional. Description of the diagnostics operation. createdDateTime: string, # Optional. The timestamp when the operation was created. lastActionDateTime: string, # Optional. A timestamp for when the current state was entered. status: "NotStarted" | "Running" | "Succeeded" | "Failed", # Optional. Operation status. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="logCollectionId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="logCollectionId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetLogCollection with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = client.GetLogCollection("<logCollectionId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("operationId").ToString()); Console.WriteLine(result.GetProperty("deviceList")[0].GetProperty("deviceId").ToString()); Console.WriteLine(result.GetProperty("deviceList")[0].GetProperty("moduleId").ToString()); Console.WriteLine(result.GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("createdDateTime").ToString()); Console.WriteLine(result.GetProperty("lastActionDateTime").ToString()); Console.WriteLine(result.GetProperty("status").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetLogCollectionAsync"> <MemberSignature Language="C#" Value="public virtual System.Threading.Tasks.Task&lt;Azure.Response&gt; GetLogCollectionAsync (string logCollectionId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1&lt;class Azure.Response&gt; GetLogCollectionAsync(string logCollectionId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetLogCollectionAsync(System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetLogCollectionAsync (logCollectionId As String, Optional context As RequestContext = Nothing) As Task(Of Response)" /> <MemberSignature Language="F#" Value="abstract member GetLogCollectionAsync : string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;&#xA;override this.GetLogCollectionAsync : string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;" Usage="deviceManagementClient.GetLogCollectionAsync (logCollectionId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Threading.Tasks.Task&lt;Azure.Response&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="logCollectionId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="logCollectionId"> Log collection identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Get the device diagnostics log collection. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>LogCollection</c>: <code>{ operationId: string, # Optional. The log collection id. deviceList: [ { deviceId: string, # Required. Device Id moduleId: string, # Optional. Module Id } ], # Required. Array of Device Update agent ids description: string, # Optional. Description of the diagnostics operation. createdDateTime: string, # Optional. The timestamp when the operation was created. lastActionDateTime: string, # Optional. A timestamp for when the current state was entered. status: "NotStarted" | "Running" | "Succeeded" | "Failed", # Optional. Operation status. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="logCollectionId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="logCollectionId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetLogCollectionAsync with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = await client.GetLogCollectionAsync("<logCollectionId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("operationId").ToString()); Console.WriteLine(result.GetProperty("deviceList")[0].GetProperty("deviceId").ToString()); Console.WriteLine(result.GetProperty("deviceList")[0].GetProperty("moduleId").ToString()); Console.WriteLine(result.GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("createdDateTime").ToString()); Console.WriteLine(result.GetProperty("lastActionDateTime").ToString()); Console.WriteLine(result.GetProperty("status").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetLogCollectionDetailedStatus"> <MemberSignature Language="C#" Value="public virtual Azure.Response GetLogCollectionDetailedStatus (string logCollectionId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Response GetLogCollectionDetailedStatus(string logCollectionId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetLogCollectionDetailedStatus(System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetLogCollectionDetailedStatus (logCollectionId As String, Optional context As RequestContext = Nothing) As Response" /> <MemberSignature Language="F#" Value="abstract member GetLogCollectionDetailedStatus : string * Azure.RequestContext -&gt; Azure.Response&#xA;override this.GetLogCollectionDetailedStatus : string * Azure.RequestContext -&gt; Azure.Response" Usage="deviceManagementClient.GetLogCollectionDetailedStatus (logCollectionId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Response</ReturnType> </ReturnValue> <Parameters> <Parameter Name="logCollectionId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="logCollectionId"> Log collection identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Get log collection with detailed status. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>LogCollectionOperationDetailedStatus</c>: <code>{ operationId: string, # Optional. The device diagnostics operation id. createdDateTime: string, # Optional. The timestamp when the operation was created. lastActionDateTime: string, # Optional. A timestamp for when the current state was entered. status: "NotStarted" | "Running" | "Succeeded" | "Failed", # Optional. Operation status. deviceStatus: [ { deviceId: string, # Required. Device id moduleId: string, # Optional. Module id. status: "NotStarted" | "Running" | "Succeeded" | "Failed", # Required. Log upload status resultCode: string, # Optional. Log upload result code extendedResultCode: string, # Optional. Log upload extended result code logLocation: string, # Optional. Log upload location } ], # Optional. Status of the devices in the operation description: string, # Optional. Device diagnostics operation description. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="logCollectionId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="logCollectionId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetLogCollectionDetailedStatus with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = client.GetLogCollectionDetailedStatus("<logCollectionId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("operationId").ToString()); Console.WriteLine(result.GetProperty("createdDateTime").ToString()); Console.WriteLine(result.GetProperty("lastActionDateTime").ToString()); Console.WriteLine(result.GetProperty("status").ToString()); Console.WriteLine(result.GetProperty("deviceStatus")[0].GetProperty("deviceId").ToString()); Console.WriteLine(result.GetProperty("deviceStatus")[0].GetProperty("moduleId").ToString()); Console.WriteLine(result.GetProperty("deviceStatus")[0].GetProperty("status").ToString()); Console.WriteLine(result.GetProperty("deviceStatus")[0].GetProperty("resultCode").ToString()); Console.WriteLine(result.GetProperty("deviceStatus")[0].GetProperty("extendedResultCode").ToString()); Console.WriteLine(result.GetProperty("deviceStatus")[0].GetProperty("logLocation").ToString()); Console.WriteLine(result.GetProperty("description").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetLogCollectionDetailedStatusAsync"> <MemberSignature Language="C#" Value="public virtual System.Threading.Tasks.Task&lt;Azure.Response&gt; GetLogCollectionDetailedStatusAsync (string logCollectionId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1&lt;class Azure.Response&gt; GetLogCollectionDetailedStatusAsync(string logCollectionId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetLogCollectionDetailedStatusAsync(System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetLogCollectionDetailedStatusAsync (logCollectionId As String, Optional context As RequestContext = Nothing) As Task(Of Response)" /> <MemberSignature Language="F#" Value="abstract member GetLogCollectionDetailedStatusAsync : string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;&#xA;override this.GetLogCollectionDetailedStatusAsync : string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;" Usage="deviceManagementClient.GetLogCollectionDetailedStatusAsync (logCollectionId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Threading.Tasks.Task&lt;Azure.Response&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="logCollectionId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="logCollectionId"> Log collection identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Get log collection with detailed status. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>LogCollectionOperationDetailedStatus</c>: <code>{ operationId: string, # Optional. The device diagnostics operation id. createdDateTime: string, # Optional. The timestamp when the operation was created. lastActionDateTime: string, # Optional. A timestamp for when the current state was entered. status: "NotStarted" | "Running" | "Succeeded" | "Failed", # Optional. Operation status. deviceStatus: [ { deviceId: string, # Required. Device id moduleId: string, # Optional. Module id. status: "NotStarted" | "Running" | "Succeeded" | "Failed", # Required. Log upload status resultCode: string, # Optional. Log upload result code extendedResultCode: string, # Optional. Log upload extended result code logLocation: string, # Optional. Log upload location } ], # Optional. Status of the devices in the operation description: string, # Optional. Device diagnostics operation description. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="logCollectionId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="logCollectionId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetLogCollectionDetailedStatusAsync with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = await client.GetLogCollectionDetailedStatusAsync("<logCollectionId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("operationId").ToString()); Console.WriteLine(result.GetProperty("createdDateTime").ToString()); Console.WriteLine(result.GetProperty("lastActionDateTime").ToString()); Console.WriteLine(result.GetProperty("status").ToString()); Console.WriteLine(result.GetProperty("deviceStatus")[0].GetProperty("deviceId").ToString()); Console.WriteLine(result.GetProperty("deviceStatus")[0].GetProperty("moduleId").ToString()); Console.WriteLine(result.GetProperty("deviceStatus")[0].GetProperty("status").ToString()); Console.WriteLine(result.GetProperty("deviceStatus")[0].GetProperty("resultCode").ToString()); Console.WriteLine(result.GetProperty("deviceStatus")[0].GetProperty("extendedResultCode").ToString()); Console.WriteLine(result.GetProperty("deviceStatus")[0].GetProperty("logLocation").ToString()); Console.WriteLine(result.GetProperty("description").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetLogCollections"> <MemberSignature Language="C#" Value="public virtual Azure.Pageable&lt;BinaryData&gt; GetLogCollections (Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Pageable`1&lt;class System.BinaryData&gt; GetLogCollections(class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetLogCollections(Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetLogCollections (Optional context As RequestContext = Nothing) As Pageable(Of BinaryData)" /> <MemberSignature Language="F#" Value="abstract member GetLogCollections : Azure.RequestContext -&gt; Azure.Pageable&lt;BinaryData&gt;&#xA;override this.GetLogCollections : Azure.RequestContext -&gt; Azure.Pageable&lt;BinaryData&gt;" Usage="deviceManagementClient.GetLogCollections context" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Pageable&lt;System.BinaryData&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Get all device diagnostics log collections. </summary> <returns> The <see cref="T:Azure.Pageable`1" /> from the service containing a list of <see cref="T:System.BinaryData" /> objects. Details of the body schema for each item in the collection are in the Remarks section below. </returns> <remarks> Below is the JSON schema for one item in the pageable response. Response Body: Schema for <c>LogCollectionListValue</c>: <code>{ operationId: string, # Optional. The log collection id. deviceList: [ { deviceId: string, # Required. Device Id moduleId: string, # Optional. Module Id } ], # Required. Array of Device Update agent ids description: string, # Optional. Description of the diagnostics operation. createdDateTime: string, # Optional. The timestamp when the operation was created. lastActionDateTime: string, # Optional. A timestamp for when the current state was entered. status: "NotStarted" | "Running" | "Succeeded" | "Failed", # Optional. Operation status. } </code></remarks> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetLogCollections and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); foreach (var data in client.GetLogCollections()) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("operationId").ToString()); Console.WriteLine(result.GetProperty("deviceList")[0].GetProperty("deviceId").ToString()); Console.WriteLine(result.GetProperty("deviceList")[0].GetProperty("moduleId").ToString()); Console.WriteLine(result.GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("createdDateTime").ToString()); Console.WriteLine(result.GetProperty("lastActionDateTime").ToString()); Console.WriteLine(result.GetProperty("status").ToString()); } ]]></code></example> </Docs> </Member> <Member MemberName="GetLogCollectionsAsync"> <MemberSignature Language="C#" Value="public virtual Azure.AsyncPageable&lt;BinaryData&gt; GetLogCollectionsAsync (Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.AsyncPageable`1&lt;class System.BinaryData&gt; GetLogCollectionsAsync(class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetLogCollectionsAsync(Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetLogCollectionsAsync (Optional context As RequestContext = Nothing) As AsyncPageable(Of BinaryData)" /> <MemberSignature Language="F#" Value="abstract member GetLogCollectionsAsync : Azure.RequestContext -&gt; Azure.AsyncPageable&lt;BinaryData&gt;&#xA;override this.GetLogCollectionsAsync : Azure.RequestContext -&gt; Azure.AsyncPageable&lt;BinaryData&gt;" Usage="deviceManagementClient.GetLogCollectionsAsync context" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.AsyncPageable&lt;System.BinaryData&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Get all device diagnostics log collections. </summary> <returns> The <see cref="T:Azure.AsyncPageable`1" /> from the service containing a list of <see cref="T:System.BinaryData" /> objects. Details of the body schema for each item in the collection are in the Remarks section below. </returns> <remarks> Below is the JSON schema for one item in the pageable response. Response Body: Schema for <c>LogCollectionListValue</c>: <code>{ operationId: string, # Optional. The log collection id. deviceList: [ { deviceId: string, # Required. Device Id moduleId: string, # Optional. Module Id } ], # Required. Array of Device Update agent ids description: string, # Optional. Description of the diagnostics operation. createdDateTime: string, # Optional. The timestamp when the operation was created. lastActionDateTime: string, # Optional. A timestamp for when the current state was entered. status: "NotStarted" | "Running" | "Succeeded" | "Failed", # Optional. Operation status. } </code></remarks> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetLogCollectionsAsync and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); await foreach (var data in client.GetLogCollectionsAsync()) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("operationId").ToString()); Console.WriteLine(result.GetProperty("deviceList")[0].GetProperty("deviceId").ToString()); Console.WriteLine(result.GetProperty("deviceList")[0].GetProperty("moduleId").ToString()); Console.WriteLine(result.GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("createdDateTime").ToString()); Console.WriteLine(result.GetProperty("lastActionDateTime").ToString()); Console.WriteLine(result.GetProperty("status").ToString()); } ]]></code></example> </Docs> </Member> <Member MemberName="GetOperationStatus"> <MemberSignature Language="C#" Value="public virtual Azure.Response GetOperationStatus (string operationId, Azure.ETag? ifNoneMatch = default, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Response GetOperationStatus(string operationId, valuetype System.Nullable`1&lt;valuetype Azure.ETag&gt; ifNoneMatch, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetOperationStatus(System.String,System.Nullable{Azure.ETag},Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetOperationStatus (operationId As String, Optional ifNoneMatch As Nullable(Of ETag) = Nothing, Optional context As RequestContext = Nothing) As Response" /> <MemberSignature Language="F#" Value="abstract member GetOperationStatus : string * Nullable&lt;Azure.ETag&gt; * Azure.RequestContext -&gt; Azure.Response&#xA;override this.GetOperationStatus : string * Nullable&lt;Azure.ETag&gt; * Azure.RequestContext -&gt; Azure.Response" Usage="deviceManagementClient.GetOperationStatus (operationId, ifNoneMatch, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Response</ReturnType> </ReturnValue> <Parameters> <Parameter Name="operationId" Type="System.String" /> <Parameter Name="ifNoneMatch" Type="System.Nullable&lt;Azure.ETag&gt;" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="operationId"> Operation identifier. </param> <param name="ifNoneMatch"> Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Retrieve operation status. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>DeviceOperation</c>: <code>{ operationId: string, # Required. Operation Id. status: "NotStarted" | "Running" | "Succeeded" | "Failed", # Required. Operation status. error: { code: string, # Required. Server defined error code. message: string, # Required. A human-readable representation of the error. target: string, # Optional. The target of the error. details: [Error], # Optional. An array of errors that led to the reported error. innererror: { code: string, # Required. A more specific error code than what was provided by the containing error. message: string, # Optional. A human-readable representation of the error. errorDetail: string, # Optional. The internal error or exception message. innerError: InnerError, # Optional. An object containing more specific information than the current object about the error. }, # Optional. An object containing more specific information than the current object about the error. occurredDateTime: string (ISO 8601 Format), # Optional. Date and time in UTC when the error occurred. }, # Optional. Operation error encountered, if any. traceId: string, # Optional. Operation correlation identity that can used by Microsoft Support for troubleshooting. lastActionDateTime: string (ISO 8601 Format), # Required. Date and time in UTC when the operation status was last updated. createdDateTime: string (ISO 8601 Format), # Required. Date and time in UTC when the operation was created. etag: string, # Optional. Operation ETag. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="operationId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="operationId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetOperationStatus with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = client.GetOperationStatus("<operationId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("operationId").ToString()); Console.WriteLine(result.GetProperty("status").ToString()); Console.WriteLine(result.GetProperty("lastActionDateTime").ToString()); Console.WriteLine(result.GetProperty("createdDateTime").ToString()); ]]></code> This sample shows how to call GetOperationStatus with all parameters, and how to parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = client.GetOperationStatus("<operationId>", null); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("operationId").ToString()); Console.WriteLine(result.GetProperty("status").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("code").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("message").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("target").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("innererror").GetProperty("code").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("innererror").GetProperty("message").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("innererror").GetProperty("errorDetail").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("occurredDateTime").ToString()); Console.WriteLine(result.GetProperty("traceId").ToString()); Console.WriteLine(result.GetProperty("lastActionDateTime").ToString()); Console.WriteLine(result.GetProperty("createdDateTime").ToString()); Console.WriteLine(result.GetProperty("etag").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetOperationStatusAsync"> <MemberSignature Language="C#" Value="public virtual System.Threading.Tasks.Task&lt;Azure.Response&gt; GetOperationStatusAsync (string operationId, Azure.ETag? ifNoneMatch = default, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1&lt;class Azure.Response&gt; GetOperationStatusAsync(string operationId, valuetype System.Nullable`1&lt;valuetype Azure.ETag&gt; ifNoneMatch, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetOperationStatusAsync(System.String,System.Nullable{Azure.ETag},Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetOperationStatusAsync (operationId As String, Optional ifNoneMatch As Nullable(Of ETag) = Nothing, Optional context As RequestContext = Nothing) As Task(Of Response)" /> <MemberSignature Language="F#" Value="abstract member GetOperationStatusAsync : string * Nullable&lt;Azure.ETag&gt; * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;&#xA;override this.GetOperationStatusAsync : string * Nullable&lt;Azure.ETag&gt; * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;" Usage="deviceManagementClient.GetOperationStatusAsync (operationId, ifNoneMatch, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Threading.Tasks.Task&lt;Azure.Response&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="operationId" Type="System.String" /> <Parameter Name="ifNoneMatch" Type="System.Nullable&lt;Azure.ETag&gt;" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="operationId"> Operation identifier. </param> <param name="ifNoneMatch"> Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Retrieve operation status. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>DeviceOperation</c>: <code>{ operationId: string, # Required. Operation Id. status: "NotStarted" | "Running" | "Succeeded" | "Failed", # Required. Operation status. error: { code: string, # Required. Server defined error code. message: string, # Required. A human-readable representation of the error. target: string, # Optional. The target of the error. details: [Error], # Optional. An array of errors that led to the reported error. innererror: { code: string, # Required. A more specific error code than what was provided by the containing error. message: string, # Optional. A human-readable representation of the error. errorDetail: string, # Optional. The internal error or exception message. innerError: InnerError, # Optional. An object containing more specific information than the current object about the error. }, # Optional. An object containing more specific information than the current object about the error. occurredDateTime: string (ISO 8601 Format), # Optional. Date and time in UTC when the error occurred. }, # Optional. Operation error encountered, if any. traceId: string, # Optional. Operation correlation identity that can used by Microsoft Support for troubleshooting. lastActionDateTime: string (ISO 8601 Format), # Required. Date and time in UTC when the operation status was last updated. createdDateTime: string (ISO 8601 Format), # Required. Date and time in UTC when the operation was created. etag: string, # Optional. Operation ETag. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="operationId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="operationId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetOperationStatusAsync with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = await client.GetOperationStatusAsync("<operationId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("operationId").ToString()); Console.WriteLine(result.GetProperty("status").ToString()); Console.WriteLine(result.GetProperty("lastActionDateTime").ToString()); Console.WriteLine(result.GetProperty("createdDateTime").ToString()); ]]></code> This sample shows how to call GetOperationStatusAsync with all parameters, and how to parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = await client.GetOperationStatusAsync("<operationId>", null); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("operationId").ToString()); Console.WriteLine(result.GetProperty("status").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("code").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("message").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("target").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("innererror").GetProperty("code").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("innererror").GetProperty("message").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("innererror").GetProperty("errorDetail").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("occurredDateTime").ToString()); Console.WriteLine(result.GetProperty("traceId").ToString()); Console.WriteLine(result.GetProperty("lastActionDateTime").ToString()); Console.WriteLine(result.GetProperty("createdDateTime").ToString()); Console.WriteLine(result.GetProperty("etag").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetOperationStatuses"> <MemberSignature Language="C#" Value="public virtual Azure.Pageable&lt;BinaryData&gt; GetOperationStatuses (string filter = default, int? top = default, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Pageable`1&lt;class System.BinaryData&gt; GetOperationStatuses(string filter, valuetype System.Nullable`1&lt;int32&gt; top, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetOperationStatuses(System.String,System.Nullable{System.Int32},Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetOperationStatuses (Optional filter As String = Nothing, Optional top As Nullable(Of Integer) = Nothing, Optional context As RequestContext = Nothing) As Pageable(Of BinaryData)" /> <MemberSignature Language="F#" Value="abstract member GetOperationStatuses : string * Nullable&lt;int&gt; * Azure.RequestContext -&gt; Azure.Pageable&lt;BinaryData&gt;&#xA;override this.GetOperationStatuses : string * Nullable&lt;int&gt; * Azure.RequestContext -&gt; Azure.Pageable&lt;BinaryData&gt;" Usage="deviceManagementClient.GetOperationStatuses (filter, top, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Pageable&lt;System.BinaryData&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="filter" Type="System.String" /> <Parameter Name="top" Type="System.Nullable&lt;System.Int32&gt;" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="filter"> Restricts the set of operations returned. Only one specific filter is supported: "status eq 'NotStarted' or status eq 'Running'". </param> <param name="top"> Specifies a non-negative integer n that limits the number of items returned from a collection. The service returns the number of available items up to but not greater than the specified value n. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Get a list of all device import operations. Completed operations are kept for 7 days before auto-deleted. </summary> <returns> The <see cref="T:Azure.Pageable`1" /> from the service containing a list of <see cref="T:System.BinaryData" /> objects. Details of the body schema for each item in the collection are in the Remarks section below. </returns> <remarks> Below is the JSON schema for one item in the pageable response. Response Body: Schema for <c>DeviceOperationsListValue</c>: <code>{ operationId: string, # Required. Operation Id. status: "NotStarted" | "Running" | "Succeeded" | "Failed", # Required. Operation status. error: { code: string, # Required. Server defined error code. message: string, # Required. A human-readable representation of the error. target: string, # Optional. The target of the error. details: [Error], # Optional. An array of errors that led to the reported error. innererror: { code: string, # Required. A more specific error code than what was provided by the containing error. message: string, # Optional. A human-readable representation of the error. errorDetail: string, # Optional. The internal error or exception message. innerError: InnerError, # Optional. An object containing more specific information than the current object about the error. }, # Optional. An object containing more specific information than the current object about the error. occurredDateTime: string (ISO 8601 Format), # Optional. Date and time in UTC when the error occurred. }, # Optional. Operation error encountered, if any. traceId: string, # Optional. Operation correlation identity that can used by Microsoft Support for troubleshooting. lastActionDateTime: string (ISO 8601 Format), # Required. Date and time in UTC when the operation status was last updated. createdDateTime: string (ISO 8601 Format), # Required. Date and time in UTC when the operation was created. etag: string, # Optional. Operation ETag. } </code></remarks> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetOperationStatuses and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); foreach (var data in client.GetOperationStatuses()) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("operationId").ToString()); Console.WriteLine(result.GetProperty("status").ToString()); Console.WriteLine(result.GetProperty("lastActionDateTime").ToString()); Console.WriteLine(result.GetProperty("createdDateTime").ToString()); } ]]></code> This sample shows how to call GetOperationStatuses with all parameters, and how to parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); foreach (var data in client.GetOperationStatuses("<filter>", 1234)) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("operationId").ToString()); Console.WriteLine(result.GetProperty("status").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("code").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("message").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("target").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("innererror").GetProperty("code").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("innererror").GetProperty("message").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("innererror").GetProperty("errorDetail").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("occurredDateTime").ToString()); Console.WriteLine(result.GetProperty("traceId").ToString()); Console.WriteLine(result.GetProperty("lastActionDateTime").ToString()); Console.WriteLine(result.GetProperty("createdDateTime").ToString()); Console.WriteLine(result.GetProperty("etag").ToString()); } ]]></code></example> </Docs> </Member> <Member MemberName="GetOperationStatusesAsync"> <MemberSignature Language="C#" Value="public virtual Azure.AsyncPageable&lt;BinaryData&gt; GetOperationStatusesAsync (string filter = default, int? top = default, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.AsyncPageable`1&lt;class System.BinaryData&gt; GetOperationStatusesAsync(string filter, valuetype System.Nullable`1&lt;int32&gt; top, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetOperationStatusesAsync(System.String,System.Nullable{System.Int32},Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetOperationStatusesAsync (Optional filter As String = Nothing, Optional top As Nullable(Of Integer) = Nothing, Optional context As RequestContext = Nothing) As AsyncPageable(Of BinaryData)" /> <MemberSignature Language="F#" Value="abstract member GetOperationStatusesAsync : string * Nullable&lt;int&gt; * Azure.RequestContext -&gt; Azure.AsyncPageable&lt;BinaryData&gt;&#xA;override this.GetOperationStatusesAsync : string * Nullable&lt;int&gt; * Azure.RequestContext -&gt; Azure.AsyncPageable&lt;BinaryData&gt;" Usage="deviceManagementClient.GetOperationStatusesAsync (filter, top, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.AsyncPageable&lt;System.BinaryData&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="filter" Type="System.String" /> <Parameter Name="top" Type="System.Nullable&lt;System.Int32&gt;" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="filter"> Restricts the set of operations returned. Only one specific filter is supported: "status eq 'NotStarted' or status eq 'Running'". </param> <param name="top"> Specifies a non-negative integer n that limits the number of items returned from a collection. The service returns the number of available items up to but not greater than the specified value n. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Get a list of all device import operations. Completed operations are kept for 7 days before auto-deleted. </summary> <returns> The <see cref="T:Azure.AsyncPageable`1" /> from the service containing a list of <see cref="T:System.BinaryData" /> objects. Details of the body schema for each item in the collection are in the Remarks section below. </returns> <remarks> Below is the JSON schema for one item in the pageable response. Response Body: Schema for <c>DeviceOperationsListValue</c>: <code>{ operationId: string, # Required. Operation Id. status: "NotStarted" | "Running" | "Succeeded" | "Failed", # Required. Operation status. error: { code: string, # Required. Server defined error code. message: string, # Required. A human-readable representation of the error. target: string, # Optional. The target of the error. details: [Error], # Optional. An array of errors that led to the reported error. innererror: { code: string, # Required. A more specific error code than what was provided by the containing error. message: string, # Optional. A human-readable representation of the error. errorDetail: string, # Optional. The internal error or exception message. innerError: InnerError, # Optional. An object containing more specific information than the current object about the error. }, # Optional. An object containing more specific information than the current object about the error. occurredDateTime: string (ISO 8601 Format), # Optional. Date and time in UTC when the error occurred. }, # Optional. Operation error encountered, if any. traceId: string, # Optional. Operation correlation identity that can used by Microsoft Support for troubleshooting. lastActionDateTime: string (ISO 8601 Format), # Required. Date and time in UTC when the operation status was last updated. createdDateTime: string (ISO 8601 Format), # Required. Date and time in UTC when the operation was created. etag: string, # Optional. Operation ETag. } </code></remarks> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetOperationStatusesAsync and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); await foreach (var data in client.GetOperationStatusesAsync()) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("operationId").ToString()); Console.WriteLine(result.GetProperty("status").ToString()); Console.WriteLine(result.GetProperty("lastActionDateTime").ToString()); Console.WriteLine(result.GetProperty("createdDateTime").ToString()); } ]]></code> This sample shows how to call GetOperationStatusesAsync with all parameters, and how to parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); await foreach (var data in client.GetOperationStatusesAsync("<filter>", 1234)) { JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement; Console.WriteLine(result.GetProperty("operationId").ToString()); Console.WriteLine(result.GetProperty("status").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("code").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("message").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("target").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("innererror").GetProperty("code").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("innererror").GetProperty("message").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("innererror").GetProperty("errorDetail").ToString()); Console.WriteLine(result.GetProperty("error").GetProperty("occurredDateTime").ToString()); Console.WriteLine(result.GetProperty("traceId").ToString()); Console.WriteLine(result.GetProperty("lastActionDateTime").ToString()); Console.WriteLine(result.GetProperty("createdDateTime").ToString()); Console.WriteLine(result.GetProperty("etag").ToString()); } ]]></code></example> </Docs> </Member> <Member MemberName="GetUpdateCompliance"> <MemberSignature Language="C#" Value="public virtual Azure.Response GetUpdateCompliance (Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Response GetUpdateCompliance(class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetUpdateCompliance(Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetUpdateCompliance (Optional context As RequestContext = Nothing) As Response" /> <MemberSignature Language="F#" Value="abstract member GetUpdateCompliance : Azure.RequestContext -&gt; Azure.Response&#xA;override this.GetUpdateCompliance : Azure.RequestContext -&gt; Azure.Response" Usage="deviceManagementClient.GetUpdateCompliance context" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Response</ReturnType> </ReturnValue> <Parameters> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets the breakdown of how many devices are on their latest update, have new updates available, or are in progress receiving new updates. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>UpdateCompliance</c>: <code>{ totalDeviceCount: number, # Required. Total number of devices. onLatestUpdateDeviceCount: number, # Required. Number of devices on the latest update. newUpdatesAvailableDeviceCount: number, # Required. Number of devices with a newer update available. updatesInProgressDeviceCount: number, # Required. Number of devices with update in-progress. } </code></remarks> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetUpdateCompliance and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = client.GetUpdateCompliance(); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("totalDeviceCount").ToString()); Console.WriteLine(result.GetProperty("onLatestUpdateDeviceCount").ToString()); Console.WriteLine(result.GetProperty("newUpdatesAvailableDeviceCount").ToString()); Console.WriteLine(result.GetProperty("updatesInProgressDeviceCount").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetUpdateComplianceAsync"> <MemberSignature Language="C#" Value="public virtual System.Threading.Tasks.Task&lt;Azure.Response&gt; GetUpdateComplianceAsync (Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1&lt;class Azure.Response&gt; GetUpdateComplianceAsync(class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetUpdateComplianceAsync(Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetUpdateComplianceAsync (Optional context As RequestContext = Nothing) As Task(Of Response)" /> <MemberSignature Language="F#" Value="abstract member GetUpdateComplianceAsync : Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;&#xA;override this.GetUpdateComplianceAsync : Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;" Usage="deviceManagementClient.GetUpdateComplianceAsync context" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Threading.Tasks.Task&lt;Azure.Response&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Gets the breakdown of how many devices are on their latest update, have new updates available, or are in progress receiving new updates. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>UpdateCompliance</c>: <code>{ totalDeviceCount: number, # Required. Total number of devices. onLatestUpdateDeviceCount: number, # Required. Number of devices on the latest update. newUpdatesAvailableDeviceCount: number, # Required. Number of devices with a newer update available. updatesInProgressDeviceCount: number, # Required. Number of devices with update in-progress. } </code></remarks> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetUpdateComplianceAsync and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = await client.GetUpdateComplianceAsync(); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("totalDeviceCount").ToString()); Console.WriteLine(result.GetProperty("onLatestUpdateDeviceCount").ToString()); Console.WriteLine(result.GetProperty("newUpdatesAvailableDeviceCount").ToString()); Console.WriteLine(result.GetProperty("updatesInProgressDeviceCount").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetUpdateComplianceForGroup"> <MemberSignature Language="C#" Value="public virtual Azure.Response GetUpdateComplianceForGroup (string groupId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Response GetUpdateComplianceForGroup(string groupId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetUpdateComplianceForGroup(System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetUpdateComplianceForGroup (groupId As String, Optional context As RequestContext = Nothing) As Response" /> <MemberSignature Language="F#" Value="abstract member GetUpdateComplianceForGroup : string * Azure.RequestContext -&gt; Azure.Response&#xA;override this.GetUpdateComplianceForGroup : string * Azure.RequestContext -&gt; Azure.Response" Usage="deviceManagementClient.GetUpdateComplianceForGroup (groupId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Response</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Get device group update compliance information such as how many devices are on their latest update, how many need new updates, and how many are in progress on receiving a new update. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>UpdateCompliance</c>: <code>{ totalDeviceCount: number, # Required. Total number of devices. onLatestUpdateDeviceCount: number, # Required. Number of devices on the latest update. newUpdatesAvailableDeviceCount: number, # Required. Number of devices with a newer update available. updatesInProgressDeviceCount: number, # Required. Number of devices with update in-progress. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetUpdateComplianceForGroup with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = client.GetUpdateComplianceForGroup("<groupId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("totalDeviceCount").ToString()); Console.WriteLine(result.GetProperty("onLatestUpdateDeviceCount").ToString()); Console.WriteLine(result.GetProperty("newUpdatesAvailableDeviceCount").ToString()); Console.WriteLine(result.GetProperty("updatesInProgressDeviceCount").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="GetUpdateComplianceForGroupAsync"> <MemberSignature Language="C#" Value="public virtual System.Threading.Tasks.Task&lt;Azure.Response&gt; GetUpdateComplianceForGroupAsync (string groupId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1&lt;class Azure.Response&gt; GetUpdateComplianceForGroupAsync(string groupId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.GetUpdateComplianceForGroupAsync(System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function GetUpdateComplianceForGroupAsync (groupId As String, Optional context As RequestContext = Nothing) As Task(Of Response)" /> <MemberSignature Language="F#" Value="abstract member GetUpdateComplianceForGroupAsync : string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;&#xA;override this.GetUpdateComplianceForGroupAsync : string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;" Usage="deviceManagementClient.GetUpdateComplianceForGroupAsync (groupId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Threading.Tasks.Task&lt;Azure.Response&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Get device group update compliance information such as how many devices are on their latest update, how many need new updates, and how many are in progress on receiving a new update. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>UpdateCompliance</c>: <code>{ totalDeviceCount: number, # Required. Total number of devices. onLatestUpdateDeviceCount: number, # Required. Number of devices on the latest update. newUpdatesAvailableDeviceCount: number, # Required. Number of devices with a newer update available. updatesInProgressDeviceCount: number, # Required. Number of devices with update in-progress. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call GetUpdateComplianceForGroupAsync with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = await client.GetUpdateComplianceForGroupAsync("<groupId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("totalDeviceCount").ToString()); Console.WriteLine(result.GetProperty("onLatestUpdateDeviceCount").ToString()); Console.WriteLine(result.GetProperty("newUpdatesAvailableDeviceCount").ToString()); Console.WriteLine(result.GetProperty("updatesInProgressDeviceCount").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="ImportDevices"> <MemberSignature Language="C#" Value="public virtual Azure.Operation ImportDevices (Azure.WaitUntil waitUntil, Azure.Core.RequestContent content, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Operation ImportDevices(valuetype Azure.WaitUntil waitUntil, class Azure.Core.RequestContent content, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.ImportDevices(Azure.WaitUntil,Azure.Core.RequestContent,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function ImportDevices (waitUntil As WaitUntil, content As RequestContent, Optional context As RequestContext = Nothing) As Operation" /> <MemberSignature Language="F#" Value="abstract member ImportDevices : Azure.WaitUntil * Azure.Core.RequestContent * Azure.RequestContext -&gt; Azure.Operation&#xA;override this.ImportDevices : Azure.WaitUntil * Azure.Core.RequestContent * Azure.RequestContext -&gt; Azure.Operation" Usage="deviceManagementClient.ImportDevices (waitUntil, content, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Operation</ReturnType> </ReturnValue> <Parameters> <Parameter Name="waitUntil" Type="Azure.WaitUntil" /> <Parameter Name="content" Type="Azure.Core.RequestContent" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="waitUntil"> <see cref="F:Azure.WaitUntil.Completed" /> if the method should wait to return until the long-running operation has completed on the service; <see cref="F:Azure.WaitUntil.Started" /> if it should return after starting the operation. For more information on long-running operations, please see <see href="https://github.com/Azure/azure-sdk-for-net/blob/main/sdk/core/Azure.Core/samples/LongRunningOperations.md"> Azure.Core Long-Running Operation samples</see>. </param> <param name="content"> The content to send as the body of the request. Details of the request body schema are in the Remarks section below. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Import existing devices from IoT Hub. This is a long-running-operation; use Operation-Location response header value to check for operation status. </summary> <returns> The <see cref="T:Azure.Operation" /> representing an asynchronous operation on the service. </returns> <remarks>To be added.</remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="content" /> is null. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call ImportDevices with required parameters and request content. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); var data = "Devices"; var operation = client.ImportDevices(WaitUntil.Completed, RequestContent.Create(data)); var response = operation.WaitForCompletionResponse(); Console.WriteLine(response.Status) ]]></code></example> </Docs> </Member> <Member MemberName="ImportDevicesAsync"> <MemberSignature Language="C#" Value="public virtual System.Threading.Tasks.Task&lt;Azure.Operation&gt; ImportDevicesAsync (Azure.WaitUntil waitUntil, Azure.Core.RequestContent content, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1&lt;class Azure.Operation&gt; ImportDevicesAsync(valuetype Azure.WaitUntil waitUntil, class Azure.Core.RequestContent content, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.ImportDevicesAsync(Azure.WaitUntil,Azure.Core.RequestContent,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function ImportDevicesAsync (waitUntil As WaitUntil, content As RequestContent, Optional context As RequestContext = Nothing) As Task(Of Operation)" /> <MemberSignature Language="F#" Value="abstract member ImportDevicesAsync : Azure.WaitUntil * Azure.Core.RequestContent * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Operation&gt;&#xA;override this.ImportDevicesAsync : Azure.WaitUntil * Azure.Core.RequestContent * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Operation&gt;" Usage="deviceManagementClient.ImportDevicesAsync (waitUntil, content, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Threading.Tasks.Task&lt;Azure.Operation&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="waitUntil" Type="Azure.WaitUntil" /> <Parameter Name="content" Type="Azure.Core.RequestContent" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="waitUntil"> <see cref="F:Azure.WaitUntil.Completed" /> if the method should wait to return until the long-running operation has completed on the service; <see cref="F:Azure.WaitUntil.Started" /> if it should return after starting the operation. For more information on long-running operations, please see <see href="https://github.com/Azure/azure-sdk-for-net/blob/main/sdk/core/Azure.Core/samples/LongRunningOperations.md"> Azure.Core Long-Running Operation samples</see>. </param> <param name="content"> The content to send as the body of the request. Details of the request body schema are in the Remarks section below. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Import existing devices from IoT Hub. This is a long-running-operation; use Operation-Location response header value to check for operation status. </summary> <returns> The <see cref="T:Azure.Operation" /> representing an asynchronous operation on the service. </returns> <remarks>To be added.</remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="content" /> is null. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call ImportDevicesAsync with required parameters and request content. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); var data = "Devices"; var operation = await client.ImportDevicesAsync(WaitUntil.Completed, RequestContent.Create(data)); var response = await operation.WaitForCompletionResponseAsync(); Console.WriteLine(response.Status) ]]></code></example> </Docs> </Member> <Member MemberName="Pipeline"> <MemberSignature Language="C#" Value="public virtual Azure.Core.Pipeline.HttpPipeline Pipeline { get; }" /> <MemberSignature Language="ILAsm" Value=".property instance class Azure.Core.Pipeline.HttpPipeline Pipeline" /> <MemberSignature Language="DocId" Value="P:Azure.IoT.DeviceUpdate.DeviceManagementClient.Pipeline" /> <MemberSignature Language="VB.NET" Value="Public Overridable ReadOnly Property Pipeline As HttpPipeline" /> <MemberSignature Language="F#" Value="member this.Pipeline : Azure.Core.Pipeline.HttpPipeline" Usage="Azure.IoT.DeviceUpdate.DeviceManagementClient.Pipeline" /> <MemberType>Property</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Core.Pipeline.HttpPipeline</ReturnType> </ReturnValue> <Docs> <summary> The HTTP pipeline for sending and receiving REST requests and responses. </summary> <value>To be added.</value> <remarks>To be added.</remarks> </Docs> </Member> <Member MemberName="RetryDeployment"> <MemberSignature Language="C#" Value="public virtual Azure.Response RetryDeployment (string groupId, string deviceClassId, string deploymentId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Response RetryDeployment(string groupId, string deviceClassId, string deploymentId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.RetryDeployment(System.String,System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function RetryDeployment (groupId As String, deviceClassId As String, deploymentId As String, Optional context As RequestContext = Nothing) As Response" /> <MemberSignature Language="F#" Value="abstract member RetryDeployment : string * string * string * Azure.RequestContext -&gt; Azure.Response&#xA;override this.RetryDeployment : string * string * string * Azure.RequestContext -&gt; Azure.Response" Usage="deviceManagementClient.RetryDeployment (groupId, deviceClassId, deploymentId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Response</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="deploymentId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deviceClassId"> Device class identifier. </param> <param name="deploymentId"> Deployment identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Retries a deployment with failed devices. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>Deployment</c>: <code>{ deploymentId: string, # Required. The caller-provided deployment identifier. This cannot be longer than 73 characters, must be all lower-case, and cannot contain '&amp;', '^', '[', ']', '{', '}', '|', '&lt;', '&gt;', forward slash, backslash, or double quote. The Updates view in the Azure Portal IoT Hub resource generates a GUID for deploymentId when you create a deployment. startDateTime: string (ISO 8601 Format), # Required. The deployment start datetime. update: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Required. Update information for the update in the deployment. groupId: string, # Required. The group identity for the devices the deployment is intended to update. deviceClassSubgroups: [string], # Optional. The device class subgroups the deployment is compatible with and subgroup deployments have been created for. This is not provided by the caller during CreateOrUpdateDeployment but is automatically determined by Device Update isCanceled: boolean, # Optional. Boolean flag indicating whether the deployment was canceled. isRetried: boolean, # Optional. Boolean flag indicating whether the deployment has been retried. rollbackPolicy: { update: UpdateInfo, # Required. Update to rollback to. failure: { devicesFailedPercentage: number, # Required. Percentage of devices that failed. devicesFailedCount: number, # Required. Number of devices that failed. }, # Required. Failure conditions to initiate rollback policy. }, # Optional. The rollback policy for the deployment. isCloudInitiatedRollback: boolean, # Optional. Boolean flag indicating whether the deployment is a rollback deployment. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" />, <paramref name="deviceClassId" /> or <paramref name="deploymentId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" />, <paramref name="deviceClassId" /> or <paramref name="deploymentId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call RetryDeployment with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = client.RetryDeployment("<groupId>", "<deviceClassId>", "<deploymentId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("deploymentId").ToString()); Console.WriteLine(result.GetProperty("startDateTime").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("deviceClassSubgroups")[0].ToString()); Console.WriteLine(result.GetProperty("isCanceled").ToString()); Console.WriteLine(result.GetProperty("isRetried").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("failure").GetProperty("devicesFailedPercentage").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("failure").GetProperty("devicesFailedCount").ToString()); Console.WriteLine(result.GetProperty("isCloudInitiatedRollback").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="RetryDeploymentAsync"> <MemberSignature Language="C#" Value="public virtual System.Threading.Tasks.Task&lt;Azure.Response&gt; RetryDeploymentAsync (string groupId, string deviceClassId, string deploymentId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1&lt;class Azure.Response&gt; RetryDeploymentAsync(string groupId, string deviceClassId, string deploymentId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.RetryDeploymentAsync(System.String,System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function RetryDeploymentAsync (groupId As String, deviceClassId As String, deploymentId As String, Optional context As RequestContext = Nothing) As Task(Of Response)" /> <MemberSignature Language="F#" Value="abstract member RetryDeploymentAsync : string * string * string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;&#xA;override this.RetryDeploymentAsync : string * string * string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;" Usage="deviceManagementClient.RetryDeploymentAsync (groupId, deviceClassId, deploymentId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Threading.Tasks.Task&lt;Azure.Response&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="deploymentId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deviceClassId"> Device class identifier. </param> <param name="deploymentId"> Deployment identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Retries a deployment with failed devices. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>Deployment</c>: <code>{ deploymentId: string, # Required. The caller-provided deployment identifier. This cannot be longer than 73 characters, must be all lower-case, and cannot contain '&amp;', '^', '[', ']', '{', '}', '|', '&lt;', '&gt;', forward slash, backslash, or double quote. The Updates view in the Azure Portal IoT Hub resource generates a GUID for deploymentId when you create a deployment. startDateTime: string (ISO 8601 Format), # Required. The deployment start datetime. update: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Required. Update information for the update in the deployment. groupId: string, # Required. The group identity for the devices the deployment is intended to update. deviceClassSubgroups: [string], # Optional. The device class subgroups the deployment is compatible with and subgroup deployments have been created for. This is not provided by the caller during CreateOrUpdateDeployment but is automatically determined by Device Update isCanceled: boolean, # Optional. Boolean flag indicating whether the deployment was canceled. isRetried: boolean, # Optional. Boolean flag indicating whether the deployment has been retried. rollbackPolicy: { update: UpdateInfo, # Required. Update to rollback to. failure: { devicesFailedPercentage: number, # Required. Percentage of devices that failed. devicesFailedCount: number, # Required. Number of devices that failed. }, # Required. Failure conditions to initiate rollback policy. }, # Optional. The rollback policy for the deployment. isCloudInitiatedRollback: boolean, # Optional. Boolean flag indicating whether the deployment is a rollback deployment. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" />, <paramref name="deviceClassId" /> or <paramref name="deploymentId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" />, <paramref name="deviceClassId" /> or <paramref name="deploymentId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call RetryDeploymentAsync with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = await client.RetryDeploymentAsync("<groupId>", "<deviceClassId>", "<deploymentId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("deploymentId").ToString()); Console.WriteLine(result.GetProperty("startDateTime").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("deviceClassSubgroups")[0].ToString()); Console.WriteLine(result.GetProperty("isCanceled").ToString()); Console.WriteLine(result.GetProperty("isRetried").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("failure").GetProperty("devicesFailedPercentage").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("failure").GetProperty("devicesFailedCount").ToString()); Console.WriteLine(result.GetProperty("isCloudInitiatedRollback").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="StartLogCollection"> <MemberSignature Language="C#" Value="public virtual Azure.Response StartLogCollection (string logCollectionId, Azure.Core.RequestContent content, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Response StartLogCollection(string logCollectionId, class Azure.Core.RequestContent content, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.StartLogCollection(System.String,Azure.Core.RequestContent,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function StartLogCollection (logCollectionId As String, content As RequestContent, Optional context As RequestContext = Nothing) As Response" /> <MemberSignature Language="F#" Value="abstract member StartLogCollection : string * Azure.Core.RequestContent * Azure.RequestContext -&gt; Azure.Response&#xA;override this.StartLogCollection : string * Azure.Core.RequestContent * Azure.RequestContext -&gt; Azure.Response" Usage="deviceManagementClient.StartLogCollection (logCollectionId, content, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Response</ReturnType> </ReturnValue> <Parameters> <Parameter Name="logCollectionId" Type="System.String" /> <Parameter Name="content" Type="Azure.Core.RequestContent" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="logCollectionId"> Log collection identifier. </param> <param name="content"> The content to send as the body of the request. Details of the request body schema are in the Remarks section below. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Start the device diagnostics log collection on specified devices. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the request and response payloads. Request Body: Schema for <c>LogCollection</c>: <code>{ operationId: string, # Optional. The log collection id. deviceList: [ { deviceId: string, # Required. Device Id moduleId: string, # Optional. Module Id } ], # Required. Array of Device Update agent ids description: string, # Optional. Description of the diagnostics operation. createdDateTime: string, # Optional. The timestamp when the operation was created. lastActionDateTime: string, # Optional. A timestamp for when the current state was entered. status: "NotStarted" | "Running" | "Succeeded" | "Failed", # Optional. Operation status. } </code> Response Body: Schema for <c>LogCollection</c>: <code>{ operationId: string, # Optional. The log collection id. deviceList: [ { deviceId: string, # Required. Device Id moduleId: string, # Optional. Module Id } ], # Required. Array of Device Update agent ids description: string, # Optional. Description of the diagnostics operation. createdDateTime: string, # Optional. The timestamp when the operation was created. lastActionDateTime: string, # Optional. A timestamp for when the current state was entered. status: "NotStarted" | "Running" | "Succeeded" | "Failed", # Optional. Operation status. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="logCollectionId" /> or <paramref name="content" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="logCollectionId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call StartLogCollection with required parameters and request content, and how to parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); var data = new { deviceList = new[] { new { deviceId = "<deviceId>", } }, }; Response response = client.StartLogCollection("<logCollectionId>", RequestContent.Create(data)); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("deviceList")[0].GetProperty("deviceId").ToString()); ]]></code> This sample shows how to call StartLogCollection with all parameters and request content, and how to parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); var data = new { operationId = "<operationId>", deviceList = new[] { new { deviceId = "<deviceId>", moduleId = "<moduleId>", } }, description = "<description>", }; Response response = client.StartLogCollection("<logCollectionId>", RequestContent.Create(data)); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("operationId").ToString()); Console.WriteLine(result.GetProperty("deviceList")[0].GetProperty("deviceId").ToString()); Console.WriteLine(result.GetProperty("deviceList")[0].GetProperty("moduleId").ToString()); Console.WriteLine(result.GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("createdDateTime").ToString()); Console.WriteLine(result.GetProperty("lastActionDateTime").ToString()); Console.WriteLine(result.GetProperty("status").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="StartLogCollectionAsync"> <MemberSignature Language="C#" Value="public virtual System.Threading.Tasks.Task&lt;Azure.Response&gt; StartLogCollectionAsync (string logCollectionId, Azure.Core.RequestContent content, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1&lt;class Azure.Response&gt; StartLogCollectionAsync(string logCollectionId, class Azure.Core.RequestContent content, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.StartLogCollectionAsync(System.String,Azure.Core.RequestContent,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function StartLogCollectionAsync (logCollectionId As String, content As RequestContent, Optional context As RequestContext = Nothing) As Task(Of Response)" /> <MemberSignature Language="F#" Value="abstract member StartLogCollectionAsync : string * Azure.Core.RequestContent * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;&#xA;override this.StartLogCollectionAsync : string * Azure.Core.RequestContent * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;" Usage="deviceManagementClient.StartLogCollectionAsync (logCollectionId, content, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Threading.Tasks.Task&lt;Azure.Response&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="logCollectionId" Type="System.String" /> <Parameter Name="content" Type="Azure.Core.RequestContent" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="logCollectionId"> Log collection identifier. </param> <param name="content"> The content to send as the body of the request. Details of the request body schema are in the Remarks section below. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Start the device diagnostics log collection on specified devices. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the request and response payloads. Request Body: Schema for <c>LogCollection</c>: <code>{ operationId: string, # Optional. The log collection id. deviceList: [ { deviceId: string, # Required. Device Id moduleId: string, # Optional. Module Id } ], # Required. Array of Device Update agent ids description: string, # Optional. Description of the diagnostics operation. createdDateTime: string, # Optional. The timestamp when the operation was created. lastActionDateTime: string, # Optional. A timestamp for when the current state was entered. status: "NotStarted" | "Running" | "Succeeded" | "Failed", # Optional. Operation status. } </code> Response Body: Schema for <c>LogCollection</c>: <code>{ operationId: string, # Optional. The log collection id. deviceList: [ { deviceId: string, # Required. Device Id moduleId: string, # Optional. Module Id } ], # Required. Array of Device Update agent ids description: string, # Optional. Description of the diagnostics operation. createdDateTime: string, # Optional. The timestamp when the operation was created. lastActionDateTime: string, # Optional. A timestamp for when the current state was entered. status: "NotStarted" | "Running" | "Succeeded" | "Failed", # Optional. Operation status. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="logCollectionId" /> or <paramref name="content" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="logCollectionId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call StartLogCollectionAsync with required parameters and request content, and how to parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); var data = new { deviceList = new[] { new { deviceId = "<deviceId>", } }, }; Response response = await client.StartLogCollectionAsync("<logCollectionId>", RequestContent.Create(data)); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("deviceList")[0].GetProperty("deviceId").ToString()); ]]></code> This sample shows how to call StartLogCollectionAsync with all parameters and request content, and how to parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); var data = new { operationId = "<operationId>", deviceList = new[] { new { deviceId = "<deviceId>", moduleId = "<moduleId>", } }, description = "<description>", }; Response response = await client.StartLogCollectionAsync("<logCollectionId>", RequestContent.Create(data)); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("operationId").ToString()); Console.WriteLine(result.GetProperty("deviceList")[0].GetProperty("deviceId").ToString()); Console.WriteLine(result.GetProperty("deviceList")[0].GetProperty("moduleId").ToString()); Console.WriteLine(result.GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("createdDateTime").ToString()); Console.WriteLine(result.GetProperty("lastActionDateTime").ToString()); Console.WriteLine(result.GetProperty("status").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="StopDeployment"> <MemberSignature Language="C#" Value="public virtual Azure.Response StopDeployment (string groupId, string deviceClassId, string deploymentId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Response StopDeployment(string groupId, string deviceClassId, string deploymentId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.StopDeployment(System.String,System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function StopDeployment (groupId As String, deviceClassId As String, deploymentId As String, Optional context As RequestContext = Nothing) As Response" /> <MemberSignature Language="F#" Value="abstract member StopDeployment : string * string * string * Azure.RequestContext -&gt; Azure.Response&#xA;override this.StopDeployment : string * string * string * Azure.RequestContext -&gt; Azure.Response" Usage="deviceManagementClient.StopDeployment (groupId, deviceClassId, deploymentId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Response</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="deploymentId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deviceClassId"> Device class identifier. </param> <param name="deploymentId"> Deployment identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Stops a deployment. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>Deployment</c>: <code>{ deploymentId: string, # Required. The caller-provided deployment identifier. This cannot be longer than 73 characters, must be all lower-case, and cannot contain '&amp;', '^', '[', ']', '{', '}', '|', '&lt;', '&gt;', forward slash, backslash, or double quote. The Updates view in the Azure Portal IoT Hub resource generates a GUID for deploymentId when you create a deployment. startDateTime: string (ISO 8601 Format), # Required. The deployment start datetime. update: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Required. Update information for the update in the deployment. groupId: string, # Required. The group identity for the devices the deployment is intended to update. deviceClassSubgroups: [string], # Optional. The device class subgroups the deployment is compatible with and subgroup deployments have been created for. This is not provided by the caller during CreateOrUpdateDeployment but is automatically determined by Device Update isCanceled: boolean, # Optional. Boolean flag indicating whether the deployment was canceled. isRetried: boolean, # Optional. Boolean flag indicating whether the deployment has been retried. rollbackPolicy: { update: UpdateInfo, # Required. Update to rollback to. failure: { devicesFailedPercentage: number, # Required. Percentage of devices that failed. devicesFailedCount: number, # Required. Number of devices that failed. }, # Required. Failure conditions to initiate rollback policy. }, # Optional. The rollback policy for the deployment. isCloudInitiatedRollback: boolean, # Optional. Boolean flag indicating whether the deployment is a rollback deployment. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" />, <paramref name="deviceClassId" /> or <paramref name="deploymentId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" />, <paramref name="deviceClassId" /> or <paramref name="deploymentId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call StopDeployment with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = client.StopDeployment("<groupId>", "<deviceClassId>", "<deploymentId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("deploymentId").ToString()); Console.WriteLine(result.GetProperty("startDateTime").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("deviceClassSubgroups")[0].ToString()); Console.WriteLine(result.GetProperty("isCanceled").ToString()); Console.WriteLine(result.GetProperty("isRetried").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("failure").GetProperty("devicesFailedPercentage").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("failure").GetProperty("devicesFailedCount").ToString()); Console.WriteLine(result.GetProperty("isCloudInitiatedRollback").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="StopDeploymentAsync"> <MemberSignature Language="C#" Value="public virtual System.Threading.Tasks.Task&lt;Azure.Response&gt; StopDeploymentAsync (string groupId, string deviceClassId, string deploymentId, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1&lt;class Azure.Response&gt; StopDeploymentAsync(string groupId, string deviceClassId, string deploymentId, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.StopDeploymentAsync(System.String,System.String,System.String,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function StopDeploymentAsync (groupId As String, deviceClassId As String, deploymentId As String, Optional context As RequestContext = Nothing) As Task(Of Response)" /> <MemberSignature Language="F#" Value="abstract member StopDeploymentAsync : string * string * string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;&#xA;override this.StopDeploymentAsync : string * string * string * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;" Usage="deviceManagementClient.StopDeploymentAsync (groupId, deviceClassId, deploymentId, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Threading.Tasks.Task&lt;Azure.Response&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="groupId" Type="System.String" /> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="deploymentId" Type="System.String" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="groupId"> Group identifier. </param> <param name="deviceClassId"> Device class identifier. </param> <param name="deploymentId"> Deployment identifier. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Stops a deployment. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the response payload. Response Body: Schema for <c>Deployment</c>: <code>{ deploymentId: string, # Required. The caller-provided deployment identifier. This cannot be longer than 73 characters, must be all lower-case, and cannot contain '&amp;', '^', '[', ']', '{', '}', '|', '&lt;', '&gt;', forward slash, backslash, or double quote. The Updates view in the Azure Portal IoT Hub resource generates a GUID for deploymentId when you create a deployment. startDateTime: string (ISO 8601 Format), # Required. The deployment start datetime. update: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Required. Update information for the update in the deployment. groupId: string, # Required. The group identity for the devices the deployment is intended to update. deviceClassSubgroups: [string], # Optional. The device class subgroups the deployment is compatible with and subgroup deployments have been created for. This is not provided by the caller during CreateOrUpdateDeployment but is automatically determined by Device Update isCanceled: boolean, # Optional. Boolean flag indicating whether the deployment was canceled. isRetried: boolean, # Optional. Boolean flag indicating whether the deployment has been retried. rollbackPolicy: { update: UpdateInfo, # Required. Update to rollback to. failure: { devicesFailedPercentage: number, # Required. Percentage of devices that failed. devicesFailedCount: number, # Required. Number of devices that failed. }, # Required. Failure conditions to initiate rollback policy. }, # Optional. The rollback policy for the deployment. isCloudInitiatedRollback: boolean, # Optional. Boolean flag indicating whether the deployment is a rollback deployment. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="groupId" />, <paramref name="deviceClassId" /> or <paramref name="deploymentId" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="groupId" />, <paramref name="deviceClassId" /> or <paramref name="deploymentId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call StopDeploymentAsync with required parameters and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); Response response = await client.StopDeploymentAsync("<groupId>", "<deviceClassId>", "<deploymentId>"); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("deploymentId").ToString()); Console.WriteLine(result.GetProperty("startDateTime").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("groupId").ToString()); Console.WriteLine(result.GetProperty("deviceClassSubgroups")[0].ToString()); Console.WriteLine(result.GetProperty("isCanceled").ToString()); Console.WriteLine(result.GetProperty("isRetried").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("update").GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("failure").GetProperty("devicesFailedPercentage").ToString()); Console.WriteLine(result.GetProperty("rollbackPolicy").GetProperty("failure").GetProperty("devicesFailedCount").ToString()); Console.WriteLine(result.GetProperty("isCloudInitiatedRollback").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="UpdateDeviceClass"> <MemberSignature Language="C#" Value="public virtual Azure.Response UpdateDeviceClass (string deviceClassId, Azure.Core.RequestContent content, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Azure.Response UpdateDeviceClass(string deviceClassId, class Azure.Core.RequestContent content, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.UpdateDeviceClass(System.String,Azure.Core.RequestContent,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function UpdateDeviceClass (deviceClassId As String, content As RequestContent, Optional context As RequestContext = Nothing) As Response" /> <MemberSignature Language="F#" Value="abstract member UpdateDeviceClass : string * Azure.Core.RequestContent * Azure.RequestContext -&gt; Azure.Response&#xA;override this.UpdateDeviceClass : string * Azure.Core.RequestContent * Azure.RequestContext -&gt; Azure.Response" Usage="deviceManagementClient.UpdateDeviceClass (deviceClassId, content, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>Azure.Response</ReturnType> </ReturnValue> <Parameters> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="content" Type="Azure.Core.RequestContent" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="deviceClassId"> Device class identifier. </param> <param name="content"> The content to send as the body of the request. Details of the request body schema are in the Remarks section below. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Update device class details. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the request and response payloads. Request Body: Schema for <c>PatchBody</c>: <code>{ friendlyName: string, # Required. The device class friendly name. Friendly name can be 1-100 characters, alphanumeric, dot, and dash. } </code> Response Body: Schema for <c>DeviceClass</c>: <code>{ deviceClassId: string, # Required. The device class identifier. This is generated from the model Id and the compat properties reported by the device update agent in the Device Update PnP interface in IoT Hub. It is a hex-encoded SHA1 hash. friendlyName: string, # Optional. The device class friendly name. This can be updated by callers after the device class has been automatically created. deviceClassProperties: { contractModel: { id: string, # Required. The Device Update agent contract model Id of the device class. This is also used to calculate the device class Id. name: string, # Required. The Device Update agent contract model name of the device class. Intended to be a more readable form of the contract model Id. }, # Optional. The Device Update agent contract model. compatProperties: Dictionary&lt;string, string&gt;, # Required. The compat properties of the device class. This object can be thought of as a set of key-value pairs where the key is the name of the compatibility property and the value is the value of the compatibility property. There will always be at least 1 compat property }, # Required. The device class properties that are used to calculate the device class Id bestCompatibleUpdate: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Optional. Update that is the highest version compatible with this device class. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="deviceClassId" /> or <paramref name="content" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="deviceClassId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call UpdateDeviceClass with required parameters and request content and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); var data = new { friendlyName = "<friendlyName>", }; Response response = client.UpdateDeviceClass("<deviceClassId>", RequestContent.Create(data)); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("deviceClassProperties").GetProperty("contractModel").GetProperty("id").ToString()); Console.WriteLine(result.GetProperty("deviceClassProperties").GetProperty("contractModel").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("deviceClassProperties").GetProperty("compatProperties").GetProperty("<test>").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("friendlyName").ToString()); ]]></code></example> </Docs> </Member> <Member MemberName="UpdateDeviceClassAsync"> <MemberSignature Language="C#" Value="public virtual System.Threading.Tasks.Task&lt;Azure.Response&gt; UpdateDeviceClassAsync (string deviceClassId, Azure.Core.RequestContent content, Azure.RequestContext context = default);" /> <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Threading.Tasks.Task`1&lt;class Azure.Response&gt; UpdateDeviceClassAsync(string deviceClassId, class Azure.Core.RequestContent content, class Azure.RequestContext context) cil managed" /> <MemberSignature Language="DocId" Value="M:Azure.IoT.DeviceUpdate.DeviceManagementClient.UpdateDeviceClassAsync(System.String,Azure.Core.RequestContent,Azure.RequestContext)" /> <MemberSignature Language="VB.NET" Value="Public Overridable Function UpdateDeviceClassAsync (deviceClassId As String, content As RequestContent, Optional context As RequestContext = Nothing) As Task(Of Response)" /> <MemberSignature Language="F#" Value="abstract member UpdateDeviceClassAsync : string * Azure.Core.RequestContent * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;&#xA;override this.UpdateDeviceClassAsync : string * Azure.Core.RequestContent * Azure.RequestContext -&gt; System.Threading.Tasks.Task&lt;Azure.Response&gt;" Usage="deviceManagementClient.UpdateDeviceClassAsync (deviceClassId, content, context)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Azure.IoT.DeviceUpdate</AssemblyName> <AssemblyVersion>1.0.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Threading.Tasks.Task&lt;Azure.Response&gt;</ReturnType> </ReturnValue> <Parameters> <Parameter Name="deviceClassId" Type="System.String" /> <Parameter Name="content" Type="Azure.Core.RequestContent" /> <Parameter Name="context" Type="Azure.RequestContext" /> </Parameters> <Docs> <param name="deviceClassId"> Device class identifier. </param> <param name="content"> The content to send as the body of the request. Details of the request body schema are in the Remarks section below. </param> <param name="context"> The request context, which can override default behaviors of the client pipeline on a per-call basis. </param> <summary> Update device class details. </summary> <returns> The response returned from the service. Details of the response body schema are in the Remarks section below. </returns> <remarks> Below is the JSON schema for the request and response payloads. Request Body: Schema for <c>PatchBody</c>: <code>{ friendlyName: string, # Required. The device class friendly name. Friendly name can be 1-100 characters, alphanumeric, dot, and dash. } </code> Response Body: Schema for <c>DeviceClass</c>: <code>{ deviceClassId: string, # Required. The device class identifier. This is generated from the model Id and the compat properties reported by the device update agent in the Device Update PnP interface in IoT Hub. It is a hex-encoded SHA1 hash. friendlyName: string, # Optional. The device class friendly name. This can be updated by callers after the device class has been automatically created. deviceClassProperties: { contractModel: { id: string, # Required. The Device Update agent contract model Id of the device class. This is also used to calculate the device class Id. name: string, # Required. The Device Update agent contract model name of the device class. Intended to be a more readable form of the contract model Id. }, # Optional. The Device Update agent contract model. compatProperties: Dictionary&lt;string, string&gt;, # Required. The compat properties of the device class. This object can be thought of as a set of key-value pairs where the key is the name of the compatibility property and the value is the value of the compatibility property. There will always be at least 1 compat property }, # Required. The device class properties that are used to calculate the device class Id bestCompatibleUpdate: { updateId: { provider: string, # Required. Update provider. name: string, # Required. Update name. version: string, # Required. Update version. }, # Required. Update identifier. description: string, # Optional. Update description. friendlyName: string, # Optional. Friendly update name. }, # Optional. Update that is the highest version compatible with this device class. } </code></remarks> <exception cref="T:System.ArgumentNullException"> <paramref name="deviceClassId" /> or <paramref name="content" /> is null. </exception> <exception cref="T:System.ArgumentException"> <paramref name="deviceClassId" /> is an empty string, and was expected to be non-empty. </exception> <exception cref="T:Azure.RequestFailedException"> Service returned a non-success status code. </exception> <example> This sample shows how to call UpdateDeviceClassAsync with required parameters and request content and parse the result. <code><![CDATA[ var credential = new DefaultAzureCredential(); var endpoint = new Uri("<https://my-service.azure.com>"); var client = new DeviceManagementClient(endpoint, "<instanceId>", credential); var data = new { friendlyName = "<friendlyName>", }; Response response = await client.UpdateDeviceClassAsync("<deviceClassId>", RequestContent.Create(data)); JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement; Console.WriteLine(result.GetProperty("deviceClassId").ToString()); Console.WriteLine(result.GetProperty("friendlyName").ToString()); Console.WriteLine(result.GetProperty("deviceClassProperties").GetProperty("contractModel").GetProperty("id").ToString()); Console.WriteLine(result.GetProperty("deviceClassProperties").GetProperty("contractModel").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("deviceClassProperties").GetProperty("compatProperties").GetProperty("<test>").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("updateId").GetProperty("provider").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("updateId").GetProperty("name").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("updateId").GetProperty("version").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("description").ToString()); Console.WriteLine(result.GetProperty("bestCompatibleUpdate").GetProperty("friendlyName").ToString()); ]]></code></example> </Docs> </Member> </Members> </Type>