Movable Ink
Deprecated. It duplicates the Movable Ink Customer Data integration (the same behavioural events API, #1530), which takes the access key ID and secret as issued instead of a pre-encoded Basic value. Use the Movable Ink Customer Data integration for new integrations. This integration is hidden from new installs; an integration already installed on it keeps its revision and keeps delivering. Nothing is removed.
AI-powered content personalisation platform for generating dynamic, individualised creative across email, web, and mobile channels.
Why route Movable Ink through Datafly Signal
- Profiles are updated from the server, not the browser. Events reach Movable Ink even when a tracker blocker or a failed page unload would have dropped a client-side call, so the profile reflects what actually happened.
- One consent decision governs every destination. Movable Ink is gated by the same consent state as the rest of your stack, so a withdrawal applies everywhere at once.
Prerequisites
Complete these steps in Movable Ink before configuring Signal.
Access your Movable Ink account
Log in to the Movable Ink dashboard. If you do not have an account, contact your Movable Ink representative.
Get the endpoint and credentials
Ask your Movable Ink Solutions team for the Customer Data (behavioral events) API endpoint and its Basic authentication credentials. Movable Ink reviews sample event payloads before it issues them: share the example payload under Event Mapping below.
Configuration
| Field | Type | Required | Description |
|---|---|---|---|
endpoint_key | string | Yes | The key at the end of the behavioral endpoint URL Movable Ink gives you (https://collector.movableink-dmz.com/behavioral/{key}). |
authorization | secret | Yes | The Basic authentication value Movable Ink issues: the base64 of username:password, without the word Basic. |
api_key, company_id, pixel_id | No | Not used. Kept so integrations installed before blueprint 0.4.0 keep their settings. |
This integration and Movable Ink Customer Data send to the same Movable Ink API; install one of them. This one takes the pre-encoded Basic value, the other the access key ID and secret.
Signal Setup
Quick Setup
- Navigate to Integrations in the sidebar.
- Open the Integration Library tab.
- Find Movable Ink under the Personalisation category.
- Click Install, and fill in the required fields with the credentials gathered above.
- Click Install Integration to create the integration with a ready-to-use default configuration.
API Setup
curl -X POST http://localhost:8084/v1/admin/integration-catalog/movable_ink/install \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Movable Ink",
"variant": "default",
"config": {
"endpoint_key": "your-collector-key",
"authorization": "dXNlcm5hbWU6cGFzc3dvcmQ="
},
"delivery_mode": "server_side"
}'API endpoint
POST https://collector.movableink-dmz.com/behavioral/{endpoint_key}Allow egress to collector.movableink-dmz.com from the network your delivery workers run on.
Event Mapping
Signal sends Movable Ink’s behavioural event vocabulary. Movable Ink reviews sample payloads before it issues credentials and confirms the event names with you during onboarding.
| Signal event | Movable Ink event | properties |
|---|---|---|
view_item | product_viewed | id (required), title, price (dollars and cents, as a string), currency, url, categories |
add_to_cart | product_added | as product_viewed |
remove_from_cart | product_removed | as product_viewed |
view_item_list | category_viewed | id (item_list_id, else item_list_name; not sent without either), title, url |
search | product_searched | query (search_term, legacy query; not sent without one), url |
purchase | order_completed | id (transaction_id), revenue (string), currency, products[] (id, price, quantity, title; up to 100) |
identify | type: identify | user_id with the anonymous_id it replaces (known users only) |
Product fields come from the first entry of items[] (or the legacy product_id); an event without a product ID is not sent. Page views are not sent: Movable Ink has no page event.
{
"type": "track",
"event": "product_viewed",
"user_id": "crm-user-7",
"anonymous_id": "df_anon_p2_0001",
"timestamp": 1758500000,
"timezone": "Europe/London",
"properties": {
"id": "SKU-1",
"title": "Parka Jacket",
"price": "129.99",
"currency": "GBP",
"url": "https://www.example.co.uk/shop/jackets",
"categories": [{ "id": "Jackets" }]
}
}Identity
| Field | Source | Notes |
|---|---|---|
user_id | user_id from datafly.identify() | The customer identifier Movable Ink keys the profile on. Sent when known. |
anonymous_id | Datafly anonymous identifier | Sent on every event, so pre-login activity is kept and merged on identify. |
No email address or other personal data is sent. timestamp is the event time in epoch seconds and timezone the visitor’s IANA time zone.
Consent
Install the integration under the marketing consent category. Signal’s consent gate decides whether each event is sent; visitors who have not granted marketing consent are not sent to Movable Ink, and no consent value is forwarded in the payload.
Delivery
Events are delivered server-side from your Datafly Signal infrastructure directly to the Movable Ink API. No client-side scripts are loaded for this integration.
Verify it’s working
- After installing the integration, trigger a product view and an identify from your website or via the Signal event API.
- In Signal, check Live Events to confirm delivery with a
2xxresponse status. - Ask your Movable Ink Solutions team to confirm the events arrived on the profile for that user ID.
Troubleshooting
| Symptom | Possible Cause | Resolution |
|---|---|---|
401 Unauthorized | Wrong Basic credentials | Check the endpoint key or Basic authorization value with your Movable Ink Solutions team and update the integration config |
404 Not Found | Wrong endpoint key | Check the key at the end of the behavioral endpoint URL |
400 Bad Request | An event name or payload Movable Ink has not enabled for your account | Share the example payload above with Movable Ink and confirm the event names |
| Events not influencing content | The user ID is not the identifier Movable Ink keys profiles on | Confirm with Movable Ink that the user ID you pass to datafly.identify() is the one in your email links |
Movable Ink’s API reference is on its support portal and needs a customer login; ask your Movable Ink representative for access.
See also
- Movable Ink Customer Data — the same API with an access key ID and secret; install one of the two
- Insider — alternative personalisation platform
- Klaviyo — email marketing alternative