Client Interfaces

Learn the interfaces used by the VtubersTV WebSocket client.

IVideo

_idString
The MongoDB ObjectId of the video document. This is the unique document identifier in the database.
idString
A secondary unique identifier for the video, often used for client-side operations.
titleString
The title of the video, describing its content.
descriptionString
A detailed explanation or summary of the video's content.
authorString
The author or creator of the video.
viewsNumber
The number of times the video has been viewed.
likesNumber
The number of likes the video has received.
dislikesNumber
The number of dislikes the video has received.
commentsString[]
An array of comment IDs associated with the video.
meta.widthString
The width of the video in pixels.
meta.heightString
The height of the video in pixels.
meta.durationString
The total duration of the video in ISO 8601 format.
meta.file_sizeString
The size of the video file in bytes.
meta.tagsString[]
An array of tags associated with the video, used for categorization and search.
meta.is_made_for_adultsBoolean
Indicates whether the video is intended for adult audiences.
meta.isDeletedBoolean
Indicates whether the video has been marked as deleted.
createdAtString
The timestamp of when the video was created.
updatedAtString
The timestamp of the last update to the video.
__vNumber
The version key used by Mongoose to manage document versions.

IUserBanStatus

usernameString
The username of the banned user.
avatarString
The URL of the user's avatar image.
display_nameString
The display name of the user.
pronounsString
The pronouns the user identifies with (e.g., she/her, he/him, they/them).
bioString
A brief biography or description of the user.
is_bannedBoolean
Indicates whether the user is currently banned.
created_atString
The timestamp of when the user's ban status was created or last updated.

IUserEdit

usernameString
The username of the user whose details are being edited.
updated_fieldsObject
A dynamic object representing the fields that were updated and their new values.

IReport

titleString
The title of the report, summarizing the issue or vulnerability.
severityString
The severity level of the issue (e.g., low, medium, high, critical).
repoString
The repository where the issue was found or is related to.
bodyString
A detailed description of the issue or vulnerability.
affectedString[]
An array of affected components or modules.
attackVectorString
Describes the method by which the vulnerability can be exploited (e.g., network, physical).
attackComplexityString
Indicates the complexity required to exploit the vulnerability (e.g., low, high).
privilegesRequiredString
The level of privileges an attacker must have to exploit the vulnerability.
userInteractionString
Indicates whether user interaction is required to exploit the vulnerability.
scopeString
Describes the scope of impact if the vulnerability is exploited (e.g., unchanged, changed).
confidentialityImpactString
The potential impact on confidentiality (e.g., none, low, high).
integrityImpactString
The potential impact on integrity (e.g., none, low, high).
availabilityImpactString
The potential impact on availability (e.g., none, low, high).
tagsString[]
An array of tags associated with the report for categorization and search.
cveString
The Common Vulnerabilities and Exposures (CVE) identifier associated with the report.

IAuthUser

idString
The unique identifier for the authenticated user.
doc_versionNumber
The document version, used for tracking changes.
usernameString?
The username of the authenticated user.
avatarString?
The URL of the user's avatar image.
bannerString?
The URL of the user's banner image.
bioString?
A brief biography or description of the user.
display_nameString?
The display name of the user.
pronounsString?
The pronouns the user identifies with.
emailString?
The email address associated with the user's account.
connections.nameString?
The name of the connected service (e.g., Discord, Twitter).
connections.linkString?
The URL to the user's profile on the connected service.
connections.usernameString?
The username on the connected service.
liked_videosString[]?
An array of video IDs that the user has liked.
disliked_videosString[]?
An array of video IDs that the user has disliked.
uploaded_videos.idString?
The unique identifier for the uploaded video.
uploaded_videos.titleString?
The title of the uploaded video.
uploaded_videos.descriptionString?
A description of the uploaded video's content.
uploaded_videos.tagsString[]?
An array of tags associated with the uploaded video.
uploaded_videos.viewsString?
The number of views the uploaded video has received.
uploaded_videos.likesString?
The number of likes the uploaded video has received.
uploaded_videos.dislikesString?
The number of dislikes the uploaded video has received.
uploaded_videos.thumbnailString?
The URL of the uploaded video's thumbnail image.
uploaded_videos.gatekeepBoolean?
Indicates whether the video is restricted or requires special access.
uploaded_videos.created_atString?
The timestamp of when the video was uploaded.
uploaded_videos.durationString?
The duration of the uploaded video in ISO 8601 format.
uploaded_videos.raw_viewsNumber?
The raw view count, which may be unfiltered or include non-unique views.
uploaded_videos.commentsString[]?
An array of comment IDs associated with the uploaded video.
uploaded_videos.isDeletedBoolean?
Indicates whether the uploaded video has been marked as deleted.
watch_historyString[]?
An array of video IDs representing the user's watch history.