Feed Group Push Configuration

Activity Feeds supports push notifications at the feed group level, allowing you to configure which activity types trigger push notifications. You can use built-in defaults, override built-in feed groups, or create entirely custom feed groups with push configuration.

Built-in Feed Groups Default Configuration

Stream provides several built-in feed groups with different default push notification configurations:

Feed GroupPush EnabledDefault Push Types
notification✅ Yesfollow, comment, reaction, comment_reaction, mention
user✅ Yesfollow, comment, reaction, comment_reaction, mention, post
timeline❌ NoNone
foryou❌ NoNone

How Push Notifications Work

When you set create_notification_activity: true, you can choose how to send the notification:

Send via notification feed (skip_push: true)

  • The notification goes through the user’s notification feed
  • Triggers push via feeds.notification_feed.updated event
  • Good for apps that want all notifications in one place

Send directly (skip_push: false)

  • The notification is sent right away via direct event (e.g., feeds.activity.comment.added, feeds.activity.reaction.added)
  • The activity is still saved to the notification feed for history

Note: Stream automatically prevents duplicate push notifications. You’ll only get one push notification per action, regardless of your combination of skip_push and create_notification_activity flags.

Updating Feed Group Push Configuration

You can update existing feed groups to modify their push notification behavior:

import io.getstream.services.FeedsImpl;
import io.getstream.models.*;

FeedsImpl feedsClient = new FeedsImpl(new StreamHTTPClient("<API key>", "<API secret>"));

// Update notification feed group to only send push for follows
UpdateFeedGroupRequest notificationRequest = UpdateFeedGroupRequest.builder()
    .pushNotification(PushNotificationConfig.builder()
        .enablePush(true)
        .pushTypes(List.of("follow")) // Only follows will trigger push notifications
        .build())
    .build();
feedsClient.updateFeedGroup("notification", notificationRequest).execute();

// Disable all push notifications for a feed group
UpdateFeedGroupRequest userRequest = UpdateFeedGroupRequest.builder()
    .pushNotification(PushNotificationConfig.builder()
        .enablePush(false)
        .build())
    .build();
feedsClient.updateFeedGroup("user", userRequest).execute();

Configuration Options

FieldTypeDescription
enable_pushbooleanWhether push notifications are enabled for this feed group
push_typesstring[]Array of activity types that will trigger push notifications

Supported Activity Types:

  • Built-in: follow, comment, reaction, comment_reaction, mention
  • Custom: Any activity.type value you define (e.g., post, achievement, system_alert)

Best Practices

  • Be selective with push_types - Choose specific activity types to avoid overwhelming users
  • Use aggregation - Group similar activities in the feed for better organization, though each activity in push_types will still trigger individual push notifications
© Getstream.io, Inc. All Rights Reserved.