diff --git a/eng/Packages.Data.props b/eng/Packages.Data.props
index 41d5fd097c6d..e28a1533961f 100644
--- a/eng/Packages.Data.props
+++ b/eng/Packages.Data.props
@@ -153,6 +153,7 @@
+
diff --git a/sdk/digitaltwins/Azure.DigitalTwins.Core/samples/DigitalTwinsClientSample/Program.cs b/sdk/digitaltwins/Azure.DigitalTwins.Core/samples/DigitalTwinsClientSample/Program.cs
index 392ccd5024f8..ac090a70b9f0 100644
--- a/sdk/digitaltwins/Azure.DigitalTwins.Core/samples/DigitalTwinsClientSample/Program.cs
+++ b/sdk/digitaltwins/Azure.DigitalTwins.Core/samples/DigitalTwinsClientSample/Program.cs
@@ -16,7 +16,7 @@ public class Program
///
public static async Task Main(string[] args)
{
- // Parse and validate paramters
+ // Parse and validate parameters
Options options = null;
ParserResult result = Parser.Default.ParseArguments(args)
.WithParsed(parsedOptions =>
diff --git a/sdk/digitaltwins/Azure.DigitalTwins.Core/src/Customized/QueryRestClient.cs b/sdk/digitaltwins/Azure.DigitalTwins.Core/src/Customized/QueryRestClient.cs
index d7f30515b2ef..0964ca39b3fc 100644
--- a/sdk/digitaltwins/Azure.DigitalTwins.Core/src/Customized/QueryRestClient.cs
+++ b/sdk/digitaltwins/Azure.DigitalTwins.Core/src/Customized/QueryRestClient.cs
@@ -16,6 +16,7 @@ internal async Task, QueryQueryTwinsHeaders>>
QuerySpecification querySpecification,
QueryOptions queryTwinsOptions = null,
ObjectSerializer objectSerializer = null,
+ ObjectSerializer defaultObjectSerializer = null,
CancellationToken cancellationToken = default)
{
if (querySpecification == null)
@@ -36,7 +37,7 @@ internal async Task, QueryQueryTwinsHeaders>>
case 200:
{
using JsonDocument document = await JsonDocument.ParseAsync(message.Response.ContentStream, default, cancellationToken).ConfigureAwait(false);
- QueryResult value = QueryResult.DeserializeQueryResult(document.RootElement, objectSerializer);
+ QueryResult value = QueryResult.DeserializeQueryResult(document.RootElement, objectSerializer, defaultObjectSerializer);
return ResponseWithHeaders.FromValue(value, headers, message.Response);
}
default:
@@ -48,6 +49,7 @@ internal ResponseWithHeaders, QueryQueryTwinsHeaders> QueryTwins<
QuerySpecification querySpecification,
QueryOptions queryTwinsOptions = null,
ObjectSerializer objectSerializer = null,
+ ObjectSerializer defaultObjectSerializer = null,
CancellationToken cancellationToken = default)
{
if (querySpecification == null)
@@ -68,7 +70,7 @@ internal ResponseWithHeaders, QueryQueryTwinsHeaders> QueryTwins<
case 200:
{
using var document = JsonDocument.Parse(message.Response.ContentStream);
- QueryResult value = QueryResult.DeserializeQueryResult(document.RootElement, objectSerializer);
+ QueryResult value = QueryResult.DeserializeQueryResult(document.RootElement, objectSerializer, defaultObjectSerializer);
return ResponseWithHeaders.FromValue(value, headers, message.Response);
}
default:
diff --git a/sdk/digitaltwins/Azure.DigitalTwins.Core/src/DigitalTwinsClient.cs b/sdk/digitaltwins/Azure.DigitalTwins.Core/src/DigitalTwinsClient.cs
index d2958b19f0d2..c158291a119e 100644
--- a/sdk/digitaltwins/Azure.DigitalTwins.Core/src/DigitalTwinsClient.cs
+++ b/sdk/digitaltwins/Azure.DigitalTwins.Core/src/DigitalTwinsClient.cs
@@ -33,6 +33,12 @@ public class DigitalTwinsClient
private readonly ObjectSerializer _objectSerializer;
+ ///
+ /// In order to serialize/deserialize JsonElements into and out of a stream, we have to use the out of the box ObjectSerializer (JsonObjectSerializer).
+ /// If the user specifies a different type of serializer to instantiate the client than the default one, the SDK will instantiate a new JsonObjectSerializer of its own.
+ ///
+ private readonly ObjectSerializer _defaultObjectSerializer;
+
private readonly DigitalTwinsRestClient _dtRestClient;
private readonly DigitalTwinModelsRestClient _dtModelsRestClient;
private readonly EventRoutesRestClient _eventRoutesRestClient;
@@ -93,6 +99,13 @@ public DigitalTwinsClient(Uri endpoint, TokenCredential credential, DigitalTwins
_objectSerializer = options.Serializer ?? new JsonObjectSerializer();
+ // If the objectSerializer is of type JsonObjectSerializer, we will re-use the same object and set it as the defaultObjectSerializer.
+ // Otherwise, we will instantiate it and re-use it in the future.
+ _defaultObjectSerializer =
+ (_objectSerializer is JsonObjectSerializer)
+ ? _objectSerializer
+ : new JsonObjectSerializer();
+
options.AddPolicy(new BearerTokenAuthenticationPolicy(credential, GetAuthorizationScopes()), HttpPipelinePosition.PerCall);
_httpPipeline = HttpPipelineBuilder.Build(options);
@@ -2040,7 +2053,15 @@ async Task> FirstPageFunc(int? pageSizeHint)
MaxItemsPerPage = pageSizeHint
};
- Response> response = await _queryClient.QueryTwinsAsync(querySpecification, options, _objectSerializer, cancellationToken).ConfigureAwait(false);
+ Response> response = await _queryClient
+ .QueryTwinsAsync(
+ querySpecification,
+ options,
+ _objectSerializer,
+ _defaultObjectSerializer,
+ cancellationToken)
+ .ConfigureAwait(false);
+
return Page.FromValues(response.Value.Value, response.Value.ContinuationToken, response.GetRawResponse());
}
catch (Exception ex)
@@ -2067,7 +2088,15 @@ async Task> NextPageFunc(string nextLink, int? pageSizeHint)
MaxItemsPerPage = pageSizeHint
};
- Response> response = await _queryClient.QueryTwinsAsync(querySpecification, options, _objectSerializer, cancellationToken).ConfigureAwait(false);
+ Response> response = await _queryClient
+ .QueryTwinsAsync(
+ querySpecification,
+ options,
+ _objectSerializer,
+ _defaultObjectSerializer,
+ cancellationToken)
+ .ConfigureAwait(false);
+
return Page.FromValues(response.Value.Value, response.Value.ContinuationToken, response.GetRawResponse());
}
catch (Exception ex)
@@ -2135,7 +2164,14 @@ Page FirstPageFunc(int? pageSizeHint)
MaxItemsPerPage = pageSizeHint
};
- Response> response = _queryClient.QueryTwins(querySpecification, options, _objectSerializer, cancellationToken);
+ Response> response = _queryClient
+ .QueryTwins(
+ querySpecification,
+ options,
+ _objectSerializer,
+ _defaultObjectSerializer,
+ cancellationToken);
+
return Page.FromValues(response.Value.Value, response.Value.ContinuationToken, response.GetRawResponse());
}
catch (Exception ex)
@@ -2162,7 +2198,14 @@ Page NextPageFunc(string nextLink, int? pageSizeHint)
MaxItemsPerPage = pageSizeHint
};
- Response> response = _queryClient.QueryTwins(querySpecification, options, _objectSerializer, cancellationToken);
+ Response> response = _queryClient
+ .QueryTwins(
+ querySpecification,
+ options,
+ _objectSerializer,
+ _defaultObjectSerializer,
+ cancellationToken);
+
return Page.FromValues(response.Value.Value, response.Value.ContinuationToken, response.GetRawResponse());
}
catch (Exception ex)
diff --git a/sdk/digitaltwins/Azure.DigitalTwins.Core/src/Models/QueryResult.cs b/sdk/digitaltwins/Azure.DigitalTwins.Core/src/Models/QueryResult.cs
index f32868e0bd5e..3ebf3da285da 100644
--- a/sdk/digitaltwins/Azure.DigitalTwins.Core/src/Models/QueryResult.cs
+++ b/sdk/digitaltwins/Azure.DigitalTwins.Core/src/Models/QueryResult.cs
@@ -4,7 +4,6 @@
using System.Collections.Generic;
using System.IO;
using System.Text.Json;
-using Azure.Core;
using Azure.Core.Serialization;
namespace Azure.DigitalTwins.Core
@@ -25,14 +24,6 @@ internal partial class QueryResult
///
internal string ContinuationToken { get; }
- ///
- /// Initializes a new instance of QueryResult.
- ///
- internal QueryResult()
- {
- Value = new ChangeTrackingList();
- }
-
///
/// Initializes a new instance of QueryResult.
///
@@ -49,11 +40,13 @@ internal QueryResult(IReadOnlyList value, string continuationToken)
///
/// The JSON element to be deserialized into a QueryResult.
/// The object serializer instance used to deserialize the items in the collection.
+ /// The out of the box object serializer to interact with the JsonElement (serialize/deserialize into and out of streams).
/// A collection of query results deserialized into type .
- internal static QueryResult DeserializeQueryResult(JsonElement element, ObjectSerializer objectSerializer)
+ internal static QueryResult DeserializeQueryResult(JsonElement element, ObjectSerializer objectSerializer, ObjectSerializer defaultObjectSerializer)
{
IReadOnlyList items = default;
string continuationToken = default;
+
foreach (JsonProperty property in element.EnumerateObject())
{
if (property.NameEquals("value"))
@@ -62,13 +55,21 @@ internal static QueryResult DeserializeQueryResult(JsonElement element, Objec
{
continue;
}
+
var array = new List();
+
foreach (JsonElement item in property.Value.EnumerateArray())
{
- using MemoryStream streamedObject = StreamHelper.WriteToStream(item, objectSerializer, default);
+ // defaultObjectSerializer of type JsonObjectSerializer needs to be used to serialize the JsonElement into a stream.
+ // Using any other ObjectSerializer (e.g. NewtonsoftJsonObjectSerializer) won't be able to deserialize the JsonElement into
+ // a MemoryStream correctly.
+ using MemoryStream streamedObject = StreamHelper.WriteToStream(item, defaultObjectSerializer, default);
+
+ // To deserialize the stream object into the generic type of T, the provided ObjectSerializer will be used.
T obj = (T)objectSerializer.Deserialize(streamedObject, typeof(T), default);
array.Add(obj);
}
+
items = array;
continue;
}
diff --git a/sdk/digitaltwins/Azure.DigitalTwins.Core/src/StreamHelper.cs b/sdk/digitaltwins/Azure.DigitalTwins.Core/src/StreamHelper.cs
index 4d1aa1ef98e6..350604e497ea 100644
--- a/sdk/digitaltwins/Azure.DigitalTwins.Core/src/StreamHelper.cs
+++ b/sdk/digitaltwins/Azure.DigitalTwins.Core/src/StreamHelper.cs
@@ -42,7 +42,6 @@ internal static MemoryStream WriteToStream(T obj, ObjectSerializer objectSeri
var memoryStream = new MemoryStream();
objectSerializer.Serialize(memoryStream, obj, typeof(T), cancellationToken);
-
memoryStream.Seek(0, SeekOrigin.Begin);
return memoryStream;
diff --git a/sdk/digitaltwins/Azure.DigitalTwins.Core/tests/Azure.DigitalTwins.Core.Tests.csproj b/sdk/digitaltwins/Azure.DigitalTwins.Core/tests/Azure.DigitalTwins.Core.Tests.csproj
index dc84b4db70a4..b916746d7561 100644
--- a/sdk/digitaltwins/Azure.DigitalTwins.Core/tests/Azure.DigitalTwins.Core.Tests.csproj
+++ b/sdk/digitaltwins/Azure.DigitalTwins.Core/tests/Azure.DigitalTwins.Core.Tests.csproj
@@ -6,11 +6,13 @@
+
+
diff --git a/sdk/digitaltwins/Azure.DigitalTwins.Core/tests/NewtonsoftObjectSerializerTests.cs b/sdk/digitaltwins/Azure.DigitalTwins.Core/tests/NewtonsoftObjectSerializerTests.cs
new file mode 100644
index 000000000000..8e1d95cb9751
--- /dev/null
+++ b/sdk/digitaltwins/Azure.DigitalTwins.Core/tests/NewtonsoftObjectSerializerTests.cs
@@ -0,0 +1,94 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+using System;
+using System.Collections.Generic;
+using System.Threading.Tasks;
+using Azure.Core.Serialization;
+using FluentAssertions;
+using NUnit.Framework;
+
+namespace Azure.DigitalTwins.Core.Tests
+{
+ ///
+ /// Tests for custom ObjectSerializer.
+ /// Users can specify their own serializer/deserializer and not go with the default JsonObjectSerializer.
+ /// SDK needs to make sure it can properly use different serializers and the behavior is seamless.
+ /// Specifically, we have a work around in the query code which requires use of a System.Text.Json serializer because it works on a JsonElement.
+ /// When the user initializes with a non-default serializer, we must not use that to do this work.
+ ///
+ public class NewtonsoftObjectSerializerTests : E2eTestBase
+ {
+ public NewtonsoftObjectSerializerTests(bool isAsync)
+ : base(isAsync)
+ {
+ }
+
+ [Test]
+ public async Task TestNewtonsoftObjectSerializerWithDigitalTwins()
+ {
+ DigitalTwinsClient defaultClient = GetClient();
+
+ string roomTwinId = await GetUniqueTwinIdAsync(defaultClient, TestAssetDefaults.RoomTwinIdPrefix).ConfigureAwait(false);
+ string floorModelId = await GetUniqueModelIdAsync(defaultClient, TestAssetDefaults.FloorModelIdPrefix).ConfigureAwait(false);
+ string roomModelId = await GetUniqueModelIdAsync(defaultClient, TestAssetDefaults.RoomModelIdPrefix).ConfigureAwait(false);
+
+ try
+ {
+ // arrange
+
+ // create room model
+ string roomModel = TestAssetsHelper.GetRoomModelPayload(roomModelId, floorModelId);
+ await CreateAndListModelsAsync(defaultClient, new List { roomModel }).ConfigureAwait(false);
+
+ // act
+
+ // create room twin
+ BasicDigitalTwin roomTwin = TestAssetsHelper.GetRoomTwinPayload(roomModelId);
+ await defaultClient.CreateOrReplaceDigitalTwinAsync(roomTwinId, roomTwin).ConfigureAwait(false);
+
+ // Create a client with NewtonsoftJsonObjectSerializer configured as the serializer.
+ DigitalTwinsClient testClient = GetClient(
+ new DigitalTwinsClientOptions
+ {
+ Serializer = new NewtonsoftJsonObjectSerializer()
+ });
+
+ // Get digital twin using the simple DigitalTwin model annotated with Newtonsoft attributes
+ SimpleNewtonsoftDtModel getResponse = await testClient.GetDigitalTwinAsync(roomTwinId).ConfigureAwait(false);
+
+ getResponse.Id.Should().NotBeNullOrEmpty("Digital twin ID should not be null or empty");
+
+ // Query DigitalTwins using the simple DigitalTwin model annotated with Newtonsoft attributes
+ AsyncPageable queryResponse = testClient.QueryAsync("SELECT * FROM DIGITALTWINS");
+
+ await foreach (SimpleNewtonsoftDtModel twin in queryResponse)
+ {
+ twin.Id.Should().NotBeNullOrEmpty("Digital twin Id should not be null or empty");
+ }
+ }
+ finally
+ {
+ // cleanup
+ try
+ {
+ // delete twin
+ if (!string.IsNullOrWhiteSpace(roomTwinId))
+ {
+ await defaultClient.DeleteDigitalTwinAsync(roomTwinId).ConfigureAwait(false);
+ }
+
+ // delete models
+ if (!string.IsNullOrWhiteSpace(roomModelId))
+ {
+ await defaultClient.DeleteModelAsync(roomModelId).ConfigureAwait(false);
+ }
+ }
+ catch (Exception ex)
+ {
+ Assert.Fail($"Test clean up failed: {ex.Message}");
+ }
+ }
+ }
+ }
+}
diff --git a/sdk/digitaltwins/Azure.DigitalTwins.Core/tests/SessionRecords/NewtonsoftObjectSerializerTests/TestNewtonsoftObjectSerializerWithDigitalTwins.json b/sdk/digitaltwins/Azure.DigitalTwins.Core/tests/SessionRecords/NewtonsoftObjectSerializerTests/TestNewtonsoftObjectSerializerWithDigitalTwins.json
new file mode 100644
index 000000000000..7530df002b0f
--- /dev/null
+++ b/sdk/digitaltwins/Azure.DigitalTwins.Core/tests/SessionRecords/NewtonsoftObjectSerializerTests/TestNewtonsoftObjectSerializerWithDigitalTwins.json
@@ -0,0 +1,2143 @@
+{
+ "Entries": [
+ {
+ "RequestUri": "https://fakeHost.api.wus2.digitaltwins.azure.net/digitaltwins/roomTwin1430706564?api-version=2020-10-31",
+ "RequestMethod": "GET",
+ "RequestHeaders": {
+ "Accept": "application/json",
+ "Authorization": "Sanitized",
+ "traceparent": "00-94268e797b46484ba32ad82cb8f32b1a-8530dc8f38b1f64c-00",
+ "User-Agent": [
+ "azsdk-net-DigitalTwins.Core/1.3.0-alpha.20210203.1",
+ "(.NET 5.0.1-servicing.20575.16; Microsoft Windows 10.0.18363)"
+ ],
+ "x-ms-client-request-id": "ee670b1f86883f706b9cc45a7502e2cd",
+ "x-ms-return-client-request-id": "true"
+ },
+ "RequestBody": null,
+ "StatusCode": 404,
+ "ResponseHeaders": {
+ "Content-Length": "271",
+ "Content-Type": "application/json; charset=utf-8",
+ "Date": "Wed, 03 Feb 2021 17:46:19 GMT",
+ "Strict-Transport-Security": "max-age=2592000",
+ "traceresponse": "00-94268e797b46484ba32ad82cb8f32b1a-6eb08bdcacaf964b-01"
+ },
+ "ResponseBody": {
+ "error": {
+ "code": "DigitalTwinNotFound",
+ "message": "There is no digital twin instance that exists with the ID roomTwin1430706564. Please verify that the twin id is valid and ensure that the twin is not deleted. See section on querying the twins http://aka.ms/adtv2query."
+ }
+ }
+ },
+ {
+ "RequestUri": "https://fakeHost.api.wus2.digitaltwins.azure.net/models/dtmi%3Aexample%3Afloor%3B11267207?includeModelDefinition=true\u0026api-version=2020-10-31",
+ "RequestMethod": "GET",
+ "RequestHeaders": {
+ "Accept": "application/json",
+ "Authorization": "Sanitized",
+ "traceparent": "00-fb0e3f2b93957b4187fe043186a66103-64705bfe5b796e4a-00",
+ "User-Agent": [
+ "azsdk-net-DigitalTwins.Core/1.3.0-alpha.20210203.1",
+ "(.NET 5.0.1-servicing.20575.16; Microsoft Windows 10.0.18363)"
+ ],
+ "x-ms-client-request-id": "28d270be2fa2004e00b47d1c56db47c9",
+ "x-ms-return-client-request-id": "true"
+ },
+ "RequestBody": null,
+ "StatusCode": 404,
+ "ResponseHeaders": {
+ "Content-Length": "212",
+ "Content-Type": "application/json; charset=utf-8",
+ "Date": "Wed, 03 Feb 2021 17:46:19 GMT",
+ "Strict-Transport-Security": "max-age=2592000",
+ "traceresponse": "00-fb0e3f2b93957b4187fe043186a66103-11c15fbe57b35c4e-01"
+ },
+ "ResponseBody": {
+ "error": {
+ "code": "ModelNotFound",
+ "message": "There is no Model(s) available that matches the provided id(s) dtmi:example:floor;11267207. Check that the Model ID provided is valid by doing a Model_List API call."
+ }
+ }
+ },
+ {
+ "RequestUri": "https://fakeHost.api.wus2.digitaltwins.azure.net/models/dtmi%3Aexample%3Aroom%3B149813251?includeModelDefinition=true\u0026api-version=2020-10-31",
+ "RequestMethod": "GET",
+ "RequestHeaders": {
+ "Accept": "application/json",
+ "Authorization": "Sanitized",
+ "traceparent": "00-b3d2f15649adef438844141ed973eb2c-35f11ce18040174f-00",
+ "User-Agent": [
+ "azsdk-net-DigitalTwins.Core/1.3.0-alpha.20210203.1",
+ "(.NET 5.0.1-servicing.20575.16; Microsoft Windows 10.0.18363)"
+ ],
+ "x-ms-client-request-id": "b96248db1a536e3e7e415f38a7a438a1",
+ "x-ms-return-client-request-id": "true"
+ },
+ "RequestBody": null,
+ "StatusCode": 404,
+ "ResponseHeaders": {
+ "Content-Length": "212",
+ "Content-Type": "application/json; charset=utf-8",
+ "Date": "Wed, 03 Feb 2021 17:46:19 GMT",
+ "Strict-Transport-Security": "max-age=2592000",
+ "traceresponse": "00-b3d2f15649adef438844141ed973eb2c-c691a052d2bdba48-01"
+ },
+ "ResponseBody": {
+ "error": {
+ "code": "ModelNotFound",
+ "message": "There is no Model(s) available that matches the provided id(s) dtmi:example:room;149813251. Check that the Model ID provided is valid by doing a Model_List API call."
+ }
+ }
+ },
+ {
+ "RequestUri": "https://fakeHost.api.wus2.digitaltwins.azure.net/models?api-version=2020-10-31",
+ "RequestMethod": "POST",
+ "RequestHeaders": {
+ "Accept": "application/json",
+ "Authorization": "Sanitized",
+ "Content-Length": "804",
+ "Content-Type": "application/json",
+ "traceparent": "00-185e14d10fa0ec4fab2b984e2825d508-0c0dea7ec14f264f-00",
+ "User-Agent": [
+ "azsdk-net-DigitalTwins.Core/1.3.0-alpha.20210203.1",
+ "(.NET 5.0.1-servicing.20575.16; Microsoft Windows 10.0.18363)"
+ ],
+ "x-ms-client-request-id": "ca8f95927d5c19dbee88d1f22214c17d",
+ "x-ms-return-client-request-id": "true"
+ },
+ "RequestBody": "[{ \u0022@id\u0022: \u0022dtmi:example:room;149813251\u0022, \u0022@type\u0022: \u0022Interface\u0022, \u0022displayName\u0022: \u0022Room\u0022, \u0022description\u0022: \u0022An enclosure inside a building.\u0022, \u0022contents\u0022: [ { \u0022@type\u0022: \u0022Relationship\u0022, \u0022name\u0022: \u0022containedIn\u0022, \u0022target\u0022: \u0022dtmi:example:floor;11267207\u0022 }, { \u0022@type\u0022: \u0022Property\u0022, \u0022name\u0022: \u0022Temperature\u0022, \u0022schema\u0022: \u0022double\u0022 }, { \u0022@type\u0022: \u0022Property\u0022, \u0022name\u0022: \u0022Humidity\u0022, \u0022schema\u0022: \u0022double\u0022 }, { \u0022@type\u0022: \u0022Property\u0022, \u0022name\u0022: \u0022IsOccupied\u0022, \u0022schema\u0022: \u0022boolean\u0022 }, { \u0022@type\u0022: \u0022Property\u0022, \u0022name\u0022: \u0022EmployeeId\u0022, \u0022schema\u0022: \u0022string\u0022 } ], \u0022@context\u0022: \u0022dtmi:dtdl:context;2\u0022}]",
+ "StatusCode": 201,
+ "ResponseHeaders": {
+ "Content-Length": "193",
+ "Content-Type": "application/json; charset=utf-8",
+ "Date": "Wed, 03 Feb 2021 17:46:19 GMT",
+ "Strict-Transport-Security": "max-age=2592000",
+ "traceresponse": "00-185e14d10fa0ec4fab2b984e2825d508-cc3f7dbc3a09d646-01"
+ },
+ "ResponseBody": "[{\u0022id\u0022:\u0022dtmi:example:room;149813251\u0022,\u0022description\u0022:{\u0022en\u0022:\u0022An enclosure inside a building.\u0022},\u0022displayName\u0022:{\u0022en\u0022:\u0022Room\u0022},\u0022decommissioned\u0022:false,\u0022uploadTime\u0022:\u00222021-02-03T17:46:19.7890657\u002B00:00\u0022}]"
+ },
+ {
+ "RequestUri": "https://fakeHost.api.wus2.digitaltwins.azure.net/models?api-version=2020-10-31",
+ "RequestMethod": "GET",
+ "RequestHeaders": {
+ "Accept": "application/json",
+ "Authorization": "Sanitized",
+ "traceparent": "00-78f4b792a7c9dd43947cf7ecb4355d14-37cebd78cebb5d4c-00",
+ "User-Agent": [
+ "azsdk-net-DigitalTwins.Core/1.3.0-alpha.20210203.1",
+ "(.NET 5.0.1-servicing.20575.16; Microsoft Windows 10.0.18363)"
+ ],
+ "x-ms-client-request-id": "99265191cd6a556a93b923eeeec7590f",
+ "x-ms-return-client-request-id": "true"
+ },
+ "RequestBody": null,
+ "StatusCode": 200,
+ "ResponseHeaders": {
+ "Content-Length": "12535",
+ "Content-Type": "application/json; charset=utf-8",
+ "Date": "Wed, 03 Feb 2021 17:46:19 GMT",
+ "Strict-Transport-Security": "max-age=2592000",
+ "traceresponse": "00-78f4b792a7c9dd43947cf7ecb4355d14-185f012138a6264f-01"
+ },
+ "ResponseBody": {
+ "value": [
+ {
+ "id": "dtmi:example:Ward;154155931",
+ "description": {
+ "en": "A separate partition in a building, made of rooms and hallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-12T23:39:00.6914759\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;145613168",
+ "description": {
+ "en": "A separate partition in a building, made of rooms and hallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-12T23:39:00.6923131\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:room;133999852",
+ "description": {
+ "en": "An enclosure inside a building."
+ },
+ "displayName": {
+ "en": "Room"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-12T23:39:00.8468548\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:room;111892730",
+ "description": {
+ "en": "An enclosure inside a building."
+ },
+ "displayName": {
+ "en": "Room"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-12T23:39:01.4893239\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;181053342",
+ "description": {
+ "en": "A separate partition in a building, made of rooms and hallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-12T23:39:01.8055239\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;118112199",
+ "description": {
+ "en": "A separate partition in a building, made of rooms and hallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-12T23:39:01.9458203\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Building;1734752",
+ "description": {
+ "en": "Afree-standingstructure."
+ },
+ "displayName": {
+ "en": "Building"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:22:06.544589\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Hvac;1455457",
+ "description": {
+ "en": "Aheating,ventilation,andairconditioningunit."
+ },
+ "displayName": {
+ "en": "HVAC"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:22:06.5446266\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1475050",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:22:06.5446476\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Building;1190300",
+ "description": {
+ "en": "Afree-standingstructure."
+ },
+ "displayName": {
+ "en": "Building"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:22:06.9320071\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Hvac;1986367",
+ "description": {
+ "en": "Aheating,ventilation,andairconditioningunit."
+ },
+ "displayName": {
+ "en": "HVAC"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:22:06.9320364\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1888485",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:22:06.932053\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1548262",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:22:07.6974692\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Building;1066046",
+ "description": {
+ "en": "Afree-standingstructure."
+ },
+ "displayName": {
+ "en": "Building"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:22:16.3332236\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Hvac;1634334",
+ "description": {
+ "en": "Aheating,ventilation,andairconditioningunit."
+ },
+ "displayName": {
+ "en": "HVAC"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:22:16.3332519\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1089118",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:22:16.3332689\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1882161",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:22:17.0853142\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Building;1822742",
+ "description": {
+ "en": "Afree-standingstructure."
+ },
+ "displayName": {
+ "en": "Building"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:24:23.0141874\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Hvac;1180692",
+ "description": {
+ "en": "Aheating,ventilation,andairconditioningunit."
+ },
+ "displayName": {
+ "en": "HVAC"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:24:23.0142213\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1527130",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:24:23.0142444\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1781699",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:24:24.1119772\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Building;1617621",
+ "description": {
+ "en": "Afree-standingstructure."
+ },
+ "displayName": {
+ "en": "Building"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:24:33.5352077\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Hvac;1134858",
+ "description": {
+ "en": "Aheating,ventilation,andairconditioningunit."
+ },
+ "displayName": {
+ "en": "HVAC"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:24:33.5352424\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1712969",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:24:33.5352652\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1474799",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:24:34.7165797\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Building;1350530",
+ "description": {
+ "en": "Afree-standingstructure."
+ },
+ "displayName": {
+ "en": "Building"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:26:20.2901271\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Hvac;1762171",
+ "description": {
+ "en": "Aheating,ventilation,andairconditioningunit."
+ },
+ "displayName": {
+ "en": "HVAC"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:26:20.2902086\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1615597",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:26:20.290229\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1830135",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:26:21.1974929\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Building;1957271",
+ "description": {
+ "en": "Afree-standingstructure."
+ },
+ "displayName": {
+ "en": "Building"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:26:28.1822238\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Hvac;1544799",
+ "description": {
+ "en": "Aheating,ventilation,andairconditioningunit."
+ },
+ "displayName": {
+ "en": "HVAC"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:26:28.1822593\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1158158",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:26:28.1822814\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1890267",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:26:29.1430355\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Building;1497822",
+ "description": {
+ "en": "Afree-standingstructure."
+ },
+ "displayName": {
+ "en": "Building"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:28:43.1253465\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Hvac;1951340",
+ "description": {
+ "en": "Aheating,ventilation,andairconditioningunit."
+ },
+ "displayName": {
+ "en": "HVAC"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:28:43.1253771\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1756932",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:28:43.1253961\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1398142",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:28:44.5335538\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Building;1603592",
+ "description": {
+ "en": "Afree-standingstructure."
+ },
+ "displayName": {
+ "en": "Building"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:28:54.8008172\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Hvac;1384592",
+ "description": {
+ "en": "Aheating,ventilation,andairconditioningunit."
+ },
+ "displayName": {
+ "en": "HVAC"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:28:54.8008622\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1731623",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:28:54.8008805\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1532010",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:28:58.3645375\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:room;1506729",
+ "description": {
+ "en": "Anenclosureinsideabuilding."
+ },
+ "displayName": {
+ "en": "Room"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:54:08.4752622\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:room;1312262",
+ "description": {
+ "en": "Anenclosureinsideabuilding."
+ },
+ "displayName": {
+ "en": "Room"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:59:27.9783165\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:room;1867454",
+ "description": {
+ "en": "Anenclosureinsideabuilding."
+ },
+ "displayName": {
+ "en": "Room"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T20:00:45.1707261\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Building;1413132",
+ "description": {
+ "en": "Afree-standingstructure."
+ },
+ "displayName": {
+ "en": "Building"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T20:05:37.8242053\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Hvac;1008415",
+ "description": {
+ "en": "Aheating,ventilation,andairconditioningunit."
+ },
+ "displayName": {
+ "en": "HVAC"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T20:05:37.824234\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1009686",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T20:05:37.8242498\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1277563",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T20:05:39.2372893\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Building;1014437",
+ "description": {
+ "en": "Afree-standingstructure."
+ },
+ "displayName": {
+ "en": "Building"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T20:05:46.8489933\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Hvac;1295996",
+ "description": {
+ "en": "Aheating,ventilation,andairconditioningunit."
+ },
+ "displayName": {
+ "en": "HVAC"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T20:05:46.8490202\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1191474",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T20:05:46.8490373\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1499878",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T20:05:48.0720751\u002B00:00"
+ },
+ {
+ "id": "dtmi:com:samples:ComponentModel;6174",
+ "description": {},
+ "displayName": {
+ "en": "Component1"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-29T23:30:03.3607167\u002B00:00"
+ },
+ {
+ "id": "dtmi:com:samples:Building;1",
+ "description": {},
+ "displayName": {
+ "en": "Building"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-02-02T23:27:49.0704576\u002B00:00"
+ },
+ {
+ "id": "dtmi:com:samples:Floor;1",
+ "description": {},
+ "displayName": {
+ "en": "Floor"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-02-02T23:27:49.0704794\u002B00:00"
+ },
+ {
+ "id": "dtmi:com:samples:HVAC;1",
+ "description": {},
+ "displayName": {
+ "en": "HVAC"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-02-02T23:27:49.0705227\u002B00:00"
+ },
+ {
+ "id": "dtmi:com:samples:Room;1",
+ "description": {},
+ "displayName": {
+ "en": "Room"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-02-02T23:27:49.0705463\u002B00:00"
+ },
+ {
+ "id": "dtmi:com:samples:Wifi;1",
+ "description": {},
+ "displayName": {
+ "en": "Wifi"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-02-02T23:27:49.0705686\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:room;116029261",
+ "description": {
+ "en": "An enclosure inside a building."
+ },
+ "displayName": {
+ "en": "Room"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-02-03T03:13:35.4814974\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:room;195438086",
+ "description": {
+ "en": "An enclosure inside a building."
+ },
+ "displayName": {
+ "en": "Room"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-02-03T03:21:36.3092503\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:room;19885524",
+ "description": {
+ "en": "An enclosure inside a building."
+ },
+ "displayName": {
+ "en": "Room"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-02-03T03:25:50.3518595\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:room;149813251",
+ "description": {
+ "en": "An enclosure inside a building."
+ },
+ "displayName": {
+ "en": "Room"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-02-03T17:46:19.7890657\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:room;176638439",
+ "description": {
+ "en": "An enclosure inside a building."
+ },
+ "displayName": {
+ "en": "Room"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-02-03T17:46:19.8291397\u002B00:00"
+ }
+ ],
+ "nextLink": null
+ }
+ },
+ {
+ "RequestUri": "https://fakeHost.api.wus2.digitaltwins.azure.net/digitaltwins/roomTwin1430706564?api-version=2020-10-31",
+ "RequestMethod": "PUT",
+ "RequestHeaders": {
+ "Accept": "application/json",
+ "Authorization": "Sanitized",
+ "Content-Length": "154",
+ "Content-Type": "application/json",
+ "traceparent": "00-f20bbfa2fe375b4eb05576904ca5da4f-c80bbb911f20e24d-00",
+ "User-Agent": [
+ "azsdk-net-DigitalTwins.Core/1.3.0-alpha.20210203.1",
+ "(.NET 5.0.1-servicing.20575.16; Microsoft Windows 10.0.18363)"
+ ],
+ "x-ms-client-request-id": "45c47b44feb75ec76d49cbcb494c4c69",
+ "x-ms-return-client-request-id": "true"
+ },
+ "RequestBody": {
+ "$dtId": null,
+ "$etag": null,
+ "$metadata": {
+ "$model": "dtmi:example:room;149813251"
+ },
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1"
+ },
+ "StatusCode": 200,
+ "ResponseHeaders": {
+ "Content-Length": "461",
+ "Content-Type": "application/json; charset=utf-8",
+ "Date": "Wed, 03 Feb 2021 17:46:19 GMT",
+ "ETag": "W/\u00222aa47b84-fbfa-4c41-aac0-d2e0d6bfb309\u0022",
+ "Strict-Transport-Security": "max-age=2592000",
+ "traceresponse": "00-f20bbfa2fe375b4eb05576904ca5da4f-ac199edd5727d54b-01"
+ },
+ "ResponseBody": {
+ "$dtId": "roomTwin1430706564",
+ "$etag": "W/\u00222aa47b84-fbfa-4c41-aac0-d2e0d6bfb309\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;149813251",
+ "Temperature": {
+ "lastUpdateTime": "2021-02-03T17:46:19.9201685Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-02-03T17:46:19.9201685Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-02-03T17:46:19.9201685Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-02-03T17:46:19.9201685Z"
+ }
+ }
+ }
+ },
+ {
+ "RequestUri": "https://fakeHost.api.wus2.digitaltwins.azure.net/digitaltwins/roomTwin1430706564?api-version=2020-10-31",
+ "RequestMethod": "GET",
+ "RequestHeaders": {
+ "Accept": "application/json",
+ "Authorization": "Sanitized",
+ "traceparent": "00-ac1cdf807a2e544b876064da2789f5d7-9b0777a3fe93054e-00",
+ "User-Agent": [
+ "azsdk-net-DigitalTwins.Core/1.3.0-alpha.20210203.1",
+ "(.NET 5.0.1-servicing.20575.16; Microsoft Windows 10.0.18363)"
+ ],
+ "x-ms-client-request-id": "55a7e27f9e7ec4362b3936a359ed2b26",
+ "x-ms-return-client-request-id": "true"
+ },
+ "RequestBody": null,
+ "StatusCode": 200,
+ "ResponseHeaders": {
+ "Content-Length": "461",
+ "Content-Type": "application/json; charset=utf-8",
+ "Date": "Wed, 03 Feb 2021 17:46:19 GMT",
+ "ETag": "W/\u00222aa47b84-fbfa-4c41-aac0-d2e0d6bfb309\u0022",
+ "Strict-Transport-Security": "max-age=2592000",
+ "traceresponse": "00-ac1cdf807a2e544b876064da2789f5d7-ce676d855b759140-01"
+ },
+ "ResponseBody": {
+ "$dtId": "roomTwin1430706564",
+ "$etag": "W/\u00222aa47b84-fbfa-4c41-aac0-d2e0d6bfb309\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;149813251",
+ "Temperature": {
+ "lastUpdateTime": "2021-02-03T17:46:19.9201685Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-02-03T17:46:19.9201685Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-02-03T17:46:19.9201685Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-02-03T17:46:19.9201685Z"
+ }
+ }
+ }
+ },
+ {
+ "RequestUri": "https://fakeHost.api.wus2.digitaltwins.azure.net/query?api-version=2020-10-31",
+ "RequestMethod": "POST",
+ "RequestHeaders": {
+ "Accept": "application/json",
+ "Authorization": "Sanitized",
+ "Content-Length": "38",
+ "Content-Type": "application/json",
+ "traceparent": "00-b1c736c840cd484ca9b8ae50b25bae7c-dc1d9c7619e06e40-00",
+ "User-Agent": [
+ "azsdk-net-DigitalTwins.Core/1.3.0-alpha.20210203.1",
+ "(.NET 5.0.1-servicing.20575.16; Microsoft Windows 10.0.18363)"
+ ],
+ "x-ms-client-request-id": "a6adc12f7c5092c58ac82c21019f0c47",
+ "x-ms-return-client-request-id": "true"
+ },
+ "RequestBody": {
+ "query": "SELECT * FROM DIGITALTWINS"
+ },
+ "StatusCode": 200,
+ "ResponseHeaders": {
+ "Content-Type": "application/json; charset=utf-8",
+ "Date": "Wed, 03 Feb 2021 17:46:19 GMT",
+ "query-charge": "10.12",
+ "Strict-Transport-Security": "max-age=2592000",
+ "traceresponse": "00-b1c736c840cd484ca9b8ae50b25bae7c-2246eb90c5600f46-01",
+ "Transfer-Encoding": "chunked"
+ },
+ "ResponseBody": {
+ "value": [
+ {
+ "$dtId": "roomTwin460152108",
+ "$etag": "W/\u0022c14258f3-f518-4569-94b7-5b6a7009bd4b\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;111892730",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:01.5919399Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:01.5919399Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:01.5919399Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:01.5919399Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin1420781814",
+ "$etag": "W/\u002215823347-e6e5-4250-a774-a3735d9303e1\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;133999852",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:00.9812114Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:00.9812114Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:00.9812114Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:00.9812114Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin1320328829",
+ "$etag": "W/\u0022dee956ef-7343-4a8e-b5aa-94d64f1b468d\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;116845994",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:01.0108998Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:01.0108998Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:01.0108998Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:01.0108998Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin1171852527",
+ "$etag": "W/\u0022c7f421ee-7902-4289-8868-38ff79815e3f\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;163554513",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:02.0540624Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:02.0540624Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:02.0540624Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:02.0540624Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin1019252643",
+ "$etag": "W/\u002285191640-cb26-4c66-a264-8f08e1e63485\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;118127707",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:01.7326593Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:01.7326593Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:01.7326593Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:01.7326593Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin898922460",
+ "$etag": "W/\u0022e069c97b-c9bd-4c01-804e-9a62c1598ebc\u0022",
+ "Temperature": 70,
+ "Humidity": 30,
+ "IsOccupied": true,
+ "$metadata": {
+ "$model": "dtmi:example:room;170118024",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:02.8712463Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:02.8712463Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:02.7880790Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin958754835",
+ "$etag": "W/\u00229a25e697-7c99-4372-a1d1-73a3584dd0ce\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;196301502",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:00.9648281Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:00.9648281Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:00.9648281Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:00.9648281Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin1474340914",
+ "$etag": "W/\u0022de67105c-b008-4468-a455-66f455271827\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;160194944",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:02.8496985Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:02.8496985Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:02.8496985Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:02.8496985Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin788116830",
+ "$etag": "W/\u00226c936a90-ffd1-48e3-81c3-b40ac3a3b65d\u0022",
+ "Temperature": 70,
+ "Humidity": 30,
+ "IsOccupied": true,
+ "$metadata": {
+ "$model": "dtmi:example:room;139380843",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:03.3817391Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:03.3817391Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:03.2854024Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin2114072427",
+ "$etag": "W/\u0022977e9abd-8343-476b-a5e1-cbd5fa5c955d\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;114297411",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:02.3157643Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:02.3157643Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:02.3157643Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:02.3157643Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin1701250104",
+ "$etag": "W/\u0022a69fafd6-d74a-4f88-89f6-01f69605a005\u0022",
+ "Temperature": 70,
+ "Humidity": 30,
+ "IsOccupied": true,
+ "$metadata": {
+ "$model": "dtmi:example:room;121095457",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:04.8505962Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:04.8505962Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:04.7716505Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin1500965769",
+ "$etag": "W/\u0022bf630b74-c175-4fb8-a83d-45e3baab71fb\u0022",
+ "Temperature": 70,
+ "Humidity": 30,
+ "IsOccupied": true,
+ "$metadata": {
+ "$model": "dtmi:example:room;154962552",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:05.0732015Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:05.0732015Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:04.9949133Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin869533390",
+ "$etag": "W/\u002289e13884-7481-4fc5-b803-3931c746fe42\u0022",
+ "Temperature": 70,
+ "Humidity": 80,
+ "IsOccupied": true,
+ "$metadata": {
+ "$model": "dtmi:example:room;110330782",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:05.3490298Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:05.4214756Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:05.2988498Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin298405819",
+ "$etag": "W/\u0022ecc3c21b-e6dd-45eb-9aa6-02ae422e5b53\u0022",
+ "Temperature": 70,
+ "Humidity": 80,
+ "IsOccupied": true,
+ "$metadata": {
+ "$model": "dtmi:example:room;117174263",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:05.5359604Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:05.6061579Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:05.4861448Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin1043399473",
+ "$etag": "W/\u0022109b2419-637c-4ce0-901e-12ff446a47e2\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;115780864",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.1063553Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.1063553Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.1063553Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.1063553Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin1755945808",
+ "$etag": "W/\u0022f4f88b1a-f016-4bdd-8ff7-28e548165d3a\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;119708157",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.1545499Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.1545499Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.1545499Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.1545499Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin394889929",
+ "$etag": "W/\u00222694a5ef-8bfe-481b-b279-268e29183c65\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;115780864",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.2239978Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.2239978Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.2239978Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.2239978Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin222731943",
+ "$etag": "W/\u0022049808dc-629e-4a2c-8d87-26e4d798c020\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;119708157",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.2706063Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.2706063Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.2706063Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.2706063Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin406365159",
+ "$etag": "W/\u00229b710bc4-44bd-420e-b799-4bcbf9f7a000\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;115780864",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.3434533Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.3434533Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.3434533Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.3434533Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin261798201",
+ "$etag": "W/\u0022825684fb-5321-43aa-87cb-c22b2dc4e5b8\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;119708157",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.4016374Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.4016374Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.4016374Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.4016374Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin2103656111",
+ "$etag": "W/\u0022ad688175-f6f3-48d7-aa2a-68c427974f58\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;115780864",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.4456522Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.4456522Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.4456522Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.4456522Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin517701651",
+ "$etag": "W/\u0022bb4caafd-aced-4f87-8022-b7d13a08188b\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;119708157",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.4948790Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.4948790Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.4948790Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.4948790Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin419605825",
+ "$etag": "W/\u00222d290fc3-d225-49a6-86a9-128c7df273ab\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;115780864",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.5511476Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.5511476Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.5511476Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.5511476Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin1973949077",
+ "$etag": "W/\u002275340c9f-b967-46b8-b394-318dccfeae7c\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;119708157",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.6220107Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.6220107Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.6220107Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.6220107Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin858105055",
+ "$etag": "W/\u002212bad670-c7a8-4599-a9c6-28416afe7145\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;115780864",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.6512000Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.6512000Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.6512000Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.6512000Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin428015386",
+ "$etag": "W/\u00225cc173c7-38ee-4b6a-953f-518936f90b1f\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;119708157",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.7613366Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.7613366Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.7613366Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.7613366Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin2103316411",
+ "$etag": "W/\u0022d55e6abe-9221-4a2a-875d-958c2b9ea127\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;115780864",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.7614046Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.7614046Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.7614046Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.7614046Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin159399716",
+ "$etag": "W/\u002250be124e-acb3-47f4-a981-d4e08601e876\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;115780864",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.8709030Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.8709030Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.8709030Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.8709030Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin2115596528",
+ "$etag": "W/\u00229c1c216c-0f8c-4b67-aecc-aea37f9c12f3\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;119708157",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.9007131Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.9007131Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.9007131Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.9007131Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin979747018",
+ "$etag": "W/\u002238f7995f-f224-4d1e-b48d-fd3d2572284f\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;115780864",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.9550226Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.9550226Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.9550226Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.9550226Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin747583795",
+ "$etag": "W/\u0022c41c71c4-2227-4ed3-bb04-6d69a7e46a88\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;119708157",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.9772813Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.9772813Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.9772813Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.9772813Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin1234052869",
+ "$etag": "W/\u0022cd915e94-4d74-4644-8667-e5d0341b954d\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;115780864",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:07.0561169Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:07.0561169Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:07.0561169Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:07.0561169Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin416498780",
+ "$etag": "W/\u0022c717cdb8-9cae-44c9-bc0b-770c66de6f7d\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;119708157",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:07.0760150Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:07.0760150Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:07.0760150Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:07.0760150Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin952596496",
+ "$etag": "W/\u0022ed52c3eb-24d3-4c58-8ad8-7b0616b3324a\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;119708157",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:07.2030253Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:07.2030253Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:07.2030253Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:07.2030253Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin798293087",
+ "$etag": "W/\u0022a8018f03-6a52-4e02-83f2-c3a72fa982dc\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;131459891",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:07.9708016Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:07.9708016Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:07.9708016Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:07.9708016Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin1346838400",
+ "$etag": "W/\u002275e9b3e0-2d8e-443c-9b3c-76c6bf3f56d5\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;153942695",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:08.0323481Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:08.0323481Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:08.0323481Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:08.0323481Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin844044",
+ "$etag": "W/\u0022341bd569-8d62-475c-a368-85c814877df0\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;1506729",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-13T19:54:08.7062444Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-13T19:54:08.7062444Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-13T19:54:08.7062444Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-13T19:54:08.7062444Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin070857",
+ "$etag": "W/\u0022fb6537b8-c035-480e-b8f4-7fd5d9571783\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;1506729",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-13T19:54:08.9898340Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-13T19:54:08.9898340Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-13T19:54:08.9898340Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-13T19:54:08.9898340Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin381161",
+ "$etag": "W/\u0022fb20bb6b-923c-42e0-82c2-c878adebec14\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;1506729",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-13T19:54:09.1106256Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-13T19:54:09.1106256Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-13T19:54:09.1106256Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-13T19:54:09.1106256Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin246198",
+ "$etag": "W/\u0022cd5b90ba-d932-4d39-8aad-d36355a1fe1e\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;1506729",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-13T19:54:08.8814499Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-13T19:54:08.8814499Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-13T19:54:08.8814499Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-13T19:54:08.8814499Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin766189",
+ "$etag": "W/\u00221fac2335-a558-403b-96d3-a79dc2d202dd\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;1312262",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-13T19:59:28.1474235Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-13T19:59:28.1474235Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-13T19:59:28.1474235Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-13T19:59:28.1474235Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin739702",
+ "$etag": "W/\u00226a280d75-5537-4fef-a671-e3b58194830a\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;1312262",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-13T19:59:28.3057860Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-13T19:59:28.3057860Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-13T19:59:28.3057860Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-13T19:59:28.3057860Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin544952",
+ "$etag": "W/\u002248429892-9afa-4ce7-a5f8-a5ed0da53da7\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;1312262",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-13T19:59:28.4553352Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-13T19:59:28.4553352Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-13T19:59:28.4553352Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-13T19:59:28.4553352Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin830667",
+ "$etag": "W/\u002243e7a0ad-60b7-4daa-afaf-b81088d49f9d\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;1312262",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-13T19:59:28.6062951Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-13T19:59:28.6062951Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-13T19:59:28.6062951Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-13T19:59:28.6062951Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin372470",
+ "$etag": "W/\u0022b7bf5c12-9408-454d-8408-6ed2ca7f703b\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;1867454",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-13T20:00:45.6593182Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-13T20:00:45.6593182Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-13T20:00:45.6593182Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-13T20:00:45.6593182Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin566336",
+ "$etag": "W/\u0022e3674b63-2f7e-4e7c-b1f4-3651fb5c130e\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;1867454",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-13T20:00:45.4717291Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-13T20:00:45.4717291Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-13T20:00:45.4717291Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-13T20:00:45.4717291Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin803247",
+ "$etag": "W/\u00224e743e14-1f6b-4c0a-8950-2fda7a65b9f8\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;1867454",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-13T20:00:45.7916041Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-13T20:00:45.7916041Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-13T20:00:45.7916041Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-13T20:00:45.7916041Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin445180",
+ "$etag": "W/\u002285ee93d1-be61-44bf-b905-63e0b0b046dc\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;1867454",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-13T20:00:45.3327033Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-13T20:00:45.3327033Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-13T20:00:45.3327033Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-13T20:00:45.3327033Z"
+ }
+ }
+ },
+ {
+ "$dtId": "BuildingTwin",
+ "$etag": "W/\u0022d54dde15-aff7-4b0c-b898-f66804a4ca74\u0022",
+ "AverageTemperature": 68,
+ "TemperatureUnit": "Celsius",
+ "$metadata": {
+ "$model": "dtmi:com:samples:Building;1",
+ "AverageTemperature": {
+ "lastUpdateTime": "2021-02-02T23:27:56.3899645Z"
+ },
+ "TemperatureUnit": {
+ "lastUpdateTime": "2021-02-02T23:27:56.3899645Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin1220449681",
+ "$etag": "W/\u00220c94367b-5077-402c-a2ca-51b4bd27fb4e\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;116029261",
+ "Temperature": {
+ "lastUpdateTime": "2021-02-03T03:13:35.8100173Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-02-03T03:13:35.8100173Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-02-03T03:13:35.8100173Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-02-03T03:13:35.8100173Z"
+ }
+ }
+ }
+ ],
+ "continuationToken": null
+ }
+ },
+ {
+ "RequestUri": "https://fakeHost.api.wus2.digitaltwins.azure.net/digitaltwins/roomTwin1430706564?api-version=2020-10-31",
+ "RequestMethod": "DELETE",
+ "RequestHeaders": {
+ "Accept": "application/json",
+ "Authorization": "Sanitized",
+ "traceparent": "00-9c090f676f27464085556c162093c8f2-3a49aa414caaa24d-00",
+ "User-Agent": [
+ "azsdk-net-DigitalTwins.Core/1.3.0-alpha.20210203.1",
+ "(.NET 5.0.1-servicing.20575.16; Microsoft Windows 10.0.18363)"
+ ],
+ "x-ms-client-request-id": "0c6eb96d0320a59144ff1a7ec7240480",
+ "x-ms-return-client-request-id": "true"
+ },
+ "RequestBody": null,
+ "StatusCode": 204,
+ "ResponseHeaders": {
+ "Content-Length": "0",
+ "Date": "Wed, 03 Feb 2021 17:46:19 GMT",
+ "Strict-Transport-Security": "max-age=2592000",
+ "traceresponse": "00-9c090f676f27464085556c162093c8f2-48d9bb3f6a0f3648-01"
+ },
+ "ResponseBody": []
+ },
+ {
+ "RequestUri": "https://fakeHost.api.wus2.digitaltwins.azure.net/models/dtmi%3Aexample%3Aroom%3B149813251?api-version=2020-10-31",
+ "RequestMethod": "DELETE",
+ "RequestHeaders": {
+ "Accept": "application/json",
+ "Authorization": "Sanitized",
+ "traceparent": "00-ca3a08b494dde248a5494aaeb89d9ad4-ef833cd75317ba4d-00",
+ "User-Agent": [
+ "azsdk-net-DigitalTwins.Core/1.3.0-alpha.20210203.1",
+ "(.NET 5.0.1-servicing.20575.16; Microsoft Windows 10.0.18363)"
+ ],
+ "x-ms-client-request-id": "879ca51ea59e03191c15cbb57215c38c",
+ "x-ms-return-client-request-id": "true"
+ },
+ "RequestBody": null,
+ "StatusCode": 204,
+ "ResponseHeaders": {
+ "Content-Length": "0",
+ "Date": "Wed, 03 Feb 2021 17:46:19 GMT",
+ "Strict-Transport-Security": "max-age=2592000",
+ "traceresponse": "00-ca3a08b494dde248a5494aaeb89d9ad4-e0a59c9c9cff3d4e-01"
+ },
+ "ResponseBody": []
+ }
+ ],
+ "Variables": {
+ "DIGITALTWINS_URL": "https://fakeHost.api.wus2.digitaltwins.azure.net",
+ "RandomSeed": "2113105330"
+ }
+}
\ No newline at end of file
diff --git a/sdk/digitaltwins/Azure.DigitalTwins.Core/tests/SessionRecords/NewtonsoftObjectSerializerTests/TestNewtonsoftObjectSerializerWithDigitalTwinsAsync.json b/sdk/digitaltwins/Azure.DigitalTwins.Core/tests/SessionRecords/NewtonsoftObjectSerializerTests/TestNewtonsoftObjectSerializerWithDigitalTwinsAsync.json
new file mode 100644
index 000000000000..b0777d05018c
--- /dev/null
+++ b/sdk/digitaltwins/Azure.DigitalTwins.Core/tests/SessionRecords/NewtonsoftObjectSerializerTests/TestNewtonsoftObjectSerializerWithDigitalTwinsAsync.json
@@ -0,0 +1,2143 @@
+{
+ "Entries": [
+ {
+ "RequestUri": "https://fakeHost.api.wus2.digitaltwins.azure.net/digitaltwins/roomTwin359524726?api-version=2020-10-31",
+ "RequestMethod": "GET",
+ "RequestHeaders": {
+ "Accept": "application/json",
+ "Authorization": "Sanitized",
+ "traceparent": "00-18a990705dec9040bd710f2a5e8311ce-378b7d74fc979c42-00",
+ "User-Agent": [
+ "azsdk-net-DigitalTwins.Core/1.3.0-alpha.20210203.1",
+ "(.NET 5.0.1-servicing.20575.16; Microsoft Windows 10.0.18363)"
+ ],
+ "x-ms-client-request-id": "34ed8aa11b3ff9b4fa18a2195671c648",
+ "x-ms-return-client-request-id": "true"
+ },
+ "RequestBody": null,
+ "StatusCode": 404,
+ "ResponseHeaders": {
+ "Content-Length": "270",
+ "Content-Type": "application/json; charset=utf-8",
+ "Date": "Wed, 03 Feb 2021 17:46:19 GMT",
+ "Strict-Transport-Security": "max-age=2592000",
+ "traceresponse": "00-18a990705dec9040bd710f2a5e8311ce-899668565194d848-01"
+ },
+ "ResponseBody": {
+ "error": {
+ "code": "DigitalTwinNotFound",
+ "message": "There is no digital twin instance that exists with the ID roomTwin359524726. Please verify that the twin id is valid and ensure that the twin is not deleted. See section on querying the twins http://aka.ms/adtv2query."
+ }
+ }
+ },
+ {
+ "RequestUri": "https://fakeHost.api.wus2.digitaltwins.azure.net/models/dtmi%3Aexample%3Afloor%3B11464619?includeModelDefinition=true\u0026api-version=2020-10-31",
+ "RequestMethod": "GET",
+ "RequestHeaders": {
+ "Accept": "application/json",
+ "Authorization": "Sanitized",
+ "traceparent": "00-2da69963a3988144beee11329a6f69a2-7b3947bbb4d3a849-00",
+ "User-Agent": [
+ "azsdk-net-DigitalTwins.Core/1.3.0-alpha.20210203.1",
+ "(.NET 5.0.1-servicing.20575.16; Microsoft Windows 10.0.18363)"
+ ],
+ "x-ms-client-request-id": "76566f9a905b2f9d1d9f1097425b6689",
+ "x-ms-return-client-request-id": "true"
+ },
+ "RequestBody": null,
+ "StatusCode": 404,
+ "ResponseHeaders": {
+ "Content-Length": "212",
+ "Content-Type": "application/json; charset=utf-8",
+ "Date": "Wed, 03 Feb 2021 17:46:19 GMT",
+ "Strict-Transport-Security": "max-age=2592000",
+ "traceresponse": "00-2da69963a3988144beee11329a6f69a2-6ea7e664f8e2a34c-01"
+ },
+ "ResponseBody": {
+ "error": {
+ "code": "ModelNotFound",
+ "message": "There is no Model(s) available that matches the provided id(s) dtmi:example:floor;11464619. Check that the Model ID provided is valid by doing a Model_List API call."
+ }
+ }
+ },
+ {
+ "RequestUri": "https://fakeHost.api.wus2.digitaltwins.azure.net/models/dtmi%3Aexample%3Aroom%3B176638439?includeModelDefinition=true\u0026api-version=2020-10-31",
+ "RequestMethod": "GET",
+ "RequestHeaders": {
+ "Accept": "application/json",
+ "Authorization": "Sanitized",
+ "traceparent": "00-abcafc24ddfbdb4a973223a4dc3acf0c-b72a648ed5c63147-00",
+ "User-Agent": [
+ "azsdk-net-DigitalTwins.Core/1.3.0-alpha.20210203.1",
+ "(.NET 5.0.1-servicing.20575.16; Microsoft Windows 10.0.18363)"
+ ],
+ "x-ms-client-request-id": "4c0a9eebb6d3e27a8c61c63b004e8c01",
+ "x-ms-return-client-request-id": "true"
+ },
+ "RequestBody": null,
+ "StatusCode": 404,
+ "ResponseHeaders": {
+ "Content-Length": "212",
+ "Content-Type": "application/json; charset=utf-8",
+ "Date": "Wed, 03 Feb 2021 17:46:19 GMT",
+ "Strict-Transport-Security": "max-age=2592000",
+ "traceresponse": "00-abcafc24ddfbdb4a973223a4dc3acf0c-a68964ac15f47542-01"
+ },
+ "ResponseBody": {
+ "error": {
+ "code": "ModelNotFound",
+ "message": "There is no Model(s) available that matches the provided id(s) dtmi:example:room;176638439. Check that the Model ID provided is valid by doing a Model_List API call."
+ }
+ }
+ },
+ {
+ "RequestUri": "https://fakeHost.api.wus2.digitaltwins.azure.net/models?api-version=2020-10-31",
+ "RequestMethod": "POST",
+ "RequestHeaders": {
+ "Accept": "application/json",
+ "Authorization": "Sanitized",
+ "Content-Length": "804",
+ "Content-Type": "application/json",
+ "traceparent": "00-87d364af7810244dadb0cb394bf1a865-2c5e6429506f634a-00",
+ "User-Agent": [
+ "azsdk-net-DigitalTwins.Core/1.3.0-alpha.20210203.1",
+ "(.NET 5.0.1-servicing.20575.16; Microsoft Windows 10.0.18363)"
+ ],
+ "x-ms-client-request-id": "0496c95445ff50f904227ba362b7bd3c",
+ "x-ms-return-client-request-id": "true"
+ },
+ "RequestBody": "[{ \u0022@id\u0022: \u0022dtmi:example:room;176638439\u0022, \u0022@type\u0022: \u0022Interface\u0022, \u0022displayName\u0022: \u0022Room\u0022, \u0022description\u0022: \u0022An enclosure inside a building.\u0022, \u0022contents\u0022: [ { \u0022@type\u0022: \u0022Relationship\u0022, \u0022name\u0022: \u0022containedIn\u0022, \u0022target\u0022: \u0022dtmi:example:floor;11464619\u0022 }, { \u0022@type\u0022: \u0022Property\u0022, \u0022name\u0022: \u0022Temperature\u0022, \u0022schema\u0022: \u0022double\u0022 }, { \u0022@type\u0022: \u0022Property\u0022, \u0022name\u0022: \u0022Humidity\u0022, \u0022schema\u0022: \u0022double\u0022 }, { \u0022@type\u0022: \u0022Property\u0022, \u0022name\u0022: \u0022IsOccupied\u0022, \u0022schema\u0022: \u0022boolean\u0022 }, { \u0022@type\u0022: \u0022Property\u0022, \u0022name\u0022: \u0022EmployeeId\u0022, \u0022schema\u0022: \u0022string\u0022 } ], \u0022@context\u0022: \u0022dtmi:dtdl:context;2\u0022}]",
+ "StatusCode": 201,
+ "ResponseHeaders": {
+ "Content-Length": "193",
+ "Content-Type": "application/json; charset=utf-8",
+ "Date": "Wed, 03 Feb 2021 17:46:19 GMT",
+ "Strict-Transport-Security": "max-age=2592000",
+ "traceresponse": "00-87d364af7810244dadb0cb394bf1a865-ab5fdc9850b61447-01"
+ },
+ "ResponseBody": "[{\u0022id\u0022:\u0022dtmi:example:room;176638439\u0022,\u0022description\u0022:{\u0022en\u0022:\u0022An enclosure inside a building.\u0022},\u0022displayName\u0022:{\u0022en\u0022:\u0022Room\u0022},\u0022decommissioned\u0022:false,\u0022uploadTime\u0022:\u00222021-02-03T17:46:19.8291397\u002B00:00\u0022}]"
+ },
+ {
+ "RequestUri": "https://fakeHost.api.wus2.digitaltwins.azure.net/models?includeModelDefinition=false\u0026api-version=2020-10-31",
+ "RequestMethod": "GET",
+ "RequestHeaders": {
+ "Accept": "application/json",
+ "Authorization": "Sanitized",
+ "traceparent": "00-1f0ad63d61157a42b17c03e65bdb496f-663c5f054e501d40-00",
+ "User-Agent": [
+ "azsdk-net-DigitalTwins.Core/1.3.0-alpha.20210203.1",
+ "(.NET 5.0.1-servicing.20575.16; Microsoft Windows 10.0.18363)"
+ ],
+ "x-ms-client-request-id": "28854990d03db9c7dc94cf2fd6f41d51",
+ "x-ms-return-client-request-id": "true"
+ },
+ "RequestBody": null,
+ "StatusCode": 200,
+ "ResponseHeaders": {
+ "Content-Length": "12535",
+ "Content-Type": "application/json; charset=utf-8",
+ "Date": "Wed, 03 Feb 2021 17:46:19 GMT",
+ "Strict-Transport-Security": "max-age=2592000",
+ "traceresponse": "00-1f0ad63d61157a42b17c03e65bdb496f-4b4c3835257d354d-01"
+ },
+ "ResponseBody": {
+ "value": [
+ {
+ "id": "dtmi:example:Ward;154155931",
+ "description": {
+ "en": "A separate partition in a building, made of rooms and hallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-12T23:39:00.6914759\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;145613168",
+ "description": {
+ "en": "A separate partition in a building, made of rooms and hallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-12T23:39:00.6923131\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:room;133999852",
+ "description": {
+ "en": "An enclosure inside a building."
+ },
+ "displayName": {
+ "en": "Room"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-12T23:39:00.8468548\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:room;111892730",
+ "description": {
+ "en": "An enclosure inside a building."
+ },
+ "displayName": {
+ "en": "Room"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-12T23:39:01.4893239\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;181053342",
+ "description": {
+ "en": "A separate partition in a building, made of rooms and hallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-12T23:39:01.8055239\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;118112199",
+ "description": {
+ "en": "A separate partition in a building, made of rooms and hallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-12T23:39:01.9458203\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Building;1734752",
+ "description": {
+ "en": "Afree-standingstructure."
+ },
+ "displayName": {
+ "en": "Building"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:22:06.544589\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Hvac;1455457",
+ "description": {
+ "en": "Aheating,ventilation,andairconditioningunit."
+ },
+ "displayName": {
+ "en": "HVAC"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:22:06.5446266\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1475050",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:22:06.5446476\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Building;1190300",
+ "description": {
+ "en": "Afree-standingstructure."
+ },
+ "displayName": {
+ "en": "Building"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:22:06.9320071\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Hvac;1986367",
+ "description": {
+ "en": "Aheating,ventilation,andairconditioningunit."
+ },
+ "displayName": {
+ "en": "HVAC"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:22:06.9320364\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1888485",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:22:06.932053\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1548262",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:22:07.6974692\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Building;1066046",
+ "description": {
+ "en": "Afree-standingstructure."
+ },
+ "displayName": {
+ "en": "Building"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:22:16.3332236\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Hvac;1634334",
+ "description": {
+ "en": "Aheating,ventilation,andairconditioningunit."
+ },
+ "displayName": {
+ "en": "HVAC"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:22:16.3332519\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1089118",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:22:16.3332689\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1882161",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:22:17.0853142\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Building;1822742",
+ "description": {
+ "en": "Afree-standingstructure."
+ },
+ "displayName": {
+ "en": "Building"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:24:23.0141874\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Hvac;1180692",
+ "description": {
+ "en": "Aheating,ventilation,andairconditioningunit."
+ },
+ "displayName": {
+ "en": "HVAC"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:24:23.0142213\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1527130",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:24:23.0142444\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1781699",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:24:24.1119772\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Building;1617621",
+ "description": {
+ "en": "Afree-standingstructure."
+ },
+ "displayName": {
+ "en": "Building"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:24:33.5352077\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Hvac;1134858",
+ "description": {
+ "en": "Aheating,ventilation,andairconditioningunit."
+ },
+ "displayName": {
+ "en": "HVAC"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:24:33.5352424\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1712969",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:24:33.5352652\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1474799",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:24:34.7165797\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Building;1350530",
+ "description": {
+ "en": "Afree-standingstructure."
+ },
+ "displayName": {
+ "en": "Building"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:26:20.2901271\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Hvac;1762171",
+ "description": {
+ "en": "Aheating,ventilation,andairconditioningunit."
+ },
+ "displayName": {
+ "en": "HVAC"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:26:20.2902086\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1615597",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:26:20.290229\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1830135",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:26:21.1974929\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Building;1957271",
+ "description": {
+ "en": "Afree-standingstructure."
+ },
+ "displayName": {
+ "en": "Building"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:26:28.1822238\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Hvac;1544799",
+ "description": {
+ "en": "Aheating,ventilation,andairconditioningunit."
+ },
+ "displayName": {
+ "en": "HVAC"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:26:28.1822593\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1158158",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:26:28.1822814\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1890267",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:26:29.1430355\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Building;1497822",
+ "description": {
+ "en": "Afree-standingstructure."
+ },
+ "displayName": {
+ "en": "Building"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:28:43.1253465\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Hvac;1951340",
+ "description": {
+ "en": "Aheating,ventilation,andairconditioningunit."
+ },
+ "displayName": {
+ "en": "HVAC"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:28:43.1253771\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1756932",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:28:43.1253961\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1398142",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:28:44.5335538\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Building;1603592",
+ "description": {
+ "en": "Afree-standingstructure."
+ },
+ "displayName": {
+ "en": "Building"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:28:54.8008172\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Hvac;1384592",
+ "description": {
+ "en": "Aheating,ventilation,andairconditioningunit."
+ },
+ "displayName": {
+ "en": "HVAC"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:28:54.8008622\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1731623",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:28:54.8008805\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1532010",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:28:58.3645375\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:room;1506729",
+ "description": {
+ "en": "Anenclosureinsideabuilding."
+ },
+ "displayName": {
+ "en": "Room"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:54:08.4752622\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:room;1312262",
+ "description": {
+ "en": "Anenclosureinsideabuilding."
+ },
+ "displayName": {
+ "en": "Room"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T19:59:27.9783165\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:room;1867454",
+ "description": {
+ "en": "Anenclosureinsideabuilding."
+ },
+ "displayName": {
+ "en": "Room"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T20:00:45.1707261\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Building;1413132",
+ "description": {
+ "en": "Afree-standingstructure."
+ },
+ "displayName": {
+ "en": "Building"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T20:05:37.8242053\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Hvac;1008415",
+ "description": {
+ "en": "Aheating,ventilation,andairconditioningunit."
+ },
+ "displayName": {
+ "en": "HVAC"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T20:05:37.824234\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1009686",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T20:05:37.8242498\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1277563",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T20:05:39.2372893\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Building;1014437",
+ "description": {
+ "en": "Afree-standingstructure."
+ },
+ "displayName": {
+ "en": "Building"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T20:05:46.8489933\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Hvac;1295996",
+ "description": {
+ "en": "Aheating,ventilation,andairconditioningunit."
+ },
+ "displayName": {
+ "en": "HVAC"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T20:05:46.8490202\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1191474",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T20:05:46.8490373\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:Ward;1499878",
+ "description": {
+ "en": "Aseparatepartitioninabuilding,madeofroomsandhallways."
+ },
+ "displayName": {
+ "en": "Ward"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-13T20:05:48.0720751\u002B00:00"
+ },
+ {
+ "id": "dtmi:com:samples:ComponentModel;6174",
+ "description": {},
+ "displayName": {
+ "en": "Component1"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-01-29T23:30:03.3607167\u002B00:00"
+ },
+ {
+ "id": "dtmi:com:samples:Building;1",
+ "description": {},
+ "displayName": {
+ "en": "Building"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-02-02T23:27:49.0704576\u002B00:00"
+ },
+ {
+ "id": "dtmi:com:samples:Floor;1",
+ "description": {},
+ "displayName": {
+ "en": "Floor"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-02-02T23:27:49.0704794\u002B00:00"
+ },
+ {
+ "id": "dtmi:com:samples:HVAC;1",
+ "description": {},
+ "displayName": {
+ "en": "HVAC"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-02-02T23:27:49.0705227\u002B00:00"
+ },
+ {
+ "id": "dtmi:com:samples:Room;1",
+ "description": {},
+ "displayName": {
+ "en": "Room"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-02-02T23:27:49.0705463\u002B00:00"
+ },
+ {
+ "id": "dtmi:com:samples:Wifi;1",
+ "description": {},
+ "displayName": {
+ "en": "Wifi"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-02-02T23:27:49.0705686\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:room;116029261",
+ "description": {
+ "en": "An enclosure inside a building."
+ },
+ "displayName": {
+ "en": "Room"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-02-03T03:13:35.4814974\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:room;195438086",
+ "description": {
+ "en": "An enclosure inside a building."
+ },
+ "displayName": {
+ "en": "Room"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-02-03T03:21:36.3092503\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:room;19885524",
+ "description": {
+ "en": "An enclosure inside a building."
+ },
+ "displayName": {
+ "en": "Room"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-02-03T03:25:50.3518595\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:room;149813251",
+ "description": {
+ "en": "An enclosure inside a building."
+ },
+ "displayName": {
+ "en": "Room"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-02-03T17:46:19.7890657\u002B00:00"
+ },
+ {
+ "id": "dtmi:example:room;176638439",
+ "description": {
+ "en": "An enclosure inside a building."
+ },
+ "displayName": {
+ "en": "Room"
+ },
+ "decommissioned": false,
+ "uploadTime": "2021-02-03T17:46:19.8291397\u002B00:00"
+ }
+ ],
+ "nextLink": null
+ }
+ },
+ {
+ "RequestUri": "https://fakeHost.api.wus2.digitaltwins.azure.net/digitaltwins/roomTwin359524726?api-version=2020-10-31",
+ "RequestMethod": "PUT",
+ "RequestHeaders": {
+ "Accept": "application/json",
+ "Authorization": "Sanitized",
+ "Content-Length": "154",
+ "Content-Type": "application/json",
+ "traceparent": "00-89f82112102c2c43ad72b3061a1633e3-ff07712fc6708940-00",
+ "User-Agent": [
+ "azsdk-net-DigitalTwins.Core/1.3.0-alpha.20210203.1",
+ "(.NET 5.0.1-servicing.20575.16; Microsoft Windows 10.0.18363)"
+ ],
+ "x-ms-client-request-id": "91ee958384d0a60da4ba47b03ad67fd4",
+ "x-ms-return-client-request-id": "true"
+ },
+ "RequestBody": {
+ "$dtId": null,
+ "$etag": null,
+ "$metadata": {
+ "$model": "dtmi:example:room;176638439"
+ },
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1"
+ },
+ "StatusCode": 200,
+ "ResponseHeaders": {
+ "Content-Length": "460",
+ "Content-Type": "application/json; charset=utf-8",
+ "Date": "Wed, 03 Feb 2021 17:46:19 GMT",
+ "ETag": "W/\u0022e4f65e8a-0c2a-40bb-a745-9c129e84eb69\u0022",
+ "Strict-Transport-Security": "max-age=2592000",
+ "traceresponse": "00-89f82112102c2c43ad72b3061a1633e3-2024d8ec2eea734a-01"
+ },
+ "ResponseBody": {
+ "$dtId": "roomTwin359524726",
+ "$etag": "W/\u0022e4f65e8a-0c2a-40bb-a745-9c129e84eb69\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;176638439",
+ "Temperature": {
+ "lastUpdateTime": "2021-02-03T17:46:19.9280255Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-02-03T17:46:19.9280255Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-02-03T17:46:19.9280255Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-02-03T17:46:19.9280255Z"
+ }
+ }
+ }
+ },
+ {
+ "RequestUri": "https://fakeHost.api.wus2.digitaltwins.azure.net/digitaltwins/roomTwin359524726?api-version=2020-10-31",
+ "RequestMethod": "GET",
+ "RequestHeaders": {
+ "Accept": "application/json",
+ "Authorization": "Sanitized",
+ "traceparent": "00-fed3f84bf22bd3408ff775c94e5e77b9-f67011059e74504f-00",
+ "User-Agent": [
+ "azsdk-net-DigitalTwins.Core/1.3.0-alpha.20210203.1",
+ "(.NET 5.0.1-servicing.20575.16; Microsoft Windows 10.0.18363)"
+ ],
+ "x-ms-client-request-id": "b6aa8aa464c983c402dc286b75ca7910",
+ "x-ms-return-client-request-id": "true"
+ },
+ "RequestBody": null,
+ "StatusCode": 200,
+ "ResponseHeaders": {
+ "Content-Length": "460",
+ "Content-Type": "application/json; charset=utf-8",
+ "Date": "Wed, 03 Feb 2021 17:46:19 GMT",
+ "ETag": "W/\u0022e4f65e8a-0c2a-40bb-a745-9c129e84eb69\u0022",
+ "Strict-Transport-Security": "max-age=2592000",
+ "traceresponse": "00-fed3f84bf22bd3408ff775c94e5e77b9-9cc042970baac945-01"
+ },
+ "ResponseBody": {
+ "$dtId": "roomTwin359524726",
+ "$etag": "W/\u0022e4f65e8a-0c2a-40bb-a745-9c129e84eb69\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;176638439",
+ "Temperature": {
+ "lastUpdateTime": "2021-02-03T17:46:19.9280255Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-02-03T17:46:19.9280255Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-02-03T17:46:19.9280255Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-02-03T17:46:19.9280255Z"
+ }
+ }
+ }
+ },
+ {
+ "RequestUri": "https://fakeHost.api.wus2.digitaltwins.azure.net/query?api-version=2020-10-31",
+ "RequestMethod": "POST",
+ "RequestHeaders": {
+ "Accept": "application/json",
+ "Authorization": "Sanitized",
+ "Content-Length": "38",
+ "Content-Type": "application/json",
+ "traceparent": "00-c5ee43e2a5a3194aa1d654652e371635-509510ca81f6d54f-00",
+ "User-Agent": [
+ "azsdk-net-DigitalTwins.Core/1.3.0-alpha.20210203.1",
+ "(.NET 5.0.1-servicing.20575.16; Microsoft Windows 10.0.18363)"
+ ],
+ "x-ms-client-request-id": "cc202a042bc80b6b3bdf838289167e06",
+ "x-ms-return-client-request-id": "true"
+ },
+ "RequestBody": {
+ "query": "SELECT * FROM DIGITALTWINS"
+ },
+ "StatusCode": 200,
+ "ResponseHeaders": {
+ "Content-Type": "application/json; charset=utf-8",
+ "Date": "Wed, 03 Feb 2021 17:46:19 GMT",
+ "query-charge": "10.12",
+ "Strict-Transport-Security": "max-age=2592000",
+ "traceresponse": "00-c5ee43e2a5a3194aa1d654652e371635-c158cdebb7dfc342-01",
+ "Transfer-Encoding": "chunked"
+ },
+ "ResponseBody": {
+ "value": [
+ {
+ "$dtId": "roomTwin460152108",
+ "$etag": "W/\u0022c14258f3-f518-4569-94b7-5b6a7009bd4b\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;111892730",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:01.5919399Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:01.5919399Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:01.5919399Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:01.5919399Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin1420781814",
+ "$etag": "W/\u002215823347-e6e5-4250-a774-a3735d9303e1\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;133999852",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:00.9812114Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:00.9812114Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:00.9812114Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:00.9812114Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin1320328829",
+ "$etag": "W/\u0022dee956ef-7343-4a8e-b5aa-94d64f1b468d\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;116845994",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:01.0108998Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:01.0108998Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:01.0108998Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:01.0108998Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin1171852527",
+ "$etag": "W/\u0022c7f421ee-7902-4289-8868-38ff79815e3f\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;163554513",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:02.0540624Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:02.0540624Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:02.0540624Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:02.0540624Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin1019252643",
+ "$etag": "W/\u002285191640-cb26-4c66-a264-8f08e1e63485\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;118127707",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:01.7326593Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:01.7326593Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:01.7326593Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:01.7326593Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin898922460",
+ "$etag": "W/\u0022e069c97b-c9bd-4c01-804e-9a62c1598ebc\u0022",
+ "Temperature": 70,
+ "Humidity": 30,
+ "IsOccupied": true,
+ "$metadata": {
+ "$model": "dtmi:example:room;170118024",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:02.8712463Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:02.8712463Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:02.7880790Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin958754835",
+ "$etag": "W/\u00229a25e697-7c99-4372-a1d1-73a3584dd0ce\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;196301502",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:00.9648281Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:00.9648281Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:00.9648281Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:00.9648281Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin1474340914",
+ "$etag": "W/\u0022de67105c-b008-4468-a455-66f455271827\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;160194944",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:02.8496985Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:02.8496985Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:02.8496985Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:02.8496985Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin788116830",
+ "$etag": "W/\u00226c936a90-ffd1-48e3-81c3-b40ac3a3b65d\u0022",
+ "Temperature": 70,
+ "Humidity": 30,
+ "IsOccupied": true,
+ "$metadata": {
+ "$model": "dtmi:example:room;139380843",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:03.3817391Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:03.3817391Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:03.2854024Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin2114072427",
+ "$etag": "W/\u0022977e9abd-8343-476b-a5e1-cbd5fa5c955d\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;114297411",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:02.3157643Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:02.3157643Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:02.3157643Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:02.3157643Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin1701250104",
+ "$etag": "W/\u0022a69fafd6-d74a-4f88-89f6-01f69605a005\u0022",
+ "Temperature": 70,
+ "Humidity": 30,
+ "IsOccupied": true,
+ "$metadata": {
+ "$model": "dtmi:example:room;121095457",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:04.8505962Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:04.8505962Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:04.7716505Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin1500965769",
+ "$etag": "W/\u0022bf630b74-c175-4fb8-a83d-45e3baab71fb\u0022",
+ "Temperature": 70,
+ "Humidity": 30,
+ "IsOccupied": true,
+ "$metadata": {
+ "$model": "dtmi:example:room;154962552",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:05.0732015Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:05.0732015Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:04.9949133Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin869533390",
+ "$etag": "W/\u002289e13884-7481-4fc5-b803-3931c746fe42\u0022",
+ "Temperature": 70,
+ "Humidity": 80,
+ "IsOccupied": true,
+ "$metadata": {
+ "$model": "dtmi:example:room;110330782",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:05.3490298Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:05.4214756Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:05.2988498Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin298405819",
+ "$etag": "W/\u0022ecc3c21b-e6dd-45eb-9aa6-02ae422e5b53\u0022",
+ "Temperature": 70,
+ "Humidity": 80,
+ "IsOccupied": true,
+ "$metadata": {
+ "$model": "dtmi:example:room;117174263",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:05.5359604Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:05.6061579Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:05.4861448Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin1043399473",
+ "$etag": "W/\u0022109b2419-637c-4ce0-901e-12ff446a47e2\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;115780864",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.1063553Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.1063553Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.1063553Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.1063553Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin1755945808",
+ "$etag": "W/\u0022f4f88b1a-f016-4bdd-8ff7-28e548165d3a\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;119708157",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.1545499Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.1545499Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.1545499Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.1545499Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin394889929",
+ "$etag": "W/\u00222694a5ef-8bfe-481b-b279-268e29183c65\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;115780864",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.2239978Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.2239978Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.2239978Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.2239978Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin222731943",
+ "$etag": "W/\u0022049808dc-629e-4a2c-8d87-26e4d798c020\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;119708157",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.2706063Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.2706063Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.2706063Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.2706063Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin406365159",
+ "$etag": "W/\u00229b710bc4-44bd-420e-b799-4bcbf9f7a000\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;115780864",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.3434533Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.3434533Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.3434533Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.3434533Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin261798201",
+ "$etag": "W/\u0022825684fb-5321-43aa-87cb-c22b2dc4e5b8\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;119708157",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.4016374Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.4016374Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.4016374Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.4016374Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin2103656111",
+ "$etag": "W/\u0022ad688175-f6f3-48d7-aa2a-68c427974f58\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;115780864",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.4456522Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.4456522Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.4456522Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.4456522Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin517701651",
+ "$etag": "W/\u0022bb4caafd-aced-4f87-8022-b7d13a08188b\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;119708157",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.4948790Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.4948790Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.4948790Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.4948790Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin419605825",
+ "$etag": "W/\u00222d290fc3-d225-49a6-86a9-128c7df273ab\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;115780864",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.5511476Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.5511476Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.5511476Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.5511476Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin1973949077",
+ "$etag": "W/\u002275340c9f-b967-46b8-b394-318dccfeae7c\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;119708157",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.6220107Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.6220107Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.6220107Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.6220107Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin858105055",
+ "$etag": "W/\u002212bad670-c7a8-4599-a9c6-28416afe7145\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;115780864",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.6512000Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.6512000Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.6512000Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.6512000Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin428015386",
+ "$etag": "W/\u00225cc173c7-38ee-4b6a-953f-518936f90b1f\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;119708157",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.7613366Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.7613366Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.7613366Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.7613366Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin2103316411",
+ "$etag": "W/\u0022d55e6abe-9221-4a2a-875d-958c2b9ea127\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;115780864",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.7614046Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.7614046Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.7614046Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.7614046Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin159399716",
+ "$etag": "W/\u002250be124e-acb3-47f4-a981-d4e08601e876\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;115780864",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.8709030Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.8709030Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.8709030Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.8709030Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin2115596528",
+ "$etag": "W/\u00229c1c216c-0f8c-4b67-aecc-aea37f9c12f3\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;119708157",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.9007131Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.9007131Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.9007131Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.9007131Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin979747018",
+ "$etag": "W/\u002238f7995f-f224-4d1e-b48d-fd3d2572284f\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;115780864",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.9550226Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.9550226Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.9550226Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.9550226Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin747583795",
+ "$etag": "W/\u0022c41c71c4-2227-4ed3-bb04-6d69a7e46a88\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;119708157",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:06.9772813Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:06.9772813Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:06.9772813Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:06.9772813Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin1234052869",
+ "$etag": "W/\u0022cd915e94-4d74-4644-8667-e5d0341b954d\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;115780864",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:07.0561169Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:07.0561169Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:07.0561169Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:07.0561169Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin416498780",
+ "$etag": "W/\u0022c717cdb8-9cae-44c9-bc0b-770c66de6f7d\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;119708157",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:07.0760150Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:07.0760150Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:07.0760150Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:07.0760150Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin952596496",
+ "$etag": "W/\u0022ed52c3eb-24d3-4c58-8ad8-7b0616b3324a\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;119708157",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:07.2030253Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:07.2030253Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:07.2030253Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:07.2030253Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin798293087",
+ "$etag": "W/\u0022a8018f03-6a52-4e02-83f2-c3a72fa982dc\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;131459891",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:07.9708016Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:07.9708016Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:07.9708016Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:07.9708016Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin1346838400",
+ "$etag": "W/\u002275e9b3e0-2d8e-443c-9b3c-76c6bf3f56d5\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;153942695",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-12T23:39:08.0323481Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-12T23:39:08.0323481Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-12T23:39:08.0323481Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-12T23:39:08.0323481Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin844044",
+ "$etag": "W/\u0022341bd569-8d62-475c-a368-85c814877df0\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;1506729",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-13T19:54:08.7062444Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-13T19:54:08.7062444Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-13T19:54:08.7062444Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-13T19:54:08.7062444Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin070857",
+ "$etag": "W/\u0022fb6537b8-c035-480e-b8f4-7fd5d9571783\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;1506729",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-13T19:54:08.9898340Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-13T19:54:08.9898340Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-13T19:54:08.9898340Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-13T19:54:08.9898340Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin381161",
+ "$etag": "W/\u0022fb20bb6b-923c-42e0-82c2-c878adebec14\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;1506729",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-13T19:54:09.1106256Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-13T19:54:09.1106256Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-13T19:54:09.1106256Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-13T19:54:09.1106256Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin246198",
+ "$etag": "W/\u0022cd5b90ba-d932-4d39-8aad-d36355a1fe1e\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;1506729",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-13T19:54:08.8814499Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-13T19:54:08.8814499Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-13T19:54:08.8814499Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-13T19:54:08.8814499Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin766189",
+ "$etag": "W/\u00221fac2335-a558-403b-96d3-a79dc2d202dd\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;1312262",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-13T19:59:28.1474235Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-13T19:59:28.1474235Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-13T19:59:28.1474235Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-13T19:59:28.1474235Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin739702",
+ "$etag": "W/\u00226a280d75-5537-4fef-a671-e3b58194830a\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;1312262",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-13T19:59:28.3057860Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-13T19:59:28.3057860Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-13T19:59:28.3057860Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-13T19:59:28.3057860Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin544952",
+ "$etag": "W/\u002248429892-9afa-4ce7-a5f8-a5ed0da53da7\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;1312262",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-13T19:59:28.4553352Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-13T19:59:28.4553352Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-13T19:59:28.4553352Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-13T19:59:28.4553352Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin830667",
+ "$etag": "W/\u002243e7a0ad-60b7-4daa-afaf-b81088d49f9d\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;1312262",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-13T19:59:28.6062951Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-13T19:59:28.6062951Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-13T19:59:28.6062951Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-13T19:59:28.6062951Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin372470",
+ "$etag": "W/\u0022b7bf5c12-9408-454d-8408-6ed2ca7f703b\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;1867454",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-13T20:00:45.6593182Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-13T20:00:45.6593182Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-13T20:00:45.6593182Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-13T20:00:45.6593182Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin566336",
+ "$etag": "W/\u0022e3674b63-2f7e-4e7c-b1f4-3651fb5c130e\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;1867454",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-13T20:00:45.4717291Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-13T20:00:45.4717291Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-13T20:00:45.4717291Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-13T20:00:45.4717291Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin803247",
+ "$etag": "W/\u00224e743e14-1f6b-4c0a-8950-2fda7a65b9f8\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;1867454",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-13T20:00:45.7916041Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-13T20:00:45.7916041Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-13T20:00:45.7916041Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-13T20:00:45.7916041Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin445180",
+ "$etag": "W/\u002285ee93d1-be61-44bf-b905-63e0b0b046dc\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;1867454",
+ "Temperature": {
+ "lastUpdateTime": "2021-01-13T20:00:45.3327033Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-01-13T20:00:45.3327033Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-01-13T20:00:45.3327033Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-01-13T20:00:45.3327033Z"
+ }
+ }
+ },
+ {
+ "$dtId": "BuildingTwin",
+ "$etag": "W/\u0022d54dde15-aff7-4b0c-b898-f66804a4ca74\u0022",
+ "AverageTemperature": 68,
+ "TemperatureUnit": "Celsius",
+ "$metadata": {
+ "$model": "dtmi:com:samples:Building;1",
+ "AverageTemperature": {
+ "lastUpdateTime": "2021-02-02T23:27:56.3899645Z"
+ },
+ "TemperatureUnit": {
+ "lastUpdateTime": "2021-02-02T23:27:56.3899645Z"
+ }
+ }
+ },
+ {
+ "$dtId": "roomTwin1220449681",
+ "$etag": "W/\u00220c94367b-5077-402c-a2ca-51b4bd27fb4e\u0022",
+ "Temperature": 80,
+ "Humidity": 25,
+ "IsOccupied": true,
+ "EmployeeId": "Employee1",
+ "$metadata": {
+ "$model": "dtmi:example:room;116029261",
+ "Temperature": {
+ "lastUpdateTime": "2021-02-03T03:13:35.8100173Z"
+ },
+ "Humidity": {
+ "lastUpdateTime": "2021-02-03T03:13:35.8100173Z"
+ },
+ "IsOccupied": {
+ "lastUpdateTime": "2021-02-03T03:13:35.8100173Z"
+ },
+ "EmployeeId": {
+ "lastUpdateTime": "2021-02-03T03:13:35.8100173Z"
+ }
+ }
+ }
+ ],
+ "continuationToken": null
+ }
+ },
+ {
+ "RequestUri": "https://fakeHost.api.wus2.digitaltwins.azure.net/digitaltwins/roomTwin359524726?api-version=2020-10-31",
+ "RequestMethod": "DELETE",
+ "RequestHeaders": {
+ "Accept": "application/json",
+ "Authorization": "Sanitized",
+ "traceparent": "00-3efcaff2be382d41ab33a3a2de791b2a-b7aef5df59ce5540-00",
+ "User-Agent": [
+ "azsdk-net-DigitalTwins.Core/1.3.0-alpha.20210203.1",
+ "(.NET 5.0.1-servicing.20575.16; Microsoft Windows 10.0.18363)"
+ ],
+ "x-ms-client-request-id": "4b8bfa1466491f88d16b8ff35ca230d9",
+ "x-ms-return-client-request-id": "true"
+ },
+ "RequestBody": null,
+ "StatusCode": 204,
+ "ResponseHeaders": {
+ "Content-Length": "0",
+ "Date": "Wed, 03 Feb 2021 17:46:19 GMT",
+ "Strict-Transport-Security": "max-age=2592000",
+ "traceresponse": "00-3efcaff2be382d41ab33a3a2de791b2a-603099310a75dd4d-01"
+ },
+ "ResponseBody": []
+ },
+ {
+ "RequestUri": "https://fakeHost.api.wus2.digitaltwins.azure.net/models/dtmi%3Aexample%3Aroom%3B176638439?api-version=2020-10-31",
+ "RequestMethod": "DELETE",
+ "RequestHeaders": {
+ "Accept": "application/json",
+ "Authorization": "Sanitized",
+ "traceparent": "00-13e958bfd4a4404683e59d0cf4ffe06d-b729d8db65b99147-00",
+ "User-Agent": [
+ "azsdk-net-DigitalTwins.Core/1.3.0-alpha.20210203.1",
+ "(.NET 5.0.1-servicing.20575.16; Microsoft Windows 10.0.18363)"
+ ],
+ "x-ms-client-request-id": "0fab3740b3b5780c1f9f7beae041faec",
+ "x-ms-return-client-request-id": "true"
+ },
+ "RequestBody": null,
+ "StatusCode": 204,
+ "ResponseHeaders": {
+ "Content-Length": "0",
+ "Date": "Wed, 03 Feb 2021 17:46:19 GMT",
+ "Strict-Transport-Security": "max-age=2592000",
+ "traceresponse": "00-13e958bfd4a4404683e59d0cf4ffe06d-3a3cd96907615249-01"
+ },
+ "ResponseBody": []
+ }
+ ],
+ "Variables": {
+ "DIGITALTWINS_URL": "https://fakeHost.api.wus2.digitaltwins.azure.net",
+ "RandomSeed": "1695897686"
+ }
+}
\ No newline at end of file
diff --git a/sdk/digitaltwins/Azure.DigitalTwins.Core/tests/SimpleNewtonsoftDtModel.cs b/sdk/digitaltwins/Azure.DigitalTwins.Core/tests/SimpleNewtonsoftDtModel.cs
new file mode 100644
index 000000000000..5e69a56ef5de
--- /dev/null
+++ b/sdk/digitaltwins/Azure.DigitalTwins.Core/tests/SimpleNewtonsoftDtModel.cs
@@ -0,0 +1,13 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+
+using Newtonsoft.Json;
+
+namespace Azure.DigitalTwins.Core.Tests
+{
+ public class SimpleNewtonsoftDtModel
+ {
+ [JsonProperty(DigitalTwinsJsonPropertyNames.DigitalTwinId)]
+ public string Id { get; set; }
+ }
+}