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 Group Push Enabled Default Push Types
notification ✅ Yes follow, comment, reaction, comment_reaction, mention
user ✅ Yes follow, comment, reaction, comment_reaction, mention, post
timeline ❌ No None
foryou ❌ No None

How Push Notifications Work

The shared delivery rules that apply to all Stream push notifications are covered in the Push Notification documentation.

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:

// Update notification feed group to only send push for follows
_, err = client.Feeds().UpdateFeedGroup(ctx, "notification", &getstream.UpdateFeedGroupRequest{
	PushNotification: &getstream.PushNotificationConfig{
		Enabled:       getstream.PtrTo(true),
		ActivityTypes: []string{"follow"}, // Only follows will trigger push notifications
	},
})
if err != nil {
	log.Fatal("Error updating notification feed group:", err)
}

// Disable all push notifications for a feed group
_, err = client.Feeds().UpdateFeedGroup(ctx, "user", &getstream.UpdateFeedGroupRequest{
	PushNotification: &getstream.PushNotificationConfig{
		Enabled: getstream.PtrTo(false),
	},
})
if err != nil {
	log.Fatal("Error updating user feed group:", err)
}

Configuration Options

Field Type Description
enable_push boolean Whether push notifications are enabled for this feed group
push_types string[] 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
Add Chat to my app: getstream.io/SKILL.md

The fastest way to build with Stream. Start a new project or improve an existing one. Full CLI and documentation integration out of the box.


Ask your agent:

/stream Build me a Social App with Feeds and Moderation.
/stream Any livestream calls running?
/stream Feeds Go v3: <Your Question>