Skip to main content
This guide shows how to configure a News Feed template in the dashboard and integrate the public feed and interaction endpoints in your app.

Prerequisites

Authenticate with the Storefront API using a Bearer access token. See Integrate with Masivo.
These endpoints work with CLIENT and SERVER API keys. Use a SERVER key when fetching the feed from your backend; CLIENT keys are suitable for embedded apps that call Masivo directly.
  • A customer registered with the same id your app sends to Masivo
  • A native or web feed surface that can render the returned card content
  • For journey publication, an active journey with a News Feed action

Create and publish a card

1

Create a template

In the dashboard, go to Marketing Automation → News Feed and select New template.
2

Choose the content shape

Select classic, captioned_image, or image_only. Complete the title, message, image, and optional link fields required by that choice.
News feed card editor showing the classic card type with a live iOS and Android preview

Classic card: title and message with an optional square icon.

News feed card editor showing the captioned image card type with a live iOS and Android preview

Captioned image card: prominent image with a title and message below.

3

Configure delivery

Set the priority, pinned state, and expiration in days. Pinned cards are returned first; priority orders cards within the same pinned group.
4

Publish to customers

Use the template in a journey News Feed action or schedule it for an audience. Audience eligibility is evaluated when each customer fetches the feed.

Display the feed

Fetch eligible cards from your backend or trusted SDK client:
A complete card response has this shape:
Fields without values are omitted. expires_at and campaign_id can be absent when the assignment or template does not define them.

Track customer interactions

Log each interaction with the template id returned as the card id:
Valid actions are shown, clicked, and dismissed. A dismissal removes the card from subsequent responses unless the same template receives a newer assignment.

React Native SDK

Assignments reference the template, not a content copy. Editing an active template updates what every assigned customer sees immediately, with no republish step — the next fetch returns the new content. Refetch the feed whenever the customer is likely to see stale data instead of relying on a single fetch per session.
When a customer taps or dismisses a card:
The SDK keeps News Feed fetches separate from the overlay in-app message queue and returns pinned cards before unpinned cards.

Common patterns

Refetch when the app opens or returns to the foreground

Since card content is resolved live, fetch on launch and again whenever the app resumes from the background so customers always see the latest template content:

Remove expired cards locally

Open an optional destination

Frequently asked questions

Yes. Assignments reference the template, and the Storefront endpoint resolves active template content on every request.
Audience membership is checked during feed resolution. The audience assignment stops making the card eligible immediately, unless another direct or global assignment still covers it.
Yes. Feed resolution collapses active assignments to one card per template. The latest assignment controls when a previously dismissed card can reappear, while any non-expiring assignment keeps it non-expiring.
Expired assignments are excluded immediately. The News Feed cleanup cron later deletes them in batches and removes orphaned interaction state after a seven-day grace period.
No. shown and clicked only update interaction timestamps. Only dismissed hides the card.
Pinned cards come first, followed by higher priority and then newer assignment time. The React Native SDK preserves this order while grouping pinned cards first.