> For the complete documentation index, see [llms.txt](https://docs.zigpoll.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.zigpoll.com/integrations/dotdigital.md).

# Dotdigital

#### Step #1: Create your integration

* In Dotdigital, create a dedicated **API user**. Go to **Settings → Access → API users** and add a new user: <https://developer.dotdigital.com/docs/setting-up-an-api-user>. Dotdigital will give the API user its own email address (something like `apiuser-xxxxxxxx@apiconnector.com`) and you set its password.

{% hint style="info" %}
Use the **API user's** email and password — not your normal Dotdigital login. Zigpoll auto-detects your account's region (EU, US or APAC) for you, so there's no endpoint to configure.
{% endhint %}

* In Zigpoll: Click Settings → Manage Integrations → Enable the Dotdigital Integration
* Paste the API user email and password into the input fields and press save.

#### Step #2: Pick an address book (optional)

Toggle **Auto Subscribe** to add respondents to a Dotdigital **address book** automatically. You can map specific surveys to specific address books, or choose a single address book for **All Surveys**. Your address books load from your account once your credentials are saved.

#### Step #3: Collect Your Data

Once **Auto Subscribe** is enabled and an address book is selected, Zigpoll will create or update a Dotdigital contact in that address book each time a respondent submits a survey (provided we have an email for them — either from a Zigpoll email field, or from your Shopify customer data if you use our Shopify integration).

The following contact **data fields** are sent on every submission:

* `SENTIMENT` — the respondent's average sentiment score (numeric)
* `SENTIMENT_LABEL` — `positive`, `neutral`, or `negative`
* `ZIGPOLL_PARTICIPANT_URL` — a deep link to the participant's record in Zigpoll
* One data field per slide, named after the slide's handle (uppercased, with non-alphanumeric characters converted to underscores)

{% hint style="warning" %}
**Important:** Dotdigital only stores data fields that have been pre-defined in your account. Any data field Zigpoll sends that doesn't already exist in Dotdigital is ignored — and the whole contact update is rejected if a field is missing, so Zigpoll automatically retries without the extra fields (the contact is still added to the address book, but the survey data won't be saved until the fields exist).

Before you go live, head to **Settings → Data fields** in Dotdigital and create the fields above (`SENTIMENT`, `SENTIMENT_LABEL`, `ZIGPOLL_PARTICIPANT_URL`) plus one entry per slide handle you want to capture. Use type **Text** for most fields, **Numeric** for `SENTIMENT`, and **Date** for date slides.
{% endhint %}

#### Conditional subscribes via slide and survey logic

You can also subscribe respondents to an address book based on how they answered a particular question. In any slide's editor, open the **Logic** section (or open **Behavior → Actions** on the survey), add a condition, and choose **Subscribe to Dotdigital address book** as the action. The contact is added to the chosen address book only when the condition is met — useful for routing happy customers and detractors to different books, or for opt-in flows triggered by a specific answer.

#### Using the data

Dotdigital will treat the new contact like any other — you can build segments off the data fields Zigpoll syncs (e.g. everyone with `SENTIMENT_LABEL = negative`), trigger programs from address book membership, or include the survey data as personalization in your campaigns.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.zigpoll.com/integrations/dotdigital.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
