mirror of
https://github.com/owncast/owncast.git
synced 2025-01-05 16:17:31 +03:00
4115 lines
114 KiB
YAML
4115 lines
114 KiB
YAML
|
openapi: 3.1.0
|
||
|
|
||
|
info:
|
||
|
version: 0.1.2
|
||
|
title: Owncast APIs
|
||
|
description: |-
|
||
|
Internal
|
||
|
The APIs required to make the Owncast web interface and internal functionality work. These APIs will never reach stability and will always change as Owncast features and functionality change. This means these endpoints are not good options to build your own tooling and features on top of. You can, however, of course can if that risk is acceptable to you.
|
||
|
|
||
|
Admin
|
||
|
The APIs used to configure the Owncast server, as well as power the web admin interface. These APIs are protected by the admin password, using HTTP Basic authentication. They should not be used by external tools or integrations as it would require you to give your admin password to a third party.
|
||
|
contact:
|
||
|
name: Gabe Kangas
|
||
|
email: gabek@real-ity.com
|
||
|
url: 'http://owncast.online'
|
||
|
license:
|
||
|
url: 'https://github.com/owncast/owncast/blob/develop/LICENSE'
|
||
|
name: MIT
|
||
|
servers:
|
||
|
- url: 'http://localhost:8080/api'
|
||
|
description: Localhost port 8080
|
||
|
|
||
|
paths:
|
||
|
/status:
|
||
|
get:
|
||
|
summary: Get the status of the server
|
||
|
operationId: GetStatus
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Successful response
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/Status"
|
||
|
/emoji:
|
||
|
get:
|
||
|
summary: Get list of custom emojis supported in the chat
|
||
|
operationId: GetCustomEmojiList
|
||
|
responses:
|
||
|
'200':
|
||
|
description: List of valid emojis
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/Emojis"
|
||
|
'500':
|
||
|
$ref: "#/components/responses/500"
|
||
|
/chat:
|
||
|
get:
|
||
|
summary: Gets a list of chat messages
|
||
|
operationId: GetChatMessages
|
||
|
parameters:
|
||
|
- $ref: "#/components/parameters/AccessToken"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: List of chat messages
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/ChatMessages"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401"
|
||
|
'501':
|
||
|
$ref: "#/components/responses/501"
|
||
|
/chat/register:
|
||
|
post:
|
||
|
summary: Registers an anonymous chat user
|
||
|
operationId: RegisterAnonymousChatUser
|
||
|
parameters:
|
||
|
- in: header
|
||
|
name: X-Forwarded-User
|
||
|
schema:
|
||
|
type: string
|
||
|
required: false
|
||
|
requestBody:
|
||
|
description: The display name of the new user
|
||
|
required: false
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
displayName:
|
||
|
type: string
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Anonymous user information
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/AnonymousUser"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
options:
|
||
|
operationId: RegisterAnonymousChatUserOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204Options"
|
||
|
/chat/messagevisibility:
|
||
|
post:
|
||
|
summary: Update chat message visibility
|
||
|
operationId: UpdateMessageVisibility
|
||
|
parameters:
|
||
|
- $ref: "#/components/parameters/AccessToken"
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/MessageVisibilityUpdate"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Message visibility updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
/chat/users/setenabled:
|
||
|
post:
|
||
|
summary: Enable/disable a user
|
||
|
operationId: UpdateUserEnabled
|
||
|
parameters:
|
||
|
- $ref: "#/components/parameters/AccessToken"
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
userId:
|
||
|
type: string
|
||
|
enabled:
|
||
|
type: boolean
|
||
|
responses:
|
||
|
'200':
|
||
|
description: User status has been updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
/config:
|
||
|
get:
|
||
|
summary: Get the web config
|
||
|
operationId: GetWebConfig
|
||
|
responses:
|
||
|
'200':
|
||
|
description: The current web config
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/WebConfig"
|
||
|
'500':
|
||
|
$ref: "#/components/responses/500"
|
||
|
/yp:
|
||
|
get:
|
||
|
summary: Get the YP protocol data
|
||
|
operationId: GetYPResponse
|
||
|
responses:
|
||
|
'200':
|
||
|
description: The current YP protocol configuration
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/YPDetails"
|
||
|
'404':
|
||
|
$ref: "#/components/responses/404"
|
||
|
/socialplatforms:
|
||
|
get:
|
||
|
summary: Get all social platforms
|
||
|
operationId: GetAllSocialPlatforms
|
||
|
responses:
|
||
|
'200':
|
||
|
description: The list of social platforms
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
additionalProperties:
|
||
|
$ref: '#/components/schemas/SocialHandle'
|
||
|
'500':
|
||
|
$ref: "#/components/responses/500"
|
||
|
/video/variants:
|
||
|
get:
|
||
|
summary: Get a list of video variants available
|
||
|
operationId: GetVideoStreamOutputVariants
|
||
|
responses:
|
||
|
'200':
|
||
|
description: List of available video variants
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: "#/components/schemas/VideoVariant"
|
||
|
/ping:
|
||
|
get:
|
||
|
summary: Tell the backend you're an active viewer
|
||
|
operationId: Ping
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Added as an active viewer
|
||
|
/remotefollow:
|
||
|
post:
|
||
|
summary: Request remote follow
|
||
|
operationId: RemoteFollow
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
account:
|
||
|
type: string
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Contains redirect URL remote follow follow
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
redirectUrl:
|
||
|
type: string
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
/followers:
|
||
|
get:
|
||
|
summary: Gets the list of followers
|
||
|
operationId: GetFollowers
|
||
|
parameters:
|
||
|
- $ref: "#/components/parameters/Offset"
|
||
|
- $ref: "#/components/parameters/Limit"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Paginated follower count
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/PaginatedFollowers"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
/metrics/playback:
|
||
|
post:
|
||
|
summary: Save video playback metrics for future video health recording
|
||
|
operationId: ReportPlaybackMetrics
|
||
|
requestBody:
|
||
|
description: Video metrics to record
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/PlaybackMetrics"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Metrics successfully recorded
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
/notifications/register:
|
||
|
post:
|
||
|
summary: Register for notifications
|
||
|
operationId: RegisterForLiveNotifications
|
||
|
parameters:
|
||
|
- $ref: "#/components/parameters/AccessToken"
|
||
|
requestBody:
|
||
|
description: Information for notification
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
channel:
|
||
|
type: string
|
||
|
description: Name of notification channel
|
||
|
destination:
|
||
|
type: string
|
||
|
description: Target of the notification in the channel
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Successfully added notification channel
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401"
|
||
|
/admin/status:
|
||
|
get:
|
||
|
summary: Get current inboard broadcaster
|
||
|
operationId: StatusAdmin
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Gives the status of the system
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/AdminStatus"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: StatusAdminOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/disconnect:
|
||
|
get:
|
||
|
summary: Disconnect inbound stream
|
||
|
operationId: DisconnectInboundConnection
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Contains information about disconnection status
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: DisconnectInboundConnectionOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/serverconfig:
|
||
|
get:
|
||
|
summary: Get the current server config
|
||
|
operationId: GetServerConfig
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Current server config
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/AdminServerConfig"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: GetServerConfigOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/viewersOverTime:
|
||
|
get:
|
||
|
summary: Get viewer count over time
|
||
|
operationId: GetViewersOverTime
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
parameters:
|
||
|
- in: query
|
||
|
name: windowStart
|
||
|
description: Start date in unix time
|
||
|
schema:
|
||
|
type: string
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Viewer count over time
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: "#/components/schemas/TimestampedValue"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: GetViewersOverTimeOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/viewers:
|
||
|
get:
|
||
|
summary: Get active viewers
|
||
|
operationId: GetActiveViewers
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
responses:
|
||
|
'200':
|
||
|
description: List of active viewers
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: "#/components/schemas/Viewer"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: GetActiveViewersOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/hardwarestats:
|
||
|
get:
|
||
|
summary: Get the current hardware stats
|
||
|
operationId: GetHardwareStats
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Current hardware stats
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
allOf:
|
||
|
- $ref: "#/components/schemas/StreamHealthOverview"
|
||
|
- $ref: "#/components/schemas/CollectedMetrics"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: GetHardwareStatsOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/chat/clients:
|
||
|
get:
|
||
|
summary: Get a detailed list of currently connected chat clients
|
||
|
operationId: GetConnectedChatClients
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
responses:
|
||
|
'200':
|
||
|
description: List of chat clients
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/ChatClients"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: GetConnectedChatClientsOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/chat/messages:
|
||
|
get:
|
||
|
summary: Get all chat messages for the admin, unfiltered
|
||
|
operationId: GetChatMessagesAdmin
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
responses:
|
||
|
'200':
|
||
|
description: List of chat messages for the admin
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/ChatMessages"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: GetChatMessagesAdminOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/chat/messagevisibility:
|
||
|
post:
|
||
|
summary: Update visibility of chat messages
|
||
|
operationId: UpdateMessageVisibilityAdmin
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/MessageVisibilityUpdate"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Messages updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: UpdateMessageVisibilityAdminOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/chat/users/setenabled:
|
||
|
post:
|
||
|
summary: Enable or disable a user
|
||
|
operationId: UpdateUserEnabledAdmin
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
userId:
|
||
|
type: string
|
||
|
enabled:
|
||
|
type: boolean
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Successfully updated the user
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: UpdateUserEnabledAdminOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/chat/users/disabled:
|
||
|
get:
|
||
|
summary: Get a list of disabled users
|
||
|
operationId: GetDisabledUsers
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
responses:
|
||
|
'200':
|
||
|
description: List of disabled users
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/Users"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: GetDisabledUsersOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/chat/users/ipbans/create:
|
||
|
post:
|
||
|
summary: Ban an IP address
|
||
|
operationId: BanIPAddress
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: IP was successfully banned
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: BanIPAddressOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/chat/users/ipbans/remove:
|
||
|
post:
|
||
|
summary: Remove an IP ban
|
||
|
operationId: UnbanIPAddress
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: IP ban was successfully removed
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: UnbanIPAddressOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/chat/users/ipbans:
|
||
|
get:
|
||
|
summary: Get all banned IP addresses
|
||
|
operationId: GetIPAddressBans
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
responses:
|
||
|
'200':
|
||
|
description: List of banned IP addresses
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: "#/components/schemas/IPAddress"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: GetIPAddressBansOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/chat/users/setmoderator:
|
||
|
post:
|
||
|
summary: Set moderator status for a user
|
||
|
operationId: UpdateUserModerator
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
userId:
|
||
|
type: string
|
||
|
isModerator:
|
||
|
type: boolean
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Successfully update the moderator status of the user
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: UpdateUserModeratorOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/chat/users/moderators:
|
||
|
get:
|
||
|
summary: Get a list of moderator users
|
||
|
operationId: GetModerators
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
responses:
|
||
|
'200':
|
||
|
description: List of moderator users
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/Users"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: GetModeratorsOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/logs:
|
||
|
get:
|
||
|
summary: Get all logs
|
||
|
operationId: GetLogs
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
responses:
|
||
|
'200':
|
||
|
description: List of logs
|
||
|
headers:
|
||
|
'Access-Control-Allow-Origin':
|
||
|
$ref: "#/components/headers/Access-Control-Allow-Origin"
|
||
|
'Access-Control-Allow-Credentials':
|
||
|
$ref: "#/components/headers/Access-Control-Allow-Credentials"
|
||
|
'Access-Control-Allow-Headers':
|
||
|
$ref: "#/components/headers/Access-Control-Allow-Headers"
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: "#/components/schemas/AdminLog"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: GetLogsOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/logs/warnings:
|
||
|
get:
|
||
|
summary: Get warning/error logs
|
||
|
operationId: GetWarnings
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
responses:
|
||
|
'200':
|
||
|
description: List of warnings and errors
|
||
|
headers:
|
||
|
'Access-Control-Allow-Origin':
|
||
|
$ref: "#/components/headers/Access-Control-Allow-Origin"
|
||
|
'Access-Control-Allow-Credentials':
|
||
|
$ref: "#/components/headers/Access-Control-Allow-Credentials"
|
||
|
'Access-Control-Allow-Headers':
|
||
|
$ref: "#/components/headers/Access-Control-Allow-Headers"
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: "#/components/schemas/AdminLog"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: GetWarningsOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/followers:
|
||
|
get:
|
||
|
summary: Get followers
|
||
|
operationId: GetFollowersAdmin
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
parameters:
|
||
|
- $ref: "#/components/parameters/Offset"
|
||
|
- $ref: "#/components/parameters/Limit"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Paginated follower count
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/PaginatedFollowers"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: GetFollowersAdminOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/followers/pending:
|
||
|
get:
|
||
|
summary: Get a list of pending follow requests
|
||
|
operationId: GetPendingFollowRequests
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
responses:
|
||
|
'200':
|
||
|
description: List of pending followers
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/Followers"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: GetPendingFollowRequestsOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/followers/blocked:
|
||
|
get:
|
||
|
summary: Get a list of rejected or blocked follows
|
||
|
operationId: GetBlockedAndRejectedFollowers
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
responses:
|
||
|
'200':
|
||
|
description: List of rejected or blocked follows
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/Followers"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: GetBlockedAndRejectedFollowersOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/followers/approve:
|
||
|
post:
|
||
|
summary: Set the following state of a follower or follow request
|
||
|
operationId: ApproveFollower
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
actorIRI:
|
||
|
type: string
|
||
|
approved:
|
||
|
type: boolean
|
||
|
responses:
|
||
|
'200':
|
||
|
description: List of rejected or blocked follows
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: ApproveFollowerOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/emoji/upload:
|
||
|
post:
|
||
|
summary: Upload custom emoji
|
||
|
operationId: UploadCustomEmoji
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
name:
|
||
|
type: string
|
||
|
data:
|
||
|
description: Base 64 encoded image data
|
||
|
type: string
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Emoji has been uploaded
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: UploadCustomEmojiOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/emoji/delete:
|
||
|
post:
|
||
|
summary: Delete custom emoji
|
||
|
operationId: DeleteCustomEmoji
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
name:
|
||
|
type: string
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Emoji has been deleted
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: DeleteCustomEmojiOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/adminpass:
|
||
|
post:
|
||
|
summary: Change the current admin password
|
||
|
operationId: SetAdminPassword
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Admin password has been updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetAdminPasswordOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/streamkeys:
|
||
|
post:
|
||
|
summary: Set an array of valid stream keys
|
||
|
operationId: SetStreamKeys
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
value:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: "#/components/schemas/StreamKey"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Stream keys have been updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetStreamKeysOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/pagecontent:
|
||
|
post:
|
||
|
summary: Change the extra page content in memory
|
||
|
operationId: SetExtraPageContent
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Page content has been changed
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetExtraPageContentOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/streamtitle:
|
||
|
post:
|
||
|
summary: Change the stream title
|
||
|
operationId: SetStreamTitle
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Stream title has been changed
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetStreamTitleOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/name:
|
||
|
post:
|
||
|
summary: Change the server name
|
||
|
operationId: SetServerName
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Server name has been changed
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetServerNameOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/serversummary:
|
||
|
post:
|
||
|
summary: Change the server summary
|
||
|
operationId: SetServerSummary
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Server summary has been changed
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetServerSummaryOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/offlinemessage:
|
||
|
post:
|
||
|
summary: Change the offline message
|
||
|
operationId: SetCustomOfflineMessage
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Offline message has been changed
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetCustomOfflineMessageOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/welcomemessage:
|
||
|
post:
|
||
|
summary: Change the welcome message
|
||
|
operationId: SetServerWelcomeMessage
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Welcome message has been changed
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetServerWelcomeMessageOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/chat/disable:
|
||
|
post:
|
||
|
summary: Disable chat
|
||
|
operationId: SetChatDisabled
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Chat has been disabled
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetChatDisabledOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/chat/joinmessagesenabled:
|
||
|
post:
|
||
|
summary: Enable chat for user join messages
|
||
|
operationId: SetChatJoinMessagesEnabled
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: User join messages has been enabled
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetChatJoinMessagesEnabledOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/chat/establishedusermode:
|
||
|
post:
|
||
|
summary: Enable/disable chat established user mode
|
||
|
operationId: SetEnableEstablishedChatUserMode
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Chat established user mode updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetEnableEstablishedChatUserModeOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/chat/forbiddenusernames:
|
||
|
post:
|
||
|
summary: Set chat usernames that are not allowed
|
||
|
operationId: SetForbiddenUsernameList
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
value:
|
||
|
type: array
|
||
|
items:
|
||
|
type: string
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Forbidden usernames updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetForbiddenUsernameListOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/chat/suggestedusernames:
|
||
|
post:
|
||
|
summary: Set the suggested chat usernames that will be assigned automatically
|
||
|
operationId: SetSuggestedUsernameList
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
value:
|
||
|
type: array
|
||
|
items:
|
||
|
type: string
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Suggested usernames updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetSuggestedUsernameListOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/chat/spamprotectionenabled:
|
||
|
post:
|
||
|
summary: Set spam protection enabled
|
||
|
operationId: SetChatSpamProtectionEnabled
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Spam protection enabled updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetChatSpamProtectionEnabledOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/chat/slurfilterenabled:
|
||
|
post:
|
||
|
summary: Set slur filter enabled
|
||
|
operationId: SetChatSlurFilterEnabled
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Slur filter enabled updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetChatSlurFilterEnabledOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/video/codec:
|
||
|
post:
|
||
|
summary: Set video codec
|
||
|
operationId: SetVideoCodec
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Video codec updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetVideoCodecOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/video/streamlatencylevel:
|
||
|
post:
|
||
|
summary: Set the number of video segments and duration per segment in a playlist
|
||
|
operationId: SetStreamLatencyLevel
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Stream latency updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetStreamLatencyLevelOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/video/streamoutputvariants:
|
||
|
post:
|
||
|
summary: Set an array of video output configurations
|
||
|
operationId: SetStreamOutputVariants
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
value:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: '#/components/schemas/StreamOutputVariant'
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Stream Output Variants updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetStreamOutputVariantsOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/appearance:
|
||
|
post:
|
||
|
summary: Set style/color/css values
|
||
|
operationId: SetCustomColorVariableValues
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
value:
|
||
|
type: object
|
||
|
additionalProperties:
|
||
|
type: string
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Appearance updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetCustomColorVariableValuesOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/logo:
|
||
|
post:
|
||
|
summary: Update logo
|
||
|
operationId: SetLogo
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Logo updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetLogoOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/tags:
|
||
|
post:
|
||
|
summary: Update server tags
|
||
|
operationId: SetTags
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Tags updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetTagsOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/ffmpegpath:
|
||
|
post:
|
||
|
summary: Update FFMPEG path
|
||
|
operationId: SetFfmpegPath
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Path updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetFfmpegPathOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/webserverport:
|
||
|
post:
|
||
|
summary: Update server port
|
||
|
operationId: SetWebServerPort
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Port updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetWebServerPortOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/webserverip:
|
||
|
post:
|
||
|
summary: Update server IP address
|
||
|
operationId: SetWebServerIP
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: IP Address updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetWebServerIPOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/rtmpserverport:
|
||
|
post:
|
||
|
summary: Update RTMP post
|
||
|
operationId: SetRTMPServerPort
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: RTMP port updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetRTMPServerPortOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/sockethostoverride:
|
||
|
post:
|
||
|
summary: Update websocket host override
|
||
|
operationId: SetSocketHostOverride
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Websocket host override updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetSocketHostOverrideOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/videoservingendpoint:
|
||
|
post:
|
||
|
summary: Update custom video serving endpoint
|
||
|
operationId: SetVideoServingEndpoint
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Video Serving Endpoint updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetVideoServingEndpointOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/nsfw:
|
||
|
post:
|
||
|
summary: Update NSFW marking
|
||
|
operationId: SetNSFW
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: NSFW status updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetNSFWOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/directoryenabled:
|
||
|
post:
|
||
|
summary: Update directory enabled
|
||
|
operationId: SetDirectoryEnabled
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Directory Enabled updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetDirectoryEnabledOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/socialhandles:
|
||
|
post:
|
||
|
summary: Update social handles
|
||
|
operationId: SetSocialHandles
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
value:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: "#/components/schemas/SocialHandle"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Social handles updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetSocialHandlesOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/s3:
|
||
|
post:
|
||
|
summary: Update S3 configuration
|
||
|
operationId: SetS3Configuration
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
value:
|
||
|
$ref: "#/components/schemas/S3Info"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Directory Enabled updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetS3ConfigurationOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/serverurl:
|
||
|
post:
|
||
|
summary: Update server url
|
||
|
operationId: SetServerURL
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Server URL updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetServerURLOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/externalactions:
|
||
|
post:
|
||
|
summary: Update external action links
|
||
|
operationId: SetExternalActions
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
value:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: "#/components/schemas/ExternalAction"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: External Action Links updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetExternalActionsOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/customstyles:
|
||
|
post:
|
||
|
summary: Update custom styles
|
||
|
operationId: SetCustomStyles
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Custom styles updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetCustomStylesOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/customjavascript:
|
||
|
post:
|
||
|
summary: Update custom JavaScript
|
||
|
operationId: SetCustomJavascript
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Custom JavaScript updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetCustomJavascriptOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/hideviewercount:
|
||
|
post:
|
||
|
summary: Update hide viewer count
|
||
|
operationId: SetHideViewerCount
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Hide viewer count updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetHideViewerCountOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/disablesearchindexing:
|
||
|
post:
|
||
|
summary: Update search indexing
|
||
|
operationId: SetDisableSearchIndexing
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Search Indexing updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetDisableSearchIndexingOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/federation/enable:
|
||
|
post:
|
||
|
summary: Enable/disable federation features
|
||
|
operationId: SetFederationEnabled
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Federation features enabled/disabled
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetFederationEnabledOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/federation/private:
|
||
|
post:
|
||
|
summary: Set if federation activities are private
|
||
|
operationId: SetFederationActivityPrivate
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Private status set
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetFederationActivityPrivateOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/federation/showengagement:
|
||
|
post:
|
||
|
summary: Set if fediverse engagement appears in chat
|
||
|
operationId: SetFederationShowEngagement
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Federation engagement set
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetFederationShowEngagementOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/federation/username:
|
||
|
post:
|
||
|
summary: Set local federated username
|
||
|
operationId: SetFederationUsername
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Federation username set
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetFederationUsernameOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/federation/livemessage:
|
||
|
post:
|
||
|
summary: Set federated go live message
|
||
|
operationId: SetFederationGoLiveMessage
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Federation username set
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetFederationGoLiveMessageOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/federation/blockdomains:
|
||
|
post:
|
||
|
summary: Set Federation blocked domains
|
||
|
operationId: SetFederationBlockDomains
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Federation blocked domains set
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetFederationBlockDomainsOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/notifications/discord:
|
||
|
post:
|
||
|
summary: Configure Discord notifications
|
||
|
operationId: SetDiscordNotificationConfiguration
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
value:
|
||
|
$ref: "#/components/schemas/DiscordNotificationConfiguration"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Discord notification configuration updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetDiscordNotificationConfigurationOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/config/notifications/browser:
|
||
|
post:
|
||
|
summary: Configure Browser notifications
|
||
|
operationId: SetBrowserNotificationConfiguration
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
value:
|
||
|
$ref: "#/components/schemas/BrowserNotificationConfiguration"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Browser notification configuration updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SetBrowserNotificationConfigurationOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/webhooks:
|
||
|
get:
|
||
|
summary: Get all the webhooks
|
||
|
operationId: GetWebhooks
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
responses:
|
||
|
'200':
|
||
|
description: All webhooks
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: "#/components/schemas/Webhook"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: GetWebhooksOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/webhooks/delete:
|
||
|
post:
|
||
|
summary: Delete a single webhook
|
||
|
operationId: DeleteWebhook
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
id:
|
||
|
type: integer
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Webhook successfully deleted
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: DeleteWebhookOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/webhooks/create:
|
||
|
post:
|
||
|
summary: Create a single webhook
|
||
|
operationId: CreateWebhook
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
url:
|
||
|
type: string
|
||
|
events:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: "#/components/schemas/WebhookEventType"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: The new webhook
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/Webhook"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: CreateWebhookOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/accesstokens:
|
||
|
get:
|
||
|
summary: Get all access tokens
|
||
|
operationId: GetExternalAPIUsers
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
responses:
|
||
|
'200':
|
||
|
description: List of external API users
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: "#/components/schemas/ExternalAPIUser"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: GetExternalAPIUsersOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/accesstokens/delete:
|
||
|
post:
|
||
|
summary: Delete a single external API user
|
||
|
operationId: DeleteExternalAPIUser
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
token:
|
||
|
type: string
|
||
|
responses:
|
||
|
'200':
|
||
|
description: External API user successfully deleted
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: DeleteExternalAPIUserOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/accesstokens/create:
|
||
|
post:
|
||
|
summary: Create a single access token
|
||
|
operationId: CreateExternalAPIUser
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
name:
|
||
|
type: string
|
||
|
scopes:
|
||
|
type: array
|
||
|
items:
|
||
|
type: string
|
||
|
responses:
|
||
|
'200':
|
||
|
description: The new external API user
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/ExternalAPIUser"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: CreateExternalAPIUserOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/update/options:
|
||
|
get:
|
||
|
summary: Return the auto-update features that are supported for this instance
|
||
|
operationId: AutoUpdateOptions
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Current auto-update options
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
supportsUpdate:
|
||
|
type: boolean
|
||
|
canRestart:
|
||
|
type: boolean
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: AutoUpdateOptionsOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/update/start:
|
||
|
get:
|
||
|
summary: Begin the auto-update
|
||
|
operationId: AutoUpdateStart
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Console output from update
|
||
|
content:
|
||
|
text/plain:
|
||
|
schema:
|
||
|
type: string
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: AutoUpdateStartOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/update/forcequit:
|
||
|
get:
|
||
|
summary: Force quit the server and restart it
|
||
|
operationId: AutoUpdateForceQuit
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Server force restart has been ordered
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: AutoUpdateForceQuitOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/yp/reset:
|
||
|
get:
|
||
|
summary: Reset YP configuration
|
||
|
operationId: ResetYPRegistration
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
responses:
|
||
|
'200':
|
||
|
description: YP Registration has been reset
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: ResetYPRegistrationOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/metrics/video:
|
||
|
get:
|
||
|
summary: Get video playback metrics
|
||
|
operationId: GetVideoPlaybackMetrics
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Video playback metrics
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
errors:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: '#/components/schemas/TimestampedValue'
|
||
|
qualityVariantChanges:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: '#/components/schemas/TimestampedValue'
|
||
|
highestLatency:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: '#/components/schemas/TimestampedValue'
|
||
|
medianLatency:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: '#/components/schemas/TimestampedValue'
|
||
|
lowestLatency:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: '#/components/schemas/TimestampedValue'
|
||
|
medianSegmentDownloadDuration:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: '#/components/schemas/TimestampedValue'
|
||
|
maximumSegmentDownloadDuration:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: '#/components/schemas/TimestampedValue'
|
||
|
minimumSegmentDownloadDuration:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: '#/components/schemas/TimestampedValue'
|
||
|
minPlayerBitrate:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: '#/components/schemas/TimestampedValue'
|
||
|
medianPlayerBitrate:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: '#/components/schemas/TimestampedValue'
|
||
|
maxPlayerBitrate:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: '#/components/schemas/TimestampedValue'
|
||
|
availableBitrates:
|
||
|
type: array
|
||
|
items:
|
||
|
type: integer
|
||
|
segmentLength:
|
||
|
type: integer
|
||
|
representation:
|
||
|
type: integer
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: GetVideoPlaybackMetricsOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/prometheus:
|
||
|
get:
|
||
|
summary: Endpoint to interface with Prometheus
|
||
|
description: |-
|
||
|
This endpoint interfaces with the Prometheus metrics API.
|
||
|
|
||
|
Learn more about it on the [Prometheus API docs](https://prometheus.io/docs/prometheus/latest/querying/api/)
|
||
|
operationId: GetPrometheusAPI
|
||
|
post:
|
||
|
summary: Endpoint to interface with Prometheus
|
||
|
description: |-
|
||
|
This endpoint interfaces with the Prometheus metrics API.
|
||
|
|
||
|
Learn more about it on the [Prometheus API docs](https://prometheus.io/docs/prometheus/latest/querying/api/)
|
||
|
operationId: PostPrometheusAPI
|
||
|
put:
|
||
|
summary: Endpoint to interface with Prometheus
|
||
|
description: |-
|
||
|
This endpoint interfaces with the Prometheus metrics API.
|
||
|
|
||
|
Learn more about it on the [Prometheus API docs](https://prometheus.io/docs/prometheus/latest/querying/api/)
|
||
|
operationId: PutPrometheusAPI
|
||
|
delete:
|
||
|
summary: Endpoint to interface with Prometheus
|
||
|
description: |-
|
||
|
This endpoint interfaces with the Prometheus metrics API.
|
||
|
|
||
|
Learn more about it on the [Prometheus API docs](https://prometheus.io/docs/prometheus/latest/querying/api/)
|
||
|
operationId: DeletePrometheusAPI
|
||
|
options:
|
||
|
summary: Endpoint to interface with Prometheus
|
||
|
description: |-
|
||
|
This endpoint interfaces with the Prometheus metrics API.
|
||
|
|
||
|
Learn more about it on the [Prometheus API docs](https://prometheus.io/docs/prometheus/latest/querying/api/)
|
||
|
operationId: OptionsPrometheusAPI
|
||
|
/admin/federation/send:
|
||
|
post:
|
||
|
summary: Send a public message to the Fediverse from the server's user
|
||
|
operationId: SendFederatedMessage
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Message sent
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SendFederatedMessageOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/admin/federation/actions:
|
||
|
get:
|
||
|
summary: Get a paginated list of federated activities
|
||
|
operationId: GetFederatedActions
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
parameters:
|
||
|
- $ref: "#/components/parameters/Offset"
|
||
|
- $ref: "#/components/parameters/Limit"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: A paginated list of federated activities
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/PaginatedFederatedActivity"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: GetFederatedActionsOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/integrations/chat/system:
|
||
|
post:
|
||
|
summary: Send a system message to the chat
|
||
|
operationId: SendSystemMessage
|
||
|
security:
|
||
|
- BearerAuth: []
|
||
|
requestBody:
|
||
|
description: The content of the system message
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/SystemMessage"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Message sent successfully
|
||
|
headers:
|
||
|
'Access-Control-Allow-Origin':
|
||
|
$ref: "#/components/headers/Access-Control-Allow-Origin"
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401"
|
||
|
'500':
|
||
|
$ref: "#/components/responses/500"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SendSystemMessageOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/integrations/chat/system/client/{clientId}:
|
||
|
post:
|
||
|
summary: Send a system message to a single client
|
||
|
operationId: SendSystemMessageToConnectedClient
|
||
|
security:
|
||
|
- BearerAuth: []
|
||
|
parameters:
|
||
|
- in: path
|
||
|
name: clientId
|
||
|
required: true
|
||
|
schema:
|
||
|
type: integer
|
||
|
description: The ID of the specified client
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/SystemMessage"
|
||
|
responses:
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401"
|
||
|
'500':
|
||
|
$ref: "#/components/responses/500"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SendSystemMessageToConnectedClientOptions
|
||
|
parameters:
|
||
|
- in: path
|
||
|
name: clientId
|
||
|
required: true
|
||
|
schema:
|
||
|
type: integer
|
||
|
description: The ID of the specified client
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/integrations/chat/user:
|
||
|
post:
|
||
|
deprecated: true
|
||
|
summary: Send a user message to chat
|
||
|
operationId: SendUserMessage
|
||
|
security:
|
||
|
- BearerAuth: []
|
||
|
responses:
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
options:
|
||
|
deprecated: true
|
||
|
operationId: SendUserMessageOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/integrations/chat/send:
|
||
|
post:
|
||
|
summary: Send a message to chat as a specific 3rd party bot/integration based on its access token
|
||
|
operationId: SendIntegrationChatMessage
|
||
|
security:
|
||
|
- BearerAuth: []
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/UserMessage"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Message sent successfully
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401"
|
||
|
'500':
|
||
|
$ref: "#/components/responses/500"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SendIntegrationChatMessageOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/integrations/chat/action:
|
||
|
post:
|
||
|
summary: Send a user action to chat
|
||
|
operationId: SendChatAction
|
||
|
security:
|
||
|
- BearerAuth: []
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/SystemActionEvent"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Action sent successfully
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401"
|
||
|
'500':
|
||
|
$ref: "#/components/responses/500"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: SendChatActionOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/integrations/chat/messagevisibility:
|
||
|
post:
|
||
|
summary: Hide chat message
|
||
|
operationId: ExternalUpdateMessageVisibility
|
||
|
security:
|
||
|
- BearerAuth: []
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/MessageVisibilityUpdate"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Messages updated
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: ExternalUpdateMessageVisibilityOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/integrations/streamtitle:
|
||
|
post:
|
||
|
summary: Stream title
|
||
|
operationId: ExternalSetStreamTitle
|
||
|
security:
|
||
|
- BearerAuth: []
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/AdminConfigValue"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Stream title has been changed
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: ExternalSetStreamTitleOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/integrations/chat:
|
||
|
get:
|
||
|
summary: Get chat history
|
||
|
operationId: ExternalGetChatMessages
|
||
|
security:
|
||
|
- BearerAuth: []
|
||
|
responses:
|
||
|
'200':
|
||
|
description: List of chat messages
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/ChatMessages"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401"
|
||
|
'501':
|
||
|
$ref: "#/components/responses/501"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: ExternalGetChatMessagesOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/integrations/clients:
|
||
|
get:
|
||
|
summary: Connected clients
|
||
|
operationId: ExternalGetConnectedChatClients
|
||
|
security:
|
||
|
- BearerAuth: []
|
||
|
responses:
|
||
|
'200':
|
||
|
description: List of chat clients
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/ChatClients"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401BasicAuth"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
options:
|
||
|
operationId: ExternalGetConnectedChatClientsOptions
|
||
|
responses:
|
||
|
'204':
|
||
|
$ref: "#/components/responses/204"
|
||
|
/moderation/chat/user/{userId}:
|
||
|
get:
|
||
|
summary: Get a user's details
|
||
|
operationId: GetUserDetails
|
||
|
parameters:
|
||
|
- in: path
|
||
|
name: userId
|
||
|
schema:
|
||
|
type: string
|
||
|
description: The ID of the user to find
|
||
|
required: true
|
||
|
- $ref: "#/components/parameters/AccessToken"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: User information
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/ModerationUserDetails"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401"
|
||
|
'404':
|
||
|
$ref: "#/components/responses/404"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
/auth/indieauth:
|
||
|
post:
|
||
|
summary: Begins auth flow
|
||
|
operationId: StartIndieAuthFlow
|
||
|
parameters:
|
||
|
- $ref: "#/components/parameters/AccessToken"
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
authHost:
|
||
|
type: string
|
||
|
responses:
|
||
|
'200':
|
||
|
description: Authentication redirect
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
redirect:
|
||
|
type: string
|
||
|
format: url
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401"
|
||
|
default:
|
||
|
$ref: "#/components/responses/Default"
|
||
|
/auth/indieauth/callback:
|
||
|
get:
|
||
|
summary: Handle the redirect from an IndieAuth server to continue the auth flow
|
||
|
operationId: HandleIndieAuthRedirect
|
||
|
parameters:
|
||
|
- $ref: "#/components/parameters/IndieAuthState"
|
||
|
- $ref: "#/components/parameters/IndieAuthCode"
|
||
|
responses:
|
||
|
'307':
|
||
|
description: Redirected to home page
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
/auth/provider/indieauth:
|
||
|
get:
|
||
|
summary: Handles the IndieAuth auth endpoint
|
||
|
operationId: HandleIndieAuthEndpointGet
|
||
|
security:
|
||
|
- BasicAuth: []
|
||
|
parameters:
|
||
|
- $ref: "#/components/parameters/IndieAuthClientId"
|
||
|
- $ref: "#/components/parameters/IndieAuthRedirectURI"
|
||
|
- $ref: "#/components/parameters/IndieAuthCodeChallenge"
|
||
|
- $ref: "#/components/parameters/IndieAuthState"
|
||
|
- $ref: "#/components/parameters/IndieAuthCode"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: IndieAuth flow concluded
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/IndieAuthResponse"
|
||
|
'307':
|
||
|
description: Redirected to redirect URI
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'500':
|
||
|
$ref: "#/components/responses/500"
|
||
|
post:
|
||
|
summary: Handles IndieAuth from form submission
|
||
|
operationId: HandleIndieAuthEndpointPost
|
||
|
requestBody:
|
||
|
$ref: "#/components/requestBodies/IndieAuthEndpointForm"
|
||
|
responses:
|
||
|
'200':
|
||
|
description: IndieAuth flow concluded
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
oneOf:
|
||
|
- $ref: "#/components/schemas/IndieAuthResponse"
|
||
|
- $ref: "#/components/schemas/IndieAuthServerProfileResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
/auth/fediverse:
|
||
|
post:
|
||
|
summary: Register a Fediverse OTP request
|
||
|
operationId: RegisterFediverseOTPRequest
|
||
|
parameters:
|
||
|
- $ref: "#/components/parameters/AccessToken"
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
account:
|
||
|
type: string
|
||
|
responses:
|
||
|
'200':
|
||
|
description: OTP sent
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'401':
|
||
|
$ref: "#/components/responses/401"
|
||
|
/auth/fediverse/verify:
|
||
|
post:
|
||
|
summary: Verify Fediverse OTP code
|
||
|
operationId: VerifyFediverseOTPRequest
|
||
|
requestBody:
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
code:
|
||
|
type: string
|
||
|
responses:
|
||
|
'200':
|
||
|
description: OTP Verified
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'400':
|
||
|
$ref: "#/components/responses/400"
|
||
|
'403':
|
||
|
$ref: "#/components/responses/403"
|
||
|
|
||
|
components:
|
||
|
schemas:
|
||
|
Error:
|
||
|
type: object
|
||
|
description: Structure for an error response
|
||
|
properties:
|
||
|
error:
|
||
|
type: string
|
||
|
BaseAPIResponse:
|
||
|
type: object
|
||
|
description: Simple API response
|
||
|
properties:
|
||
|
message:
|
||
|
type: string
|
||
|
success:
|
||
|
type: boolean
|
||
|
Status:
|
||
|
type: object
|
||
|
description: Response for status
|
||
|
properties:
|
||
|
serverTime:
|
||
|
type: string
|
||
|
lastConnectTime:
|
||
|
type: string
|
||
|
lastDisconnectTime:
|
||
|
type: string
|
||
|
versionNumber:
|
||
|
type: string
|
||
|
viewerCount:
|
||
|
type: integer
|
||
|
online:
|
||
|
type: boolean
|
||
|
Emojis:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: "#/components/schemas/Emoji"
|
||
|
Emoji:
|
||
|
type: object
|
||
|
description: Name and url for an emoji
|
||
|
properties:
|
||
|
name:
|
||
|
type: string
|
||
|
description: The name of the emoji
|
||
|
url:
|
||
|
type: string
|
||
|
description: URL for the emoji image
|
||
|
AnonymousUser:
|
||
|
type: object
|
||
|
properties:
|
||
|
id:
|
||
|
type: string
|
||
|
accessToken:
|
||
|
type: string
|
||
|
displayName:
|
||
|
type: string
|
||
|
User:
|
||
|
type: object
|
||
|
properties:
|
||
|
createdAt:
|
||
|
type: string
|
||
|
disabledAt:
|
||
|
type: string
|
||
|
nameChangedAt:
|
||
|
type: string
|
||
|
id:
|
||
|
type: string
|
||
|
displayName:
|
||
|
type: string
|
||
|
previousNames:
|
||
|
type: array
|
||
|
items:
|
||
|
type: string
|
||
|
scopes:
|
||
|
type: array
|
||
|
items:
|
||
|
type: string
|
||
|
displayColor:
|
||
|
type: integer
|
||
|
isBot:
|
||
|
type: boolean
|
||
|
authenticated:
|
||
|
type: boolean
|
||
|
Users:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: "#/components/schemas/User"
|
||
|
Follower:
|
||
|
type: object
|
||
|
properties:
|
||
|
link:
|
||
|
type: string
|
||
|
description: The IRI of the remote actor.
|
||
|
name:
|
||
|
type: string
|
||
|
description: The display name of the follower.
|
||
|
username:
|
||
|
type: string
|
||
|
description: The account username of the remote actor.
|
||
|
image:
|
||
|
type: string
|
||
|
description: The avatar image of the follower.
|
||
|
timestamp:
|
||
|
type: string
|
||
|
description: When this follow request was created.
|
||
|
disabledAt:
|
||
|
type: string
|
||
|
description: When this follower was rejected or disabled.
|
||
|
Followers:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: "#/components/schemas/Follower"
|
||
|
PaginatedFollowers:
|
||
|
type: object
|
||
|
properties:
|
||
|
total:
|
||
|
type: integer
|
||
|
results:
|
||
|
$ref: "#/components/schemas/Followers"
|
||
|
Event:
|
||
|
type: object
|
||
|
properties:
|
||
|
timestamp:
|
||
|
type: string
|
||
|
type:
|
||
|
type: string
|
||
|
id:
|
||
|
type: string
|
||
|
UserEvent:
|
||
|
type: object
|
||
|
properties:
|
||
|
user:
|
||
|
$ref: "#/components/schemas/User"
|
||
|
hiddenAt:
|
||
|
type: string
|
||
|
clientId:
|
||
|
type: integer
|
||
|
MessageEvent:
|
||
|
type: object
|
||
|
properties:
|
||
|
body:
|
||
|
type: string
|
||
|
ChatMessages:
|
||
|
type: array
|
||
|
items:
|
||
|
anyOf:
|
||
|
- $ref: "#/components/schemas/UserMessage"
|
||
|
- $ref: "#/components/schemas/SystemMessage"
|
||
|
- $ref: "#/components/schemas/ActionMessage"
|
||
|
- $ref: "#/components/schemas/FederatedAction"
|
||
|
UserMessage:
|
||
|
type: object
|
||
|
allOf:
|
||
|
- $ref: "#/components/schemas/Event"
|
||
|
- $ref: "#/components/schemas/UserEvent"
|
||
|
- $ref: "#/components/schemas/MessageEvent"
|
||
|
SystemMessage:
|
||
|
type: object
|
||
|
allOf:
|
||
|
- $ref: "#/components/schemas/Event"
|
||
|
- $ref: "#/components/schemas/MessageEvent"
|
||
|
SystemActionEvent:
|
||
|
type: object
|
||
|
allOf:
|
||
|
- $ref: "#/components/schemas/Event"
|
||
|
- $ref: "#/components/schemas/MessageEvent"
|
||
|
ActionMessage:
|
||
|
type: object
|
||
|
allOf:
|
||
|
- $ref: "#/components/schemas/Event"
|
||
|
- $ref: "#/components/schemas/MessageEvent"
|
||
|
FederatedAction:
|
||
|
type: object
|
||
|
allOf:
|
||
|
- $ref: "#/components/schemas/Event"
|
||
|
- $ref: "#/components/schemas/MessageEvent"
|
||
|
- type: object
|
||
|
properties:
|
||
|
image:
|
||
|
type: string
|
||
|
link:
|
||
|
type: string
|
||
|
title:
|
||
|
type: string
|
||
|
WebConfig:
|
||
|
type: object
|
||
|
properties:
|
||
|
appearanceVariables:
|
||
|
type: object
|
||
|
additionalProperties:
|
||
|
type: string
|
||
|
name:
|
||
|
type: string
|
||
|
customStyles:
|
||
|
type: string
|
||
|
streamTitle:
|
||
|
type: string
|
||
|
offlineMessage:
|
||
|
type: string
|
||
|
logo:
|
||
|
type: string
|
||
|
version:
|
||
|
type: string
|
||
|
socketHostOverride:
|
||
|
type: string
|
||
|
extraPageContent:
|
||
|
type: string
|
||
|
summary:
|
||
|
type: string
|
||
|
tags:
|
||
|
type: array
|
||
|
items:
|
||
|
type: string
|
||
|
socialHandles:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: "#/components/schemas/SocialHandle"
|
||
|
externalActions:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: "#/components/schemas/ExternalAction"
|
||
|
notifications:
|
||
|
$ref: "#/components/schemas/NotificationConfig"
|
||
|
federation:
|
||
|
$ref: "#/components/schemas/FederationConfig"
|
||
|
maxSocketPayloadSize:
|
||
|
type: integer
|
||
|
hideViewerCount:
|
||
|
type: boolean
|
||
|
chatDisabled:
|
||
|
type: boolean
|
||
|
nsfw:
|
||
|
type: boolean
|
||
|
authentication:
|
||
|
$ref: "#/components/schemas/AuthenticationConfig"
|
||
|
SocialHandle:
|
||
|
type: object
|
||
|
properties:
|
||
|
platform:
|
||
|
type: string
|
||
|
url:
|
||
|
type: string
|
||
|
icon:
|
||
|
type: string
|
||
|
ExternalAction:
|
||
|
type: object
|
||
|
properties:
|
||
|
url:
|
||
|
type: string
|
||
|
html:
|
||
|
type: string
|
||
|
title:
|
||
|
type: string
|
||
|
description:
|
||
|
type: string
|
||
|
icon:
|
||
|
type: string
|
||
|
color:
|
||
|
type: string
|
||
|
openExternally:
|
||
|
type: boolean
|
||
|
NotificationConfig:
|
||
|
type: object
|
||
|
properties:
|
||
|
browser:
|
||
|
$ref: "#/components/schemas/BrowserConfig"
|
||
|
BrowserConfig:
|
||
|
type: object
|
||
|
properties:
|
||
|
publicKey:
|
||
|
type: string
|
||
|
enabled:
|
||
|
type: boolean
|
||
|
FederationConfig:
|
||
|
type: object
|
||
|
properties:
|
||
|
account:
|
||
|
type: string
|
||
|
followerCount:
|
||
|
type: integer
|
||
|
enabled:
|
||
|
type: boolean
|
||
|
AuthenticationConfig:
|
||
|
type: object
|
||
|
properties:
|
||
|
indieAuthEnabled:
|
||
|
type: boolean
|
||
|
YPDetails:
|
||
|
type: object
|
||
|
properties:
|
||
|
lastConnectTime:
|
||
|
type: string
|
||
|
name:
|
||
|
type: string
|
||
|
description:
|
||
|
type: string
|
||
|
streamTitle:
|
||
|
type: string
|
||
|
logo:
|
||
|
type: string
|
||
|
tags:
|
||
|
type: array
|
||
|
items:
|
||
|
type: string
|
||
|
social:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: '#/components/schemas/SocialHandle'
|
||
|
viewerCount:
|
||
|
type: integer
|
||
|
overallMaxViewerCount:
|
||
|
type: integer
|
||
|
sessionMaxViewerCount:
|
||
|
type: integer
|
||
|
nsfw:
|
||
|
type: boolean
|
||
|
online:
|
||
|
type: boolean
|
||
|
VideoVariant:
|
||
|
type: object
|
||
|
properties:
|
||
|
index:
|
||
|
type: integer
|
||
|
name:
|
||
|
type: string
|
||
|
PlaybackMetrics:
|
||
|
type: object
|
||
|
properties:
|
||
|
bandwidth:
|
||
|
type: number
|
||
|
format: double
|
||
|
latency:
|
||
|
type: number
|
||
|
format: double
|
||
|
errors:
|
||
|
type: number
|
||
|
format: double
|
||
|
downloadDuration:
|
||
|
type: number
|
||
|
format: double
|
||
|
qualityVariantChanges:
|
||
|
type: number
|
||
|
format: double
|
||
|
Broadcaster:
|
||
|
type: object
|
||
|
properties:
|
||
|
time:
|
||
|
type: string
|
||
|
format: date-time
|
||
|
remoteAddr:
|
||
|
type: string
|
||
|
streamDetails:
|
||
|
$ref: '#/components/schemas/InboundStreamDetails'
|
||
|
InboundStreamDetails:
|
||
|
type: object
|
||
|
properties:
|
||
|
videoCodec:
|
||
|
type: string
|
||
|
audioCodec:
|
||
|
type: string
|
||
|
encoder:
|
||
|
type: string
|
||
|
width:
|
||
|
type: integer
|
||
|
height:
|
||
|
type: integer
|
||
|
videoBitrate:
|
||
|
type: integer
|
||
|
audioBitrate:
|
||
|
type: integer
|
||
|
framerate:
|
||
|
type: number
|
||
|
format: float
|
||
|
CurrentBroadcast:
|
||
|
type: object
|
||
|
properties:
|
||
|
outputSettings:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: '#/components/schemas/StreamOutputVariant'
|
||
|
latencyLevel:
|
||
|
$ref: '#/components/schemas/LatencyLevel'
|
||
|
StreamOutputVariant:
|
||
|
type: object
|
||
|
properties:
|
||
|
name:
|
||
|
type: string
|
||
|
videoPassthrough:
|
||
|
type: boolean
|
||
|
audioPassthrough:
|
||
|
type: boolean
|
||
|
videoBitrate:
|
||
|
type: integer
|
||
|
audioBitrate:
|
||
|
type: integer
|
||
|
scaledWidth:
|
||
|
type: integer
|
||
|
scaledHeight:
|
||
|
type: integer
|
||
|
framerate:
|
||
|
type: integer
|
||
|
cpuUsageLevel:
|
||
|
type: integer
|
||
|
LatencyLevel:
|
||
|
type: object
|
||
|
properties:
|
||
|
level:
|
||
|
type: integer
|
||
|
StreamHealthOverview:
|
||
|
type: object
|
||
|
properties:
|
||
|
message:
|
||
|
type: string
|
||
|
healthPercentage:
|
||
|
type: integer
|
||
|
representation:
|
||
|
type: integer
|
||
|
healthy:
|
||
|
type: boolean
|
||
|
BrowserNotificationConfiguration:
|
||
|
type: object
|
||
|
properties:
|
||
|
goLiveMessage:
|
||
|
type: string
|
||
|
enabled:
|
||
|
type: boolean
|
||
|
DiscordNotificationConfiguration:
|
||
|
type: object
|
||
|
properties:
|
||
|
webhook:
|
||
|
type: string
|
||
|
goLiveMessage:
|
||
|
type: string
|
||
|
enabled:
|
||
|
type: boolean
|
||
|
S3Info:
|
||
|
type: object
|
||
|
properties:
|
||
|
endpoint:
|
||
|
type: string
|
||
|
accessKey:
|
||
|
type: string
|
||
|
secret:
|
||
|
type: string
|
||
|
bucket:
|
||
|
type: string
|
||
|
region:
|
||
|
type: string
|
||
|
acl:
|
||
|
type: string
|
||
|
pathPrefix:
|
||
|
type: string
|
||
|
enabled:
|
||
|
type: boolean
|
||
|
forcePathStyle:
|
||
|
type: boolean
|
||
|
StreamKey:
|
||
|
type: object
|
||
|
properties:
|
||
|
key:
|
||
|
type: string
|
||
|
comment:
|
||
|
type: string
|
||
|
TimestampedValue:
|
||
|
type: object
|
||
|
properties:
|
||
|
time:
|
||
|
type: string
|
||
|
format: date-time
|
||
|
value:
|
||
|
type: number
|
||
|
format: double
|
||
|
Viewer:
|
||
|
type: object
|
||
|
properties:
|
||
|
firstSeen:
|
||
|
type: string
|
||
|
format: date-time
|
||
|
geo:
|
||
|
$ref: '#/components/schemas/GeoDetails'
|
||
|
userAgent:
|
||
|
type: string
|
||
|
ipAddress:
|
||
|
type: string
|
||
|
clientID:
|
||
|
type: string
|
||
|
GeoDetails:
|
||
|
type: object
|
||
|
properties:
|
||
|
countryCode:
|
||
|
type: string
|
||
|
regionName:
|
||
|
type: string
|
||
|
timeZone:
|
||
|
type: string
|
||
|
CollectedMetrics:
|
||
|
type: object
|
||
|
properties:
|
||
|
disk:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: '#/components/schemas/TimestampedValue'
|
||
|
memory:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: '#/components/schemas/TimestampedValue'
|
||
|
cpu:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: '#/components/schemas/TimestampedValue'
|
||
|
ChatClient:
|
||
|
type: object
|
||
|
properties:
|
||
|
connectedAt:
|
||
|
type: string
|
||
|
format: date-time
|
||
|
user:
|
||
|
$ref: '#/components/schemas/User'
|
||
|
geo:
|
||
|
$ref: '#/components/schemas/GeoDetails'
|
||
|
userAgent:
|
||
|
type: string
|
||
|
messageCount:
|
||
|
type: integer
|
||
|
ChatClients:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: "#/components/schemas/ChatClient"
|
||
|
IPAddress:
|
||
|
type: object
|
||
|
properties:
|
||
|
createdAt:
|
||
|
type: string
|
||
|
format: date-time
|
||
|
ipAddress:
|
||
|
type: string
|
||
|
notes:
|
||
|
type: string
|
||
|
Webhook:
|
||
|
type: object
|
||
|
properties:
|
||
|
timestamp:
|
||
|
type: string
|
||
|
format: date-time
|
||
|
lastUsed:
|
||
|
type: string
|
||
|
format: date-time
|
||
|
url:
|
||
|
type: string
|
||
|
events:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: '#/components/schemas/WebhookEventType'
|
||
|
id:
|
||
|
type: integer
|
||
|
WebhookEventType:
|
||
|
type: string
|
||
|
enum:
|
||
|
- CHAT
|
||
|
- USER_JOINED
|
||
|
- USER_PARTED
|
||
|
- NAME_CHANGE
|
||
|
- VISIBILITY-UPDATE
|
||
|
- PING
|
||
|
- PONG
|
||
|
- STREAM_STARTED
|
||
|
- STREAM_STOPPED
|
||
|
- STREAM_TITLE_UPDATED
|
||
|
- SYSTEM
|
||
|
- CHAT_ACTION
|
||
|
ExternalAPIUser:
|
||
|
type: object
|
||
|
properties:
|
||
|
createdAt:
|
||
|
type: string
|
||
|
format: date-time
|
||
|
lastUsedAt:
|
||
|
type: string
|
||
|
format: date-time
|
||
|
id:
|
||
|
type: string
|
||
|
accessToken:
|
||
|
type: string
|
||
|
displayName:
|
||
|
type: string
|
||
|
type:
|
||
|
type: string
|
||
|
scopes:
|
||
|
type: array
|
||
|
items:
|
||
|
type: string
|
||
|
displayColor:
|
||
|
type: integer
|
||
|
isBot:
|
||
|
type: boolean
|
||
|
MessageVisibilityUpdate:
|
||
|
type: object
|
||
|
properties:
|
||
|
idArray:
|
||
|
type: array
|
||
|
items:
|
||
|
type: string
|
||
|
visible:
|
||
|
type: boolean
|
||
|
ModerationUserDetails:
|
||
|
type: object
|
||
|
properties:
|
||
|
user:
|
||
|
$ref: "#/components/schemas/User"
|
||
|
connectedClients:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: "#/components/schemas/ModerationConnectedClient"
|
||
|
messages:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: "#/components/schemas/UserMessage"
|
||
|
ModerationConnectedClient:
|
||
|
type: object
|
||
|
properties:
|
||
|
connectedAt:
|
||
|
type: string
|
||
|
format: date-time
|
||
|
userAgent:
|
||
|
type: string
|
||
|
geo:
|
||
|
type: string
|
||
|
id:
|
||
|
type: integer
|
||
|
format: int64
|
||
|
messageCount:
|
||
|
type: integer
|
||
|
FederatedActivity:
|
||
|
type: object
|
||
|
properties:
|
||
|
timestamp:
|
||
|
type: string
|
||
|
format: date-time
|
||
|
iri:
|
||
|
type: string
|
||
|
actorIRI:
|
||
|
type: string
|
||
|
type:
|
||
|
type: string
|
||
|
PaginatedFederatedActivity:
|
||
|
type: object
|
||
|
properties:
|
||
|
total:
|
||
|
type: integer
|
||
|
results:
|
||
|
$ref: "#/components/schemas/FederatedActivity"
|
||
|
AdminStatus:
|
||
|
type: object
|
||
|
properties:
|
||
|
broadcaster:
|
||
|
$ref: '#/components/schemas/Broadcaster'
|
||
|
currentBroadcast:
|
||
|
$ref: '#/components/schemas/CurrentBroadcast'
|
||
|
health:
|
||
|
$ref: '#/components/schemas/StreamHealthOverview'
|
||
|
streamTitle:
|
||
|
type: string
|
||
|
versionNumber:
|
||
|
type: string
|
||
|
viewerCount:
|
||
|
type: integer
|
||
|
overallPeakViewerCount:
|
||
|
type: integer
|
||
|
sessionPeakViewerCount:
|
||
|
type: integer
|
||
|
online:
|
||
|
type: boolean
|
||
|
AdminServerConfig:
|
||
|
type: object
|
||
|
properties:
|
||
|
instanceDetails:
|
||
|
$ref: '#/components/schemas/AdminWebConfig'
|
||
|
notifications:
|
||
|
$ref: '#/components/schemas/AdminNotificationsConfig'
|
||
|
yp:
|
||
|
$ref: '#/components/schemas/AdminYPInfo'
|
||
|
ffmpegPath:
|
||
|
type: string
|
||
|
adminPassword:
|
||
|
type: string
|
||
|
socketHostOverride:
|
||
|
type: string
|
||
|
webServerIP:
|
||
|
type: string
|
||
|
videoCodec:
|
||
|
type: string
|
||
|
videoServingEndpoint:
|
||
|
type: string
|
||
|
s3:
|
||
|
$ref: '#/components/schemas/S3Info'
|
||
|
federation:
|
||
|
$ref: '#/components/schemas/AdminFederationConfig'
|
||
|
supportedCodecs:
|
||
|
type: array
|
||
|
items:
|
||
|
type: string
|
||
|
externalActions:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: '#/components/schemas/ExternalAction'
|
||
|
forbiddenUsernames:
|
||
|
type: array
|
||
|
items:
|
||
|
type: string
|
||
|
suggestedUsernames:
|
||
|
type: array
|
||
|
items:
|
||
|
type: string
|
||
|
streamKeys:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: '#/components/schemas/StreamKey'
|
||
|
videoSettings:
|
||
|
$ref: '#/components/schemas/AdminVideoSettings'
|
||
|
rtmpServerPort:
|
||
|
type: integer
|
||
|
webServerPort:
|
||
|
type: integer
|
||
|
chatDisabled:
|
||
|
type: boolean
|
||
|
chatJoinMessagesEnabled:
|
||
|
type: boolean
|
||
|
chatEstablishedUserMode:
|
||
|
type: boolean
|
||
|
disableSearchIndexing:
|
||
|
type: boolean
|
||
|
streamKeyOverridden:
|
||
|
type: boolean
|
||
|
hideViewerCount:
|
||
|
type: boolean
|
||
|
AdminWebConfig:
|
||
|
type: object
|
||
|
properties:
|
||
|
appearanceVariables:
|
||
|
type: object
|
||
|
additionalProperties:
|
||
|
type: string
|
||
|
version:
|
||
|
type: string
|
||
|
welcomeMessage:
|
||
|
type: string
|
||
|
offlineMessage:
|
||
|
type: string
|
||
|
logo:
|
||
|
type: string
|
||
|
name:
|
||
|
type: string
|
||
|
extraPageContent:
|
||
|
type: string
|
||
|
streamTitle:
|
||
|
type: string
|
||
|
customStyles:
|
||
|
type: string
|
||
|
customJavascript:
|
||
|
type: string
|
||
|
summary:
|
||
|
type: string
|
||
|
tags:
|
||
|
type: array
|
||
|
items:
|
||
|
type: string
|
||
|
socialHandles:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: '#/components/schemas/SocialHandle'
|
||
|
nsfw:
|
||
|
type: boolean
|
||
|
AdminNotificationsConfig:
|
||
|
type: object
|
||
|
properties:
|
||
|
browser:
|
||
|
$ref: '#/components/schemas/BrowserNotificationConfiguration'
|
||
|
discord:
|
||
|
$ref: '#/components/schemas/DiscordNotificationConfiguration'
|
||
|
AdminYPInfo:
|
||
|
type: object
|
||
|
properties:
|
||
|
instanceUrl:
|
||
|
type: string
|
||
|
enabled:
|
||
|
type: boolean
|
||
|
AdminFederationConfig:
|
||
|
type: object
|
||
|
properties:
|
||
|
username:
|
||
|
type: string
|
||
|
goLiveMessage:
|
||
|
type: string
|
||
|
blockedDomains:
|
||
|
type: array
|
||
|
items:
|
||
|
type: string
|
||
|
enabled:
|
||
|
type: boolean
|
||
|
isPrivate:
|
||
|
type: boolean
|
||
|
showEngagement:
|
||
|
type: boolean
|
||
|
AdminVideoSettings:
|
||
|
type: object
|
||
|
properties:
|
||
|
videoQualityVariants:
|
||
|
type: array
|
||
|
items:
|
||
|
$ref: '#/components/schemas/StreamOutputVariant'
|
||
|
latencyLevel:
|
||
|
type: integer
|
||
|
AdminLog:
|
||
|
type: object
|
||
|
properties:
|
||
|
time:
|
||
|
type: string
|
||
|
format: date-time
|
||
|
message:
|
||
|
type: string
|
||
|
level:
|
||
|
type: string
|
||
|
AdminConfigValue:
|
||
|
type: object
|
||
|
properties:
|
||
|
value:
|
||
|
oneOf:
|
||
|
- type: string
|
||
|
- type: boolean
|
||
|
- type: array
|
||
|
items:
|
||
|
type: string
|
||
|
- type: number
|
||
|
IndieAuthResponse:
|
||
|
type: object
|
||
|
properties:
|
||
|
me:
|
||
|
type: string
|
||
|
profile:
|
||
|
$ref: "#/components/schemas/IndieAuthProfile"
|
||
|
error:
|
||
|
type: string
|
||
|
errorDescription:
|
||
|
type: string
|
||
|
IndieAuthProfile:
|
||
|
type: object
|
||
|
properties:
|
||
|
name:
|
||
|
type: string
|
||
|
url:
|
||
|
type: string
|
||
|
photo:
|
||
|
type: string
|
||
|
IndieAuthServerProfileResponse:
|
||
|
type: object
|
||
|
properties:
|
||
|
me:
|
||
|
type: string
|
||
|
profile:
|
||
|
$ref: "#/components/schemas/IndieAuthServerProfile"
|
||
|
error:
|
||
|
type: string
|
||
|
errorDescription:
|
||
|
type: string
|
||
|
IndieAuthServerProfile:
|
||
|
type: object
|
||
|
properties:
|
||
|
name:
|
||
|
type: string
|
||
|
url:
|
||
|
type: string
|
||
|
photo:
|
||
|
type: string
|
||
|
|
||
|
headers:
|
||
|
'Access-Control-Allow-Origin':
|
||
|
schema:
|
||
|
type: string
|
||
|
'Access-Control-Allow-Credentials':
|
||
|
schema:
|
||
|
type: string
|
||
|
format: boolean
|
||
|
'Access-Control-Allow-Headers':
|
||
|
schema:
|
||
|
type: string
|
||
|
'WWW-Authenticate':
|
||
|
schema:
|
||
|
type: string
|
||
|
'X-Content-Type-Options':
|
||
|
schema:
|
||
|
type: string
|
||
|
|
||
|
requestBodies:
|
||
|
AdminConfigValue:
|
||
|
description: A single value that is used in the request
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/AdminConfigValue"
|
||
|
IndieAuthEndpointForm:
|
||
|
description: Form submission from IndieAuth
|
||
|
content:
|
||
|
application/x-www-form-urlencoded:
|
||
|
schema:
|
||
|
type: object
|
||
|
properties:
|
||
|
code:
|
||
|
type: string
|
||
|
redirect_uri:
|
||
|
type: string
|
||
|
client_id:
|
||
|
type: string
|
||
|
codeVerifier:
|
||
|
type: string
|
||
|
|
||
|
responses:
|
||
|
Default:
|
||
|
description: Unexpected error
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'204':
|
||
|
description: No Content
|
||
|
'204Options':
|
||
|
description: No Content
|
||
|
headers:
|
||
|
'Access-Control-Allow-Origin':
|
||
|
$ref: "#/components/headers/Access-Control-Allow-Origin"
|
||
|
'400':
|
||
|
description: Bad request
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/BaseAPIResponse"
|
||
|
'401':
|
||
|
description: Unauthorized
|
||
|
content:
|
||
|
text/plain:
|
||
|
schema:
|
||
|
type: string
|
||
|
'401BasicAuth':
|
||
|
description: Basic auth failure
|
||
|
headers:
|
||
|
'Access-Control-Allow-Origin':
|
||
|
$ref: "#/components/headers/Access-Control-Allow-Origin"
|
||
|
'Access-Control-Allow-Credentials':
|
||
|
$ref: "#/components/headers/Access-Control-Allow-Credentials"
|
||
|
'Access-Control-Allow-Headers':
|
||
|
$ref: "#/components/headers/Access-Control-Allow-Headers"
|
||
|
'WWW-Authenticate':
|
||
|
$ref: "#/components/headers/WWW-Authenticate"
|
||
|
'X-Content-Type-Options':
|
||
|
$ref: "#/components/headers/X-Content-Type-Options"
|
||
|
content:
|
||
|
text/plain:
|
||
|
schema:
|
||
|
type: string
|
||
|
'403':
|
||
|
description: Forbidden
|
||
|
'404':
|
||
|
description: Not found
|
||
|
'500':
|
||
|
description: Internal Server Error
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/Error"
|
||
|
'501':
|
||
|
description: Not Implemented
|
||
|
content:
|
||
|
application/json:
|
||
|
schema:
|
||
|
$ref: "#/components/schemas/Error"
|
||
|
|
||
|
parameters:
|
||
|
Offset:
|
||
|
in: query
|
||
|
name: offset
|
||
|
schema:
|
||
|
type: integer
|
||
|
description: The number of items to skip before starting to collect the result set
|
||
|
Limit:
|
||
|
in: query
|
||
|
name: limit
|
||
|
schema:
|
||
|
type: integer
|
||
|
description: The numbers of items to return
|
||
|
AccessToken:
|
||
|
in: query
|
||
|
name: accessToken
|
||
|
schema:
|
||
|
type: string
|
||
|
required: true
|
||
|
IndieAuthClientId:
|
||
|
in: query
|
||
|
name: client_id
|
||
|
schema:
|
||
|
type: string
|
||
|
required: true
|
||
|
IndieAuthRedirectURI:
|
||
|
in: query
|
||
|
name: redirect_uri
|
||
|
schema:
|
||
|
type: string
|
||
|
required: true
|
||
|
IndieAuthCodeChallenge:
|
||
|
in: query
|
||
|
name: code_challenge
|
||
|
schema:
|
||
|
type: string
|
||
|
required: true
|
||
|
IndieAuthState:
|
||
|
in: query
|
||
|
name: state
|
||
|
schema:
|
||
|
type: string
|
||
|
required: true
|
||
|
IndieAuthCode:
|
||
|
in: query
|
||
|
name: code
|
||
|
schema:
|
||
|
type: string
|
||
|
required: true
|
||
|
IndieAuthMe:
|
||
|
in: query
|
||
|
name: me
|
||
|
schema:
|
||
|
type: string
|
||
|
required: true
|
||
|
|
||
|
securitySchemes:
|
||
|
BasicAuth:
|
||
|
type: http
|
||
|
scheme: basic
|
||
|
BearerAuth:
|
||
|
type: http
|
||
|
scheme: bearer
|