---
title: "Đăng bài viết"
method: POST
path: "/posts"
tags: ["Posts"]
---

# Đăng bài viết

`POST /posts`

## Request body

- FireAntApiModelsPostsPostChangeRequest — Yêu cầu đăng/sửa bài
  - `approved` boolean — Approved?
  - `date` string, date-time — Ngày đăng tin
  - `title` string — Tiêu đề
  - `description` string — Mô tả
  - `type` integer — Loại (0: Bài viết mạng xã hội, 1: Tin tức)
  - `videoUrl` string — Đường dẫn video
  - `videoThumbnailUrl` string — Đường dẫn thumbnail video
  - `videoWidth` integer — Chiều rộng video
  - `videoHeight` integer — Chiều cao video
  - `language` string — Ngôn ngữ
  - `expertUserID` string — User name của chuyên gia
  - `postGroupID` integer — ID của nhóm
  - `postSourceID` integer — ID của nguồn tin
  - `isSourceContentFull` boolean — Đầy đủ nội dung từ tin nguồn?
  - `postSourceUrl` string — Đường dẫn tin nguồn
  - `isTop` boolean — Bài viết TOP
  - `content` string — Nội dung
  - `link` string — Liên kết
  - `linkTitle` string — Tiêu đề liên kết
  - `linkDescription` string — Mô tả liên kết
  - `linkImage` string — Ảnh liên kết
  - `roomID` integer — ID của nhóm chứa bài viết
  - `referToPostID` integer — Tham chiếu tới bài viết
  - `replyToPostID` integer — Trả lời cho bài viết
  - `sentiment` integer — Đánh giá bài viết (-1 =&gt; Tiêu cực, 0 =&gt; Bình thường, 1 =&gt; Tích cực)
  - `images` FireAntApiModelsPostsPostImage[] — Danh sách ảnh đính kèm bài viết (ImageID = 0 cho file mới, ImageID &gt; 0 với file cũ)
    - `imageID` integer
    - `base64Image` string
    - `imageUrl` string
  - `files` FireAntApiModelsPostsPostFile[] — Danh sách tài liệu đính kèm bài viết (FileID = 0 cho file mới, FileID &gt; 0 với file cũ)
    - `fileID` integer
    - `fileName` string
    - `fileExtension` string
    - `base64Content` string
    - `fileContentUrl` string
  - `symbols` string[] — Mã chứng khoán được tag trong nội dung
  - `individuals` integer[] — Cá nhân được tag trong nội dung
  - `hashTags` integer[] — Hashtag được tag trong nội dung
  - `users` string[] — User được tag trong nội dung
  - `videoType` integer — Loại video (0: Short, 1: Long)
  - `isVideo` boolean — Bài viết video
  - `isEmagazine` boolean — Bài viết là e-magazine
  - `isInfographic` boolean — Bài viết là infographic
  - `newsType` integer
  - `summary` string
  - `isLivestream` boolean
  - `streamingUrl` string
  - `streamingKey` string
  - `youtubeStreamingUrl` string
  - `youtubeStreamingKey` string
  - `facebookStreamingUrl` string
  - `facebookStreamingKey` string
  - `livestreamAction` boolean
  - `livestreamActionTitle` string
  - `livestreamActionUrl` string
  - `livestreamActionRoute` string
  - `repliesDisabled` boolean
  - `repliesModerationRequired` boolean
  - `pendingApproval` boolean
  - `isAIGenerated` boolean
  - `contentURL` string
  - `hasSummary` boolean

## Response `200`

Thành công

- FireAntApiModelsPostsPost
  - `postID` integer
  - `userName` string
  - `user` FireAntApiModelsUsersUserItem
    - `id` string
    - `name` string
    - `bio` string
    - `isAuthentic` boolean
    - `followed` boolean
  - `title` string
  - `description` string
  - `summary` string
  - `hasSummary` boolean
  - `type` integer
  - `newsType` integer
  - `videoUrl` string
  - `videoThumbnailUrl` string
  - `videoWidth` integer
  - `videoHeight` integer
  - `language` string
  - `postGroup` FireAntApiModelsPostsPostGroup
    - `postGroupID` integer
    - `name` string
    - `description` string
  - `postSource` FireAntApiModelsPostsPostSource
    - `postSourceID` integer
    - `name` string
    - `url` string
  - `isSourceContentFull` boolean
  - `postSourceUrl` string
  - `content` string
  - `originalContent` string
  - `contentURL` string
  - `isAIGenerated` boolean
  - `date` string, date-time
  - `priority` integer
  - `hasImage` boolean
  - `hasFile` boolean
  - `link` string
  - `linkImage` string
  - `linkTitle` string
  - `linkDescription` string
  - `sentiment` integer
  - `approved` boolean
  - `isTop` boolean
  - `isExpertIdea` boolean
  - `liked` boolean
  - `totalLikes` integer
  - `totalReplies` integer
  - `totalShares` integer
  - `replyToPostID` integer
  - `referToPostID` integer
  - `taggedSymbols` FireAntApiModelsPostsTaggedSymbol[]
    - `symbol` string
    - `price` number, double
    - `change` number, double
    - `percentChange` number, double
    - `changeSince` number, double
    - `percentChangeSince` number, double
  - `taggedIndividuals` FireAntApiModelsPostsTaggedIndividual[]
    - `individualID` integer
    - `name` string
  - `taggedHashTags` FireAntApiModelsPostsTaggedHashTag[]
    - `hashTagID` integer
    - `symbol` string
    - `name` string
  - `taggedUsers` FireAntApiModelsPostsTaggedUser[]
    - `userID` string
    - `name` string
  - `images` FireAntApiModelsPostsPostImage[]
    - `imageID` integer
    - `base64Image` string
    - `imageUrl` string
  - `files` FireAntApiModelsPostsPostFile[]
    - `fileID` integer
    - `fileName` string
    - `fileExtension` string
    - `base64Content` string
    - `fileContentUrl` string
  - `roomID` integer
  - `roomName` string
  - `isRoomSticky` boolean
  - `videoType` integer
  - `isVideo` boolean
  - `isEmagazine` boolean
  - `isInfographic` boolean
  - `lastRepliedDate` string, date-time
  - `isLivestream` boolean
  - `livestreamStarted` boolean
  - `livestreamEnded` boolean
  - `streamingUrl` string
  - `streamingKey` string
  - `youtubeStreamingUrl` string
  - `youtubeStreamingKey` string
  - `facebookStreamingUrl` string
  - `facebookStreamingKey` string
  - `livestreamAction` boolean
  - `livestreamActionTitle` string
  - `livestreamActionUrl` string
  - `livestreamActionRoute` string
  - `repliesDisabled` boolean
  - `repliesModerationRequired` boolean
  - `pendingApproval` boolean

## Other responses

- `400` — Có lỗi khi thực hiện thao tác

---

[API](https://skmtc.dev/fireant/apis/fireant-restful-api.md) · [All operations](https://skmtc.dev/fireant/apis/fireant-restful-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/fireant/fireant-restful-api/revisions/12bfdf99ab50/schema)
