Я создаю веб-приложение на php, в котором мне нужно интегрировать его с локальным API Dynamic CRM 2015. В настоящее время наша CRM не использует аутентификацию (не использует ADFS). У меня есть следующий код, который возвращает мне некоторый XML / массив. Но я не уверен, что это ожидаемый результат. Он возвращает только «OrganizationData.svc».
// The host name of the on-premises dynamics instance
$host = 'crm.mycompany.com';
$organization = 'MyCompany';
$crm_url = "http://$host/$organization/";
$username = 'username';
$password = 'password';
$url = $crm_url . 'XRMServices/2011/OrganizationData.svc/SystemUserSet';
$ch = curl_init();
$headers = array(
'Method: GET',
'Connection: keep-alive',
'User-Agent: PHP-SOAP-CURL',
'Content-Type: application/json; charset=utf-8',
'Accept: application/json',
'Host: ' . $host);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_NTLM);
curl_setopt($ch, CURLOPT_USERPWD, "$username:$password");
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$response = curl_exec($ch);
curl_close($ch);
$response=json_decode($response, true);
print_r($response);
Microsoft предоставила API для создания: https://msdn.microsoft.com/en-us/library/mt770366.aspx , и получить: https://msdn.microsoft.com/en-us/library/mt607871.aspx . но я запутался, как мне это использовать?
Может кто-нибудь, пожалуйста, помогите мне. Я новичок в интеграции API. Большое спасибо..
Таким образом, API, с которыми вы связались, — это новый веб API, который отличается от старого 2011 года, который вы используете в своем примере. Веб-интерфейс (если я правильно помню) находится в форме предварительного просмотра в 2015 году и является неполным. Документация для конечной точки 2011 года, которую можно найти Вот. Мы никогда не смогли бы заставить внешнего клиента пройти аутентификацию в CRM, поэтому, если вы можете это выяснить, пожалуйста, сообщите нам об этом. Как мы реализовали интеграцию crm с некоторыми нашими системами, не относящимися к Microsoft, мы использовали небольшую страницу asp.net, которая затем использовала клиентские инструменты crm общаться с CRM от имени этого приложения.
Других решений пока нет …