# Mailchimp on boxd

> Mailchimp is an email marketing and automation platform providing campaign templates, audience segmentation, and performance analytics to drive engagement and conversions.

- Page: https://boxd.sh/integrations/mailchimp/
- CLI: `run mailchimp` (275 commands, 10 marked common)
- SDK: `import { mailchimp } from "@boxd/run"`; every parameter and response type is at `@boxd/run/mailchimp`
- Triggers: 4
- Connect: `run auth mailchimp` (Sign in with Mailchimp), or https://app.boxd.sh/integrations/detail/mailchimp
- All integrations: https://boxd.sh/integrations/ (Markdown: https://boxd.sh/integrations/index.md)

## From the shell

```sh
run auth mailchimp      # once: prints a link to connect your account
run mailchimp           # list its commands
run mailchimp get-lists-info
```

Parameters are flags (`--flag value`); object and array parameters take a JSON string. Output is YAML, or JSON with `--json`. Calls use your own connection; `--scope <name>` uses a connection shared with your team.

## From a script

```ts
import { mailchimp } from "@boxd/run";

const result = await mailchimp.getListsInfo({});
console.log(result);

mailchimp.on("campaign", { list_id: "…" }, async (event) => {
  // Campaign Trigger: runs on this machine, once per event
  console.log(event);
});
```

Run it with `run mailchimp.run.ts`. A script that calls `.on()` keeps running as a job and handles each event.

## Commands

Required flags are listed; `run mailchimp <command> --help` lists the optional ones. "common" marks what `run mailchimp` shows without `--all`.

