From 7b31fb34a7ced4e22ff1f2a9fc2f81413ffab5d3 Mon Sep 17 00:00:00 2001 From: Julian Lam Date: Mon, 6 Apr 2020 21:11:24 -0400 Subject: [PATCH] fix: missing descriptions for common properties --- public/openapi/read.yaml | 10239 +++++++++++++++---------------------- 1 file changed, 4237 insertions(+), 6002 deletions(-) diff --git a/public/openapi/read.yaml b/public/openapi/read.yaml index 00b6c63fa1..6b60ed159b 100644 --- a/public/openapi/read.yaml +++ b/public/openapi/read.yaml @@ -62,6 +62,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string description: @@ -72,6 +73,7 @@ paths: type: string topic_count: type: number + description: The number of topics in the category order: type: number bgColor: @@ -86,18 +88,22 @@ paths: type: string post_count: type: number + description: The number of posts in the category descriptionParsed: type: string parentCid: type: number + description: The category identifier for the category that is the immediate ancestor of the current category disabled: type: number isSection: type: number totalPostCount: type: number + description: The number of posts in the category totalTopicCount: type: number + description: The number of topics in the category tagWhitelist: type: array items: {} @@ -110,6 +116,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string description: @@ -120,6 +127,7 @@ paths: type: string topic_count: type: number + description: The number of topics in the category order: type: number bgColor: @@ -134,16 +142,20 @@ paths: type: string post_count: type: number + description: The number of posts in the category parentCid: type: number + description: The category identifier for the category that is the immediate ancestor of the current category disabled: type: number isSection: type: number totalPostCount: type: number + description: The number of posts in the category totalTopicCount: type: number + description: The number of topics in the category descriptionParsed: type: string tagWhitelist: @@ -169,12 +181,15 @@ paths: type: number topic_count: type: number + description: The number of topics in the category name: type: string cid: type: number + description: A category identifier post_count: type: number + description: The number of posts in the category numRecentReplies: type: number bgColor: @@ -191,10 +206,13 @@ paths: type: number parentCid: type: number + description: The category identifier for the category that is the immediate ancestor of the current category totalPostCount: type: number + description: The number of posts in the category totalTopicCount: type: number + description: The number of topics in the category tagWhitelist: type: array items: {} @@ -215,28 +233,37 @@ paths: type: string timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) user: type: object properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: nullable: true type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" index: type: number cid: type: number + description: A category identifier parentCid: type: number + description: The category identifier for the category that is the immediate ancestor of the current category topic: type: object properties: @@ -244,47 +271,10 @@ paths: type: string title: type: string - required: - - pid - - timestamp - - content - - timestampISO - - user - - index - - cid - - parentCid - - topic imageClass: type: string timesClicked: type: number - required: - - cid - - name - - description - - icon - - bgColor - - color - - slug - - topic_count - - disabled - - order - - link - - numRecentReplies - - class - - post_count - - parentCid - - isSection - - totalPostCount - - totalTopicCount - - descriptionParsed - - tagWhitelist - - unread-class - - children - - parent - - posts - - imageClass - - timesClicked posts: type: array items: @@ -298,28 +288,37 @@ paths: type: string timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) user: type: object properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: nullable: true type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" index: type: number cid: type: number + description: A category identifier parentCid: type: number + description: The category identifier for the category that is the immediate ancestor of the current category topic: type: object properties: @@ -327,16 +326,6 @@ paths: type: string title: type: string - required: - - pid - - timestamp - - content - - timestampISO - - user - - index - - cid - - parentCid - - topic teaser: type: object properties: @@ -344,6 +333,7 @@ paths: type: string timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) pid: type: number topic: @@ -355,32 +345,6 @@ paths: type: string imageClass: type: string - required: - - cid - - name - - description - - icon - - slug - - topic_count - - disabled - - order - - bgColor - - link - - class - - numRecentReplies - - color - - post_count - - parentCid - - descriptionParsed - - isSection - - totalPostCount - - totalTopicCount - - tagWhitelist - - unread-class - - children - - posts - - teaser - - imageClass loggedIn: type: boolean relative_path: @@ -403,12 +367,16 @@ paths: properties: tid: type: number + description: A topic identifier uid: type: number + description: A user identifier cid: type: number + description: A category identifier mainPid: type: number + description: The post id of the first post in this topic (also called the "original post") title: type: string slug: @@ -427,6 +395,7 @@ paths: type: number pinned: type: number + description: Whether or not this particular topic is pinned to the top of the category upvotes: type: number downvotes: @@ -435,6 +404,7 @@ paths: type: string timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) lastposttimeISO: type: string votes: @@ -444,6 +414,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string slug: @@ -466,10 +437,13 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) reputation: type: number postcount: @@ -486,8 +460,11 @@ paths: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" banned_until_readable: type: string oldUid: @@ -506,30 +483,39 @@ paths: type: number uid: type: number + description: A user identifier timestamp: type: number tid: type: number + description: A topic identifier content: type: string timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) user: type: object properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: nullable: true type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" index: type: number tags: @@ -547,12 +533,6 @@ paths: type: string score: type: number - required: - - value - - valueEscaped - - color - - bgColor - - score isOwner: type: boolean ignored: @@ -572,39 +552,6 @@ paths: type: string teaserPid: type: number - required: - - tid - - uid - - cid - - mainPid - - title - - slug - - timestamp - - lastposttime - - postcount - - viewcount - - deleted - - locked - - pinned - - upvotes - - downvotes - - titleRaw - - timestampISO - - lastposttimeISO - - votes - - category - - user - - teaser - - tags - - isOwner - - ignored - - unread - - bookmark - - unreplied - - icons - - index - - teaserPid - - thumb _header: type: object properties: @@ -624,11 +571,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -644,11 +586,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -659,8 +596,6 @@ paths: properties: html: type: string - required: - - html header: type: array items: @@ -751,10 +686,6 @@ paths: type: string link: type: string - required: - - done - - doneText - - notDoneText stats: type: array items: @@ -788,21 +719,6 @@ paths: type: string name: type: string - required: - - yesterday - - today - - lastweek - - thisweek - - lastmonth - - thismonth - - alltime - - dayIncrease - - dayTextClass - - weekIncrease - - weekTextClass - - monthIncrease - - monthTextClass - - name canRestart: type: boolean lastrestart: @@ -810,6 +726,7 @@ paths: properties: uid: type: number + description: A user identifier ip: type: string timestamp: @@ -819,16 +736,22 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email: type: string + description: Email address associated with the user account email:confirmed: type: number + description: Whether the user has confirmed their email address or not joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created lastonline: type: number picture: @@ -889,8 +812,11 @@ paths: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -901,6 +827,7 @@ paths: type: string timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) loggedIn: type: boolean relative_path: @@ -935,11 +862,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -955,11 +877,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -1010,9 +927,6 @@ paths: type: string name: type: string - required: - - route - - name loggedIn: type: boolean relative_path: @@ -1047,11 +961,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -1067,11 +976,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -1135,11 +1039,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -1155,11 +1054,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -1194,6 +1088,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string description: @@ -1208,10 +1103,13 @@ paths: type: string parentCid: type: number + description: The category identifier for the category that is the immediate ancestor of the current category topic_count: type: number + description: The number of topics in the category post_count: type: number + description: The number of posts in the category disabled: type: number order: @@ -1230,8 +1128,10 @@ paths: type: number totalPostCount: type: number + description: The number of posts in the category totalTopicCount: type: number + description: The number of topics in the category descriptionParsed: type: string tagWhitelist: @@ -1244,6 +1144,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string description: @@ -1258,10 +1159,13 @@ paths: type: string parentCid: type: number + description: The category identifier for the category that is the immediate ancestor of the current category topic_count: type: number + description: The number of topics in the category post_count: type: number + description: The number of posts in the category disabled: type: number order: @@ -1280,8 +1184,10 @@ paths: type: number totalPostCount: type: number + description: The number of posts in the category totalTopicCount: type: number + description: The number of topics in the category allCategories: type: array items: @@ -1293,10 +1199,6 @@ paths: type: number selected: type: boolean - required: - - text - - value - - selected customClasses: type: array items: {} @@ -1334,11 +1236,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -1354,11 +1251,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -1443,11 +1335,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -1463,11 +1350,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -1510,8 +1392,6 @@ paths: properties: name: type: string - required: - - name groups: type: array items: @@ -1519,8 +1399,6 @@ paths: properties: name: type: string - required: - - name users: type: array items: {} @@ -1568,11 +1446,6 @@ paths: type: boolean isPrivate: type: boolean - required: - - name - - nameEscaped - - privileges - - isPrivate columnCountUser: type: number columnCountUserOther: @@ -1588,6 +1461,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string icon: @@ -1598,27 +1472,19 @@ paths: type: string parentCid: type: number + description: The category identifier for the category that is the immediate ancestor of the current category color: type: string bgColor: type: string imageClass: type: string - required: - - cid - - name - - icon - - selected - - level - - parentCid - - color - - bgColor - - imageClass selectedCategory: type: object properties: cid: type: number + description: A category identifier name: type: string level: @@ -1627,6 +1493,7 @@ paths: type: string parentCid: type: number + description: The category identifier for the category that is the immediate ancestor of the current category color: type: string bgColor: @@ -1635,6 +1502,7 @@ paths: type: boolean cid: type: number + description: A category identifier loggedIn: type: boolean relative_path: @@ -1669,11 +1537,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -1689,11 +1552,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -1742,16 +1600,21 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email: type: string + description: Email address associated with the user account postcount: type: number joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created banned: type: number reputation: @@ -1765,10 +1628,14 @@ paths: type: number email:confirmed: type: number + description: Whether the user has confirmed their email address or not icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -1777,25 +1644,6 @@ paths: type: string administrator: type: boolean - required: - - uid - - username - - userslug - - email - - postcount - - joindate - - banned - - reputation - - picture - - flags - - lastonline - - email:confirmed - - icon:text - - icon:bgColor - - joindateISO - - lastonlineISO - - banned_until_readable - - administrator page: type: number pageCount: @@ -1831,10 +1679,6 @@ paths: type: string separator: type: boolean - required: - - page - - active - - qs currentPage: type: number pageCount: @@ -1915,11 +1759,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -1935,11 +1774,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -2002,11 +1836,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -2022,11 +1851,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -2057,16 +1881,21 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email: type: string + description: Email address associated with the user account postcount: type: number joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created banned: type: number reputation: @@ -2080,10 +1909,14 @@ paths: type: number email:confirmed: type: number + description: Whether the user has confirmed their email address or not icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -2092,25 +1925,6 @@ paths: type: string administrator: type: boolean - required: - - uid - - username - - userslug - - email - - postcount - - joindate - - banned - - reputation - - picture - - flags - - lastonline - - email:confirmed - - icon:text - - icon:bgColor - - joindateISO - - lastonlineISO - - banned_until_readable - - administrator page: type: number pageCount: @@ -2146,10 +1960,6 @@ paths: type: string separator: type: boolean - required: - - page - - active - - qs currentPage: type: number pageCount: @@ -2230,11 +2040,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -2250,11 +2055,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -2285,16 +2085,21 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email: type: string + description: Email address associated with the user account postcount: type: number joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created banned: type: number reputation: @@ -2308,10 +2113,14 @@ paths: type: number email:confirmed: type: number + description: Whether the user has confirmed their email address or not icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -2320,25 +2129,6 @@ paths: type: string administrator: type: boolean - required: - - uid - - username - - userslug - - email - - postcount - - joindate - - banned - - reputation - - picture - - flags - - lastonline - - email:confirmed - - icon:text - - icon:bgColor - - joindateISO - - lastonlineISO - - banned_until_readable - - administrator page: type: number pageCount: @@ -2374,10 +2164,6 @@ paths: type: string separator: type: boolean - required: - - page - - active - - qs currentPage: type: number pageCount: @@ -2458,11 +2244,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -2478,11 +2259,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -2607,30 +2383,6 @@ paths: type: string ownerUid: type: number - required: - - name - - description - - deleted - - hidden - - system - - userTitle - - icon - - labelColor - - createtime - - slug - - memberCount - - userTitleEnabled - - private - - disableJoinRequests - - disableLeave - - nameEncoded - - displayName - - textColor - - createtimeISO - - cover:thumb:url - - cover:url - - cover:position - - ownerUid pagination: type: object properties: @@ -2708,11 +2460,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -2728,11 +2475,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -2816,10 +2558,13 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: type: string status: @@ -2830,6 +2575,7 @@ paths: type: number email:confirmed: type: number + description: Whether the user has confirmed their email address or not lastonline: type: number flags: @@ -2840,10 +2586,14 @@ paths: type: number joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -2883,10 +2633,6 @@ paths: type: string selected: type: boolean - required: - - encodedName - - displayName - - selected allowPrivateGroups: type: number maximumGroupNameLength: @@ -2927,11 +2673,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -2947,11 +2688,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -2990,27 +2726,24 @@ paths: properties: username: type: string + description: A friendly name for a given user account picture: nullable: true type: string uid: type: number + description: A user identifier icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" lastDelivery: type: string setting: type: boolean - required: - - username - - picture - - uid - - icon:text - - icon:bgColor - - lastDelivery - - setting default: type: string pagination: @@ -3038,10 +2771,6 @@ paths: type: string separator: type: boolean - required: - - page - - active - - qs currentPage: type: number pageCount: @@ -3116,11 +2845,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -3136,11 +2860,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -3179,9 +2898,6 @@ paths: type: string label: type: string - required: - - name - - label loggedIn: type: boolean relative_path: @@ -3216,11 +2932,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -3236,11 +2947,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -3304,11 +3010,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -3324,11 +3025,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -3394,22 +3090,6 @@ paths: type: boolean settingsRoute: type: string - required: - - latest - - description - - name - - updated - - url - - numInstalls - - isCompatible - - id - - installed - - active - - isTheme - - error - - version - - license - - outdated installedCount: type: number activeCount: @@ -3443,17 +3123,6 @@ paths: type: boolean active: type: boolean - required: - - name - - updated - - description - - latest - - numInstalls - - isCompatible - - id - - installed - - active - - url incompatible: type: array items: @@ -3479,17 +3148,6 @@ paths: type: boolean active: type: boolean - required: - - name - - updated - - description - - latest - - url - - numInstalls - - isCompatible - - id - - installed - - active submitPluginUsage: type: number version: @@ -3528,11 +3186,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -3548,11 +3201,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -3592,12 +3240,6 @@ paths: type: string location: type: string - required: - - name - - location - required: - - template - - areas areas: type: array items: @@ -3645,14 +3287,6 @@ paths: type: string numTopics: type: string - required: - - widget - - data - required: - - name - - template - - location - - data availableWidgets: type: array items: @@ -3666,11 +3300,6 @@ paths: type: string content: type: string - required: - - widget - - name - - description - - content loggedIn: type: boolean relative_path: @@ -3705,11 +3334,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -3725,11 +3349,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -3986,14 +3605,6 @@ paths: type: number content_text_uid_1_cid_1: type: number - required: - - name - - count - - size - - avgObjSize - - storageSize - - totalIndexSize - - indexSizes network: type: object properties: @@ -4051,11 +3662,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -4071,11 +3677,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -4235,11 +3836,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -4255,11 +3851,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -4317,11 +3908,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -4337,11 +3923,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -4505,6 +4086,7 @@ paths: type: boolean uid: type: number + description: A user identifier cache-buster: type: string requireEmailConfirmation: @@ -4630,16 +4212,21 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email: type: string + description: Email address associated with the user account email:confirmed: type: boolean joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created lastonline: type: number picture: @@ -4699,8 +4286,11 @@ paths: items: {} icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -4794,13 +4384,6 @@ paths: type: boolean icon: type: string - required: - - id - - route - - name - - visibility - - public - - icon sso: type: array items: @@ -4816,11 +4399,6 @@ paths: type: string deauthUrl: type: string - required: - - associated - - url - - name - - icon websiteLink: type: string websiteName: @@ -4857,14 +4435,19 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email:confirmed: type: number + description: Whether the user has confirmed their email address or not joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created lastonline: type: number picture: @@ -4922,8 +4505,11 @@ paths: items: {} icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -4965,14 +4551,19 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email:confirmed: type: number + description: Whether the user has confirmed their email address or not joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created lastonline: type: number picture: @@ -5030,8 +4621,11 @@ paths: items: {} icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -5046,14 +4640,19 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email:confirmed: type: number + description: Whether the user has confirmed their email address or not joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created lastonline: type: number picture: @@ -5111,8 +4710,11 @@ paths: items: {} icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -5234,1037 +4836,542 @@ paths: schema: type: string responses: {} - "/api/categories/{cid}/moderators": + /api/categories: get: tags: - categories - summary: /api/categories/{cid}/moderators - parameters: - - name: cid - in: path - required: true - schema: - type: string - responses: {} - "/api/recent/posts/{term?}": - get: - tags: - - topics - summary: /api/recent/posts/{term?} - parameters: - - name: term? - in: path - required: true - schema: - type: string + summary: Get a list of categories + description: | + This route retrieve the list of categories currently available to the accessing user. It doesn't necessarily mean that the user can *enter* the category, as that is a separate privilege. Specifically, this route will return all categories that grant the calling user the "Find Category" privilege. + + Subcategories are also returned, nested under a category's `children` property. responses: "200": - description: "" + # TODO: Likely, this can be allOf'd with a category data schema... especially since a child category is the same thing *headexplosion* + description: A list of category objectscurrently available to the accessing user content: application/json: schema: - type: array - items: - type: object - properties: - pid: - type: number - tid: - type: number - content: - type: string - uid: - type: number - timestamp: - type: number - deleted: - type: boolean - upvotes: - type: number - downvotes: - type: number - votes: - type: number - timestampISO: - type: string - user: - type: object - properties: - uid: - type: number - username: - type: string - userslug: - type: string - picture: - nullable: true - type: string - status: - type: string - icon:text: - type: string - icon:bgColor: - type: string - topic: - type: object - properties: - uid: - type: number - tid: - type: number - title: - type: string - cid: - type: number - slug: - type: string - deleted: - type: number - postcount: - type: number - mainPid: - type: number - titleRaw: - type: string - category: + type: object + properties: + title: + description: The category title + type: string + categories: + description: A collection of category data objects + type: array + items: type: object properties: cid: type: number + description: A category identifier name: type: string + description: + type: string icon: type: string slug: type: string - parentCid: + topic_count: + type: number + description: The number of topics in the category + order: type: number bgColor: type: string - color: + link: type: string - image: - nullable: true - imageClass: - nullable: true + class: type: string - isMainPost: - type: boolean - required: - - pid - - tid - - content - - uid - - timestamp - - deleted - - upvotes - - downvotes - - votes - - timestampISO - - user - - topic - - category - - isMainPost - /api/unread/total: - get: - tags: - - posts - summary: /api/unread/total - responses: {} - "/api/topic/teaser/{topic_id}": - get: - tags: - - topics - summary: /api/topic/teaser/{topic_id} - parameters: - - name: topic_id - in: path - required: true - schema: - type: string - responses: {} - "/api/topic/pagination/{topic_id}": - get: - tags: - - topics - summary: /api/topic/pagination/{topic_id} - parameters: - - name: topic_id - in: path - required: true - schema: - type: string - responses: - "200": - description: "" - content: - application/json: - schema: - type: object - properties: - rel: - type: array - items: - type: object - properties: - rel: + numRecentReplies: + type: number + color: type: string - href: + post_count: + type: number + description: The number of posts in the category + descriptionParsed: type: string - pages: - type: array - items: - type: object - properties: - page: + parentCid: type: number - active: - type: boolean - qs: + description: The category identifier for the category that is the immediate ancestor of the current category + disabled: + type: number + isSection: + type: number + totalPostCount: + type: number + description: The number of posts in the category + totalTopicCount: + type: number + description: The number of topics in the category + tagWhitelist: + type: array + items: {} + unread-class: type: string - required: - - page - - active - - qs - currentPage: - type: number - - pageCount: - type: number - prev: - type: object - properties: - page: - type: number - active: - type: boolean - qs: - type: string - next: - type: object - properties: - page: - type: number - active: - type: boolean - qs: - type: string - first: - type: object - properties: - page: - type: number - active: - type: boolean - qs: - type: string - last: - type: object - properties: - page: - type: number - active: - type: boolean - qs: - type: string - /api/post/upload: - post: - tags: - - posts - summary: /api/post/upload - responses: - "200": - description: "" - content: - application/json: - schema: - type: array - items: - type: object - properties: - name: - type: string - url: - type: string - text/plain: - schema: - type: array - items: - type: object - properties: - name: - type: string - url: - type: string - "403": - description: "" - content: - application/json: - schema: - type: string - example: Forbidden - text/plain: - schema: - type: string - example: Forbidden - "500": - description: "" - content: - application/json: - schema: - type: object - properties: - path: - type: string - error: - type: string - text/plain: - schema: - type: object - properties: - path: - type: string - error: - type: string - /api/topic/thumb/upload: - post: - tags: - - topics - summary: /api/topic/thumb/upload - responses: {} - "/api/user/{userslug}/uploadpicture": - post: - tags: - - users - summary: /api/user/{userslug}/uploadpicture - parameters: - - name: userslug - in: path - required: true - schema: - type: string - responses: - "200": - description: "" - content: - application/json: - schema: - type: array - items: - type: object - properties: - name: - type: string - url: - type: string - "/api/user/{userslug}/uploadcover": - post: - tags: - - users - summary: /api/user/{userslug}/uploadcover - parameters: - - name: userslug - in: path - required: true - schema: - type: string - responses: {} - /api/groups/uploadpicture: - post: - tags: - - groups - summary: /api/groups/uploadpicture - responses: {} - /api/login: - get: - tags: - - authentication - summary: /api/login - responses: - "200": - description: "" - content: - application/json: - schema: - type: object - properties: - loginFormEntry: - type: array - items: {} - alternate_logins: - type: boolean - authentication: - type: array - items: - type: object - properties: - name: - type: string - url: - type: string - callbackURL: - type: string - icon: - type: string - scope: - type: string - prompt: - type: string - required: - - name - - url - - callbackURL - - icon - - scope - allowRegistration: - type: boolean - allowLoginWith: - type: string - breadcrumbs: - type: array - items: - type: object - properties: - text: - type: string - url: - type: string - required: - - text - title: - type: string - allowPasswordReset: - type: boolean - allowLocalLogin: - type: boolean - loggedIn: - type: boolean - relative_path: - type: string - template: - type: object - properties: - name: - type: string - login: - type: boolean - url: - type: string - bodyClass: - type: string - captcha: - type: object - properties: - label: - type: string - html: - type: string - styleName: - type: string - _header: - type: object - properties: - tags: - type: object - properties: - meta: - type: array - items: - type: object - properties: - name: - type: string - content: - type: string - noEscape: - type: boolean - property: - type: string - required: - - name - - content - - noEscape - - property - link: - type: array - items: - type: object - properties: - rel: - type: string - type: - type: string - href: - type: string - title: - type: string - sizes: - type: string - required: - - rel - - href - - type - - sizes - widgets: - type: object - properties: - footer: - type: array - items: - type: object - properties: - html: - type: string - /api/register: - get: - tags: - - authentication - summary: /api/register - responses: - "200": - description: "" - content: - application/json: - schema: - type: object - properties: - register_window:spansize: - type: string - alternate_logins: - type: boolean - authentication: - type: array - items: - type: object - properties: - name: - type: string - url: - type: string - callbackURL: - type: string - icon: - type: string - scope: - type: string - prompt: - type: string - required: - - name - - url - - callbackURL - - icon - - scope - minimumUsernameLength: - type: number - maximumUsernameLength: - type: number - minimumPasswordLength: - type: number - minimumPasswordStrength: - type: number - breadcrumbs: - type: array - items: - type: object - properties: - text: - type: string - url: - type: string - required: - - text - regFormEntry: - type: array - items: - type: object - properties: - label: - type: string - html: - type: string - styleName: - type: string - required: - - label - - html - title: - type: string - loggedIn: - type: boolean - relative_path: - type: string - template: - type: object - properties: - name: - type: string - register: - type: boolean - url: - type: string - bodyClass: - type: string - _header: - type: object - properties: - tags: - type: object - properties: - meta: - type: array - items: - type: object - properties: - name: - type: string - content: - type: string - noEscape: - type: boolean - property: - type: string - required: - - name - - content - - noEscape - - property - link: - type: array - items: - type: object - properties: - rel: - type: string - type: - type: string - href: - type: string - title: - type: string - sizes: - type: string - required: - - rel - - href - - type - - sizes - widgets: - type: object - properties: - footer: - type: array - items: + children: + type: array + items: + type: object + properties: + cid: + type: number + description: A category identifier + name: + type: string + description: + type: string + icon: + type: string + slug: + type: string + topic_count: + type: number + description: The number of topics in the category + order: + type: number + bgColor: + type: string + link: + type: string + class: + type: string + numRecentReplies: + type: number + color: + type: string + post_count: + type: number + description: The number of posts in the category + parentCid: + type: number + description: The category identifier for the category that is the immediate ancestor of the current category + disabled: + type: number + isSection: + type: number + totalPostCount: + type: number + description: The number of posts in the category + totalTopicCount: + type: number + description: The number of topics in the category + descriptionParsed: + type: string + tagWhitelist: + type: array + items: {} + unread-class: + type: string + children: + type: array + items: {} + parent: + type: object + properties: + link: + type: string + class: + type: string + icon: + type: string + description: + type: string + order: + type: number + topic_count: + type: number + description: The number of topics in the category + name: + type: string + cid: + type: number + description: A category identifier + post_count: + type: number + description: The number of posts in the category + numRecentReplies: + type: number + bgColor: + type: string + slug: + type: string + color: + type: string + disabled: + type: number + descriptionParsed: + type: string + isSection: + type: number + parentCid: + type: number + description: The category identifier for the category that is the immediate ancestor of the current category + totalPostCount: + type: number + description: The number of posts in the category + totalTopicCount: + type: number + description: The number of topics in the category + tagWhitelist: + type: array + items: {} + unread-class: + type: string + imageClass: + type: string + posts: + type: array + items: + type: object + properties: + pid: + type: number + timestamp: + type: number + content: + type: string + timestampISO: + type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) + user: + type: object + properties: + uid: + type: number + description: A user identifier + username: + type: string + description: A friendly name for a given user account + userslug: + type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) + picture: + nullable: true + type: string + icon:text: + type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar + icon:bgColor: + type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" + index: + type: number + cid: + type: number + description: A category identifier + parentCid: + type: number + description: The category identifier for the category that is the immediate ancestor of the current category + topic: + type: object + properties: + slug: + type: string + title: + type: string + imageClass: + type: string + timesClicked: + type: number + posts: + type: array + items: + type: object + properties: + pid: + type: number + timestamp: + type: number + content: + type: string + timestampISO: + type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) + user: + type: object + properties: + uid: + type: number + description: A user identifier + username: + type: string + description: A friendly name for a given user account + userslug: + type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) + picture: + nullable: true + type: string + icon:text: + type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar + icon:bgColor: + type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" + index: + type: number + cid: + type: number + description: A category identifier + parentCid: + type: number + description: The category identifier for the category that is the immediate ancestor of the current category + topic: + type: object + properties: + slug: + type: string + title: + type: string + teaser: type: object properties: - html: + url: type: string - "304": - description: "" - /api/register/complete: - get: - tags: - - authentication - summary: /api/register/complete - responses: - "200": - description: "" - content: - application/json: - schema: - type: object - properties: - title: - type: string - errors: - type: array - items: {} - sections: - type: array - items: - type: string - loggedIn: - type: boolean - relative_path: - type: string - template: - type: object - properties: - name: - type: string - registerComplete: - type: boolean - url: - type: string - bodyClass: - type: string - _header: - type: object - properties: - tags: - type: object - properties: - meta: - type: array - items: - type: object - properties: - name: - type: string - content: - type: string - noEscape: - type: boolean - property: - type: string - required: - - name - - content - - noEscape - - property - link: - type: array - items: + timestampISO: + type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) + pid: + type: number + topic: type: object properties: - rel: - type: string - type: - type: string - href: + slug: type: string title: type: string - sizes: - type: string - required: - - rel - - href - - type - - sizes - widgets: - type: object - properties: - footer: - type: array - items: - type: object - properties: - html: - type: string - text/plain: - schema: - type: object - properties: - title: - type: string - errors: - type: array - items: {} - sections: + imageClass: + type: string + breadcrumbs: type: array items: - type: string - loggedIn: - type: boolean - relative_path: - type: string - template: - type: object - properties: - name: - type: string - registerComplete: - type: boolean - url: - type: string - bodyClass: - type: string - _header: - type: object - properties: - tags: - type: object - properties: - meta: - type: array - items: - type: object - properties: - name: - type: string - content: - type: string - noEscape: - type: boolean - property: - type: string - required: - - name - - content - - noEscape - - property - link: - type: array - items: - type: object - properties: - rel: - type: string - type: - type: string - href: - type: string - title: - type: string - sizes: - type: string - required: - - rel - - href - - type - - sizes - widgets: - type: object - properties: - footer: - type: array - items: - type: object - properties: - html: - type: string - "302": - description: "" - content: - application/json: - schema: - type: string - example: Found. Redirecting to /register - text/plain: - schema: - type: string - example: Found. Redirecting to /register - /api/search: - get: - tags: - - search - summary: /api/search - responses: - "200": - description: "" - content: - application/json: - schema: - type: object - properties: - posts: + type: object + properties: + text: + type: string + url: + type: string + loggedIn: + type: boolean + relative_path: + type: string + template: + type: object + properties: + name: + type: string + categories: + type: boolean + url: + type: string + bodyClass: + type: string + topics: type: array items: type: object properties: - pid: - type: number tid: type: number - content: - type: string + description: A topic identifier uid: type: number + description: A user identifier + cid: + type: number + description: A category identifier + mainPid: + type: number + description: The post id of the first post in this topic (also called the "original post") + title: + type: string + slug: + type: string timestamp: type: number - deleted: - type: boolean + lastposttime: + type: number + postcount: + type: number + viewcount: + type: number + teaserPid: + type: number upvotes: type: number downvotes: type: number - votes: + deleted: + type: number + locked: + type: number + pinned: type: number + description: Whether or not this particular topic is pinned to the top of the category + titleRaw: + type: string timestampISO: type: string - user: + description: An ISO 8601 formatted date string (complementing `timestamp`) + lastposttimeISO: + type: string + votes: + type: number + category: type: object properties: - uid: + cid: type: number - username: + description: A category identifier + name: type: string - userslug: + slug: type: string - picture: + icon: + type: string + image: + nullable: true + imageClass: nullable: true - status: type: string - icon:text: + bgColor: type: string - icon:bgColor: + color: type: string - topic: + disabled: + type: number + user: type: object properties: uid: type: number - tid: - type: number - title: + description: A user identifier + username: type: string - cid: - type: number - slug: + description: A friendly name for a given user account + fullname: type: string - deleted: + userslug: + type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) + reputation: type: number postcount: type: number - mainPid: - type: number - titleRaw: + picture: + nullable: true type: string - category: - type: object - properties: - cid: + signature: + nullable: true + type: string + banned: type: number - name: + status: type: string - icon: + icon:text: type: string - slug: + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar + icon:bgColor: type: string - parentCid: - type: number - bgColor: + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" + banned_until_readable: type: string - color: + teaser: + type: object + properties: + pid: + type: number + uid: + type: number + description: A user identifier + timestamp: + type: number + tid: + type: number + description: A topic identifier + content: type: string - image: - nullable: true - imageClass: - nullable: true + timestampISO: type: string - isMainPost: + description: An ISO 8601 formatted date string (complementing `timestamp`) + user: + type: object + properties: + uid: + type: number + description: A user identifier + username: + type: string + description: A friendly name for a given user account + userslug: + type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) + picture: + nullable: true + type: string + icon:text: + type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar + icon:bgColor: + type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" + index: + type: number + tags: + type: array + items: + type: object + properties: + value: + type: string + valueEscaped: + type: string + color: + type: string + bgColor: + type: string + score: + type: number + isOwner: type: boolean - required: - - pid - - tid - - content - - uid - - timestamp - - deleted - - upvotes - - downvotes - - votes - - timestampISO - - user - - topic - - category - - isMainPost - matchCount: - type: number - pageCount: - type: number - time: - type: string - pagination: - type: object - properties: - prev: - type: object - properties: - page: - type: number - active: - type: boolean - next: - type: object - properties: - page: - type: number - active: - type: boolean - first: - type: object - properties: - page: - type: number - active: - type: boolean - last: - type: object - properties: - page: - type: number - active: - type: boolean - rel: - type: array - items: {} - pages: - type: array - items: {} - currentPage: - type: number - pageCount: - type: number - multiplePages: - type: boolean - search_query: - type: string - term: - type: string - categories: - type: array - items: - type: object - properties: - value: - oneOf: - - type: string - - type: number - text: - type: string - required: - - value - - text - categoriesCount: - type: number - breadcrumbs: - type: array - items: - type: object - properties: - text: - type: string - url: - type: string - required: - - text - expandSearch: - type: boolean - showAsPosts: - type: boolean - showAsTopics: - type: boolean - title: - type: string - searchDefaultSortBy: - type: string - loggedIn: - type: boolean - relative_path: - type: string - template: + ignored: + type: boolean + unread: + type: boolean + bookmark: + nullable: true + unreplied: + type: boolean + icons: + type: array + items: {} + index: + type: number + thumb: + type: string + isQuestion: + nullable: true + recentCards: type: object properties: - name: + title: type: string - search: - type: boolean - url: - type: string - bodyClass: - type: string + opacity: + type: string + textShadow: + type: string + enableCarousel: + type: number + enableCarouselPagination: + type: number _header: type: object properties: @@ -6284,11 +5391,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -6304,14 +5406,23 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: + sidebar: + type: array + items: + type: object + properties: + html: + type: string + header: + type: array + items: + type: object + properties: + html: + type: string footer: type: array items: @@ -6319,73 +5430,194 @@ paths: properties: html: type: string - "304": - description: "" - "401": - description: "" - content: - application/json: - schema: - title: not-authorized - type: undefined - "403": - description: "" + motd: + type: array + items: + type: object + properties: + html: + type: string + example: + + "/api/categories/{cid}/moderators": + get: + tags: + - categories + summary: Get mods for a category + description: | + This route returns an array of uids that correspond to the moderators for the category in question. + + **Warning**: This route doesn't seem to be used in NodeBB core, so it may be at risk of removal. + parameters: + - name: cid + description: The category identifier for the category you wish to look up + in: path + required: true + schema: + type: number + responses: + "200": + description: "An array of moderators for the requested category" content: application/json: schema: type: object properties: - path: - type: string - loggedIn: - type: boolean - title: - type: string - "/api/reset/{code?}": + moderators: + type: array + example: + moderators: + - 1 + - 2 + - 3 + "/api/recent/posts/{term?}": get: tags: - - authentication - summary: /api/reset/{code?} + - topics + summary: /api/recent/posts/{term?} parameters: - - name: code? + - name: term? in: path required: true schema: type: string + responses: + "200": + description: "" + content: + application/json: + schema: + type: array + items: + type: object + properties: + pid: + type: number + tid: + type: number + description: A topic identifier + content: + type: string + uid: + type: number + description: A user identifier + timestamp: + type: number + deleted: + type: boolean + upvotes: + type: number + downvotes: + type: number + votes: + type: number + timestampISO: + type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) + user: + type: object + properties: + uid: + type: number + description: A user identifier + username: + type: string + description: A friendly name for a given user account + userslug: + type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) + picture: + nullable: true + type: string + status: + type: string + icon:text: + type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar + icon:bgColor: + type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" + topic: + type: object + properties: + uid: + type: number + description: A user identifier + tid: + type: number + description: A topic identifier + title: + type: string + cid: + type: number + description: A category identifier + slug: + type: string + deleted: + type: number + postcount: + type: number + mainPid: + type: number + description: The post id of the first post in this topic (also called the "original post") + titleRaw: + type: string + category: + type: object + properties: + cid: + type: number + description: A category identifier + name: + type: string + icon: + type: string + slug: + type: string + parentCid: + type: number + description: The category identifier for the category that is the immediate ancestor of the current category + bgColor: + type: string + color: + type: string + image: + nullable: true + imageClass: + nullable: true + type: string + isMainPost: + type: boolean + /api/unread/total: + get: + tags: + - posts + summary: /api/unread/total responses: {} - "/api/email/unsubscribe/{token}": + "/api/topic/teaser/{topic_id}": get: tags: - - emails - summary: /api/email/unsubscribe/{token} + - topics + summary: /api/topic/teaser/{topic_id} parameters: - - name: token + - name: topic_id in: path required: true schema: type: string responses: {} - "/api/topic/{topic_id}/{slug}/{post_index?}": + "/api/topic/pagination/{topic_id}": get: tags: - topics - summary: /api/topic/{topic_id}/{slug}/{post_index?} + summary: /api/topic/pagination/{topic_id} parameters: - name: topic_id in: path required: true schema: type: string - - name: slug - in: path - required: true - schema: - type: string - - name: post_index? - in: path - required: true - schema: - type: string responses: "200": description: "" @@ -6394,316 +5626,214 @@ paths: schema: type: object properties: - tid: - type: number - uid: - type: number - cid: - type: number - mainPid: - type: number - title: - type: string - slug: - type: string - timestamp: - type: number - lastposttime: - type: number - postcount: - type: number - viewcount: - type: number - teaserPid: - type: number - upvotes: - type: number - downvotes: - type: number - deleted: - type: number - locked: - type: number - pinned: - type: number - titleRaw: - type: string - timestampISO: - type: string - lastposttimeISO: - type: string - votes: - type: number - tags: + rel: type: array items: type: object properties: - value: - type: string - valueEscaped: - type: string - color: + rel: type: string - bgColor: + href: type: string - score: - type: number - required: - - value - - valueEscaped - - color - - bgColor - - score - posts: + pages: type: array items: type: object properties: - pid: - type: number - uid: - type: number - tid: - type: number - content: - type: string - timestamp: - type: number - votes: - type: number - deleted: - type: number - upvotes: - type: number - downvotes: - type: number - deleterUid: - type: number - edited: - type: number - timestampISO: - type: string - editedISO: - type: string - index: + page: type: number - user: - type: object - properties: - uid: - type: number - username: - type: string - userslug: - type: string - reputation: - type: number - postcount: - type: number - topiccount: - type: number - picture: - type: string - signature: - type: string - banned: - type: number - banned:expire: - type: number - status: - type: string - lastonline: - type: number - groupTitle: - nullable: true - type: string - groupTitleArray: - type: array - items: - type: string - icon:text: - type: string - icon:bgColor: - type: string - lastonlineISO: - type: string - banned_until: - type: number - banned_until_readable: - type: string - selectedGroups: - type: array - items: - type: object - properties: - name: - type: string - slug: - type: string - labelColor: - type: string - textColor: - type: string - icon: - type: string - userTitle: - type: string - custom_profile_info: - type: array - items: {} - editor: - nullable: true - bookmarked: - type: boolean - upvoted: - type: boolean - downvoted: - type: boolean - replies: - type: object - properties: - hasMore: - type: boolean - users: - type: array - items: {} - text: - type: string - count: - type: number - selfPost: - type: boolean - display_edit_tools: - type: boolean - display_delete_tools: - type: boolean - display_moderator_tools: - type: boolean - display_move_tools: - type: boolean - display_post_menu: + active: type: boolean - required: - - pid - - uid - - tid - - content - - timestamp - - votes - - upvotes - - deleted - - downvotes - - deleterUid - - edited - - timestampISO - - editedISO - - index - - user - - editor - - bookmarked - - upvoted - - downvoted - - replies - - selfPost - - display_edit_tools - - display_delete_tools - - display_moderator_tools - - display_move_tools - - display_post_menu - category: + qs: + type: string + currentPage: + type: number + + pageCount: + type: number + prev: type: object properties: - link: - type: string - class: - type: string - icon: - type: string - description: - type: string - order: - type: number - topic_count: + page: type: number - name: + active: + type: boolean + qs: type: string - cid: - type: number - post_count: - type: number - numRecentReplies: + next: + type: object + properties: + page: type: number - bgColor: - type: string - slug: - type: string - color: + active: + type: boolean + qs: type: string - disabled: + first: + type: object + properties: + page: type: number - descriptionParsed: + active: + type: boolean + qs: type: string - isSection: - type: number - parentCid: - type: number - totalPostCount: - type: number - totalTopicCount: + last: + type: object + properties: + page: type: number - tagWhitelist: + active: + type: boolean + qs: + type: string + /api/post/upload: + post: + tags: + - posts + summary: /api/post/upload + responses: + "200": + description: "" + content: + application/json: + schema: + type: array + items: + type: object + properties: + name: + type: string + url: + type: string + text/plain: + schema: + type: array + items: + type: object + properties: + name: + type: string + url: + type: string + "403": + description: "" + content: + application/json: + schema: + type: string + example: Forbidden + text/plain: + schema: + type: string + example: Forbidden + "500": + description: "" + content: + application/json: + schema: + type: object + properties: + path: + type: string + error: + type: string + text/plain: + schema: + type: object + properties: + path: + type: string + error: + type: string + /api/topic/thumb/upload: + post: + tags: + - topics + summary: /api/topic/thumb/upload + responses: {} + "/api/user/{userslug}/uploadpicture": + post: + tags: + - users + summary: /api/user/{userslug}/uploadpicture + parameters: + - name: userslug + in: path + required: true + schema: + type: string + responses: + "200": + description: "" + content: + application/json: + schema: + type: array + items: + type: object + properties: + name: + type: string + url: + type: string + "/api/user/{userslug}/uploadcover": + post: + tags: + - users + summary: /api/user/{userslug}/uploadcover + parameters: + - name: userslug + in: path + required: true + schema: + type: string + responses: {} + /api/groups/uploadpicture: + post: + tags: + - groups + summary: /api/groups/uploadpicture + responses: {} + /api/login: + get: + tags: + - authentication + summary: /api/login + responses: + "200": + description: "" + content: + application/json: + schema: + type: object + properties: + loginFormEntry: type: array items: {} - thread_tools: + alternate_logins: + type: boolean + authentication: type: array items: type: object properties: - class: + name: type: string - title: + url: type: string - icon: + callbackURL: type: string - isFollowing: - type: boolean - isNotFollowing: - type: boolean - isIgnoring: - type: boolean - bookmark: - nullable: true - postSharing: - type: array - items: - type: object - properties: - id: + icon: type: string - name: + scope: type: string - class: + prompt: type: string - activated: - type: boolean - required: - - id - - name - - class - - activated - deleter: - nullable: true - merger: - nullable: true - related: - type: array - items: {} - unreplied: + allowRegistration: type: boolean - icons: - type: array - items: {} + allowLoginWith: + type: string breadcrumbs: type: array items: @@ -6713,139 +5843,12 @@ paths: type: string url: type: string - required: - - text - - url - privileges: - type: object - properties: - topics:reply: - type: boolean - topics:read: - type: boolean - topics:tag: - type: boolean - topics:delete: - type: boolean - posts:edit: - type: boolean - posts:history: - type: boolean - posts:delete: - type: boolean - posts:view_deleted: - type: boolean - read: - type: boolean - purge: - type: boolean - view_thread_tools: - type: boolean - editable: - type: boolean - deletable: - type: boolean - view_deleted: - type: boolean - isAdminOrMod: - type: boolean - disabled: - type: number - tid: - type: string - uid: - type: number - topicStaleDays: - type: number - reputation:disabled: - type: number - downvote:disabled: - type: number - feeds:disableRSS: - type: number - bookmarkThreshold: - type: number - postEditDuration: - type: number - postDeleteDuration: - type: number - scrollToMyPost: - type: boolean - allowMultipleBadges: + title: + type: string + allowPasswordReset: type: boolean - privateUploads: + allowLocalLogin: type: boolean - rssFeedUrl: - type: string - postIndex: - type: number - pagination: - type: object - properties: - rel: - type: array - items: - type: object - properties: - rel: - type: string - href: - type: string - pages: - type: array - items: - type: object - properties: - page: - type: number - active: - type: boolean - qs: - type: string - required: - - page - - active - - qs - currentPage: - type: number - pageCount: - type: number - prev: - type: object - properties: - page: - type: number - active: - type: boolean - qs: - type: string - next: - type: object - properties: - page: - type: number - active: - type: boolean - qs: - type: string - first: - type: object - properties: - page: - type: number - active: - type: boolean - qs: - type: string - last: - type: object - properties: - page: - type: number - active: - type: boolean - qs: - type: string loggedIn: type: boolean relative_path: @@ -6855,24 +5858,20 @@ paths: properties: name: type: string - topic: + login: type: boolean url: type: string bodyClass: type: string - loggedInUser: + captcha: type: object properties: - uid: - type: number - username: - type: string - picture: + label: type: string - icon:text: + html: type: string - icon:bgColor: + styleName: type: string _header: type: object @@ -6893,499 +5892,250 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: - type: object - properties: - rel: - type: string - type: - type: string - href: - type: string - title: - type: string - sizes: - type: string - required: - - rel - - href - - type - - sizes - widgets: - type: object - properties: - footer: - type: array - items: - type: object - properties: - html: - type: string - required: - - html - text/plain: - schema: - type: object - properties: - tid: - type: number - uid: - type: number - cid: - type: number - mainPid: - type: number - title: - type: string - slug: - type: string - timestamp: - type: number - lastposttime: - type: number - postcount: - type: number - viewcount: - type: number - teaserPid: - type: number - upvotes: - type: number - downvotes: - type: number - deleted: - type: number - locked: - type: number - pinned: - type: number - titleRaw: - type: string - timestampISO: - type: string - lastposttimeISO: - type: string - votes: - type: number - tags: - type: array - items: - type: object - properties: - value: - type: string - valueEscaped: - type: string - color: - type: string - bgColor: - type: string - score: - type: number - required: - - value - - valueEscaped - - color - - bgColor - - score - posts: - type: array - items: - type: object - properties: - pid: - type: number - uid: - type: number - tid: - type: number - content: - type: string - timestamp: - type: number - votes: - type: number - deleted: - type: number - upvotes: - type: number - downvotes: - type: number - deleterUid: - type: number - edited: - type: number - timestampISO: - type: string - editedISO: - type: string - index: - type: number - user: - type: object - properties: - uid: - type: number - username: - type: string - userslug: - type: string - reputation: - type: number - postcount: - type: number - topiccount: - type: number - picture: - type: string - signature: - type: string - banned: - type: number - banned:expire: - type: number - status: - type: string - lastonline: - type: number - groupTitle: - nullable: true - type: string - groupTitleArray: - type: array - items: - type: string - icon:text: - type: string - icon:bgColor: - type: string - lastonlineISO: - type: string - banned_until: - type: number - banned_until_readable: - type: string - selectedGroups: - type: array - items: - type: object - properties: - name: - type: string - slug: - type: string - labelColor: - type: string - textColor: - type: string - icon: - type: string - userTitle: - type: string - custom_profile_info: - type: array - items: {} - editor: - nullable: true - bookmarked: - type: boolean - upvoted: - type: boolean - downvoted: - type: boolean - replies: - type: object - properties: - hasMore: - type: boolean - users: - type: array - items: {} - text: - type: string - count: - type: number - selfPost: - type: boolean - display_edit_tools: - type: boolean - display_delete_tools: - type: boolean - display_moderator_tools: - type: boolean - display_move_tools: - type: boolean - display_post_menu: - type: boolean - required: - - pid - - uid - - tid - - content - - timestamp - - votes - - upvotes - - deleted - - downvotes - - deleterUid - - edited - - timestampISO - - editedISO - - index - - user - - editor - - bookmarked - - upvoted - - downvoted - - replies - - selfPost - - display_edit_tools - - display_delete_tools - - display_moderator_tools - - display_move_tools - - display_post_menu - category: - type: object - properties: - link: - type: string - class: - type: string - icon: - type: string - description: - type: string - order: - type: number - topic_count: - type: number - name: - type: string - cid: - type: number - post_count: - type: number - numRecentReplies: - type: number - bgColor: - type: string - slug: - type: string - color: - type: string - disabled: - type: number - descriptionParsed: - type: string - isSection: - type: number - parentCid: - type: number - totalPostCount: - type: number - totalTopicCount: - type: number - tagWhitelist: - type: array - items: {} - thread_tools: + type: object + properties: + rel: + type: string + type: + type: string + href: + type: string + title: + type: string + sizes: + type: string + widgets: + type: object + properties: + footer: + type: array + items: + type: object + properties: + html: + type: string + /api/register: + get: + tags: + - authentication + summary: /api/register + responses: + "200": + description: "" + content: + application/json: + schema: + type: object + properties: + register_window:spansize: + type: string + alternate_logins: + type: boolean + authentication: type: array items: type: object properties: - class: + name: type: string - title: + url: + type: string + callbackURL: type: string icon: type: string - isFollowing: - type: boolean - isNotFollowing: - type: boolean - isIgnoring: - type: boolean - bookmark: - nullable: true - postSharing: + scope: + type: string + prompt: + type: string + minimumUsernameLength: + type: number + maximumUsernameLength: + type: number + minimumPasswordLength: + type: number + minimumPasswordStrength: + type: number + breadcrumbs: type: array items: type: object properties: - id: - type: string - name: + text: type: string - class: + url: type: string - activated: - type: boolean - required: - - id - - name - - class - - activated - deleter: - nullable: true - merger: - nullable: true - related: - type: array - items: {} - unreplied: - type: boolean - icons: - type: array - items: {} - breadcrumbs: + regFormEntry: type: array items: type: object properties: - text: + label: type: string - url: + html: type: string - required: - - text - - url - privileges: + styleName: + type: string + title: + type: string + loggedIn: + type: boolean + relative_path: + type: string + template: type: object properties: - topics:reply: - type: boolean - topics:read: - type: boolean - topics:tag: - type: boolean - topics:delete: - type: boolean - posts:edit: - type: boolean - posts:history: - type: boolean - posts:delete: - type: boolean - posts:view_deleted: - type: boolean - read: - type: boolean - purge: - type: boolean - view_thread_tools: - type: boolean - editable: - type: boolean - deletable: - type: boolean - view_deleted: - type: boolean - isAdminOrMod: - type: boolean - disabled: - type: number - tid: + name: type: string - uid: - type: number - topicStaleDays: - type: number - reputation:disabled: - type: number - downvote:disabled: - type: number - feeds:disableRSS: - type: number - bookmarkThreshold: - type: number - postEditDuration: - type: number - postDeleteDuration: - type: number - scrollToMyPost: - type: boolean - allowMultipleBadges: - type: boolean - privateUploads: + register: + type: boolean + url: + type: string + bodyClass: + type: string + _header: + type: object + properties: + tags: + type: object + properties: + meta: + type: array + items: + type: object + properties: + name: + type: string + content: + type: string + noEscape: + type: boolean + property: + type: string + link: + type: array + items: + type: object + properties: + rel: + type: string + type: + type: string + href: + type: string + title: + type: string + sizes: + type: string + widgets: + type: object + properties: + footer: + type: array + items: + type: object + properties: + html: + type: string + "304": + description: "" + /api/register/complete: + get: + tags: + - authentication + summary: /api/register/complete + responses: + "200": + description: "" + content: + application/json: + schema: + type: object + properties: + title: + type: string + errors: + type: array + items: {} + sections: + type: array + items: + type: string + loggedIn: type: boolean - rssFeedUrl: + relative_path: type: string - postIndex: - type: number - pagination: + template: + type: object + properties: + name: + type: string + registerComplete: + type: boolean + url: + type: string + bodyClass: + type: string + _header: + type: object + properties: + tags: + type: object + properties: + meta: + type: array + items: + type: object + properties: + name: + type: string + content: + type: string + noEscape: + type: boolean + property: + type: string + link: + type: array + items: + type: object + properties: + rel: + type: string + type: + type: string + href: + type: string + title: + type: string + sizes: + type: string + widgets: type: object properties: - rel: - type: array - items: - type: object - properties: - rel: - type: string - href: - type: string - pages: + footer: type: array items: type: object properties: - page: - type: number - active: - type: boolean - qs: + html: type: string - required: - - page - - active - - qs - currentPage: - type: number - pageCount: - type: number - prev: - type: object - properties: - page: - type: number - active: - type: boolean - qs: - type: string - next: - type: object - properties: - page: - type: number - active: - type: boolean - qs: - type: string - first: - type: object - properties: - page: - type: number - active: - type: boolean - qs: - type: string - last: - type: object - properties: - page: - type: number - active: - type: boolean - qs: - type: string + text/plain: + schema: + type: object + properties: + title: + type: string + errors: + type: array + items: {} + sections: + type: array + items: + type: string loggedIn: type: boolean relative_path: @@ -7395,25 +6145,12 @@ paths: properties: name: type: string - topic: + registerComplete: type: boolean url: type: string bodyClass: type: string - loggedInUser: - type: object - properties: - uid: - type: number - username: - type: string - picture: - type: string - icon:text: - type: string - icon:bgColor: - type: string _header: type: object properties: @@ -7433,11 +6170,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -7453,11 +6185,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -7468,46 +6195,22 @@ paths: properties: html: type: string - required: - - html - "401": - description: "" - content: - application/json: - schema: - title: not-authorized - type: undefined - text/plain: - schema: - title: not-authorized - type: undefined - "404": + "302": description: "" content: application/json: schema: type: string - example: Not Found + example: Found. Redirecting to /register text/plain: schema: type: string - example: Not Found - "/api/topic/{topic_id}/{slug?}": + example: Found. Redirecting to /register + /api/search: get: tags: - - topics - summary: /api/topic/{topic_id}/{slug?} - parameters: - - name: topic_id - in: path - required: true - schema: - type: string - - name: slug? - in: path - required: true - schema: - type: string + - search + summary: /api/search responses: "200": description: "" @@ -7516,478 +6219,117 @@ paths: schema: type: object properties: - tid: - type: number - uid: - type: number - cid: - type: number - mainPid: - type: number - title: - type: string - slug: - type: string - timestamp: - type: number - lastposttime: - type: number - postcount: - type: number - viewcount: - type: number - teaserPid: - type: number - upvotes: - type: number - downvotes: - type: number - deleted: - type: number - locked: - type: number - pinned: - type: number - titleRaw: - type: string - timestampISO: - type: string - lastposttimeISO: - type: string - votes: - type: number - tags: - type: array - items: - type: object - properties: - value: - type: string - valueEscaped: - type: string - color: - type: string - bgColor: - type: string - score: - type: number - required: - - value - - valueEscaped - - color - - bgColor - - score posts: type: array items: type: object properties: - editor: - properties: - uid: - type: number - username: - type: string - userslug: - type: string - nullable: true - type: object - votes: - type: number - timestamp: + pid: type: number tid: type: number + description: A topic identifier content: type: string - pid: - type: number - edited: - type: number uid: type: number - upvotes: - type: number - bookmarks: - type: number - replies: - type: object - properties: - hasMore: - type: boolean - users: - type: array - items: - type: object - properties: - uid: - type: number - username: - type: string - userslug: - type: string - picture: - nullable: true - icon:text: - type: string - icon:bgColor: - type: string - administrator: - type: boolean - required: - - uid - - username - - userslug - - picture - - icon:text - - icon:bgColor - - administrator - text: - type: string - count: - type: number - timestampISO: - type: string + description: A user identifier + timestamp: + type: number deleted: + type: boolean + upvotes: type: number downvotes: type: number - deleterUid: + votes: type: number timestampISO: type: string - editedISO: - type: string - index: - type: number + description: An ISO 8601 formatted date string (complementing `timestamp`) user: type: object properties: uid: type: number + description: A user identifier username: type: string - fullname: - type: string + description: A friendly name for a given user account userslug: type: string - reputation: - type: number - postcount: - type: number - topiccount: - type: number + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: nullable: true - type: string - signature: - type: string - banned: - type: number - banned:expire: - type: number status: type: string - lastonline: - type: number - groupTitle: - nullable: true - type: string - groupTitleArray: - type: array - items: - type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string - lastonlineISO: - type: string - banned_until: - type: number - banned_until_readable: - type: string - selectedGroups: - type: array - items: - type: object - properties: - name: - type: string - slug: - type: string - labelColor: - type: string - textColor: - type: string - icon: - type: string - userTitle: - type: string - required: - - name - - slug - - labelColor - - textColor - - icon - - userTitle - custom_profile_info: - type: array - items: {} - bookmarked: - type: boolean - upvoted: - type: boolean - downvoted: - type: boolean - selfPost: - type: boolean - display_edit_tools: - type: boolean - display_delete_tools: - type: boolean - display_moderator_tools: - type: boolean - display_move_tools: - type: boolean - display_post_menu: - type: boolean - toPid: - type: number - parent: - type: object - properties: - username: - type: string - required: - - votes - - timestamp - - tid - - content - - pid - - uid - - deleted - - upvotes - - downvotes - - deleterUid - - edited - - timestampISO - - editedISO - - index - - user - - editor - - bookmarked - - upvoted - - downvoted - - replies - - selfPost - - display_edit_tools - - display_delete_tools - - display_moderator_tools - - display_move_tools - - display_post_menu - - toPid - - parent - - bookmarks - category: - type: object - properties: - link: - type: string - class: - type: string - icon: - type: string - description: - type: string - order: - type: number - topic_count: - type: number - name: - type: string - cid: - type: number - post_count: - type: number - numRecentReplies: - type: number - bgColor: - type: string - slug: - type: string - color: - type: string - disabled: - type: number - descriptionParsed: - type: string - isSection: - type: number - parentCid: - type: number - totalPostCount: - type: number - totalTopicCount: - type: number - tagWhitelist: - type: array - items: {} - thread_tools: - type: array - items: - type: object - properties: - class: - type: string - title: - type: string - icon: - type: string - isFollowing: - type: boolean - isNotFollowing: - type: boolean - isIgnoring: - type: boolean - bookmark: - nullable: true - postSharing: - type: array - items: - type: object - properties: - id: - type: string - name: - type: string - class: - type: string - activated: - type: boolean - required: - - id - - name - - class - - activated - deleter: - nullable: true - merger: - nullable: true - related: - type: array - items: {} - unreplied: - type: boolean - icons: - type: array - items: {} - breadcrumbs: - type: array - items: - type: object - properties: - text: - type: string - url: - type: string - required: - - text - - url - privileges: - type: object - properties: - topics:reply: - type: boolean - topics:read: - type: boolean - topics:tag: - type: boolean - topics:delete: - type: boolean - posts:edit: - type: boolean - posts:history: - type: boolean - posts:delete: - type: boolean - posts:view_deleted: - type: boolean - read: - type: boolean - purge: - type: boolean - view_thread_tools: - type: boolean - editable: - type: boolean - deletable: - type: boolean - view_deleted: - type: boolean - isAdminOrMod: - type: boolean - disabled: - type: number - tid: - type: string - uid: - type: number - topicStaleDays: - type: number - reputation:disabled: - type: number - downvote:disabled: - type: number - feeds:disableRSS: - type: number - bookmarkThreshold: - type: number - postEditDuration: - type: number - postDeleteDuration: - type: number - scrollToMyPost: - type: boolean - allowMultipleBadges: - type: boolean - privateUploads: - type: boolean - rssFeedUrl: - type: string - postIndex: - type: number - pagination: - type: object - properties: - rel: - type: array - items: + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" + topic: type: object properties: - rel: + uid: + type: number + description: A user identifier + tid: + type: number + description: A topic identifier + title: type: string - href: + cid: + type: number + description: A category identifier + slug: type: string - pages: - type: array - items: + deleted: + type: number + postcount: + type: number + mainPid: + type: number + description: The post id of the first post in this topic (also called the "original post") + titleRaw: + type: string + category: type: object properties: - page: + cid: type: number - active: - type: boolean - qs: + description: A category identifier + name: type: string - required: - - page - - active - - qs - currentPage: - type: number - pageCount: - type: number + icon: + type: string + slug: + type: string + parentCid: + type: number + description: The category identifier for the category that is the immediate ancestor of the current category + bgColor: + type: string + color: + type: string + image: + nullable: true + imageClass: + nullable: true + type: string + isMainPost: + type: boolean + matchCount: + type: number + pageCount: + type: number + time: + type: string + pagination: + type: object + properties: prev: type: object properties: @@ -7995,8 +6337,6 @@ paths: type: number active: type: boolean - qs: - type: string next: type: object properties: @@ -8004,8 +6344,6 @@ paths: type: number active: type: boolean - qs: - type: string first: type: object properties: @@ -8013,8 +6351,6 @@ paths: type: number active: type: boolean - qs: - type: string last: type: object properties: @@ -8022,8 +6358,54 @@ paths: type: number active: type: boolean - qs: - type: string + rel: + type: array + items: {} + pages: + type: array + items: {} + currentPage: + type: number + pageCount: + type: number + multiplePages: + type: boolean + search_query: + type: string + term: + type: string + categories: + type: array + items: + type: object + properties: + value: + oneOf: + - type: string + - type: number + text: + type: string + categoriesCount: + type: number + breadcrumbs: + type: array + items: + type: object + properties: + text: + type: string + url: + type: string + expandSearch: + type: boolean + showAsPosts: + type: boolean + showAsTopics: + type: boolean + title: + type: string + searchDefaultSortBy: + type: string loggedIn: type: boolean relative_path: @@ -8033,25 +6415,12 @@ paths: properties: name: type: string - topic: + search: type: boolean url: type: string bodyClass: type: string - loggedInUser: - type: object - properties: - uid: - type: number - username: - type: string - picture: - type: string - icon:text: - type: string - icon:bgColor: - type: string _header: type: object properties: @@ -8071,11 +6440,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -8091,11 +6455,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -8106,20 +6465,93 @@ paths: properties: html: type: string - required: - - html - text/plain: + "304": + description: "" + "401": + description: "" + content: + application/json: + schema: + title: not-authorized + type: undefined + "403": + description: "" + content: + application/json: + schema: + type: object + properties: + path: + type: string + loggedIn: + type: boolean + title: + type: string + "/api/reset/{code?}": + get: + tags: + - authentication + summary: /api/reset/{code?} + parameters: + - name: code? + in: path + required: true + schema: + type: string + responses: {} + "/api/email/unsubscribe/{token}": + get: + tags: + - emails + summary: /api/email/unsubscribe/{token} + parameters: + - name: token + in: path + required: true + schema: + type: string + responses: {} + "/api/topic/{topic_id}/{slug}/{post_index?}": + get: + tags: + - topics + summary: /api/topic/{topic_id}/{slug}/{post_index?} + parameters: + - name: topic_id + in: path + required: true + schema: + type: string + - name: slug + in: path + required: true + schema: + type: string + - name: post_index? + in: path + required: true + schema: + type: string + responses: + "200": + description: "" + content: + application/json: schema: type: object properties: tid: type: number + description: A topic identifier uid: type: number + description: A user identifier cid: type: number + description: A category identifier mainPid: type: number + description: The post id of the first post in this topic (also called the "original post") title: type: string slug: @@ -8144,10 +6576,12 @@ paths: type: number pinned: type: number + description: Whether or not this particular topic is pinned to the top of the category titleRaw: type: string timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) lastposttimeISO: type: string votes: @@ -8167,91 +6601,38 @@ paths: type: string score: type: number - required: - - value - - valueEscaped - - color - - bgColor - - score posts: type: array items: type: object properties: - editor: - properties: - uid: - type: number - username: - type: string - userslug: - type: string - nullable: true - type: object - votes: + pid: type: number - timestamp: + uid: type: number + description: A user identifier tid: type: number + description: A topic identifier content: type: string - pid: + timestamp: type: number - edited: + votes: type: number - uid: + deleted: type: number upvotes: type: number - bookmarks: - type: number - replies: - type: object - properties: - hasMore: - type: boolean - users: - type: array - items: - type: object - properties: - uid: - type: number - username: - type: string - userslug: - type: string - picture: - nullable: true - icon:text: - type: string - icon:bgColor: - type: string - administrator: - type: boolean - required: - - uid - - username - - userslug - - picture - - icon:text - - icon:bgColor - - administrator - text: - type: string - count: - type: number - timestampISO: - type: string - deleted: - type: number downvotes: type: number deleterUid: type: number + edited: + type: number timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) editedISO: type: string index: @@ -8261,12 +6642,13 @@ paths: properties: uid: type: number - username: - type: string - fullname: + description: A user identifier + username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) reputation: type: number postcount: @@ -8274,7 +6656,6 @@ paths: topiccount: type: number picture: - nullable: true type: string signature: type: string @@ -8295,8 +6676,11 @@ paths: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" lastonlineISO: type: string banned_until: @@ -8320,22 +6704,29 @@ paths: type: string userTitle: type: string - required: - - name - - slug - - labelColor - - textColor - - icon - - userTitle custom_profile_info: type: array items: {} + editor: + nullable: true bookmarked: type: boolean upvoted: type: boolean downvoted: type: boolean + replies: + type: object + properties: + hasMore: + type: boolean + users: + type: array + items: {} + text: + type: string + count: + type: number selfPost: type: boolean display_edit_tools: @@ -8348,43 +6739,6 @@ paths: type: boolean display_post_menu: type: boolean - toPid: - type: number - parent: - type: object - properties: - username: - type: string - required: - - votes - - timestamp - - tid - - content - - pid - - uid - - deleted - - upvotes - - downvotes - - deleterUid - - edited - - timestampISO - - editedISO - - index - - user - - editor - - bookmarked - - upvoted - - downvoted - - replies - - selfPost - - display_edit_tools - - display_delete_tools - - display_moderator_tools - - display_move_tools - - display_post_menu - - toPid - - parent - - bookmarks category: type: object properties: @@ -8400,12 +6754,15 @@ paths: type: number topic_count: type: number + description: The number of topics in the category name: type: string cid: type: number + description: A category identifier post_count: type: number + description: The number of posts in the category numRecentReplies: type: number bgColor: @@ -8422,10 +6779,13 @@ paths: type: number parentCid: type: number + description: The category identifier for the category that is the immediate ancestor of the current category totalPostCount: type: number + description: The number of posts in the category totalTopicCount: type: number + description: The number of topics in the category tagWhitelist: type: array items: {} @@ -8461,11 +6821,6 @@ paths: type: string activated: type: boolean - required: - - id - - name - - class - - activated deleter: nullable: true merger: @@ -8487,9 +6842,6 @@ paths: type: string url: type: string - required: - - text - - url privileges: type: object properties: @@ -8529,6 +6881,7 @@ paths: type: string uid: type: number + description: A user identifier topicStaleDays: type: number reputation:disabled: @@ -8576,10 +6929,6 @@ paths: type: boolean qs: type: string - required: - - page - - active - - qs currentPage: type: number pageCount: @@ -8640,14 +6989,19 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account picture: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" _header: type: object properties: @@ -8667,11 +7021,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -8687,11 +7036,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -8702,208 +7046,376 @@ paths: properties: html: type: string - required: - - html - "401": - description: "" - content: - application/json: - schema: - title: not-authorized - type: undefined text/plain: - schema: - title: not-authorized - type: undefined - "403": - description: "" - content: - application/json: schema: type: object properties: - path: - type: string - loggedIn: - type: boolean + tid: + type: number + description: A topic identifier + uid: + type: number + description: A user identifier + cid: + type: number + description: A category identifier + mainPid: + type: number + description: The post id of the first post in this topic (also called the "original post") title: type: string - text/plain: - schema: - type: object - properties: - path: + slug: type: string - loggedIn: - type: boolean - title: + timestamp: + type: number + lastposttime: + type: number + postcount: + type: number + viewcount: + type: number + teaserPid: + type: number + upvotes: + type: number + downvotes: + type: number + deleted: + type: number + locked: + type: number + pinned: + type: number + description: Whether or not this particular topic is pinned to the top of the category + titleRaw: type: string - "404": - description: "" - content: - application/json: - schema: - type: string - example: Not Found - text/plain: - schema: - type: string - example: Not Found - "/api/post/{pid}": - get: - tags: - - shorthand - summary: /api/post/{pid} - parameters: - - name: pid - in: path - required: true - schema: - type: string - responses: - "200": - description: "" - content: - application/json: - schema: - title: /topic/9995/cannot-post-or-reply-to-posts-in-nodebb-mobile-version/14?_=1574522486637&lang=en-US - type: undefined - text/plain: - schema: - title: /topic/9995/cannot-post-or-reply-to-posts-in-nodebb-mobile-version/14?_=1574522486637&lang=en-US - type: undefined - "404": - description: "" - content: - application/json: - schema: - type: string - example: Not Found - text/plain: - schema: - type: string - example: Not Found - /api/flags: - get: - tags: - - flags - summary: /api/flags - responses: - "200": - description: "" - content: - application/json: - schema: - type: object - properties: - flags: + timestampISO: + type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) + lastposttimeISO: + type: string + votes: + type: number + tags: type: array items: type: object properties: - state: + value: type: string - flagId: - type: number - type: + valueEscaped: type: string - targetId: - oneOf: - - type: string - - type: number - description: + color: + type: string + bgColor: type: string + score: + type: number + posts: + type: array + items: + type: object + properties: + pid: + type: number uid: type: number - datetime: + description: A user identifier + tid: type: number - reporter: + description: A topic identifier + content: + type: string + timestamp: + type: number + votes: + type: number + deleted: + type: number + upvotes: + type: number + downvotes: + type: number + deleterUid: + type: number + edited: + type: number + timestampISO: + type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) + editedISO: + type: string + index: + type: number + user: type: object properties: + uid: + type: number + description: A user identifier username: type: string + description: A friendly name for a given user account + userslug: + type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) + reputation: + type: number + postcount: + type: number + topiccount: + type: number picture: + type: string + signature: + type: string + banned: + type: number + banned:expire: + type: number + status: + type: string + lastonline: + type: number + groupTitle: nullable: true type: string + groupTitleArray: + type: array + items: + type: string + icon:text: + type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string - icon:text: + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" + lastonlineISO: + type: string + banned_until: + type: number + banned_until_readable: + type: string + selectedGroups: + type: array + items: + type: object + properties: + name: + type: string + slug: + type: string + labelColor: + type: string + textColor: + type: string + icon: + type: string + userTitle: + type: string + custom_profile_info: + type: array + items: {} + editor: + nullable: true + bookmarked: + type: boolean + upvoted: + type: boolean + downvoted: + type: boolean + replies: + type: object + properties: + hasMore: + type: boolean + users: + type: array + items: {} + text: type: string - labelClass: - type: string - target_readable: - type: string - datetimeISO: - type: string - assignee: - type: string - required: - - state - - flagId - - type - - targetId - - description - - uid - - datetime - - reporter - - labelClass - - target_readable - - datetimeISO - - assignee - analytics: - type: array - items: - type: number - categories: + count: + type: number + selfPost: + type: boolean + display_edit_tools: + type: boolean + display_delete_tools: + type: boolean + display_moderator_tools: + type: boolean + display_move_tools: + type: boolean + display_post_menu: + type: boolean + category: type: object properties: - "1": - type: string - "2": - type: string - "3": - type: string - "4": - type: string - "5": - type: string - "6": - type: string - "7": - type: string - "10": - type: string - "13": - type: string - "14": + link: type: string - "15": + class: type: string - "16": + icon: type: string - "17": + description: type: string - "18": + order: + type: number + topic_count: + type: number + description: The number of topics in the category + name: type: string - "19": + cid: + type: number + description: A category identifier + post_count: + type: number + description: The number of posts in the category + numRecentReplies: + type: number + bgColor: type: string - "21": + slug: type: string - "22": + color: type: string - "26": + disabled: + type: number + descriptionParsed: type: string - hasFilter: + isSection: + type: number + parentCid: + type: number + description: The category identifier for the category that is the immediate ancestor of the current category + totalPostCount: + type: number + description: The number of posts in the category + totalTopicCount: + type: number + description: The number of topics in the category + tagWhitelist: + type: array + items: {} + thread_tools: + type: array + items: + type: object + properties: + class: + type: string + title: + type: string + icon: + type: string + isFollowing: type: boolean - filters: + isNotFollowing: + type: boolean + isIgnoring: + type: boolean + bookmark: + nullable: true + postSharing: + type: array + items: + type: object + properties: + id: + type: string + name: + type: string + class: + type: string + activated: + type: boolean + deleter: + nullable: true + merger: + nullable: true + related: + type: array + items: {} + unreplied: + type: boolean + icons: + type: array + items: {} + breadcrumbs: + type: array + items: + type: object + properties: + text: + type: string + url: + type: string + privileges: type: object properties: - page: + topics:reply: + type: boolean + topics:read: + type: boolean + topics:tag: + type: boolean + topics:delete: + type: boolean + posts:edit: + type: boolean + posts:history: + type: boolean + posts:delete: + type: boolean + posts:view_deleted: + type: boolean + read: + type: boolean + purge: + type: boolean + view_thread_tools: + type: boolean + editable: + type: boolean + deletable: + type: boolean + view_deleted: + type: boolean + isAdminOrMod: + type: boolean + disabled: type: number - perPage: + tid: + type: string + uid: type: number - title: + description: A user identifier + topicStaleDays: + type: number + reputation:disabled: + type: number + downvote:disabled: + type: number + feeds:disableRSS: + type: number + bookmarkThreshold: + type: number + postEditDuration: + type: number + postDeleteDuration: + type: number + scrollToMyPost: + type: boolean + allowMultipleBadges: + type: boolean + privateUploads: + type: boolean + rssFeedUrl: type: string + postIndex: + type: number pagination: type: object properties: @@ -8927,12 +7439,6 @@ paths: type: boolean qs: type: string - separator: - type: boolean - required: - - page - - active - - qs currentPage: type: number pageCount: @@ -8982,12 +7488,30 @@ paths: properties: name: type: string - flags/list: + topic: type: boolean url: type: string bodyClass: type: string + loggedInUser: + type: object + properties: + uid: + type: number + description: A user identifier + username: + type: string + description: A friendly name for a given user account + picture: + type: string + icon:text: + type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar + icon:bgColor: + type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" _header: type: object properties: @@ -9007,11 +7531,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -9027,11 +7546,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -9042,13 +7556,40 @@ paths: properties: html: type: string - "/api/flags/{flagId}": + "401": + description: "" + content: + application/json: + schema: + title: not-authorized + type: undefined + text/plain: + schema: + title: not-authorized + type: undefined + "404": + description: "" + content: + application/json: + schema: + type: string + example: Not Found + text/plain: + schema: + type: string + example: Not Found + "/api/topic/{topic_id}/{slug?}": get: tags: - - flags - summary: /api/flags/{flagId} + - topics + summary: /api/topic/{topic_id}/{slug?} parameters: - - name: flagId + - name: topic_id + in: path + required: true + schema: + type: string + - name: slug? in: path required: true schema: @@ -9061,275 +7602,484 @@ paths: schema: type: object properties: - state: - type: string - flagId: + tid: type: number - type: - type: string - targetId: + description: A topic identifier + uid: + type: number + description: A user identifier + cid: + type: number + description: A category identifier + mainPid: + type: number + description: The post id of the first post in this topic (also called the "original post") + title: type: string - description: + slug: type: string - uid: + timestamp: type: number - datetime: + lastposttime: type: number - datetimeISO: + postcount: + type: number + viewcount: + type: number + teaserPid: + type: number + upvotes: + type: number + downvotes: + type: number + deleted: + type: number + locked: + type: number + pinned: + type: number + description: Whether or not this particular topic is pinned to the top of the category + titleRaw: type: string - target_readable: + timestampISO: type: string - target: - type: object - properties: {} - history: + description: An ISO 8601 formatted date string (complementing `timestamp`) + lastposttimeISO: + type: string + votes: + type: number + tags: + type: array + items: + type: object + properties: + value: + type: string + valueEscaped: + type: string + color: + type: string + bgColor: + type: string + score: + type: number + posts: type: array items: type: object properties: + editor: + properties: + uid: + type: number + description: A user identifier + username: + type: string + description: A friendly name for a given user account + userslug: + type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) + nullable: true + type: object + votes: + type: number + timestamp: + type: number + tid: + type: number + description: A topic identifier + content: + type: string + pid: + type: number + edited: + type: number uid: type: number - fields: + description: A user identifier + upvotes: + type: number + bookmarks: + type: number + replies: type: object properties: - state: + hasMore: + type: boolean + users: + type: array + items: + type: object + properties: + uid: + type: number + description: A user identifier + username: + type: string + description: A friendly name for a given user account + userslug: + type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) + picture: + nullable: true + icon:text: + type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar + icon:bgColor: + type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" + administrator: + type: boolean + text: type: string - datetime: + count: + type: number + timestampISO: + type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) + deleted: type: number - datetimeISO: + downvotes: + type: number + deleterUid: + type: number + timestampISO: + type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) + editedISO: type: string + index: + type: number user: type: object properties: + uid: + type: number + description: A user identifier username: type: string + description: A friendly name for a given user account + fullname: + type: string userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) + reputation: + type: number + postcount: + type: number + topiccount: + type: number picture: nullable: true - uid: + type: string + signature: + type: string + banned: + type: number + banned:expire: + type: number + status: + type: string + lastonline: type: number + groupTitle: + nullable: true + type: string + groupTitleArray: + type: array + items: + type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string - notes: - type: array - items: {} - reporter: + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" + lastonlineISO: + type: string + banned_until: + type: number + banned_until_readable: + type: string + selectedGroups: + type: array + items: + type: object + properties: + name: + type: string + slug: + type: string + labelColor: + type: string + textColor: + type: string + icon: + type: string + userTitle: + type: string + custom_profile_info: + type: array + items: {} + bookmarked: + type: boolean + upvoted: + type: boolean + downvoted: + type: boolean + selfPost: + type: boolean + display_edit_tools: + type: boolean + display_delete_tools: + type: boolean + display_moderator_tools: + type: boolean + display_move_tools: + type: boolean + display_post_menu: + type: boolean + toPid: + type: number + parent: + type: object + properties: + username: + type: string + description: A friendly name for a given user account + category: type: object properties: - username: + link: type: string - userslug: + class: type: string - picture: - nullable: true - reputation: + icon: + type: string + description: + type: string + order: + type: number + topic_count: + type: number + description: The number of topics in the category + name: + type: string + cid: + type: number + description: A category identifier + post_count: + type: number + description: The number of posts in the category + numRecentReplies: + type: number + bgColor: + type: string + slug: + type: string + color: + type: string + disabled: + type: number + descriptionParsed: + type: string + isSection: type: number - uid: + parentCid: type: number - icon:text: - type: string - icon:bgColor: - type: string - type_path: - type: string - assignees: + description: The category identifier for the category that is the immediate ancestor of the current category + totalPostCount: + type: number + description: The number of posts in the category + totalTopicCount: + type: number + description: The number of topics in the category + tagWhitelist: + type: array + items: {} + thread_tools: type: array items: type: object properties: - uid: - type: number - username: - type: string - userslug: - type: string - email: - type: string - email:confirmed: - type: number - joindate: - type: number - lastonline: - type: number - picture: - nullable: true - type: string - fullname: - nullable: true - type: string - location: - nullable: true - type: string - birthday: - nullable: true - type: string - website: - nullable: true - type: string - aboutme: - nullable: true - type: string - signature: - nullable: true - type: string - uploadedpicture: - nullable: true - type: string - profileviews: - type: number - reputation: - type: number - postcount: - type: number - topiccount: - type: number - lastposttime: - type: number - banned: - type: number - banned:expire: - type: number - status: - type: string - flags: - nullable: true - type: number - followerCount: - type: number - followingCount: - type: number - cover:url: - nullable: true - type: string - cover:position: - nullable: true - type: string - groupTitle: - type: string - fbid: - nullable: true + class: type: string - gplusid: - oneOf: - - type: string - - type: number - nullable: true - githubid: - nullable: true + title: type: string - twid: - nullable: true + icon: type: string - groupTitleArray: - type: array - items: - type: string - icon:text: + isFollowing: + type: boolean + isNotFollowing: + type: boolean + isIgnoring: + type: boolean + bookmark: + nullable: true + postSharing: + type: array + items: + type: object + properties: + id: type: string - icon:bgColor: + name: type: string - joindateISO: + class: type: string - lastonlineISO: + activated: + type: boolean + deleter: + nullable: true + merger: + nullable: true + related: + type: array + items: {} + unreplied: + type: boolean + icons: + type: array + items: {} + breadcrumbs: + type: array + items: + type: object + properties: + text: type: string - banned_until: - type: number - banned_until_readable: + url: type: string - required: - - uid - - username - - userslug - - email - - email:confirmed - - joindate - - lastonline - - picture - - fullname - - location - - birthday - - website - - aboutme - - signature - - uploadedpicture - - profileviews - - reputation - - postcount - - topiccount - - lastposttime - - banned - - banned:expire - - status - - flags - - followerCount - - followingCount - - cover:url - - cover:position - - groupTitle - - fbid - - gplusid - - githubid - - twid - - groupTitleArray - - icon:text - - icon:bgColor - - joindateISO - - lastonlineISO - - banned_until - - banned_until_readable - type_bool: + privileges: type: object properties: - post: + topics:reply: type: boolean - user: + topics:read: type: boolean - empty: + topics:tag: type: boolean - title: + topics:delete: + type: boolean + posts:edit: + type: boolean + posts:history: + type: boolean + posts:delete: + type: boolean + posts:view_deleted: + type: boolean + read: + type: boolean + purge: + type: boolean + view_thread_tools: + type: boolean + editable: + type: boolean + deletable: + type: boolean + view_deleted: + type: boolean + isAdminOrMod: + type: boolean + disabled: + type: number + tid: + type: string + uid: + type: number + description: A user identifier + topicStaleDays: + type: number + reputation:disabled: + type: number + downvote:disabled: + type: number + feeds:disableRSS: + type: number + bookmarkThreshold: + type: number + postEditDuration: + type: number + postDeleteDuration: + type: number + scrollToMyPost: + type: boolean + allowMultipleBadges: + type: boolean + privateUploads: + type: boolean + rssFeedUrl: type: string - categories: + postIndex: + type: number + pagination: type: object properties: - "1": - type: string - "2": - type: string - "3": - type: string - "4": - type: string - "5": - type: string - "6": - type: string - "7": - type: string - "10": - type: string - "13": - type: string - "14": - type: string - "15": - type: string - "16": - type: string - "17": - type: string - "18": - type: string - "19": - type: string - "21": - type: string - "22": - type: string - "26": - type: string + rel: + type: array + items: + type: object + properties: + rel: + type: string + href: + type: string + pages: + type: array + items: + type: object + properties: + page: + type: number + active: + type: boolean + qs: + type: string + currentPage: + type: number + pageCount: + type: number + prev: + type: object + properties: + page: + type: number + active: + type: boolean + qs: + type: string + next: + type: object + properties: + page: + type: number + active: + type: boolean + qs: + type: string + first: + type: object + properties: + page: + type: number + active: + type: boolean + qs: + type: string + last: + type: object + properties: + page: + type: number + active: + type: boolean + qs: + type: string loggedIn: type: boolean relative_path: @@ -9339,12 +8089,30 @@ paths: properties: name: type: string - flags/detail: + topic: type: boolean url: type: string bodyClass: type: string + loggedInUser: + type: object + properties: + uid: + type: number + description: A user identifier + username: + type: string + description: A friendly name for a given user account + picture: + type: string + icon:text: + type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar + icon:bgColor: + type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" _header: type: object properties: @@ -9364,11 +8132,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -9384,11 +8147,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -9399,191 +8157,452 @@ paths: properties: html: type: string - /api/post-queue: - get: - tags: - - admin - summary: /api/post-queue - responses: - "200": - description: "" - content: - application/json: + text/plain: schema: type: object properties: + tid: + type: number + description: A topic identifier + uid: + type: number + description: A user identifier + cid: + type: number + description: A category identifier + mainPid: + type: number + description: The post id of the first post in this topic (also called the "original post") title: type: string + slug: + type: string + timestamp: + type: number + lastposttime: + type: number + postcount: + type: number + viewcount: + type: number + teaserPid: + type: number + upvotes: + type: number + downvotes: + type: number + deleted: + type: number + locked: + type: number + pinned: + type: number + description: Whether or not this particular topic is pinned to the top of the category + titleRaw: + type: string + timestampISO: + type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) + lastposttimeISO: + type: string + votes: + type: number + tags: + type: array + items: + type: object + properties: + value: + type: string + valueEscaped: + type: string + color: + type: string + bgColor: + type: string + score: + type: number posts: type: array items: type: object properties: - id: + editor: + properties: + uid: + type: number + description: A user identifier + username: + type: string + description: A friendly name for a given user account + userslug: + type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) + nullable: true + type: object + votes: + type: number + timestamp: + type: number + tid: + type: number + description: A topic identifier + content: type: string + pid: + type: number + edited: + type: number uid: type: number - type: - type: string - data: + description: A user identifier + upvotes: + type: number + bookmarks: + type: number + replies: type: object properties: - title: - type: string - content: - type: string - thumb: - type: string - cid: - oneOf: - - type: number - - type: string - tags: + hasMore: + type: boolean + users: type: array - items: {} - uid: - type: number - req: - type: object - properties: - uid: - type: number - ip: - type: string - host: - type: string - protocol: - type: string - secure: - type: boolean - url: - type: string - path: - type: string - headers: - type: object - properties: - x-real-ip: - type: string - x-forwarded-for: - type: string - x-forwarded-proto: - type: string - host: - type: string - x-nginx-proxy: - type: string - connection: - type: string - accept: - type: string - user-agent: - type: string - sec-fetch-site: - type: string - sec-fetch-mode: - type: string - referer: - type: string - accept-encoding: - type: string - accept-language: - type: string - cookie: - type: string - timestamp: + items: + type: object + properties: + uid: + type: number + description: A user identifier + username: + type: string + description: A friendly name for a given user account + userslug: + type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) + picture: + nullable: true + icon:text: + type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar + icon:bgColor: + type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" + administrator: + type: boolean + text: + type: string + count: type: number - fromQueue: - type: boolean timestampISO: type: string - rawContent: - type: string - tid: - type: number - toPid: - nullable: true + description: An ISO 8601 formatted date string (complementing `timestamp`) + deleted: + type: number + downvotes: + type: number + deleterUid: + type: number + timestampISO: + type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) + editedISO: + type: string + index: + type: number user: type: object properties: + uid: + type: number + description: A user identifier username: type: string + description: A friendly name for a given user account + fullname: + type: string userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) + reputation: + type: number + postcount: + type: number + topiccount: + type: number picture: nullable: true type: string - uid: + signature: + type: string + banned: + type: number + banned:expire: + type: number + status: + type: string + lastonline: type: number + groupTitle: + nullable: true + type: string + groupTitleArray: + type: array + items: + type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string - topic: + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" + lastonlineISO: + type: string + banned_until: + type: number + banned_until_readable: + type: string + selectedGroups: + type: array + items: + type: object + properties: + name: + type: string + slug: + type: string + labelColor: + type: string + textColor: + type: string + icon: + type: string + userTitle: + type: string + custom_profile_info: + type: array + items: {} + bookmarked: + type: boolean + upvoted: + type: boolean + downvoted: + type: boolean + selfPost: + type: boolean + display_edit_tools: + type: boolean + display_delete_tools: + type: boolean + display_moderator_tools: + type: boolean + display_move_tools: + type: boolean + display_post_menu: + type: boolean + toPid: + type: number + parent: + type: object + properties: + username: + type: string + description: A friendly name for a given user account + category: + type: object + properties: + link: + type: string + class: + type: string + icon: + type: string + description: + type: string + order: + type: number + topic_count: + type: number + description: The number of topics in the category + name: + type: string + cid: + type: number + description: A category identifier + post_count: + type: number + description: The number of posts in the category + numRecentReplies: + type: number + bgColor: + type: string + slug: + type: string + color: + type: string + disabled: + type: number + descriptionParsed: + type: string + isSection: + type: number + parentCid: + type: number + description: The category identifier for the category that is the immediate ancestor of the current category + totalPostCount: + type: number + description: The number of posts in the category + totalTopicCount: + type: number + description: The number of topics in the category + tagWhitelist: + type: array + items: {} + thread_tools: + type: array + items: + type: object + properties: + class: + type: string + title: + type: string + icon: + type: string + isFollowing: + type: boolean + isNotFollowing: + type: boolean + isIgnoring: + type: boolean + bookmark: + nullable: true + postSharing: + type: array + items: + type: object + properties: + id: + type: string + name: + type: string + class: + type: string + activated: + type: boolean + deleter: + nullable: true + merger: + nullable: true + related: + type: array + items: {} + unreplied: + type: boolean + icons: + type: array + items: {} + breadcrumbs: + type: array + items: + type: object + properties: + text: + type: string + url: + type: string + privileges: + type: object + properties: + topics:reply: + type: boolean + topics:read: + type: boolean + topics:tag: + type: boolean + topics:delete: + type: boolean + posts:edit: + type: boolean + posts:history: + type: boolean + posts:delete: + type: boolean + posts:view_deleted: + type: boolean + read: + type: boolean + purge: + type: boolean + view_thread_tools: + type: boolean + editable: + type: boolean + deletable: + type: boolean + view_deleted: + type: boolean + isAdminOrMod: + type: boolean + disabled: + type: number + tid: + type: string + uid: + type: number + description: A user identifier + topicStaleDays: + type: number + reputation:disabled: + type: number + downvote:disabled: + type: number + feeds:disableRSS: + type: number + bookmarkThreshold: + type: number + postEditDuration: + type: number + postDeleteDuration: + type: number + scrollToMyPost: + type: boolean + allowMultipleBadges: + type: boolean + privateUploads: + type: boolean + rssFeedUrl: + type: string + postIndex: + type: number + pagination: + type: object + properties: + rel: + type: array + items: type: object properties: - cid: - oneOf: - - type: number - - type: string - title: + rel: type: string - titleRaw: + href: type: string - category: + pages: + type: array + items: type: object properties: - cid: - type: number - name: - type: string - description: - type: string - icon: - type: string - bgColor: - type: string - color: - type: string - slug: - type: string - parentCid: - type: number - topic_count: - type: number - post_count: - type: number - disabled: - type: number - order: - type: number - link: - type: string - numRecentReplies: + page: type: number - class: - type: string - imageClass: - type: string - descriptionParsed: + active: + type: boolean + qs: type: string - isSection: - type: number - totalPostCount: - type: number - totalTopicCount: - type: number - required: - - id - - uid - - type - - data - - user - - topic - - category - pagination: - type: object - properties: + currentPage: + type: number + pageCount: + type: number prev: type: object properties: @@ -9591,6 +8610,8 @@ paths: type: number active: type: boolean + qs: + type: string next: type: object properties: @@ -9598,6 +8619,8 @@ paths: type: number active: type: boolean + qs: + type: string first: type: object properties: @@ -9605,6 +8628,8 @@ paths: type: number active: type: boolean + qs: + type: string last: type: object properties: @@ -9612,16 +8637,8 @@ paths: type: number active: type: boolean - rel: - type: array - items: {} - pages: - type: array - items: {} - currentPage: - type: number - pageCount: - type: number + qs: + type: string loggedIn: type: boolean relative_path: @@ -9631,12 +8648,30 @@ paths: properties: name: type: string - admin/manage/post-queue: + topic: type: boolean url: type: string bodyClass: type: string + loggedInUser: + type: object + properties: + uid: + type: number + description: A user identifier + username: + type: string + description: A friendly name for a given user account + picture: + type: string + icon:text: + type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar + icon:bgColor: + type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" _header: type: object properties: @@ -9656,11 +8691,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -9676,11 +8706,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -9691,29 +8716,90 @@ paths: properties: html: type: string - /api/ip-blacklist: - get: - tags: - - admin - summary: /api/ip-blacklist - responses: {} - /api/registration-queue: - get: - tags: - - admin - summary: /api/registration-queue - responses: {} - "/api/tags/{tag}": + "401": + description: "" + content: + application/json: + schema: + title: not-authorized + type: undefined + text/plain: + schema: + title: not-authorized + type: undefined + "403": + description: "" + content: + application/json: + schema: + type: object + properties: + path: + type: string + loggedIn: + type: boolean + title: + type: string + text/plain: + schema: + type: object + properties: + path: + type: string + loggedIn: + type: boolean + title: + type: string + "404": + description: "" + content: + application/json: + schema: + type: string + example: Not Found + text/plain: + schema: + type: string + example: Not Found + "/api/post/{pid}": get: tags: - - tags - summary: /api/tags/{tag} + - shorthand + summary: /api/post/{pid} parameters: - - name: tag + - name: pid in: path required: true schema: type: string + responses: + "200": + description: "" + content: + application/json: + schema: + title: /topic/9995/cannot-post-or-reply-to-posts-in-nodebb-mobile-version/14?_=1574522486637&lang=en-US + type: undefined + text/plain: + schema: + title: /topic/9995/cannot-post-or-reply-to-posts-in-nodebb-mobile-version/14?_=1574522486637&lang=en-US + type: undefined + "404": + description: "" + content: + application/json: + schema: + type: string + example: Not Found + text/plain: + schema: + type: string + example: Not Found + /api/flags: + get: + tags: + - flags + summary: /api/flags responses: "200": description: "" @@ -9722,266 +8808,106 @@ paths: schema: type: object properties: - topics: + flags: type: array items: type: object properties: - tid: - type: number - uid: - type: number - cid: - type: number - mainPid: - type: number - title: - type: string - slug: - type: string - timestamp: - type: number - lastposttime: - type: number - postcount: - type: number - viewcount: - type: number - teaserPid: - oneOf: - - type: number - - type: string - deleted: - type: number - locked: - type: number - pinned: - type: number - upvotes: - type: number - downvotes: - type: number - titleRaw: - type: string - timestampISO: - type: string - lastposttimeISO: + state: type: string - votes: + flagId: type: number - category: - type: object - properties: - cid: - type: number - name: - type: string - slug: - type: string - icon: - type: string - image: - nullable: true - imageClass: - nullable: true - type: string - bgColor: - type: string - color: - type: string - disabled: - type: number - user: + type: + type: string + targetId: + oneOf: + - type: string + - type: number + description: + type: string + uid: + type: number + description: A user identifier + datetime: + type: number + reporter: type: object properties: - uid: - type: number username: type: string - userslug: - type: string - reputation: - type: number - postcount: - type: number + description: A friendly name for a given user account picture: nullable: true type: string - signature: - nullable: true - type: string - banned: - type: number - status: - type: string - icon:text: - type: string icon:bgColor: type: string - banned_until_readable: - type: string - fullname: - type: string - teaser: - type: object - properties: - pid: - type: number - uid: - type: number - timestamp: - type: number - tid: - type: number - content: - type: string - timestampISO: + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" + icon:text: type: string - user: - type: object - properties: - uid: - type: number - username: - type: string - userslug: - type: string - picture: - nullable: true - type: string - icon:text: - type: string - icon:bgColor: - type: string - index: - type: number - tags: - type: array - items: - type: object - properties: - value: - type: string - valueEscaped: - type: string - color: - type: string - bgColor: - type: string - score: - type: number - required: - - value - - valueEscaped - - color - - bgColor - - score - isOwner: - type: boolean - ignored: - type: boolean - unread: - type: boolean - bookmark: - nullable: true - unreplied: - type: boolean - icons: - type: array - items: {} - index: - type: number - thumb: + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar + labelClass: type: string - isQuestion: - nullable: true - type: number - isSolved: - type: number - required: - - tid - - uid - - cid - - mainPid - - title - - slug - - timestamp - - lastposttime - - postcount - - viewcount - - teaserPid - - deleted - - locked - - pinned - - upvotes - - downvotes - - titleRaw - - timestampISO - - lastposttimeISO - - votes - - category - - user - - teaser - - tags - - isOwner - - ignored - - unread - - bookmark - - unreplied - - icons - - index - - thumb - - isQuestion - - isSolved - tag: - type: string - breadcrumbs: - type: array - items: - type: object - properties: - text: + target_readable: type: string - url: + datetimeISO: type: string - required: - - text - - url - title: - type: string - categories: + assignee: + type: string + analytics: type: array items: - type: object - properties: - cid: - type: number - name: - type: string - level: - type: string - icon: - type: string - parentCid: - type: number - color: - type: string - bgColor: - type: string - selected: - type: boolean - imageClass: - type: string - required: - - cid - - name - - level - - icon - - parentCid - - color - - bgColor - - selected - - imageClass + type: number + categories: + type: object + properties: + "1": + type: string + "2": + type: string + "3": + type: string + "4": + type: string + "5": + type: string + "6": + type: string + "7": + type: string + "10": + type: string + "13": + type: string + "14": + type: string + "15": + type: string + "16": + type: string + "17": + type: string + "18": + type: string + "19": + type: string + "21": + type: string + "22": + type: string + "26": + type: string + hasFilter: + type: boolean + filters: + type: object + properties: + page: + type: number + perPage: + type: number + title: + type: string pagination: type: object properties: @@ -10007,10 +8933,6 @@ paths: type: string separator: type: boolean - required: - - page - - active - - qs currentPage: type: number pageCount: @@ -10051,8 +8973,6 @@ paths: type: boolean qs: type: string - rssFeedUrl: - type: string loggedIn: type: boolean relative_path: @@ -10062,7 +8982,7 @@ paths: properties: name: type: string - tag: + flags/list: type: boolean url: type: string @@ -10087,11 +9007,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -10107,11 +9022,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -10120,61 +9030,278 @@ paths: items: type: object properties: - html: + html: + type: string + "/api/flags/{flagId}": + get: + tags: + - flags + summary: /api/flags/{flagId} + parameters: + - name: flagId + in: path + required: true + schema: + type: string + responses: + "200": + description: "" + content: + application/json: + schema: + type: object + properties: + state: + type: string + flagId: + type: number + type: + type: string + targetId: + type: string + description: + type: string + uid: + type: number + description: A user identifier + datetime: + type: number + datetimeISO: + type: string + target_readable: + type: string + target: + type: object + properties: {} + history: + type: array + items: + type: object + properties: + uid: + type: number + description: A user identifier + fields: + type: object + properties: + state: + type: string + datetime: + type: number + datetimeISO: + type: string + user: + type: object + properties: + username: type: string - "304": - description: "" - /api/tags: - get: - tags: - - tags - summary: /api/tags - responses: - "200": - description: "" - content: - application/json: - schema: - type: object - properties: - tags: + description: A friendly name for a given user account + userslug: + type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) + picture: + nullable: true + uid: + type: number + description: A user identifier + icon:text: + type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar + icon:bgColor: + type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" + notes: + type: array + items: {} + reporter: + type: object + properties: + username: + type: string + description: A friendly name for a given user account + userslug: + type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) + picture: + nullable: true + reputation: + type: number + uid: + type: number + description: A user identifier + icon:text: + type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar + icon:bgColor: + type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" + type_path: + type: string + assignees: type: array items: type: object properties: - value: + uid: + type: number + description: A user identifier + username: type: string - score: + description: A friendly name for a given user account + userslug: + type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) + email: + type: string + description: Email address associated with the user account + email:confirmed: type: number - valueEscaped: + description: Whether the user has confirmed their email address or not + joindate: + type: number + description: A UNIX timestamp representing the moment the user's account was created + lastonline: + type: number + picture: + nullable: true type: string - color: + fullname: + nullable: true type: string - bgColor: + location: + nullable: true type: string - required: - - value - - score - - valueEscaped - - color - - bgColor - displayTagSearch: - type: boolean - nextStart: - type: number - breadcrumbs: - type: array - items: - type: object - properties: - text: + birthday: + nullable: true type: string - url: + website: + nullable: true + type: string + aboutme: + nullable: true + type: string + signature: + nullable: true + type: string + uploadedpicture: + nullable: true + type: string + profileviews: + type: number + reputation: + type: number + postcount: + type: number + topiccount: + type: number + lastposttime: + type: number + banned: + type: number + banned:expire: + type: number + status: + type: string + flags: + nullable: true + type: number + followerCount: + type: number + followingCount: + type: number + cover:url: + nullable: true + type: string + cover:position: + nullable: true + type: string + groupTitle: + type: string + fbid: + nullable: true + type: string + gplusid: + oneOf: + - type: string + - type: number + nullable: true + githubid: + nullable: true + type: string + twid: + nullable: true + type: string + groupTitleArray: + type: array + items: + type: string + icon:text: + type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar + icon:bgColor: + type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" + joindateISO: + type: string + lastonlineISO: + type: string + banned_until: + type: number + banned_until_readable: type: string - required: - - text + type_bool: + type: object + properties: + post: + type: boolean + user: + type: boolean + empty: + type: boolean title: type: string + categories: + type: object + properties: + "1": + type: string + "2": + type: string + "3": + type: string + "4": + type: string + "5": + type: string + "6": + type: string + "7": + type: string + "10": + type: string + "13": + type: string + "14": + type: string + "15": + type: string + "16": + type: string + "17": + type: string + "18": + type: string + "19": + type: string + "21": + type: string + "22": + type: string + "26": + type: string loggedIn: type: boolean relative_path: @@ -10184,7 +9311,7 @@ paths: properties: name: type: string - tags: + flags/detail: type: boolean url: type: string @@ -10209,11 +9336,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -10229,11 +9351,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -10244,358 +9361,238 @@ paths: properties: html: type: string - /api/categories: - get: - tags: - - categories - summary: /api/categories - responses: - "200": - description: "" - content: - application/json: - schema: - type: object - properties: - title: - type: string - categories: - type: array - items: - type: object - properties: - cid: - type: number - name: - type: string - description: - type: string - icon: - type: string - slug: - type: string - topic_count: - type: number - order: - type: number - bgColor: - type: string - link: - type: string - class: - type: string - numRecentReplies: - type: number - color: - type: string - post_count: - type: number - descriptionParsed: + /api/post-queue: + get: + tags: + - admin + summary: /api/post-queue + responses: + "200": + description: "" + content: + application/json: + schema: + type: object + properties: + title: + type: string + posts: + type: array + items: + type: object + properties: + id: type: string - parentCid: - type: number - disabled: - type: number - isSection: - type: number - totalPostCount: - type: number - totalTopicCount: + uid: type: number - tagWhitelist: - type: array - items: {} - unread-class: + description: A user identifier + type: type: string - children: - type: array - items: - type: object - properties: - cid: - type: number - name: - type: string - description: - type: string - icon: - type: string - slug: - type: string - topic_count: - type: number - order: - type: number - bgColor: - type: string - link: - type: string - class: - type: string - numRecentReplies: - type: number - color: - type: string - post_count: - type: number - parentCid: - type: number - disabled: - type: number - isSection: - type: number - totalPostCount: - type: number - totalTopicCount: - type: number - descriptionParsed: - type: string - tagWhitelist: - type: array - items: {} - unread-class: - type: string - children: - type: array - items: {} - parent: - type: object - properties: - link: - type: string - class: - type: string - icon: - type: string - description: - type: string - order: - type: number - topic_count: - type: number - name: - type: string - cid: - type: number - post_count: - type: number - numRecentReplies: - type: number - bgColor: - type: string - slug: - type: string - color: - type: string - disabled: - type: number - descriptionParsed: - type: string - isSection: - type: number - parentCid: - type: number - totalPostCount: - type: number - totalTopicCount: - type: number - tagWhitelist: - type: array - items: {} - unread-class: - type: string - imageClass: - type: string - posts: - type: array - items: - type: object - properties: - pid: - type: number - timestamp: - type: number - content: - type: string - timestampISO: - type: string - user: - type: object - properties: - uid: - type: number - username: - type: string - userslug: - type: string - picture: - nullable: true - type: string - icon:text: - type: string - icon:bgColor: - type: string - index: - type: number - cid: - type: number - parentCid: - type: number - topic: - type: object - properties: - slug: - type: string - title: - type: string - required: - - pid - - timestamp - - content - - timestampISO - - user - - index - - cid - - parentCid - - topic - imageClass: - type: string - timesClicked: - type: number - required: - - cid - - name - - description - - icon - - bgColor - - color - - slug - - topic_count - - disabled - - order - - link - - numRecentReplies - - class - - post_count - - parentCid - - isSection - - totalPostCount - - totalTopicCount - - descriptionParsed - - tagWhitelist - - unread-class - - children - - parent - - posts - - imageClass - - timesClicked - posts: - type: array - items: - type: object - properties: - pid: - type: number - timestamp: - type: number - content: - type: string - timestampISO: - type: string - user: - type: object - properties: - uid: - type: number - username: - type: string - userslug: - type: string - picture: - nullable: true - type: string - icon:text: - type: string - icon:bgColor: - type: string - index: - type: number - cid: - type: number - parentCid: - type: number - topic: - type: object - properties: - slug: - type: string - title: - type: string - required: - - pid - - timestamp - - content - - timestampISO - - user - - index - - cid - - parentCid - - topic - teaser: + data: + type: object + properties: + title: + type: string + content: + type: string + thumb: + type: string + cid: + oneOf: + - type: number + - type: string + tags: + type: array + items: {} + uid: + type: number + description: A user identifier + req: + type: object + properties: + uid: + type: number + description: A user identifier + ip: + type: string + host: + type: string + protocol: + type: string + secure: + type: boolean + url: + type: string + path: + type: string + headers: + type: object + properties: + x-real-ip: + type: string + x-forwarded-for: + type: string + x-forwarded-proto: + type: string + host: + type: string + x-nginx-proxy: + type: string + connection: + type: string + accept: + type: string + user-agent: + type: string + sec-fetch-site: + type: string + sec-fetch-mode: + type: string + referer: + type: string + accept-encoding: + type: string + accept-language: + type: string + cookie: + type: string + timestamp: + type: number + fromQueue: + type: boolean + timestampISO: + type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) + rawContent: + type: string + tid: + type: number + description: A topic identifier + toPid: + nullable: true + user: type: object properties: - url: + username: type: string - timestampISO: + description: A friendly name for a given user account + userslug: type: string - pid: + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) + picture: + nullable: true + type: string + uid: type: number - topic: - type: object - properties: - slug: - type: string - title: - type: string - imageClass: - type: string - required: - - cid - - name - - description - - icon - - slug - - topic_count - - disabled - - order - - bgColor - - link - - class - - numRecentReplies - - color - - post_count - - parentCid - - descriptionParsed - - isSection - - totalPostCount - - totalTopicCount - - tagWhitelist - - unread-class - - children - - posts - - teaser - - imageClass - breadcrumbs: - type: array - items: - type: object - properties: - text: - type: string - url: - type: string - required: - - text + description: A user identifier + icon:text: + type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar + icon:bgColor: + type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" + topic: + type: object + properties: + cid: + oneOf: + - type: number + - type: string + title: + type: string + titleRaw: + type: string + category: + type: object + properties: + cid: + type: number + description: A category identifier + name: + type: string + description: + type: string + icon: + type: string + bgColor: + type: string + color: + type: string + slug: + type: string + parentCid: + type: number + description: The category identifier for the category that is the immediate ancestor of the current category + topic_count: + type: number + description: The number of topics in the category + post_count: + type: number + description: The number of posts in the category + disabled: + type: number + order: + type: number + link: + type: string + numRecentReplies: + type: number + class: + type: string + imageClass: + type: string + descriptionParsed: + type: string + isSection: + type: number + totalPostCount: + type: number + description: The number of posts in the category + totalTopicCount: + type: number + description: The number of topics in the category + pagination: + type: object + properties: + prev: + type: object + properties: + page: + type: number + active: + type: boolean + next: + type: object + properties: + page: + type: number + active: + type: boolean + first: + type: object + properties: + page: + type: number + active: + type: boolean + last: + type: object + properties: + page: + type: number + active: + type: boolean + rel: + type: array + items: {} + pages: + type: array + items: {} + currentPage: + type: number + pageCount: + type: number loggedIn: type: boolean relative_path: @@ -10605,12 +9602,87 @@ paths: properties: name: type: string - categories: + admin/manage/post-queue: type: boolean url: type: string bodyClass: type: string + _header: + type: object + properties: + tags: + type: object + properties: + meta: + type: array + items: + type: object + properties: + name: + type: string + content: + type: string + noEscape: + type: boolean + property: + type: string + link: + type: array + items: + type: object + properties: + rel: + type: string + type: + type: string + href: + type: string + title: + type: string + sizes: + type: string + widgets: + type: object + properties: + footer: + type: array + items: + type: object + properties: + html: + type: string + /api/ip-blacklist: + get: + tags: + - admin + summary: /api/ip-blacklist + responses: {} + /api/registration-queue: + get: + tags: + - admin + summary: /api/registration-queue + responses: {} + "/api/tags/{tag}": + get: + tags: + - tags + summary: /api/tags/{tag} + parameters: + - name: tag + in: path + required: true + schema: + type: string + responses: + "200": + description: "" + content: + application/json: + schema: + type: object + properties: topics: type: array items: @@ -10618,12 +9690,16 @@ paths: properties: tid: type: number + description: A topic identifier uid: type: number + description: A user identifier cid: type: number + description: A category identifier mainPid: type: number + description: The post id of the first post in this topic (also called the "original post") title: type: string slug: @@ -10632,26 +9708,30 @@ paths: type: number lastposttime: type: number - postcount: - type: number - viewcount: - type: number - teaserPid: - type: number - upvotes: + postcount: type: number - downvotes: + viewcount: type: number + teaserPid: + oneOf: + - type: number + - type: string deleted: type: number locked: type: number pinned: type: number + description: Whether or not this particular topic is pinned to the top of the category + upvotes: + type: number + downvotes: + type: number titleRaw: type: string timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) lastposttimeISO: type: string votes: @@ -10661,6 +9741,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string slug: @@ -10683,12 +9764,13 @@ paths: properties: uid: type: number + description: A user identifier username: type: string - fullname: - type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) reputation: type: number postcount: @@ -10705,10 +9787,15 @@ paths: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" banned_until_readable: type: string + fullname: + type: string teaser: type: object properties: @@ -10716,30 +9803,39 @@ paths: type: number uid: type: number + description: A user identifier timestamp: type: number tid: type: number + description: A topic identifier content: type: string timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) user: type: object properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: nullable: true type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" index: type: number tags: @@ -10757,12 +9853,6 @@ paths: type: string score: type: number - required: - - value - - valueEscaped - - color - - bgColor - - score isOwner: type: boolean ignored: @@ -10782,52 +9872,129 @@ paths: type: string isQuestion: nullable: true - required: - - tid - - uid - - cid - - mainPid - - title - - slug - - timestamp - - lastposttime - - postcount - - viewcount - - upvotes - - downvotes - - teaserPid - - deleted - - locked - - pinned - - titleRaw - - timestampISO - - lastposttimeISO - - votes - - category - - user - - teaser - - tags - - isOwner - - ignored - - unread - - bookmark - - unreplied - - icons - - index - - thumb - recentCards: + type: number + isSolved: + type: number + tag: + type: string + breadcrumbs: + type: array + items: + type: object + properties: + text: + type: string + url: + type: string + title: + type: string + categories: + type: array + items: + type: object + properties: + cid: + type: number + description: A category identifier + name: + type: string + level: + type: string + icon: + type: string + parentCid: + type: number + description: The category identifier for the category that is the immediate ancestor of the current category + color: + type: string + bgColor: + type: string + selected: + type: boolean + imageClass: + type: string + pagination: type: object properties: - title: - type: string - opacity: - type: string - textShadow: - type: string - enableCarousel: + rel: + type: array + items: + type: object + properties: + rel: + type: string + href: + type: string + pages: + type: array + items: + type: object + properties: + page: + type: number + active: + type: boolean + qs: + type: string + separator: + type: boolean + currentPage: type: number - enableCarouselPagination: + pageCount: type: number + prev: + type: object + properties: + page: + type: number + active: + type: boolean + qs: + type: string + next: + type: object + properties: + page: + type: number + active: + type: boolean + qs: + type: string + first: + type: object + properties: + page: + type: number + active: + type: boolean + qs: + type: string + last: + type: object + properties: + page: + type: number + active: + type: boolean + qs: + type: string + rssFeedUrl: + type: string + loggedIn: + type: boolean + relative_path: + type: string + template: + type: object + properties: + name: + type: string + tag: + type: boolean + url: + type: string + bodyClass: + type: string _header: type: object properties: @@ -10847,11 +10014,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -10867,30 +10029,9 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: - sidebar: - type: array - items: - type: object - properties: - html: - type: string - required: - - html - header: - type: array - items: - type: object - properties: - html: - type: string footer: type: array items: @@ -10898,15 +10039,110 @@ paths: properties: html: type: string - motd: + "304": + description: "" + /api/tags: + get: + tags: + - tags + summary: /api/tags + responses: + "200": + description: "" + content: + application/json: + schema: + type: object + properties: + tags: + type: array + items: + type: object + properties: + value: + type: string + score: + type: number + valueEscaped: + type: string + color: + type: string + bgColor: + type: string + displayTagSearch: + type: boolean + nextStart: + type: number + breadcrumbs: + type: array + items: + type: object + properties: + text: + type: string + url: + type: string + title: + type: string + loggedIn: + type: boolean + relative_path: + type: string + template: + type: object + properties: + name: + type: string + tags: + type: boolean + url: + type: string + bodyClass: + type: string + _header: + type: object + properties: + tags: + type: object + properties: + meta: + type: array + items: + type: object + properties: + name: + type: string + content: + type: string + noEscape: + type: boolean + property: + type: string + link: + type: array + items: + type: object + properties: + rel: + type: string + type: + type: string + href: + type: string + title: + type: string + sizes: + type: string + widgets: + type: object + properties: + footer: type: array items: type: object properties: html: type: string - "304": - description: "" /api/popular: get: tags: @@ -10931,10 +10167,13 @@ paths: properties: tid: type: number + description: A topic identifier uid: type: number + description: A user identifier cid: type: number + description: A category identifier title: type: string slug: @@ -10949,10 +10188,12 @@ paths: type: number pinned: type: number + description: Whether or not this particular topic is pinned to the top of the category thumb: type: string mainPid: type: number + description: The post id of the first post in this topic (also called the "original post") teaserPid: oneOf: - type: number @@ -10969,6 +10210,7 @@ paths: type: string timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) lastposttimeISO: type: string votes: @@ -10978,6 +10220,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string slug: @@ -10999,12 +10242,15 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account fullname: type: string userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) reputation: type: number postcount: @@ -11021,8 +10267,11 @@ paths: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" banned_until_readable: type: string teaser: @@ -11032,30 +10281,39 @@ paths: type: number uid: type: number + description: A user identifier timestamp: type: number tid: type: number + description: A topic identifier content: type: string timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) user: type: object properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: nullable: true type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" index: type: number tags: @@ -11073,12 +10331,6 @@ paths: type: string score: type: number - required: - - value - - valueEscaped - - color - - bgColor - - score isOwner: type: boolean ignored: @@ -11094,39 +10346,6 @@ paths: items: {} index: type: number - required: - - tid - - uid - - cid - - mainPid - - title - - slug - - timestamp - - lastposttime - - postcount - - viewcount - - teaserPid - - thumb - - upvotes - - downvotes - - deleted - - locked - - pinned - - titleRaw - - timestampISO - - lastposttimeISO - - votes - - category - - user - - teaser - - tags - - isOwner - - ignored - - unread - - bookmark - - unreplied - - icons - - index tids: type: array items: @@ -11140,6 +10359,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string level: @@ -11148,6 +10368,7 @@ paths: type: string parentCid: type: number + description: The category identifier for the category that is the immediate ancestor of the current category color: type: string bgColor: @@ -11156,16 +10377,6 @@ paths: type: boolean imageClass: type: string - required: - - cid - - name - - level - - icon - - parentCid - - color - - bgColor - - selected - - imageClass allCategoriesUrl: type: string selectedCids: @@ -11190,11 +10401,6 @@ paths: type: boolean filter: type: string - required: - - name - - url - - selected - - filter selectedFilter: type: object properties: @@ -11219,11 +10425,6 @@ paths: type: boolean term: type: string - required: - - name - - url - - selected - - term selectedTerm: type: object properties: @@ -11260,10 +10461,6 @@ paths: type: string separator: type: boolean - required: - - page - - active - - qs currentPage: type: number pageCount: @@ -11313,8 +10510,6 @@ paths: type: string url: type: string - required: - - text loggedIn: type: boolean relative_path: @@ -11349,11 +10544,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -11369,11 +10559,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -11408,12 +10593,16 @@ paths: properties: tid: type: number + description: A topic identifier uid: type: number + description: A user identifier cid: type: number + description: A category identifier mainPid: type: number + description: The post id of the first post in this topic (also called the "original post") title: type: string slug: @@ -11438,10 +10627,12 @@ paths: type: number pinned: type: number + description: Whether or not this particular topic is pinned to the top of the category titleRaw: type: string timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) lastposttimeISO: type: string votes: @@ -11451,6 +10642,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string slug: @@ -11473,12 +10665,15 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account fullname: type: string userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) reputation: type: number postcount: @@ -11495,8 +10690,11 @@ paths: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" banned_until_readable: type: string teaser: @@ -11506,30 +10704,39 @@ paths: type: number uid: type: number + description: A user identifier timestamp: type: number tid: type: number + description: A topic identifier content: type: string timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) user: type: object properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: nullable: true type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" index: type: number tags: @@ -11547,12 +10754,6 @@ paths: type: string score: type: number - required: - - value - - valueEscaped - - color - - bgColor - - score isOwner: type: boolean ignored: @@ -11572,39 +10773,6 @@ paths: type: string isQuestion: nullable: true - required: - - tid - - uid - - cid - - mainPid - - title - - slug - - timestamp - - lastposttime - - postcount - - viewcount - - upvotes - - downvotes - - teaserPid - - deleted - - locked - - pinned - - titleRaw - - timestampISO - - lastposttimeISO - - votes - - category - - user - - teaser - - tags - - isOwner - - ignored - - unread - - bookmark - - unreplied - - icons - - index - - thumb tids: type: array items: @@ -11618,6 +10786,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string level: @@ -11626,6 +10795,7 @@ paths: type: string parentCid: type: number + description: The category identifier for the category that is the immediate ancestor of the current category color: type: string bgColor: @@ -11634,16 +10804,6 @@ paths: type: boolean imageClass: type: string - required: - - cid - - name - - level - - icon - - parentCid - - color - - bgColor - - selected - - imageClass allCategoriesUrl: type: string selectedCids: @@ -11668,11 +10828,6 @@ paths: type: boolean filter: type: string - required: - - name - - url - - selected - - filter selectedFilter: type: object properties: @@ -11697,11 +10852,6 @@ paths: type: boolean term: type: string - required: - - name - - url - - selected - - term selectedTerm: type: object properties: @@ -11738,10 +10888,6 @@ paths: type: string separator: type: boolean - required: - - page - - active - - qs currentPage: type: number pageCount: @@ -11791,8 +10937,6 @@ paths: type: string url: type: string - required: - - text loggedIn: type: boolean relative_path: @@ -11827,11 +10971,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -11847,11 +10986,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -11886,12 +11020,16 @@ paths: properties: tid: type: number + description: A topic identifier uid: type: number + description: A user identifier cid: type: number + description: A category identifier mainPid: type: number + description: The post id of the first post in this topic (also called the "original post") title: type: string slug: @@ -11916,10 +11054,12 @@ paths: type: number pinned: type: number + description: Whether or not this particular topic is pinned to the top of the category titleRaw: type: string timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) lastposttimeISO: type: string votes: @@ -11929,6 +11069,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string slug: @@ -11950,10 +11091,13 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) reputation: type: number postcount: @@ -11970,8 +11114,11 @@ paths: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" banned_until_readable: type: string fullname: @@ -11983,30 +11130,39 @@ paths: type: number uid: type: number + description: A user identifier timestamp: type: number tid: type: number + description: A topic identifier content: type: string timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) user: type: object properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: nullable: true type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" index: type: number tags: @@ -12024,12 +11180,6 @@ paths: type: string score: type: number - required: - - value - - valueEscaped - - color - - bgColor - - score isOwner: type: boolean ignored: @@ -12047,37 +11197,6 @@ paths: type: number thumb: type: string - required: - - tid - - uid - - cid - - title - - slug - - timestamp - - lastposttime - - postcount - - viewcount - - mainPid - - upvotes - - downvotes - - deleted - - locked - - pinned - - titleRaw - - timestampISO - - lastposttimeISO - - votes - - category - - user - - teaser - - tags - - isOwner - - ignored - - unread - - bookmark - - unreplied - - icons - - index tids: type: array items: @@ -12091,6 +11210,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string level: @@ -12099,6 +11219,7 @@ paths: type: string parentCid: type: number + description: The category identifier for the category that is the immediate ancestor of the current category color: type: string bgColor: @@ -12107,16 +11228,6 @@ paths: type: boolean imageClass: type: string - required: - - cid - - name - - level - - icon - - parentCid - - color - - bgColor - - selected - - imageClass allCategoriesUrl: type: string selectedCategory: @@ -12124,6 +11235,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string level: @@ -12132,6 +11244,7 @@ paths: type: string parentCid: type: number + description: The category identifier for the category that is the immediate ancestor of the current category color: type: string bgColor: @@ -12161,11 +11274,6 @@ paths: type: boolean filter: type: string - required: - - name - - url - - selected - - filter selectedFilter: type: object properties: @@ -12190,11 +11298,6 @@ paths: type: boolean term: type: string - required: - - name - - url - - selected - - term selectedTerm: type: object properties: @@ -12231,10 +11334,6 @@ paths: type: string separator: type: boolean - required: - - page - - active - - qs currentPage: type: number pageCount: @@ -12284,8 +11383,6 @@ paths: type: string url: type: string - required: - - text loggedIn: type: boolean relative_path: @@ -12320,11 +11417,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -12340,11 +11432,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -12379,12 +11466,16 @@ paths: properties: tid: type: number + description: A topic identifier uid: type: number + description: A user identifier cid: type: number + description: A category identifier mainPid: type: number + description: The post id of the first post in this topic (also called the "original post") title: type: string slug: @@ -12409,10 +11500,12 @@ paths: type: number pinned: type: number + description: Whether or not this particular topic is pinned to the top of the category titleRaw: type: string timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) lastposttimeISO: type: string votes: @@ -12422,6 +11515,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string slug: @@ -12444,12 +11538,15 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account fullname: type: string userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) reputation: type: number postcount: @@ -12466,8 +11563,11 @@ paths: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" banned_until_readable: type: string teaser: @@ -12477,30 +11577,39 @@ paths: type: number uid: type: number + description: A user identifier timestamp: type: number tid: type: number + description: A topic identifier content: type: string timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) user: type: object properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: nullable: true type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" index: type: number tags: @@ -12518,12 +11627,6 @@ paths: type: string score: type: number - required: - - value - - valueEscaped - - color - - bgColor - - score isOwner: type: boolean ignored: @@ -12541,38 +11644,6 @@ paths: type: number isQuestion: nullable: true - required: - - tid - - uid - - cid - - mainPid - - title - - slug - - timestamp - - lastposttime - - postcount - - viewcount - - teaserPid - - deleted - - locked - - pinned - - upvotes - - downvotes - - titleRaw - - timestampISO - - lastposttimeISO - - votes - - category - - user - - teaser - - tags - - isOwner - - ignored - - unread - - bookmark - - unreplied - - icons - - index topicCount: type: number title: @@ -12627,6 +11698,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string level: @@ -12635,6 +11707,7 @@ paths: type: string parentCid: type: number + description: The category identifier for the category that is the immediate ancestor of the current category color: type: string bgColor: @@ -12643,16 +11716,6 @@ paths: type: boolean imageClass: type: string - required: - - cid - - name - - level - - icon - - parentCid - - color - - bgColor - - selected - - imageClass allCategoriesUrl: type: string selectedCids: @@ -12667,8 +11730,6 @@ paths: type: string url: type: string - required: - - text filters: type: array items: @@ -12682,11 +11743,6 @@ paths: type: boolean filter: type: string - required: - - name - - url - - selected - - filter selectedFilter: type: object properties: @@ -12732,11 +11788,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -12752,11 +11803,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -12815,12 +11861,15 @@ paths: type: number topic_count: type: number + description: The number of topics in the category name: type: string cid: type: number + description: A category identifier post_count: type: number + description: The number of posts in the category numRecentReplies: type: number bgColor: @@ -12831,14 +11880,17 @@ paths: type: string parentCid: type: number + description: The category identifier for the category that is the immediate ancestor of the current category disabled: type: number isSection: type: number totalPostCount: type: number + description: The number of posts in the category totalTopicCount: type: number + description: The number of topics in the category descriptionParsed: type: string tagWhitelist: @@ -12856,10 +11908,13 @@ paths: properties: tid: type: number + description: A topic identifier uid: type: number + description: A user identifier cid: type: number + description: A category identifier title: type: string slug: @@ -12876,6 +11931,7 @@ paths: type: string mainPid: type: number + description: The post id of the first post in this topic (also called the "original post") upvotes: type: number downvotes: @@ -12886,10 +11942,12 @@ paths: type: number pinned: type: number + description: Whether or not this particular topic is pinned to the top of the category titleRaw: type: string timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) lastposttimeISO: type: string votes: @@ -12899,6 +11957,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string slug: @@ -12920,10 +11979,13 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) reputation: type: number postcount: @@ -12940,8 +12002,11 @@ paths: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" banned_until_readable: type: string fullname: @@ -12953,30 +12018,39 @@ paths: type: number uid: type: number + description: A user identifier timestamp: type: number tid: type: number + description: A topic identifier content: type: string timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) user: type: object properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: nullable: true type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" index: type: number tags: @@ -12999,39 +12073,6 @@ paths: type: number teaserPid: type: number - required: - - tid - - uid - - cid - - title - - slug - - timestamp - - lastposttime - - postcount - - viewcount - - thumb - - mainPid - - upvotes - - downvotes - - deleted - - locked - - pinned - - titleRaw - - timestampISO - - lastposttimeISO - - votes - - category - - user - - teaser - - tags - - isOwner - - ignored - - unread - - bookmark - - unreplied - - icons - - index - - teaserPid nextStart: type: number isWatched: @@ -13049,9 +12090,6 @@ paths: type: string url: type: string - required: - - text - - url title: type: string privileges: @@ -13069,6 +12107,7 @@ paths: type: string uid: type: number + description: A user identifier editable: type: boolean view_deleted: @@ -13108,10 +12147,6 @@ paths: type: string separator: type: boolean - required: - - page - - active - - qs currentPage: type: number pageCount: @@ -13186,11 +12221,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -13206,11 +12236,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -13250,6 +12275,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string description: @@ -13260,6 +12286,7 @@ paths: type: string topic_count: type: number + description: The number of topics in the category order: type: number bgColor: @@ -13274,18 +12301,22 @@ paths: type: string post_count: type: number + description: The number of posts in the category descriptionParsed: type: string parentCid: type: number + description: The category identifier for the category that is the immediate ancestor of the current category disabled: type: number isSection: type: number totalPostCount: type: number + description: The number of posts in the category totalTopicCount: type: number + description: The number of topics in the category tagWhitelist: type: array items: {} @@ -13301,10 +12332,13 @@ paths: properties: tid: type: number + description: A topic identifier uid: type: number + description: A user identifier cid: type: number + description: A category identifier title: type: string slug: @@ -13319,10 +12353,12 @@ paths: type: number pinned: type: number + description: Whether or not this particular topic is pinned to the top of the category thumb: type: string mainPid: type: number + description: The post id of the first post in this topic (also called the "original post") teaserPid: type: number upvotes: @@ -13337,6 +12373,7 @@ paths: type: string timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) lastposttimeISO: type: string votes: @@ -13346,6 +12383,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string slug: @@ -13367,12 +12405,15 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account fullname: type: string userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) reputation: type: number postcount: @@ -13389,8 +12430,11 @@ paths: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" banned_until_readable: type: string teaser: @@ -13400,30 +12444,39 @@ paths: type: number uid: type: number + description: A user identifier timestamp: type: number tid: type: number + description: A topic identifier content: type: string timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) user: type: object properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: nullable: true type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" index: type: number tags: @@ -13441,12 +12494,6 @@ paths: type: string score: type: number - required: - - value - - valueEscaped - - color - - bgColor - - score isOwner: type: boolean ignored: @@ -13466,41 +12513,6 @@ paths: type: number isSolved: type: number - required: - - tid - - uid - - cid - - mainPid - - title - - slug - - timestamp - - lastposttime - - postcount - - viewcount - - teaserPid - - deleted - - locked - - pinned - - upvotes - - downvotes - - titleRaw - - timestampISO - - lastposttimeISO - - votes - - category - - user - - teaser - - tags - - isOwner - - ignored - - unread - - bookmark - - unreplied - - icons - - index - - thumb - - isQuestion - - isSolved nextStart: type: number isWatched: @@ -13518,9 +12530,6 @@ paths: type: string url: type: string - required: - - text - - url title: type: string privileges: @@ -13538,6 +12547,7 @@ paths: type: string uid: type: number + description: A user identifier editable: type: boolean view_deleted: @@ -13577,10 +12587,6 @@ paths: type: string separator: type: boolean - required: - - page - - active - - qs currentPage: type: number pageCount: @@ -13655,11 +12661,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -13675,11 +12676,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -13741,16 +12737,21 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email: type: string + description: Email address associated with the user account email:confirmed: type: boolean joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created lastonline: type: number picture: @@ -13811,8 +12812,11 @@ paths: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -13934,11 +12938,6 @@ paths: type: string icon: type: string - required: - - associated - - url - - name - - icon websiteLink: type: string websiteName: @@ -13956,10 +12955,12 @@ paths: type: number tid: type: number + description: A topic identifier content: type: string uid: type: number + description: A user identifier timestamp: type: number deleted: @@ -13972,34 +12973,44 @@ paths: type: number timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) user: type: object properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: type: string status: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" topic: type: object properties: uid: type: number + description: A user identifier tid: type: number + description: A topic identifier title: type: string cid: type: number + description: A category identifier slug: type: string deleted: @@ -14008,6 +13019,7 @@ paths: type: number mainPid: type: number + description: The post id of the first post in this topic (also called the "original post") titleRaw: type: string category: @@ -14015,6 +13027,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string icon: @@ -14023,6 +13036,7 @@ paths: type: string parentCid: type: number + description: The category identifier for the category that is the immediate ancestor of the current category bgColor: type: string color: @@ -14033,21 +13047,6 @@ paths: nullable: true isMainPost: type: boolean - required: - - pid - - tid - - content - - uid - - timestamp - - deleted - - upvotes - - downvotes - - votes - - timestampISO - - user - - topic - - category - - isMainPost latestPosts: type: array items: @@ -14057,10 +13056,12 @@ paths: type: number tid: type: number + description: A topic identifier content: type: string uid: type: number + description: A user identifier timestamp: type: number deleted: @@ -14073,34 +13074,44 @@ paths: type: number timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) user: type: object properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: type: string status: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" topic: type: object properties: uid: type: number + description: A user identifier tid: type: number + description: A topic identifier title: type: string cid: type: number + description: A category identifier slug: type: string deleted: @@ -14109,6 +13120,7 @@ paths: type: number mainPid: type: number + description: The post id of the first post in this topic (also called the "original post") titleRaw: type: string category: @@ -14116,6 +13128,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string icon: @@ -14124,6 +13137,7 @@ paths: type: string parentCid: type: number + description: The category identifier for the category that is the immediate ancestor of the current category bgColor: type: string color: @@ -14134,21 +13148,6 @@ paths: nullable: true isMainPost: type: boolean - required: - - pid - - tid - - content - - uid - - timestamp - - deleted - - upvotes - - downvotes - - votes - - timestampISO - - user - - topic - - category - - isMainPost bestPosts: type: array items: @@ -14158,10 +13157,12 @@ paths: type: number tid: type: number + description: A topic identifier content: type: string uid: type: number + description: A user identifier timestamp: type: number deleted: @@ -14174,34 +13175,44 @@ paths: type: number timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) user: type: object properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: type: string status: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" topic: type: object properties: uid: type: number + description: A user identifier tid: type: number + description: A topic identifier title: type: string cid: type: number + description: A category identifier slug: type: string deleted: @@ -14210,6 +13221,7 @@ paths: type: number mainPid: type: number + description: The post id of the first post in this topic (also called the "original post") titleRaw: type: string category: @@ -14217,6 +13229,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string icon: @@ -14225,6 +13238,7 @@ paths: type: string parentCid: type: number + description: The category identifier for the category that is the immediate ancestor of the current category bgColor: type: string color: @@ -14236,21 +13250,6 @@ paths: type: string isMainPost: type: boolean - required: - - pid - - tid - - content - - uid - - timestamp - - deleted - - upvotes - - downvotes - - votes - - timestampISO - - user - - topic - - category - - isMainPost hasPrivateChat: type: number breadcrumbs: @@ -14262,8 +13261,6 @@ paths: type: string url: type: string - required: - - text title: type: string allowCoverPicture: @@ -14353,11 +13350,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -14373,11 +13365,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -14394,16 +13381,21 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email: type: string + description: Email address associated with the user account email:confirmed: type: boolean joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created lastonline: type: number picture: @@ -14464,8 +13456,11 @@ paths: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -14587,11 +13582,6 @@ paths: type: string icon: type: string - required: - - associated - - url - - name - - icon websiteLink: type: string websiteName: @@ -14609,10 +13599,12 @@ paths: type: number tid: type: number + description: A topic identifier content: type: string uid: type: number + description: A user identifier timestamp: type: number deleted: @@ -14625,34 +13617,44 @@ paths: type: number timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) user: type: object properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: type: string status: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" topic: type: object properties: uid: type: number + description: A user identifier tid: type: number + description: A topic identifier title: type: string cid: type: number + description: A category identifier slug: type: string deleted: @@ -14661,6 +13663,7 @@ paths: type: number mainPid: type: number + description: The post id of the first post in this topic (also called the "original post") titleRaw: type: string category: @@ -14668,6 +13671,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string icon: @@ -14676,6 +13680,7 @@ paths: type: string parentCid: type: number + description: The category identifier for the category that is the immediate ancestor of the current category bgColor: type: string color: @@ -14686,21 +13691,6 @@ paths: nullable: true isMainPost: type: boolean - required: - - pid - - tid - - content - - uid - - timestamp - - deleted - - upvotes - - downvotes - - votes - - timestampISO - - user - - topic - - category - - isMainPost latestPosts: type: array items: @@ -14710,10 +13700,12 @@ paths: type: number tid: type: number + description: A topic identifier content: type: string uid: type: number + description: A user identifier timestamp: type: number deleted: @@ -14726,34 +13718,44 @@ paths: type: number timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) user: type: object properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: type: string status: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" topic: type: object properties: uid: type: number + description: A user identifier tid: type: number + description: A topic identifier title: type: string cid: type: number + description: A category identifier slug: type: string deleted: @@ -14762,6 +13764,7 @@ paths: type: number mainPid: type: number + description: The post id of the first post in this topic (also called the "original post") titleRaw: type: string category: @@ -14769,6 +13772,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string icon: @@ -14777,6 +13781,7 @@ paths: type: string parentCid: type: number + description: The category identifier for the category that is the immediate ancestor of the current category bgColor: type: string color: @@ -14787,21 +13792,6 @@ paths: nullable: true isMainPost: type: boolean - required: - - pid - - tid - - content - - uid - - timestamp - - deleted - - upvotes - - downvotes - - votes - - timestampISO - - user - - topic - - category - - isMainPost bestPosts: type: array items: @@ -14811,10 +13801,12 @@ paths: type: number tid: type: number + description: A topic identifier content: type: string uid: type: number + description: A user identifier timestamp: type: number deleted: @@ -14827,34 +13819,44 @@ paths: type: number timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) user: type: object properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: type: string status: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" topic: type: object properties: uid: type: number + description: A user identifier tid: type: number + description: A topic identifier title: type: string cid: type: number + description: A category identifier slug: type: string deleted: @@ -14863,6 +13865,7 @@ paths: type: number mainPid: type: number + description: The post id of the first post in this topic (also called the "original post") titleRaw: type: string category: @@ -14870,6 +13873,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string icon: @@ -14878,6 +13882,7 @@ paths: type: string parentCid: type: number + description: The category identifier for the category that is the immediate ancestor of the current category bgColor: type: string color: @@ -14889,21 +13894,6 @@ paths: type: string isMainPost: type: boolean - required: - - pid - - tid - - content - - uid - - timestamp - - deleted - - upvotes - - downvotes - - votes - - timestampISO - - user - - topic - - category - - isMainPost hasPrivateChat: type: number breadcrumbs: @@ -14915,8 +13905,6 @@ paths: type: string url: type: string - required: - - text title: type: string allowCoverPicture: @@ -15006,11 +13994,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -15026,11 +14009,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -15075,16 +14053,21 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email: type: string + description: Email address associated with the user account email:confirmed: type: boolean joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created lastonline: type: number picture: @@ -15144,8 +14127,11 @@ paths: items: {} icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -15237,13 +14223,6 @@ paths: type: boolean icon: type: string - required: - - id - - route - - name - - visibility - - public - - icon sso: type: array items: @@ -15259,11 +14238,6 @@ paths: type: string deauthUrl: type: string - required: - - associated - - url - - name - - icon websiteLink: type: string websiteName: @@ -15327,9 +14301,6 @@ paths: type: string url: type: string - required: - - text - - url loggedIn: type: boolean relative_path: @@ -15364,11 +14335,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -15384,11 +14350,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -15420,16 +14381,21 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email: type: string + description: Email address associated with the user account email:confirmed: type: boolean joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created lastonline: type: number picture: @@ -15490,8 +14456,11 @@ paths: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -15597,30 +14566,6 @@ paths: type: string cover:position: type: string - required: - - name - - slug - - createtime - - userTitle - - description - - memberCount - - deleted - - hidden - - system - - private - - ownerUid - - icon - - labelColor - - cover:url - - cover:position - - userTitleEnabled - - disableJoinRequests - - disableLeave - - nameEncoded - - displayName - - textColor - - createtimeISO - - cover:thumb:url disableSignatures: type: boolean reputation:disabled: @@ -15657,13 +14602,6 @@ paths: type: boolean icon: type: string - required: - - id - - route - - name - - visibility - - public - - icon sso: type: array items: @@ -15679,12 +14617,6 @@ paths: type: string icon: type: string - required: - - associated - - url - - deauthUrl - - name - - icon websiteLink: type: string websiteName: @@ -15704,10 +14636,13 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: nullable: true type: string @@ -15719,6 +14654,7 @@ paths: type: number email:confirmed: type: number + description: Whether the user has confirmed their email address or not lastonline: type: number flags: @@ -15729,10 +14665,14 @@ paths: type: number joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -15743,27 +14683,6 @@ paths: type: string administrator: type: boolean - required: - - uid - - username - - userslug - - picture - - status - - postcount - - reputation - - email:confirmed - - lastonline - - flags - - banned - - banned:expire - - joindate - - icon:text - - icon:bgColor - - joindateISO - - lastonlineISO - - banned_until - - banned_until_readable - - administrator pagination: type: object properties: @@ -15787,10 +14706,6 @@ paths: type: boolean qs: type: string - required: - - page - - active - - qs currentPage: type: number pageCount: @@ -15840,9 +14755,6 @@ paths: type: string url: type: string - required: - - text - - url loggedIn: type: boolean relative_path: @@ -15877,11 +14789,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -15897,11 +14804,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -15933,16 +14835,21 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email: type: string + description: Email address associated with the user account email:confirmed: type: boolean joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created lastonline: type: number picture: @@ -16003,8 +14910,11 @@ paths: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -16108,29 +15018,6 @@ paths: type: string cover:thumb:url: type: string - required: - - name - - slug - - createtime - - userTitle - - description - - deleted - - hidden - - system - - private - - icon - - labelColor - - memberCount - - cover:url - - cover:thumb:url - - userTitleEnabled - - disableJoinRequests - - disableLeave - - nameEncoded - - displayName - - textColor - - createtimeISO - - cover:position disableSignatures: type: boolean reputation:disabled: @@ -16167,13 +15054,6 @@ paths: type: boolean icon: type: string - required: - - id - - route - - name - - visibility - - public - - icon sso: type: array items: @@ -16187,11 +15067,6 @@ paths: type: string icon: type: string - required: - - associated - - url - - name - - icon websiteLink: type: string websiteName: @@ -16207,6 +15082,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string level: @@ -16215,6 +15091,7 @@ paths: type: string parentCid: type: number + description: The category identifier for the category that is the immediate ancestor of the current category color: type: string bgColor: @@ -16233,21 +15110,6 @@ paths: type: boolean imageClass: type: string - required: - - cid - - name - - level - - icon - - parentCid - - color - - bgColor - - descriptionParsed - - depth - - slug - - isIgnored - - isWatched - - isNotWatched - - imageClass title: type: string loggedIn: @@ -16284,11 +15146,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -16304,11 +15161,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -16340,16 +15192,21 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email: type: string + description: Email address associated with the user account email:confirmed: type: boolean joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created lastonline: type: number picture: @@ -16410,8 +15267,11 @@ paths: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -16503,13 +15363,6 @@ paths: type: boolean icon: type: string - required: - - id - - route - - name - - visibility - - public - - icon sso: type: array items: @@ -16523,11 +15376,6 @@ paths: type: string icon: type: string - required: - - associated - - url - - name - - icon websiteLink: type: string websiteName: @@ -16595,9 +15443,6 @@ paths: type: string url: type: string - required: - - text - - url showSort: type: boolean sortOptions: @@ -16611,10 +15456,6 @@ paths: type: string selected: type: boolean - required: - - url - - name - - selected loggedIn: type: boolean relative_path: @@ -16649,11 +15490,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -16669,11 +15505,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -16705,16 +15536,21 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email: type: string + description: Email address associated with the user account email:confirmed: type: boolean joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created lastonline: type: number picture: @@ -16774,8 +15610,11 @@ paths: items: {} icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -16847,11 +15686,6 @@ paths: type: string icon: type: string - required: - - associated - - url - - name - - icon websiteLink: type: string websiteName: @@ -16867,10 +15701,13 @@ paths: properties: tid: type: number + description: A topic identifier uid: type: number + description: A user identifier cid: type: number + description: A category identifier title: type: string slug: @@ -16887,6 +15724,7 @@ paths: type: string mainPid: type: number + description: The post id of the first post in this topic (also called the "original post") teaserPid: type: number upvotes: @@ -16899,10 +15737,12 @@ paths: type: number pinned: type: number + description: Whether or not this particular topic is pinned to the top of the category titleRaw: type: string timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) lastposttimeISO: type: string votes: @@ -16912,6 +15752,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string slug: @@ -16933,10 +15774,13 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) reputation: type: number postcount: @@ -16951,8 +15795,11 @@ paths: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" banned_until_readable: type: string teaser: @@ -16962,30 +15809,39 @@ paths: type: number uid: type: number + description: A user identifier timestamp: type: number tid: type: number + description: A topic identifier content: type: string timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) user: type: object properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: nullable: true type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" index: type: number tags: @@ -17006,38 +15862,6 @@ paths: items: {} index: type: number - required: - - tid - - uid - - cid - - title - - slug - - timestamp - - lastposttime - - postcount - - viewcount - - mainPid - - teaserPid - - upvotes - - downvotes - - deleted - - locked - - pinned - - titleRaw - - timestampISO - - lastposttimeISO - - votes - - category - - user - - teaser - - tags - - isOwner - - ignored - - unread - - bookmark - - unreplied - - icons - - index nextStart: type: number pagination: @@ -17094,9 +15918,6 @@ paths: type: string url: type: string - required: - - text - - url showSort: type: boolean sortOptions: @@ -17110,10 +15931,6 @@ paths: type: string selected: type: boolean - required: - - url - - name - - selected loggedIn: type: boolean relative_path: @@ -17148,11 +15965,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -17168,11 +15980,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -17204,16 +16011,21 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email: type: string + description: Email address associated with the user account email:confirmed: type: boolean joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created lastonline: type: number picture: @@ -17273,8 +16085,11 @@ paths: items: {} icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -17350,11 +16165,6 @@ paths: type: string deauthUrl: type: string - required: - - associated - - url - - name - - icon websiteLink: type: string websiteName: @@ -17372,10 +16182,12 @@ paths: type: number tid: type: number + description: A topic identifier content: type: string uid: type: number + description: A user identifier timestamp: type: number deleted: @@ -17388,34 +16200,44 @@ paths: type: number timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) user: type: object properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: nullable: true status: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" topic: type: object properties: uid: type: number + description: A user identifier tid: type: number + description: A topic identifier title: type: string cid: type: number + description: A category identifier slug: type: string deleted: @@ -17424,6 +16246,7 @@ paths: type: number mainPid: type: number + description: The post id of the first post in this topic (also called the "original post") titleRaw: type: string category: @@ -17431,6 +16254,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string icon: @@ -17439,6 +16263,7 @@ paths: type: string parentCid: type: number + description: The category identifier for the category that is the immediate ancestor of the current category bgColor: type: string color: @@ -17505,9 +16330,6 @@ paths: type: string url: type: string - required: - - text - - url showSort: type: boolean sortOptions: @@ -17521,10 +16343,6 @@ paths: type: string selected: type: boolean - required: - - url - - name - - selected loggedIn: type: boolean relative_path: @@ -17559,11 +16377,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -17579,11 +16392,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -17615,16 +16423,21 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email: type: string + description: Email address associated with the user account email:confirmed: type: boolean joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created lastonline: type: number picture: @@ -17685,8 +16498,11 @@ paths: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -17778,13 +16594,6 @@ paths: type: boolean icon: type: string - required: - - id - - route - - name - - visibility - - public - - icon sso: type: array items: @@ -17798,11 +16607,6 @@ paths: type: string icon: type: string - required: - - associated - - url - - name - - icon websiteLink: type: string websiteName: @@ -17822,9 +16626,6 @@ paths: type: string url: type: string - required: - - text - - url loggedIn: type: boolean relative_path: @@ -17859,11 +16660,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -17879,11 +16675,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -17917,16 +16708,21 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email: type: string + description: Email address associated with the user account email:confirmed: type: boolean joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created lastonline: type: number picture: @@ -17987,8 +16783,11 @@ paths: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -18080,13 +16879,6 @@ paths: type: boolean icon: type: string - required: - - id - - route - - name - - visibility - - public - - icon sso: type: array items: @@ -18100,11 +16892,6 @@ paths: type: string icon: type: string - required: - - associated - - url - - name - - icon websiteLink: type: string websiteName: @@ -18172,9 +16959,6 @@ paths: type: string url: type: string - required: - - text - - url showSort: type: boolean sortOptions: @@ -18188,10 +16972,6 @@ paths: type: string selected: type: boolean - required: - - url - - name - - selected loggedIn: type: boolean relative_path: @@ -18226,11 +17006,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -18246,11 +17021,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -18282,16 +17052,21 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email: type: string + description: Email address associated with the user account email:confirmed: type: boolean joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created lastonline: type: number picture: @@ -18352,8 +17127,11 @@ paths: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -18461,30 +17239,6 @@ paths: type: string cover:position: type: string - required: - - name - - slug - - createtime - - userTitle - - description - - memberCount - - deleted - - hidden - - system - - private - - ownerUid - - icon - - labelColor - - cover:url - - cover:position - - userTitleEnabled - - disableJoinRequests - - disableLeave - - nameEncoded - - displayName - - textColor - - createtimeISO - - cover:thumb:url disableSignatures: type: boolean reputation:disabled: @@ -18521,13 +17275,6 @@ paths: type: boolean icon: type: string - required: - - id - - route - - name - - visibility - - public - - icon sso: type: array items: @@ -18543,12 +17290,6 @@ paths: type: string icon: type: string - required: - - associated - - url - - deauthUrl - - name - - icon websiteLink: type: string websiteName: @@ -18566,12 +17307,16 @@ paths: properties: tid: type: number + description: A topic identifier uid: type: number + description: A user identifier cid: type: number + description: A category identifier mainPid: type: number + description: The post id of the first post in this topic (also called the "original post") title: type: string slug: @@ -18598,12 +17343,14 @@ paths: type: number pinned: type: number + description: Whether or not this particular topic is pinned to the top of the category deleterUid: type: number titleRaw: type: string timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) lastposttimeISO: type: string votes: @@ -18613,6 +17360,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string slug: @@ -18636,10 +17384,13 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) reputation: type: number postcount: @@ -18655,8 +17406,11 @@ paths: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" banned_until_readable: type: string fullname: @@ -18668,30 +17422,39 @@ paths: type: number uid: type: number + description: A user identifier timestamp: type: number tid: type: number + description: A topic identifier content: type: string timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) user: type: object properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: nullable: true type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" index: type: number tags: @@ -18709,12 +17472,6 @@ paths: type: string score: type: number - required: - - value - - valueEscaped - - color - - bgColor - - score isOwner: type: boolean ignored: @@ -18737,40 +17494,6 @@ paths: type: number isSolved: type: number - required: - - tid - - uid - - cid - - mainPid - - title - - slug - - timestamp - - lastposttime - - postcount - - viewcount - - teaserPid - - upvotes - - downvotes - - deleted - - locked - - pinned - - deleterUid - - titleRaw - - timestampISO - - lastposttimeISO - - votes - - category - - user - - teaser - - tags - - isOwner - - ignored - - unread - - bookmark - - unreplied - - icons - - index - - thumb nextStart: type: number pagination: @@ -18796,10 +17519,6 @@ paths: type: boolean qs: type: string - required: - - page - - active - - qs currentPage: type: number pageCount: @@ -18853,9 +17572,6 @@ paths: type: string url: type: string - required: - - text - - url showSort: type: boolean sortOptions: @@ -18869,10 +17585,6 @@ paths: type: string selected: type: boolean - required: - - url - - name - - selected loggedIn: type: boolean relative_path: @@ -18907,11 +17619,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -18927,11 +17634,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -18963,16 +17665,21 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email: type: string + description: Email address associated with the user account email:confirmed: type: boolean joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created lastonline: type: number picture: @@ -19032,8 +17739,11 @@ paths: items: {} icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -19127,13 +17837,6 @@ paths: type: boolean icon: type: string - required: - - id - - route - - name - - visibility - - public - - icon sso: type: array items: @@ -19149,11 +17852,6 @@ paths: type: string deauthUrl: type: string - required: - - associated - - url - - name - - icon websiteLink: type: string websiteName: @@ -19221,9 +17919,6 @@ paths: type: string url: type: string - required: - - text - - url showSort: type: boolean sortOptions: @@ -19237,10 +17932,6 @@ paths: type: string selected: type: boolean - required: - - url - - name - - selected loggedIn: type: boolean relative_path: @@ -19275,11 +17966,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -19295,11 +17981,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -19355,16 +18036,21 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email: type: string + description: Email address associated with the user account email:confirmed: type: boolean joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created lastonline: type: number picture: @@ -19424,8 +18110,11 @@ paths: items: {} icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -19517,13 +18206,6 @@ paths: type: boolean icon: type: string - required: - - id - - route - - name - - visibility - - public - - icon sso: type: array items: @@ -19539,11 +18221,6 @@ paths: type: string icon: type: string - required: - - associated - - url - - name - - icon websiteLink: type: string websiteName: @@ -19593,9 +18270,6 @@ paths: type: string url: type: string - required: - - text - - url editButtons: type: array items: {} @@ -19633,11 +18307,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -19653,11 +18322,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -19709,16 +18373,21 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email: type: string + description: Email address associated with the user account email:confirmed: type: boolean joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created lastonline: type: number picture: @@ -19778,8 +18447,11 @@ paths: items: {} icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -19871,13 +18543,6 @@ paths: type: boolean icon: type: string - required: - - id - - route - - name - - visibility - - public - - icon sso: type: array items: @@ -19893,11 +18558,6 @@ paths: type: string deauthUrl: type: string - required: - - associated - - url - - name - - icon websiteLink: type: string websiteName: @@ -19919,9 +18579,6 @@ paths: type: string url: type: string - required: - - text - - url loggedIn: type: boolean relative_path: @@ -19956,11 +18613,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -19976,11 +18628,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -20025,16 +18672,21 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email: type: string + description: Email address associated with the user account email:confirmed: type: boolean joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created lastonline: type: number picture: @@ -20094,8 +18746,11 @@ paths: items: {} icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -20189,13 +18844,6 @@ paths: type: boolean icon: type: string - required: - - id - - route - - name - - visibility - - public - - icon sso: type: array items: @@ -20211,11 +18859,6 @@ paths: type: string deauthUrl: type: string - required: - - associated - - url - - name - - icon websiteLink: type: string websiteName: @@ -20237,9 +18880,6 @@ paths: type: string url: type: string - required: - - text - - url loggedIn: type: boolean relative_path: @@ -20274,11 +18914,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -20294,11 +18929,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -20330,16 +18960,21 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email: type: string + description: Email address associated with the user account email:confirmed: type: boolean joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created lastonline: type: number picture: @@ -20399,8 +19034,11 @@ paths: items: {} icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -20492,13 +19130,6 @@ paths: type: boolean icon: type: string - required: - - id - - route - - name - - visibility - - public - - icon sso: type: array items: @@ -20512,11 +19143,6 @@ paths: type: string icon: type: string - required: - - associated - - url - - name - - icon websiteLink: type: string websiteName: @@ -20542,9 +19168,6 @@ paths: type: string url: type: string - required: - - text - - url loggedIn: type: boolean relative_path: @@ -20579,11 +19202,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -20599,11 +19217,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -20635,16 +19248,21 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email: type: string + description: Email address associated with the user account email:confirmed: type: boolean joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created lastonline: type: number picture: @@ -20705,8 +19323,11 @@ paths: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -20814,30 +19435,6 @@ paths: type: string cover:position: type: string - required: - - name - - slug - - createtime - - userTitle - - description - - memberCount - - deleted - - hidden - - system - - private - - ownerUid - - icon - - labelColor - - cover:url - - cover:position - - userTitleEnabled - - disableJoinRequests - - disableLeave - - nameEncoded - - displayName - - textColor - - createtimeISO - - cover:thumb:url disableSignatures: type: boolean reputation:disabled: @@ -20874,13 +19471,6 @@ paths: type: boolean icon: type: string - required: - - id - - route - - name - - visibility - - public - - icon sso: type: array items: @@ -20896,12 +19486,6 @@ paths: type: string icon: type: string - required: - - associated - - url - - deauthUrl - - name - - icon websiteLink: type: string websiteName: @@ -20926,19 +19510,13 @@ paths: type: number timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) timestampReadable: type: string title: type: string titleRaw: type: string - required: - - pid - - timestamp - - timestampISO - - timestampReadable - - title - - titleRaw bans: type: array items: {} @@ -20963,15 +19541,6 @@ paths: type: boolean datetimeISO: type: string - required: - - ip - - uuid - - datetime - - platform - - browser - - version - - current - - datetimeISO usernames: type: array items: @@ -20983,6 +19552,7 @@ paths: type: number timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) emails: type: array items: @@ -20994,6 +19564,7 @@ paths: type: number timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) moderationNotes: type: array items: {} @@ -21049,9 +19620,6 @@ paths: type: string url: type: string - required: - - text - - url loggedIn: type: boolean relative_path: @@ -21086,11 +19654,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -21106,11 +19669,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -21142,16 +19700,21 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email: type: string + description: Email address associated with the user account email:confirmed: type: boolean joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created lastonline: type: number picture: @@ -21212,8 +19775,11 @@ paths: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -21319,30 +19885,6 @@ paths: - type: number ownerUid: type: number - required: - - name - - slug - - createtime - - userTitle - - description - - memberCount - - hidden - - system - - private - - icon - - labelColor - - userTitleEnabled - - disableJoinRequests - - disableLeave - - nameEncoded - - displayName - - textColor - - createtimeISO - - cover:thumb:url - - cover:url - - cover:position - - deleted - - ownerUid disableSignatures: type: boolean reputation:disabled: @@ -21379,13 +19921,6 @@ paths: type: boolean icon: type: string - required: - - id - - route - - name - - visibility - - public - - icon sso: type: array items: @@ -21401,12 +19936,6 @@ paths: type: string icon: type: string - required: - - associated - - url - - deauthUrl - - name - - icon websiteLink: type: string websiteName: @@ -21508,6 +20037,7 @@ paths: type: string uid: type: number + description: A user identifier languages: type: array items: @@ -21521,11 +20051,6 @@ paths: type: string selected: type: boolean - required: - - name - - code - - dir - - selected acpLanguages: type: array items: @@ -21539,11 +20064,6 @@ paths: type: string selected: type: boolean - required: - - name - - code - - dir - - selected notification-sound: type: array items: @@ -21562,10 +20082,6 @@ paths: type: string selected: type: boolean - required: - - name - - value - - selected notificationSound: type: array items: @@ -21575,9 +20091,6 @@ paths: type: string selected: type: boolean - required: - - name - - selected chat-incoming-sound: type: array items: @@ -21596,10 +20109,6 @@ paths: type: string selected: type: boolean - required: - - name - - value - - selected incomingChatSound: type: array items: @@ -21609,9 +20118,6 @@ paths: type: string selected: type: boolean - required: - - name - - selected chat-outgoing-sound: type: array items: @@ -21630,10 +20136,6 @@ paths: type: string selected: type: boolean - required: - - name - - value - - selected outgoingChatSound: type: array items: @@ -21643,9 +20145,6 @@ paths: type: string selected: type: boolean - required: - - name - - selected customSettings: type: array items: {} @@ -21660,10 +20159,6 @@ paths: type: string selected: type: boolean - required: - - route - - name - - selected notificationSettings: type: array items: @@ -21681,13 +20176,6 @@ paths: type: boolean notificationemail: type: boolean - required: - - name - - label - - none - - notification - - email - - notificationemail disableEmailSubscriptions: type: number dailyDigestFreqOptions: @@ -21701,10 +20189,6 @@ paths: type: string selected: type: boolean - required: - - value - - name - - selected bootswatchSkinOptions: type: array items: @@ -21716,10 +20200,6 @@ paths: type: string selected: type: boolean - required: - - name - - value - - selected upvoteNotifFreq: type: array items: @@ -21729,9 +20209,6 @@ paths: type: string selected: type: boolean - required: - - name - - selected categoryWatchState: type: object properties: @@ -21762,9 +20239,6 @@ paths: type: string url: type: string - required: - - text - - url loggedIn: type: boolean relative_path: @@ -21799,11 +20273,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -21819,11 +20288,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -21875,16 +20339,21 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email: type: string + description: Email address associated with the user account email:confirmed: type: boolean joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created lastonline: type: number picture: @@ -21945,8 +20414,11 @@ paths: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -22040,13 +20512,6 @@ paths: type: boolean icon: type: string - required: - - id - - route - - name - - visibility - - public - - icon sso: type: array items: @@ -22060,11 +20525,6 @@ paths: type: string icon: type: string - required: - - associated - - url - - name - - icon websiteLink: type: string websiteName: @@ -22130,9 +20590,6 @@ paths: type: string url: type: string - required: - - text - - url loggedIn: type: boolean relative_path: @@ -22167,11 +20624,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -22187,11 +20639,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -22223,16 +20670,21 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email: type: string + description: Email address associated with the user account email:confirmed: type: boolean joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created lastonline: type: number picture: @@ -22292,8 +20744,11 @@ paths: items: {} icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -22387,13 +20842,6 @@ paths: type: boolean icon: type: string - required: - - id - - route - - name - - visibility - - public - - icon sso: type: array items: @@ -22409,11 +20857,6 @@ paths: type: string deauthUrl: type: string - required: - - associated - - url - - name - - icon websiteLink: type: string websiteName: @@ -22442,9 +20885,6 @@ paths: type: string url: type: string - required: - - text - - url loggedIn: type: boolean relative_path: @@ -22479,11 +20919,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -22499,11 +20934,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -22535,16 +20965,21 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email: type: string + description: Email address associated with the user account email:confirmed: type: boolean joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created lastonline: type: number picture: @@ -22604,8 +21039,11 @@ paths: items: {} icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -22699,13 +21137,6 @@ paths: type: boolean icon: type: string - required: - - id - - route - - name - - visibility - - public - - icon sso: type: array items: @@ -22721,11 +21152,6 @@ paths: type: string icon: type: string - required: - - associated - - url - - name - - icon websiteLink: type: string websiteName: @@ -22789,9 +21215,6 @@ paths: type: string url: type: string - required: - - text - - url loggedIn: type: boolean relative_path: @@ -22826,11 +21249,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -22846,11 +21264,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -22882,16 +21295,21 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) email: type: string + description: Email address associated with the user account email:confirmed: type: boolean joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created lastonline: type: number picture: @@ -22951,8 +21369,11 @@ paths: items: {} icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -23046,13 +21467,6 @@ paths: type: boolean icon: type: string - required: - - id - - route - - name - - visibility - - public - - icon sso: type: array items: @@ -23068,11 +21482,6 @@ paths: type: string deauthUrl: type: string - required: - - associated - - url - - name - - icon websiteLink: type: string websiteName: @@ -23095,9 +21504,6 @@ paths: type: string url: type: string - required: - - text - - url loggedIn: type: boolean relative_path: @@ -23132,11 +21538,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -23152,11 +21553,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -23214,6 +21610,7 @@ paths: - type: string tid: type: number + description: A topic identifier path: type: string nid: @@ -23235,16 +21632,22 @@ paths: properties: username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: type: string uid: type: number + description: A user identifier icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" image: type: string read: @@ -23253,24 +21656,6 @@ paths: type: string subject: type: string - required: - - type - - bodyShort - - bodyLong - - pid - - path - - nid - - tid - - from - - mergeId - - topicTitle - - importance - - datetime - - datetimeISO - - user - - image - - read - - readClass pagination: type: object properties: @@ -23323,9 +21708,6 @@ paths: type: string selected: type: boolean - required: - - name - - filter regularFilters: type: array items: @@ -23337,9 +21719,6 @@ paths: type: string selected: type: boolean - required: - - name - - filter moderatorFilters: type: array items: @@ -23349,9 +21728,6 @@ paths: type: string filter: type: string - required: - - name - - filter selectedFilter: type: object properties: @@ -23372,8 +21748,6 @@ paths: type: string url: type: string - required: - - text loggedIn: type: boolean relative_path: @@ -23408,11 +21782,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -23428,11 +21797,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -23501,6 +21865,7 @@ paths: type: number timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) editedISO: type: string messageId: @@ -23510,10 +21875,13 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: type: string status: @@ -23522,8 +21890,11 @@ paths: type: boolean icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" banned_until_readable: type: string deleted: @@ -23536,21 +21907,6 @@ paths: type: number cleanedContent: type: string - required: - - content - - timestamp - - fromuid - - roomId - - deleted - - system - - edited - - timestampISO - - editedISO - - messageId - - fromUser - - self - - newSet - - index isOwner: type: boolean users: @@ -23560,16 +21916,21 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account picture: type: string status: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" isOwner: type: boolean canReply: @@ -23606,10 +21967,13 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: nullable: true type: string @@ -23619,20 +21983,13 @@ paths: type: number icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" lastonlineISO: type: string - required: - - uid - - username - - userslug - - picture - - status - - lastonline - - icon:text - - icon:bgColor - - lastonlineISO groupChat: type: boolean unread: @@ -23648,15 +22005,19 @@ paths: type: number timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) user: type: object properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: nullable: true type: string @@ -23666,8 +22027,11 @@ paths: type: number icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" lastonlineISO: type: string lastUser: @@ -23675,10 +22039,13 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: nullable: true type: string @@ -23688,30 +22055,25 @@ paths: type: number icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" lastonlineISO: type: string usernames: type: string - required: - - owner - - roomId - - roomName - - users - - groupChat - - unread - - teaser - - lastUser - - usernames nextStart: type: number title: type: string uid: type: number + description: A user identifier userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) canViewInfo: type: boolean loggedIn: @@ -23748,11 +22110,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -23768,11 +22125,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -23814,6 +22166,7 @@ paths: type: number timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) editedISO: type: string messageId: @@ -23823,10 +22176,13 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: type: string status: @@ -23835,8 +22191,11 @@ paths: type: boolean icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" banned_until_readable: type: string deleted: @@ -23849,21 +22208,6 @@ paths: type: number cleanedContent: type: string - required: - - content - - timestamp - - fromuid - - roomId - - deleted - - system - - edited - - timestampISO - - editedISO - - messageId - - fromUser - - self - - newSet - - index isOwner: type: boolean users: @@ -23873,16 +22217,21 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account picture: type: string status: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" isOwner: type: boolean canReply: @@ -23919,10 +22268,13 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: nullable: true type: string @@ -23932,20 +22284,13 @@ paths: type: number icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" lastonlineISO: type: string - required: - - uid - - username - - userslug - - picture - - status - - lastonline - - icon:text - - icon:bgColor - - lastonlineISO groupChat: type: boolean unread: @@ -23961,15 +22306,19 @@ paths: type: number timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) user: type: object properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: nullable: true type: string @@ -23979,8 +22328,11 @@ paths: type: number icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" lastonlineISO: type: string lastUser: @@ -23988,10 +22340,13 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: nullable: true type: string @@ -24001,30 +22356,25 @@ paths: type: number icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" lastonlineISO: type: string usernames: type: string - required: - - owner - - roomId - - roomName - - users - - groupChat - - unread - - teaser - - lastUser - - usernames nextStart: type: number title: type: string uid: type: number + description: A user identifier userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) canViewInfo: type: boolean loggedIn: @@ -24061,11 +22411,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -24081,11 +22426,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -24148,10 +22488,13 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: nullable: true type: string @@ -24163,6 +22506,7 @@ paths: type: number email:confirmed: type: number + description: Whether the user has confirmed their email address or not lastonline: type: number flags: @@ -24173,10 +22517,14 @@ paths: type: number joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -24187,27 +22535,6 @@ paths: type: string administrator: type: boolean - required: - - uid - - username - - userslug - - picture - - status - - postcount - - reputation - - email:confirmed - - lastonline - - flags - - banned - - banned:expire - - joindate - - icon:text - - icon:bgColor - - joindateISO - - lastonlineISO - - banned_until - - banned_until_readable - - administrator pagination: type: object properties: @@ -24233,10 +22560,6 @@ paths: type: string separator: type: boolean - required: - - page - - active - - qs currentPage: type: number pageCount: @@ -24290,8 +22613,6 @@ paths: type: string url: type: string - required: - - text isAdminOrGlobalMod: type: boolean isAdmin: @@ -24348,11 +22669,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -24368,11 +22684,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -24456,54 +22767,27 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account picture: nullable: true type: string userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string - required: - - uid - - username - - picture - - userslug - - icon:text - - icon:bgColor + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" truncated: type: boolean ownerUid: type: number - required: - - name - - description - - deleted - - hidden - - system - - userTitle - - icon - - labelColor - - slug - - createtime - - memberCount - - private - - cover:url - - cover:position - - userTitleEnabled - - disableJoinRequests - - disableLeave - - nameEncoded - - displayName - - textColor - - createtimeISO - - cover:thumb:url - - members - - truncated - - ownerUid allowGroupCreation: type: boolean nextStart: @@ -24519,8 +22803,6 @@ paths: type: string url: type: string - required: - - text loggedIn: type: boolean relative_path: @@ -24555,11 +22837,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -24575,11 +22852,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -24669,10 +22941,13 @@ paths: properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: type: string status: @@ -24683,6 +22958,7 @@ paths: type: number email:confirmed: type: number + description: Whether the user has confirmed their email address or not lastonline: type: number flags: @@ -24694,10 +22970,14 @@ paths: type: number joindate: type: number + description: A UNIX timestamp representing the moment the user's account was created icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" joindateISO: type: string lastonlineISO: @@ -24710,28 +22990,6 @@ paths: type: boolean isOwner: type: boolean - required: - - uid - - username - - userslug - - picture - - status - - postcount - - reputation - - email:confirmed - - lastonline - - flags - - banned - - banned:expire - - joindate - - icon:text - - icon:bgColor - - joindateISO - - lastonlineISO - - banned_until - - banned_until_readable - - administrator - - isOwner membersNextStart: type: number pending: @@ -24757,10 +23015,12 @@ paths: type: number tid: type: number + description: A topic identifier content: type: string uid: type: number + description: A user identifier timestamp: type: number deleted: @@ -24773,34 +23033,44 @@ paths: type: number timestampISO: type: string + description: An ISO 8601 formatted date string (complementing `timestamp`) user: type: object properties: uid: type: number + description: A user identifier username: type: string + description: A friendly name for a given user account userslug: type: string + description: An URL-safe variant of the username (i.e. lower-cased, spaces removed, etc.) picture: type: string status: type: string icon:text: type: string + description: A single-letter representation of a username. This is used in the auto-generated icon given to users without an avatar icon:bgColor: type: string + description: A six-character hexadecimal colour code assigned to the user. This value is used in conjunction with `icon:text` for the user's auto-generated icon + example: "#f44336" topic: type: object properties: uid: type: number + description: A user identifier tid: type: number + description: A topic identifier title: type: string cid: type: number + description: A category identifier slug: type: string deleted: @@ -24809,6 +23079,7 @@ paths: type: number mainPid: type: number + description: The post id of the first post in this topic (also called the "original post") titleRaw: type: string category: @@ -24816,6 +23087,7 @@ paths: properties: cid: type: number + description: A category identifier name: type: string icon: @@ -24824,6 +23096,7 @@ paths: type: string parentCid: type: number + description: The category identifier for the category that is the immediate ancestor of the current category bgColor: type: string color: @@ -24835,21 +23108,6 @@ paths: type: string isMainPost: type: boolean - required: - - pid - - tid - - content - - uid - - timestamp - - deleted - - upvotes - - downvotes - - votes - - timestampISO - - user - - topic - - category - - isMainPost isAdmin: type: boolean isGlobalMod: @@ -24865,9 +23123,6 @@ paths: type: string url: type: string - required: - - text - - url loggedIn: type: boolean relative_path: @@ -24902,11 +23157,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -24922,11 +23172,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: @@ -24990,11 +23235,6 @@ paths: type: boolean property: type: string - required: - - name - - content - - noEscape - - property link: type: array items: @@ -25010,11 +23250,6 @@ paths: type: string sizes: type: string - required: - - rel - - href - - type - - sizes widgets: type: object properties: