Files
ersatztv/ErsatzTV/wwwroot/openapi/v1.json
T

5818 lines
145 KiB
JSON

{
"openapi": "3.1.1",
"info": {
"title": "ErsatzTV | v1",
"version": "1.0.0"
},
"paths": {
"/api/channels": {
"get": {
"tags": [
"Channel"
],
"responses": {
"200": {
"description": "OK",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ChannelResponseModel"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ChannelResponseModel"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ChannelResponseModel"
}
}
}
}
}
}
},
"post": {
"tags": [
"Channels"
],
"summary": "Create a channel",
"requestBody": {
"content": {
"application/json-patch+json": {
"schema": {
"$ref": "#/components/schemas/CreateChannelRequest"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateChannelRequest"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/CreateChannelRequest"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/CreateChannelRequest"
}
}
},
"required": true
},
"responses": {
"201": {
"description": "Created",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ChannelViewModel"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ChannelViewModel"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ChannelViewModel"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
}
},
"/api/channels/{id}": {
"get": {
"tags": [
"Channels"
],
"summary": "Get a channel by id",
"operationId": "GetChannelById",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ChannelViewModel"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ChannelViewModel"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ChannelViewModel"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
},
"put": {
"tags": [
"Channels"
],
"summary": "Update a channel",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json-patch+json": {
"schema": {
"$ref": "#/components/schemas/UpdateChannelRequest"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateChannelRequest"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/UpdateChannelRequest"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/UpdateChannelRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ChannelViewModel"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ChannelViewModel"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ChannelViewModel"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
},
"delete": {
"tags": [
"Channels"
],
"summary": "Delete a channel",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"204": {
"description": "No Content"
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
}
},
"/api/channels/{channelNumber}/playout/reset": {
"post": {
"tags": [
"Channels"
],
"summary": "Reset channel playout",
"parameters": [
{
"name": "channelNumber",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK"
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
}
},
"/api/collections": {
"get": {
"tags": [
"Collections"
],
"summary": "Get all collections",
"responses": {
"200": {
"description": "OK",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/MediaCollectionViewModel"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/MediaCollectionViewModel"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/MediaCollectionViewModel"
}
}
}
}
}
}
},
"post": {
"tags": [
"Collections"
],
"summary": "Create a collection",
"requestBody": {
"content": {
"application/json-patch+json": {
"schema": {
"$ref": "#/components/schemas/CreateCollectionRequest"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateCollectionRequest"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/CreateCollectionRequest"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/CreateCollectionRequest"
}
}
},
"required": true
},
"responses": {
"201": {
"description": "Created",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/MediaCollectionViewModel"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/MediaCollectionViewModel"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/MediaCollectionViewModel"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
}
},
"/api/collections/{id}": {
"get": {
"tags": [
"Collections"
],
"summary": "Get a collection by id",
"operationId": "GetCollectionById",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/MediaCollectionViewModel"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/MediaCollectionViewModel"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/MediaCollectionViewModel"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
},
"put": {
"tags": [
"Collections"
],
"summary": "Update a collection",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json-patch+json": {
"schema": {
"$ref": "#/components/schemas/UpdateCollectionRequest"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateCollectionRequest"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/UpdateCollectionRequest"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/UpdateCollectionRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/MediaCollectionViewModel"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/MediaCollectionViewModel"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/MediaCollectionViewModel"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
},
"delete": {
"tags": [
"Collections"
],
"summary": "Delete a collection",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"204": {
"description": "No Content"
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
}
},
"/api/collections/{id}/items": {
"post": {
"tags": [
"Collections"
],
"summary": "Add items to a collection",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json-patch+json": {
"schema": {
"$ref": "#/components/schemas/AddItemsToCollectionRequest"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/AddItemsToCollectionRequest"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/AddItemsToCollectionRequest"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/AddItemsToCollectionRequest"
}
}
},
"required": true
},
"responses": {
"204": {
"description": "No Content"
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
}
},
"/api/collections/{id}/items/{mediaItemId}": {
"delete": {
"tags": [
"Collections"
],
"summary": "Remove an item from a collection",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "mediaItemId",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"204": {
"description": "No Content"
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
}
},
"/api/ffmpeg/profiles": {
"get": {
"tags": [
"FFmpeg Profiles"
],
"summary": "Get all FFmpeg profiles",
"operationId": "GetFFmpegProfiles",
"responses": {
"200": {
"description": "OK",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/FFmpegFullProfileResponseModel"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/FFmpegFullProfileResponseModel"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/FFmpegFullProfileResponseModel"
}
}
}
}
}
}
},
"post": {
"tags": [
"FFmpeg Profiles"
],
"summary": "Create an FFmpeg profile",
"operationId": "CreateFFmpegProfile",
"requestBody": {
"content": {
"application/json-patch+json": {
"schema": {
"$ref": "#/components/schemas/CreateFFmpegProfileRequest"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateFFmpegProfileRequest"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/CreateFFmpegProfileRequest"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/CreateFFmpegProfileRequest"
}
}
},
"required": true
},
"responses": {
"201": {
"description": "Created",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/FFmpegFullProfileResponseModel"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/FFmpegFullProfileResponseModel"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/FFmpegFullProfileResponseModel"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
}
},
"/api/ffmpeg/profiles/{id}": {
"get": {
"tags": [
"FFmpeg Profiles"
],
"summary": "Get an FFmpeg profile by id",
"operationId": "GetFFmpegProfileById",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/FFmpegFullProfileResponseModel"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/FFmpegFullProfileResponseModel"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/FFmpegFullProfileResponseModel"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
},
"put": {
"tags": [
"FFmpeg Profiles"
],
"summary": "Update an FFmpeg profile",
"operationId": "UpdateFFmpegProfile",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json-patch+json": {
"schema": {
"$ref": "#/components/schemas/UpdateFFmpegProfileRequest"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateFFmpegProfileRequest"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/UpdateFFmpegProfileRequest"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/UpdateFFmpegProfileRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/FFmpegFullProfileResponseModel"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/FFmpegFullProfileResponseModel"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/FFmpegFullProfileResponseModel"
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
},
"delete": {
"tags": [
"FFmpeg Profiles"
],
"summary": "Delete an FFmpeg profile",
"operationId": "DeleteFFmpegProfile",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"204": {
"description": "No Content"
},
"401": {
"description": "Unauthorized",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
}
},
"/api/libraries/{id}/scan": {
"post": {
"tags": [
"Libraries"
],
"summary": "Scan library",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/libraries/{id}/scan-show": {
"post": {
"tags": [
"Libraries"
],
"summary": "Scan show",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json-patch+json": {
"schema": {
"$ref": "#/components/schemas/ScanShowRequest"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ScanShowRequest"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ScanShowRequest"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/ScanShowRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/maintenance/gc": {
"get": {
"tags": [
"Maintenance"
],
"summary": "Garbage collect",
"parameters": [
{
"name": "force",
"in": "query",
"schema": {
"type": "boolean",
"default": false
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/maintenance/empty_trash": {
"post": {
"tags": [
"Maintenance"
],
"summary": "Empty trash",
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/maintenance/clean_artwork": {
"post": {
"tags": [
"Maintenance"
],
"summary": "Clean artwork cache",
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/playouts/{id}": {
"get": {
"tags": [
"Playouts"
],
"summary": "Get a playout by id",
"operationId": "GetPlayoutById",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/PlayoutResponseModel"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/PlayoutResponseModel"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/PlayoutResponseModel"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
},
"delete": {
"tags": [
"Playouts"
],
"summary": "Delete a playout",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"204": {
"description": "No Content"
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
}
},
"/api/playouts": {
"post": {
"tags": [
"Playouts"
],
"summary": "Create a classic playout",
"requestBody": {
"content": {
"application/json-patch+json": {
"schema": {
"$ref": "#/components/schemas/CreatePlayoutRequest"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreatePlayoutRequest"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/CreatePlayoutRequest"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/CreatePlayoutRequest"
}
}
},
"required": true
},
"responses": {
"201": {
"description": "Created",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/PlayoutResponseModel"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/PlayoutResponseModel"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/PlayoutResponseModel"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
}
},
"/api/ffmpeg/resolution/by-name/{name}": {
"get": {
"tags": [
"Resolution"
],
"operationId": "GetResolutionByName",
"parameters": [
{
"name": "name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ResolutionViewModel"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ResolutionViewModel"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ResolutionViewModel"
}
}
}
}
}
}
},
"/api/schedules": {
"get": {
"tags": [
"Schedules"
],
"summary": "Get all schedules",
"responses": {
"200": {
"description": "OK",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProgramScheduleViewModel"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProgramScheduleViewModel"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProgramScheduleViewModel"
}
}
}
}
}
}
},
"post": {
"tags": [
"Schedules"
],
"summary": "Create a schedule",
"requestBody": {
"content": {
"application/json-patch+json": {
"schema": {
"$ref": "#/components/schemas/CreateScheduleRequest"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateScheduleRequest"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/CreateScheduleRequest"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/CreateScheduleRequest"
}
}
},
"required": true
},
"responses": {
"201": {
"description": "Created",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProgramScheduleViewModel"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProgramScheduleViewModel"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProgramScheduleViewModel"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
}
},
"/api/schedules/{id}": {
"get": {
"tags": [
"Schedules"
],
"summary": "Get a schedule by id",
"operationId": "GetScheduleById",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProgramScheduleViewModel"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProgramScheduleViewModel"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProgramScheduleViewModel"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
},
"put": {
"tags": [
"Schedules"
],
"summary": "Update a schedule",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json-patch+json": {
"schema": {
"$ref": "#/components/schemas/UpdateScheduleRequest"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateScheduleRequest"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/UpdateScheduleRequest"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/UpdateScheduleRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProgramScheduleViewModel"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProgramScheduleViewModel"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProgramScheduleViewModel"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
},
"delete": {
"tags": [
"Schedules"
],
"summary": "Delete a schedule",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"204": {
"description": "No Content"
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
}
},
"/api/schedules/{id}/items": {
"get": {
"tags": [
"Schedules"
],
"summary": "Get schedule items",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProgramScheduleItemViewModel"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProgramScheduleItemViewModel"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProgramScheduleItemViewModel"
}
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
},
"post": {
"tags": [
"Schedules"
],
"summary": "Add a schedule item",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json-patch+json": {
"schema": {
"$ref": "#/components/schemas/ScheduleItemRequest"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ScheduleItemRequest"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ScheduleItemRequest"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/ScheduleItemRequest"
}
}
},
"required": true
},
"responses": {
"201": {
"description": "Created",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProgramScheduleItemViewModel"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProgramScheduleItemViewModel"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProgramScheduleItemViewModel"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
},
"put": {
"tags": [
"Schedules"
],
"summary": "Replace schedule items",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json-patch+json": {
"schema": {
"$ref": "#/components/schemas/ReplaceScheduleItemsRequest"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ReplaceScheduleItemsRequest"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ReplaceScheduleItemsRequest"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/ReplaceScheduleItemsRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProgramScheduleItemViewModel"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProgramScheduleItemViewModel"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProgramScheduleItemViewModel"
}
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
}
},
"/api/schedules/{id}/items/{itemId}": {
"delete": {
"tags": [
"Schedules"
],
"summary": "Delete a schedule item",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "itemId",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"204": {
"description": "No Content"
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
}
},
"/api/sessions": {
"get": {
"tags": [
"Sessions"
],
"summary": "Get sessions",
"responses": {
"200": {
"description": "OK",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/HlsSessionModel"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/HlsSessionModel"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/HlsSessionModel"
}
}
}
}
}
}
}
},
"/api/session/{channelNumber}": {
"delete": {
"tags": [
"Sessions"
],
"summary": "Stop session",
"parameters": [
{
"name": "channelNumber",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/api/smart-collections": {
"get": {
"tags": [
"Smart Collections"
],
"summary": "Get all smart collections",
"responses": {
"200": {
"description": "OK",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SmartCollectionResponseModel"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SmartCollectionResponseModel"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SmartCollectionResponseModel"
}
}
}
}
}
}
},
"post": {
"tags": [
"Smart Collections"
],
"summary": "Create a smart collection",
"requestBody": {
"content": {
"application/json-patch+json": {
"schema": {
"$ref": "#/components/schemas/CreateSmartCollectionRequest"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateSmartCollectionRequest"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/CreateSmartCollectionRequest"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/CreateSmartCollectionRequest"
}
}
},
"required": true
},
"responses": {
"201": {
"description": "Created",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/SmartCollectionViewModel"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/SmartCollectionViewModel"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/SmartCollectionViewModel"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
}
},
"/api/smart-collections/{id}": {
"get": {
"tags": [
"Smart Collections"
],
"summary": "Get a smart collection by id",
"operationId": "GetSmartCollectionById",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/SmartCollectionViewModel"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/SmartCollectionViewModel"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/SmartCollectionViewModel"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
},
"put": {
"tags": [
"Smart Collections"
],
"summary": "Update a smart collection",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"requestBody": {
"content": {
"application/json-patch+json": {
"schema": {
"$ref": "#/components/schemas/UpdateSmartCollectionRequest"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateSmartCollectionRequest"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/UpdateSmartCollectionRequest"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/UpdateSmartCollectionRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/SmartCollectionViewModel"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/SmartCollectionViewModel"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/SmartCollectionViewModel"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
},
"delete": {
"tags": [
"Smart Collections"
],
"summary": "Delete a smart collection",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"204": {
"description": "No Content"
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
}
},
"/api/version": {
"get": {
"tags": [
"Version"
],
"summary": "Get version",
"operationId": "GetVersion",
"responses": {
"200": {
"description": "OK",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/CombinedVersion"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/CombinedVersion"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/CombinedVersion"
}
}
}
}
}
}
}
},
"components": {
"schemas": {
"AddItemsToCollectionRequest": {
"required": [
"movieIds",
"showIds",
"seasonIds",
"episodeIds",
"artistIds",
"musicVideoIds",
"otherVideoIds",
"songIds",
"imageIds",
"remoteStreamIds"
],
"type": "object",
"properties": {
"movieIds": {
"type": [
"null",
"array"
],
"items": {
"type": "integer",
"format": "int32"
}
},
"showIds": {
"type": [
"null",
"array"
],
"items": {
"type": "integer",
"format": "int32"
}
},
"seasonIds": {
"type": [
"null",
"array"
],
"items": {
"type": "integer",
"format": "int32"
}
},
"episodeIds": {
"type": [
"null",
"array"
],
"items": {
"type": "integer",
"format": "int32"
}
},
"artistIds": {
"type": [
"null",
"array"
],
"items": {
"type": "integer",
"format": "int32"
}
},
"musicVideoIds": {
"type": [
"null",
"array"
],
"items": {
"type": "integer",
"format": "int32"
}
},
"otherVideoIds": {
"type": [
"null",
"array"
],
"items": {
"type": "integer",
"format": "int32"
}
},
"songIds": {
"type": [
"null",
"array"
],
"items": {
"type": "integer",
"format": "int32"
}
},
"imageIds": {
"type": [
"null",
"array"
],
"items": {
"type": "integer",
"format": "int32"
}
},
"remoteStreamIds": {
"type": [
"null",
"array"
],
"items": {
"type": "integer",
"format": "int32"
}
}
}
},
"ArtworkContentTypeModel": {
"required": [
"path",
"contentType"
],
"type": "object",
"properties": {
"path": {
"type": [
"null",
"string"
]
},
"contentType": {
"type": [
"null",
"string"
]
},
"isExternalUrl": {
"type": "boolean"
},
"hasContentType": {
"type": "boolean"
},
"urlWithContentType": {
"type": [
"null",
"string"
]
}
}
},
"ChannelIdleBehavior": {
"enum": [
"StopOnDisconnect",
"KeepRunning"
],
"type": "string"
},
"ChannelMusicVideoCreditsMode": {
"enum": [
"None",
"GenerateSubtitles"
],
"type": "string"
},
"ChannelPlayoutMode": {
"enum": [
"Continuous",
"OnDemand"
],
"type": "string"
},
"ChannelPlayoutSource": {
"enum": [
"Generated",
"Mirror"
],
"type": "string"
},
"ChannelResponseModel": {
"required": [
"id",
"number",
"sortNumber",
"name",
"group",
"categories",
"fFmpegProfile",
"language",
"streamingMode",
"isEnabled",
"showInEpg"
],
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"number": {
"type": [
"null",
"string"
]
},
"sortNumber": {
"type": "number",
"format": "double"
},
"name": {
"type": [
"null",
"string"
]
},
"group": {
"type": [
"null",
"string"
]
},
"categories": {
"type": [
"null",
"string"
]
},
"fFmpegProfile": {
"type": [
"null",
"string"
]
},
"language": {
"type": [
"null",
"string"
]
},
"streamingMode": {
"type": [
"null",
"string"
]
},
"isEnabled": {
"type": "boolean"
},
"showInEpg": {
"type": "boolean"
}
}
},
"ChannelSongVideoMode": {
"enum": [
"Default",
"WithProgress"
],
"type": "string"
},
"ChannelStreamSelectorMode": {
"enum": [
"Default",
"Custom",
"Troubleshooting"
],
"type": "string"
},
"ChannelSubtitleMode": {
"enum": [
"None",
"Forced",
"Default",
"Any"
],
"type": "string"
},
"ChannelTranscodeMode": {
"enum": [
"OnDemand"
],
"type": "string"
},
"ChannelViewModel": {
"required": [
"id",
"number",
"name",
"group",
"categories",
"fFmpegProfileId",
"slugSeconds",
"logo",
"streamSelectorMode",
"streamSelector",
"preferredAudioLanguageCode",
"preferredAudioTitle",
"playoutSource",
"playoutMode",
"mirrorSourceChannelId",
"playoutOffset",
"streamingMode",
"watermarkId",
"fallbackFillerId",
"playoutCount",
"preferredSubtitleLanguageCode",
"subtitleMode",
"musicVideoCreditsMode",
"musicVideoCreditsTemplate",
"songVideoMode",
"transcodeMode",
"idleBehavior",
"isEnabled",
"showInEpg"
],
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"number": {
"type": [
"null",
"string"
]
},
"name": {
"type": [
"null",
"string"
]
},
"group": {
"type": [
"null",
"string"
]
},
"categories": {
"type": [
"null",
"string"
]
},
"fFmpegProfileId": {
"type": "integer",
"format": "int32"
},
"slugSeconds": {
"type": [
"null",
"number"
],
"format": "double"
},
"logo": {
"$ref": "#/components/schemas/ArtworkContentTypeModel"
},
"streamSelectorMode": {
"$ref": "#/components/schemas/ChannelStreamSelectorMode"
},
"streamSelector": {
"type": [
"null",
"string"
]
},
"preferredAudioLanguageCode": {
"type": [
"null",
"string"
]
},
"preferredAudioTitle": {
"type": [
"null",
"string"
]
},
"playoutSource": {
"$ref": "#/components/schemas/ChannelPlayoutSource"
},
"playoutMode": {
"$ref": "#/components/schemas/ChannelPlayoutMode"
},
"mirrorSourceChannelId": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"playoutOffset": {
"pattern": "^-?(\\d+\\.)?\\d{2}:\\d{2}:\\d{2}(\\.\\d{1,7})?$",
"type": [
"null",
"string"
]
},
"streamingMode": {
"$ref": "#/components/schemas/StreamingMode"
},
"watermarkId": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"fallbackFillerId": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"playoutCount": {
"type": "integer",
"format": "int32"
},
"preferredSubtitleLanguageCode": {
"type": [
"null",
"string"
]
},
"subtitleMode": {
"$ref": "#/components/schemas/ChannelSubtitleMode"
},
"musicVideoCreditsMode": {
"$ref": "#/components/schemas/ChannelMusicVideoCreditsMode"
},
"musicVideoCreditsTemplate": {
"type": [
"null",
"string"
]
},
"songVideoMode": {
"$ref": "#/components/schemas/ChannelSongVideoMode"
},
"transcodeMode": {
"$ref": "#/components/schemas/ChannelTranscodeMode"
},
"idleBehavior": {
"$ref": "#/components/schemas/ChannelIdleBehavior"
},
"isEnabled": {
"type": "boolean"
},
"showInEpg": {
"type": "boolean"
},
"webEncodedName": {
"type": [
"null",
"string"
]
}
}
},
"ChannelWatermarkImageSource": {
"enum": [
"Custom",
"ChannelLogo",
"Resource"
],
"type": "string"
},
"ChannelWatermarkMode": {
"enum": [
"None",
"Permanent",
"Intermittent",
"OpacityExpression"
],
"type": "string"
},
"CollectionType": {
"enum": [
"Collection",
"TelevisionShow",
"TelevisionSeason",
"Artist",
"MultiCollection",
"SmartCollection",
"Playlist",
"RerunFirstRun",
"RerunRerun",
"SearchQuery",
"Movie",
"Episode",
"MusicVideo",
"OtherVideo",
"Song",
"Image",
"RemoteStream",
"FakeCollection",
"FakePlaylistItem"
],
"type": "string"
},
"CombinedVersion": {
"required": [
"apiVersion",
"appVersion"
],
"type": "object",
"properties": {
"apiVersion": {
"type": "integer",
"format": "int32"
},
"appVersion": {
"type": [
"null",
"string"
]
}
}
},
"CreateChannelRequest": {
"required": [
"name",
"number",
"group",
"categories",
"fFmpegProfileId",
"slugSeconds",
"logo",
"streamSelectorMode",
"streamSelector",
"preferredAudioLanguageCode",
"preferredAudioTitle",
"playoutSource",
"playoutMode",
"mirrorSourceChannelId",
"playoutOffset",
"streamingMode",
"watermarkId",
"fallbackFillerId",
"preferredSubtitleLanguageCode",
"subtitleMode",
"musicVideoCreditsMode",
"musicVideoCreditsTemplate",
"songVideoMode",
"transcodeMode",
"idleBehavior",
"isEnabled",
"showInEpg"
],
"type": "object",
"properties": {
"name": {
"type": [
"null",
"string"
]
},
"number": {
"type": [
"null",
"string"
]
},
"group": {
"type": [
"null",
"string"
]
},
"categories": {
"type": [
"null",
"string"
]
},
"fFmpegProfileId": {
"type": "integer",
"format": "int32"
},
"slugSeconds": {
"type": [
"null",
"number"
],
"format": "double"
},
"logo": {
"$ref": "#/components/schemas/ArtworkContentTypeModel"
},
"streamSelectorMode": {
"$ref": "#/components/schemas/ChannelStreamSelectorMode"
},
"streamSelector": {
"type": [
"null",
"string"
]
},
"preferredAudioLanguageCode": {
"type": [
"null",
"string"
]
},
"preferredAudioTitle": {
"type": [
"null",
"string"
]
},
"playoutSource": {
"$ref": "#/components/schemas/ChannelPlayoutSource"
},
"playoutMode": {
"$ref": "#/components/schemas/ChannelPlayoutMode"
},
"mirrorSourceChannelId": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"playoutOffset": {
"pattern": "^-?(\\d+\\.)?\\d{2}:\\d{2}:\\d{2}(\\.\\d{1,7})?$",
"type": [
"null",
"string"
]
},
"streamingMode": {
"$ref": "#/components/schemas/StreamingMode"
},
"watermarkId": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"fallbackFillerId": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"preferredSubtitleLanguageCode": {
"type": [
"null",
"string"
]
},
"subtitleMode": {
"$ref": "#/components/schemas/ChannelSubtitleMode"
},
"musicVideoCreditsMode": {
"$ref": "#/components/schemas/ChannelMusicVideoCreditsMode"
},
"musicVideoCreditsTemplate": {
"type": [
"null",
"string"
]
},
"songVideoMode": {
"$ref": "#/components/schemas/ChannelSongVideoMode"
},
"transcodeMode": {
"$ref": "#/components/schemas/ChannelTranscodeMode"
},
"idleBehavior": {
"$ref": "#/components/schemas/ChannelIdleBehavior"
},
"isEnabled": {
"type": "boolean"
},
"showInEpg": {
"type": "boolean"
}
}
},
"CreateCollectionRequest": {
"required": [
"name"
],
"type": "object",
"properties": {
"name": {
"type": [
"null",
"string"
]
}
}
},
"CreateFFmpegProfileRequest": {
"required": [
"name",
"threadCount",
"normalizeAudio",
"normalizeVideo",
"hardwareAcceleration",
"vaapiDisplay",
"vaapiDriver",
"vaapiDevice",
"qsvExtraHardwareFrames",
"resolutionId",
"scalingBehavior",
"padMode",
"videoFormat",
"videoProfile",
"videoPreset",
"allowBFrames",
"bitDepth",
"videoBitrate",
"videoBufferSize",
"tonemapAlgorithm",
"audioFormat",
"audioBitrate",
"audioBufferSize",
"normalizeLoudnessMode",
"targetLoudness",
"audioChannels",
"audioSampleRate",
"normalizeFramerate",
"normalizeColors",
"deinterlaceVideo"
],
"type": "object",
"properties": {
"name": {
"type": [
"null",
"string"
]
},
"threadCount": {
"type": "integer",
"format": "int32"
},
"normalizeAudio": {
"type": "boolean"
},
"normalizeVideo": {
"type": "boolean"
},
"hardwareAcceleration": {
"$ref": "#/components/schemas/HardwareAccelerationKind"
},
"vaapiDisplay": {
"type": [
"null",
"string"
]
},
"vaapiDriver": {
"$ref": "#/components/schemas/VaapiDriver"
},
"vaapiDevice": {
"type": [
"null",
"string"
]
},
"qsvExtraHardwareFrames": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"resolutionId": {
"type": "integer",
"format": "int32"
},
"scalingBehavior": {
"$ref": "#/components/schemas/ScalingBehavior"
},
"padMode": {
"$ref": "#/components/schemas/FilterMode"
},
"videoFormat": {
"$ref": "#/components/schemas/FFmpegProfileVideoFormat"
},
"videoProfile": {
"type": [
"null",
"string"
]
},
"videoPreset": {
"type": [
"null",
"string"
]
},
"allowBFrames": {
"type": "boolean"
},
"bitDepth": {
"$ref": "#/components/schemas/FFmpegProfileBitDepth"
},
"videoBitrate": {
"type": "integer",
"format": "int32"
},
"videoBufferSize": {
"type": "integer",
"format": "int32"
},
"tonemapAlgorithm": {
"$ref": "#/components/schemas/FFmpegProfileTonemapAlgorithm"
},
"audioFormat": {
"$ref": "#/components/schemas/FFmpegProfileAudioFormat"
},
"audioBitrate": {
"type": "integer",
"format": "int32"
},
"audioBufferSize": {
"type": "integer",
"format": "int32"
},
"normalizeLoudnessMode": {
"$ref": "#/components/schemas/NormalizeLoudnessMode"
},
"targetLoudness": {
"type": [
"null",
"number"
],
"format": "double"
},
"audioChannels": {
"type": "integer",
"format": "int32"
},
"audioSampleRate": {
"type": "integer",
"format": "int32"
},
"normalizeFramerate": {
"type": "boolean"
},
"normalizeColors": {
"type": "boolean"
},
"deinterlaceVideo": {
"type": "boolean"
}
}
},
"CreatePlayoutRequest": {
"required": [
"channelId",
"programScheduleId"
],
"type": "object",
"properties": {
"channelId": {
"type": "integer",
"format": "int32"
},
"programScheduleId": {
"type": "integer",
"format": "int32"
}
}
},
"CreateScheduleRequest": {
"required": [
"name",
"keepMultiPartEpisodesTogether",
"treatCollectionsAsShows",
"shuffleScheduleItems",
"randomStartPoint",
"fixedStartTimeBehavior"
],
"type": "object",
"properties": {
"name": {
"type": [
"null",
"string"
]
},
"keepMultiPartEpisodesTogether": {
"type": "boolean"
},
"treatCollectionsAsShows": {
"type": "boolean"
},
"shuffleScheduleItems": {
"type": "boolean"
},
"randomStartPoint": {
"type": "boolean"
},
"fixedStartTimeBehavior": {
"$ref": "#/components/schemas/FixedStartTimeBehavior"
}
}
},
"CreateSmartCollectionRequest": {
"required": [
"name",
"query"
],
"type": "object",
"properties": {
"name": {
"type": [
"null",
"string"
]
},
"query": {
"type": [
"null",
"string"
]
}
}
},
"FFmpegFullProfileResponseModel": {
"required": [
"id",
"name",
"threadCount",
"hardwareAcceleration",
"vaapiDisplay",
"vaapiDriver",
"vaapiDevice",
"qsvExtraHardwareFrames",
"resolution",
"scalingBehavior",
"videoFormat",
"videoProfile",
"videoPreset",
"allowBFrames",
"bitDepth",
"videoBitrate",
"videoBufferSize",
"tonemapAlgorithm",
"audioFormat",
"audioBitrate",
"audioBufferSize",
"normalizeLoudnessMode",
"audioChannels",
"audioSampleRate",
"normalizeFramerate",
"deinterlaceVideo"
],
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"name": {
"type": [
"null",
"string"
]
},
"threadCount": {
"type": "integer",
"format": "int32"
},
"hardwareAcceleration": {
"$ref": "#/components/schemas/HardwareAccelerationKind"
},
"vaapiDisplay": {
"type": [
"null",
"string"
]
},
"vaapiDriver": {
"$ref": "#/components/schemas/VaapiDriver"
},
"vaapiDevice": {
"type": [
"null",
"string"
]
},
"qsvExtraHardwareFrames": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"resolution": {
"type": [
"null",
"string"
]
},
"scalingBehavior": {
"$ref": "#/components/schemas/ScalingBehavior"
},
"videoFormat": {
"$ref": "#/components/schemas/FFmpegProfileVideoFormat"
},
"videoProfile": {
"type": [
"null",
"string"
]
},
"videoPreset": {
"type": [
"null",
"string"
]
},
"allowBFrames": {
"type": "boolean"
},
"bitDepth": {
"$ref": "#/components/schemas/FFmpegProfileBitDepth"
},
"videoBitrate": {
"type": "integer",
"format": "int32"
},
"videoBufferSize": {
"type": "integer",
"format": "int32"
},
"tonemapAlgorithm": {
"$ref": "#/components/schemas/FFmpegProfileTonemapAlgorithm"
},
"audioFormat": {
"$ref": "#/components/schemas/FFmpegProfileAudioFormat"
},
"audioBitrate": {
"type": "integer",
"format": "int32"
},
"audioBufferSize": {
"type": "integer",
"format": "int32"
},
"normalizeLoudnessMode": {
"$ref": "#/components/schemas/NormalizeLoudnessMode"
},
"audioChannels": {
"type": "integer",
"format": "int32"
},
"audioSampleRate": {
"type": "integer",
"format": "int32"
},
"normalizeFramerate": {
"type": "boolean"
},
"deinterlaceVideo": {
"type": [
"null",
"boolean"
]
}
}
},
"FFmpegProfileAudioFormat": {
"enum": [
"None",
"Aac",
"Ac3",
"AacLatm",
"Copy"
],
"type": "string"
},
"FFmpegProfileBitDepth": {
"enum": [
"EightBit",
"TenBit"
],
"type": "string"
},
"FFmpegProfileTonemapAlgorithm": {
"enum": [
"Linear",
"Clip",
"Gamma",
"Reinhard",
"Mobius",
"Hable"
],
"type": "string"
},
"FFmpegProfileVideoFormat": {
"enum": [
"None",
"H264",
"Hevc",
"Mpeg2Video",
"Av1",
"Copy"
],
"type": "string"
},
"FillerKind": {
"enum": [
"None",
"PreRoll",
"MidRoll",
"PostRoll",
"Tail",
"Fallback",
"GuideMode",
"DecoDefault"
],
"type": "string"
},
"FillerMode": {
"enum": [
"None",
"Duration",
"Count",
"Pad",
"RandomCount"
],
"type": "string"
},
"FillerPresetViewModel": {
"required": [
"id",
"name",
"fillerKind",
"fillerMode",
"duration",
"count",
"padToNearestMinute",
"allowWatermarks",
"collectionType",
"collectionId",
"mediaItemId",
"multiCollectionId",
"smartCollectionId",
"playlist",
"expression",
"useChaptersAsMediaItems"
],
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"name": {
"type": [
"null",
"string"
]
},
"fillerKind": {
"$ref": "#/components/schemas/FillerKind"
},
"fillerMode": {
"$ref": "#/components/schemas/FillerMode"
},
"duration": {
"pattern": "^-?(\\d+\\.)?\\d{2}:\\d{2}:\\d{2}(\\.\\d{1,7})?$",
"type": [
"null",
"string"
]
},
"count": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"padToNearestMinute": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"allowWatermarks": {
"type": "boolean"
},
"collectionType": {
"$ref": "#/components/schemas/CollectionType"
},
"collectionId": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"mediaItemId": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"multiCollectionId": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"smartCollectionId": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"playlist": {
"$ref": "#/components/schemas/PlaylistViewModel"
},
"expression": {
"type": [
"null",
"string"
]
},
"useChaptersAsMediaItems": {
"type": "boolean"
}
}
},
"FillWithGroupMode": {
"enum": [
"None",
"FillWithOrderedGroups",
"FillWithShuffledGroups"
],
"type": "string"
},
"FilterMode": {
"enum": [
"HardwareIfPossible",
"Software"
],
"type": "string"
},
"FixedStartTimeBehavior": {
"enum": [
"Strict",
"Flexible"
],
"type": "string"
},
"GraphicsElementViewModel": {
"required": [
"id",
"name",
"fileName"
],
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"name": {
"type": [
"null",
"string"
]
},
"fileName": {
"type": [
"null",
"string"
]
}
}
},
"GuideMode": {
"enum": [
"Normal",
"Filler"
],
"type": "string"
},
"HardwareAccelerationKind": {
"enum": [
"None",
"Qsv",
"Nvenc",
"Vaapi",
"VideoToolbox",
"Amf",
"V4l2m2m",
"Rkmpp"
],
"type": "string"
},
"HlsSessionModel": {
"required": [
"channelNumber",
"state",
"transcodedUntil",
"lastAccess"
],
"type": "object",
"properties": {
"channelNumber": {
"type": [
"null",
"string"
]
},
"state": {
"type": [
"null",
"string"
]
},
"transcodedUntil": {
"type": "string",
"format": "date-time"
},
"lastAccess": {
"type": "string",
"format": "date-time"
}
}
},
"MarathonGroupBy": {
"enum": [
"None",
"Show",
"Season",
"Artist",
"Album",
"Director"
],
"type": "string"
},
"MediaCollectionViewModel": {
"required": [
"collectionType",
"id",
"name",
"useCustomPlaybackOrder",
"state"
],
"type": "object",
"properties": {
"collectionType": {
"$ref": "#/components/schemas/CollectionType"
},
"id": {
"type": "integer",
"format": "int32"
},
"name": {
"type": [
"null",
"string"
]
},
"useCustomPlaybackOrder": {
"type": "boolean"
},
"mediaItemId": {
"type": "integer",
"format": "int32"
},
"title": {
"type": [
"null",
"string"
]
},
"subtitle": {
"type": [
"null",
"string"
]
},
"sortTitle": {
"type": [
"null",
"string"
]
},
"poster": {
"type": [
"null",
"string"
]
},
"state": {
"$ref": "#/components/schemas/MediaItemState"
},
"hasMediaInfo": {
"type": "boolean"
}
}
},
"MediaItemState": {
"enum": [
"Normal",
"FileNotFound",
"Unavailable",
"RemoteOnly"
],
"type": "string"
},
"MultiCollectionItemViewModel": {
"required": [
"multiCollectionId",
"collection",
"scheduleAsGroup",
"playbackOrder"
],
"type": "object",
"properties": {
"multiCollectionId": {
"type": "integer",
"format": "int32"
},
"collection": {
"$ref": "#/components/schemas/MediaCollectionViewModel"
},
"scheduleAsGroup": {
"type": "boolean"
},
"playbackOrder": {
"$ref": "#/components/schemas/PlaybackOrder"
}
}
},
"MultiCollectionSmartItemViewModel": {
"required": [
"multiCollectionId",
"smartCollection",
"scheduleAsGroup",
"playbackOrder"
],
"type": "object",
"properties": {
"multiCollectionId": {
"type": "integer",
"format": "int32"
},
"smartCollection": {
"$ref": "#/components/schemas/SmartCollectionViewModel"
},
"scheduleAsGroup": {
"type": "boolean"
},
"playbackOrder": {
"$ref": "#/components/schemas/PlaybackOrder"
}
}
},
"MultiCollectionViewModel": {
"required": [
"id",
"name",
"items",
"smartItems"
],
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"name": {
"type": [
"null",
"string"
]
},
"items": {
"type": [
"null",
"array"
],
"items": {
"$ref": "#/components/schemas/MultiCollectionItemViewModel"
}
},
"smartItems": {
"type": [
"null",
"array"
],
"items": {
"$ref": "#/components/schemas/MultiCollectionSmartItemViewModel"
}
}
}
},
"MultipleMode": {
"enum": [
"Count",
"CollectionSize",
"PlaylistItemSize",
"MultiEpisodeGroupSize"
],
"type": "string"
},
"NamedMediaItemViewModel": {
"required": [
"mediaItemId",
"name"
],
"type": "object",
"properties": {
"mediaItemId": {
"type": "integer",
"format": "int32"
},
"name": {
"type": [
"null",
"string"
]
}
}
},
"NormalizeLoudnessMode": {
"enum": [
"Off",
"LoudNorm"
],
"type": "string"
},
"PlaybackOrder": {
"enum": [
"None",
"Chronological",
"Random",
"Shuffle",
"ShuffleInOrder",
"MultiEpisodeShuffle",
"SeasonEpisode",
"RandomRotation",
"Marathon"
],
"type": "string"
},
"PlaylistViewModel": {
"required": [
"id",
"playlistGroupId",
"name",
"isSystem"
],
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"playlistGroupId": {
"type": "integer",
"format": "int32"
},
"name": {
"type": [
"null",
"string"
]
},
"isSystem": {
"type": "boolean"
}
}
},
"PlayoutMode": {
"enum": [
"Flood",
"One",
"Multiple",
"Duration"
],
"type": "string"
},
"PlayoutResponseModel": {
"required": [
"id",
"scheduleKind",
"channelName",
"channelNumber",
"playoutMode",
"scheduleName",
"scheduleFile",
"dailyRebuildTime"
],
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"scheduleKind": {
"$ref": "#/components/schemas/PlayoutScheduleKind"
},
"channelName": {
"type": [
"null",
"string"
]
},
"channelNumber": {
"type": [
"null",
"string"
]
},
"playoutMode": {
"$ref": "#/components/schemas/ChannelPlayoutMode"
},
"scheduleName": {
"type": [
"null",
"string"
]
},
"scheduleFile": {
"type": [
"null",
"string"
]
},
"dailyRebuildTime": {
"pattern": "^-?(\\d+\\.)?\\d{2}:\\d{2}:\\d{2}(\\.\\d{1,7})?$",
"type": [
"null",
"string"
]
}
}
},
"PlayoutScheduleKind": {
"enum": [
"None",
"Classic",
"Block",
"Sequential",
"Scripted",
"ExternalJson"
],
"type": "string"
},
"ProblemDetails": {
"type": "object",
"properties": {
"type": {
"type": [
"null",
"string"
]
},
"title": {
"type": [
"null",
"string"
]
},
"status": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"detail": {
"type": [
"null",
"string"
]
},
"instance": {
"type": [
"null",
"string"
]
}
}
},
"ProgramScheduleItemViewModel": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"index": {
"type": "integer",
"format": "int32"
},
"startType": {
"$ref": "#/components/schemas/StartType"
},
"startTime": {
"pattern": "^-?(\\d+\\.)?\\d{2}:\\d{2}:\\d{2}(\\.\\d{1,7})?$",
"type": [
"null",
"string"
]
},
"fixedStartTimeBehavior": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/FixedStartTimeBehavior"
}
]
},
"playoutMode": {
"$ref": "#/components/schemas/PlayoutMode"
},
"collectionType": {
"$ref": "#/components/schemas/CollectionType"
},
"collection": {
"$ref": "#/components/schemas/MediaCollectionViewModel"
},
"multiCollection": {
"$ref": "#/components/schemas/MultiCollectionViewModel"
},
"smartCollection": {
"$ref": "#/components/schemas/SmartCollectionViewModel"
},
"rerunCollection": {
"$ref": "#/components/schemas/RerunCollectionViewModel"
},
"playlist": {
"$ref": "#/components/schemas/PlaylistViewModel"
},
"mediaItem": {
"$ref": "#/components/schemas/NamedMediaItemViewModel"
},
"searchTitle": {
"type": [
"null",
"string"
]
},
"searchQuery": {
"type": [
"null",
"string"
]
},
"playbackOrder": {
"$ref": "#/components/schemas/PlaybackOrder"
},
"marathonGroupBy": {
"$ref": "#/components/schemas/MarathonGroupBy"
},
"marathonShuffleGroups": {
"type": "boolean"
},
"marathonShuffleItems": {
"type": "boolean"
},
"marathonBatchSize": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"fillWithGroupMode": {
"$ref": "#/components/schemas/FillWithGroupMode"
},
"customTitle": {
"type": [
"null",
"string"
]
},
"guideMode": {
"$ref": "#/components/schemas/GuideMode"
},
"preRollFiller": {
"$ref": "#/components/schemas/FillerPresetViewModel"
},
"midRollFiller": {
"$ref": "#/components/schemas/FillerPresetViewModel"
},
"postRollFiller": {
"$ref": "#/components/schemas/FillerPresetViewModel"
},
"tailFiller": {
"$ref": "#/components/schemas/FillerPresetViewModel"
},
"fallbackFiller": {
"$ref": "#/components/schemas/FillerPresetViewModel"
},
"watermarks": {
"type": [
"null",
"array"
],
"items": {
"$ref": "#/components/schemas/WatermarkViewModel"
}
},
"graphicsElements": {
"type": [
"null",
"array"
],
"items": {
"$ref": "#/components/schemas/GraphicsElementViewModel"
}
},
"preferredAudioLanguageCode": {
"type": [
"null",
"string"
]
},
"preferredAudioTitle": {
"type": [
"null",
"string"
]
},
"preferredSubtitleLanguageCode": {
"type": [
"null",
"string"
]
},
"subtitleMode": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/ChannelSubtitleMode"
}
]
},
"name": {
"type": [
"null",
"string"
]
}
}
},
"ProgramScheduleViewModel": {
"required": [
"id",
"name",
"keepMultiPartEpisodesTogether",
"treatCollectionsAsShows",
"shuffleScheduleItems",
"randomStartPoint",
"fixedStartTimeBehavior"
],
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"name": {
"type": [
"null",
"string"
]
},
"keepMultiPartEpisodesTogether": {
"type": "boolean"
},
"treatCollectionsAsShows": {
"type": "boolean"
},
"shuffleScheduleItems": {
"type": "boolean"
},
"randomStartPoint": {
"type": "boolean"
},
"fixedStartTimeBehavior": {
"$ref": "#/components/schemas/FixedStartTimeBehavior"
}
}
},
"ReplaceScheduleItemsRequest": {
"required": [
"items"
],
"type": "object",
"properties": {
"items": {
"type": [
"null",
"array"
],
"items": {
"$ref": "#/components/schemas/ScheduleItemRequest"
}
}
}
},
"RerunCollectionViewModel": {
"required": [
"id",
"name",
"collectionType",
"collection",
"multiCollection",
"smartCollection",
"mediaItem",
"firstRunPlaybackOrder",
"rerunPlaybackOrder"
],
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"name": {
"type": [
"null",
"string"
]
},
"collectionType": {
"$ref": "#/components/schemas/CollectionType"
},
"collection": {
"$ref": "#/components/schemas/MediaCollectionViewModel"
},
"multiCollection": {
"$ref": "#/components/schemas/MultiCollectionViewModel"
},
"smartCollection": {
"$ref": "#/components/schemas/SmartCollectionViewModel"
},
"mediaItem": {
"$ref": "#/components/schemas/NamedMediaItemViewModel"
},
"firstRunPlaybackOrder": {
"$ref": "#/components/schemas/PlaybackOrder"
},
"rerunPlaybackOrder": {
"$ref": "#/components/schemas/PlaybackOrder"
}
}
},
"ResolutionViewModel": {
"required": [
"id",
"name",
"width",
"height",
"isCustom"
],
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"name": {
"type": [
"null",
"string"
]
},
"width": {
"type": "integer",
"format": "int32"
},
"height": {
"type": "integer",
"format": "int32"
},
"isCustom": {
"type": "boolean"
}
}
},
"ScalingBehavior": {
"enum": [
"ScaleAndPad",
"Stretch",
"Crop"
],
"type": "string"
},
"ScanShowRequest": {
"required": [
"showTitle"
],
"type": "object",
"properties": {
"showTitle": {
"type": [
"null",
"string"
]
},
"deepScan": {
"type": "boolean",
"default": false
}
}
},
"ScheduleItemRequest": {
"required": [
"startType",
"startTime",
"fixedStartTimeBehavior",
"playoutMode",
"collectionType",
"collectionId",
"multiCollectionId",
"smartCollectionId",
"rerunCollectionId",
"mediaItemId",
"playlistId",
"searchTitle",
"searchQuery",
"playbackOrder",
"marathonGroupBy",
"marathonShuffleGroups",
"marathonShuffleItems",
"marathonBatchSize",
"fillWithGroupMode",
"multipleMode",
"multipleCount",
"playoutDuration",
"tailMode",
"discardToFillAttempts",
"customTitle",
"guideMode",
"preRollFillerId",
"midRollFillerId",
"postRollFillerId",
"tailFillerId",
"fallbackFillerId",
"watermarkIds",
"graphicsElementIds",
"preferredAudioLanguageCode",
"preferredAudioTitle",
"preferredSubtitleLanguageCode",
"subtitleMode"
],
"type": "object",
"properties": {
"startType": {
"$ref": "#/components/schemas/StartType"
},
"startTime": {
"pattern": "^-?(\\d+\\.)?\\d{2}:\\d{2}:\\d{2}(\\.\\d{1,7})?$",
"type": [
"null",
"string"
]
},
"fixedStartTimeBehavior": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/FixedStartTimeBehavior"
}
]
},
"playoutMode": {
"$ref": "#/components/schemas/PlayoutMode"
},
"collectionType": {
"$ref": "#/components/schemas/CollectionType"
},
"collectionId": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"multiCollectionId": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"smartCollectionId": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"rerunCollectionId": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"mediaItemId": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"playlistId": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"searchTitle": {
"type": [
"null",
"string"
]
},
"searchQuery": {
"type": [
"null",
"string"
]
},
"playbackOrder": {
"$ref": "#/components/schemas/PlaybackOrder"
},
"marathonGroupBy": {
"$ref": "#/components/schemas/MarathonGroupBy"
},
"marathonShuffleGroups": {
"type": "boolean"
},
"marathonShuffleItems": {
"type": "boolean"
},
"marathonBatchSize": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"fillWithGroupMode": {
"$ref": "#/components/schemas/FillWithGroupMode"
},
"multipleMode": {
"$ref": "#/components/schemas/MultipleMode"
},
"multipleCount": {
"type": [
"null",
"string"
]
},
"playoutDuration": {
"pattern": "^-?(\\d+\\.)?\\d{2}:\\d{2}:\\d{2}(\\.\\d{1,7})?$",
"type": [
"null",
"string"
]
},
"tailMode": {
"$ref": "#/components/schemas/TailMode"
},
"discardToFillAttempts": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"customTitle": {
"type": [
"null",
"string"
]
},
"guideMode": {
"$ref": "#/components/schemas/GuideMode"
},
"preRollFillerId": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"midRollFillerId": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"postRollFillerId": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"tailFillerId": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"fallbackFillerId": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"watermarkIds": {
"type": [
"null",
"array"
],
"items": {
"type": "integer",
"format": "int32"
}
},
"graphicsElementIds": {
"type": [
"null",
"array"
],
"items": {
"type": "integer",
"format": "int32"
}
},
"preferredAudioLanguageCode": {
"type": [
"null",
"string"
]
},
"preferredAudioTitle": {
"type": [
"null",
"string"
]
},
"preferredSubtitleLanguageCode": {
"type": [
"null",
"string"
]
},
"subtitleMode": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/components/schemas/ChannelSubtitleMode"
}
]
}
}
},
"SmartCollectionResponseModel": {
"required": [
"id",
"name",
"query"
],
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"name": {
"type": [
"null",
"string"
]
},
"query": {
"type": [
"null",
"string"
]
}
}
},
"SmartCollectionViewModel": {
"required": [
"id",
"name",
"query"
],
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"name": {
"type": [
"null",
"string"
]
},
"query": {
"type": [
"null",
"string"
]
}
}
},
"StartType": {
"enum": [
"Dynamic",
"Fixed"
],
"type": "string"
},
"StreamingMode": {
"enum": [
"TransportStream",
"HttpLiveStreamingDirect",
"HttpLiveStreamingSegmenter",
"TransportStreamHybrid"
],
"type": "string"
},
"TailMode": {
"enum": [
"None",
"Offline",
"Slate",
"Filler"
],
"type": "string"
},
"UpdateChannelRequest": {
"required": [
"name",
"number",
"group",
"categories",
"fFmpegProfileId",
"slugSeconds",
"logo",
"streamSelectorMode",
"streamSelector",
"preferredAudioLanguageCode",
"preferredAudioTitle",
"playoutSource",
"playoutMode",
"mirrorSourceChannelId",
"playoutOffset",
"streamingMode",
"watermarkId",
"fallbackFillerId",
"preferredSubtitleLanguageCode",
"subtitleMode",
"musicVideoCreditsMode",
"musicVideoCreditsTemplate",
"songVideoMode",
"transcodeMode",
"idleBehavior",
"isEnabled",
"showInEpg"
],
"type": "object",
"properties": {
"name": {
"type": [
"null",
"string"
]
},
"number": {
"type": [
"null",
"string"
]
},
"group": {
"type": [
"null",
"string"
]
},
"categories": {
"type": [
"null",
"string"
]
},
"fFmpegProfileId": {
"type": "integer",
"format": "int32"
},
"slugSeconds": {
"type": [
"null",
"number"
],
"format": "double"
},
"logo": {
"$ref": "#/components/schemas/ArtworkContentTypeModel"
},
"streamSelectorMode": {
"$ref": "#/components/schemas/ChannelStreamSelectorMode"
},
"streamSelector": {
"type": [
"null",
"string"
]
},
"preferredAudioLanguageCode": {
"type": [
"null",
"string"
]
},
"preferredAudioTitle": {
"type": [
"null",
"string"
]
},
"playoutSource": {
"$ref": "#/components/schemas/ChannelPlayoutSource"
},
"playoutMode": {
"$ref": "#/components/schemas/ChannelPlayoutMode"
},
"mirrorSourceChannelId": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"playoutOffset": {
"pattern": "^-?(\\d+\\.)?\\d{2}:\\d{2}:\\d{2}(\\.\\d{1,7})?$",
"type": [
"null",
"string"
]
},
"streamingMode": {
"$ref": "#/components/schemas/StreamingMode"
},
"watermarkId": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"fallbackFillerId": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"preferredSubtitleLanguageCode": {
"type": [
"null",
"string"
]
},
"subtitleMode": {
"$ref": "#/components/schemas/ChannelSubtitleMode"
},
"musicVideoCreditsMode": {
"$ref": "#/components/schemas/ChannelMusicVideoCreditsMode"
},
"musicVideoCreditsTemplate": {
"type": [
"null",
"string"
]
},
"songVideoMode": {
"$ref": "#/components/schemas/ChannelSongVideoMode"
},
"transcodeMode": {
"$ref": "#/components/schemas/ChannelTranscodeMode"
},
"idleBehavior": {
"$ref": "#/components/schemas/ChannelIdleBehavior"
},
"isEnabled": {
"type": "boolean"
},
"showInEpg": {
"type": "boolean"
}
}
},
"UpdateCollectionRequest": {
"required": [
"name",
"useCustomPlaybackOrder"
],
"type": "object",
"properties": {
"name": {
"type": [
"null",
"string"
]
},
"useCustomPlaybackOrder": {
"type": [
"null",
"boolean"
]
}
}
},
"UpdateFFmpegProfileRequest": {
"required": [
"name",
"threadCount",
"normalizeAudio",
"normalizeVideo",
"hardwareAcceleration",
"vaapiDisplay",
"vaapiDriver",
"vaapiDevice",
"qsvExtraHardwareFrames",
"resolutionId",
"scalingBehavior",
"padMode",
"videoFormat",
"videoProfile",
"videoPreset",
"allowBFrames",
"bitDepth",
"videoBitrate",
"videoBufferSize",
"tonemapAlgorithm",
"audioFormat",
"audioBitrate",
"audioBufferSize",
"normalizeLoudnessMode",
"targetLoudness",
"audioChannels",
"audioSampleRate",
"normalizeFramerate",
"normalizeColors",
"deinterlaceVideo"
],
"type": "object",
"properties": {
"name": {
"type": [
"null",
"string"
]
},
"threadCount": {
"type": "integer",
"format": "int32"
},
"normalizeAudio": {
"type": "boolean"
},
"normalizeVideo": {
"type": "boolean"
},
"hardwareAcceleration": {
"$ref": "#/components/schemas/HardwareAccelerationKind"
},
"vaapiDisplay": {
"type": [
"null",
"string"
]
},
"vaapiDriver": {
"$ref": "#/components/schemas/VaapiDriver"
},
"vaapiDevice": {
"type": [
"null",
"string"
]
},
"qsvExtraHardwareFrames": {
"type": [
"null",
"integer"
],
"format": "int32"
},
"resolutionId": {
"type": "integer",
"format": "int32"
},
"scalingBehavior": {
"$ref": "#/components/schemas/ScalingBehavior"
},
"padMode": {
"$ref": "#/components/schemas/FilterMode"
},
"videoFormat": {
"$ref": "#/components/schemas/FFmpegProfileVideoFormat"
},
"videoProfile": {
"type": [
"null",
"string"
]
},
"videoPreset": {
"type": [
"null",
"string"
]
},
"allowBFrames": {
"type": "boolean"
},
"bitDepth": {
"$ref": "#/components/schemas/FFmpegProfileBitDepth"
},
"videoBitrate": {
"type": "integer",
"format": "int32"
},
"videoBufferSize": {
"type": "integer",
"format": "int32"
},
"tonemapAlgorithm": {
"$ref": "#/components/schemas/FFmpegProfileTonemapAlgorithm"
},
"audioFormat": {
"$ref": "#/components/schemas/FFmpegProfileAudioFormat"
},
"audioBitrate": {
"type": "integer",
"format": "int32"
},
"audioBufferSize": {
"type": "integer",
"format": "int32"
},
"normalizeLoudnessMode": {
"$ref": "#/components/schemas/NormalizeLoudnessMode"
},
"targetLoudness": {
"type": [
"null",
"number"
],
"format": "double"
},
"audioChannels": {
"type": "integer",
"format": "int32"
},
"audioSampleRate": {
"type": "integer",
"format": "int32"
},
"normalizeFramerate": {
"type": "boolean"
},
"normalizeColors": {
"type": "boolean"
},
"deinterlaceVideo": {
"type": "boolean"
}
}
},
"UpdateScheduleRequest": {
"required": [
"name",
"keepMultiPartEpisodesTogether",
"treatCollectionsAsShows",
"shuffleScheduleItems",
"randomStartPoint",
"fixedStartTimeBehavior"
],
"type": "object",
"properties": {
"name": {
"type": [
"null",
"string"
]
},
"keepMultiPartEpisodesTogether": {
"type": "boolean"
},
"treatCollectionsAsShows": {
"type": "boolean"
},
"shuffleScheduleItems": {
"type": "boolean"
},
"randomStartPoint": {
"type": "boolean"
},
"fixedStartTimeBehavior": {
"$ref": "#/components/schemas/FixedStartTimeBehavior"
}
}
},
"UpdateSmartCollectionRequest": {
"required": [
"name",
"query"
],
"type": "object",
"properties": {
"name": {
"type": [
"null",
"string"
]
},
"query": {
"type": [
"null",
"string"
]
}
}
},
"VaapiDriver": {
"enum": [
"Default",
"iHD",
"i965",
"RadeonSI",
"Nouveau"
],
"type": "string"
},
"WatermarkLocation": {
"type": "integer"
},
"WatermarkSize": {
"type": "integer"
},
"WatermarkViewModel": {
"required": [
"id",
"image",
"name",
"mode",
"imageSource",
"location",
"size",
"width",
"horizontalMargin",
"verticalMargin",
"frequencyMinutes",
"durationSeconds",
"opacity",
"placeWithinSourceContent",
"opacityExpression",
"zIndex"
],
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"image": {
"$ref": "#/components/schemas/ArtworkContentTypeModel"
},
"name": {
"type": [
"null",
"string"
]
},
"mode": {
"$ref": "#/components/schemas/ChannelWatermarkMode"
},
"imageSource": {
"$ref": "#/components/schemas/ChannelWatermarkImageSource"
},
"location": {
"$ref": "#/components/schemas/WatermarkLocation"
},
"size": {
"$ref": "#/components/schemas/WatermarkSize"
},
"width": {
"type": "number",
"format": "double"
},
"horizontalMargin": {
"type": "number",
"format": "double"
},
"verticalMargin": {
"type": "number",
"format": "double"
},
"frequencyMinutes": {
"type": "integer",
"format": "int32"
},
"durationSeconds": {
"type": "integer",
"format": "int32"
},
"opacity": {
"type": "integer",
"format": "int32"
},
"placeWithinSourceContent": {
"type": "boolean"
},
"opacityExpression": {
"type": [
"null",
"string"
]
},
"zIndex": {
"type": "integer",
"format": "int32"
}
}
}
}
},
"tags": [
{
"name": "Channel"
},
{
"name": "Channels"
},
{
"name": "Collections"
},
{
"name": "FFmpeg Profiles"
},
{
"name": "Libraries"
},
{
"name": "Maintenance"
},
{
"name": "Playouts"
},
{
"name": "Resolution"
},
{
"name": "Schedules"
},
{
"name": "Sessions"
},
{
"name": "Smart Collections"
},
{
"name": "Version"
}
]
}