Поделиться через


Примеры запросов OData

Заметка

Доступ к таблицам Customer Insights - Data также можно получить с помощью API Dataverse. Мы рекомендуем использовать API Dataverse для запроса данных Customer Insights, поскольку они предлагают более обширную фильтрацию, большую пропускную способность и меньшую задержку. Дополнительную информацию см. в разделе API-интерфейсы Dataverse для Customer Insights.

Open Data Protocol (OData) — это протокол доступа к данным, основанный на базовых протоколах, таких как HTTP. Он использует общепринятые методологии, такие как REST для Интернета. Существуют различные виды библиотек и инструментов, которые можно применять для использования служб OData.

Чтобы помочь вам в создании собственных реализаций на основе API-интерфейсов Dynamics 365 Customer Insights - Data, просмотрите некоторые примеры часто используемых запросов.

Измените примеры запросов, чтобы они работали в целевых средах:

  • {serviceRoot}: https://api.ci.ai.dynamics.com/v1/instances/{instanceId}, где {instanceId} — это идентификатор GUID среды Customer Insights - Data, которую вы хотите запросить. Операция ListAllInstances дает возможность найти {InstanceId}, к которому у вас есть доступ.
  • {CID}: идентификатор GUID единой записи клиента. Пример: ce759201f786d590bf2134bff576c369.
  • {AlternateKey}: идентификатор первичного ключа записи клиента в источнике данных. Пример: CNTID_1002
  • {DSname}: строка с именем таблицы источника данных, которая принимается в Customer Insights - Data. Пример: Website_contacts.
  • {SegmentName}: строка с именем выходной таблицы сегмента в Customer Insights - Data. Пример: Male_under_40.

клиент

Примеры запросов для таблицы Клиент.

Тип запроса Пример Заметка
Единый идентификатор клиентов {serviceRoot}/data/Customer?$filter=CustomerId eq '{CID}'
Альтернативный ключ {serviceRoot}/data/Customer?$filter={DSname_TableName_PrimaryKeyColumnName} eq '{AlternateKey}' Альтернативные ключи сохраняются в единой таблице клиента
Выберите {serviceRoot}/data/Customer?$select=CustomerId,FullName&$filter=customerid eq '1'
Входит в {serviceRoot}/data/Customer?$filter=CustomerId in ('{CID1}',’{CID2}’)
Альтернативный ключ + In {serviceRoot}/data/Customer?$filter={DSname_TableName_PrimaryKeyColumnName} in ('{AlternateKey}','{AlternateKey}')
Поиск (Search) {serviceRoot}/data/Customer?$top=10&$skip=0&$search="string" Возвращает первые 10 результатов для строки поиска
Членство в сегменте {serviceRoot}/data/Customer?select=*&$filter=IsMemberOfSegment('{SegmentName}')&$top=10 Возвращает заданное количество строк из объекта таблицы.
Членство в сегменте для клиента {serviceRoot}/data/Customer?$filter=CustomerId eq '{CID}'&IsMemberOfSegment('{SegmentName}') Возвращает профиль клиента, если он является членом данного сегмента

Объединенное действие

Примеры запросов для таблицы UnifiedActivity.

Тип запроса Пример Заметка
Действие CID {serviceRoot}/data/UnifiedActivity?$filter=CustomerId eq '{CID}' Перечисляет действия определенного профиля клиента
Интервал времени действия {serviceRoot}/data/UnifiedActivity?$filter=CustomerId eq '{CID}' and ActivityTime gt 2017-01-01T00:00:00.000Z and ActivityTime lt 2020-01-01T00:00:00.000Z Действия профиля клиента в интервал времени
Тип активности {serviceRoot}/data/UnifiedActivity?$filter=CustomerId eq '{CID}' and ActivityType eq '{ActivityName}'
Действие по отображаемому имени {serviceRoot}/data/UnifiedActivity$filter=CustomerId eq ‘{CID}’ and ActivityTypeDisplay eq ‘{ActivityDisplayName}’
Сортировка действий {serviceRoot}/data/UnifiedActivity?$filter=CustomerId eq ‘{CID}’ & $orderby=ActivityTime asc Сортировка действий по возрастанию или по убыванию
Все действия и меры для клиента {serviceRoot}/data/Customer?$expand=UnifiedActivity,Customer_Measure&$filter=CustomerId eq '{CID}' Действия и меры — это дополнительные пары "ключ-значение" в возвращенном профиле клиента

Управление рабочими процессами

Примеры запросов, связанных с процессами в Customer Insights - Data, например, обновление источника данных, унификация данных или получение статуса задания унификации.

Тип запроса Пример Заметка
Получение ИД источника данных {serviceRoot}/manage/datasources/v2 Возвращает все источники данных в вашей среде. Из ответа вы можете проверить «FriendlyName» для конкретного источника данных, а затем использовать его «dataSourceId».
Обновление источника данных {serviceRoot}/manage/workflows/main/jobs?operationType=Ingestion&identifiers='{dataSourceId}'&forceRunRequested=true Используйте «dataSourceId» из приведенного выше ответа, чтобы обновить источник данных. Что POST-запрос.
Выполнить полное обновление {serviceRoot}/manage/workflows/main/jobs?operationType=all&forceRunRequested=true Обновляет все процессы в вашей среде. Что POST-запрос.
Получение статусов процессов {serviceRoot}/manage/workflows/main/jobs

Другие примеры

Примеры запросов для других таблиц.

Тип запроса Пример Заметка
Меры CID {serviceRoot}/data/Customer_Measure?$filter=CustomerId eq '{CID}'
Обогащенные бренды CID {serviceRoot}/data/BrandShareOfVoiceFromMicrosoft?$filter=CustomerId eq '{CID}'
Обогащенные интересы CID {serviceRoot}/data/InterestShareOfVoiceFromMicrosoft?$filter=CustomerId eq '{CID}'
Предложение In + Развернуть {serviceRoot}/data/Customer?$expand=UnifiedActivity,Customer_Measure&$filter=CustomerId in ('{CID}', '{CID}')

Ограничения

  • По умолчанию API Customer Insights возвращает не более 100 объектов. Вы можете проанализировать более 100 возвращенных объектов, используя стандартные методы разбиения на страницы. Кроме того, вы можете экспортировать свои данные.

  • Следующие запросы не поддерживаются:

    • $filter в принятых исходных таблицах. Запросы $filter можно выполнять только к системным таблицам, созданным Customer Insights - Data.
    • $expand из запроса $search. Например: Customer?$expand=UnifiedActivity$top=10&$skip=0&$search="corey".
    • $expand из $select, если выбрано только подмножество атрибутов. Например: Customer?$select=CustomerId,FullName&$expand=UnifiedActivity&$filter=CustomerId eq '{CID}'.
    • Обогащенные с помощью $expand значения близости брендов или интересов для конкретного клиента. Например: Customer?$expand=BrandShareOfVoiceFromMicrosoft&$filter=CustomerId eq '518291faaa12f6d853c417835d40eb10'.
    • Запрашивайте выходные таблицы модели прогнозирования через альтернативный ключ. Например: OOBModelOutputTable?$filter=HotelCustomerID eq '{AK}'.