Creates a new contact for a specific account. In this example, the account is Fourth Coffee, where the accountid = b6a19cdd-88df-e311-b8e5-6c3be5a8b200. Success is indicated by a 204 response status code with an empty response body.
curl -X POST https://my-dynamics-domain.api.crm.dynamics.com/api/data/v9.0/contacts \
-H "Accept: application/json" \
-H "Content-Type: application/json; charset=utf-8" \
-H "OData-MaxVersion: 4.0" \
-H "OData-Version: 4.0" \
-H "Authorization: Bearer DYNAMICS_CRM_ACCESS_TOKEN" \
-d '{
"fullname": "Gabby Cannata",
"firstname": "Gabby",
"lastname": "Cannata",
"emailaddress1": "gabby@fourthcoffee.com",
"address1_line1": "Carrera 1c No 10-01",
"address1_city": "Bogota",
"address1_country": "Colombia",
"telephone1": "408-233-1939",
"jobtitle": "Purchasing Assistant",
"parentcustomerid_account@odata.bind": "/accounts(b6a19cdd-88df-e311-b8e5-6c3be5a8b200)"
}'
<?php
$rest = new COM("Chilkat_9_5_0.Rest");
// URL: https://my-dynamics-domain.api.crm.dynamics.com/api/data/v9.0/contacts
$bTls = 1;
$port = 443;
$bAutoReconnect = 1;
$success = $rest->Connect('my-dynamics-domain.api.crm.dynamics.com',$port,$bTls,$bAutoReconnect);
if ($success != 1) {
print 'ConnectFailReason: ' . $rest->ConnectFailReason . "\n";
print $rest->LastErrorText . "\n";
exit;
}
$json = new COM("Chilkat_9_5_0.JsonObject");
$json->UpdateString('fullname','Gabby Cannata');
$json->UpdateString('firstname','Gabby');
$json->UpdateString('lastname','Cannata');
$json->UpdateString('emailaddress1','gabby@fourthcoffee.com');
$json->UpdateString('address1_line1','Carrera 1c No 10-01');
$json->UpdateString('address1_city','Bogota');
$json->UpdateString('address1_country','Colombia');
$json->UpdateString('telephone1','408-233-1939');
$json->UpdateString('jobtitle','Purchasing Assistant');
$json->UpdateString('\'parentcustomerid_account@odata.bind\'','/accounts(b6a19cdd-88df-e311-b8e5-6c3be5a8b200)');
$rest->AddHeader('Content-Type','application/json; charset=utf-8');
$rest->AddHeader('OData-Version','4.0');
$rest->AddHeader('Accept','application/json');
$rest->AddHeader('OData-MaxVersion','4.0');
$rest->AddHeader('Authorization','Bearer DYNAMICS_CRM_ACCESS_TOKEN');
$sbRequestBody = new COM("Chilkat_9_5_0.StringBuilder");
$json->EmitSb($sbRequestBody);
$sbResponseBody = new COM("Chilkat_9_5_0.StringBuilder");
$success = $rest->FullRequestSb('POST','/api/data/v9.0/contacts',$sbRequestBody,$sbResponseBody);
if ($success != 1) {
print $rest->LastErrorText . "\n";
exit;
}
$respStatusCode = $rest->ResponseStatusCode;
if ($respStatusCode >= 400) {
print 'Response Status Code = ' . $respStatusCode . "\n";
print 'Response Header:' . "\n";
print $rest->ResponseHeader . "\n";
print 'Response Body:' . "\n";
print $sbResponseBody->getAsString() . "\n";
exit;
}
?>