From 17e83547f782e6652436991b660f2ec003d775b6 Mon Sep 17 00:00:00 2001 From: Buster Neece Date: Sun, 21 Apr 2024 04:55:04 -0500 Subject: [PATCH] Update API spec and API interfaces with new fields. --- frontend/src/entities/ApiInterfaces.ts | 9 +++++- web/static/openapi.yml | 42 +++++++++++++++++++++++--- 2 files changed, 46 insertions(+), 5 deletions(-) diff --git a/frontend/src/entities/ApiInterfaces.ts b/frontend/src/entities/ApiInterfaces.ts index ba06076ae..287e6b3b5 100644 --- a/frontend/src/entities/ApiInterfaces.ts +++ b/frontend/src/entities/ApiInterfaces.ts @@ -611,6 +611,8 @@ export type ApiPodcast = HasLinks & { link?: string | null; description?: string; description_short?: string; + /** An array containing podcast-specific branding configuration */ + branding_config?: any[]; language?: string; language_name?: string; author?: string; @@ -633,12 +635,15 @@ export interface ApiPodcastCategory { export type ApiPodcastEpisode = HasLinks & { id?: string; title?: string; + link?: string | null; description?: string; description_short?: string; explicit?: boolean; + season_number?: number | null; + episode_number?: number | null; created_at?: number; + publish_at?: number; is_published?: boolean; - publish_at?: number | null; has_media?: boolean; playlist_media_id?: string | null; playlist_media?: ApiSong | null; @@ -1501,6 +1506,8 @@ export type StationPlaylist = HasAutoIncrementId & { avoid_duplicates?: boolean; /** StationSchedule> */ schedule_items?: any[]; + /** Podcast> */ + podcasts?: any[]; }; export type StationSchedule = HasAutoIncrementId & { diff --git a/web/static/openapi.yml b/web/static/openapi.yml index f8695766a..2f4b4ce36 100644 --- a/web/static/openapi.yml +++ b/web/static/openapi.yml @@ -3944,6 +3944,13 @@ components: type: string storage_location_id: type: integer + source: + type: string + playlist_id: + type: integer + nullable: true + playlist_auto_publish: + type: boolean title: type: string link: @@ -3953,6 +3960,10 @@ components: type: string description_short: type: string + branding_config: + description: 'An array containing podcast-specific branding configuration' + type: array + items: { } language: type: string language_name: @@ -3999,23 +4010,42 @@ components: type: string title: type: string + link: + type: string + nullable: true description: type: string description_short: type: string explicit: type: boolean + season_number: + type: integer + nullable: true + episode_number: + type: integer + nullable: true created_at: type: integer + publish_at: + type: integer is_published: type: boolean - publish_at: - type: integer - nullable: true has_media: type: boolean + playlist_media_id: + type: string + nullable: true + playlist_media: + nullable: true + oneOf: + - + $ref: '#/components/schemas/Api_Song' media: - $ref: '#/components/schemas/Api_PodcastMedia' + nullable: true + oneOf: + - + $ref: '#/components/schemas/Api_PodcastMedia' has_custom_art: type: boolean art: @@ -5012,6 +5042,10 @@ components: description: StationSchedule> type: array items: { } + podcasts: + description: Podcast> + type: array + items: { } type: object StationSchedule: type: object