# API endpoint index *Generated by `scripts/generate-endpoint-index.py` from `ErsatzTV/wwwroot/openapi/v1.json`. Do not edit by hand -- regenerated by `scripts/update-openapi.sh`.* 167 endpoints, 250 operations. ## Artists | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/artists/{id}` | GetArtistById | Get an artist by id | ## Artwork | Method | Path | Operation | Summary | |---|---|---|---| | POST | `/api/v1/artwork/uploads` | UploadArtwork | Upload channel logo or watermark artwork | ## Blocks | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/blocks` | BlockGetAll | Get all blocks | | POST | `/api/v1/blocks` | BlockCreate | Create a block | | GET | `/api/v1/blocks/groups` | GetBlockGroups | Get all block groups | | POST | `/api/v1/blocks/groups` | BlockCreateGroup | Create a block group | | DELETE | `/api/v1/blocks/groups/{id}` | BlockDeleteGroup | Delete a block group | | DELETE | `/api/v1/blocks/{id}` | BlockDelete | Delete a block | | GET | `/api/v1/blocks/{id}` | GetBlockById | Get a block by id | | PUT | `/api/v1/blocks/{id}` | BlockReplace | Replace a block and its items | | POST | `/api/v1/blocks/{id}/copy` | BlockCopy | Copy a block | | GET | `/api/v1/blocks/{id}/items` | BlockGetItems | Get block items | | POST | `/api/v1/blocks/{id}/preview` | BlockPreview | Preview a block playout | ## Channel | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/channels` | ChannelGetAll | | ## Channel Templates | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/channel-templates` | GetChannelTemplates | Get all channel templates | | POST | `/api/v1/channel-templates` | CreateChannelTemplate | Create a channel template | | GET | `/api/v1/channel-templates/default` | GetDefaultChannelTemplate | Get the default channel template | | PUT | `/api/v1/channel-templates/default/{id}` | SetDefaultChannelTemplate | Set the default channel template | | DELETE | `/api/v1/channel-templates/{id}` | DeleteChannelTemplate | Delete a channel template | | GET | `/api/v1/channel-templates/{id}` | GetChannelTemplateById | Get a channel template by id | | PUT | `/api/v1/channel-templates/{id}` | UpdateChannelTemplate | Update a channel template | ## Channels | Method | Path | Operation | Summary | |---|---|---|---| | POST | `/api/v1/channels` | ChannelCreate | Create a channel | | POST | `/api/v1/channels/auto-tune` | CreateAutoTunedChannels | Create auto-tuned channels | | GET | `/api/v1/channels/auto-tune/members` | GetAutoTuneChannelMembers | List a proposed auto-tune channel's distinct content-source members | | POST | `/api/v1/channels/auto-tune/preview` | PreviewAutoTuneChannels | Preview auto-tuned channels | | POST | `/api/v1/channels/bulk/delete` | ChannelBulkDelete | Delete channels | | POST | `/api/v1/channels/bulk/group` | ChannelBulkMoveToGroup | Move channels to a group | | POST | `/api/v1/channels/bulk/renumber` | ChannelBulkRenumber | Renumber channels | | POST | `/api/v1/channels/from-lineup` | CreateChannelFromLineup | Create a channel from a library lineup | | GET | `/api/v1/channels/music-video-credits-templates` | GetMusicVideoCreditsTemplates | Get available music video credits template names | | GET | `/api/v1/channels/state` | ChannelGetState | Get channel runtime state | | GET | `/api/v1/channels/stream-selectors` | GetChannelStreamSelectors | Get available channel stream selector names | | DELETE | `/api/v1/channels/{id}` | ChannelDelete | Delete a channel | | GET | `/api/v1/channels/{id}` | GetChannelById | Get a channel by id | | PUT | `/api/v1/channels/{id}` | ChannelUpdate | Update a channel | | POST | `/api/v1/channels/{id}/playout/reset` | ChannelResetPlayout | Reset channel playout | | GET | `/api/v1/guide` | ChannelGetGuide | Get the JSON channel guide (EPG) | ## Collections | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/collections` | CollectionGetAll | Get all collections | | POST | `/api/v1/collections` | CollectionCreate | Create a collection | | DELETE | `/api/v1/collections/{id}` | CollectionDelete | Delete a collection | | GET | `/api/v1/collections/{id}` | GetCollectionById | Get a collection by id | | PUT | `/api/v1/collections/{id}` | CollectionUpdate | Update a collection | | PUT | `/api/v1/collections/{id}/custom-order` | CollectionUpdateCustomOrder | Set a collection's custom playback order | | GET | `/api/v1/collections/{id}/items` | GetCollectionItems | Get the items in a manual collection | | POST | `/api/v1/collections/{id}/items` | CollectionAddItems | Add items to a collection | | DELETE | `/api/v1/collections/{id}/items/{mediaItemId}` | CollectionRemoveItem | Remove an item from a collection | ## DecoTemplates | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/deco-templates` | DecoTemplateGetAll | Get all deco templates | | POST | `/api/v1/deco-templates` | DecoTemplateCreate | Create a deco template | | GET | `/api/v1/deco-templates/groups` | GetDecoTemplateGroups | Get all deco template groups | | POST | `/api/v1/deco-templates/groups` | DecoTemplateCreateGroup | Create a deco template group | | DELETE | `/api/v1/deco-templates/groups/{id}` | DecoTemplateDeleteGroup | Delete a deco template group | | DELETE | `/api/v1/deco-templates/{id}` | DecoTemplateDelete | Delete a deco template | | GET | `/api/v1/deco-templates/{id}` | GetDecoTemplateById | Get a deco template by id | | PUT | `/api/v1/deco-templates/{id}` | DecoTemplateReplace | Replace a deco template and its items | | GET | `/api/v1/deco-templates/{id}/items` | DecoTemplateGetItems | Get deco template items | ## Decos | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/decos` | DecoGetAll | Get all decos | | POST | `/api/v1/decos` | DecoCreate | Create a deco | | GET | `/api/v1/decos/groups` | GetDecoGroups | Get all deco groups | | POST | `/api/v1/decos/groups` | DecoCreateGroup | Create a deco group | | DELETE | `/api/v1/decos/groups/{id}` | DecoDeleteGroup | Delete a deco group | | DELETE | `/api/v1/decos/{id}` | DecoDelete | Delete a deco | | GET | `/api/v1/decos/{id}` | GetDecoById | Get a deco by id | | PUT | `/api/v1/decos/{id}` | DecoReplace | Replace a deco | ## Emby | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/media-sources/emby` | GetEmbyState | Get Emby connection state and discovered servers | | GET | `/api/v1/media-sources/emby/connection` | GetEmbyConnection | Get the Emby connection address | | PUT | `/api/v1/media-sources/emby/connection` | SaveEmbyConnection | Connect, reconnect, or edit the Emby connection | | POST | `/api/v1/media-sources/emby/disconnect` | DisconnectEmby | Disconnect Emby | | GET | `/api/v1/media-sources/emby/{id}/libraries` | GetEmbyLibraries | Get an Emby source's libraries | | PUT | `/api/v1/media-sources/emby/{id}/libraries` | ReplaceEmbyLibraryPreferences | Replace an Emby source's library sync preferences | | GET | `/api/v1/media-sources/emby/{id}/path-replacements` | GetEmbyPathReplacements | Get an Emby source's path replacements | | PUT | `/api/v1/media-sources/emby/{id}/path-replacements` | ReplaceEmbyPathReplacements | Replace an Emby source's path replacements | | POST | `/api/v1/media-sources/emby/{id}/refresh-libraries` | RefreshEmbyLibraries | Refresh an Emby source's libraries | | POST | `/api/v1/media-sources/emby/{id}/scan-collections` | ScanEmbyCollections | Scan an Emby source's collections | ## FFmpeg Profiles | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/ffmpeg/hardware-acceleration-kinds` | GetSupportedHardwareAccelerationKinds | Get supported hardware acceleration kinds | | GET | `/api/v1/ffmpeg/profiles` | GetFFmpegProfiles | Get all FFmpeg profiles | | POST | `/api/v1/ffmpeg/profiles` | CreateFFmpegProfile | Create an FFmpeg profile | | DELETE | `/api/v1/ffmpeg/profiles/{id}` | DeleteFFmpegProfile | Delete an FFmpeg profile | | GET | `/api/v1/ffmpeg/profiles/{id}` | GetFFmpegProfileById | Get an FFmpeg profile by id | | PUT | `/api/v1/ffmpeg/profiles/{id}` | UpdateFFmpegProfile | Update an FFmpeg profile | ## Filler Presets | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/filler-presets` | GetFillerPresets | Get all filler presets | | POST | `/api/v1/filler-presets` | CreateFillerPreset | Create a filler preset | | DELETE | `/api/v1/filler-presets/{id}` | DeleteFillerPreset | Delete a filler preset | | GET | `/api/v1/filler-presets/{id}` | GetFillerPresetById | Get a filler preset by id | | PUT | `/api/v1/filler-presets/{id}` | UpdateFillerPreset | Update a filler preset | ## Graphics Elements | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/graphics-elements` | GetGraphicsElements | Get all graphics elements | | POST | `/api/v1/graphics-elements/refresh` | RefreshGraphicsElements | Re-sync graphics elements from disk | ## Health | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/health` | GetHealthChecks | Get health check results | ## Images | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/images/folders` | GetImageFolders | List image library folders | | PUT | `/api/v1/images/folders/{id}/duration` | UpdateImageFolderDuration | Set or clear an image folder's playout duration | ## Jellyfin | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/media-sources/jellyfin` | GetJellyfinState | Get Jellyfin connection state and discovered servers | | GET | `/api/v1/media-sources/jellyfin/connection` | GetJellyfinConnection | Get the Jellyfin connection address | | PUT | `/api/v1/media-sources/jellyfin/connection` | SaveJellyfinConnection | Connect, reconnect, or edit the Jellyfin connection | | POST | `/api/v1/media-sources/jellyfin/disconnect` | DisconnectJellyfin | Disconnect Jellyfin | | GET | `/api/v1/media-sources/jellyfin/{id}/libraries` | GetJellyfinLibraries | Get a Jellyfin source's libraries | | PUT | `/api/v1/media-sources/jellyfin/{id}/libraries` | ReplaceJellyfinLibraryPreferences | Replace a Jellyfin source's library sync preferences | | GET | `/api/v1/media-sources/jellyfin/{id}/path-replacements` | GetJellyfinPathReplacements | Get a Jellyfin source's path replacements | | PUT | `/api/v1/media-sources/jellyfin/{id}/path-replacements` | ReplaceJellyfinPathReplacements | Replace a Jellyfin source's path replacements | | POST | `/api/v1/media-sources/jellyfin/{id}/refresh-libraries` | RefreshJellyfinLibraries | Refresh a Jellyfin source's libraries | | POST | `/api/v1/media-sources/jellyfin/{id}/scan-collections` | ScanJellyfinCollections | Scan a Jellyfin source's collections | ## Languages | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/languages` | GetLanguages | Get all available language codes | ## Libraries | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/libraries/local` | GetLocalLibraries | Get all local libraries | | POST | `/api/v1/libraries/local` | LocalLibrariesCreate | Create a local library | | POST | `/api/v1/libraries/local/path-exists` | LocalLibrariesCheckPathExists | Check whether a filesystem path exists | | POST | `/api/v1/libraries/local/paths/{pathId}/move` | LocalLibrariesMovePath | Move a local library path to another local library | | DELETE | `/api/v1/libraries/local/{id}` | LocalLibrariesDelete | Delete a local library | | GET | `/api/v1/libraries/local/{id}` | GetLocalLibrary | Get a local library by id | | PUT | `/api/v1/libraries/local/{id}` | LocalLibrariesUpdate | Update a local library | | GET | `/api/v1/libraries/scan-status` | GetLibraryScanStatus | Get active library scan status | | POST | `/api/v1/libraries/{id}/scan` | LibrariesScanLibrary | Scan library | | POST | `/api/v1/libraries/{id}/scan-show` | LibrariesScanShow | Scan show | | GET | `/api/v1/library/browse` | BrowseLibrary | Browse and search library items | ## Logs | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/logs` | GetLogs | Get recent log entries | ## Maintenance | Method | Path | Operation | Summary | |---|---|---|---| | POST | `/api/v1/maintenance/clean_artwork` | MaintenanceCleanArtwork | Clean artwork cache | | POST | `/api/v1/maintenance/empty_trash` | MaintenanceEmptyTrash | Empty trash | | POST | `/api/v1/maintenance/gc` | MaintenanceGarbageCollection | Garbage collect | ## Media Items | Method | Path | Operation | Summary | |---|---|---|---| | DELETE | `/api/v1/media-items` | DeleteMediaItems | Delete media items from the database | | GET | `/api/v1/media-items/{id}/info` | GetMediaItemInfo | Get technical media info for a media item | ## Media Sources | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/media-sources` | GetMediaSources | Get all media sources with their libraries | | GET | `/api/v1/media-sources/collections-scan-status` | GetCollectionsScanStatus | Get active external-collections scan status | ## Movies | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/movies/{id}` | GetMovieById | Get a movie by id | ## Multi Collections | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/multi-collections` | GetMultiCollections | Get all multi collections (paged) | | POST | `/api/v1/multi-collections` | MultiCollectionCreate | Create a multi collection | | DELETE | `/api/v1/multi-collections/{id}` | MultiCollectionDelete | Delete a multi collection | | GET | `/api/v1/multi-collections/{id}` | GetMultiCollectionById | Get a multi collection by id | | PUT | `/api/v1/multi-collections/{id}` | MultiCollectionUpdate | Update a multi collection | ## Playlists | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/playlists` | GetPlaylists | Get playlists in a playlist group | | POST | `/api/v1/playlists` | CreatePlaylistInGroup | Create a playlist | | GET | `/api/v1/playlists/groups` | GetPlaylistGroups | Get all playlist groups | | POST | `/api/v1/playlists/groups` | CreatePlaylistGroup | Create a playlist group | | DELETE | `/api/v1/playlists/groups/{id}` | DeletePlaylistGroup | Delete a playlist group | | PUT | `/api/v1/playlists/groups/{id}` | UpdatePlaylistGroup | Rename a playlist group | | POST | `/api/v1/playlists/preview` | PreviewPlaylist | Preview the playout of a draft playlist | | DELETE | `/api/v1/playlists/{id}` | DeletePlaylist | Delete a playlist | | GET | `/api/v1/playlists/{id}` | GetPlaylistById | Get a playlist by id | | PUT | `/api/v1/playlists/{id}` | UpdatePlaylist | Update a playlist (rename and replace its items) | | GET | `/api/v1/playlists/{id}/items` | GetPlaylistItems | Get the items in a playlist | | POST | `/api/v1/playlists/{id}/items` | AddItemsToPlaylist | Add items to a playlist | ## Playouts | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/playouts` | GetPlayouts | List playouts | | POST | `/api/v1/playouts` | PlayoutCreate | Create a playout | | GET | `/api/v1/playouts/history/{id}` | GetPlayoutHistoryDetails | Decode a playout history row | | GET | `/api/v1/playouts/items/{id}/scheduling-context` | GetPlayoutItemSchedulingContext | Decode a playout item's scheduling context | | POST | `/api/v1/playouts/reset-all` | ResetAllPlayouts | Reset all playouts | | GET | `/api/v1/playouts/warnings/count` | GetPlayoutWarningsCount | Count playouts with a failed build | | DELETE | `/api/v1/playouts/{id}` | PlayoutDelete | Delete a playout | | GET | `/api/v1/playouts/{id}` | GetPlayoutById | Get a playout by id | | PUT | `/api/v1/playouts/{id}` | PlayoutUpdate | Update playout scheduling details | | GET | `/api/v1/playouts/{id}/alternate-schedules` | GetPlayoutAlternateSchedules | Get a classic playout's alternate schedules | | PUT | `/api/v1/playouts/{id}/alternate-schedules` | PlayoutReplaceAlternateSchedules | Replace a classic playout's alternate schedules | | GET | `/api/v1/playouts/{id}/blocks` | GetPlayoutBlocks | Get the blocks scheduled by a block playout | | GET | `/api/v1/playouts/{id}/blocks/{blockId}/history` | GetPlayoutBlockHistory | Get a block's playout history | | PUT | `/api/v1/playouts/{id}/deco` | PlayoutUpdateDefaultDeco | Set (or clear) a playout's default deco | | POST | `/api/v1/playouts/{id}/erase-items` | ErasePlayoutItems | Erase a playout's items | | POST | `/api/v1/playouts/{id}/erase-items-and-history` | ErasePlayoutItemsAndHistory | Erase a playout's items and history | | GET | `/api/v1/playouts/{id}/items` | GetPlayoutItems | Get upcoming items (and unscheduled gaps) for a playout | | POST | `/api/v1/playouts/{id}/reshuffle` | ReshufflePlayout | Reshuffle a playout | | GET | `/api/v1/playouts/{id}/templates` | GetPlayoutTemplates | Get a block playout's templates | | PUT | `/api/v1/playouts/{id}/templates` | PlayoutReplaceTemplates | Replace a block playout's templates | ## Plex | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/media-sources/plex` | GetPlexState | Get Plex connection state | | POST | `/api/v1/media-sources/plex/pin-flow` | StartPlexPinFlow | Start the Plex sign-in pin flow | | POST | `/api/v1/media-sources/plex/sign-out` | SignOutOfPlex | Sign out of Plex | | GET | `/api/v1/media-sources/plex/{id}/libraries` | GetPlexLibraries | Get a Plex server's libraries | | PUT | `/api/v1/media-sources/plex/{id}/libraries` | ReplacePlexLibraryPreferences | Replace a Plex server's library sync preferences | | GET | `/api/v1/media-sources/plex/{id}/path-replacements` | GetPlexPathReplacements | Get a Plex server's path replacements | | PUT | `/api/v1/media-sources/plex/{id}/path-replacements` | ReplacePlexPathReplacements | Replace a Plex server's path replacements | | POST | `/api/v1/media-sources/plex/{id}/refresh-libraries` | RefreshPlexLibraries | Refresh a Plex server's libraries | | POST | `/api/v1/media-sources/plex/{id}/scan-collections` | ScanPlexCollections | Scan a Plex server's collections | ## Rerun Collections | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/rerun-collections` | GetRerunCollections | Get all rerun collections (paged) | | POST | `/api/v1/rerun-collections` | RerunCollectionCreate | Create a rerun collection | | DELETE | `/api/v1/rerun-collections/{id}` | RerunCollectionDelete | Delete a rerun collection | | GET | `/api/v1/rerun-collections/{id}` | GetRerunCollectionById | Get a rerun collection by id | | PUT | `/api/v1/rerun-collections/{id}` | RerunCollectionUpdate | Update a rerun collection | ## Schedules | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/schedules` | ScheduleGetAll | Get all schedules | | POST | `/api/v1/schedules` | ScheduleCreate | Create a schedule | | DELETE | `/api/v1/schedules/{id}` | ScheduleDelete | Delete a schedule | | GET | `/api/v1/schedules/{id}` | GetScheduleById | Get a schedule by id | | PUT | `/api/v1/schedules/{id}` | ScheduleUpdate | Update a schedule | | GET | `/api/v1/schedules/{id}/items` | ScheduleGetItems | Get schedule items | | POST | `/api/v1/schedules/{id}/items` | ScheduleAddItem | Add a schedule item | | PUT | `/api/v1/schedules/{id}/items` | ScheduleReplaceItems | Replace schedule items | | DELETE | `/api/v1/schedules/{id}/items/{itemId}` | ScheduleDeleteItem | Delete a schedule item | ## Search | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/search` | Search | Search library items across all media kinds | | GET | `/api/v1/search/all-items` | SearchAllItems | Search library items across all media kinds and return raw id lists | | GET | `/api/v1/search/artists` | SearchArtists | Search artists by name | | GET | `/api/v1/search/collections` | SearchCollections | Search collections by name | | GET | `/api/v1/search/fields` | GetSearchFields | List the filterable fields for the visual rule builder | | GET | `/api/v1/search/fields/{name}/values` | GetSearchFieldValues | List distinct database values for a text search field | | GET | `/api/v1/search/multi-collections` | SearchMultiCollections | Search multi collections by name | | GET | `/api/v1/search/smart-collections` | SearchSmartCollections | Search smart collections by name | | GET | `/api/v1/search/television-seasons` | SearchTelevisionSeasons | Search television seasons by name | | GET | `/api/v1/search/television-shows` | SearchTelevisionShows | Search television shows by name | ## Sessions | Method | Path | Operation | Summary | |---|---|---|---| | DELETE | `/api/v1/session/{channelNumber}` | SessionStopSession | Stop session | | GET | `/api/v1/sessions` | SessionGetSessions | Get sessions | ## Settings | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/ffmpeg/resolution/by-name/{name}` | GetResolutionByName | Get a resolution by name | | GET | `/api/v1/settings/ffmpeg` | GetFfmpegSettings | Get global FFmpeg settings | | PUT | `/api/v1/settings/ffmpeg` | UpdateFfmpegSettings | Update global FFmpeg settings | | GET | `/api/v1/settings/hdhr` | GetHdhrSettings | Get HDHomeRun emulation settings | | PUT | `/api/v1/settings/hdhr` | UpdateHdhrSettings | Update HDHomeRun emulation settings | | GET | `/api/v1/settings/iptv` | GetIptvSettings | Get IPTV output settings | | PUT | `/api/v1/settings/iptv` | UpdateIptvSettings | Update IPTV output settings | | GET | `/api/v1/settings/logging` | GetLoggingSettings | Get per-area minimum log levels | | PUT | `/api/v1/settings/logging` | UpdateLoggingSettings | Update per-area minimum log levels | | GET | `/api/v1/settings/playout` | GetPlayoutSettings | Get global playout settings | | PUT | `/api/v1/settings/playout` | UpdatePlayoutSettings | Update global playout settings | | GET | `/api/v1/settings/resolutions` | GetResolutions | Get all resolutions, including custom resolutions | | POST | `/api/v1/settings/resolutions` | CreateResolution | Create a custom resolution | | DELETE | `/api/v1/settings/resolutions/{id}` | DeleteResolution | Delete a custom resolution | | GET | `/api/v1/settings/scanner` | GetScannerSettings | Get library scan cadence | | PUT | `/api/v1/settings/scanner` | UpdateScannerSettings | Update library scan cadence | | GET | `/api/v1/settings/ui` | GetUiSettings | Get UI preferences | | PUT | `/api/v1/settings/ui` | UpdateUiSettings | Update UI preferences | | GET | `/api/v1/settings/xmltv` | GetXmltvSettings | Get global XMLTV settings | | PUT | `/api/v1/settings/xmltv` | UpdateXmltvSettings | Update global XMLTV settings | ## Smart Collections | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/smart-collections` | SmartCollectionGetAll | Get all smart collections | | POST | `/api/v1/smart-collections` | SmartCollectionCreate | Create a smart collection | | DELETE | `/api/v1/smart-collections/{id}` | SmartCollectionDelete | Delete a smart collection | | GET | `/api/v1/smart-collections/{id}` | GetSmartCollectionById | Get a smart collection by id | | PUT | `/api/v1/smart-collections/{id}` | SmartCollectionUpdate | Update a smart collection | ## Television | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/seasons/{id}` | GetSeasonById | Get a television season by id | | GET | `/api/v1/shows/{id}` | GetShowById | Get a television show by id | ## Templates | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/templates` | TemplateGetAll | Get all templates | | POST | `/api/v1/templates` | TemplateCreate | Create a template | | GET | `/api/v1/templates/groups` | GetTemplateGroups | Get all template groups | | POST | `/api/v1/templates/groups` | TemplateCreateGroup | Create a template group | | DELETE | `/api/v1/templates/groups/{id}` | TemplateDeleteGroup | Delete a template group | | DELETE | `/api/v1/templates/{id}` | TemplateDelete | Delete a template | | GET | `/api/v1/templates/{id}` | GetTemplateById | Get a template by id | | PUT | `/api/v1/templates/{id}` | TemplateReplace | Replace a template and its items | | POST | `/api/v1/templates/{id}/copy` | TemplateCopy | Copy a template | | GET | `/api/v1/templates/{id}/items` | TemplateGetItems | Get template items | ## Trakt | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/trakt/lists` | GetTraktLists | Get paged Trakt lists | | POST | `/api/v1/trakt/lists` | TraktAdd | Add a Trakt list by URL | | DELETE | `/api/v1/trakt/lists/{id}` | TraktDelete | Delete a Trakt list | | GET | `/api/v1/trakt/lists/{id}` | GetTraktListById | Get a Trakt list by id | | PUT | `/api/v1/trakt/lists/{id}` | TraktUpdate | Update a Trakt list's settings | | POST | `/api/v1/trakt/lists/{id}/match` | TraktMatch | Match a Trakt list's items | | GET | `/api/v1/trakt/status` | GetTraktStatus | Get Trakt background operation status | ## Troubleshooting | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/troubleshoot/info` | GetTroubleshootingInfo | Get troubleshooting diagnostic info | | POST | `/api/v1/troubleshoot/playback/archive` | DownloadTroubleshootingArchive | Download the last troubleshooting playback session archive | | POST | `/api/v1/troubleshoot/playback/sample/{mediaItemId}` | DownloadTroubleshootingMediaSample | Download a media sample archive for troubleshooting | | POST | `/api/v1/troubleshoot/playback/start` | StartTroubleshootingPlayback | Start a troubleshooting playback session | | GET | `/api/v1/troubleshoot/playback/status` | GetTroubleshootingPlaybackStatus | Get the status of the current or last troubleshooting playback session | | GET | `/api/v1/troubleshoot/playback/stream-selectors` | GetTroubleshootingStreamSelectors | List available channel stream selectors | | GET | `/api/v1/troubleshoot/playback/subtitles/{mediaItemId}` | GetTroubleshootingSubtitles | List selectable subtitle streams for a media item | | POST | `/api/v1/troubleshoot/validate-schedule` | ValidateSequentialSchedule | Validate a sequential schedule YAML document | ## Version | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/version` | GetVersion | Get version | ## Watermarks | Method | Path | Operation | Summary | |---|---|---|---| | GET | `/api/v1/watermarks` | GetWatermarks | Get all watermarks | | POST | `/api/v1/watermarks` | CreateWatermark | Create a watermark | | DELETE | `/api/v1/watermarks/{id}` | DeleteWatermark | Delete a watermark | | GET | `/api/v1/watermarks/{id}` | GetWatermarkById | Get a watermark by id | | PUT | `/api/v1/watermarks/{id}` | UpdateWatermark | Update a watermark |