Python: Adding Subscribers To Mailchimp With Bulk Api V3
Im trying to write a function to create subscribers in mailchimp, but I get an error, and I can't understand what is wrong. Im using python-mailchimp (And yes, I have mye correct
Solution 1:
This is the correct way
from mailchimp3 import MailChimp
defexport_to_mailchimp():
#Get all users in DB
users = User.objects.all()
#Create list for dictionaries
operations = []
#loop through querysetfor userobject in users:
#Create dictionary for body
databody_item = {
"email_address": item.email,
"status": "subscribed",
"merge_fields": {
"FNAME": item.first_name,
"LNAME": item.last_name
}
}
#Create dictionary for a operation
operation_item = {"method":"POST", "path":"/lists/000000/members/", "body":json.dumps(databody_item)}
#Append to list
operations.append(operation_item)
client = MailChimp(settings.MAILCHIMP_USER, settings.MAILCHIMP_KEY)
batch = client.batches.create(data={"operations": operations})
Solution 2:
Here is the working one:
client = MailChimp(USERNAME, APIKEY)
deffill_list(list_id, subscribers_data):
data = {'operations': create_subscriptions_data(list_id, subscribers_data)}
client.batches.create(data)
defcreate_subscriptions_data(list_id, users_data):
return [{'method': 'PUT',
'path': 'lists/{}/members/{}'.format(list_id, str(md5(user['email_address'].encode('utf-8')))),
'body': json.dumps(user)} for user in users_data]
I guess the problem with method which need to be post. For more detail you can use below link.I found out there : https://devask.cz/questions/42175544/how-to-unsubscribe-delete-list-members-using-mailchimp3-in-python
Post a Comment for "Python: Adding Subscribers To Mailchimp With Bulk Api V3"