Dynamic Collection Types & Data¶
Every dynamic collection definition requires the type
attribute which determines the attribute used to dynamically
create collections.
Depending on the type
of dynamic collection, data
is used to specify the options that are required to fulfill the
requirements of creating the collection.
tmdb_collection
- Collections based on TMDb Collections.¶
Creates collections based on the TMDb Collections associated with items in the library.
type
Value: tmdb_collection
data
Value: Not Used
Valid Library Types: Movies
Key Values: TMDb Collection ID
Key Name Value: TMDb Collection Title
Default title_format
: <<key_name>>
Default Template (click to expand)
tmdb_popular_people
- Collections based on actors found on TMDb's Popular People List.¶
Creates collections based on each actor found on
TMDb's Popular People List.
type
Value: tmdb_popular_people
data
Value: Number greater than 0
Valid Library Types: Movies and Shows
Key Values: TMDb Person ID
Key Name Value: TMDb Person Name
Default title_format
: <<key_name>>
Default Template (click to expand)
original_language
- Collections based on TMDb original languages.¶
Creates collections based on the TMDb original language associated with items in the
library.
type
Value: original_language
data
Value: Not Used
Valid Library Types: Movies and Shows
Key Values: ISO 639-1 Code
Key Name Value: ISO Language Name
Default title_format
: <<key_name>> <<library_type>>s
Default Template (click to expand)
origin_country
- Collections based on TMDb origin countries.¶
Creates collections based on the TMDb origin country associated with items in the
library.
type
Value: origin_country
data
Value: Not Used
Valid Library Types: Shows
Key Values: ISO 3166-1 alpha-2 country code
Key Name Value: ISO Country Name
Default title_format
: <<key_name>> <<library_type>>s
Default Template (click to expand)
imdb_awards
- Collections based on IMDb Events by Year.¶
Creates collections for each of the Year's found on the IMDb event page.
type
Value: imdb_awards
data
Value: Dictionary of Attributes
event_id
- Determines the IMDb Event used.¶
This determines which IMDb Event is used.
Allowed Values: The ID found in the URLs linked on the IMDb Events Page.
(ex. ev0000003
)
starting
- Determines the starting year of the event to use.¶
This determines the starting year of the event to use to create collections.
Allowed Values: Number greater than 0, first
, latest
, relative first (first+#
; where #
is the number
of events past the first event), or relative latest (latest-#
; where #
is the number of events back from the
latest)
Default: first
ending
- Determines the ending year of the event to use.¶
This determines the ending year of the event to use to create collections.
Allowed Values: Number greater than 0, first
, latest
, relative first (first+#
; where #
is the number
of events past the first event), or relative latest (latest-#
; where #
is the number of events back from the
latest)
Default: latest
Valid Library Types: Movies and Shows
Key Values: Award Year (sometimes this will look like 2003-2
if there are more than one award show that year)
Key Name Value: Award Year (sometimes this will look like 2003-2
if there are more than one award show that
year)
Default title_format
: <<key_name>>
Default Template (click to expand)
letterboxd_user_lists
- Collections based on the Lists of Letterboxd Users.¶
Creates collections for each of the Letterboxd lists that the user has created.
type
Value: letterboxd_user_lists
data
Value: Dictionary of Attributes
username
- Determines the Usernames to scan for lists.¶
This determines which Usernames are scanned.
Allowed Values: Username or list of Usernames
sort_by
- Determines the sort that the lists are returned.¶
Determines the sort that the lists are returned.
Allowed Values: updated
, name
, popularity
, newest
, oldest
Default: updated
limit
- Determines the number of lists to create collections for.¶
Determines the number of lists to create collections for. (0
is all lists)
Allowed Values: Number 0 or greater
Default: 0
Valid Library Types: Movies
Key Values: Letterboxd List URL
Key Name Value: Letterboxd List Title
Default title_format
: <<key_name>>
trakt_user_lists
- Collections based on Trakt Lists by users.¶
Creates collections for each of the Trakt lists for the specified users. Use me
to
reference the authenticated user.
Warning
Requires Trakt Authentication to be configured within the Configuration File.
type
Value: trakt_user_lists
data
Value: List of Trakt Users (Use me
to reference the authenticated user)
Valid Library Types: Movies and Shows
Key Values: Trakt List URL
Key Name Value: Trakt List Title
Default title_format
: <<key_name>>
trakt_liked_lists
- Collections based on liked Trakt Lists.¶
Creates collections for each of the Trakt lists that the authenticated user has liked.
Warning
Requires Trakt Authentication to be configured within the Configuration File.
type
Value: trakt_liked_lists
data
Value: Not Used
Valid Library Types: Movies and Shows
Key Values: Trakt List URL
Key Name Value: Trakt List Title
Default title_format
: <<key_name>>
trakt_people_list
- Collections based on people on Trakt Lists.¶
Creates collections for each of the people found within Trakt lists that the user
specifies.
Warning
Requires Trakt Authentication to be configured within the Configuration File.
type
Value: trakt_people_list
data
Value: List of Trakt URLs
Valid Library Types: Movies and Shows
Key Values: TMDb Person ID
Key Name Value: TMDb Person Name
Default title_format
: <<key_name>>
Default Template (click to expand)
actor
- Collections based on actor credits.¶
Creates collections for each actor found in the library based on given criteria.
type
Value: actor
data
Value: Dictionary of Attributes
depth
- Determines how many "top" acting credits per item.¶
This determines how many "top" acting credits there are for each item. Acting credits
are parsed in top billing order.
Allowed Values: Number greater than 0
Default: 3
minimum
- Determines the minimum number of "top" acting credits.¶
Determines the minimum number of "top" acting credits. For a collection for this actor
to be created they must meet the minimum number of "top" acting credits.
Warning
The number of "top" acting credits per item is determined by the depth
value.
Allowed Values: Number greater than 0
Default: 3
limit
- Determines the maximum number of actor collections to create.¶
Determines the maximum number of actor collections to create.
Allowed Values: Number greater than 0
Default: None
Valid Library Types: Movies and Shows
Key Values: Person Name
Key Name Value: Person Name
Default title_format
: <<key_name>>
Examples
This example creates a collection for each of the top 25 actors who appear in the "top" 5 acting credits of an item in the library.
dynamic_collections:
Top Actors: # mapping name does not matter just needs to be unique
type: actor
data:
depth: 5
limit: 25
This example creates a collection for each of the actors who appear in the "top" 5 acting credits of an item in the library for at least 20 items.
director
- Collections based on directors.¶
Creates collections for each director found in the library based on given criteria.
type
Value: director
data
Value: Dictionary of Attributes
depth
- Determines how many "top" directing credits per item.¶
This determines how many "top" directing credits there are for each item. Directing
credits are parsed in top billing order.
Allowed Values: Number greater than 0
Default: 3
minimum
- Determines the minimum number of "top" directing credits.¶
Determines the minimum number of "top" directing credits. For a collection for this
director to be created they must meet the minimum number of "top" directing credits.
Warning
The number of "top" directing credits per item is determined by the depth
value.
Allowed Values: Number greater than 0
Default: 3
limit
- Determines the maximum number of director collections to create.¶
Determines the maximum number of director collections to create.
Allowed Values: Number greater than 0
Default: None
Valid Library Types: Movies
Key Values: Person Name
Key Name Value: Person Name
Default title_format
: <<key_name>>
Examples
This example creates a collection for the each of the top 5 directors who appear as the "top" directing credits of movies.
dynamic_collections:
Top Directors: # mapping name does not matter just needs to be unique
type: director
data:
depth: 1
limit: 5
This example creates a collection for the each of the directors who appear as the "top" directing credits of movies the library for at least 10 movies.
writer
- Collections based on writers.¶
Creates collections for each writer found in the library based on given criteria.
type
Value: writer
data
Value: Dictionary of Attributes
depth
- Determines how many "top" writing credits per item.¶
This determines how many "top" writing credits there are for each item. Writing credits
are parsed in top billing order.
Allowed Values: Number greater than 0
Default: 3
minimum
- Determines the minimum number of "top" writing credits.¶
Determines the minimum number of "top" writing credits. For a collection for this
writer to be created they must meet the minimum number of "top" writing credits.
Warning
The number of "top" writing credits per item is determined by the depth
value.
Allowed Values: Number greater than 0
Default: 3
limit
- Determines the maximum number of writer collections to create.¶
Determines the maximum number of writer collections to create.
Allowed Values: Number greater than 0
Default: None
Valid Library Types: Movies
Key Values: Person Name
Key Name Value: Person Name
Default title_format
: <<key_name>>
Examples
This example creates a collection for the each of the top 5 writers who appear as the "top" writing credits of movies.
dynamic_collections:
Top Writers: # mapping name does not matter just needs to be unique
type: writer
data:
depth: 1
limit: 5
This example creates a collection for the each of the writers who appear as the "top" writing credits of movies the library for at least 10 movies.
producer
- Collections based on producers.¶
Creates collections for each producer found in the library based on given criteria.
type
Value: producer
data
Value: Dictionary of Attributes
depth
- Determines how many "top" producing credits per item.¶
This determines how many "top" producing credits there are for each item. Producing
credits are parsed in top billing order.
Allowed Values: Number greater than 0
Default: 3
minimum
- Determines the minimum number of "top" producing credits.¶
Determines the minimum number of "top" producing credits. For a collection for this
producer to be created they must meet the minimum number of "top" producing credits.
Warning
The number of "top" producing credits per item is determined by the depth
value.
Allowed Values: Number greater than 0
Default: 3
limit
- Determines the maximum number of producer collections to create.¶
Determines the maximum number of producer collections to create.
Allowed Values: Number greater than 0
Default: None
Valid Library Types: Movies
Key Values: Person Name
Key Name Value: Person Name
Default title_format
: <<key_name>>
Examples
This example creates a collection for the each of the top 5 producers who appear as the "top" producing credits of movies.
dynamic_collections:
Top Producers: # mapping name does not matter just needs to be unique
type: producer
data:
depth: 1
limit: 5
This example creates a collection for the each of the producers who appear as the "top" producing credits of movies the library for at least 10 movies.
genre
- Collections based on genres.¶
Creates collections for each genre found in the library.
type
Value: genre
data
Value: Not Used
Valid Library Types: Movies, Shows, Music, and Video
Key Values: Genre
Key Name Value: Genre
Default title_format
: Top <<key_name>> <<library_type>>s
Default Template (click to expand)
album_genre
- Collections based on album genres.¶
Creates album collections for each genre associated with albums found in the music library.
type
Value: genre
data
Value: Not Used
Valid Library Types: Music
Key Values: Genre
Key Name Value: Genre
Default title_format
: Top <<key_name>> Albums
Default Template (click to expand)
content_rating
- Collections based on content ratings.¶
Creates collections for each content rating found in the library.
type
Value: content_rating
data
Value: Not Used
Valid Library Types: Movies, Shows, and Video
Key Values: Content Rating
Key Name Value: Content Rating
Default title_format
: Top <<key_name>> <<library_type>>s
Default Template (click to expand)
year
- Collections based on content ratings.¶
Creates collections for each year found in the library.
type
Value: year
data
Value: Not Used
Valid Library Types: Movies and Shows
Key Values: Year
Key Name Value: Year
Default title_format
: Best <<library_type>>s of <<key_name>>
Default Template (click to expand)
episode_year
- Collections based on content ratings.¶
Creates collections for each year associated with episodes found in the library.
type
Value: episode_year
data
Value: Not Used
Valid Library Types: Shows
Key Values: Year
Key Name Value: Year
Default title_format
: Best Episodes of <<key_name>>
Default Template (click to expand)
decade
- Collections based on decades.¶
Creates collections for each decade found in the library.
type
Value: decade
data
Value: Not Used
Valid Library Types: Movies and Shows
Key Values: Decade
Key Name Value: Decade with an s
at the end
Default title_format
: Best <<library_type>> of the <<key_name>>
Default Templates (click to expand)
country
- Collections based on countries.¶
Creates collections for each country found in the library.
type
Value: country
data
Value: Not Used
Valid Library Types: Movies, Music, Video
Key Values: Country
Key Name Value: Country
Default title_format
: Top <<key_name>> <<library_type>>s
Default Template (click to expand)
resolution
- Collections based on resolutions.¶
Creates collections for each resolution found in the library.
type
Value: resolution
data
Value: Not Used
Valid Library Types: Movies and Shows
Key Values: Resolution
Key Name Value: Resolution
Default title_format
: <<key_name>> <<library_type>>s
Default Template (click to expand)
subtitle_language
- Collections based on subtitle languages.¶
Creates collections for each subtitle language found in the library.
type
Value: subtitle_language
data
Value: Not Used
Valid Library Types: Movies and Shows
Key Values: ISO 639-1 Code
Key Name Value: ISO Language Name
Default title_format
: Top <<key_name>> <<library_type>>s
Default Template (click to expand)
audio_language
- Collections based on audio languages.¶
Creates collections for each audio language found in the library.
type
Value: audio_language
data
Value: Not Used
Valid Library Types: Movies and Shows
Key Values: ISO 639-1 Code
Key Name Value: ISO Language Name
Default title_format
: Top <<key_name>> <<library_type>>s
Default Template (click to expand)
studio
- Collections based on studios.¶
Creates collections for each studio found in the library.
type
Value: studio
data
Value: Not Used
Valid Library Types: Movies and Shows
Key Values: Studio
Key Name Value: Studio
Default title_format
: Top <<key_name>> <<library_type>>s
Default Template (click to expand)
edition
- Collections based on editions.¶
Creates collections for each edition found in the library.
type
Value: edition
data
Value: Not Used
Valid Library Types: Movies
Key Values: Edition
Key Name Value: Edition
Default title_format
: Top <<key_name>> <<library_type>>s
Default Template (click to expand)
network
- Collections based on networks.¶
Creates collections for each network found in the library.
type
Value: network
data
Value: Not Used
Valid Library Types: Shows
Key Values: Network
Key Name Value: Network
Default title_format
: Top <<key_name>> <<library_type>>s
Default Template (click to expand)
mood
- Collections based on artist moods.¶
Creates collections for each mood associated with an artist found in the library.
type
Value: mood
data
Value: Not Used
Valid Library Types: Music
Key Values: Mood
Key Name Value: Mood
Default title_format
: Most Played <<key_name>> Artists
Default Template (click to expand)
album_mood
- Collections based on album moods.¶
Creates collections for each mood associated with an album found in the library.
type
Value: album_mood
data
Value: Not Used
Valid Library Types: Music
Key Values: Mood
Key Name Value: Mood
Default title_format
: Most Played <<key_name>> Albums
Default Template (click to expand)
track_mood
- Collections based on track moods.¶
Creates collections for each mood associated with a track found in the library.
type
Value: track_mood
data
Value: Not Used
Valid Library Types: Music
Key Values: Mood
Key Name Value: Mood
Default title_format
: Most Played <<key_name>> Tracks
Default Template (click to expand)
style
- Collections based on artist styles.¶
Creates collections for each style associated with an artist found in the library.
type
Value: style
data
Value: Not Used
Valid Library Types: Music
Key Values: Style
Key Name Value: Style
Default title_format
: Most Played <<key_name>> Artists
Default Template (click to expand)
album_style
- Collections based on album styles.¶
Creates collections for each style associated with an album found in the library.
type
Value: album_style
data
Value: Not Used
Valid Library Types: Music
Key Values: Style
Key Name Value: Style
Default title_format
: Most Played <<key_name>> Artists
Default Template (click to expand)
number
- Collections based on defined numbers.¶
Creates collections for each number based on given criteria.
type
Value: number
data
Value: Dictionary of Attributes
starting
- Determines the starting number.¶
This determines the starting number of collections to create.
Allowed Values: Number greater than 0, current_year
, or relative year current_year-#
(#
is the number
of years back from the current year)
Default: 0
ending
- Determines the ending number.¶
This determines the ending number of collections to create.
Allowed Values: Number greater than 1, current_year
, or relative year current_year-#
(#
is the number
of years back from the current year)
Default: 1
increment
- Determines amount incremented.¶
Determines the amount incremented from one collection to the other.
Allowed Values: Number greater than 0
Default: 1
Valid Library Types: Movies, Shows, Music, and Video
Key Values: Number
Key Name Value: Number
Default title_format
: <<key_name>>
Warning
There's no default template for this type one has to be specified.
Example
This example create a collection for the Oscar Winner by Year for the last 5 years and names the collection "Oscars Winners [Number]".
templates:
Oscars:
summary: Academy Awards (Oscars) Winners for <<key>>
imdb_search:
release.after: <<key>>-01-01
release.before: <<key>>-12-31
event.winning: oscar_picture, oscar_director
sort_by: popularity.asc
sync_mode: sync
collection_order: custom
dynamic_collections:
Oscars Winners Awards:
type: number
sync: true
data:
starting: current_year-5
ending: current_year
title_format: Oscars Winners <<key_name>>
template:
- Oscars
custom
- Collections based on given values.¶
Creates collections for each custom dynamic key: key_name
pair defined.
type
Value: custom
data
Value: Dictionary with the keys being the dynamic key
and the values
being the key name
Valid Library Types: Movies, Shows, Music, and Video
Key Values: dynamic key
Key Name Value: key_name
Default title_format
: <<key_name>>
Warning
There's no default template for this type one has to be specified.
Example
This example creates a collection for the various Streaming Services and names them "[Key Name] Movies".
templates:
streaming:
cache_builders: 1
smart_label: release.desc
sync_mode: sync
mdblist_list: https://mdblist.com/lists/k0meta/<<key>>-movies
url_poster: https://raw.githubusercontent.com/Kometa-Team/Default-Images/master/streaming/<<key_name_encoded>>.jpg
dynamic_collections:
Streaming:
type: custom
data:
all-4: All 4
appletv: Apple TV+
bet: BET+
britbox: BritBox
disney: Disney+
max: Max
hulu: Hulu
netflix: Netflix
now: NOW
paramount: Paramount+
peacock: Peacock
amazon-prime-video: Prime Video
title_format: <<key_name>> Movies
template:
- streaming
- shared
Dynamic Collection Examples¶
Example
templates:
genre collection: #(4)!
smart_filter:
limit: 100
sort_by: critic_rating.desc
all:
genre: <<value>>
dynamic_collections:
Genres:
type: genre #(1)!
exclude: #(2)!
- Talk Show
template: genre collection #(3)!
- Uses the
genre
type to create dynamic collections based on each genre found in the library. - Uses
exclude
to exclude theTalk Show
genre. - Uses the template called
genre collection
for these collections. - This is the same template as the default for
genre
but thelimit
has been increased to 100 from 50.
Example:¶
- Create dynamic collections based on each genre found in the library (TV and Movies)
- Amend the template to increase the limit from 50 to 100
- Exclude the "Talk Show" genre
- Name the collection "Top [Genre] Movies" or "Top [Genre] Shows"
templates:
genre collection:
smart_filter:
limit: 100
sort_by: critic_rating.desc
all:
genre: <<value>>
dynamic_collections:
Genres: # mapping name does not matter just needs to be unique
type: genre
exclude:
- Talk Show
title_format: Top <<key_name>> <<library_type>>s
template: genre collection
Example:¶
- Create dynamic collections based on each content rating found in the library (TV and Movies)
- Amend the template to increase the limit from 50 to 100
templates:
content rating collection:
smart_filter:
limit: 100
sort_by: critic_rating.desc
all:
content_rating: <<value>>
dynamic_collections:
Content Ratings: # mapping name does not matter just needs to be unique
type: content_rating
template: content rating collection
Example¶
- Create dynamic collections based on each year found in the library (TV and Movies)
- Use the
include
attribute to only show collections for years "2020", "2021" and "2022" - Name the collection "Best of [Year]"
dynamic_collections:
Years: # mapping name does not matter just needs to be unique
type: year
include:
- 2020
- 2021
- 2022
title_format: Best of <<key_name>>
Example:¶
- Create a collection for each decade found in the library (TV and Movies)
- Name the collection "Top [Decade] Movies"
- Rename the
2020
collection name to "Top 2020 Movies (so far)"
dynamic_collections:
Decades: # mapping name does not matter just needs to be unique
type: decade
title_format: Top <<key_name>> <<library_type>>s
title_override:
2020: Top 2020 Movies (so far)
Example:¶
- Create a collection for the top movies from each country found in the library
- Name the collection "Top [Country] Cinema"
- The
key_name_override
attribute is used here in combination with thetitle_format
to change the collection name from "France" which would be the default title, to "Top French Cinema"
dynamic_collections:
Countries: # mapping name does not matter just needs to be unique
type: country
title_format: Top <<key_name>> Cinema
key_name_override:
France: French
Germany: German
India: Indian
Example:¶
- Create a collection for each resolution found in the library
- Name the collection "[Resolution] Movies"
- Combine 480p, 576p and SD into a collection called "SD Movies"
Example:¶
- Create a collection for the top 20 artists for each mood found in the Music library
- Amend the template to increase the limit from 10 to 20
- Name the collection "Top 20 [Mood] Artists"
templates:
mood collection:
smart_filter:
limit: 20
sort_by: plays.desc
all:
artist_mood: <<value>>
dynamic_collections:
Moods: # mapping name does not matter just needs to be unique
type: mood
title_format: Top 20 <<key_name>> Artists
template: mood collection
Example:¶
- Create a collection for the top 20 albums for each mood found in the Music library
- Amend the template to increase the limit from 10 to 20
- Name the collection "Top 20 [Mood] Albums"
templates:
mood collection:
smart_filter:
limit: 20
sort_by: plays.desc
all:
album_mood: <<value>>
dynamic_collections:
Moods: # mapping name does not matter just needs to be unique
type: album_mood
title_format: Top 20 <<key_name>> Albums
template: mood collection
Example:¶
- Create a collection for the top 100 tracks for each mood found in the Music library
- Amend the template to increase the limit from 50 to 100
- Name the collection "Top 100 [Mood] Tracks"
templates:
mood collection:
smart_filter:
limit: 100
sort_by: plays.desc
all:
track_mood: <<value>>
dynamic_collections:
Moods: # mapping name does not matter just needs to be unique
type: track_mood
title_format: Top 100 <<key_name>> Tracks
template: mood collection
Example:¶
- Create a collection for the top 10 artists for each style found in the Music library
- Name the collection "Top [Style] Artists"
templates:
style collection:
smart_filter:
limit: 10
sort_by: plays.desc
all:
artist_style: <<value>>
dynamic_collections:
Styles: # mapping name does not matter just needs to be unique
type: style
title_format: Top <<key_name>> <<library_type>>
template: style collection
Example:¶
- Create a collection for the top 10 albums for each style found in the Music library
- Name the collection "Top [Style] Albums"