Query - Query Twins
Выполняет запрос, который позволяет просматривать связи и фильтровать по значениям свойств. Коды состояния:
- 200 ОК
- 400 — недопустимый запрос
- BadRequest — недопустимый маркер продолжения.
- SqlQueryError — запрос содержит некоторые ошибки.
- TimeoutError — время ожидания выполнения запроса истекло через 60 секунд. Попробуйте упростить запрос или добавить условия, чтобы уменьшить размер результата.
- 429 — слишком много запросов
- QuotaReachedError — достигнуто максимальное ограничение скорости запросов.
POST https://digitaltwins-hostname/query?api-version=2023-10-31
Параметры URI
Имя | В | Обязательно | Тип | Описание |
---|---|---|---|---|
api-version
|
query | True |
string |
Запрошенная версия API. |
Заголовок запроса
Имя | Обязательно | Тип | Описание |
---|---|---|---|
max-items-per-page |
integer |
Максимальное количество элементов для каждого запроса. Сервер может вернуть меньше запрошенного числа. |
|
traceparent |
string |
Определяет запрос в распределенной системе трассировки. |
|
tracestate |
string |
Предоставляет сведения об идентификации трассировки для конкретного поставщика и является компаньоном для traceparent. |
Текст запроса
Имя | Тип | Описание |
---|---|---|
continuationToken |
string |
Маркер, используемый для получения следующего набора результатов из предыдущего запроса. |
query |
string |
Выполняемый запрос. Это значение игнорируется, если предоставлен маркер продолжения. |
Ответы
Имя | Тип | Описание |
---|---|---|
200 OK |
Успешное завершение Headers query-charge: number |
|
Other Status Codes |
Ответ по умолчанию. Headers x-ms-error-code: string |
Безопасность
oauth2
Type:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/authorize?resource=0b07f429-9f4b-4714-9392-cc5e8e80c8b0
Примеры
Query for digital twins |
Query for digital twins through a relationship |
Retrieve paged query results |
Query for digital twins
Sample Request
POST https://digitaltwins-hostname/query?api-version=2023-10-31
{
"query": "SELECT * FROM DIGITALTWINS WHERE temp = 79"
}
Sample Response
{
"value": [
{
"$dtId": "Twin-01",
"$metadata": {
"$lastUpdateTime": "2022-02-28T00:30:00.1234567Z",
"$model": "dtmi:com:example:Sample;1",
"name": {
"lastUpdateTime": "2022-02-28T00:30:00.1234567Z"
},
"temp": {
"lastUpdateTime": "2022-02-28T00:30:00.1234567Z"
},
"comfortIndex": {
"lastUpdateTime": "2022-02-28T00:30:00.1234567Z"
}
},
"name": "Sample01",
"temp": 79,
"comfortIndex": 50
},
{
"$dtId": "Twin-02",
"$metadata": {
"$lastUpdateTime": "2022-02-28T00:29:00.1234567Z",
"$model": "dtmi:com:example:Sample;1",
"name": {
"lastUpdateTime": "2022-02-28T00:29:00.1234567Z"
},
"temp": {
"lastUpdateTime": "2022-02-28T00:29:00.1234567Z",
"sourceTime": "2022-05-31T12:00:00.000125009Z"
},
"comfortIndex": {
"lastUpdateTime": "2022-02-28T00:29:00.1234567Z"
}
},
"name": "Sample02",
"temp": 79,
"comfortIndex": 50
},
{
"$dtId": "Twin-03",
"$metadata": {
"$lastUpdateTime": "2022-02-28T00:31:00.1234567Z",
"$model": "dtmi:com:example:Sample;1",
"name": {
"lastUpdateTime": "2022-02-28T00:31:00.1234567Z"
},
"temp": {
"lastUpdateTime": "2022-02-28T00:31:00.1234567Z"
},
"comfortIndex": {
"lastUpdateTime": "2022-02-28T00:31:00.1234567Z"
}
},
"name": "Sample03",
"temp": 79,
"comfortIndex": 50
}
],
"continuationToken": "<token>"
}
Query for digital twins through a relationship
Sample Request
POST https://digitaltwins-hostname/query?api-version=2023-10-31
{
"query": "SELECT Widget, Gadget FROM DIGITALTWINS Widget JOIN Gadget RELATED Widget.Contains WHERE Widget.$dtId = 'Twin-01'"
}
Sample Response
{
"value": [
{
"Widget": {
"$dtId": "Twin-01",
"$metadata": {
"$lastUpdateTime": "2022-02-28T00:30:00.1234567Z",
"$model": "dtmi:com:example:Sample;1",
"name": {
"lastUpdateTime": "2022-02-28T00:30:00.1234567Z"
},
"temp": {
"lastUpdateTime": "2022-02-28T00:30:00.1234567Z"
},
"comfortIndex": {
"lastUpdateTime": "2022-02-28T00:30:00.1234567Z"
}
},
"name": "Sample01",
"temp": 79,
"comfortIndex": 50
},
"Gadget": {
"$dtId": "Twin-02",
"$metadata": {
"$lastUpdateTime": "2022-02-28T00:30:00.1234567Z",
"$model": "dtmi:com:example:Sample;1",
"name": {
"lastUpdateTime": "2022-02-28T00:30:00.1234567Z"
},
"temp": {
"lastUpdateTime": "2022-02-28T00:30:00.1234567Z"
},
"comfortIndex": {
"lastUpdateTime": "2022-02-28T00:30:00.1234567Z"
}
},
"name": "Sample02",
"temp": 79,
"comfortIndex": 50
}
},
{
"Widget": {
"$dtId": "Twin-01",
"$metadata": {
"$lastUpdateTime": "2022-02-28T00:30:00.1234567Z",
"$model": "dtmi:com:example:Sample;1",
"name": {
"lastUpdateTime": "2022-02-28T00:30:00.1234567Z"
},
"temp": {
"lastUpdateTime": "2022-02-28T00:30:00.1234567Z"
},
"comfortIndex": {
"lastUpdateTime": "2022-02-28T00:30:00.1234567Z"
}
},
"name": "Sample01",
"temp": 79,
"comfortIndex": 50
},
"Gadget": {
"$dtId": "Twin-10",
"$metadata": {
"$lastUpdateTime": "2022-02-28T00:30:00.1234567Z",
"$model": "dtmi:com:example:Sample;1",
"name": {
"lastUpdateTime": "2022-02-28T00:30:00.1234567Z"
},
"temp": {
"lastUpdateTime": "2022-02-28T00:30:00.1234567Z"
},
"comfortIndex": {
"lastUpdateTime": "2022-02-28T00:30:00.1234567Z"
}
},
"name": "Sample10",
"temp": 79,
"comfortIndex": 50
}
}
]
}
Retrieve paged query results
Sample Request
POST https://digitaltwins-hostname/query?api-version=2023-10-31
{
"continuationToken": "<continuationToken from previous query>"
}
Sample Response
{
"value": [
{
"$dtId": "Twin-04",
"$metadata": {
"$lastUpdateTime": "2022-02-28T00:30:00.1234567Z",
"$model": "dtmi:com:example:Sample;1",
"name": {
"lastUpdateTime": "2022-02-28T00:30:00.1234567Z"
},
"temp": {
"lastUpdateTime": "2022-02-28T00:30:00.1234567Z"
},
"comfortIndex": {
"lastUpdateTime": "2022-02-28T00:30:00.1234567Z"
}
},
"name": "Sample04",
"temp": 79,
"comfortIndex": 50
},
{
"$dtId": "Twin-05",
"$metadata": {
"$lastUpdateTime": "2022-02-28T00:30:00.1234567Z",
"$model": "dtmi:com:example:Sample;1",
"name": {
"lastUpdateTime": "2022-02-28T00:30:00.1234567Z"
},
"temp": {
"lastUpdateTime": "2022-02-28T00:30:00.1234567Z"
},
"comfortIndex": {
"lastUpdateTime": "2022-02-28T00:30:00.1234567Z"
}
},
"name": "Sample05",
"temp": 79,
"comfortIndex": 50
},
{
"$dtId": "Twin-06",
"$metadata": {
"$lastUpdateTime": "2022-02-28T00:30:00.1234567Z",
"$model": "dtmi:com:example:Sample;1",
"name": {
"lastUpdateTime": "2022-02-28T00:30:00.1234567Z"
},
"temp": {
"lastUpdateTime": "2022-02-28T00:30:00.1234567Z"
},
"comfortIndex": {
"lastUpdateTime": "2022-02-28T00:30:00.1234567Z"
}
},
"name": "Sample06",
"temp": 79,
"comfortIndex": 50
}
]
}
Определения
Имя | Описание |
---|---|
Error |
Определение ошибки. |
Error |
Ответ об ошибке. |
Inner |
Более конкретное описание ошибки, чем указано в содержающей ошибке. |
Query |
Результаты операции запроса и необязательный маркер продолжения. |
Query |
Спецификация запроса, содержащая инструкцию запроса или маркер продолжения из предыдущего результата запроса. |
Error
Определение ошибки.
Имя | Тип | Описание |
---|---|---|
code |
string |
Код ошибки службы, который служит подсостояние для кода ошибки HTTP. |
details |
Error[] |
Сведения о внутренней ошибке. |
innererror |
Объект , содержащий более конкретные сведения об ошибке, чем текущий объект. |
|
message |
string |
Понятное представление ошибки. |
ErrorResponse
Ответ об ошибке.
Имя | Тип | Описание |
---|---|---|
error |
Сведения об ошибке. |
InnerError
Более конкретное описание ошибки, чем указано в содержающей ошибке.
Имя | Тип | Описание |
---|---|---|
code |
string |
Более конкретный код ошибки, чем указано в содержающей ошибке. |
innererror |
Объект , содержащий более конкретные сведения об ошибке, чем текущий объект. |
QueryResult
Результаты операции запроса и необязательный маркер продолжения.
Имя | Тип | Описание |
---|---|---|
continuationToken |
string |
Маркер, который можно использовать для создания нового объекта QuerySpecification для получения следующего набора результатов. |
value |
object[] |
Результаты запроса. |
QuerySpecification
Спецификация запроса, содержащая инструкцию запроса или маркер продолжения из предыдущего результата запроса.
Имя | Тип | Описание |
---|---|---|
continuationToken |
string |
Маркер, используемый для получения следующего набора результатов из предыдущего запроса. |
query |
string |
Выполняемый запрос. Это значение игнорируется, если предоставлен маркер продолжения. |
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по