const feed = client.feeds.feed("user", "jack");
await feed.changeVisibility({
visibility: "followers",
user_id: "<user id>",
});
// Process pending follow requests while loosening from followers
await feed.changeVisibility({
visibility: "visible",
pending_follows_action: "auto_approve",
user_id: "<user id>",
});Changing Feed Visibility
Changing Feed Visibility
Visibility changes are asynchronous. The API returns optimistically, then reconciles follow relationships in the background.
How transitions behave
Tightening visibility (for example visible -> members or private):
- Users who no longer qualify are unfollowed automatically.
- Tightening to
memberskeeps member follows and owner follow. - Tightening to
privatekeeps only owner follow.
Loosening visibility from followers (for example followers -> visible):
- Pending follow requests are processed by
pending_follows_action:auto_approve(default)reject
pending_follows_actionis only used when transitioning away fromfollowers.
Examples
$feed = $feedsClient->feed('user', 'jack');
$feed->changeFeedVisibility(
new \GetStream\GeneratedModels\ChangeFeedVisibilityRequest(
visibility: 'followers'
)
);
// Process pending follow requests while loosening from followers
$feed->changeFeedVisibility(
new \GetStream\GeneratedModels\ChangeFeedVisibilityRequest(
visibility: 'visible',
pendingFollowsAction: 'reject'
)
);