Common Data Structure 
To reduce documentation effort and ensure consistency of public data, the same sections of the API documentation are written as data structures on this page.
- Empty array use 
[] - Empty object use 
null - like/dislike/follow/block The count parameter, if 
null, means the backend is not public, if public, it is a numeric value. 
Account Info 
json
{
    "aid": "String / Account ID",
    "countryCode": "Number / International Area Code of the Phone",
    "purePhone": "String / Encrypted Phone Number",
    "phone": "String / Encrypted Phone Number with International Area Code",
    "email": "String / Encrypted Email",
    "hasPassword": "Boolean / Account Has Password",
    "verifyStatus": "Boolean / Verified Identity",
    "verifyRealName": "String / Encrypted Real Name",
    "verifyGender": "Number / Gender 1.Unknown 2.Male 3.Female",
    "verifyCertType": "String / Certificate Type: idcard, passport, driving, business",
    "verifyCertNumber": "String / Encrypted Certificate Number",
    "verifyIdentityType": "Number / Verification Type 1.Unknown 2.Individual 3.Enterprise",
    "verifyDateTime": "String / Verification Time",
    "registerDateTime": "String / Account Registration Time",
    "status": "Boolean / Account Status",
    "waitDelete": "Boolean / Pending Deletion",
    "waitDeleteDateTime": "String / Scheduled Deletion Time",
    "connects": [
        {
            "connectPlatformId": "Number / Connected Platform Number",
            "connectName": "String / Connected Platform Name",
            "connected": "Boolean / is connected",
            "service": "String / Connect Plugin Service",
            "username": "String / Connected Platform Username",
            "nickname": "String / Connected Platform Nickname",
            "avatar": "String / Connected Platform Avatar",
            "status": "Boolean / Connected Platform Validity"
        }
    ],
    "wallet": {
        "status": "Boolean / Wallet Validity",
        "hasPassword": "Boolean / Wallet Has Password",
        "currencyCode": "String / Currency Code, e.g. USD",
        "currencyName": "String / Custom Currency Name",
        "currencyUnit": "String / Custom Currency Unit Name",
        "currencyPrecision": "Number / Currency Precision",
        "balance": "String / Wallet Balance",
        "freezeAmount": "String / Unavailable Amount",
        "bankName": "String / Bank Name",
        "swiftCode": "String / SWIFT Code",
        "bankAddress": "String / Bank Address",
        "bankAccount": "String / Encrypted Bank Account",
        "bankStatus": "Boolean / Bank Verification Status"
    },
    "users": [
        {
            // Common Data Structure -> User Info
        }
    ],
    "interaction": {
        "userName": "String / Custom User Identity Name",
        "userUidName": "String / Custom User ID Name",
        "userUsernameName": "String / Custom Username Name",
        "userNicknameName": "String / Custom User Nickname Name",
        "userRoleName": "String / Custom User Role Name",
        "userBioName": "String / Custom User Introduction Name",
        "followSetting": "Boolean / Allow Follow",
        "followName": "String / Custom Follow Action Name",
        "likeSetting": "Boolean / Allow Like",
        "likeName": "String / Custom Like Action Name",
        "dislikeSetting": "Boolean / Allow Dislike",
        "dislikeName": "String / Custom Dislike Action Name",
        "blockSetting": "Boolean / Allow Block",
        "blockName": "String / Custom Block Action Name",
        "publishPostName": "String / Custom Publish Post Name",
        "publishCommentName": "String / Custom Publish Comment Name"
    }
}User Info 
json
{
    "fsid": "String / User identifier ID, uid or username",
    "uid": "Number / User ID",
    "username": "String / Username",
    "url": "String / User homepage URL",
    "nickname": "String / User nickname",
    "avatar": "String / Avatar image",
    "decorate": "String / Avatar decoration",
    "banner": "String / Banner image",
    "gender": "Number / Gender 1. Unknown 2. Male 3. Female",
    "birthday": "String / Birthday",
    "bio": "String / Bio",
    "bioHtml": "String / Bio in HTML format",
    "location": "String / Location",
    "conversationLimit": "Number / Conversation settings, 1. Allow all users 2. Only allow users I follow 3. Users I follow and verified users 4. No users allowed",
    "commentLimit": "Number / Comment settings, 1. Allow all users 2. Only allow users I follow 3. Users I follow and verified users 4. No users allowed",
    "verifiedStatus": "Boolean / Verified status",
    "verifiedIcon": "String / Custom verified icon",
    "verifiedDesc": "String / Verification description",
    "verifiedDateTime": "String / Verification date and time",
    "expired": "Boolean / Whether the user is expired, always false in public mode",
    "expiryDateTime": "String / User expiry date and time",
    "lastPublishPost": "String / Last post publishing time",
    "lastPublishComment": "String / Last comment time",
    "lastEditUsername": "String / Last username edit time",
    "lastEditNickname": "String / Last nickname edit time",
    "registerDate": "String / Registration date",
    "hasPassword": "Boolean / Has password",
    "rankState": "Number / Rank status",
    "status": "Boolean / User status",
    "waitDelete": "Boolean / Waiting for deletion",
    "waitDeleteDateTime": "String / Scheduled deletion time",
    "nicknameColor": "String / Main role - Nickname color",
    "rid": "Number / Main role - Role ID",
    "roleName": "String / Main role - Role name",
    "roleNameDisplay": "Boolean / Main role - Display role name",
    "roleIcon": "String / Main role - Role icon URL",
    "roleIconDisplay": "Boolean / Main role - Display role icon",
    "roleExpiryDateTime": "String / Main role - Role expiry date",
    "roleRankState": "Number / Rank status",
    "rolePermissions": {
        // Data Table: roles->permissions
        // Role permissions converted to Object format
    },
    "roleStatus": "Boolean / Main role status",
    "stats": {
        "likeUserCount": "Number / Total users they liked",
        "likeGroupCount": "Number / Total groups they liked",
        "likeHashtagCount": "Number / Total hashtags they liked",
        "likePostCount": "Number / Total posts they liked",
        "likeCommentCount": "Number / Total comments they liked",
        "dislikeUserCount": "Number / Total users they disliked",
        "dislikeGroupCount": "Number / Total groups they disliked",
        "dislikeHashtagCount": "Number / Total hashtags they disliked",
        "dislikePostCount": "Number / Total posts they disliked",
        "dislikeCommentCount": "Number / Total comments they disliked",
        "followUserCount": "Number / Total users they followed",
        "followGroupCount": "Number / Total groups they followed",
        "followHashtagCount": "Number / Total hashtags they followed (bookmarked)",
        "followPostCount": "Number / Total posts they followed (bookmarked)",
        "followCommentCount": "Number / Total comments they followed (bookmarked)",
        "blockUserCount": "Number / Total users they blocked (blacklisted)",
        "blockGroupCount": "Number / Total groups they blocked (not interested)",
        "blockHashtagCount": "Number / Total hashtags they blocked (not interested)",
        "blockPostCount": "Number / Total posts they blocked (not interested)",
        "blockCommentCount": "Number / Total comments they blocked (not interested)",
        "likeMeCount": "Number / Total people who liked them",
        "dislikeMeCount": "Number / Total people who disliked them",
        "followMeCount": "Number / Total people who followed them (follower count)",
        "blockMeCount": "Number / Total people who blocked (blacklisted) them",
        "postPublishCount": "Number / Total posts they published",
        "postDigestCount": "Number / Total digest posts they published",
        "postLikeCount": "Number / Total likes on their posts",
        "postDislikeCount": "Number / Total dislikes on their posts",
        "postFollowCount": "Number / Total follows on their posts",
        "postBlockCount": "Number / Total blocks on their posts",
        "commentPublishCount": "Number / Total comments they published",
        "commentDigestCount": "Number / Total digest comments they published",
        "commentLikeCount": "Number / Total likes on their comments",
        "commentDislikeCount": "Number / Total dislikes on their comments",
        "commentFollowCount": "Number / Total follows on their comments",
        "commentBlockCount": "Number / Total blocks on their comments",
        "extcredits1": "Number / Custom score",
        "extcredits1State": "Number / State 1. Not enabled 2. Private 3. Public",
        "extcredits1Name": "String / Name",
        "extcredits1Unit": "String / Unit",
        "extcredits2": "Number / Custom score",
        "extcredits2State": "Number / State 1. Not enabled 2. Private 3. Public",
        "extcredits2Name": "String / Name",
        "extcredits2Unit": "String / Unit",
        "extcredits3": "Number / Custom score",
        "extcredits3State": "Number / State 1. Not enabled 2. Private 3. Public",
        "extcredits3Name": "String / Name",
        "extcredits3Unit": "String / Unit",
        "extcredits4": "Number / Custom score",
        "extcredits4State": "Number / State 1. Not enabled 2. Private 3. Public",
        "extcredits4Name": "String / Name",
        "extcredits4Unit": "String / Unit",
        "extcredits5": "Number / Custom score",
        "extcredits5State": "Number / State 1. Not enabled 2. Private 3. Public",
        "extcredits5Name": "String / Name",
        "extcredits5Unit": "String / Unit",
    },
    "archives": [
        // Common Data Structure -> Extend Archive Info
    ],
    "operations": {
        // Common Data Structure -> Extend Operation Info
    },
    "extends": {
        // Common Data Structure -> Extend Content Info
    },
    "roles": [
        {
            "rid": "Number / Role ID",
            "isMain": "Boolean / Whether it is the main role",
            "nicknameColor": "String / Nickname color",
            "name": "String / Role name",
            "nameDisplay": "Boolean / Whether to display the role name",
            "icon": "String / Role icon URL",
            "iconDisplay": "Boolean / Whether to display the role icon",
            "status": "Boolean / Whether the role is valid"
        }
    ],
    "interaction": {
        "userName": "String / Custom user identity name",
        "userUidName": "String / Custom user ID name",
        "userUsernameName": "String / Custom username name",
        "userNicknameName": "String / Custom user nickname name",
        "userRoleName": "String / Custom user role name",
        "userBioName": "String / Custom user introduction name",
        "likeSetting": "Boolean / Whether to allow like",
        "likeName": "String / Custom like action name",
        "dislikeSetting": "Boolean / Whether to allow dislike",
        "dislikeName": "String / Custom dislike action name",
        "followSetting": "Boolean / Whether to allow follow",
        "followName": "String / Custom follow action name",
        "blockSetting": "Boolean / Whether to allow block",
        "blockName": "String / Custom block action name",
        "publishPostName": "String / Custom publish post name",
        "publishCommentName": "String / Custom publish comment name",
        "likeStatus": "Boolean / Like Status",
        "dislikeStatus": "Boolean / Dislike Status",
        "followStatus": "Boolean / Follow Status",
        "followMeStatus": "Boolean / Whether he is following me",
        "followNote": "String / My note on following him",
        "blockStatus": "Boolean / Block Status",
        "blockMeStatus": "Boolean / Whether he has blocked me",
        "blockNote": "String / My note on blocking him"
    },
    "conversation": {
        "status": "Boolean / Whether I can send him a private message",
        "code": "Number / Error code when not allowed",
        "message": "String / Error description when not allowed"
    }
}Group Info 
json
{
    "gid": "String / Group ID",
    "url": "String / Group detail page URL",
    "type": "Number / Group type 1.Group category 2.Group 3.Subgroup, group within group",
    "gname": "String / Group name",
    "description": "String / Group introduction",
    "cover": "String / Group cover image",
    "banner": "String / Group banner image",
    "recommend": "Boolean / Whether it is a recommended group",
    "mode": "Number / Group mode 1.Public 2.Non-public",
    "modeEndAfter": "Number / After non-public mode expires 1.No restrictions 2.All group content is invisible 3.Content before expiration is visible, new content is not visible",
    "find": "Number / Whether it can be discovered (whether it is displayed) 1.Discoverable 2.Not discoverable",
    "followType": "Number / Follow method 1.Native method 2.Plugin method 3.close",
    "followUrl": "String / Follow method 2 specific, follow plugin page URL",
    "parentGid": "String / Parent group ID",
    "category": {
        "gid": "String / Parent group ID",
        "gname": "String / Parent group name",
        "description": "String / Parent group introduction",
        "cover": "String / Parent group cover image",
        "banner": "String / Parent group banner image"
    },
    "subgroupCount": "Number / Total number of subgroup",
    "likeCount": "Number / Total number of likes",
    "dislikeCount": "Number / Total number of dislikes",
    "followCount": "Number / Total number of follows",
    "blockCount": "Number / Total number of blocks",
    "postCount": "Number / Total number of posts",
    "postDigestCount": "Number / Total number of digest posts",
    "commentCount": "Number / Total number of comments",
    "commentDigestCount": "Number / Total number of digest comments",
    "permissions": {
        // Custom group configuration parameters
        // Data Table: groups->permissions
    },
    "createdDatetime": "String / Group creation datetime",
    "archives": [
        // Common Data Structure -> Extend Archive Info
    ],
    "operations": {
        // Common Data Structure -> Extend Operation Info
    },
    "extends": {
        // Common Data Structure -> Extend Content Info
    },
    "creator": {
        // Common Data Structure -> User Info
    },
    "canViewContent": "Boolean / Whether the user has permission to view content",
    "publishRule": {
        "allowPost": "Boolean / Whether the user has permission to post",
        "subGroupPost": "Boolean / Whether posts can only be published to subgroups",
        "reviewPost": "Boolean / Whether posts need to be reviewed",
        "allowComment": "Boolean / Whether the user has permission to comment",
        "reviewComment": "Boolean / Whether comments need to be reviewed"
    },
    "contentMeta": {
        "post": [
            {
                "fskey": "String / Plugin Fskey",
                "name": "String / Name",
                "description": "String / Description",
                "code": "String / Code",
                "formElement": "String / HTML Form Element",
                "elementType": "String / Form Element Type",
                "elementOptions": "Array / Option Type Configuration Values",
                "isMultiple": "Boolean / Whether multiple selection is allowed for select, email, file, etc.",
                "isRequired": "Boolean / Whether required",
                "fileType": "Number / 1.Image 2.Video 3.Audio 4.Document", // Used when elementType is file
                "fileAccept": "String / Supported file extensions, e.g., .jpg, .png", // Used when elementType is file
                "fileExt": "String / Supported file extensions, e.g., jpg, png", // Used when elementType is file
                "inputPattern": "String / Custom Regular Expression",
                "inputMax": "Number / Maximum Value",
                "inputMin": "Number / Minimum Value",
                "inputMaxlength": "Number / Maximum Length",
                "inputMinlength": "Number / Minimum Length",
                "inputSize": "Number / Size",
                "inputStep": "Number / Step",
                "valueType": "String / Data Value Type"
            }
        ],
        "comment": [
            {
                "fskey": "String / Plugin Fskey",
                "name": "String / Name",
                "description": "String / Description",
                "code": "String / Code",
                "formElement": "String / HTML Form Element",
                "elementType": "String / Form Element Type",
                "elementOptions": "Array / Option Type Configuration Values",
                "isMultiple": "Boolean / Whether multiple selection is allowed for select, email, file, etc.",
                "isRequired": "Boolean / Whether required",
                "fileType": "Number / 1.Image 2.Video 3.Audio 4.Document", // Used when elementType is file
                "fileAccept": "String / Supported file extensions, e.g., .jpg, .png", // Used when elementType is file
                "fileExt": "String / Supported file extensions, e.g., jpg, png", // Used when elementType is file
                "inputPattern": "String / Custom Regular Expression",
                "inputMax": "Number / Maximum Value",
                "inputMin": "Number / Minimum Value",
                "inputMaxlength": "Number / Maximum Length",
                "inputMinlength": "Number / Minimum Length",
                "inputSize": "Number / Size",
                "inputStep": "Number / Step",
                "valueType": "String / Data Value Type"
            }
        ],
    },
    "admins": [
        {
            // Group admin list
            // Common Data Structure -> User Info
        }
    ],
    "interaction": {
        "groupName": "String / Custom Group Name",
        "likeSetting": "Boolean / Whether like is allowed",
        "likeName": "String / Custom Like Action Name",
        "dislikeSetting": "Boolean / Whether dislike is allowed",
        "dislikeName": "String / Custom Dislike Action Name",
        "followSetting": "Boolean / Whether follow is allowed",
        "followName": "String / Custom Follow Action Name",
        "blockSetting": "Boolean / Whether block is allowed",
        "blockName": "String / Custom Block Action Name",
        "publishPostName": "String / Custom Publish Post Name",
        "publishCommentName": "String / Custom Publish Comment Name",
        "likeStatus": "Boolean / Like Status",
        "dislikeStatus": "Boolean / Dislike Status",
        "followStatus": "Boolean / Follow Status",
        "followNote": "String / My Note for Following This Group",
        "followExpired": "Boolean / Whether expired, always false for public groups",
        "followExpiryDateTime": "String / Expiry Date Time",
        "blockStatus": "Boolean / Block Status",
        "blockNote": "String / My Note for Blocking This Group"
    }
}Hashtag Info 
json
{
    "hid": "String / Topic ID",
    "url": "String / Topic Detail Page URL",
    "hname": "String / Topic Name",
    "cover": "String / Topic Cover Image",
    "description": "String / Topic Description",
    "likeCount": "Number / Total Like Count",
    "dislikeCount": "Number / Total Dislike Count",
    "followCount": "Number / Total Follow Count",
    "blockCount": "Number / Total Block Count",
    "postCount": "Number / Total Post Count",
    "postDigestCount": "Number / Total Digest Post Count",
    "commentCount": "Number / Total Comment Count",
    "commentDigestCount": "Number / Total Digest Comment Count",
    "createdDatetime": "String / Topic Creation Datetime",
    "archives": [
        // Common Data Structure -> Extend Archive Info
    ],
    "operations": {
        // Common Data Structure -> Extend Operation Info
    },
    "extends": {
        // Common Data Structure -> Extend Content Info
    },
    "interaction": {
        "hashtagName": "String / Custom Topic Name",
        "likeSetting": "Boolean / Whether like is allowed",
        "likeName": "String / Custom Like Action Name",
        "dislikeSetting": "Boolean / Whether dislike is allowed",
        "dislikeName": "String / Custom Dislike Action Name",
        "followSetting": "Boolean / Whether follow is allowed",
        "followName": "String / Custom Follow Action Name",
        "blockSetting": "Boolean / Whether block is allowed",
        "blockName": "String / Custom Block Action Name",
        "publishPostName": "String / Custom Publish Post Name",
        "publishCommentName": "String / Custom Publish Comment Name",
        "likeStatus": "Boolean / Like Status",
        "dislikeStatus": "Boolean / Dislike Status",
        "followStatus": "Boolean / Follow Status",
        "followNote": "String / My Note for Following This Topic",
        "blockStatus": "Boolean / Block Status",
        "blockNote": "String / My Note for Blocking This Topic"
    }
}Post Info 
json
{
    "pid": "String / Post ID",
    "url": "String / Post Detail Page URL",
    "title": "String / Post Title",
    "content": "String / Post Content or Summary",
    "contentLength": "Number / Total Content Length",
    "langTag": "String / Content Language Tag",
    "writingDirection": "String / Content Writing Direction",
    "isBrief": "Boolean / Whether it is a summary",
    "isMarkdown": "Boolean / Whether it is in MD format",
    "isAnonymous": "Boolean / Whether anonymous",
    "stickyState": "Number / Sticky status 1.No 2.Group Sticky 3.Global Sticky",
    "digestState": "Number / Digest status 1.No 2.General Digest 3.Premium Digest",
    "viewCount": "Number / Total View Count",
    "likeCount": "Number / Total Like Count",
    "dislikeCount": "Number / Total Dislike Count",
    "followCount": "Number / Total Follow Count",
    "blockCount": "Number / Total Block Count",
    "commentCount": "Number / Total Comment Count",
    "commentDigestCount": "Number / Total Digest Comments Count",
    "commentLikeCount": "Number / Total Comment Like Count",
    "commentDislikeCount": "Number / Total Comment Dislike Count",
    "commentFollowCount": "Number / Total Comment Follow Count",
    "commentBlockCount": "Number / Total Comment Block Count",
    "postCount": "Number / Total Related Posts Count, the number of other people quoting it",
    "createdDatetime": "String / Post Publish Time",
    "createdTimeAgo": "String / Human-readable Post Publish Time",
    "editedDatetime": "String / Post Last Edit Time",
    "editedTimeAgo": "String / Human-readable Post Last Edit Time",
    "editedCount": "Number / Edit Count",
    "latestCommentDatetime": "String / Latest Comment Time",
    "latestCommentTimeAgo": "String / Human-readable Latest Comment Time",
    "rankState": "Number / Rank State",
    "status": "Boolean / Post Status",
    "readConfig": {
        "isReadLocked": "Boolean / Whether Authorization is Required",
        "previewPercentage": "Number / Content Display Percentage When Unauthorized",
        "buttonName": "String / Button Text When Unauthorized",
        "buttonUrl": "String / URL to Handle Authorization",
    },
    "affiliatedUserConfig": {
        "hasUserList": "Boolean / Whether there is a Related User List",
        "userListName": "String / User List Name",
        "userListUrl": "String / URL to View User List",
        "userListCount": "Number / User List Count",
    },
    "moreJson": {
        // Data Table: posts->more_json
        // The following keys are known
        "ipLocation": "String / Author IP Location Name",
        "deviceName": "String / Author Device Name"
    },
    "location": {
        "isLbs": "Boolean / Whether there is location information",
        "mapId": "Number / Latitude and Longitude Map ID",
        "latitude": "String / Latitude",
        "longitude": "String / Longitude",
        "scale": "String / Map Scale",
        "continent": "String / Continent Name",
        "continentCode": "String / Continent Code",
        "country": "String / Country Name",
        "countryCode": "String / Country Code",
        "region": "String / Province Name",
        "regionCode": "String / Province Code",
        "city": "String / City Name",
        "cityCode": "String / City Code",
        "district": "String / District Name",
        "address": "String / Address",
        "zip": "String / Postal Code",
        "poi": "String / POI Information",
        "poiId": "String / POI ID",
        "distance": "Number / Distance between the post location and me",
        "unit": "String / Unit of distance from me, km or mi",
        "encode": "String / Base64 and URL encoded location parameter string"
    },
    "isCommentHidden": "Boolean / Whether to hide all comments",
    "isCommentDisabled": "Boolean / Whether comments are disabled",
    "isCommentPrivate": "Boolean / Whether the comment is private (visible only to the comment author and post author)",
    "archives": [
        // Common Data Structure -> Extend Archive Info
    ],
    "operations": {
        // Common Data Structure -> Extend Operation Info
    },
    "extends": {
        // Common Data Structure -> Extend Content Info
    },
    "files": {
        "images": [
            {
                // Common Data Structure -> File Info
            }
        ],
        "videos": [
            {
                // Common Data Structure -> File Info
            }
        ],
        "audios": [
            {
                // Common Data Structure -> File Info
            }
        ],
        "documents": [
            {
                // Common Data Structure -> File Info
            }
        ]
    },
    "group": {
        // The group to which the item belongs can be null.
        // Common Data Structure -> Group Info
    },
    "hashtags": [
        {
            // Post Related Topics
            // Common Data Structure -> Hashtag Info
        }
    ],
    "author": {
        // Post author
        // Common Data Structure -> User Info
    },
    "isMultiLevelQuote": "Boolean / Whether there are multiple levels of reference, and whether quoted posts are also referenced at the previous level.",
    "quotedPost": {
        // Posts quoted by the current post
        // Common Data Structure -> Post Info
    },
    "previewLikeUsers": [
        {
            // Common Data Structure -> User Info
        }
    ],
    "previewComments": [
        {
            // Common Data Structure -> Comment Info
        }
    ],
    "manages": [
        // Post Management Extension
        // Common Data Structure -> Extend Function Info
    ],
    "editControls": {
        "isMe": "Boolean / Whether I am the author",
        "canDelete": "Boolean / Whether deletion is allowed",
        "canEdit": "Boolean / Whether editing is allowed",
        "isPluginEditor": "Boolean / Whether it's a plugin editor",
        "editorUrl": "String / Plugin editor access URL"
    },
    "interaction": {
        "postName": "String / Custom name for the post",
        "likeSetting": "Boolean / Whether 'like' is allowed",
        "likeName": "String / Custom name for the 'like' action",
        "dislikeSetting": "Boolean / Whether 'dislike' is allowed",
        "dislikeName": "String / Custom name for the 'dislike' action",
        "followSetting": "Boolean / Whether 'follow' is allowed",
        "followName": "String / Custom name for the 'follow' action",
        "blockSetting": "Boolean / Whether 'block' is allowed",
        "blockName": "String / Custom name for the 'block' action",
        "publishPostName": "String / Custom name for publishing a post",
        "publishCommentName": "String / Custom name for publishing a comment",
        "likeStatus": "Boolean / Like Status",
        "dislikeStatus": "Boolean / Dislike Status",
        "followStatus": "Boolean / Follow Status",
        "followNote": "String / My follow note for this post",
        "blockStatus": "Boolean / Block Status",
        "blockNote": "String / My block note for this post"
    },
    "followType": "String / From which type of follow"
    // followType=null: none
    // followType=user: followed user
    // followType=group: followed group
    // followType=hashtag: followed hashtag
    // followType==digest: premium digest
}Comment Info 
json
{
    "cid": "String / Comment ID",
    "url": "String / Comment details page URL",
    "content": "String / Comment content or summary",
    "contentLength": "Number / Total content length",
    "langTag": "String / Content language tag",
    "writingDirection": "String / Content writing direction",
    "isBrief": "Boolean / Whether it's a summary",
    "isMarkdown": "Boolean / Whether it's in MD format",
    "isAnonymous": "Boolean / Whether it's anonymous",
    "isSticky": "Boolean / Whether it's sticky",
    "digestState": "Number / Digest state 1: No, 2: General Digest, 3: Premium Digest",
    "viewCount": "Number / Total View Count",
    "likeCount": "Number / Total number of likes",
    "dislikeCount": "Number / Total number of dislikes",
    "followCount": "Number / Total number of follows",
    "blockCount": "Number / Total number of blocks",
    "commentCount": "Number / Total number of child comments",
    "commentDigestCount": "Number / Total number of digests in child comments",
    "commentLikeCount": "Number / Total number of likes on child comments",
    "commentDislikeCount": "Number / Total number of dislikes on child comments",
    "commentFollowCount": "Number / Total number of follows on child comments",
    "commentBlockCount": "Number / Total number of blocks on child comments",
    "createdDatetime": "String / Comment creation time",
    "createdTimeAgo": "String / Human-friendly comment creation time",
    "editedDatetime": "String / Comment last edit time",
    "editedTimeAgo": "String / Human-friendly comment last edit time",
    "editedCount": "Number / Number of edits",
    "latestCommentDatetime": "String / Latest child comment time",
    "latestCommentTimeAgo": "String / Human-friendly latest child comment time",
    "rankState": "Number / Rank State",
    "status": "Boolean / Comment Status",
    "moreJson": {
        // Data Table: comments->more_json
        // The following keys are known
        "ipLocation": "String / Author IP Location Name",
        "deviceName": "String / Author Device Name"
    },
    "location": {
        "isLbs": "Boolean / Whether there is location information",
        "mapId": "Number / Latitude and Longitude Map ID",
        "latitude": "String / Latitude",
        "longitude": "String / Longitude",
        "scale": "String / Map Scale",
        "continent": "String / Continent Name",
        "continentCode": "String / Continent Code",
        "country": "String / Country Name",
        "countryCode": "String / Country Code",
        "region": "String / Province Name",
        "regionCode": "String / Province Code",
        "city": "String / City Name",
        "cityCode": "String / City Code",
        "district": "String / District Name",
        "address": "String / Address",
        "zip": "String / Postal Code",
        "poi": "String / POI Information",
        "poiId": "String / POI ID",
        "distance": "Number / Distance between the post location and me",
        "unit": "String / Unit of distance from me, km or mi",
        "encode": "String / Base64 and URL encoded location parameter string"
    },
    "isCommentPrivate": "Boolean / Whether the comment is private (visible only to the comment author and post author)",
    "archives": [
        // Common Data Structure -> Extend Archive Info
    ],
    "operations": {
        // Common Data Structure -> Extend Operation Info
    },
    "extends": {
        // Common Data Structure -> Extend Content Info
    },
    "files": {
        "images": [
            {
                // Common Data Structure -> File Info
            }
        ],
        "videos": [
            {
                // Common Data Structure -> File Info
            }
        ],
        "audios": [
            {
                // Common Data Structure -> File Info
            }
        ],
        "documents": [
            {
                // Common Data Structure -> File Info
            }
        ]
    },
    "hashtags": [
        {
            // Comment Related Topics
            // Common Data Structure -> Hashtag Info
        }
    ],
    "author": {
        // Comment author
        // Common Data Structure -> User Info
        "isPostAuthor": "Boolean / Is the author of the post"
    },
    "subComments": [
        {
            // Sub-Commons Preview
            // Common Data Structure -> Comment Info
        }
    ],
    "extendButton": {
        "status": "Boolean / Whether to display the extend button",
        "type": "String / Use default or active button",
        "default": {
            "name": "String / Button name",
            "style": "String / Button style (primary, secondary, success, danger, warning, info)",
            "url": "String / Button URL"
        },
        "active": {
            "name": "String / Button name",
            "style": "String / Button style (primary, secondary, success, danger, warning, info)",
            "url": "String / Button URL"
        }
    },
    "manages": [
        // Common Management Extension
        // Common Data Structure -> Extend Function Info
    ],
    "editControls": {
        "isMe": "Boolean / Whether I am the author",
        "canDelete": "Boolean / Whether deletion is allowed",
        "canEdit": "Boolean / Whether editing is allowed",
        "isPluginEditor": "Boolean / Whether it's a plugin editor",
        "editorUrl": "String / Plugin editor access URL"
    },
    "interaction": {
        "commentName": "String / Custom comment name",
        "likeSetting": "Boolean / Whether liking is allowed",
        "likeName": "String / Custom like action name",
        "dislikeSetting": "Boolean / Whether disliking is allowed",
        "dislikeName": "String / Custom dislike action name",
        "followSetting": "Boolean / Whether following is allowed",
        "followName": "String / Custom follow action name",
        "blockSetting": "Boolean / Whether blocking is allowed",
        "blockName": "String / Custom block action name",
        "publishPostName": "String / Custom publish post name",
        "publishCommentName": "String / Custom publish comment name",
        "likeStatus": "Boolean / Like status",
        "dislikeStatus": "Boolean / Dislike status",
        "followStatus": "Boolean / Follow status",
        "followNote": "String / My follow note on this comment",
        "blockStatus": "Boolean / Block status",
        "blockNote": "String / My block note on this comment",
        "postAuthorLikeStatus": "Boolean / Whether the post author liked this comment"
    },
    "replyToPost": {
        // Information about the post this comment belongs to,
        // if it's a sub-comment list, only the pid parameter is available
        // Common Data Structure -> Post Info
    },
    "replyToComment": {
        // The parent comment of the current comment
        // Common Data Structure -> Comment Info
    },
    "followType": "String / From which type of follow"
    // followType=null: none
    // followType=user: followed user
    // followType=group: followed group
    // followType=hashtag: followed hashtag
    // followType==digest: premium digest
}Post Log Info 
json
{
    "id": "Number / Log ID",
    "pid": "String / Parent post ID",
    "quotedPid": "String / Quoted post ID",
    "isPluginEditor": "Boolean / Is plugin editor",
    "editorFskey": "String / Editor plugin Fskey",
    "editorUrl": "String / Editor access URL",
    "group": {
        // Belongs to group
        // Common Data Structure -> Group Info
    },
    "title": "String / Post title",
    "content": "String / Post content or brief",
    "contentLength": "Number / Total content length",
    "isBrief": "Boolean / Is brief",
    "isMarkdown": "Boolean / Is MD format",
    "isAnonymous": "Boolean / Is anonymous",
    "isCommentDisabled": "Boolean / Whether comments are disabled",
    "isCommentPrivate": "Boolean / Whether the comment is private (visible only to the comment author and post author)",
    "mapJson": {
        "mapId": "Number / Latitude and longitude map number",
        "latitude": "String / Latitude",
        "longitude": "String / Longitude",
        "scale": "String / Map scale",
        "continent": "String / Continent name",
        "continentCode": "String / Continent code",
        "country": "String / Country name",
        "countryCode": "String / Country code",
        "region": "String / Region name",
        "regionCode": "String / Region code",
        "city": "String / City name",
        "cityCode": "String / City code",
        "district": "String / District name",
        "address": "String / Address",
        "zip": "String / Zip code",
        "poi": "String / POI information",
        "poiId": "String / POI ID"
    },
    "readJson": {
        "isReadLocked": "Boolean / Is permission configuration restricted",
        "previewPercentage": "Number / Pre-read percentage when unauthorized",
        "pluginUrl": "String / Configuration plugin URL",
        "pluginFskey": "String / Configuration plugin fskey",
        "defaultLangBtnName": "String / Button text when unauthorized",
        "btnName": [
            // Button text when unauthorized, multilingual configuration
        ],
        "permissions": {
            "users": [
                {
                    // Pre-authorized users
                    // Common Data Structure -> User Info
                }
            ],
            "roles": [
                // Pre-authorized roles
                {
                    "rid": "Number / Role ID",
                    "nicknameColor": "String / Nickname color",
                    "name": "String / Role name",
                    "nameDisplay": "Boolean / Is role name displayed",
                    "icon": "String / Role icon URL",
                    "iconDisplay": "Boolean / Is role icon displayed",
                    "status": "Boolean / Is role valid"
                }
            ]
        },
    },
    "userListJson": {
        "isUserList": "Boolean / Is there a related user list",
        "defaultLangUserListName": "String / User list name",
        "userListName": [
            // User list name, multilingual configuration
        ],
        "pluginUrl": "String / Configuration plugin URL",
        "pluginFskey": "String / Configuration plugin fskey",
    },
    "commentBtnJson": {
        "isCommentBtn": "Boolean / Is there a button for comments",
        "defaultLangBtnName": "String / Button text",
        "btnName": [
            // Button text, multilingual configuration
        ],
        "btnStyle": "String / Button style",
        "pluginUrl": "String / Configuration plugin URL",
        "pluginFskey": "String / Configuration plugin fskey",
    },
    "state": "Number / Status",
    "reason": "String / Rejection reason during review",
    "author": {
        // Common Data Structure -> User Info
    },
    "files": {
        "images": [
            {
                // Common Data Structure -> File Info
            }
        ],
        "videos": [
            {
                // Common Data Structure -> File Info
            }
        ],
        "audios": [
            {
                // Common Data Structure -> File Info
            }
        ],
        "documents": [
            {
                // Common Data Structure -> File Info
            }
        ]
    },
    "archives": [
        // Common Data Structure -> Extend Archive Info
    ],
    "operations": {
        // Common Data Structure -> Extend Operation Info
    },
    "extends": {
        // Common Data Structure -> Extend Content Info
    }
}Comment Log Info 
json
{
    "id": "Number / Log ID",
    "cid": "String / Belongs to comment ID",
    "pid": "String / Commented post ID",
    "parentCid": "String / Replied comment ID",
    "isPluginEditor": "Boolean / Is plugin editor",
    "editorFskey": "String / Editor plugin Fskey",
    "editorUrl": "String / Editor access URL",
    "content": "String / Post content or brief",
    "contentLength": "Number / Total content length",
    "isBrief": "Boolean / Is brief",
    "isMarkdown": "Boolean / Is MD format",
    "isAnonymous": "Boolean / Is anonymous",
    "mapJson": {
        "mapId": "Number / Latitude and longitude map number",
        "latitude": "String / Latitude",
        "longitude": "String / Longitude",
        "scale": "String / Map scale",
        "continent": "String / Continent name",
        "continentCode": "String / Continent code",
        "country": "String / Country name",
        "countryCode": "String / Country code",
        "region": "String / Region name",
        "regionCode": "String / Region code",
        "city": "String / City name",
        "cityCode": "String / City code",
        "district": "String / District name",
        "address": "String / Address",
        "zip": "String / Zip code",
        "poi": "String / POI information",
        "poiId": "String / POI ID"
    },
    "state": "Number / Status",
    "reason": "String / Rejection reason during review",
    "author": {
        // Common Data Structure -> User Info
    },
    "files": {
        "images": [
            {
                // Common Data Structure -> File Info
            }
        ],
        "videos": [
            {
                // Common Data Structure -> File Info
            }
        ],
        "audios": [
            {
                // Common Data Structure -> File Info
            }
        ],
        "documents": [
            {
                // Common Data Structure -> File Info
            }
        ]
    },
    "archives": [
        // Common Data Structure -> Extend Archive Info
    ],
    "operations": {
        // Common Data Structure -> Extend Operation Info
    },
    "extends": {
        // Common Data Structure -> Extend Content Info
    }
}File Info 
json
{
    "fid": "String / File fid",
    "type": "Number / File type number 1.Image 2.Video 3.Audio 4.Document",
    "status": "Boolean / Is valid",
    "substitutionImageUrl": "String / Invalid file prompt image",
    "sensitive": "Boolean / Is sensitive file",
    "name": "String / Complete original name",
    "mime": "String / File MIME type",
    "extension": "String / File extension",
    "size": "String / Size",
    "md5": "String / File md5 encoding",
    "sha": "String / File sha encoding",
    "shaType": "String / File sha type",
    "moreJson": {
        // files->more_json
    },
    // Image Parameters
    "imageWidth": "Number / Image width",
    "imageHeight": "Number / Image height",
    "imageLong": "Boolean / Is long image",
    "imageConfigUrl": "String / Configuration purpose image URL",
    "imageRatioUrl": "String / Proportional thumbnail URL",
    "imageSquareUrl": "String / Square thumbnail URL",
    "imageBigUrl": "String / Compressed original image URL",
    // Video Parameters
    "videoTime": "Number / Video duration",
    "videoPosterUrl": "String / Video cover image URL",
    "videoUrl": "String / Video URL",
    // Audio Parameters
    "audioTime": "Number / Audio duration",
    "audioUrl": "String / Audio URL",
    // Document Parameters
    "documentPreviewUrl": "String / Document preview URL",
    // Audio and Video Parameter
    "transcodingState": "Number / Audio and video transcoding status 1.Pending 2.Transcoding 3.Transcoding complete 4.Transcoding failed"
}Extend Archive Info 
json
{
    "code": "String / Identifier code",
    "name": "String / Name",
    "description": "String / Description",
    "value": "String / Parameter value",
}- Reference: archives
 
