Files
NodeBB/public/openapi/read/topic/topic_id.yaml
Barış Soner Uşaklı 3ab22c2c8c refactor: events are returned inside post objects
to load all events of a topic use api/v3/topics/:tid/events
2025-02-06 19:59:09 -05:00

230 lines
8.1 KiB
YAML

get:
tags:
- topics
summary: Get topic data
parameters:
- name: topic_id
in: path
required: true
schema:
type: string
example: 1
- name: slug
description: This parameter is not required. If omitted, the request will be automatically redirected with the proper topic slug.
in: path
required: true
schema:
type: string
example: test-topic
- name: post_index
description: This parameter is not required. If omitted, the request will presume that you want the first post. The API response is largely unaffected by this parameter, it is used client-side (to send the user to the requested post), and changes the meta/link tags in the server-side generated HTML.
in: path
required: true
schema:
type: string
example: 1
responses:
"200":
description: ""
content:
application/json:
schema:
allOf:
- $ref: ../../components/schemas/TopicObject.yaml#/TopicObjectSlim
- type: object
properties:
title:
type: string
slug:
type: string
teaserPid:
type: number
nullable: true
titleRaw:
type: string
tags:
type: array
items:
$ref: ../../components/schemas/TagObject.yaml#/TagObject
posts:
type: array
items:
$ref: ../../components/schemas/PostObject.yaml#/PostDataObject
category:
$ref: ../../components/schemas/CategoryObject.yaml#/CategoryObject
tagWhitelist:
type: array
items:
type: string
minTags:
type: number
maxTags:
type: number
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
forker:
nullable: true
related:
type: array
items:
$ref: ../../components/schemas/TopicObject.yaml#/TopicObject
unreplied:
type: boolean
icons:
type: array
items:
type: string
description: HTML that is rendered by the theme
privileges:
type: object
properties:
topics:reply:
type: boolean
topics:read:
type: boolean
topics:schedule:
type: boolean
topics:tag:
type: boolean
topics:delete:
type: boolean
posts:edit:
type: boolean
posts:history:
type: boolean
posts:upvote:
type: boolean
posts:downvote:
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
view_scheduled:
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
upvoteVisibility:
type: string
downvoteVisibility:
type: string
feeds:disableRSS:
type: number
signatures:hideDuplicates:
type: number
bookmarkThreshold:
type: number
necroThreshold:
type: number
postEditDuration:
type: number
postDeleteDuration:
type: number
scrollToMyPost:
type: boolean
updateUrlWithPostIndex:
type: boolean
allowMultipleBadges:
type: boolean
privateUploads:
type: boolean
showPostPreviewsOnHover:
type: boolean
sortOptionLabel:
type: string
rssFeedUrl:
type: string
postIndex:
type: number
author:
type: object
required: [username, uid]
properties:
username:
type: string
userslug:
type: string
uid:
type: number
fullname:
type: string
displayname:
type: string
isLocal:
type: boolean
description: Whether the user belongs to the local installation or not.
- type: object
description: Optional properties that may or may not be present (except for `tid`, which is always present, and is only here as a hack to pass validation)
properties:
tid:
type: number
description: A topic identifier
thumb:
type: string
description: An uploaded topic thumbnail
loggedInUser:
$ref: ../../components/schemas/UserObject.yaml#/UserObject
required:
- tid
- $ref: ../../components/schemas/Pagination.yaml#/Pagination
- $ref: ../../components/schemas/Breadcrumbs.yaml#/Breadcrumbs
- $ref: ../../components/schemas/CommonProps.yaml#/CommonProps