leaving/mailchimp.sh

28 lines
984 B
Bash
Raw Normal View History

2023-03-04 10:16:54 +00:00
#!/bin/bash
2023-08-10 04:11:26 +00:00
# usage: bash mailchimp.sh leaver@example.org second@leaver.org
# usage: bash mailchimp.sh 'Voornaam Achternaam'
source credentials.sh
2023-02-11 12:37:21 +00:00
user="bij1:${MAILCHIMP_API_KEY}"
2023-11-11 23:17:11 +00:00
dc=$(echo $MAILCHIMP_API_KEY | sed 's/.*-//g')
2023-02-11 12:37:21 +00:00
base="https://${dc}.api.mailchimp.com/3.0/"
# get lists
curl -X GET "${base}lists?fields=lists.id,lists.name" --user $user | jq -r '.lists[]'
2023-08-10 04:03:35 +00:00
# delete from all lists
2023-02-11 12:37:21 +00:00
ids=$(curl -X GET "${base}lists?fields=lists.id" --user $user | jq -r '.lists[].id')
2023-08-10 04:03:35 +00:00
for query in "$@"; do
while IFS= read -r list_id; do
2023-02-11 12:37:21 +00:00
echo "list: $list_id"
2023-08-10 04:03:35 +00:00
delete_url=$(curl -X GET "${base}search-members?list_id=${list_id}&query=${query}&fields=exact_matches.members._links.href" --user $user | jq -r '.exact_matches.members[0]._links[-1].href')
if [ $delete_url != 'null' ]; then
echo "✅ removing: $query"
curl -X POST $delete_url --user $user
else
echo "no match for $query"
fi
done <<< "$ids"
done