#mailchimp #mailchimp-api-v3.0
#mailchimp #mailchimp-api-v3.0
Вопрос:
Я пытаюсь отправить кампанию в сегмент на основе тегов (то есть перечислить участников с определенным тегом), используя вызовы API с mailchimp3 для Django, но я не могу найти правильную структуру json для ее создания, это то, что у меня пока есть:
campaign_creation = {
"type": "regular",
"recipients": {
"list_id": LIST_ID,
"segment_opts": {
"match": "any",
"conditions": [{
"condition_type": "StaticSegment",
"op": "contains",
"field": "Tags",
"value": ["foo"]
}]
}
},
"settings": {
"subject_line": campaign_label,
"title": campaign_label,
"from_name": FROM_NAME,
"reply_to": REPLY_TO,
},
}
Но при этом я получаю ошибку:
mailchimp3.mailchimpclient.MailChimpError: {‘тип’: ‘http://developer.mailchimp.com/documentation/mailchimp/guides/error-glossary /’, ‘заголовок’: ‘Недопустимый ресурс’, ‘статус’: 400, ‘подробности’: «Не удалось проверить отправленный ресурс. Подробные сведения о конкретных полях см. в массиве «ошибки».», ‘экземпляр’: ‘88679b18-6e55-4463-9c62-06d47b825f77’, ‘ошибки’: [{‘поле’: ‘получатели.segment_opts.conditions.item:0’, ‘сообщение’: ‘Данные не соответствуют ни одной из схем, описанных в anyOf.’}]}
Стоит упомянуть, что процедура создания и отправки кампании всему списку работает идеально, просто сбой, потому что я добавил часть segment_opts
У кого-нибудь может быть идея, как заставить это работать? Заранее спасибо!
Ответ №1:
Возможно, это старый вопрос, но вот ответ — ваш объект StaticSegment может быть неправильным. В моем случае это работает так, однако, если вы хотите использовать несколько тегов, то, возможно, правильный способ сделать это — добавить еще один StaticSegment для каждого тега. Кроме того, вы передаете foo, и я предполагаю, что вы знаете, что это должен быть идентификатор тега.
'conditions' => [
[
'condition_type' => 'StaticSegment',
'field' => 'static_segment',
'op' => 'static_is',
'value' => $tagId
]
]