Я пытаюсь создать новый контакт с пользовательскими полями, используя API GetResponse, вот мой код:
$headers = [
'Accept: application/json',
'Content-Type: application/json',
'X-Auth-Token: api-key '.$model->getresponse_key
];
$curl = curl_init();
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_URL, 'https://api.getresponse.com/v3/contacts');
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode([ 'name' => $user->full_name, 'email' => $user->email, 'campaign' => [ 'campaignId' => $model->getresponse_campaign ] , 'customFieldValues' => [['customFieldId' => 'tel', 'value' => [$user->phone]]]], JSON_FORCE_OBJECT));
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, true);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 2);
$result = curl_exec($curl);
$result2 = json_decode($result);
Я получаю этот ответ:
object(stdClass)#174 (7) {
["httpStatus"]=>
int(400)
["code"]=>
int(1000)
["codeDescription"]=>
string(78) "General error of validation process, more details should be in context section"["message"]=>
string(34) "Custom field by id: tel not found "["moreInfo"]=>
string(49) "https://apidocs.getresponse.com/en/v3/errors/1000"["context"]=>
array(0) {
}
["uuid"]=>
string(36) "b5a2465b-08df-4cdd-80c8-**********"}
Я действительно не знаю, что может пойти не так в этом коде, пожалуйста, помогите.
You can use this -
$response = new GetResponse($access_token);
$campaign = array('campaignId'=>123);
$params = array(
'email' => $email,
'campaign' => $campaign,
'name' => $fname.' '.$lname,
);
$result = $response->**addContact**($params);
$status = $response->http_status;
print_r($status);
Других решений пока нет …