Skip to content
Social SDK megaphone markSocial SDK
Esc
navigateopen⌘Jpreview
On this page

Notifications and mentions

Read Bluesky and LinkedIn organization notifications, plus native mention timelines on X, Instagram, and Threads, with cursors and scopes.

Bluesky and LinkedIn implement the normalized notifications facade. LinkedIn covers organization pages only. X, Instagram, and Threads have no notifications API, so their adapters declare notifications.read as unsupported-by-platform and expose native mention reads instead. YouTube and TikTok have neither.

Normalized API

social.notifications.list(account, { cursor?, limit? }, options?)
social.notifications.iterate(account, { limit?, maxPages?, maxItems? }, options?)
social.notifications.markSeen(account, { seenAt? }, options?)

list returns Page<JsonObject> with items and optional opaque nextCursor. Pass that cursor unchanged to the next list call. iterate follows cursors lazily within its bounds. markSeen returns void; notifications.read and notifications.seen are separate capabilities. Objects stay provider-shaped.

The examples assume one social client built with the platform’s adapter and an account from connectedAccountRef. accountId is the Bluesky DID, the LinkedIn organization URN, the X or Threads user ID, or the Instagram account ID. Native calls also take the context your application passes to adapter operations.

Platform support

Bluesky

Normalized list, iterate, and markSeen. Needs an access JWT or OAuth session with repo. Paging uses the AT Protocol cursor.

Configure bluesky({ auth: { service, did, accessJwt } }), or pass an OAuth session instead of accessJwt. The adapter calls app.bsky.notification.listNotifications and the seen endpoint. Reasons include like, repost, follow, mention, and reply.

const page = await social.notifications.list(account, { limit: 50 });
await social.notifications.markSeen(account, { seenAt: new Date().toISOString() });

LinkedIn

Normalized list and iterate for organization accounts. Needs the Community Management API product, rw_organization_admin, and an administrator role on the organization. markSeen is not supported.

Configure linkedin({ auth: { accessToken, author: "urn:li:organization:123" }, apiVersion }). The adapter calls organizationalEntityNotifications with all seven action types: LIKE, COMMENT, SHARE, SHARE_MENTION, ADMIN_COMMENT, COMMENT_EDIT, and COMMENT_DELETE. Items keep notificationId, action, sourcePost, generatedActivity, and lastModifiedAt.

const page = await social.notifications.list(account, { limit: 50 });

Page sizes run from 1 to 100 and the cursor is an offset. LinkedIn keeps notifications for 60 days and recommends webhooks for ongoing delivery. Member accounts declare notifications.read as account-ineligible.

X

Native mentions only. X API v2 has no notifications list endpoint. The Account Activity API and X Activity API push events to webhooks or streams, which this read does not cover. Needs a user access token with mentions.read. Subject to X API paging and rate limits.

Configure x({ auth: { userId, accessToken } }) and use the X user ID as accountId. The method calls GET /2/users/:id/mentions and returns a Page<JsonObject> of X posts.

const native = social.native("default", { acknowledgeUnsafe: true });
const page = await native.mentions({ account, limit: 50, context });

Pass page.nextCursor back as cursor. A missing user token or scope raises missing_permission or unauthorized.

Instagram

Native listMentions (also exposed as mentions). Works with Instagram Login and Facebook Login. Instagram Login needs instagram_business_basic and instagram_business_manage_comments. Facebook Login needs instagram_basic, instagram_manage_comments, and pages_read_engagement.

Configure instagram({ auth: { accountId, accessToken } }) for Instagram Login, or add flavor: "facebook-login". The adapter reads the /{ig-user-id}/tags edge on the matching Graph host and returns tagged-media objects with a cursor. Meta does not return private media or Story mentions.

const native = social.native("default", { acknowledgeUnsafe: true });
const page = await native.listMentions({ account, limit: 50, context });

mentionedMedia and mentionedComment look up one caption or comment mention by ID and need Facebook Login. Meta documents no Instagram Login equivalent, so with Instagram Login they raise unsupported_capability before any request.

Threads

Native mentions only. The Threads API has no notifications endpoint. Needs threads_basic and threads_manage_mentions.

Configure threads({ auth: { userId, accessToken } }). The method calls the /:threads-user-id/mentions edge and returns the provider JSON unchanged.

const native = social.native("default", { acknowledgeUnsafe: true });
const page = await native.mentions({ account, context });

Store the provider cursor and pass it as cursor on the next call. The provider reports missing permissions as unauthorized or an upstream error.

YouTube

Not supported. The YouTube Data API has no notifications resource. activities.list reports actions a channel took, not notifications it received. The adapter declares notifications.read as unsupported-by-platform and has no native mentions method. A normalized call raises SocialError with code: "unsupported_capability".

const { capabilities } = social.capabilities().default;
const canRead = capabilities.some(
  (c) => c.operation === "notifications.read" && c.availability === "available",
);

TikTok

Not supported. TikTok for Developers APIs expose no notification inbox or mentions read. The adapter declares notifications.read as unsupported-by-platform, and a normalized call raises unsupported_capability.

Errors

Calling the normalized notifications facade for X, Instagram, Threads, YouTube, TikTok, or a LinkedIn member account raises unsupported_capability before any request. So does markSeen on LinkedIn. Invalid page limits raise invalid_input. Native calls bypass tenant authorization and concurrency middleware, so apply your own policy around them.

Sources, accessed 2026-09-24: LinkedIn organization social action notifications, X Activity API, X Account Activity API, Threads API reference, Instagram IG User reference, YouTube Data API reference, TikTok for Developers overview.

Last updated on September 24, 2026