#!/bin/bash # usage: bash mailchimp.sh leaver@example.org second@leaver.org # usage: bash mailchimp.sh 'Voornaam Achternaam' source credentials.sh user="bij1:${MAILCHIMP_API_KEY}" dc=$(echo $MAILCHIMP_API_KEY | sed 's/.*-//g') 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[]' # delete from all lists ids=$(curl -X GET "${base}lists?fields=lists.id" --user $user | jq -r '.lists[].id') for query in "$@"; do while IFS= read -r list_id; do echo "list: $list_id" 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