| Command | SDK method | Required flags | Optional | Description |
|---|---|---|---|---|
| `add-automation` | `mailchimp.addAutomation()` | `--recipients--list--id` | 4 | Create a new classic abandoned cart automation in your Mailchimp account |
| `add-batch-webhook` | `mailchimp.addBatchWebhook()` | `--url` | 1 | Configure a webhook that will fire whenever any batch request completes processing |
| `add-campaign` | `mailchimp.addCampaign()` | `--type` | 53 | Create a new Mailchimp campaign |
| `add-campaign-feedback` | `mailchimp.addCampaignFeedback()` | `--campaign-id` `--message` | 2 | Add feedback on a specific Mailchimp campaign |
| `add-campaign-folder` | `mailchimp.addCampaignFolder()` | `--name` | 0 | Create a new campaign folder to organize email campaigns in Mailchimp |
| `add-cart` | `mailchimp.addCart()` | `--currency-code` `--customer--email--address` `--customer--id` `--customer--opt--in--status` `--id` `--lines` `--order-total` `--store-id` | 14 | Add a new cart to a store |
| `add-cart-line-item` | `mailchimp.addCartLineItem()` | `--cart-id` `--id` `--price` `--product-id` `--product-variant-id` `--quantity` `--store-id` | 0 | Add a new line item to an existing cart |
| `add-connected-site` | `mailchimp.addConnectedSite()` | `--domain` `--foreign-id` | 0 | Create a new Mailchimp connected site |
| `add-contact-to-audience` ·common | `mailchimp.addContactToAudience()` | `--audience-id` | 7 | Create a new omni-channel contact in a Mailchimp audience |
| `add-domain-to-account` | `mailchimp.addDomainToAccount()` | `--verification-email` | 0 | Add a sending domain to the Mailchimp account for email verification |
| `add-event` | `mailchimp.addEvent()` | `--list-id` `--name` `--subscriber-hash` | 3 | Add an event for a list member |
| `add-export` | `mailchimp.addExport()` | `--include-stages` | 1 | Create a new account export in your Mailchimp account |
| `add-file` | `mailchimp.addFile()` | `--file-data` `--name` | 1 | Upload a new image or file to the Mailchimp File Manager |
| `add-folder` | `mailchimp.addFolder()` | `--name` | 3 | Create a new folder in the File Manager to organize uploaded files |
| `add-interest-category` | `mailchimp.addInterestCategory()` | `--list-id` `--title` `--type` | 1 | Create a new interest category |
| `add-interest-in-category` | `mailchimp.addInterestInCategory()` | `--interest-category-id` `--list-id` `--name` | 1 | Create a new interest or 'group name' for a specific category |
| `add-landing-page` | `mailchimp.addLandingPage()` | — | 10 | Create a new Mailchimp landing page |
| `add-list` | `mailchimp.addList()` | `--campaign--defaults--from--email` `--campaign--defaults--from--name` `--campaign--defaults--language` `--campaign--defaults--subject` `--contact--address1` `--contact--city` `--contact--company` `--contact--country` `--name` `--permission-reminder` | 10 | Create a new audience (list) in your Mailchimp account |
| `add-member-note` | `mailchimp.addMemberNote()` | `--list-id` `--note` `--subscriber-hash` | 0 | Add a new note for a specific subscriber in a Mailchimp list (audience) |
| `add-member-to-segment` | `mailchimp.addMemberToSegment()` | `--email-address` `--list-id` `--segment-id` | 0 | Add an existing list member to a static segment (tag) in Mailchimp |
| `add-merge-field` | `mailchimp.addMergeField()` | `--list-id` `--name` `--type` | 11 | Add a new merge field for a specific audience |
| `add-or-remove-member-tags` | `mailchimp.addOrRemoveMemberTags()` | `--list-id` `--subscriber-hash` `--tags` | 1 | Add or remove tags from a list member |
| `add-or-update-customer` | `mailchimp.addOrUpdateCustomer()` | `--customer-id` `--email-address` `--id` `--opt-in-status` `--store-id` | 11 | Add or update a customer in a Mailchimp e-commerce store |
| `add-or-update-list-member` | `mailchimp.addOrUpdateListMember()` | `--email-address` `--list-id` `--status-if-new` `--subscriber-hash` | 14 | Add or update a list member (subscriber) in a Mailchimp audience/list |
| `add-or-update-product-variant` | `mailchimp.addOrUpdateProductVariant()` | `--id` `--product-id` `--store-id` `--title` `--variant-id` | 7 | Add a new product variant or update an existing one in a Mailchimp e-commerce store |
| `add-order-line-item` | `mailchimp.addOrderLineItem()` | `--id` `--order-id` `--price` `--product-id` `--product-variant-id` `--quantity` `--store-id` | 1 | Add a new line item to an existing order in a Mailchimp e-commerce store |
| `add-product` | `mailchimp.addProduct()` | `--id` `--store-id` `--title` `--variants` | 8 | Add a new product to a Mailchimp e-commerce store |
| `add-product-image` | `mailchimp.addProductImage()` | `--id` `--product-id` `--store-id` `--url` | 1 | Add a new image to a product in a Mailchimp e-commerce store |
| `add-promo-code` | `mailchimp.addPromoCode()` | `--code` `--id` `--promo-rule-id` `--redemption-url` `--store-id` | 4 | Add a new promo code to an e-commerce store under an existing promo rule |
| `add-promo-rule` | `mailchimp.addPromoRule()` | `--amount` `--description` `--id` `--store-id` `--target` `--type` | 6 | Add a new promo rule to a store |
| `add-segment` | `mailchimp.addSegment()` | `--list-id` `--name` | 3 | Create a new segment in a specific Mailchimp list/audience |
| `add-store` | `mailchimp.addStore()` | `--currency-code` `--id` `--list-id` `--name` | 18 | Add a new store to your Mailchimp account |
| `add-subscriber-to-workflow-email` | `mailchimp.addSubscriberToWorkflowEmail()` | `--email-address` `--workflow-email-id` `--workflow-id` | 0 | Manually add a subscriber to a classic automation workflow email queue, bypassing the default trigger settings |
| `add-template` | `mailchimp.addTemplate()` | `--html` `--name` | 1 | Create a new email template in the Mailchimp account |
| `add-template-folder` | `mailchimp.addTemplateFolder()` | `--name` | 0 | Create a new template folder in Mailchimp |
| `add-webhook` | `mailchimp.addWebhook()` | `--list-id` `--url` | 9 | Create a new webhook for a specific Mailchimp audience/list |
| `archive-automation` | `mailchimp.archiveAutomation()` | `--workflow-id` | 0 | Permanently archive a classic automation workflow in Mailchimp |
| `archive-contact` | `mailchimp.archiveContact()` | `--audience-id` `--contact-id` | 0 | Archive a contact in a Mailchimp audience |
| `archive-list-member` | `mailchimp.archiveListMember()` | `--list-id` `--subscriber-hash` | 0 | Archive (soft delete) a list member from a Mailchimp audience |
| `batch-add-or-remove-members` | `mailchimp.batchAddOrRemoveMembers()` | `--list-id` `--segment-id` | 2 | Batch add or remove list members from a static segment in Mailchimp |
| `batch-subscribe-or-unsubscribe` | `mailchimp.batchSubscribeOrUnsubscribe()` | `--list-id` `--members` | 4 | Batch subscribe or unsubscribe list members |
| `campaign-abuse-report-details` | `mailchimp.campaignAbuseReportDetails()` | `--campaign-id` `--report-id` | 2 | Get detailed information about a specific abuse report for a campaign |
| `campaign-statistics-feedback` | `mailchimp.campaignStatisticsFeedback()` | `--campaign-id` | 2 | Get feedback based on a campaign's statistics |
| `cancel-campaign` | `mailchimp.cancelCampaign()` | `--campaign-id` | 0 | Cancel a Regular or Plain-Text Campaign after you send, before all of your recipients receive it |
| `create-survey-campaign` | `mailchimp.createSurveyCampaign()` | `--list-id` `--survey-id` | 0 | Create a new email campaign that links to a specific survey in Mailchimp |
| `customer-journeys-api-trigger-for-contact` | `mailchimp.customerJourneysApiTriggerForContact()` | `--email-address` `--journey-id` `--step-id` | 0 | Trigger a Customer Journey step for a specific contact via the Mailchimp API |
| `customize-signup-form` | `mailchimp.customizeSignupForm()` | `--list-id` | 13 | Customize the appearance and content of a Mailchimp list's signup form |
| `delete-batch-request` | `mailchimp.deleteBatchRequest()` | `--batch-id` | 0 | Stops a batch request from running |
| `delete-batch-webhook` | `mailchimp.deleteBatchWebhook()` | `--batch-webhook-id` | 0 | Permanently delete a batch webhook by its ID |
| `delete-campaign` | `mailchimp.deleteCampaign()` | `--campaign-id` | 0 | Permanently delete a campaign from your Mailchimp account |
| `delete-campaign-feedback-message` | `mailchimp.deleteCampaignFeedbackMessage()` | `--campaign-id` `--feedback-id` | 0 | Remove a specific feedback message for a campaign |
| `delete-campaign-folder` | `mailchimp.deleteCampaignFolder()` | `--folder-id` | 0 | Delete a specific campaign folder from Mailchimp |
| `delete-cart` | `mailchimp.deleteCart()` | `--cart-id` `--store-id` | 0 | Delete a cart from an e-commerce store |
| `delete-cart-line-item` | `mailchimp.deleteCartLineItem()` | `--cart-id` `--line-id` `--store-id` | 0 | Delete a specific line item from a cart in a Mailchimp e-commerce store |
| `delete-connected-site` | `mailchimp.deleteConnectedSite()` | `--connected-site-id` | 0 | Remove a connected site from your Mailchimp account |
| `delete-customer` | `mailchimp.deleteCustomer()` | `--customer-id` `--store-id` | 0 | Delete a customer from an e-commerce store |
| `delete-domain` | `mailchimp.deleteDomain()` | `--domain-name` | 0 | Delete a sending domain from the Mailchimp account's verified domains |
| `delete-file` | `mailchimp.deleteFile()` | `--file-id` | 0 | Permanently remove a file from the Mailchimp File Manager |
| `delete-folder` | `mailchimp.deleteFolder()` | `--folder-id` | 0 | Delete a specific folder in the File Manager |
| `delete-interest-category` | `mailchimp.deleteInterestCategory()` | `--interest-category-id` `--list-id` | 0 | Delete a specific interest category from a Mailchimp audience/list |
| `delete-interest-in-category` | `mailchimp.deleteInterestInCategory()` | `--interest-category-id` `--interest-id` `--list-id` | 0 | Delete a specific interest (group name) from an interest category within a Mailchimp list |
| `delete-landing-page` | `mailchimp.deleteLandingPage()` | `--page-id` | 0 | Permanently delete a Mailchimp landing page |
| `delete-list` | `mailchimp.deleteList()` | `--list-id` | 0 | Permanently delete a list (audience) from your Mailchimp account |
| `delete-list-member` | `mailchimp.deleteListMember()` | `--list-id` `--subscriber-hash` | 0 | Permanently delete a list member and all their personally identifiable information (PII) |
| `delete-merge-field` | `mailchimp.deleteMergeField()` | `--list-id` `--merge-id` | 0 | Delete a specific merge field (audience field) from a Mailchimp list/audience |
| `delete-note` | `mailchimp.deleteNote()` | `--list-id` `--note-id` `--subscriber-hash` | 0 | Delete a specific note for a list member in Mailchimp |
| `delete-order` | `mailchimp.deleteOrder()` | `--order-id` `--store-id` | 0 | Permanently delete an order from a Mailchimp e-commerce store |
| `delete-order-line-item` | `mailchimp.deleteOrderLineItem()` | `--line-id` `--order-id` `--store-id` | 0 | Delete a specific line item from an order in a Mailchimp e-commerce store |
| `delete-product` | `mailchimp.deleteProduct()` | `--product-id` `--store-id` | 0 | Permanently delete a product from a Mailchimp e-commerce store |
| `delete-product-image` | `mailchimp.deleteProductImage()` | `--image-id` `--product-id` `--store-id` | 0 | Delete a product image from a Mailchimp e-commerce store |
| `delete-product-variant` | `mailchimp.deleteProductVariant()` | `--product-id` `--store-id` `--variant-id` | 0 | Delete a specific product variant from a Mailchimp e-commerce store |
| `delete-promo-code` | `mailchimp.deletePromoCode()` | `--promo-code-id` `--promo-rule-id` `--store-id` | 0 | Delete a promo code from an e-commerce store |
| `delete-promo-rule` | `mailchimp.deletePromoRule()` | `--promo-rule-id` `--store-id` | 0 | Permanently delete a promo rule from a Mailchimp e-commerce store |
| `delete-segment` | `mailchimp.deleteSegment()` | `--list-id` `--segment-id` | 0 | Permanently delete a segment from a Mailchimp list (audience) |
| `delete-store` | `mailchimp.deleteStore()` | `--store-id` | 0 | Delete an e-commerce store from your Mailchimp account |
| `delete-template` | `mailchimp.deleteTemplate()` | `--template-id` | 0 | Permanently delete a user-created email template from your Mailchimp account |
| `delete-template-folder` | `mailchimp.deleteTemplateFolder()` | `--folder-id` | 0 | Permanently delete a template folder from your Mailchimp account |
| `delete-webhook` | `mailchimp.deleteWebhook()` | `--list-id` `--webhook-id` | 0 | Delete a specific webhook from a Mailchimp audience/list |
| `delete-workflow-email` | `mailchimp.deleteWorkflowEmail()` | `--workflow-email-id` `--workflow-id` | 0 | Permanently delete an email from a classic automation workflow |
| `forget-contact` | `mailchimp.forgetContact()` | `--audience-id` `--contact-id` | 0 | Forget a contact and remove their personally identifiable information (PII) |
| `get-abuse-report` | `mailchimp.getAbuseReport()` | `--list-id` `--report-id` | 2 | Get details about a specific abuse report |
| `get-account-export-info` | `mailchimp.getAccountExportInfo()` | `--export-id` | 2 | Get detailed information about a specific Mailchimp account export |
| `get-audiences-contacts` ·common | `mailchimp.getAudiencesContacts()` | `--audience-id` | 10 | Get a list of omni-channel contacts for a given audience |
| `get-audiences-contacts-detail` ·common | `mailchimp.getAudiencesContactsDetail()` | `--audience-id` `--contact-id` | 2 | Retrieve a specific omni-channel contact from a Mailchimp audience by their ID or channel hash |
| `get-authorized-app-info` | `mailchimp.getAuthorizedAppInfo()` | `--app-id` | 2 | Retrieve detailed information about a specific authorized OAuth application |
| `get-automated-email-subscriber` | `mailchimp.getAutomatedEmailSubscriber()` | `--subscriber-hash` `--workflow-email-id` `--workflow-id` | 0 | Get information about a specific subscriber in a classic automation email queue |
| `get-automation-info` | `mailchimp.getAutomationInfo()` | `--workflow-id` | 2 | Retrieve details of a Mailchimp automation workflow by its ID |
| `get-batch-operation-status` | `mailchimp.getBatchOperationStatus()` | `--batch-id` | 2 | Get the status of a batch operation |
| `get-batch-webhook-info` | `mailchimp.getBatchWebhookInfo()` | `--batch-webhook-id` | 2 | Retrieve detailed information about a specific batch webhook by its ID |
| `get-campaign-content` | `mailchimp.getCampaignContent()` | `--campaign-id` | 2 | Get the HTML and plain-text content for a campaign |
| `get-campaign-feedback-message` | `mailchimp.getCampaignFeedbackMessage()` | `--campaign-id` `--feedback-id` | 2 | Get a specific feedback message from a campaign |
| `get-campaign-folder` | `mailchimp.getCampaignFolder()` | `--folder-id` | 2 | Get information about a specific folder used to organize campaigns in Mailchimp |
| `get-campaign-info` ·common | `mailchimp.getCampaignInfo()` | `--campaign-id` | 3 | Get information about a specific campaign |
| `get-campaign-link-details` | `mailchimp.getCampaignLinkDetails()` | `--campaign-id` `--link-id` | 2 | Get click details for a specific link in a campaign |
| `get-campaign-recipient-info` | `mailchimp.getCampaignRecipientInfo()` | `--campaign-id` `--subscriber-hash` | 2 | Get information about a specific campaign recipient |
| `get-campaign-report` | `mailchimp.getCampaignReport()` | `--campaign-id` | 2 | Retrieve detailed performance report for a Mailchimp campaign |
| `get-campaign-send-checklist` | `mailchimp.getCampaignSendChecklist()` | `--campaign-id` | 2 | Review the send checklist for a Mailchimp campaign before sending |
| `get-cart-info` | `mailchimp.getCartInfo()` | `--cart-id` `--store-id` | 2 | Retrieve detailed information about a specific cart in an e-commerce store, including customer details and line items |
| `get-cart-line-item` | `mailchimp.getCartLineItem()` | `--cart-id` `--line-id` `--store-id` | 2 | Retrieve detailed information about a specific line item in a shopping cart |
| `get-clicked-link-subscriber` | `mailchimp.getClickedLinkSubscriber()` | `--campaign-id` `--link-id` `--subscriber-hash` | 2 | Get detailed information about a specific subscriber who clicked a link in a campaign |
| `get-connected-site` | `mailchimp.getConnectedSite()` | `--connected-site-id` | 2 | Retrieve information about a specific connected site in your Mailchimp account |
| `get-conversation` | `mailchimp.getConversation()` | `--conversation-id` | 2 | API endpoint for Conversations is deprecated, replaced by Inbox |
| `get-customer-info` | `mailchimp.getCustomerInfo()` | `--customer-id` `--store-id` | 2 | Get information about a specific customer |
| `get-domain-info` | `mailchimp.getDomainInfo()` | `--domain-name` | 0 | Get the details for a single verified domain on the Mailchimp account |
| `get-facebook-ad-info` | `mailchimp.getFacebookAdInfo()` | `--outreach-id` | 2 | Retrieve detailed information about a specific Facebook ad created through Mailchimp |
| `get-facebook-ad-report` | `mailchimp.getFacebookAdReport()` | `--outreach-id` | 2 | Retrieve detailed performance report for a specific Facebook ad campaign |
| `get-file` | `mailchimp.getFile()` | `--file-id` | 2 | Retrieve detailed information about a specific file in the Mailchimp File Manager |
| `get-folder` | `mailchimp.getFolder()` | `--folder-id` | 2 | Get information about a specific folder in the File Manager |
| `get-growth-history-by-month` | `mailchimp.getGrowthHistoryByMonth()` | `--list-id` `--month` | 2 | Retrieves detailed growth statistics for a Mailchimp audience/list for a specific month |
| `get-information-about-all-surveys-for-list` | `mailchimp.getInformationAboutAllSurveysForList()` | `--list-id` | 0 | Get information about all available surveys for a specific list |
| `get-interest-category-info` | `mailchimp.getInterestCategoryInfo()` | `--interest-category-id` `--list-id` | 2 | Get detailed information about a specific interest category within a Mailchimp list/audience |
| `get-interest-in-category` | `mailchimp.getInterestInCategory()` | `--interest-category-id` `--interest-id` `--list-id` | 2 | Retrieve details of a specific interest (group) within an interest category for a Mailchimp list |
| `get-landing-page-content` | `mailchimp.getLandingPageContent()` | `--page-id` | 2 | Get the HTML content for a specific Mailchimp landing page by its unique page ID |
| `get-landing-page-info` | `mailchimp.getLandingPageInfo()` | `--page-id` | 2 | Retrieve detailed information about a specific Mailchimp landing page including its name, title, status, tracking settings, and associated list |
| `get-landing-page-report` | `mailchimp.getLandingPageReport()` | `--outreach-id` | 2 | Get analytics report for a specific landing page |
| `get-latest-chimp-chatter` | `mailchimp.getLatestChimpChatter()` | — | 2 | Return the Chimp Chatter for this account ordered by most recent |
| `get-list-info` | `mailchimp.getListInfo()` | `--list-id` | 3 | Get information about a specific list in your Mailchimp account |
| `get-lists-info` ·common | `mailchimp.getListsInfo()` | — | 13 | Get information about all lists in the account |
| `get-member-info` | `mailchimp.getMemberInfo()` | `--list-id` `--subscriber-hash` | 2 | Get information about a specific list member, including a currently subscribed, unsubscribed, or bounced member |
| `get-member-note` | `mailchimp.getMemberNote()` | `--list-id` `--note-id` `--subscriber-hash` | 2 | Retrieve a specific note attached to a list member in Mailchimp |
| `get-merge-field` | `mailchimp.getMergeField()` | `--list-id` `--merge-id` | 2 | Retrieve details about a specific merge field (custom audience field) for a Mailchimp list |
| `get-message` | `mailchimp.getMessage()` | `--conversation-id` `--message-id` | 2 | The conversation endpoint is outdated and replaced by Inbox, which isn't supported by it |
| `get-opened-campaign-subscriber` | `mailchimp.getOpenedCampaignSubscriber()` | `--campaign-id` `--subscriber-hash` | 2 | Get information about a specific subscriber who opened a campaign |
| `get-order-info` | `mailchimp.getOrderInfo()` | `--order-id` `--store-id` | 2 | Get information about a specific order |
| `get-order-line-item` | `mailchimp.getOrderLineItem()` | `--line-id` `--order-id` `--store-id` | 2 | Get information about a specific order line item |
| `get-product-image-info` | `mailchimp.getProductImageInfo()` | `--image-id` `--product-id` `--store-id` | 2 | Retrieve detailed information about a specific product image in a Mailchimp e-commerce store |
| `get-product-info` | `mailchimp.getProductInfo()` | `--product-id` `--store-id` | 2 | Get information about a specific product |
| `get-product-variant-info` | `mailchimp.getProductVariantInfo()` | `--product-id` `--store-id` `--variant-id` | 2 | Retrieve detailed information about a specific product variant from a Mailchimp e-commerce store |
| `get-promo-code` | `mailchimp.getPromoCode()` | `--promo-code-id` `--promo-rule-id` `--store-id` | 2 | Retrieve detailed information about a specific promo code |
| `get-promo-rule` | `mailchimp.getPromoRule()` | `--promo-rule-id` `--store-id` | 2 | Get information about a specific promo rule |
| `get-segment-info` | `mailchimp.getSegmentInfo()` | `--list-id` `--segment-id` | 5 | Get information about a specific segment |
| `get-store-info` | `mailchimp.getStoreInfo()` | `--store-id` | 2 | Get information about a specific store |
| `get-subscriber-email-activity` | `mailchimp.getSubscriberEmailActivity()` | `--campaign-id` `--subscriber-hash` | 3 | Get a specific list member's email activity in a sent campaign, including opens, clicks, bounces, and unsubscribes |
| `get-subscriber-removed-from-workflow` | `mailchimp.getSubscriberRemovedFromWorkflow()` | `--subscriber-hash` `--workflow-id` | 0 | Get information about a specific subscriber who was removed from a classic automation workflow |
| `get-survey` | `mailchimp.getSurvey()` | `--list-id` `--survey-id` | 0 | Retrieves detailed information about a specific survey associated with a Mailchimp audience (list) |
| `get-survey-question-report` | `mailchimp.getSurveyQuestionReport()` | `--question-id` `--survey-id` | 2 | Retrieves detailed reporting data for a specific question in a survey |
| `get-survey-report` | `mailchimp.getSurveyReport()` | `--survey-id` | 2 | Retrieves detailed reporting data for a specific survey |
| `get-survey-response` | `mailchimp.getSurveyResponse()` | `--response-id` `--survey-id` | 0 | Retrieve a single survey response by its ID |
| `get-template-folder` | `mailchimp.getTemplateFolder()` | `--folder-id` | 2 | Retrieve information about a specific template folder in Mailchimp |
| `get-template-info` | `mailchimp.getTemplateInfo()` | `--template-id` | 2 | Get information about a specific template |
| `get-unsubscribed-member` | `mailchimp.getUnsubscribedMember()` | `--campaign-id` `--subscriber-hash` | 2 | Get detailed information about a specific list member who unsubscribed from a campaign |
| `get-webhook-info` | `mailchimp.getWebhookInfo()` | `--list-id` `--webhook-id` | 0 | Get information about a specific webhook for a Mailchimp list (audience) |
| `get-workflow-email-info` | `mailchimp.getWorkflowEmailInfo()` | `--workflow-email-id` `--workflow-id` | 0 | Get information about an individual classic automation workflow email |
| `list-abuse-reports` | `mailchimp.listAbuseReports()` | `--list-id` | 4 | Get all abuse reports for a specific list |
| `list-account-exports` | `mailchimp.listAccountExports()` | — | 4 | Get a list of account exports for a given account |
| `list-account-orders` | `mailchimp.listAccountOrders()` | — | 8 | Get information about an account's orders |
| `list-answers-for-question` | `mailchimp.listAnswersForQuestion()` | `--question-id` `--survey-id` | 3 | Retrieves all answers submitted for a specific question in a Mailchimp survey |
| `list-api-root-resources` | `mailchimp.listApiRootResources()` | — | 2 | Get Mailchimp account details and links to all available API resources |
| `list-authorized-apps` | `mailchimp.listAuthorizedApps()` | — | 4 | Get a list of an account's registered, connected applications |
| `list-automated-email-subscribers` | `mailchimp.listAutomatedEmailSubscribers()` | `--workflow-email-id` `--workflow-id` | 0 | Get information about a classic automation email queue |
| `list-automated-emails` | `mailchimp.listAutomatedEmails()` | `--workflow-id` | 0 | Get a summary of the emails in a classic automation workflow |
| `list-automations` | `mailchimp.listAutomations()` | — | 9 | Get a summary of an account's classic automations |
| `list-batch-requests` | `mailchimp.listBatchRequests()` | — | 4 | Get a summary of batch requests that have been made |
| `list-batch-webhooks` | `mailchimp.listBatchWebhooks()` | — | 4 | Get all webhooks that have been configured for batches |
| `list-campaign-feedback` | `mailchimp.listCampaignFeedback()` | `--campaign-id` | 2 | Get team feedback while you're working together on a Mailchimp campaign |
| `list-campaign-folders` | `mailchimp.listCampaignFolders()` | — | 4 | Get all folders used to organize campaigns |
| `list-campaign-open-details` | `mailchimp.listCampaignOpenDetails()` | `--campaign-id` | 7 | Get detailed information about any campaign emails that were opened by a list member |
| `list-campaign-product-activity` | `mailchimp.listCampaignProductActivity()` | `--campaign-id` | 5 | Get breakdown of product activity for a campaign |
| `list-campaign-recipients` | `mailchimp.listCampaignRecipients()` | `--campaign-id` | 4 | Get information about campaign recipients |
| `list-campaign-reports` | `mailchimp.listCampaignReports()` | — | 7 | Retrieve analytics reports for sent email campaigns |
| `list-campaigns` ·common | `mailchimp.listCampaigns()` | — | 16 | Get all campaigns in an account |
| `list-cart-line-items` | `mailchimp.listCartLineItems()` | `--cart-id` `--store-id` | 4 | Retrieve all line items in a shopping cart |
| `list-carts` | `mailchimp.listCarts()` | `--store-id` | 4 | Get information about a store's carts |
| `list-child-campaign-reports` | `mailchimp.listChildCampaignReports()` | `--campaign-id` | 2 | Get a list of child campaign reports for a specific parent campaign |
| `list-clicked-link-subscribers` | `mailchimp.listClickedLinkSubscribers()` | `--campaign-id` `--link-id` | 4 | Get information about list members who clicked on a specific link in a campaign |
| `list-connected-sites` | `mailchimp.listConnectedSites()` | — | 4 | Get all connected sites in an account |
| `list-conversations` | `mailchimp.listConversations()` | — | 7 | List of conversations for an account is available via an endpoint, but it's deprecated in favor of Inbox |
| `list-customers` | `mailchimp.listCustomers()` | `--store-id` | 5 | Get information about a store's customers |
| `list-domain-performance-stats` | `mailchimp.listDomainPerformanceStats()` | `--campaign-id` | 2 | Get statistics for the top-performing email domains in a campaign |
| `list-eep-url-activity` | `mailchimp.listEepUrlActivity()` | `--campaign-id` | 2 | Get EepURL click activity for a campaign |
| `list-email-activity` | `mailchimp.listEmailActivity()` | `--campaign-id` | 5 | Get a list of member's subscriber activity in a specific campaign |
| `list-facebook-ads` | `mailchimp.listFacebookAds()` | — | 6 | Get list of Facebook ads |
| `list-facebook-ads-reports` | `mailchimp.listFacebookAdsReports()` | — | 6 | Get reports of Facebook ads |
| `list-facebook-ecommerce-report` | `mailchimp.listFacebookEcommerceReport()` | `--outreach-id` | 5 | Get breakdown of product activity for a Facebook ad outreach |
| `list-folders` | `mailchimp.listFolders()` | — | 7 | Get a list of all folders in the File Manager |
| `list-growth-history-data` | `mailchimp.listGrowthHistoryData()` | `--list-id` | 6 | Get a month-by-month summary of a specific list's growth activity |
| `list-interest-categories` | `mailchimp.listInterestCategories()` | `--list-id` | 5 | Get information about a list's interest categories |
| `list-interests-in-category` | `mailchimp.listInterestsInCategory()` | `--interest-category-id` `--list-id` | 4 | Get a list of this category's interests |
| `list-landing-pages` | `mailchimp.listLandingPages()` | — | 5 | Get all landing pages |
| `list-landing-pages-reports` | `mailchimp.listLandingPagesReports()` | — | 4 | Get performance reports for landing pages |
| `list-locations` | `mailchimp.listLocations()` | `--list-id` | 2 | Get the locations (countries) that the list's subscribers have been tagged to based on geocoding their IP address |
| `list-member-events` | `mailchimp.listMemberEvents()` | `--list-id` `--subscriber-hash` | 4 | Get events for a contact |
| `list-member-goal-events` | `mailchimp.listMemberGoalEvents()` | `--list-id` `--subscriber-hash` | 2 | Get the last 50 Goal events for a member on a specific list |
| `list-member-tags` | `mailchimp.listMemberTags()` | `--list-id` `--subscriber-hash` | 4 | Get the tags on a list member |
| `list-members-in-segment` | `mailchimp.listMembersInSegment()` | `--list-id` `--segment-id` | 7 | Get information about members in a saved segment |
| `list-members-info` | `mailchimp.listMembersInfo()` | `--list-id` | 19 | Get information about members in a specific Mailchimp list |
| `list-merge-fields` | `mailchimp.listMergeFields()` | `--list-id` | 6 | Get a list of all merge fields for an audience |
| `list-messages` | `mailchimp.listMessages()` | `--conversation-id` | 5 | List all messages from a specific conversation in Mailchimp |
| `list-order-line-items` | `mailchimp.listOrderLineItems()` | `--order-id` `--store-id` | 4 | Get information about an order's line items |
| `list-orders` | `mailchimp.listOrders()` | `--store-id` | 8 | Get information about a store's orders |
| `list-product` | `mailchimp.listProduct()` | `--store-id` | 4 | Get information about a store's products |
| `list-product-images` | `mailchimp.listProductImages()` | `--product-id` `--store-id` | 4 | Get information about a product's images |
| `list-product-variants` | `mailchimp.listProductVariants()` | `--product-id` `--store-id` | 4 | List all variants for a specific product in a Mailchimp e-commerce store |
| `list-promo-codes` | `mailchimp.listPromoCodes()` | `--promo-rule-id` `--store-id` | 4 | Get information about a store's promo codes |
| `list-promo-rules` | `mailchimp.listPromoRules()` | `--store-id` | 4 | Get information about a store's promo rules |
| `list-recent-activity` ·common | `mailchimp.listRecentActivity()` | `--list-id` | 4 | Get up to the previous 180 days of daily detailed aggregated activity stats for a list, not including Automation activity |
| `list-recent-member-notes` | `mailchimp.listRecentMemberNotes()` | `--list-id` `--subscriber-hash` | 6 | Get recent notes for a specific list member |
| `list-segments` | `mailchimp.listSegments()` | `--list-id` | 12 | Get information about all available segments for a specific list |
| `list-sending-domains` | `mailchimp.listSendingDomains()` | — | 0 | Get all of the sending domains on the account |
| `list-signup-forms` | `mailchimp.listSignupForms()` | `--list-id` | 0 | Get signup forms for a specific list |
| `list-stored-files` | `mailchimp.listStoredFiles()` | — | 10 | Get a list of available images and files stored in the File Manager for the account |
| `list-stores` | `mailchimp.listStores()` | — | 4 | Get information about all stores in the account |
| `list-subscribers-removed-from-workflow` | `mailchimp.listSubscribersRemovedFromWorkflow()` | `--workflow-id` | 0 | Get information about subscribers who were removed from a classic automation workflow |
| `list-survey-question-reports` | `mailchimp.listSurveyQuestionReports()` | `--survey-id` | 2 | Get reports for all questions in a specific survey |
| `list-survey-reports` | `mailchimp.listSurveyReports()` | — | 4 | Get reports for surveys |
| `list-survey-responses` | `mailchimp.listSurveyResponses()` | `--survey-id` | 7 | Retrieve all responses submitted to a survey |
| `list-template-folders` | `mailchimp.listTemplateFolders()` | — | 4 | Retrieve all template folders from the Mailchimp account |
| `list-templates` | `mailchimp.listTemplates()` | — | 13 | Get a list of an account's available templates |
| `list-top-email-clients` | `mailchimp.listTopEmailClients()` | `--list-id` | 2 | Get the top email clients used by subscribers in a Mailchimp list/audience |
| `list-top-open-activities` | `mailchimp.listTopOpenActivities()` | `--campaign-id` | 4 | Get top open locations for a specific campaign |
| `list-unsubscribed-members` | `mailchimp.listUnsubscribedMembers()` | `--campaign-id` | 4 | Get information about members who have unsubscribed from a specific campaign |
| `list-webhooks` | `mailchimp.listWebhooks()` | `--list-id` | 0 | Get information about all webhooks for a specific list |
| `pause-automated-email` | `mailchimp.pauseAutomatedEmail()` | `--workflow-email-id` `--workflow-id` | 0 | Pause a specific automated email within a classic automation workflow |
| `pause-automation-emails` | `mailchimp.pauseAutomationEmails()` | `--workflow-id` | 0 | Pause all emails in a specific classic automation workflow |
| `pause-rss-campaign` | `mailchimp.pauseRssCampaign()` | `--campaign-id` | 0 | Pause an RSS-Driven campaign that is currently sending |
| `ping` | `mailchimp.ping()` | — | 0 | A health check for the API that won't return any account-specific information |
| `publish-landing-page` | `mailchimp.publishLandingPage()` | `--page-id` | 0 | Publish a Mailchimp landing page to make it live and accessible to visitors |
| `publish-survey` | `mailchimp.publishSurvey()` | `--list-id` `--survey-id` | 0 | Publishes a survey that is in draft, unpublished, or has been previously published and edited |
| `remove-list-member-from-segment` | `mailchimp.removeListMemberFromSegment()` | `--list-id` `--segment-id` `--subscriber-hash` | 0 | Remove a member from a static segment in a Mailchimp list/audience |
| `remove-subscriber-from-workflow` | `mailchimp.removeSubscriberFromWorkflow()` | `--email-address` `--workflow-id` | 0 | Remove a subscriber from a classic automation workflow at any point in the sequence |
| `replicate-campaign` | `mailchimp.replicateCampaign()` | `--campaign-id` | 0 | Replicate a campaign in saved or send status |
| `resend-campaign` | `mailchimp.resendCampaign()` | `--campaign-id` | 1 | Resend a previously sent campaign to specific subscriber segments |
| `resume-rss-campaign` | `mailchimp.resumeRssCampaign()` | `--campaign-id` | 0 | Resume an RSS-Driven campaign that was previously paused |
| `retrieve-campaign-abuse-complaints` | `mailchimp.retrieveCampaignAbuseComplaints()` | `--campaign-id` | 2 | Get a list of abuse complaints for a specific campaign |
| `retrieve-folder-contents` | `mailchimp.retrieveFolderContents()` | `--folder-id` | 10 | Get a list of available images and files stored in this folder |
| `schedule-campaign` | `mailchimp.scheduleCampaign()` | `--campaign-id` `--schedule-time` | 3 | Schedule a campaign for delivery at a specific date and time |
| `search-campaigns` | `mailchimp.searchCampaigns()` | `--query` | 2 | Search all campaigns for the specified query terms |
| `search-for-tags-on-list-by-name` | `mailchimp.searchForTagsOnListByName()` | `--list-id` | 1 | Search for tags on a list by name |
| `search-members` ·common | `mailchimp.searchMembers()` | `--query` | 3 | Search for list members |
| `send-campaign` ·common | `mailchimp.sendCampaign()` | `--campaign-id` | 0 | Send a Mailchimp campaign immediately |
| `send-test-email` | `mailchimp.sendTestEmail()` | `--campaign-id` `--test-emails` | 1 | Send a test email for a campaign to preview it before sending to your audience |
| `set-campaign-content` | `mailchimp.setCampaignContent()` | `--campaign-id` | 7 | Set the content for a campaign |
| `start-automated-email` | `mailchimp.startAutomatedEmail()` | `--workflow-email-id` `--workflow-id` | 0 | Start a specific automated email within an Automation workflow |
| `start-automation-emails` | `mailchimp.startAutomationEmails()` | `--workflow-id` | 0 | Start all emails in a classic automation workflow |
| `start-batch-operation` | `mailchimp.startBatchOperation()` | `--operations` | 0 | Begin processing a batch operations request |
| `unpublish-landing-page` | `mailchimp.unpublishLandingPage()` | `--page-id` | 0 | Unpublish a Mailchimp landing page |
| `unpublish-survey` | `mailchimp.unpublishSurvey()` | `--list-id` `--survey-id` | 0 | Unpublishes a survey that is currently published, making it unavailable for responses |
| `unschedule-campaign` | `mailchimp.unscheduleCampaign()` | `--campaign-id` | 0 | Unschedule a scheduled campaign that hasn't started sending |
| `update-audiences-contacts` ·common | `mailchimp.updateAudiencesContacts()` | `--audience-id` `--contact-id` | 7 | Update an existing omni-channel contact in a Mailchimp audience |
| `update-batch-webhook` | `mailchimp.updateBatchWebhook()` | `--batch-webhook-id` | 2 | Update a webhook that will fire whenever any batch request completes processing |
| `update-campaign-feedback-message` | `mailchimp.updateCampaignFeedbackMessage()` | `--campaign-id` `--feedback-id` | 3 | Update a specific feedback message for a campaign |
| `update-campaign-folder` | `mailchimp.updateCampaignFolder()` | `--folder-id` `--name` | 0 | Update the name of a campaign folder in Mailchimp |
| `update-campaign-settings` | `mailchimp.updateCampaignSettings()` | `--campaign-id` | 53 | Update some or all of the settings for a specific campaign |
| `update-cart` | `mailchimp.updateCart()` | `--cart-id` `--store-id` | 18 | Update a specific cart |
| `update-cart-line-item` | `mailchimp.updateCartLineItem()` | `--cart-id` `--line-id` `--store-id` | 4 | Update a specific cart line item in a Mailchimp e-commerce store |
| `update-customer` | `mailchimp.updateCustomer()` | `--customer-id` `--store-id` | 12 | Update an e-commerce customer's information in a Mailchimp store |
| `update-file` | `mailchimp.updateFile()` | `--file-id` | 2 | Update an existing file's name or folder in the Mailchimp File Manager |
| `update-folder` | `mailchimp.updateFolder()` | `--folder-id` `--name` | 3 | Update the name of a File Manager folder in Mailchimp |
| `update-interest-category` | `mailchimp.updateInterestCategory()` | `--interest-category-id` `--list-id` `--title` | 2 | Update a specific interest category |
| `update-interest-in-category` | `mailchimp.updateInterestInCategory()` | `--interest-category-id` `--interest-id` `--list-id` `--name` | 1 | Update an interest (group name) within an interest category on a Mailchimp list |
| `update-landing-page` | `mailchimp.updateLandingPage()` | `--page-id` | 7 | Update a landing page |
| `update-list-member` | `mailchimp.updateListMember()` | `--list-id` `--subscriber-hash` | 15 | Update information for a specific list member |
| `update-lists` | `mailchimp.updateLists()` | `--list-id` | 20 | Update settings for a Mailchimp audience (list) |
| `update-lists-segments` | `mailchimp.updateListsSegments()` | `--list-id` `--name` `--segment-id` | 3 | Update a specific segment in a list |
| `update-merge-field` | `mailchimp.updateMergeField()` | `--list-id` `--merge-id` | 11 | Update a specific merge field (audience field) for a Mailchimp list |
| `update-note` | `mailchimp.updateNote()` | `--list-id` `--note-id` `--subscriber-hash` | 1 | Update a specific note for a specific list member |
| `update-order` | `mailchimp.updateOrder()` | `--order-id` `--store-id` | 58 | Update a specific order |
| `update-order-line-item` | `mailchimp.updateOrderLineItem()` | `--line-id` `--order-id` `--store-id` | 5 | Update a specific order line item |
| `update-product` | `mailchimp.updateProduct()` | `--product-id` `--store-id` | 10 | Update a specific product |
| `update-product-image` | `mailchimp.updateProductImage()` | `--image-id` `--product-id` `--store-id` | 3 | Update a product image in a Mailchimp e-commerce store |
| `update-product-variant` | `mailchimp.updateProductVariant()` | `--product-id` `--store-id` `--variant-id` | 8 | Update a product variant |
| `update-promo-code` | `mailchimp.updatePromoCode()` | `--promo-code-id` `--promo-rule-id` `--store-id` | 6 | Update a promo code |
| `update-promo-rule` | `mailchimp.updatePromoRule()` | `--promo-rule-id` `--store-id` | 10 | Update an existing promo rule for an e-commerce store |
| `update-store` | `mailchimp.updateStore()` | `--store-id` | 20 | Update a store |
| `update-template` | `mailchimp.updateTemplate()` | `--html` `--name` `--template-id` | 1 | Update the name, HTML, or `folder_id` of an existing template |
| `update-template-folder` | `mailchimp.updateTemplateFolder()` | `--folder-id` `--name` | 0 | Update the name of an existing template folder in Mailchimp |
| `update-webhook` | `mailchimp.updateWebhook()` | `--list-id` `--webhook-id` | 10 | Update the settings for an existing webhook in a Mailchimp list (audience) |
| `update-workflow-email` | `mailchimp.updateWorkflowEmail()` | `--workflow-email-id` `--workflow-id` | 9 | Update settings for a classic automation workflow email |
| `upsert-ecommerce-stores-orders` | `mailchimp.upsertEcommerceStoresOrders()` | `--customer--id` `--id` `--order-id` `--store-id` | 60 | Add or update an e-commerce order in a Mailchimp store |
| `upsert-ecommerce-stores-products` | `mailchimp.upsertEcommerceStoresProducts()` | `--id` `--product-id` `--store-id` `--title` `--variants` | 8 | Create or update a product in a Mailchimp e-commerce store |
| `verify-connected-site-script` | `mailchimp.verifyConnectedSiteScript()` | `--connected-site-id` | 0 | Verify that the Mailchimp connected site tracking script has been installed on the website |
| `verify-domain` | `mailchimp.verifyDomain()` | `--code` `--domain-name` | 0 | Complete domain verification by submitting the verification code |
| `view-default-content` | `mailchimp.viewDefaultContent()` | `--template-id` | 2 | Get the sections that you can edit in a template, including each section's default content |
| `view-recent-activity` | `mailchimp.viewRecentActivity()` | `--list-id` `--subscriber-hash` | 5 | Get a member's activity on a specific list, including opens, clicks, and unsubscribes |
| `view-recent-activity50` | `mailchimp.viewRecentActivity50()` | `--list-id` `--subscriber-hash` | 3 | Get the last 50 events of a member's activity on a specific list, including opens, clicks, and unsubscribes |

