2012-07-18 2 views
1

Mailchimp의 listSubscribe를 사용하여 사용자를 목록에 등록하려고합니다. 이 목록에는 식당, 음식 서비스 운영자와 같은 단일 그룹 (id = 9917, name = 'I am a ...')이 있습니다. 내 목표는 사용자를 식품 서비스 운영자로 추가하는 것입니다. 나는이 프로그램을 실행할 때그룹화를 설정하려고 할 때 mailsnake에서 오류가 발생했습니다.

ms.listSubscribe(
    id=settings.MAILCHIMP_NEWSLETTER_LIST_ID, 
    email_address=self.user.email, 
    merge_vars={'FNAME': self.user.first_name, 
     'LNAME': self.user.last_name, 
     'GROUPINGS': 
      {'id': 9917, 
      'groups': 'food service operator',}}, 
    double_optin=False, 
    update_existing=True, 
) 

, 나는이 오류가 : 여기 내 코드의 I는 그룹의 물건을 제거하면이 완벽하게 작동

ListInvalidInterestGroupException: "" is not a valid Interest Grouping name for the list: (TEST) Newsletter

(사용자가 그룹에 추가되지 않습니다하지만) . 또한, 가비지 ID를 사용하려고하면이 동일한 오류가 발생합니다. 올바른 ID를 사용하기 위해

In [4]: ms.listInterestGroupings(id=settings.MAILCHIMP_NEWSLETTER_LIST_ID) 
Out[4]: 
[{'display_order': '0', 
    'form_field': 'checkboxes', 
    'groups': [{'bit': '1', 
    'display_order': '1', 
    'name': 'food service operator', 
    'subscribers': 0}, 
    {'bit': '2', 'display_order': '2', 'name': 'diner', 'subscribers': 0}], 
    'id': 9917, 
    'name': 'I am a ...'}] 

그래서 제대로 작동하고있는 것으로 보입니다. 왜 그렇지 않은지에 대한 생각은 없습니까?

답변

2

답변은 Mailchimp API google groups에 있습니다.

불행히도이 문제는 내가 설명서를 충분히 읽지 않아서 발생했습니다. GROUPINGS는 dicts의 배열이어야합니다. 수정 된 코드는 다음과 같습니다.

ms.listSubscribe(
    id=settings.MAILCHIMP_NEWSLETTER_LIST_ID, 
    email_address=self.user.email, 
    merge_vars={'FNAME': self.user.first_name, 
     'LNAME': self.user.last_name, 
     'GROUPINGS': [ 
      {'id': 9917, 
      'groups': 'food service operator',},]}, 
    double_optin=False, 
    update_existing=True, 
) 
관련 문제