IntegrationsMarketing AutomationAttentive

Attentive

Personalised SMS and email marketing platform focused on driving revenue through conversational commerce.

Why route Attentive through Datafly Signal

  • Profiles are updated from the server, not the browser. Events reach Attentive 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. Attentive 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 Attentive before configuring Signal.

Create or access your Attentive account

Log in to the Attentive dashboard at ui.attentivemobile.com. If you do not have an account, contact your Attentive representative.

Find your Company ID

Navigate to Settings > Account in the Attentive dashboard. Your Company ID is displayed on this page. Copy it for use in Signal configuration.

Create an API key

Go to Settings > API Keys (or Integrations > API Keys) and click Create API Key. Provide a name (e.g. “Datafly Signal”) and select appropriate permissions for event tracking and subscriber management. Copy the API key immediately.

Note your Sign-Up Source ID (optional)

If you want to attribute new subscribers to a specific sign-up source, navigate to Sign-Up Units in the Attentive dashboard. Find or create the sign-up unit and note the Source ID. This is optional but recommended for attribution tracking.

Configuration

FieldTypeRequiredDescription
api_keysecretYesYour Attentive API key. Generated in Settings > API Keys.
company_idstringYesYour Attentive company identifier. Found in Settings > Account.
sign_up_source_idstringNoThe sign-up source ID for attributing new subscriber sign-ups. Found in Sign-Up Units.

Signal Setup

Quick Setup

  1. Navigate to Integrations in the sidebar.
  2. Open the Integration Library tab.
  3. Find Attentive under the Marketing Automation category.
  4. Click Install, and fill in the required fields with the credentials gathered above.
  5. 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/attentive/install \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Attentive",
    "variant": "default",
    "config": {
      "api_key": "attentive_api_xxxxxxxxxxxx",
      "company_id": "your-company-id",
      "sign_up_source_id": "src-12345"
    },
    "delivery_mode": "server_side"
  }'

API endpoint

POST https://api.attentivemobile.com/v1/events/ecommerce/product-view
POST https://api.attentivemobile.com/v1/events/ecommerce/add-to-cart
POST https://api.attentivemobile.com/v1/events/ecommerce/purchase
POST https://api.attentivemobile.com/v1/events/custom

Allow egress to api.attentivemobile.com from the network your delivery workers run on.

Event Mapping

Signal eventAttentive endpointPreset
view_itemeCommerce product viewDefault, Retail
add_to_carteCommerce add to cartDefault, Retail
purchaseeCommerce purchase (orderId, items)Default, Retail
begin_checkout, sign_upcustom event (type is the Signal event name)Default, Retail
generate_leadcustom eventDefault
remove_from_cart, add_to_wishlist, order_shipped, refundcustom eventRetail

eCommerce items are built from the Signal items: productId, productVariantId (the variant ID, else the item ID), name, productImage, productUrl, quantity and price as [{"value": 120, "currency": "GBP"}]. Custom events carry the event’s properties, externalEventId (the Signal event ID) and occurredAt. Attentive does not trigger journeys for events older than 12 hours.

Identity

FieldSourceNotes
user.phonetraits.phoneE.164. Plain text: Attentive sends SMS to it.
user.emailtraits.emailTrimmed, lower-cased. Plain text: Attentive sends email to it.
user.externalIdentifiers.clientUserIduser_idResolves only after it has been linked to a phone or email through Attentive’s Identity API.

An event with none of the three is not sent. Attentive’s user object allows only these fields.

Attentive events should be sent under the marketing consent category. Attentive maintains its own subscription opt-in records — Signal supplies the visitor’s CMP consent state on every event so journey logic can suppress messaging where appropriate.

Delivery

Events are delivered server-side from your Datafly Signal infrastructure directly to the Attentive API. No client-side scripts are loaded for this integration.

Verify it’s working

  1. After installing the integration, trigger a test event from your website or via the Signal event API.
  2. In Attentive, navigate to Subscribers and search for the test user by email or phone number to verify the profile was created or updated.
  3. Check the Event Log (if available) or create a test journey triggered by your custom event to verify event delivery.
  4. In Signal, check Live Events to confirm delivery with a 200 response status.

Troubleshooting

SymptomPossible CauseResolution
401 UnauthorizedInvalid or expired API keyRegenerate the API key in Attentive Settings > API Keys and update the integration config
400 Bad RequestMissing or invalid company IDVerify the company ID in Attentive Settings > Account
Subscribers not createdMissing phone number or emailAttentive requires at least a phone number or email to create a subscriber profile
Events not triggering journeysJourney not configured for the eventEnsure your Attentive journey is set to trigger on the specific custom event name being sent

Visit Attentive documentation for full API reference and subscriber management details.

See also

  • Klaviyo — email and SMS alternative
  • Iterable — cross-channel marketing
  • Braze — multi-channel engagement