Я пытаюсь отправить кампанию в сегмент динамического списка на основе настраиваемого числового поля слияния (GMT_OFFSET
(в данном случае), но приведенный ниже код выдает следующую ошибку из API MailChimp:
"errors" => [
0 => [
"field" => "recipients.segment_opts.conditions.item:0""message" => "Data did not match any of the schemas described in anyOf."]
]
Мой код, используя drewm / MailChimp-апи 2,4:
$campaign = $mc->post('campaigns', [
'recipients' => [
'list_id' => config('services.mailchimp.list_id'),
'segment_opts' => [
'conditions' => [
[
'condition_type' => 'TextMerge',
'field' => 'GMT_OFFSET',
'op' => 'is',
'value' => 2,
],
],
'match' => 'all',
],
],
],
// Cut for brevity
];
Если я хочу понимать описание поля буквально (см. Ниже), TextMerge
тип условия работает только на merge0
или же EMAIL
поля, что смешно, учитывая, что заголовок типа сегмента говорит, что это «текст или Число Сегмент поля слияния ». Однако другие люди сообщили о состоянии делает работать применительно исключительно к EMAIL
поле. (Справочник по API)
Я обнаружил, что проблема опубликована, но не решена на обоих репозиториях DrewM (Вот) так что (Вот) с января 2017 года. Надеюсь, кто-то уже понял это или нашел способ обойти это.
Решил это! Я передал целочисленное значение, которое, казалось, имело смысл, учитывая, что мой GMT_OFFSET
поле слияния имело числовой тип. Служба поддержки MailChimp сказала, что это, вероятно, вызвало ошибку, и предложила вместо этого отправить строку. Работает как шарм сейчас.
Других решений пока нет …