> ## 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.

# Create a new message in message feed

> Create a new message



## OpenAPI

````yaml https://raw.githubusercontent.com/AmityCo/apidocs/refs/heads/develop/bundled.json post /api/v5/messages
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/v5/messages:
    post:
      tags:
        - Message
      summary: Create a new message in message feed
      description: Create a new message
      requestBody:
        description: Message object that needs to be added
        content:
          application/json:
            schema:
              type: object
              required:
                - referenceId
                - dataType
                - messageFeedId
              properties:
                messageFeedId:
                  description: Message feed id of message
                  type: string
                  maxLength: 30
                  example: 507f191e810c19729de860ea
                parentId:
                  description: Parent id of message
                  type: string
                  maxLength: 30
                  example: abc665afd7dbb8d036037eea
                referenceId:
                  description: A reference ID
                  type: string
                  maxLength: 30
                  example: 1530b11ec8df87da22b06b27
                dataType:
                  description: Type of data
                  type: string
                  maxLength: 20
                  example: text
                data:
                  description: >-
                    A custom object for storing message. The size of this object
                    must be less than 10 kb.
                  type: object
                  example:
                    text: test
                fileId:
                  description: File id
                  type: string
                  maxLength: 30
                  example: 76bfe68974157a114053364d
                metadata:
                  description: >-
                    A custom object for storing the other data. The size of this
                    object must be less than 20 kb.
                  type: object
                  example:
                    refId: d601c27c0675baa2103ec573
                tags:
                  description: List of tags for searching
                  type: array
                  maxItems: 10
                  default: []
                  items:
                    type: string
                    maxLength: 30
                  example:
                    - tag1
                    - tag2
                mentionedUsers:
                  description: List of mentioned users
                  type: array
                  items:
                    type: object
                    properties:
                      type:
                        type: string
                        maxLength: 20
                        default: user
                        enum:
                          - channel
                          - user
                      userIds:
                        type: array
                        maxItems: 50
                        items:
                          type: string
                          maxLength: 24
                        example:
                          - 3cac302ab992aa17b215ba21
                          - adb34ec2aeedca03a38e1d54
                createdAt:
                  description: A created date/time of message
                  type: string
                  format: date-time
      responses:
        '200':
          description: Create message payload
          content:
            application/json:
              schema:
                description: The returned payload of created message(s)
                type: object
                properties:
                  messages:
                    description: The list of created message
                    type: array
                    items:
                      allOf:
                        - type: object
                          properties:
                            referenceId:
                              description: A reference ID
                              type: string
                              maxLength: 30
                              example: 1530b11ec8df87da22b06b27
                        - type: object
                          properties:
                            messageId:
                              description: A message ID
                              type: string
                              maxLength: 30
                              example: a85dca058f5b585f86a29f14
                            networkId:
                              description: A network ID
                              type: string
                              maxLength: 30
                              example: 9530b11ec8de87db22b06b27
                            channelId:
                              description: Channel id of message
                              type: string
                              maxLength: 24
                              example: abc665aed9dbb8d036037eed
                            channelType:
                              description: Channel type of message
                              type: string
                              enum:
                                - broadcast
                                - community
                                - conversation
                                - live
                              example: community
                            messageFeedId:
                              description: Message feed id of message
                              type: string
                              maxLength: 30
                              example: 507f191e810c19729de860ea
                            segment:
                              description: Segment of message in sub feed
                              type: number
                              format: int32
                            dataType:
                              description: Type of data
                              type: string
                              maxLength: 20
                              example: text
                            data:
                              description: >-
                                A custom object for storing message. The size of
                                this object must be less than 10 kb.
                              type: object
                              example:
                                text: test
                            fileId:
                              description: File id
                              type: string
                              maxLength: 30
                              example: 76bfe68974157a114053364d
                            thumbnailFileId:
                              description: Thumbnail file id
                              type: string
                              maxLength: 30
                              example: 76bfe68974157a114053364e
                            metadata:
                              description: >-
                                A custom object for storing the other data. The
                                size of this object must be less than 20 kb.
                              type: object
                              example:
                                refId: d601c27c0675baa2103ec573
                            tags:
                              description: List of tags for searching
                              type: array
                              maxItems: 10
                              default: []
                              items:
                                type: string
                                maxLength: 30
                              example:
                                - tag1
                                - tag2
                            creatorId:
                              description: A creator ID
                              type: string
                              maxLength: 24
                              example: 5349b4ddd2781d08c09890f4
                            mentionedUsers:
                              description: List of mentioned users
                              type: array
                              items:
                                type: object
                                properties:
                                  type:
                                    type: string
                                    maxLength: 20
                                    default: user
                                    enum:
                                      - channel
                                      - user
                                  userIds:
                                    type: array
                                    maxItems: 50
                                    items:
                                      type: string
                                      maxLength: 24
                                    example:
                                      - 3cac302ab992aa17b215ba21
                                      - adb34ec2aeedca03a38e1d54
                            reactions:
                              description: List of reactions
                              type: object
                              items:
                                type: object
                                additionalProperties:
                                  type: number
                              example:
                                like: 1
                                love: 2
                            reactionCount:
                              description: Total number of reactions
                              type: number
                              format: int32
                            parentId:
                              description: Parent id of message
                              type: string
                              maxLength: 30
                              example: abc665afd7dbb8d036037eea
                            path:
                              description: Object path
                              type: string
                              maxLength: 200
                              example: >-
                                12cba9779cc479e1fcefd1de/chat/f00ab16cbd27d4a9525aea6d/32b468ae0b1bd0cc7976719d/0a003482f0ac53a71e7c9239
                            flagCount:
                              description: The number of flags
                              type: number
                              format: int32
                            childCount:
                              description: The number of children message
                              type: number
                              format: int32
                            isDeleted:
                              description: Soft delete flag
                              type: boolean
                              default: false
                            editedAt:
                              description: The latest date/time of changes in message data
                              type: string
                              format: date-time
                            createdAt:
                              description: A created date/time of message
                              type: string
                              format: date-time
                            updatedAt:
                              description: A updated date/time of message
                              type: string
                              format: date-time
                            myReactions:
                              description: List of reactions of the actor
                              type: array
                              maxItems: 10
                              default: []
                              items:
                                type: string
                                maxLength: 30
                              example:
                                - like
                                - love
                  messageFeeds:
                    description: List of message feeds
                    type: array
                    items:
                      type: object
                      properties:
                        messageFeedId:
                          description: The ID of the message feed
                          type: string
                          maxLength: 30
                          example: a85dca058f5b585f86a29f14
                        channelId:
                          description: >-
                            Internal ID of the channel that the message feed
                            belongs to
                          type: string
                          maxLength: 30
                          example: abc665aed9dbb8d036037eeb
                        channelPublicId:
                          description: ID of the channel that the message feed belongs to
                          type: string
                          maxLength: 30
                          example: abc665aed9dbb8d036037eeb
                        channelType:
                          description: Type of the channel that the message feed belongs to
                          type: string
                          enum:
                            - broadcast
                            - community
                            - conversation
                            - live
                          example: community
                        name:
                          description: The name of the message feed
                          type: string
                          maxLength: 100
                          example: text
                        lastMessageId:
                          description: >-
                            The ID of the last message created in the message
                            feed
                          type: string
                          maxLength: 30
                          example: 9530b11ec8de87db22b06b21
                        lastMessageTimestamp:
                          description: >-
                            The created timestamp of the the last message
                            created in the message feed
                          type: string
                          format: date-time
                        creatorId:
                          description: Creator's ID
                          type: string
                          maxLength: 30
                          example: 8aa313c8dbb00af911b07672
                        path:
                          description: Object path
                          type: string
                          maxLength: 200
                          example: >-
                            12cba9779cc479e1fcefd1de/chat/f00ab16cbd27d4a9525aea6d/32b468ae0b1bd0cc7976719d/0a003482f0ac53a71e7c9239
                        childCount:
                          description: The number of messages inside the message feed
                          type: number
                          format: int32
                        isDeleted:
                          description: Soft delete flag
                          type: boolean
                          default: false
                        editedAt:
                          description: The edited timestamp of the message feed data
                          type: string
                          format: date-time
                        createdAt:
                          description: The created timestamp of the message feed
                          type: string
                          format: date-time
                        updatedAt:
                          description: The updated timestamp of the message feed
                          type: string
                          format: date-time
                        messagePreviewId:
                          type: string
                          description: >-
                            ID of a message preview. Depends on network
                            settings. if disabled will be null.
                      required:
                        - messageFeedId
                        - channelId
                        - channelPublicId
                        - channelType
                        - name
                        - creatorId
                        - path
                        - childCount
                        - isDeleted
                        - createdAt
                        - updatedAt
                  files:
                    description: The list of file
                    type: array
                    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
                  users:
                    description: The list of user
                    type: array
                    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
                        roles:
                          type: array
                          items:
                            type: string
                        displayName:
                          type: string
                        flagCount:
                          type: integer
                        hashFlag:
                          type: object
                          properties:
                            bits:
                              type: integer
                            hashes:
                              type: integer
                            hash:
                              type: array
                              items:
                                type: string
                        metadata:
                          type: object
                        createdAt:
                          type: string
                          format: date-time
                        updatedAt:
                          type: string
                          format: date-time
                        isDeleted:
                          type: boolean
                      required:
                        - userId
                        - createdAt
                        - updatedAt
        '404':
          description: Not found error
        '422':
          description: Parameters validation error
      security:
        - BearerAuth: []
components:
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer

````