<!-- https://headless-lms.dev/docs/api/posts -->

# Posts

Posts in a space, reactions, and the moderation queue

- [Published posts across the spaces you can open](https://headless-lms.dev/docs/api/posts/getMemberFeed): For a member of the community. Pinned posts first, then newest first. 404 when you are not a member.
- [Your own posts in a community, newest first](https://headless-lms.dev/docs/api/posts/listOwnPosts): For a member of the community. Your posts in any status, drafts included, in the spaces you can open. 404 when you are not a member.
- [The posts you bookmarked in a community, newest bookmark first](https://headless-lms.dev/docs/api/posts/listBookmarkedPosts): For a member of the community. Only posts you can still read. 404 when you are not a member.
- [Published posts in a space](https://headless-lms.dev/docs/api/posts/getSpaceFeed): For anyone who can open the space (403 otherwise). Filter by `topicId`; an unknown topic is a 404.
- [The moderation queue of a space you moderate](https://headless-lms.dev/docs/api/posts/getSpaceQueue): For a moderator who can open the space. Posts awaiting review, and the open flags on posts and on comments in the space. Each list holds at most the 100 oldest entries: pending posts by creation, flags by when they were raised; working the queue brings in the next ones.
- [Create a post](https://headless-lms.dev/docs/api/posts/createPost): For anyone who can open the space. `mode` decides the status: `draft`, `scheduled`, or on `submit` `published`, or `pending` when the space requires review and you are not staff. 409 when the space has topics and none is given, or a schedule is missing or in the past.
- [Read a post](https://headless-lms.dev/docs/api/posts/getPost): For anyone who can open the space while the post is published; for its author in any status; for moderators also while it is pending or removed. Any other post is a 404.
- [Edit your own post](https://headless-lms.dev/docs/api/posts/updatePost): Author only. Changes only the fields sent. 409 when the post is removed, or the topic rules of the space are not met.
- [Submit your draft or scheduled post](https://headless-lms.dev/docs/api/posts/submitPost): Author only. Publishes it now, or holds it for review when the space requires review and you are not staff. 409 when the post is not a draft or scheduled.
- [Schedule your post](https://headless-lms.dev/docs/api/posts/schedulePost): Author only. The post is submitted at `scheduledAt`. 409 when it is already submitted or removed, or the time is not in the future.
- [Publish a post that awaits review in a space you moderate](https://headless-lms.dev/docs/api/posts/approvePost): For a moderator who can open the space. 409 when the post is not awaiting review.
- [Remove your post, or one in a space you moderate](https://headless-lms.dev/docs/api/posts/removePost): For the author or a moderator. Takes a published or pending post down; a moderator removing someone else's post resolves its open flags as `removed`. 409 when it is already removed or was never submitted.
- [Restore a removed post in a space you moderate](https://headless-lms.dev/docs/api/posts/restorePost): For a moderator who can open the space. 409 when the post is not removed.
- [Pin a post in a space you moderate](https://headless-lms.dev/docs/api/posts/pinPost): For a moderator. Pinned posts lead the feeds. 409 when the post is removed.
- [Unpin a post in a space you moderate](https://headless-lms.dev/docs/api/posts/unpinPost): For a moderator. 409 when the post is removed.
- [Close comments on a post in a space you moderate](https://headless-lms.dev/docs/api/posts/closePostComments): For a moderator. Nobody can comment until they are opened again. 409 when the post is removed.
- [Open comments on a post in a space you moderate](https://headless-lms.dev/docs/api/posts/openPostComments): For a moderator. 409 when the post is removed.
- [Turn reactions on or off for a post in a space you moderate](https://headless-lms.dev/docs/api/posts/setPostReactionPolicy): For a moderator. Overrides the space's reactions setting for this post. 409 when the post is removed.
- [Withdraw your reaction from a post](https://headless-lms.dev/docs/api/posts/clearPostReaction): For anyone who can read the post, while reactions are on for it (403 otherwise). Returns the new counts.
- [Set your reaction on a post](https://headless-lms.dev/docs/api/posts/setPostReaction): For anyone who can read the post, while reactions are on for it (403 otherwise). Replaces any reaction you already had and returns the new counts.
- [Follow a post](https://headless-lms.dev/docs/api/posts/followPost): For anyone who can read the post. You are notified of new comments on it. Following twice is harmless.
- [Stop following a post](https://headless-lms.dev/docs/api/posts/unfollowPost): For anyone who can read the post. Harmless when you do not follow it.
- [Bookmark a post](https://headless-lms.dev/docs/api/posts/bookmarkPost): For anyone who can read the post. Bookmarking twice is harmless.
- [Remove a bookmark](https://headless-lms.dev/docs/api/posts/unbookmarkPost): For anyone who can read the post. Harmless when you have not bookmarked it.
- [Flag a post for the moderators](https://headless-lms.dev/docs/api/posts/flagPost): For anyone who can read the post. Flagging it again while your flag is open returns that flag.
- [Dismiss the open flags on a post in a space you moderate](https://headless-lms.dev/docs/api/posts/resolvePostFlags): For a moderator who can open the space. Closes every open flag and leaves the post up.
- [Read a post's comments](https://headless-lms.dev/docs/api/posts/listPostComments): For anyone who can read the post. Pages by top-level comment, oldest first. Each page carries its top-level comments and all of their replies; `total` counts top-level comments.
- [Comment on a post](https://headless-lms.dev/docs/api/posts/createPostComment): For anyone who can read the post, while its comments are open (403 otherwise). Replies nest one level. 409 when the post is not published.
