Fetch subscriber’s In-App notifications feed
Copy
Ask AI
const { data: inAppMessages } = await novu.subscribers.getNotificationsFeed(
  "subscriberId",
  {
    page: 0,
    limit: 10,
    // it is of type string. By default all feeds messages are fetched
    feedIdentifier: "Product Updates",
    // seen and read filter of type boolean
    seen: true,
    read: true,
  }
);
Fetch all Messages Sent To All Subscribers
Copy
Ask AI
import { ChannelTypeEnum } from "@novu/node";
// All fields are optional
const listMessagesOptions = {
  // pagination options
  page: 0,
  limit: 20,
  /**
   *  Filter options
   */
  // use ChannelTypeEnum.PUSH for push, ChannelTypeEnum.EMAIL for email,
  channel: ChannelTypeEnum.IN_APP, // only In-App type messages will be fetched
  subscriberId: "6444105141ffb0919496dfcb",
  transactionIds: ["644-41051-41ffb0-919496-dfcb"],
};
const { data: messagesData } = await novu.messages.list(listMessagesOptions);
Delete an In-App notification/message
Copy
Ask AI
// messageId is of MongoDB Id type
await novu.messages.deleteById("messageId");
Mark an In-App Message as Read/Seen
Copy
Ask AI
const { data: markMessageAsRead } = await novu.subscribers.markMessageRead(
  "subscriberId",
  "messageId"
);
const { data: markMessageAsSeen } = await novu.subscribers.markMessageSeen(
  "subscriberId",
  "messageId"
);
Mark an In-App Message as Read/Unread/Seen/Unseen
Copy
Ask AI
const { data: markMessageAs } = await novu.subscribers.markMessageAs(
  "subscriberId",
  "messageId",
  { seen: true, read: false }
);
Mark all In-App Messages as Read/Unread/Seen/Unseen
Copy
Ask AI
import { MarkMessagesAsEnum } from "@novu/node"
const { data: markAllInAppMessages } = await novu.subscribers.markAllMessagesAs(
   'subscriberId',
   // can be filtered with feed identifiers
   feedIdentifier: ['Marketing', 'Product']
   // MarkMessageAsEnum.READ => It will mark all messages as read
   // MarkMessageAsEnum.SEEN => It will mark all messages as seen
   // MarkMessageAsEnum.UNREAD => It will mark all messages as unread
   // MarkMessageAsEnum.UNSEEN => It will mark all messages as unseen
   markAs: MarkMessageAsEnum.Read
);
Fetch All Feeds
Copy
Ask AI
const { data: feedsData } = await novu.feeds.get();