Extend Operation Info 
json
{
    "customizes": [
        {
            "code": "String / Identifier code",
            "style": "String / Style primary, secondary, success, danger, warning, info",
            "name": "String / Name",
            "description": "String / Description",
            "imageUrl": "String / Image",
            "imageActiveUrl": "String / Two-state image",
            "displayType": "Number / Display type 1.Basic 2.Function (plugin)",
            "pluginUrl": "String / Dedicated for display type 2, plugin access URL",
        }
    ],
    "buttonIcons": [
        {
            // Same as above
        }
    ],
    "diversifyImages": [
        {
            // Same as above
        }
    ],
    "tips": [
        {
            // Same as above
        }
    ]
}- Reference: operations
 
Extend Content Info 
json
{
    "textBox": [
        {
            "eid": "String / Extension content ID",
            "textContent": "String / Text box specific - content",
            "textIsMarkdown": "Boolean / Text box specific - Is content MD format",
            "position": "Number / Display position 1.Top 2.Bottom",
            "accessUrl": "String / Access URL",
            "moreJson": {
                // Custom information
            },
        }
    ],
    "infoBox": [
        {
            "eid": "String / Extension content ID",
            "infoBoxType": "Number / Info box specific - Type number",
            "infoBoxTypeString": "String / Info box specific - Type string",
            "cover": "String / Info box specific - Cover image",
            "title": "String / Info box specific - Title",
            "titleColor": "String / Info box specific - Title color",
            "descPrimary": "String / Info box specific - Primary sub-information",
            "descPrimaryColor": "String / Info box specific - Primary sub-information color",
            "descSecondary": "String / Info box specific - Secondary sub-information",
            "descSecondaryColor": "String / Info box specific - Secondary sub-information color",
            "buttonName": "String / Info box specific - Button name",
            "buttonColor": "String / Info box specific - Button name color",
            "position": "Number / Display position 1.Top 2.Bottom",
            "accessUrl": "String / Access URL",
            "moreJson": {
                // Custom information
            },
        }
    ],
    "interactionBox": [
        {
            //
        }
    ],
}Extend Function Info 
json
{
    "fskey": "String / Plugin Fskey",
    "name": "String / Extension name",
    "icon": "String / Extension icon URL",
    "url": "String / Extension access URL",
    "badgeType": "Number / Extension prompt type null.None 1.Red dot 2.Text 3.Number",
    "badgeValue": "String / Extension prompt value, text or number",
    "editorToolbar": "Boolean / Editor specific, whether to display in toolbar",
    "editorNumber": "Number / Editor specific, available number",
    "pluginRating": {
        "postByAll": [
            {
                "id": "Number / List interface pluginRatingId parameter purpose value",
                "title": "String / Parameter title",
                "description": "String / Parameter description"
            }
        ],
        "postByFollow": [
            {
                "id": "Number / List interface pluginRatingId parameter purpose value",
                "title": "String / Parameter title",
                "description": "String / Parameter description"
            }
        ],
        "postByNearby": [
            {
                "id": "Number / List interface pluginRatingId parameter purpose value",
                "title": "String / Parameter title",
                "description": "String / Parameter description"
            }
        ]
    }
}