Ошибка при отправке запроса curl php в sendinblue - PullRequest
0 голосов

XXXXXX - это ключ, сгенерированный sendinblue, когда вы регистрируетесь и генерируете ключ api-key

<code>$curl  =  curl_init ();

$headers[]  = 'Content-Type: application/json';
$headers[]  = 'api-key: XXXXXX';

curl_setopt_array($curl, array(

  CURLOPT_HEADER => 0, //TRUE para incluir el header en el output
  CURLOPT_HTTPHEADER => $headers,
  CURLOPT_URL => "https://api.sendinblue.com/v3/emailCampaigns",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "{\"recipients\":{\"listIds\":[\"2\"]},\"tag\":\"Ninguna\",\"sender\":{\"name\":\"{'name':'xyz' , 'email':'jrodriguez@cidesa.com.ve'}\",\"email\":\"jrodriguez@cidesa.com.ve\"},\"name\":\"JonathanG\",\"htmlContent\":\"La demostración usa derivadas\",\"subject\":\"Mi tema\",\"replyTo\":\"jonathangrodriguezt@gmail.com\",\"footer\":\"mi pie\",\"header\":\"mi cabeza\"}",
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo "<pre>";
  echo print_r(json_decode($response,true));
  echo "
"; }

Как вы увидите cogigo при выполнении этой ошибки

[code] => document_not_found
[message] => One or more list ids are not valid. Please enter valid list ids

Понятия не имею, что я делаю, неправильное изображение и адрес приложения (https://developers.sendinblue.com/reference#createemailcampaign-1) То, что я ищу, - это создать сообщение кампании, которое будет отправлено в коде, заменив список, который будет отмечен синим цветом на изображении, где параметры для генерации кода помещают как идентификатор контакта, так и идентификатор контакта. список, и почта контакта, но никто не помог мне. (2-е изображение Контактные данные)

Первое изображение

enter image description here

Второе изображение

enter image description here

1 Ответ

0 голосов
/ 21 мая 2019

попробуйте использовать: $ data = array ("name" => $ title, "sender" => new \ SendinBlue \ Client \ Model \ CreateEmailCampaignSender (array ('name' => $ from, 'email' =>$ replay)), "templateId" => $ template_id, "scheduleAt" => date ('c', strtotime ('2019-05-22 10:00:00')), "subject" => $ subject, "replyTo "=> $ replay," receients "=> array (" listIds "=> array (intval ($ list_id)))," inlineImageActivation "=> true);

использовать для проверки, сначала спискаid как число, а затем попробуйте использовать intval ($ list_id)

...