@@ -158,6 +158,59 @@ created as needed.)
158158If you need the credentials for logging into ImprovMX, speak to Roni
159159160160
161+ ### Mass emails with Mailchimp
162+
163+ The Archive maintainers are able to send email to all users through the mass
164+ emailing functions of a dedicated Mailchimp account. In technical parlance,
165+ these communications are also known as "marketing email", though as a rule the
166+ maintainers do not conduct any actual marketing through this channel.
167+ Nonetheless, such communications are governed by laws and regulations such as
168+ the American CAN-SPAM Act, the California-specific CCPA, and the European
169+ Union's GDPR; Mailchimp helps the maintainers comply with these rules and
170+ regulations.
171+
172+ Our major use case for mass email is to notify the userbase of upcoming downtime
173+ (as is needed for, e.g., a major data migration or maintenance windows).
174+
175+ If you need to mass email the DANDI Archive userbase, speak to Roni Choudhury
176+ 177+
178+ #### Updating the DANDI userbase audience in Mailchimp
179+
180+ Follow these steps before sending a mass email through Mailchimp to ensure that
181+ the Mailchimp-maintained DANDI userbase audience is up to date.
182+
183+ 1 . Log into the DANDI admin panel and navigate to the dashboard page (at, e.g.,
184+ ` api.dandiarchive.org/dashboard ` ).
185+ 2 . Click on the ` Mailchimp CSV ` link in the navbar to download the CSV file to
186+ disk.
187+ 3 . Log into Mailchimp, click on the ` Audience ` section in the sidebar, then
188+ click on the ` Manage Audience ` dropdown and select ` Manage contacts ` .
189+ 4 . Click on the ` Manage audience ` dropdown and select ` Archive all contacts ` .
190+ Then follow the confirmation prompt to carry out the archiving operation.
191+ 5 . Click on the ` Add contacts ` dropdown and select ` Import contacts ` .
192+ 6 . Select the ` Upload a file ` option, and follow the wizard steps, uploading the
193+ CSV file from step 2 when prompted. Activate the `Update any existing
194+ contacts` checkbox under the ` Organize your contacts` step. Do not set any
195+ tags during the ` Tag your contacts ` step. In the `Match column labels to
196+ contact information` step, visually verify that the email address, first
197+ name, and last name columns look correctly matched. In the `Subscribe contacts
198+ to marketing` step, ensure that ` Subscribed` is selected in the dropdown. In
199+ the ` Review and complete your import ` , read over the summary and ensure it is
200+ correct before clicking the ` Complete Import ` button to finish the process.
201+
202+ It is necessary to "deactivate" the entire userbase before reimporting the
203+ current slate of users from the freshly computed CSV file because Mailchimp does
204+ not have a way to perform a PUT-like operation during import (to borrow a term
205+ from RESTful API design), only to add new users and update existing ones.
206+
207+ The reason to archive the contacts instead of deleting them has to do with
208+ Mailchimp's semantics for those actions. Deleting a user means they cannot be
209+ re-added to the audience, while archiving is a reversible action that retains
210+ all data and history and merely removes that user from the audience for purposes
211+ of receiving emails. Thus, we use an archive-and-reimport procedure to emulate
212+ the PUT-like operation we actually need.
213+
161214## Miscellaneous Tips and Information
162215
163216### Use email address to log into dev Django admin panel
0 commit comments