> Portal Navigation: > > - Append `.md` to any URL under `https://dev.wix.com/docs/` to get its markdown version. > - Pages are either content pages (article or reference text) or menu pages (a list of links to child pages). > - To get a menu page, truncate any URL to a parent path and append `.md` (e.g. `https://dev.wix.com/docs/sdk.md`, `https://dev.wix.com/docs/sdk/core-modules.md`). > - Top-level index of all portals: https://dev.wix.com/docs/llms.txt > - Full concatenated docs: https://dev.wix.com/docs/llms-full.txt ## Resource: Wix Forum Collections ## Article: Wix Forum Collections ## Article Link: https://dev.wix.com/docs/api-reference/business-solutions/cms/collection-management/wix-app-collections/wix-forum-collections.md ## Article Content: # Wix Forum Collections This article explains the fixed permissions and field structure for the following Wix Forum collections: - [Categories](#categories) - [Comments](#comments) - [Posts](#posts) > **Note:** These collections are system collections, so you can't change their permissions in the CMS.
**Tip:** Before continuing, make sure you've read [Working with Wix App Collections](https://dev.wix.com/docs/develop-websites/articles/databases/wix-data/collections/working-with-wix-app-collections-and-code.md).
## Categories This section explains the permissions and fields available in the Categories collection. To use the Categories collection in code, refer to it as `Forum/Categories`. ::::tabs :::REST_TAB ``` curl -X POST \ 'https://www.wixapis.com/wix-data/v2/items/query' \ -H 'Content-Type: application/json' \ -H 'Authorization: ' \ -d '{ "dataCollectionId": "Forum/Categories", "query": {} }' ``` ::: :::SDK_TAB ```js import { items } from "@wix/data"; items.query("Forum/Categories") .find() .then((results) => { // handle the results }); ``` ::: :::: ### Permissions The Categories collection has the following [permissions](https://support.wix.com/en/article/cms-collection-permissions-overview): - `read`: `ANYONE` - `create`: None - `update`: None - `remove`: None ### Fields This section describes each field in this collection and its properties. > **Note:** This app collection contains read-only fields that cannot be managed from the collection. You can update the fields from the relevant app in your site’s [dashboard](https://support.wix.com/en/article/accessing-your-sites-dashboard). Each field heading shows the field name followed by the field ID in parentheses, in the format "fieldName (`fieldId`)". The fields are listed in the same order as the collection's default order in the CMS. #### ID (`_id`) **Description:** The category ID. **Type:** Text **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** No **Filter Support:** `eq`, `ne`, `hasSome` **Read-only:** Yes #### Parent ID (`parentId`) **Description:** ID of the parent category (for subcategories). **Type:** Text **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** No **Filter Support:** `eq`, `ne` **Read-only:** Yes #### Name (`name`) **Description:** Category name. **Type:** Text **Can connect to data:** Yes **Can use in dynamic page URL:** Yes **Sortable:** No **Filter Support:** `eq`, `ne`, `contains`, `startsWith`, `hasSome` **Read-only:** Yes #### Header Title (`headerTitle`) **Description:** Title in the category header. **Type:** Text **Can connect to data:** Yes **Can use in dynamic page URL:** Yes **Sortable:** No **Filter Support:** `eq`, `ne`, `contains`, `startsWith`, `hasSome` **Read-only:** Yes #### Description (`description`) **Description:** Description in the category header. **Type:** Text **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** No **Filter Support:** `contains`, `startsWith`, `hasAll` **Read-only:** Yes #### Header Type (`headerType`) **Description:** Type of category header. **Type:** String **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** No **Filter Support:** `eq`, `ne` **Read-only:** Yes > **Note:** The `headerType` field has one of the following values: > > - `ABANDONED` > - `RECOVERED` #### Header Image (`headerImage`) **Description:** Header Image. **Type:** Image **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** No **Filter Support:** No **Read-only:** Yes #### Header Image Overlay Color (`headerImageOverlayColor`) **Description:** Header image overlay color. **Type:** Text **Can connect to data:** No **Can use in dynamic page URL:** No **Sortable:** No **Filter Support:** No **Read-only:** Yes #### Header Background Color (`headerBackgroundColor`) **Description:** Header background color. **Type:** Text **Can connect to data:** No **Can use in dynamic page URL:** No **Sortable:** No **Filter Support:** No **Read-only:** Yes #### Header Text Color (`headerTextColor`) **Description:** Header text color. **Type:** No **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** No **Filter Support:** No **Read-only:** Yes #### Rank (`rank`) **Description:** Category order, where 0 indicates the first category. **Type:** Number **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** Yes **Filter Support:** `eq`, `ne`, `lt`, `lte`, `gt`, `gte` **Read-only:** Yes #### Post Count (`postCount`) **Description:** Number of posts in the category. **Type:** Number **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** Yes **Filter Support:** `eq`, `ne`, `lt`, `lte`, `gt`, `gte` **Read-only:** Yes #### Post View Count (`postViewCount`) **Description:** Number of times the posts in the category have been viewed. **Type:** Number **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** Yes **Filter Support:** `eq`, `ne`, `lt`, `lte`, `gt`, `gte` **Read-only:** Yes #### Write Protection **Description:**  **Type:** Boolean **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** No  **Filter Support:** No  **Read-only:** Yes #### Page URL (`pageUrl`) **Description:** URL of the category page. **Type:** URL **Can connect to data:** Yes, can connect as a button click action. **Can use in dynamic page URL:** No **Sortable:** No **Filter Support:** No **Read-only:** Yes #### Slug (`slug`) **Description:** The category's slug, which is its URL-friendly name that is unique across the forum. **Type:** Text **Can connect to data:** Yes **Can use in dynamic page URL:** Yes **Sortable:** No **Filter Support:** Yes **Read-only:** Yes ## Comments This section explains the permissions and fields available in the Comments collection. To use the Comments collection in code, refer to it as `Forum/Comments`. ::::tabs :::REST_TAB ``` curl -X POST \ 'https://www.wixapis.com/wix-data/v2/items/query' \ -H 'Content-Type: application/json' \ -H 'Authorization: ' \ -d '{ "dataCollectionId": "Forum/Comments", "query": {} }' ``` ::: :::SDK_TAB ```js import { items } from "@wix/data"; items.query("Forum/Comments") .find() .then((results) => { // handle the results }); ``` ::: :::: ### Permissions The Comments collection has the following [permissions](https://support.wix.com/en/article/cms-collection-permissions-overview): - `read`: `ANYONE` - `create`: None - `update`: None - `remove`: None ### Fields This section describes each field in this collection and its properties. > **Note:** This app collection contains read-only fields that cannot be managed from the collection. You can update the fields from the relevant app in your site’s [dashboard](https://support.wix.com/en/article/accessing-your-sites-dashboard). Each field heading shows the field name followed by the field ID in parentheses, in the format "fieldName (`fieldId`)". The fields are listed in the same order as the collection's default order in the CMS. #### ID (`_id`) **Description:** The comment ID. **Type:** Text **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** No **Filter Support:** `eq`, `ne`, `hasSome`, `contains` **Read-only:** Yes #### Parent ID (`parentId`) **Description:** ID of the parent comment (for replies). **Type:** Text **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** No **Filter Support:** `eq`, `ne` **Read-only:** Yes #### Post ID (`postId`) **Description:** ID of the post that the comment is commenting on. **Type:** Text **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** No **Filter Support:** `eq`, `ne` **Read-only:** Yes #### Owner ID (`ownerId`) **Description:** ID of the comment owner. **Type:** Text **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** No **Filter Support:** Yes **Read-only:** Yes #### Plain Content (`plainContent`) **Description:** Plain content of the comment. **Type:** Text **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** No **Filter Support:** No **Read-only:** Yes #### Reply Count (`replyCount`) **Description:** Number of replies to the comment. **Type:** Number **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** Yes **Filter Support:** `eq`, `ne`, `lt`, `lte`, `gt`, `gte` **Read-only:** Yes #### Like Count (`likeCount`) **Description:** Number of likes on the comment. **Type:** Number **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** Yes **Filter Support:** `eq`, `ne`, `lt`, `lte`, `gt`, `gte` **Read-only:** Yes #### Created Date (`_createdDate`) **Description:** Date and time the comment was created. **Type:** Date and Time **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** Yes **Filter Support:** `eq`, `ne`, `lt`, `lte`, `gt`, `gte` **Read-only:** Yes #### Edited Date (`_editedDate`) **Description:** Date and time the comment was last edited. **Type:** Date and Time **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** No **Filter Support:** `eq`, `ne`, `lt`, `lte`, `gt`, `gte` **Read-only:** Yes #### Last Activity Date (`lastActivityDate`) **Description:** Date and time of the last activity on the comment. **Type:** Date and Time **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** Yes **Filter Support:** `eq`, `ne`, `lt`, `lte`, `gt`, `gte` **Read-only:** Yes #### Page URL (`pageUrl`) **Description:** URL of the comment page. **Type:** URL **Can connect to data:** Yes, can connect as a button click action. **Can use in dynamic page URL:** No **Sortable:** No **Filter Support:** No **Read-only:** Yes #### Upvote Count (`upvoteCount`) **Description:** Number of upvotes on the comment. **Type:** Number **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** No **Filter Support:** `eq`, `ne`, `lt`, `lte`, `gt`, `gte` **Read-only:** Yes #### Downvote Count (`downvoteCount`) **Description:** Number of downvotes on the comment. **Type:** Number **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** No **Filter Support:** `eq`, `ne`, `lt`, `lte`, `gt`, `gte` **Read-only:** Yes #### Score (`score`) **Description:** Number of upvotes minus the number of downvotes. **Type:** Number **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** Yes **Filter Support:** `eq`, `ne`, `lt`, `lte`, `gt`, `gte` **Read-only:** Yes ## Posts This section explains the permissions and fields available in the Posts collection. To use the Posts collection in code, refer to it as `Forum/Posts`. ::::tabs :::REST_TAB ``` curl -X POST \ 'https://www.wixapis.com/wix-data/v2/items/query' \ -H 'Content-Type: application/json' \ -H 'Authorization: ' \ -d '{ "dataCollectionId": "Forum/Posts", "query": {} }' ``` ::: :::SDK_TAB ```js import { items } from "@wix/data"; items.query("Forum/Posts") .find() .then((results) => { // handle the results }); ``` ::: :::: ### Permissions The Posts collection has the following [permissions](https://support.wix.com/en/article/cms-collection-permissions-overview): - `read`: `ANYONE` - `create`: None - `update`: None - `remove`: None ### Fields This section describes each field in this collection and its properties. > **Note:** This app collection contains read-only fields that cannot be managed from the collection. You can update the fields from the relevant app in your site’s [dashboard](https://support.wix.com/en/article/accessing-your-sites-dashboard). Each field heading shows the field name followed by the field ID in parentheses, in the format "fieldName (`fieldId`)". The fields are listed in the same order as the collection's default order in the CMS. #### ID (`_id`) **Description:** The post ID. **Type:** Text **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** No **Filter Support:** `eq`, `ne`, `hasSome` **Read-only:** Yes #### Category ID (`categoryId`) **Description:** Post category ID. **Type:** Text **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** No **Filter Support:** `eq`, `ne` **Read-only:** Yes #### Owner ID (`ownerId`) **Description:** Post owner's ID. **Type:** Text **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** No **Filter Support:** `eq`, `ne` **Read-only:** Yes #### Title (`title`) **Description:** Post title. **Type:** Text **Can connect to data:** Yes **Can use in dynamic page URL:** Yes **Sortable:** No **Filter Support:** `eq`, `ne`, `contains`, `startsWith`, `hasSome` **Read-only:** Yes #### Plain Content (`plainContent`) **Description:** Plain content of the forum post. **Type:** Text **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** No **Filter Support:** `contains`, `startsWith`, `hasAll` **Read-only:** Yes #### Best Answer Comment ID (`bestAnswerCommentId`) **Description:** ID of the comment marked as the best answer. **Type:** String **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** No **Filter Support:** `eq`, `ne` **Read-only:** Yes #### Pinned (`pinned`) **Description:** Whether the post is pinned. **Type:** Boolean **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** Yes **Filter Support:** `eq`, `ne` **Read-only:** Yes #### Commenting Disabled (`commentingDisabled`) **Description:** Whether comments are disabled for the post. **Type:** Boolean **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** No **Filter Support:** `eq`, `ne` **Read-only:** Yes #### Comment Count (`commentCount`) **Description:** Number of comments on the post. **Type:** Number **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** Yes **Filter Support:** `eq`, `ne`, `lt`, `lte`, `gt`, `gte` **Read-only:** Yes #### Like Count (`likeCount`) **Description:** Number of likes on the post. **Type:** Number **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** Yes **Filter Support:** `eq`, `ne`, `lt`, `lte`, `gt`, `gte` **Read-only:** Yes #### View Count (`viewCount`) **Description:** Number of times the post has been viewed. **Type:** Number **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** Yes **Filter Support:** `eq`, `ne`, `lt`, `lte`, `gt`, `gte` **Read-only:** Yes #### Created Date (`_createdDate`) **Description:** Date and time the post was created. **Type:** Date and Time **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** Yes **Filter Support:** `eq`, `ne`, `lt`, `lte`, `gt`, `gte` **Read-only:** Yes #### Edited Date (`_editedDate`) **Description:** Date and time the post was last edited. **Type:** Date and Time **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** No **Filter Support:** `eq`, `ne`, `lt`, `lte`, `gt`, `gte` **Read-only:** Yes #### Last Activity Date (`lastActivityDate`) **Description:** Date and time of the last activity performed on the post. **Type:** Date and Time **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** Yes **Filter Support:** `eq`, `ne`, `lt`, `lte`, `gt`, `gte` **Read-only:** Yes #### Page URL (`pageUrl`) **Description:** URL of the post page. **Type:** URL **Can connect to data:** Yes, can connect as a button click action. **Can use in dynamic page URL:** No **Sortable:** No **Filter Support:** No **Read-only:** Yes #### Slug (`slug`) **Description:** The post's slug, which is its URL-friendly name that is unique across the forum. **Type:** Text **Can connect to data:** Yes **Can use in dynamic page URL:** Yes **Sortable:** No **Filter Support:** Yes **Read-only:** Yes #### Post Type (`postType`) **Description:** Type of post. **Type:** Text **Can connect to data:** Yes **Can use in dynamic page URL:** No **Sortable:** No **Filter Support:** `eq`, `ne` **Read-only:** Yes > **Note:** The `postType` field has one of the following values: > > - `DISCUSSION` > - `QUESTION`