Сущность Post (https://msdn.microsoft.com/en-us/library/mt607553.aspx) нельзя создать с помощью Dynamics CRM 2016 Online Web API.
Эта полезная нагрузка должна создать сообщение на POST /api/data/v8.1/posts
{
"text": "Test Single Post",
"source": 1,
"type": 7
}
(источник 1 - автоматическое сообщение, тип 7 - сообщение статуса)
Но возвращается:
{
"error":
{
"code":"",
"message":"An unexpected error occurred.",
"innererror"
{
"message":"An unexpected error occurred..."
}
}
}
Отправка той же полезной нагрузки только с «текстом» также не выполняется.
Обратите внимание, что объект Post не имеет однозначных свойств навигации (https://msdn.microsoft.com/en-us/library/mt607553.aspx#bkmk_SingleValuedNavigationProperties), который позволит мне установить связанный объект (контакт, учетную запись и т. д.).
Например, создание объекта «Задача» (https://msdn.microsoft.com/en-us/library/mt607619.aspx) отлично работает на POST /api/data/v8.1/tasks
{
"subject": "Test Single Task",
"description": "Test One Description of Task",
"[email protected]": "/contacts(<someguid>)",
"scheduledend": "2016-07-21T12:11:19.4875892Z"
}
Мне кажется, что Post должен выставлять что-то вроде [email protected]
, но это не так.
Для контекста, вот как создать сообщение через конечную точку SOAP и SDK:
var result = Client.getOrganizationService().Create(new Post
{
Text = post.text,
RegardingObjectId = new EntityReference(
entityName,
Guid.Parse(post.regarding_guid)
)
});
У кого-нибудь есть рабочий пример сообщения, созданного через веб-API? Это упущение в Dynamics CRM Web API?
Не похоже, что это указано в ограничениях: https://msdn.microsoft.com/en-us/library/mt628816.aspx.
ОБНОВИТЬ
Похоже, что объект пострегистрации - это то место, где должна быть создана ссылка на контакт / учетную запись. Это можно продемонстрировать, запросив:
/posts?$filter=postregardingid/regardingobjectid_contact/contactid eq <someguid>
Однако такая «глубокая вставка» не работает:
{
"text":"sometext",
"postregardingid":
{
"[email protected]":"/contacts(someguid)"
}
}
Ответ
Невозможно создать дочерние сущности перед родительской сущностью.