> ## Documentation Index
> Fetch the complete documentation index at: https://social-b97141fb-auto-generate-llmstxt.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Get user's notification tray items

>  Retrieves the user's notification tray items, sorted by newest first.
 - Notification tray items will be updated shortly after calling related APIs (e.g. `POST api/v4/posts`) but are not real-time.
 - The results are cached for 30 seconds, meaning updates for new events and `lastSeenAt` time may take up to 30 seconds to reflect



## OpenAPI

````yaml https://raw.githubusercontent.com/AmityCo/apidocs/refs/heads/develop/bundled.json get /api/v1/notification-tray
openapi: 3.0.0
info:
  title: Social+ Cloud SDK
  description: >
    ## Using Social+ APIs


    Our API documentation explains all API endpoints used in Social+ Cloud. All
    APIs, with the exception of some authentication APIs, require an access
    token for authentication and authorization. APIs can be used either in Admin
    or User context. When used in user context, you will only be able to fetch
    data related to that user only.

    For Administrators who are using our API documentation in making
    server-to-server API calls, you need an Admin Access token to connect to the
    Social+ server. Refer to

    [this
    documentation](https://docs.social.plus/console/settings#admin-api-access-token)

    for the instructions on how to generate an admin access token.


    All backend endpoints that support Social+ Cloud SDK are included here. To
    easily differentiate the type of each endpoint, we added a prefix in each
    endpoint's path.


    - REST API Endpoint: **`/v1, /v2, /v3, /v4, or /v5 ...`**

    - Webhook Event: **`/webhook ...`**


    ---


    ## **Schema Definitions**


    This section provides detailed descriptions of the key schemas used in
    Social+ Cloud. Understanding these schemas is essential for effectively
    integrating our features into your applications. Each schema entry includes
    a concise description and highlights its core functionality and
    relationships within the platform. These definitions will help you grasp the
    structure and purpose of various components, ensuring a seamless and
    efficient development experience.


    ### **User**


    A User represents an individual who interacts with the Social+ Cloud. Users
    can create profiles, join communities, post content, comment, react, and
    engage with other users.


    ### **Role**


    A Role defines the permissions and access levels for Users within the
    Social+ Cloud. Roles can be assigned to manage and moderate content,
    ensuring a controlled and safe environment for all users.


    ### **Channel**


    A Channel is a primary structure used to implement various chat messaging
    capabilities within an application. Channels serve as containers for
    Subchannels, enabling a hierarchical organization of conversations. This
    structure allows developers to manage and navigate different chat threads
    efficiently.


    ### **Subchannel**


    A Subchannel is a subdivision within a Channel for specific conversation
    threads. Subchannels host all messages and interactions, providing organized
    discussions within a larger channel. Users can individually create, update,
    delete, and manage subchannels. Moderation actions, such as banning and
    muting, are applied at the channel level, affecting all subchannels.


    ### **ChannelUser**


    A ChannelUser represents an individual user within a specific Channel. This
    schema tracks user participation, roles, and permissions within the channel.
    Each ChannelUser can interact in subchannels, participate in discussions,
    and engage with other members. Users can be assigned roles with varying
    permissions, such as admin, moderator, or member, allowing for tailored
    access and control. Moderation actions like banning or muting a ChannelUser
    affect their participation across all subchannels within the channel.


    ### **Message**


    A Message facilitates real-time communication among channel users. Messages
    can contain up to 20,000 characters or weigh up to 100KB for custom content.
    For larger binary data, such as files, it's recommended to upload the data
    to a cloud storage service like AWS S3 and include the URL in the message.
    The SDK supports various message types, including text and image, built on a
    standard message layer.


    ### **Community**


    A Community is a feature that allows users to share their posts and comments
    and engage with each other within the app. Communities provide a dedicated
    space for discussing specific topics or interests.


    ### **CommunityUser**


    A CommunityUser represents an individual user within a specific Community.
    This schema tracks user participation, roles, and interactions within the
    community. CommunityUsers can join public or private communities,
    participate in discussions, and engage with other members. Each user can
    have different roles with varying permissions, such as admin, moderator, or
    member, which control their access and actions within the community.
    Moderation actions, like banning or muting, can be applied to CommunityUsers
    to maintain a safe and respectful environment.


    ### **CommunityCategory**


    A CommunityCategory helps organize and manage communities by categorizing
    them into specific groups. This categorization allows users to easily sort
    and filter communities based on their interests or needs.


    ### **Post**


    A Post is a piece of content created and shared by a user within a network
    or community. Posts can include text, images, videos, or other elements.
    Users can create, view, and interact with posts in a social feed, which can
    be displayed in chronological order and customized using various settings.
    Post types supported by Social+ include text, image, video, file, live
    stream, poll, and custom posts. The parent post serves as a container for
    text data, while each multimedia element (e.g., image, video) is treated as
    a separate child post. Both parent and child posts support reactions and
    comments, allowing users to engage comprehensively with content.


    ### **Comment**


    A Comment in Social+ Cloud is a user-generated response to specific content,
    such as a post or story. Comments enable users to engage in conversations,
    express thoughts, opinions, and emotions, fostering a sense of community
    around the content.


    **Comment Reference Types:**


    - **Post Type Comment:** Designed for regular posts like text updates,
    photos, or videos. These comments are associated with the post and displayed
    beneath it, promoting conversation and interaction.

    - **Story Type Comment:** Similar to post type comments but associated with
    stories, driving user engagement and discussion around short-lived content.

    - **Content Type Comment:** Intended for content-specific such as articles
    or specialized content, providing a more organized and contextual commenting
    experience.


    ### **Reaction**


    A Reaction is a user interaction on messages, posts, or comments, such as
    like, dislike, or love. The type of reactions is customizable. Currently,
    reactions are supported for Posts, Messages, and Comments.


    **Reaction Reference Types:**


    - **Comment Reference Type:** Allows users to query reactions on a specific
    comment, showing how others have responded to it.

    - **Post Reference Type:** Allows users to query reactions on a specific
    post, highlighting user engagement with the post.

    - **Story Reference Type:** Allows users to query reactions on a specific
    story, showing user reactions to the story.


    ### **File**


    A File in Social+ Cloud supports file upload and download, enabling
    file-sharing within applications. It handles various file types, including
    images, videos, audio, and documents, with a maximum size of 1 GB. This
    functionality allows users to share files directly in chats or social feeds,
    enhancing engagement and interaction.


    ### **Follow**


    A Follow schema in Social+ Cloud defines one-directional relationships
    between users, essential for social networking features. When user A follows
    user B, user A can see user B's updates in their feed, but user B does not
    need to reciprocate. This schema helps manage visibility and accessibility
    of user-generated content in user feeds.


    ---


    ## Select Region Endpoint


    Before making server-to-server API calls, be sure to select the correct API
    endpoint for your region in the **Servers** dropdown below.
  version: 4.118.0
servers:
  - url: https://apix.us.amity.co
    description: API Endpoint for US Region
  - url: https://apix.eu.amity.co
    description: API Endpoint for EU Region
  - url: https://apix.sg.amity.co
    description: API Endpoint for SG Region
security: []
paths:
  /api/v1/notification-tray:
    get:
      tags:
        - Notification Tray
      summary: Get user's notification tray items
      description: |2-
         Retrieves the user's notification tray items, sorted by newest first.
         - Notification tray items will be updated shortly after calling related APIs (e.g. `POST api/v4/posts`) but are not real-time.
         - The results are cached for 30 seconds, meaning updates for new events and `lastSeenAt` time may take up to 30 seconds to reflect
      parameters:
        - name: options
          description: Pagination options for controlling result set size and navigation
          in: query
          required: false
          schema:
            type: object
            properties:
              token:
                type: string
                description: >-
                  Token for pagination to retrieve the next or previous page of
                  results
              limit:
                type: integer
                description: Maximum number of items to return per page
                minimum: 1
                maximum: 100
                default: 20
      responses:
        '200':
          description: >-
            Response containing a list of notification tray items and associated
            data
          content:
            application/json:
              schema:
                type: object
                required:
                  - notificationTrayItems
                  - users
                properties:
                  notificationTrayItems:
                    type: array
                    description: List of notification items to display
                    items:
                      type: object
                      description: >-
                        Represents a single notification item in the
                        notification tray
                      required:
                        - _id
                        - lastOccurredAt
                        - lastSeenAt
                        - actors
                        - actorsCount
                        - actionType
                        - targetId
                        - targetType
                        - text
                        - templatedText
                        - daySegment
                      properties:
                        _id:
                          type: string
                          description: Unique identifier of the notification tray item
                        daySegment:
                          type: string
                          format: date-time
                          description: >-
                            Timestamp indicating which day this notification
                            belongs to for grouping purposes
                        lastSeenAt:
                          type: string
                          format: date-time
                          nullable: true
                          description: >-
                            Timestamp when the user last saw this notification;
                            null if the user has not seen it yet
                        lastOccurredAt:
                          type: string
                          format: date-time
                          description: Timestamp when the notification last occurred
                        actors:
                          type: array
                          description: >-
                            List of users who performed the action (limited to 3
                            most recent)
                          items:
                            type: object
                            description: >-
                              Represents a user who performed an action that
                              triggered a notification
                            properties:
                              _id:
                                type: string
                                description: Unique identifier of the actor
                              publicId:
                                type: string
                                description: Public identifier of the actor
                              lastActedAt:
                                type: string
                                format: date-time
                                description: >-
                                  Timestamp when the actor last performed the
                                  action
                        actorsCount:
                          type: integer
                          description: Total count of actors who performed the action
                        actionType:
                          type: string
                          description: Type of action that triggered the notification
                          enum:
                            - post
                            - poll
                            - comment
                            - reaction
                            - mention
                            - reply
                            - follow
                            - event
                            - invitation
                            - join_request
                            - user
                        trayItemCategory:
                          type: string
                          description: More specific category for certain action types
                          enum:
                            - mention_in_poll
                            - mention_in_post
                            - mention_in_comment
                            - mention_in_reply
                            - reaction_on_post
                            - reaction_on_poll
                            - reaction_on_comment
                            - reaction_on_reply
                            - respond_on_join_request
                            - follow
                            - event_created
                            - event_reminder
                            - event_started
                            - room_cohost_invite
                            - user_profile_reset
                        targetId:
                          type: string
                          description: Identifier of the content being acted upon
                        targetType:
                          type: string
                          description: Type of content being acted upon
                        referenceId:
                          type: string
                          description: Optional identifier of related content for context
                        referenceType:
                          type: string
                          description: Optional type of the referenced content
                          enum:
                            - post
                            - comment
                        actionReferenceId:
                          type: string
                          description: Optional identifier of the specific action object
                        parentId:
                          type: string
                          description: Optional identifier of parent content
                        rootId:
                          type: string
                          description: >-
                            Optional identifier of the root content in a thread
                            (e.g. the root post of a reply chain)
                        latestCommentId:
                          type: string
                          description: >-
                            Optional identifier of the most recent comment
                            associated with this notification
                        networkId:
                          type: string
                          description: >-
                            Identifier of the network the notification belongs
                            to
                        audienceScope:
                          type: string
                          description: >-
                            How recipients are resolved at read time; absent is
                            treated as community-scoped
                          enum:
                            - community
                            - network
                        notifyToUserId:
                          type: string
                          description: >-
                            Optional identifier of the user this notification is
                            directed to
                        data:
                          deprecated: true
                          oneOf:
                            - type: object
                              required:
                                - communityName
                              properties:
                                communityName:
                                  type: string
                                  description: >-
                                    Name of the community where the action
                                    occurred
                            - type: object
                              required:
                                - reactionNames
                              properties:
                                reactionNames:
                                  type: array
                                  items:
                                    type: string
                                  description: List of reaction names used
                        text:
                          type: string
                          description: Human-readable notification text
                          example: >-
                            Alice and 4 others reacted to a comment on their
                            feed
                        templatedText:
                          type: string
                          description: >-
                            Notification text with template variables for
                            client-side processing,  where template variables
                            will be {{ userId: ... }}, {{ communityId: ...}} and
                            {{ text: ... }}
                          example: >-
                            {{ userId: AlicePublicId }} and {{ text: 4 others }}
                            reacted to a comment on their feed
                  paging:
                    type: object
                    description: Pagination information for navigating through results
                    required:
                      - limit
                    properties:
                      next:
                        type: string
                        description: Token to retrieve the next page of results
                      previous:
                        type: string
                        description: Token to retrieve the previous page of results
                      limit:
                        type: number
                        description: Number of items per page
                  users:
                    type: array
                    description: >-
                      User information for actors referenced in the
                      notifications
                    items:
                      type: object
                      properties:
                        _id:
                          type: string
                          description: Private ID of a user. (for real-time event)
                        path:
                          type: string
                          description: Path of a user. (for real-time event)
                        userId:
                          type: string
                        userInternalId:
                          type: string
                        userPublicId:
                          type: string
                        roles:
                          type: array
                          items:
                            type: string
                        permissions:
                          type: array
                          items:
                            type: string
                            enum:
                              - MUTE_CHANNEL
                              - CLOSE_CHANNEL
                              - EDIT_CHANNEL
                              - EDIT_CHANNEL_RATELIMIT
                              - EDIT_MESSAGE
                              - DELETE_MESSAGE
                              - BAN_USER_FROM_CHANNEL
                              - MUTE_USER_INSIDE_CHANNEL
                              - ADD_CHANNEL_USER
                              - REMOVE_CHANNEL_USER
                              - EDIT_CHANNEL_USER
                              - ASSIGN_CHANNEL_USER_ROLE
                              - BAN_USER
                              - EDIT_USER
                              - ASSIGN_USER_ROLE
                              - EDIT_USER_FEED_POST
                              - DELETE_USER_FEED_POST
                              - EDIT_USER_FEED_COMMENT
                              - DELETE_USER_FEED_COMMENT
                              - ADD_COMMUNITY_USER
                              - REMOVE_COMMUNITY_USER
                              - EDIT_COMMUNITY_USER
                              - BAN_COMMUNITY_USER
                              - MUTE_COMMUNITY_USER
                              - EDIT_COMMUNITY
                              - DELETE_COMMUNITY
                              - EDIT_COMMUNITY_POST
                              - DELETE_COMMUNITY_POST
                              - PIN_COMMUNITY_POST
                              - EDIT_COMMUNITY_COMMENT
                              - DELETE_COMMUNITY_COMMENT
                              - ASSIGN_COMMUNITY_USER_ROLE
                              - CREATE_COMMUNITY_CATEGORY
                              - EDIT_COMMUNITY_CATEGORY
                              - DELETE_COMMUNITY_CATEGORY
                              - CREATE_ROLE
                              - EDIT_ROLE
                              - DELETE_ROLE
                              - MANAGE_COMMUNITY_STORY
                        displayName:
                          type: string
                        profileHandle:
                          type: string
                        description:
                          type: string
                        avatarFileId:
                          type: string
                        avatarCustomUrl:
                          type: string
                        flagCount:
                          type: integer
                        hashFlag:
                          type: object
                          properties:
                            bits:
                              type: integer
                            hashes:
                              type: integer
                            hash:
                              type: array
                              items:
                                type: string
                        metadata:
                          type: object
                        isGlobalBan:
                          type: boolean
                          description: Global ban status. Every user can see this flag.
                        isBrand:
                          type: boolean
                          description: Brand user status.
                        createdAt:
                          type: string
                          format: date-time
                        updatedAt:
                          type: string
                          format: date-time
                        isDeleted:
                          type: boolean
                      required:
                        - userId
                        - createdAt
                        - updatedAt
                  files:
                    type: array
                    description: File information for any media referenced in notifications
                    items:
                      type: object
                      properties:
                        fileId:
                          type: string
                          description: Root file key on cloud storage.
                        fileUrl:
                          type: string
                          description: Http link for download file
                        type:
                          type: string
                          description: File type.
                          enum:
                            - image
                            - file
                            - video
                        accessType:
                          type: string
                          description: >-
                            File access type. `network` type requires
                            authentication to download.
                          enum:
                            - public
                            - network
                          default: public
                        altText:
                          type: string
                          description: Alternative text for the file.
                          maxLength: 180
                        createdAt:
                          type: string
                          description: The date/time when a file is uploaded.
                          format: date-time
                        updatedAt:
                          type: string
                          description: The date/time when a file is updated.
                          format: date-time
                        attributes:
                          type: object
                          properties:
                            name:
                              type: string
                              description: File name.
                            extension:
                              type: string
                              description: File format.
                            size:
                              type: number
                              description: File size.
                            mimeType:
                              type: string
                              description: File mime-type.
                            metadata:
                              type: object
                              description: File image metadata (width, height etc.).
                              properties:
                                exif:
                                  type: object
                                gps:
                                  type: object
                                height:
                                  type: number
                                width:
                                  type: number
                                isFull:
                                  type: boolean
                  events:
                    type: array
                    description: >-
                      Event information for any events referenced in
                      notifications (omitted when there are none)
                    items:
                      type: object
                      properties:
                        eventId:
                          type: string
                          description: Unique identifier for the event
                        userId:
                          type: string
                          description: Public user ID of the event creator
                        userInternalId:
                          type: string
                          description: Internal user ID of the event creator
                        userPublicId:
                          type: string
                          description: >-
                            Public (customer-facing) user ID of the event
                            creator
                        publisherId:
                          type: string
                          description: >-
                            Public user ID the event was published on behalf of
                            (impersonation). Absent otherwise.
                        publisherInternalId:
                          type: string
                          description: Internal user ID of the publisher
                        publisherPublicId:
                          type: string
                          description: Public (customer-facing) user ID of the publisher
                        title:
                          type: string
                          description: Event title
                          minLength: 1
                          maxLength: 60
                        description:
                          type: string
                          description: Event description
                          maxLength: 1000
                        type:
                          type: string
                          enum:
                            - virtual
                            - in_person
                          description: Event type (virtual or in-person)
                        status:
                          type: string
                          enum:
                            - scheduled
                            - live
                            - ended
                            - cancelled
                          description: Current status of the event
                        startTime:
                          type: string
                          format: date-time
                          description: Event start time (ISO 8601 format)
                        endTime:
                          type: string
                          format: date-time
                          description: Event end time (ISO 8601 format)
                        location:
                          type: string
                          description: Physical location address (for in-person events)
                          maxLength: 200
                        externalUrl:
                          type: string
                          description: External URL for virtual events (e.g., Zoom, Teams)
                        coverImageFileId:
                          type: string
                          description: File ID of the cover image
                        originId:
                          type: string
                          description: >-
                            ID of the origin (community ID, or user ID when
                            `originType` is `user`)
                        originType:
                          type: string
                          enum:
                            - community
                            - user
                          description: Origin type of the event
                        discussionCommunityId:
                          type: string
                          description: ID of the event discussion community
                        postId:
                          type: string
                          description: >-
                            ID of the livestream post backing a `virtual` event.
                            Absent for `in_person` events.
                        path:
                          type: string
                          description: Hierarchy path of the event
                        isOriginPublic:
                          type: boolean
                          description: Whether the origin community is public
                        rsvpCount:
                          type: integer
                          description: Number of users who RSVP'd as 'going'
                        interestedCount:
                          type: integer
                          description: Number of users who RSVP'd as 'interested'
                        tags:
                          type: array
                          items:
                            type: string
                            maxLength: 100
                          description: Event tags for categorization
                          maxItems: 10
                        metadata:
                          type: object
                          description: Additional metadata
                        isDeleted:
                          type: boolean
                          description: Whether the event is deleted
                        createdAt:
                          type: string
                          format: date-time
                          description: Event creation timestamp
                        updatedAt:
                          type: string
                          format: date-time
                          description: Event last update timestamp
        '422':
          description: Bad Request error.
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                  code:
                    type: number
                  message:
                    type: string
                  data:
                    type: object
                    properties:
                      detail:
                        oneOf:
                          - type: array
                            items:
                              type: string
                          - type: object
              example:
                status: error
                code: 400
                message: Bad Request.
      security:
        - BearerAuth: []
components:
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer

````