let activity = client.activity( for: "activity_123", in: FeedId(group: "user", id: "john") ) // Pin an activity try await activity.pin() // Unpin an activity try await activity.unpin()Activity Feeds v3 is in beta — try it out!
Pins
Overview
Sometimes you’ll want to pin your favorite activity to a feed. You can pin an activity like this:
val activity = client.activity( activityId = "activity_123", fid = FeedId(group = "user", id = "john") ) // Pin an activity activity.pin() // Unpin an activity activity.unpin()// Pin an activity client.pinActivity({ feed_group_id: feed.group, feed_id: feed.id, activity_id: "activity_123", }); // Unpin an activity client.unpinActivity({ feed_group_id: feed.group, feed_id: feed.id, activity_id: "activity_123", });final activity = client.activity( activityId: 'activity_123', fid: const FeedId(group: 'user', id: 'john'), ); // Pin an activity await activity.pin(); // Unpin an activity await activity.unpin();// Pin an activity client.feeds.pinActivity({ feed_group_id: feed.group, feed_id: feed.id, activity_id: "activity_123", user_id: "<user id>", }); // Unpin an activity client.feeds.unpinActivity({ feed_group_id: feed.group, feed_id: feed.id, activity_id: "activity_123", user_id: "<user id>", });_, err = client.Feeds().PinActivity(context.Background(), feedGroupID, feedID, activityID, &getstream.PinActivityRequest{ UserID: getstream.PtrTo("john"), }) if err != nil { log.Fatal("Error pinning activity:", err) }PinActivityRequest pinRequest = PinActivityRequest.builder().userID(testUserId).build(); PinActivityResponse response = testFeed.pinActivity(activityId, pinRequest).getData();$activityId = 'activity_123'; $feedGroupId = 'user'; $feedId = 'eric'; $response = $feedsClient->pinActivity( $feedGroupId, $feedId, $activityId, new GeneratedModels\PinActivityRequest(userID: "eric") );var response = await _feedsV3Client.PinActivityAsync( "user", _testFeedId, activityId, new PinActivityRequest { UserID = _testUserId } );response = self.test_feed.pin_activity(activity_id, user_id=self.test_user_id)When you read a feed pinned activities are automatically returned:
try await feed.getOrCreate() print(feed.state.pinnedActivities)feed.getOrCreate() feed.state.pinnedActivities.collect { pinData -> println(pinData) }const response = await feed.getOrCreate(); console.log(response.pinned_activities);await feed.getOrCreate(); print(feed.state.pinnedActivities);const response = await feed.getOrCreate({ user_id: "sara" }); console.log(response.pinned_activities);_, err = client.Feeds().UnpinActivity(context.Background(), feedGroupID, feedID, activityID, &getstream.UnpinActivityRequest{ UserID: getstream.PtrTo("john"), }) if err != nil { log.Fatal("Error unpinning activity:", err) }UnpinActivityRequest unpinRequest = UnpinActivityRequest.builder().UserID(testUserId).build(); UnpinActivityResponse response = testFeed.unpinActivity(activityId, unpinRequest).getData();$activityId = 'activity_123'; $feedGroupId = 'user'; $feedId = 'eric'; $response = $feedsClient->unpinActivity( $feedGroupId, $feedId, $activityId, 'eric' );var response = await _feedsV3Client.UnpinActivityAsync( "user", _testFeedId, activityId, new { user_id = _testUserId } );response = self.test_feed.unpin_activity(activity_id, self.test_user_id)