## Triggers

`mailchimp.on("<event>", handler)` in a script; required config goes before the handler as an object.

| Event | Name | Required config | Description |
|---|---|---|---|
| `"campaign"` | Campaign Trigger | `list_id` | Triggered when a campaign is sent or experiences an event in Mailchimp |
| `"profile-update"` | Profile Update Trigger | `list_id` | Triggered when a subscriber's profile is updated in Mailchimp |
| `"subscribe"` | Subscribe Trigger | `list_id` | Triggered when a subscriber subscribes to Mailchimp |
| `"unsubscribe"` | Unsubscribe Trigger | `list_id` | Triggered when a subscriber unsubscribes from Mailchimp |

## Docs

- [run CLI](https://docs.boxd.sh/cli/run): Call connected integrations from the shell, connect new ones, and run automations.
- [Quickstart](https://docs.boxd.sh/guides/integrations/quickstart): Connect an integration, call it from the shell, and turn a script into an automation.
- [Connections](https://docs.boxd.sh/guides/integrations/connections): Connect an account once, for yourself or for your whole organization.
- [Scripts](https://docs.boxd.sh/guides/automations/scripts): Typed integrations, triggers, schedules and state in a .run.ts file.
- [Jobs](https://docs.boxd.sh/guides/automations/jobs): How a script becomes a background job: states, retries, sleep and wake.
- [Beyond the catalog](https://docs.boxd.sh/guides/automations/beyond-the-catalog): Reach your own APIs, databases and cloud accounts from a script.
