How to automate push notifications from RSS using IFTTT?

how-to
tech

#1

You have an RSS feed exposing new content you publish and wish to automatically trigger a new push notification whenever a new item shows up in your feed.

Let’s use IFTTT for that automation and make it call the WonderPush Management API for the actual delivery.

IFTTT (If This Then That, pronounced /ɪft/) is a free web-based service to create chains of simple conditional statements, called applets. It binds APIs and services together in an automated fashion.

Preliminary check

IFTTT requires that your RSS feed have:

  • A top-level feed title and a unique link
  • A GUID and date for each entry
  • Valid RSS or Atom syntax

There are unfortunately some cases where the information present in your RSS feed won’t be suitable for the proposed solution.

For this solution to work, your feed items must have:

  • plain text in <description> (or <content:encoded> if present). Otherwise HTML tags will be displayed literally
  • a short enough text in <description> (or <content:encoded> if present). Up to ~200 chars is fine, but above ~2000 chars is problematic and the notification won’t work.

If your feed satisfied the conditions for <description> but not for <content:encoded>, use the following Zapier how-to instead.

Setup your IFTTT applet

  1. Log in or create a free account.

  2. Click on Create an applet.

  3. Click on this.

  4. Choose the RSS Feed service.
    image

  5. Choose the option that suits your need; probably the first one.
    image

  6. Fill your RSS feed URL.


    If your website supports it, you can use a link to a subcategory or to a given query.

  7. Click on that.

  8. Choose the Webhooks action service.
    image

  9. Choose the Make a web request action.
    image

  10. Fill the fields as shown below, taking care to get your own access token in the dashboard in the Settings / Configuration menu, under the Management API tab.


    Add the ingredients using the Add ingredient button, don’t type them yourself, and remove the extra space they prepend to it or it will break the deep-link.
    While typing the JSON body, make sure to add a space or newline between two consecutive closing curly braces (the } character) or the editor thinks you’re writing an ingredient name and you’ll get an error.

    In this example we used the segment @ALL so everybody will get the notification. You can change that by creating a segment in the dashboard and using its identifier there. We offer advanced segmentation criteria and have a powerful way of combining them, check out the docs.

    To better track statistics, you can bind the deliveries to a campaign you created in the dashboard. Read the campaign identifier and simply add "campaignId": "A_CAMPAIGN_ID", between targetSegmentIds and notification.

  11. You are done.

Remember: Don’t spam your users with too many notifications by using the Pressure Management feature in the used campaign.
Think of notifications as a service you deliver to your users, and offer them a way to opt into multiple categories to follow, and bind the corresponding RSS feeds to the segments matching the corresponding subscribed users with our advanced segmentation, like Parameterized segments for instance.


#2

#3

Edit:

  • Add a Preliminary check section