From 18f383117abeb035ffd13d90e8f52f9a7cf84788 Mon Sep 17 00:00:00 2001 From: speakeasybot Date: Sat, 8 Feb 2025 00:08:56 +0000 Subject: [PATCH] ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.487.1 --- .speakeasy/gen.lock | 156 ++++++++++---- .speakeasy/gen.yaml | 2 +- .speakeasy/workflow.lock | 14 +- Gemfile.lock | 2 +- README.md | 3 +- RELEASES.md | 12 +- codeSamples.yaml | 14 +- .../operations/getactorslibrarybadrequest.md | 10 + .../operations/getactorslibrarydirectory.md | 11 + ...keyerrors.md => getactorslibraryerrors.md} | 2 +- ...rs.md => getactorslibrarylibraryerrors.md} | 2 +- .../getactorslibrarymediacontainer.md | 20 ++ .../getactorslibraryqueryparamtype.md | 22 ++ .../operations/getactorslibraryrequest.md | 9 + .../operations/getactorslibraryresponse.md | 13 ++ .../getactorslibraryresponsebody.md | 10 + ...zed.md => getactorslibraryunauthorized.md} | 8 +- .../getcountrieslibraryqueryparamtype.md | 22 ++ .../operations/getcountrieslibraryrequest.md | 7 +- .../getgenreslibraryqueryparamtype.md | 22 ++ .../operations/getgenreslibraryrequest.md | 7 +- .../getlibraryitemsqueryparamtype.md | 2 +- .../operations/getlibraryitemsrequest.md | 18 +- .../operations/getmediametadatabadrequest.md | 10 + .../operations/getmediametadatacountry.md | 10 + .../operations/getmediametadatadirector.md | 13 ++ .../operations/getmediametadataerrors.md | 10 + .../operations/getmediametadatagenre.md | 10 + .../operations/getmediametadataimage.md | 10 + .../getmediametadatalibraryerrors.md | 10 + .../operations/getmediametadatalocation.md | 8 + .../operations/getmediametadatamedia.md | 22 ++ .../getmediametadatamediacontainer.md | 16 ++ ...etadata.md => getmediametadatametadata.md} | 103 +++++---- .../models/operations/getmediametadatapart.md | 18 ++ .../operations/getmediametadatarequest.md | 21 ++ .../operations/getmediametadataresponse.md | 13 ++ ...ody.md => getmediametadataresponsebody.md} | 8 +- .../models/operations/getmediametadatarole.md | 13 ++ .../operations/getmediametadatastream.md | 53 +++++ .../getmediametadataultrablurcolors.md | 11 + .../getmediametadataunauthorized.md | 10 + .../operations/getmediametadatawriter.md | 13 ++ .../getmetadatabyratingkeybadrequest.md | 10 - .../getmetadatabyratingkeycountry.md | 10 - .../getmetadatabyratingkeydirector.md | 12 -- .../operations/getmetadatabyratingkeygenre.md | 10 - .../operations/getmetadatabyratingkeymedia.md | 24 --- .../getmetadatabyratingkeymediacontainer.md | 16 -- .../operations/getmetadatabyratingkeypart.md | 18 -- .../getmetadatabyratingkeyrequest.md | 8 - .../getmetadatabyratingkeyresponse.md | 13 -- .../operations/getmetadatabyratingkeyrole.md | 13 -- .../getmetadatabyratingkeystream.md | 39 ---- .../getmetadatabyratingkeywriter.md | 12 -- .../getplaylistcontentsqueryparamtype.md | 2 +- .../operations/getplaylistcontentsrequest.md | 8 +- .../getrecentlyaddedlibraryrequest.md | 18 +- .../operations/getrecentlyaddedrequest.md | 18 +- .../getsearchlibraryqueryparamtype.md | 2 +- .../operations/getsearchlibraryrequest.md | 8 +- .../gettopwatchedcontentqueryparamtype.md | 2 +- .../operations/gettopwatchedcontentrequest.md | 8 +- docs/models/operations/guids.md | 6 +- docs/models/operations/producer.md | 11 +- docs/models/operations/queryparamtype.md | 2 +- docs/models/operations/rating.md | 10 + docs/models/operations/ratings.md | 10 - docs/models/operations/similar.md | 10 + docs/models/operations/type.md | 2 +- docs/sdks/library/README.md | 108 +++++++--- docs/sdks/playlists/README.md | 8 +- lib/plex_ruby_sdk/library.rb | 99 +++++++-- lib/plex_ruby_sdk/models/operations.rb | 52 +++-- ...st.rb => get_actors_library_badrequest.rb} | 6 +- .../get_actors_library_directory.rb | 33 +++ ...errors.rb => get_actors_library_errors.rb} | 2 +- ...b => get_actors_library_library_errors.rb} | 2 +- .../get_actors_library_mediacontainer.rb | 60 ++++++ .../get_actors_library_queryparam_type.rb | 29 +++ .../operations/get_actors_library_request.rb | 35 ++++ .../operations/get_actors_library_response.rb | 39 ++++ .../get_actors_library_responsebody.rb | 24 +++ ....rb => get_actors_library_unauthorized.rb} | 6 +- .../get_countries_library_queryparam_type.rb | 29 +++ .../get_countries_library_request.rb | 13 +- .../get_genres_library_queryparam_type.rb | 29 +++ .../operations/get_genres_library_request.rb | 13 +- .../get_library_items_queryparam_type.rb | 2 +- .../operations/get_library_items_request.rb | 22 +- .../get_media_meta_data_badrequest.rb | 24 +++ .../operations/get_media_meta_data_country.rb | 30 +++ .../get_media_meta_data_director.rb | 39 ++++ .../operations/get_media_meta_data_errors.rb | 30 +++ .../operations/get_media_meta_data_genre.rb | 30 +++ .../operations/get_media_meta_data_image.rb | 30 +++ .../get_media_meta_data_library_errors.rb | 30 +++ .../get_media_meta_data_location.rb | 24 +++ .../operations/get_media_meta_data_media.rb | 66 ++++++ .../get_media_meta_data_mediacontainer.rb | 48 +++++ .../get_media_meta_data_metadata.rb | 198 ++++++++++++++++++ .../operations/get_media_meta_data_part.rb | 54 +++++ .../operations/get_media_meta_data_request.rb | 63 ++++++ ...nse.rb => get_media_meta_data_response.rb} | 10 +- ...rb => get_media_meta_data_responsebody.rb} | 6 +- .../operations/get_media_meta_data_role.rb | 39 ++++ .../operations/get_media_meta_data_stream.rb | 159 ++++++++++++++ .../get_media_meta_data_ultrablurcolors.rb | 33 +++ .../get_media_meta_data_unauthorized.rb | 24 +++ .../operations/get_media_meta_data_writer.rb | 39 ++++ .../get_meta_data_by_rating_key_country.rb | 30 --- .../get_meta_data_by_rating_key_director.rb | 36 ---- .../get_meta_data_by_rating_key_genre.rb | 30 --- .../get_meta_data_by_rating_key_media.rb | 72 ------- ..._meta_data_by_rating_key_mediacontainer.rb | 48 ----- .../get_meta_data_by_rating_key_metadata.rb | 135 ------------ .../get_meta_data_by_rating_key_part.rb | 54 ----- .../get_meta_data_by_rating_key_request.rb | 24 --- .../get_meta_data_by_rating_key_role.rb | 39 ---- .../get_meta_data_by_rating_key_stream.rb | 117 ----------- .../get_meta_data_by_rating_key_writer.rb | 36 ---- .../get_recently_added_library_request.rb | 2 +- .../operations/get_recently_added_request.rb | 2 +- .../get_search_library_queryparam_type.rb | 2 +- .../operations/get_search_library_request.rb | 2 +- .../getplaylistcontents_queryparam_type.rb | 2 +- .../operations/getplaylistcontents_request.rb | 2 +- .../gettopwatchedcontent_queryparam_type.rb | 2 +- .../gettopwatchedcontent_request.rb | 2 +- lib/plex_ruby_sdk/models/operations/guids.rb | 6 +- .../models/operations/producer.rb | 25 ++- .../models/operations/queryparam_type.rb | 2 +- lib/plex_ruby_sdk/models/operations/rating.rb | 30 +++ .../models/operations/ratings.rb | 30 --- .../models/operations/similar.rb | 30 +++ lib/plex_ruby_sdk/models/operations/type.rb | 2 +- lib/plex_ruby_sdk/sdkconfiguration.rb | 4 +- plex_ruby_sdk.gemspec | 2 +- 138 files changed, 2292 insertions(+), 1135 deletions(-) create mode 100644 docs/models/operations/getactorslibrarybadrequest.md create mode 100644 docs/models/operations/getactorslibrarydirectory.md rename docs/models/operations/{getmetadatabyratingkeyerrors.md => getactorslibraryerrors.md} (96%) rename docs/models/operations/{getmetadatabyratingkeylibraryerrors.md => getactorslibrarylibraryerrors.md} (95%) create mode 100644 docs/models/operations/getactorslibrarymediacontainer.md create mode 100644 docs/models/operations/getactorslibraryqueryparamtype.md create mode 100644 docs/models/operations/getactorslibraryrequest.md create mode 100644 docs/models/operations/getactorslibraryresponse.md create mode 100644 docs/models/operations/getactorslibraryresponsebody.md rename docs/models/operations/{getmetadatabyratingkeyunauthorized.md => getactorslibraryunauthorized.md} (54%) create mode 100644 docs/models/operations/getcountrieslibraryqueryparamtype.md create mode 100644 docs/models/operations/getgenreslibraryqueryparamtype.md create mode 100644 docs/models/operations/getmediametadatabadrequest.md create mode 100644 docs/models/operations/getmediametadatacountry.md create mode 100644 docs/models/operations/getmediametadatadirector.md create mode 100644 docs/models/operations/getmediametadataerrors.md create mode 100644 docs/models/operations/getmediametadatagenre.md create mode 100644 docs/models/operations/getmediametadataimage.md create mode 100644 docs/models/operations/getmediametadatalibraryerrors.md create mode 100644 docs/models/operations/getmediametadatalocation.md create mode 100644 docs/models/operations/getmediametadatamedia.md create mode 100644 docs/models/operations/getmediametadatamediacontainer.md rename docs/models/operations/{getmetadatabyratingkeymetadata.md => getmediametadatametadata.md} (53%) create mode 100644 docs/models/operations/getmediametadatapart.md create mode 100644 docs/models/operations/getmediametadatarequest.md create mode 100644 docs/models/operations/getmediametadataresponse.md rename docs/models/operations/{getmetadatabyratingkeyresponsebody.md => getmediametadataresponsebody.md} (51%) create mode 100644 docs/models/operations/getmediametadatarole.md create mode 100644 docs/models/operations/getmediametadatastream.md create mode 100644 docs/models/operations/getmediametadataultrablurcolors.md create mode 100644 docs/models/operations/getmediametadataunauthorized.md create mode 100644 docs/models/operations/getmediametadatawriter.md delete mode 100644 docs/models/operations/getmetadatabyratingkeybadrequest.md delete mode 100644 docs/models/operations/getmetadatabyratingkeycountry.md delete mode 100644 docs/models/operations/getmetadatabyratingkeydirector.md delete mode 100644 docs/models/operations/getmetadatabyratingkeygenre.md delete mode 100644 docs/models/operations/getmetadatabyratingkeymedia.md delete mode 100644 docs/models/operations/getmetadatabyratingkeymediacontainer.md delete mode 100644 docs/models/operations/getmetadatabyratingkeypart.md delete mode 100644 docs/models/operations/getmetadatabyratingkeyrequest.md delete mode 100644 docs/models/operations/getmetadatabyratingkeyresponse.md delete mode 100644 docs/models/operations/getmetadatabyratingkeyrole.md delete mode 100644 docs/models/operations/getmetadatabyratingkeystream.md delete mode 100644 docs/models/operations/getmetadatabyratingkeywriter.md create mode 100644 docs/models/operations/rating.md delete mode 100644 docs/models/operations/ratings.md create mode 100644 docs/models/operations/similar.md rename lib/plex_ruby_sdk/models/operations/{get_meta_data_by_rating_key_badrequest.rb => get_actors_library_badrequest.rb} (66%) create mode 100644 lib/plex_ruby_sdk/models/operations/get_actors_library_directory.rb rename lib/plex_ruby_sdk/models/operations/{get_meta_data_by_rating_key_errors.rb => get_actors_library_errors.rb} (91%) rename lib/plex_ruby_sdk/models/operations/{get_meta_data_by_rating_key_library_errors.rb => get_actors_library_library_errors.rb} (90%) create mode 100644 lib/plex_ruby_sdk/models/operations/get_actors_library_mediacontainer.rb create mode 100644 lib/plex_ruby_sdk/models/operations/get_actors_library_queryparam_type.rb create mode 100644 lib/plex_ruby_sdk/models/operations/get_actors_library_request.rb create mode 100644 lib/plex_ruby_sdk/models/operations/get_actors_library_response.rb create mode 100644 lib/plex_ruby_sdk/models/operations/get_actors_library_responsebody.rb rename lib/plex_ruby_sdk/models/operations/{get_meta_data_by_rating_key_unauthorized.rb => get_actors_library_unauthorized.rb} (64%) create mode 100644 lib/plex_ruby_sdk/models/operations/get_countries_library_queryparam_type.rb create mode 100644 lib/plex_ruby_sdk/models/operations/get_genres_library_queryparam_type.rb create mode 100644 lib/plex_ruby_sdk/models/operations/get_media_meta_data_badrequest.rb create mode 100644 lib/plex_ruby_sdk/models/operations/get_media_meta_data_country.rb create mode 100644 lib/plex_ruby_sdk/models/operations/get_media_meta_data_director.rb create mode 100644 lib/plex_ruby_sdk/models/operations/get_media_meta_data_errors.rb create mode 100644 lib/plex_ruby_sdk/models/operations/get_media_meta_data_genre.rb create mode 100644 lib/plex_ruby_sdk/models/operations/get_media_meta_data_image.rb create mode 100644 lib/plex_ruby_sdk/models/operations/get_media_meta_data_library_errors.rb create mode 100644 lib/plex_ruby_sdk/models/operations/get_media_meta_data_location.rb create mode 100644 lib/plex_ruby_sdk/models/operations/get_media_meta_data_media.rb create mode 100644 lib/plex_ruby_sdk/models/operations/get_media_meta_data_mediacontainer.rb create mode 100644 lib/plex_ruby_sdk/models/operations/get_media_meta_data_metadata.rb create mode 100644 lib/plex_ruby_sdk/models/operations/get_media_meta_data_part.rb create mode 100644 lib/plex_ruby_sdk/models/operations/get_media_meta_data_request.rb rename lib/plex_ruby_sdk/models/operations/{get_meta_data_by_rating_key_response.rb => get_media_meta_data_response.rb} (73%) rename lib/plex_ruby_sdk/models/operations/{get_meta_data_by_rating_key_responsebody.rb => get_media_meta_data_responsebody.rb} (63%) create mode 100644 lib/plex_ruby_sdk/models/operations/get_media_meta_data_role.rb create mode 100644 lib/plex_ruby_sdk/models/operations/get_media_meta_data_stream.rb create mode 100644 lib/plex_ruby_sdk/models/operations/get_media_meta_data_ultrablurcolors.rb create mode 100644 lib/plex_ruby_sdk/models/operations/get_media_meta_data_unauthorized.rb create mode 100644 lib/plex_ruby_sdk/models/operations/get_media_meta_data_writer.rb delete mode 100644 lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_country.rb delete mode 100644 lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_director.rb delete mode 100644 lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_genre.rb delete mode 100644 lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_media.rb delete mode 100644 lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_mediacontainer.rb delete mode 100644 lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_metadata.rb delete mode 100644 lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_part.rb delete mode 100644 lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_request.rb delete mode 100644 lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_role.rb delete mode 100644 lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_stream.rb delete mode 100644 lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_writer.rb create mode 100644 lib/plex_ruby_sdk/models/operations/rating.rb delete mode 100644 lib/plex_ruby_sdk/models/operations/ratings.rb create mode 100644 lib/plex_ruby_sdk/models/operations/similar.rb diff --git a/.speakeasy/gen.lock b/.speakeasy/gen.lock index 5854d2c..263d2a6 100755 --- a/.speakeasy/gen.lock +++ b/.speakeasy/gen.lock @@ -1,12 +1,12 @@ lockVersion: 2.0.0 id: aa9449e7-c19d-411d-b8e2-f9c5fe982f6f management: - docChecksum: 7dec92ab9151a1b5a35df5faa81811ba + docChecksum: 5d44282cd3351c75bd6c9a894dbe1ec9 docVersion: 0.0.3 - speakeasyVersion: 1.487.0 + speakeasyVersion: 1.487.1 generationVersion: 2.506.0 - releaseVersion: 0.7.3 - configChecksum: a483b18d4304a34e95c72b6b2855944c + releaseVersion: 0.7.4 + configChecksum: 048a77c98ae4ad74338c5bf61cbf8368 repoURL: https://github.com/LukeHagar/plexruby.git repoSubDirectory: . installationURL: https://github.com/LukeHagar/plexruby @@ -125,6 +125,16 @@ generatedFiles: - docs/models/operations/friend.md - docs/models/operations/genre.md - docs/models/operations/geodata.md + - docs/models/operations/getactorslibrarybadrequest.md + - docs/models/operations/getactorslibrarydirectory.md + - docs/models/operations/getactorslibraryerrors.md + - docs/models/operations/getactorslibrarylibraryerrors.md + - docs/models/operations/getactorslibrarymediacontainer.md + - docs/models/operations/getactorslibraryqueryparamtype.md + - docs/models/operations/getactorslibraryrequest.md + - docs/models/operations/getactorslibraryresponse.md + - docs/models/operations/getactorslibraryresponsebody.md + - docs/models/operations/getactorslibraryunauthorized.md - docs/models/operations/getalllibrariesbadrequest.md - docs/models/operations/getalllibrariesdirectory.md - docs/models/operations/getalllibrarieserrors.md @@ -173,6 +183,7 @@ generatedFiles: - docs/models/operations/getcountrieslibraryerrors.md - docs/models/operations/getcountrieslibrarylibraryerrors.md - docs/models/operations/getcountrieslibrarymediacontainer.md + - docs/models/operations/getcountrieslibraryqueryparamtype.md - docs/models/operations/getcountrieslibraryrequest.md - docs/models/operations/getcountrieslibraryresponse.md - docs/models/operations/getcountrieslibraryresponsebody.md @@ -195,6 +206,7 @@ generatedFiles: - docs/models/operations/getgenreslibraryerrors.md - docs/models/operations/getgenreslibrarylibraryerrors.md - docs/models/operations/getgenreslibrarymediacontainer.md + - docs/models/operations/getgenreslibraryqueryparamtype.md - docs/models/operations/getgenreslibraryrequest.md - docs/models/operations/getgenreslibraryresponse.md - docs/models/operations/getgenreslibraryresponsebody.md @@ -302,6 +314,26 @@ generatedFiles: - docs/models/operations/getlibraryitemsultrablurcolors.md - docs/models/operations/getlibraryitemsunauthorized.md - docs/models/operations/getlibraryitemswriter.md + - docs/models/operations/getmediametadatabadrequest.md + - docs/models/operations/getmediametadatacountry.md + - docs/models/operations/getmediametadatadirector.md + - docs/models/operations/getmediametadataerrors.md + - docs/models/operations/getmediametadatagenre.md + - docs/models/operations/getmediametadataimage.md + - docs/models/operations/getmediametadatalibraryerrors.md + - docs/models/operations/getmediametadatalocation.md + - docs/models/operations/getmediametadatamedia.md + - docs/models/operations/getmediametadatamediacontainer.md + - docs/models/operations/getmediametadatametadata.md + - docs/models/operations/getmediametadatapart.md + - docs/models/operations/getmediametadatarequest.md + - docs/models/operations/getmediametadataresponse.md + - docs/models/operations/getmediametadataresponsebody.md + - docs/models/operations/getmediametadatarole.md + - docs/models/operations/getmediametadatastream.md + - docs/models/operations/getmediametadataultrablurcolors.md + - docs/models/operations/getmediametadataunauthorized.md + - docs/models/operations/getmediametadatawriter.md - docs/models/operations/getmediaprovidersbadrequest.md - docs/models/operations/getmediaprovidersdirectory.md - docs/models/operations/getmediaproviderserrors.md @@ -311,23 +343,6 @@ generatedFiles: - docs/models/operations/getmediaprovidersresponsebody.md - docs/models/operations/getmediaprovidersservererrors.md - docs/models/operations/getmediaprovidersunauthorized.md - - docs/models/operations/getmetadatabyratingkeybadrequest.md - - docs/models/operations/getmetadatabyratingkeycountry.md - - docs/models/operations/getmetadatabyratingkeydirector.md - - docs/models/operations/getmetadatabyratingkeyerrors.md - - docs/models/operations/getmetadatabyratingkeygenre.md - - docs/models/operations/getmetadatabyratingkeylibraryerrors.md - - docs/models/operations/getmetadatabyratingkeymedia.md - - docs/models/operations/getmetadatabyratingkeymediacontainer.md - - docs/models/operations/getmetadatabyratingkeymetadata.md - - docs/models/operations/getmetadatabyratingkeypart.md - - docs/models/operations/getmetadatabyratingkeyrequest.md - - docs/models/operations/getmetadatabyratingkeyresponse.md - - docs/models/operations/getmetadatabyratingkeyresponsebody.md - - docs/models/operations/getmetadatabyratingkeyrole.md - - docs/models/operations/getmetadatabyratingkeystream.md - - docs/models/operations/getmetadatabyratingkeyunauthorized.md - - docs/models/operations/getmetadatabyratingkeywriter.md - docs/models/operations/getmetadatachildrenbadrequest.md - docs/models/operations/getmetadatachildrendirectory.md - docs/models/operations/getmetadatachildrenerrors.md @@ -776,7 +791,7 @@ generatedFiles: - docs/models/operations/queryparamonlytransient.md - docs/models/operations/queryparamsmart.md - docs/models/operations/queryparamtype.md - - docs/models/operations/ratings.md + - docs/models/operations/rating.md - docs/models/operations/release.md - docs/models/operations/responsebody.md - docs/models/operations/restricted.md @@ -791,6 +806,7 @@ generatedFiles: - docs/models/operations/sharedservers.md - docs/models/operations/sharedsources.md - docs/models/operations/showordering.md + - docs/models/operations/similar.md - docs/models/operations/skip.md - docs/models/operations/smart.md - docs/models/operations/sort.md @@ -990,6 +1006,16 @@ generatedFiles: - lib/plex_ruby_sdk/models/operations/friend.rb - lib/plex_ruby_sdk/models/operations/genre.rb - lib/plex_ruby_sdk/models/operations/geodata.rb + - lib/plex_ruby_sdk/models/operations/get_actors_library_badrequest.rb + - lib/plex_ruby_sdk/models/operations/get_actors_library_directory.rb + - lib/plex_ruby_sdk/models/operations/get_actors_library_errors.rb + - lib/plex_ruby_sdk/models/operations/get_actors_library_library_errors.rb + - lib/plex_ruby_sdk/models/operations/get_actors_library_mediacontainer.rb + - lib/plex_ruby_sdk/models/operations/get_actors_library_queryparam_type.rb + - lib/plex_ruby_sdk/models/operations/get_actors_library_request.rb + - lib/plex_ruby_sdk/models/operations/get_actors_library_response.rb + - lib/plex_ruby_sdk/models/operations/get_actors_library_responsebody.rb + - lib/plex_ruby_sdk/models/operations/get_actors_library_unauthorized.rb - lib/plex_ruby_sdk/models/operations/get_all_libraries_badrequest.rb - lib/plex_ruby_sdk/models/operations/get_all_libraries_directory.rb - lib/plex_ruby_sdk/models/operations/get_all_libraries_errors.rb @@ -1010,6 +1036,7 @@ generatedFiles: - lib/plex_ruby_sdk/models/operations/get_countries_library_errors.rb - lib/plex_ruby_sdk/models/operations/get_countries_library_library_errors.rb - lib/plex_ruby_sdk/models/operations/get_countries_library_mediacontainer.rb + - lib/plex_ruby_sdk/models/operations/get_countries_library_queryparam_type.rb - lib/plex_ruby_sdk/models/operations/get_countries_library_request.rb - lib/plex_ruby_sdk/models/operations/get_countries_library_response.rb - lib/plex_ruby_sdk/models/operations/get_countries_library_responsebody.rb @@ -1019,6 +1046,7 @@ generatedFiles: - lib/plex_ruby_sdk/models/operations/get_genres_library_errors.rb - lib/plex_ruby_sdk/models/operations/get_genres_library_library_errors.rb - lib/plex_ruby_sdk/models/operations/get_genres_library_mediacontainer.rb + - lib/plex_ruby_sdk/models/operations/get_genres_library_queryparam_type.rb - lib/plex_ruby_sdk/models/operations/get_genres_library_request.rb - lib/plex_ruby_sdk/models/operations/get_genres_library_response.rb - lib/plex_ruby_sdk/models/operations/get_genres_library_responsebody.rb @@ -1088,6 +1116,26 @@ generatedFiles: - lib/plex_ruby_sdk/models/operations/get_library_items_ultrablurcolors.rb - lib/plex_ruby_sdk/models/operations/get_library_items_unauthorized.rb - lib/plex_ruby_sdk/models/operations/get_library_items_writer.rb + - lib/plex_ruby_sdk/models/operations/get_media_meta_data_badrequest.rb + - lib/plex_ruby_sdk/models/operations/get_media_meta_data_country.rb + - lib/plex_ruby_sdk/models/operations/get_media_meta_data_director.rb + - lib/plex_ruby_sdk/models/operations/get_media_meta_data_errors.rb + - lib/plex_ruby_sdk/models/operations/get_media_meta_data_genre.rb + - lib/plex_ruby_sdk/models/operations/get_media_meta_data_image.rb + - lib/plex_ruby_sdk/models/operations/get_media_meta_data_library_errors.rb + - lib/plex_ruby_sdk/models/operations/get_media_meta_data_location.rb + - lib/plex_ruby_sdk/models/operations/get_media_meta_data_media.rb + - lib/plex_ruby_sdk/models/operations/get_media_meta_data_mediacontainer.rb + - lib/plex_ruby_sdk/models/operations/get_media_meta_data_metadata.rb + - lib/plex_ruby_sdk/models/operations/get_media_meta_data_part.rb + - lib/plex_ruby_sdk/models/operations/get_media_meta_data_request.rb + - lib/plex_ruby_sdk/models/operations/get_media_meta_data_response.rb + - lib/plex_ruby_sdk/models/operations/get_media_meta_data_responsebody.rb + - lib/plex_ruby_sdk/models/operations/get_media_meta_data_role.rb + - lib/plex_ruby_sdk/models/operations/get_media_meta_data_stream.rb + - lib/plex_ruby_sdk/models/operations/get_media_meta_data_ultrablurcolors.rb + - lib/plex_ruby_sdk/models/operations/get_media_meta_data_unauthorized.rb + - lib/plex_ruby_sdk/models/operations/get_media_meta_data_writer.rb - lib/plex_ruby_sdk/models/operations/get_media_providers_badrequest.rb - lib/plex_ruby_sdk/models/operations/get_media_providers_directory.rb - lib/plex_ruby_sdk/models/operations/get_media_providers_errors.rb @@ -1097,23 +1145,6 @@ generatedFiles: - lib/plex_ruby_sdk/models/operations/get_media_providers_responsebody.rb - lib/plex_ruby_sdk/models/operations/get_media_providers_server_errors.rb - lib/plex_ruby_sdk/models/operations/get_media_providers_unauthorized.rb - - lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_badrequest.rb - - lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_country.rb - - lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_director.rb - - lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_errors.rb - - lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_genre.rb - - lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_library_errors.rb - - lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_media.rb - - lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_mediacontainer.rb - - lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_metadata.rb - - lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_part.rb - - lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_request.rb - - lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_response.rb - - lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_responsebody.rb - - lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_role.rb - - lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_stream.rb - - lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_unauthorized.rb - - lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_writer.rb - lib/plex_ruby_sdk/models/operations/get_recently_added_activedirection.rb - lib/plex_ruby_sdk/models/operations/get_recently_added_defaultdirection.rb - lib/plex_ruby_sdk/models/operations/get_recently_added_field.rb @@ -1641,7 +1672,7 @@ generatedFiles: - lib/plex_ruby_sdk/models/operations/queryparam_onlytransient.rb - lib/plex_ruby_sdk/models/operations/queryparam_smart.rb - lib/plex_ruby_sdk/models/operations/queryparam_type.rb - - lib/plex_ruby_sdk/models/operations/ratings.rb + - lib/plex_ruby_sdk/models/operations/rating.rb - lib/plex_ruby_sdk/models/operations/release.rb - lib/plex_ruby_sdk/models/operations/responsebody.rb - lib/plex_ruby_sdk/models/operations/restricted.rb @@ -1656,6 +1687,7 @@ generatedFiles: - lib/plex_ruby_sdk/models/operations/sharedservers.rb - lib/plex_ruby_sdk/models/operations/sharedsources.rb - lib/plex_ruby_sdk/models/operations/showordering.rb + - lib/plex_ruby_sdk/models/operations/similar.rb - lib/plex_ruby_sdk/models/operations/skip.rb - lib/plex_ruby_sdk/models/operations/smart.rb - lib/plex_ruby_sdk/models/operations/sort.rb @@ -2779,6 +2811,8 @@ examples: parameters: path: sectionKey: 9518 + query: + type: 2 responses: "200": application/json: {"MediaContainer": {"size": 50, "identifier": "com.plexapp.plugins.library", "allowSync": false, "art": "/:/resources/show-fanart.jpg", "content": "secondary", "mediaTagPrefix": "/system/bundle/media/flags/", "mediaTagVersion": 1734362201, "nocache": true, "thumb": "/:/resources/show.png", "title1": "TV Shows (Reality)", "title2": "By Genre", "viewGroup": "secondary", "Directory": [{"fastKey": "/library/sections/10/all?genre=89", "key": "89", "title": "Action", "type": "genre"}]}} @@ -2791,6 +2825,8 @@ examples: parameters: path: sectionKey: 9518 + query: + type: 2 responses: "200": application/json: {"MediaContainer": {"size": 50, "identifier": "com.plexapp.plugins.library", "allowSync": false, "art": "/:/resources/show-fanart.jpg", "content": "secondary", "mediaTagPrefix": "/system/bundle/media/flags/", "mediaTagVersion": 1734362201, "nocache": true, "thumb": "/:/resources/show.png", "title1": "TV Series", "title2": "By Country", "viewGroup": "secondary", "Directory": [{"fastKey": "/library/sections/2/all?country=15491", "key": "15491", "title": "Japan"}]}} @@ -2822,5 +2858,45 @@ examples: application/json: {"errors": [{"code": 1000, "message": "X-Plex-Client-Identifier is missing", "status": 400}, {"code": 1000, "message": "X-Plex-Client-Identifier is missing", "status": 400}]} "401": application/json: {"errors": [{"code": 1001, "message": "User could not be authenticated", "status": 401}, {"code": 1001, "message": "User could not be authenticated", "status": 401}]} + get-actors-library: + speakeasy-default-get-actors-library: + parameters: + path: + sectionKey: 9518 + query: + type: 2 + responses: + "200": + application/json: {"MediaContainer": {"size": 50, "allowSync": false, "art": "/:/resources/show-fanart.jpg", "identifier": "com.plexapp.plugins.library", "mediaTagPrefix": "/system/bundle/media/flags/", "mediaTagVersion": 1734362201, "nocache": true, "thumb": "/:/resources/show.png", "title1": "TV Series", "title2": "By Starring Actor", "viewGroup": "secondary", "viewMode": "131131", "Directory": [{"fastKey": "/library/sections/2/all?actor=134671", "thumb": "https://metadata-static.plex.tv/e/people/e2a915b537ef720252b6d408bc1f91b3.jpg", "key": "134671", "title": "Aaron Paul"}, {"fastKey": "/library/sections/2/all?actor=134671", "thumb": "https://metadata-static.plex.tv/e/people/e2a915b537ef720252b6d408bc1f91b3.jpg", "key": "134671", "title": "Aaron Paul"}]}} + "400": + application/json: {"errors": [{"code": 1000, "message": "X-Plex-Client-Identifier is missing", "status": 400}, {"code": 1000, "message": "X-Plex-Client-Identifier is missing", "status": 400}, {"code": 1000, "message": "X-Plex-Client-Identifier is missing", "status": 400}]} + "401": + application/json: {"errors": [{"code": 1001, "message": "User could not be authenticated", "status": 401}, {"code": 1001, "message": "User could not be authenticated", "status": 401}, {"code": 1001, "message": "User could not be authenticated", "status": 401}]} + get-media-meta-data: + speakeasy-default-get-media-meta-data: + parameters: + path: + ratingKey: 9518 + query: + includeConcerts: true + includeExtras: true + includeOnDeck: true + includePopularLeaves: true + includePreferences: true + includeReviews: true + includeChapters: true + includeStations: true + includeExternalMedia: true + asyncAugmentMetadata: true + asyncCheckFiles: true + asyncRefreshAnalysis: true + asyncRefreshLocalMediaAgent: true + responses: + "200": + application/json: {"MediaContainer": {"size": 50, "allowSync": false, "identifier": "com.plexapp.plugins.library", "librarySectionID": 2, "librarySectionTitle": "TV Series", "librarySectionUUID": "e69655a2-ef48-4aba-bb19-0cc34d1e7d36", "mediaTagPrefix": "/system/bundle/media/flags/", "mediaTagVersion": 1734362201, "Metadata": [{"ratingKey": "44288", "parentRatingKey": "48047", "grandparentRatingKey": "45520", "parentGuid": "plex://season/618b89208dde18df707ad15c", "grandparentGuid": "plex://show/5e16253691c20300412003a8", "grandparentSlug": "alice-in-borderland-2020", "grandparentKey": "/library/metadata/45520", "parentKey": "/library/metadata/48047", "key": "/library/metadata/44288/children", "guid": "plex://show/5d9c08254eefaa001f5d6dcb", "slug": "better-call-saul", "studio": "Sony Pictures Television", "type": "show", "title": "Better Call Saul", "originalTitle": "Wicked: Part I", "librarySectionTitle": "TV Series ", "librarySectionID": 2, "librarySectionKey": "/library/sections/2", "contentRating": "TV-MA", "summary": "Before Saul Goodman, he was Jimmy McGill. And if you're calling Jimmy, you're in real trouble. The prequel to \"Breaking Bad\" follows small-time attorney, Jimmy McGill, as he transforms into Walter White's morally challenged lawyer, Saul Goodman.", "index": 1, "grandparentTitle": "Alice in Borderland", "parentTitle": "Season 2", "audienceRating": 8.7, "viewCount": 4, "skipCount": 1, "lastViewedAt": 1625764795, "year": 2015, "tagline": "Make the call", "chapterSource": "media", "primaryExtraKey": "/library/metadata/134704", "thumb": "/library/metadata/44288/thumb/1736487993", "art": "/library/metadata/44288/art/1736487993", "theme": "/library/metadata/44288/theme/1736487993", "duration": 2700000, "originallyAvailableAt": "2015-02-08", "leafCount": 63, "viewedLeafCount": 4, "childCount": 6, "addedAt": 1625505101, "updatedAt": 1736487993, "audienceRatingImage": "themoviedb://image.rating", "parentIndex": 2, "parentThumb": "/library/metadata/48047/thumb/1671800243", "grandparentThumb": "/library/metadata/45520/thumb/1736488003", "grandparentArt": "/library/metadata/45520/art/1736488003", "Media": [{"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "container": "mkv", "videoProfile": "main 10", "Stream": [{"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}, {"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "container": "mkv", "videoProfile": "main 10", "Stream": []}, {"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "container": "mkv", "videoProfile": "main 10", "Stream": [{"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}, {"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "container": "mkv", "videoProfile": "main 10", "Stream": [{"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}, {"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "Part": []}], "Image": [{"alt": "Better Call Saul", "type": "coverPoster", "url": "/library/metadata/44288/thumb/1736487993"}, {"alt": "Better Call Saul", "type": "coverPoster", "url": "/library/metadata/44288/thumb/1736487993"}], "UltraBlurColors": {"topLeft": "11333a", "topRight": "1d2721", "bottomRight": "5c451d", "bottomLeft": "372c10"}, "Genre": [{"id": 1057, "filter": "genre=1057", "tag": "Crime"}], "Country": [{"id": 58591, "filter": "country=58591", "tag": "United States of America"}, {"id": 58591, "filter": "country=58591", "tag": "United States of America"}], "Guid": [{"id": "imdb://tt3032476"}], "Rating": [{"image": "imdb://image.rating", "value": 9, "type": "audience"}], "Role": [{"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}], "Director": [{"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}], "Writer": [{"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}], "Producer": [{"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}], "Similar": [{"id": 26, "filter": "similar=26", "tag": "Breaking Bad"}, {"id": 26, "filter": "similar=26", "tag": "Breaking Bad"}, {"id": 26, "filter": "similar=26", "tag": "Breaking Bad"}], "Location": [{"path": "/TV Shows/Better Call Saul"}]}, {"ratingKey": "44288", "parentRatingKey": "48047", "grandparentRatingKey": "45520", "parentGuid": "plex://season/618b89208dde18df707ad15c", "grandparentGuid": "plex://show/5e16253691c20300412003a8", "grandparentSlug": "alice-in-borderland-2020", "grandparentKey": "/library/metadata/45520", "parentKey": "/library/metadata/48047", "key": "/library/metadata/44288/children", "guid": "plex://show/5d9c08254eefaa001f5d6dcb", "slug": "better-call-saul", "studio": "Sony Pictures Television", "type": "show", "title": "Better Call Saul", "originalTitle": "Wicked: Part I", "librarySectionTitle": "TV Series ", "librarySectionID": 2, "librarySectionKey": "/library/sections/2", "contentRating": "TV-MA", "summary": "Before Saul Goodman, he was Jimmy McGill. And if you're calling Jimmy, you're in real trouble. The prequel to \"Breaking Bad\" follows small-time attorney, Jimmy McGill, as he transforms into Walter White's morally challenged lawyer, Saul Goodman.", "index": 1, "grandparentTitle": "Alice in Borderland", "parentTitle": "Season 2", "audienceRating": 8.7, "viewCount": 4, "skipCount": 1, "lastViewedAt": 1625764795, "year": 2015, "tagline": "Make the call", "chapterSource": "media", "primaryExtraKey": "/library/metadata/134704", "thumb": "/library/metadata/44288/thumb/1736487993", "art": "/library/metadata/44288/art/1736487993", "theme": "/library/metadata/44288/theme/1736487993", "duration": 2700000, "originallyAvailableAt": "2015-02-08", "leafCount": 63, "viewedLeafCount": 4, "childCount": 6, "addedAt": 1625505101, "updatedAt": 1736487993, "audienceRatingImage": "themoviedb://image.rating", "parentIndex": 2, "parentThumb": "/library/metadata/48047/thumb/1671800243", "grandparentThumb": "/library/metadata/45520/thumb/1736488003", "grandparentArt": "/library/metadata/45520/art/1736488003", "Media": [{"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "container": "mkv", "videoProfile": "main 10", "Stream": [{"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}, {"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "Part": []}], "Image": [], "UltraBlurColors": {"topLeft": "11333a", "topRight": "1d2721", "bottomRight": "5c451d", "bottomLeft": "372c10"}, "Genre": [{"id": 1057, "filter": "genre=1057", "tag": "Crime"}], "Country": [{"id": 58591, "filter": "country=58591", "tag": "United States of America"}, {"id": 58591, "filter": "country=58591", "tag": "United States of America"}], "Guid": [{"id": "imdb://tt3032476"}, {"id": "imdb://tt3032476"}], "Rating": [], "Role": [{"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}], "Director": [{"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}], "Writer": [{"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}], "Producer": [{"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}], "Similar": [{"id": 26, "filter": "similar=26", "tag": "Breaking Bad"}, {"id": 26, "filter": "similar=26", "tag": "Breaking Bad"}], "Location": [{"path": "/TV Shows/Better Call Saul"}, {"path": "/TV Shows/Better Call Saul"}]}, {"ratingKey": "44288", "parentRatingKey": "48047", "grandparentRatingKey": "45520", "parentGuid": "plex://season/618b89208dde18df707ad15c", "grandparentGuid": "plex://show/5e16253691c20300412003a8", "grandparentSlug": "alice-in-borderland-2020", "grandparentKey": "/library/metadata/45520", "parentKey": "/library/metadata/48047", "key": "/library/metadata/44288/children", "guid": "plex://show/5d9c08254eefaa001f5d6dcb", "slug": "better-call-saul", "studio": "Sony Pictures Television", "type": "show", "title": "Better Call Saul", "originalTitle": "Wicked: Part I", "librarySectionTitle": "TV Series ", "librarySectionID": 2, "librarySectionKey": "/library/sections/2", "contentRating": "TV-MA", "summary": "Before Saul Goodman, he was Jimmy McGill. And if you're calling Jimmy, you're in real trouble. The prequel to \"Breaking Bad\" follows small-time attorney, Jimmy McGill, as he transforms into Walter White's morally challenged lawyer, Saul Goodman.", "index": 1, "grandparentTitle": "Alice in Borderland", "parentTitle": "Season 2", "audienceRating": 8.7, "viewCount": 4, "skipCount": 1, "lastViewedAt": 1625764795, "year": 2015, "tagline": "Make the call", "chapterSource": "media", "primaryExtraKey": "/library/metadata/134704", "thumb": "/library/metadata/44288/thumb/1736487993", "art": "/library/metadata/44288/art/1736487993", "theme": "/library/metadata/44288/theme/1736487993", "duration": 2700000, "originallyAvailableAt": "2015-02-08", "leafCount": 63, "viewedLeafCount": 4, "childCount": 6, "addedAt": 1625505101, "updatedAt": 1736487993, "audienceRatingImage": "themoviedb://image.rating", "parentIndex": 2, "parentThumb": "/library/metadata/48047/thumb/1671800243", "grandparentThumb": "/library/metadata/45520/thumb/1736488003", "grandparentArt": "/library/metadata/45520/art/1736488003", "Media": [{"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "container": "mkv", "videoProfile": "main 10", "Stream": []}, {"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "container": "mkv", "videoProfile": "main 10", "Stream": [{"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}, {"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "container": "mkv", "videoProfile": "main 10", "Stream": [{"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}, {"id": 387322, "duration": 9610350, "bitrate": 25512, "width": 3840, "height": 1602, "aspectRatio": 2.35, "audioChannels": 6, "audioCodec": "eac3", "videoCodec": "hevc", "videoResolution": "4k", "container": "mkv", "videoFrameRate": "24p", "videoProfile": "main 10", "hasVoiceActivity": false, "Part": [{"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "container": "mkv", "videoProfile": "main 10", "Stream": [{"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}, {"accessible": true, "exists": true, "id": 418385, "key": "/library/parts/418385/1735864239/file.mkv", "indexes": "sd", "duration": 9610350, "file": "/mnt/Movies_1/W/Wicked (2024).mkv", "size": 30649952104, "container": "mkv", "videoProfile": "main 10", "Stream": [{"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}, {"id": 1002625, "streamType": 1, "default": true, "codec": "hevc", "index": 0, "bitrate": 24743, "language": "English", "languageTag": "en", "languageCode": "eng", "DOVIBLCompatID": 1, "DOVIBLPresent": true, "DOVIELPresent": false, "DOVILevel": 6, "DOVIPresent": true, "DOVIProfile": 8, "DOVIRPUPresent": true, "DOVIVersion": "1.0", "bitDepth": 10, "chromaLocation": "topleft", "chromaSubsampling": "4:2:0", "codedHeight": 1608, "codedWidth": 3840, "colorPrimaries": "bt2020", "colorRange": "tv", "colorSpace": "bt2020nc", "colorTrc": "smpte2084", "frameRate": 23.976, "height": 1602, "level": 150, "original": true, "hasScalingMatrix": false, "profile": "main 10", "scanType": "progressive", "refFrames": 1, "width": 3840, "displayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "extendedDisplayTitle": "4K DoVi/HDR10 (HEVC Main 10)", "selected": true, "forced": true, "channels": 6, "audioChannelLayout": "5.1(side)", "samplingRate": 48000, "canAutoSync": false, "hearingImpaired": true, "dub": true, "title": "SDH"}]}]}], "Image": [{"alt": "Better Call Saul", "type": "coverPoster", "url": "/library/metadata/44288/thumb/1736487993"}], "UltraBlurColors": {"topLeft": "11333a", "topRight": "1d2721", "bottomRight": "5c451d", "bottomLeft": "372c10"}, "Genre": [{"id": 1057, "filter": "genre=1057", "tag": "Crime"}], "Country": [{"id": 58591, "filter": "country=58591", "tag": "United States of America"}, {"id": 58591, "filter": "country=58591", "tag": "United States of America"}], "Guid": [], "Rating": [{"image": "imdb://image.rating", "value": 9, "type": "audience"}, {"image": "imdb://image.rating", "value": 9, "type": "audience"}], "Role": [{"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}], "Director": [{"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}], "Writer": [{"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}], "Producer": [{"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}, {"id": 109501, "filter": "actor=109501", "tag": "Bob Odenkirk", "tagKey": "5d77683254f42c001f8c3f69", "role": "Jimmy McGill", "thumb": "https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg"}], "Similar": [{"id": 26, "filter": "similar=26", "tag": "Breaking Bad"}, {"id": 26, "filter": "similar=26", "tag": "Breaking Bad"}], "Location": [{"path": "/TV Shows/Better Call Saul"}]}]}} + "400": + application/json: {"errors": [{"code": 1000, "message": "X-Plex-Client-Identifier is missing", "status": 400}, {"code": 1000, "message": "X-Plex-Client-Identifier is missing", "status": 400}]} + "401": + application/json: {"errors": [{"code": 1001, "message": "User could not be authenticated", "status": 401}, {"code": 1001, "message": "User could not be authenticated", "status": 401}]} examplesVersion: 1.0.0 generatedTests: {} diff --git a/.speakeasy/gen.yaml b/.speakeasy/gen.yaml index 51a132b..f8f5719 100644 --- a/.speakeasy/gen.yaml +++ b/.speakeasy/gen.yaml @@ -13,7 +13,7 @@ generation: oAuth2ClientCredentialsEnabled: false oAuth2PasswordEnabled: false ruby: - version: 0.7.3 + version: 0.7.4 author: LukeHagar description: Ruby Client SDK Generated by Speakeasy imports: diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock index bc53995..d892821 100644 --- a/.speakeasy/workflow.lock +++ b/.speakeasy/workflow.lock @@ -1,4 +1,4 @@ -speakeasyVersion: 1.487.0 +speakeasyVersion: 1.487.1 sources: my-source: sourceNamespace: my-source @@ -9,19 +9,19 @@ sources: - main plexapi: sourceNamespace: plexapi - sourceRevisionDigest: sha256:e6ab335dd91a4165f4510e4a3af8a55819c6310b7e66251266d2384376f3ccae - sourceBlobDigest: sha256:89d1b1133e400c89f0d06efe5e5168f5ba25a413e1ab8380d442d6b233e2e5a9 + sourceRevisionDigest: sha256:49536684a97842ea7c069f909012b31a22a046d8277aee47b50a334494bf2c64 + sourceBlobDigest: sha256:eac671ea32ce31e1e558839153f7effef39bb35b4e461c6e95661d0eaf4ce1c8 tags: - latest - - speakeasy-sdk-regen-1738886888 + - speakeasy-sdk-regen-1738973265 targets: plexruby: source: plexapi sourceNamespace: plexapi - sourceRevisionDigest: sha256:e6ab335dd91a4165f4510e4a3af8a55819c6310b7e66251266d2384376f3ccae - sourceBlobDigest: sha256:89d1b1133e400c89f0d06efe5e5168f5ba25a413e1ab8380d442d6b233e2e5a9 + sourceRevisionDigest: sha256:49536684a97842ea7c069f909012b31a22a046d8277aee47b50a334494bf2c64 + sourceBlobDigest: sha256:eac671ea32ce31e1e558839153f7effef39bb35b4e461c6e95661d0eaf4ce1c8 codeSamplesNamespace: code-samples-ruby-plexruby - codeSamplesRevisionDigest: sha256:d208b8865c0f8cf051965436cf2d8c2215b12e221e9f425a7862e3ceb846fb96 + codeSamplesRevisionDigest: sha256:eac592b001aa961d7be4bd82b03336ae654e260261abc5548faf1b199b6eea16 workflow: workflowVersion: 1.0.0 speakeasyVersion: latest diff --git a/Gemfile.lock b/Gemfile.lock index e9a1aeb..11f7e1e 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,7 +1,7 @@ PATH remote: . specs: - plex_ruby_sdk (0.7.3) + plex_ruby_sdk (0.7.4) faraday faraday-multipart rack diff --git a/README.md b/README.md index 5512027..2ed362c 100644 --- a/README.md +++ b/README.md @@ -135,8 +135,9 @@ end * [get_search_library](docs/sdks/library/README.md#get_search_library) - Search Library * [get_genres_library](docs/sdks/library/README.md#get_genres_library) - Get Genres of library media * [get_countries_library](docs/sdks/library/README.md#get_countries_library) - Get Countries of library media +* [get_actors_library](docs/sdks/library/README.md#get_actors_library) - Get Actors of library media * [get_search_all_libraries](docs/sdks/library/README.md#get_search_all_libraries) - Search All Libraries -* [get_meta_data_by_rating_key](docs/sdks/library/README.md#get_meta_data_by_rating_key) - Get Metadata by RatingKey +* [get_media_meta_data](docs/sdks/library/README.md#get_media_meta_data) - Get Media Metadata * [get_metadata_children](docs/sdks/library/README.md#get_metadata_children) - Get Items Children * [get_top_watched_content](docs/sdks/library/README.md#get_top_watched_content) - Get Top Watched Content * [get_on_deck](docs/sdks/library/README.md#get_on_deck) - Get On Deck diff --git a/RELEASES.md b/RELEASES.md index 29c31c3..8e4bb10 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -706,4 +706,14 @@ Based on: ### Generated - [ruby v0.7.3] . ### Releases -- [Ruby Gems v0.7.3] https://rubygems.org/gems/plex_ruby_sdk/versions/0.7.3 - . \ No newline at end of file +- [Ruby Gems v0.7.3] https://rubygems.org/gems/plex_ruby_sdk/versions/0.7.3 - . + +## 2025-02-08 00:07:29 +### Changes +Based on: +- OpenAPI Doc +- Speakeasy CLI 1.487.1 (2.506.0) https://github.com/speakeasy-api/speakeasy +### Generated +- [ruby v0.7.4] . +### Releases +- [Ruby Gems v0.7.4] https://rubygems.org/gems/plex_ruby_sdk/versions/0.7.4 - . \ No newline at end of file diff --git a/codeSamples.yaml b/codeSamples.yaml index 2f781e7..36491c7 100644 --- a/codeSamples.yaml +++ b/codeSamples.yaml @@ -169,8 +169,8 @@ actions: update: x-codeSamples: - lang: ruby - label: key - source: "require 'plex_ruby_sdk'\n\n\ns = ::PlexRubySDK::PlexAPI.new\ns.config_security(\n ::PlexRubySDK::Shared::Security.new(\n access_token: \"\",\n )\n)\n\n \nres = s.library.get_meta_data_by_rating_key(rating_key=9518)\n\nif ! res.object.nil?\n # handle response\nend" + label: data + source: "require 'plex_ruby_sdk'\n\n\ns = ::PlexRubySDK::PlexAPI.new\ns.config_security(\n ::PlexRubySDK::Shared::Security.new(\n access_token: \"\",\n )\n)\n\n\nreq = ::PlexRubySDK::Operations::GetMediaMetaDataRequest.new(\n rating_key: 9518,\n include_concerts: true,\n include_extras: true,\n include_on_deck: true,\n include_popular_leaves: true,\n include_preferences: true,\n include_reviews: true,\n include_chapters: true,\n include_stations: true,\n include_external_media: true,\n async_augment_metadata: true,\n async_check_files: true,\n async_refresh_analysis: true,\n async_refresh_local_media_agent: true,\n)\n \nres = s.library.get_media_meta_data(req)\n\nif ! res.object.nil?\n # handle response\nend" - target: $["paths"]["/library/metadata/{ratingKey}/banner"]["get"] update: x-codeSamples: @@ -231,18 +231,24 @@ actions: - lang: ruby label: details source: "require 'plex_ruby_sdk'\n\n\ns = ::PlexRubySDK::PlexAPI.new\ns.config_security(\n ::PlexRubySDK::Shared::Security.new(\n access_token: \"\",\n )\n)\n\n \nres = s.library.get_library_details(section_key=9518, include_details=::PlexRubySDK::Operations::IncludeDetails::ZERO)\n\nif ! res.object.nil?\n # handle response\nend" + - target: $["paths"]["/library/sections/{sectionKey}/actor"]["get"] + update: + x-codeSamples: + - lang: ruby + label: library + source: "require 'plex_ruby_sdk'\n\n\ns = ::PlexRubySDK::PlexAPI.new\ns.config_security(\n ::PlexRubySDK::Shared::Security.new(\n access_token: \"\",\n )\n)\n\n \nres = s.library.get_actors_library(section_key=9518, type=::PlexRubySDK::Operations::GetActorsLibraryQueryParamType::TV_SHOW)\n\nif ! res.object.nil?\n # handle response\nend" - target: $["paths"]["/library/sections/{sectionKey}/country"]["get"] update: x-codeSamples: - lang: ruby label: library - source: "require 'plex_ruby_sdk'\n\n\ns = ::PlexRubySDK::PlexAPI.new\ns.config_security(\n ::PlexRubySDK::Shared::Security.new(\n access_token: \"\",\n )\n)\n\n \nres = s.library.get_countries_library(section_key=9518)\n\nif ! res.object.nil?\n # handle response\nend" + source: "require 'plex_ruby_sdk'\n\n\ns = ::PlexRubySDK::PlexAPI.new\ns.config_security(\n ::PlexRubySDK::Shared::Security.new(\n access_token: \"\",\n )\n)\n\n \nres = s.library.get_countries_library(section_key=9518, type=::PlexRubySDK::Operations::GetCountriesLibraryQueryParamType::TV_SHOW)\n\nif ! res.object.nil?\n # handle response\nend" - target: $["paths"]["/library/sections/{sectionKey}/genre"]["get"] update: x-codeSamples: - lang: ruby label: library - source: "require 'plex_ruby_sdk'\n\n\ns = ::PlexRubySDK::PlexAPI.new\ns.config_security(\n ::PlexRubySDK::Shared::Security.new(\n access_token: \"\",\n )\n)\n\n \nres = s.library.get_genres_library(section_key=9518)\n\nif ! res.object.nil?\n # handle response\nend" + source: "require 'plex_ruby_sdk'\n\n\ns = ::PlexRubySDK::PlexAPI.new\ns.config_security(\n ::PlexRubySDK::Shared::Security.new(\n access_token: \"\",\n )\n)\n\n \nres = s.library.get_genres_library(section_key=9518, type=::PlexRubySDK::Operations::GetGenresLibraryQueryParamType::TV_SHOW)\n\nif ! res.object.nil?\n # handle response\nend" - target: $["paths"]["/library/sections/{sectionKey}/refresh"]["get"] update: x-codeSamples: diff --git a/docs/models/operations/getactorslibrarybadrequest.md b/docs/models/operations/getactorslibrarybadrequest.md new file mode 100644 index 0000000..c08607b --- /dev/null +++ b/docs/models/operations/getactorslibrarybadrequest.md @@ -0,0 +1,10 @@ +# GetActorsLibraryBadRequest + +Bad Request - A parameter was not specified, or was specified incorrectly. + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | +| `errors` | T::Array<[::PlexRubySDK::Operations::GetActorsLibraryErrors](../../models/operations/getactorslibraryerrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/operations/getactorslibrarydirectory.md b/docs/models/operations/getactorslibrarydirectory.md new file mode 100644 index 0000000..b2dbb54 --- /dev/null +++ b/docs/models/operations/getactorslibrarydirectory.md @@ -0,0 +1,11 @@ +# GetActorsLibraryDirectory + + +## Fields + +| Field | Type | Required | Description | Example | +| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | +| `fast_key` | *::String* | :heavy_check_mark: | A fast lookup key for the actor relative url. | /library/sections/2/all?actor=134671 | +| `thumb` | *::String* | :heavy_check_mark: | URL for the thumbnail image of the actor. | https://metadata-static.plex.tv/e/people/e2a915b537ef720252b6d408bc1f91b3.jpg | +| `key` | *::String* | :heavy_check_mark: | A unique key representing the actor. | 134671 | +| `title` | *::String* | :heavy_check_mark: | The name of the actor. | Aaron Paul | \ No newline at end of file diff --git a/docs/models/operations/getmetadatabyratingkeyerrors.md b/docs/models/operations/getactorslibraryerrors.md similarity index 96% rename from docs/models/operations/getmetadatabyratingkeyerrors.md rename to docs/models/operations/getactorslibraryerrors.md index 5ace80b..78d6bb6 100644 --- a/docs/models/operations/getmetadatabyratingkeyerrors.md +++ b/docs/models/operations/getactorslibraryerrors.md @@ -1,4 +1,4 @@ -# GetMetaDataByRatingKeyErrors +# GetActorsLibraryErrors ## Fields diff --git a/docs/models/operations/getmetadatabyratingkeylibraryerrors.md b/docs/models/operations/getactorslibrarylibraryerrors.md similarity index 95% rename from docs/models/operations/getmetadatabyratingkeylibraryerrors.md rename to docs/models/operations/getactorslibrarylibraryerrors.md index c16a303..ef3631a 100644 --- a/docs/models/operations/getmetadatabyratingkeylibraryerrors.md +++ b/docs/models/operations/getactorslibrarylibraryerrors.md @@ -1,4 +1,4 @@ -# GetMetaDataByRatingKeyLibraryErrors +# GetActorsLibraryLibraryErrors ## Fields diff --git a/docs/models/operations/getactorslibrarymediacontainer.md b/docs/models/operations/getactorslibrarymediacontainer.md new file mode 100644 index 0000000..41d1f10 --- /dev/null +++ b/docs/models/operations/getactorslibrarymediacontainer.md @@ -0,0 +1,20 @@ +# GetActorsLibraryMediaContainer + + +## Fields + +| Field | Type | Required | Description | Example | +| ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | +| `size` | *::Float* | :heavy_check_mark: | N/A | 50 | +| `allow_sync` | *T::Boolean* | :heavy_check_mark: | Indicates whether syncing is allowed. | false | +| `art` | *::String* | :heavy_check_mark: | URL for the background artwork of the media container. | /:/resources/show-fanart.jpg | +| `identifier` | *::String* | :heavy_check_mark: | An plugin identifier for the media container. | com.plexapp.plugins.library | +| `media_tag_prefix` | *::String* | :heavy_check_mark: | The prefix used for media tag resource paths. | /system/bundle/media/flags/ | +| `media_tag_version` | *::Integer* | :heavy_check_mark: | The version number for media tags. | 1734362201 | +| `nocache` | *T::Boolean* | :heavy_check_mark: | Specifies whether caching is disabled. | true | +| `thumb` | *::String* | :heavy_check_mark: | URL for the thumbnail image of the media container. | /:/resources/show.png | +| `title1` | *::String* | :heavy_check_mark: | The primary title of the media container. | TV Series | +| `title2` | *::String* | :heavy_check_mark: | The secondary title of the media container. | By Starring Actor | +| `view_group` | *::String* | :heavy_check_mark: | Identifier for the view group layout. | secondary | +| `view_mode` | *::String* | :heavy_check_mark: | Identifier for the view mode. | 131131 | +| `directory` | T::Array<[::PlexRubySDK::Operations::GetActorsLibraryDirectory](../../models/operations/getactorslibrarydirectory.md)> | :heavy_minus_sign: | An array of actor entries for media items. | | \ No newline at end of file diff --git a/docs/models/operations/getactorslibraryqueryparamtype.md b/docs/models/operations/getactorslibraryqueryparamtype.md new file mode 100644 index 0000000..c0c209a --- /dev/null +++ b/docs/models/operations/getactorslibraryqueryparamtype.md @@ -0,0 +1,22 @@ +# GetActorsLibraryQueryParamType + +The type of media to retrieve or filter by. +1 = movie +2 = show +3 = season +4 = episode +E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries + + + +## Values + +| Name | Value | +| --------- | --------- | +| `MOVIE` | 1 | +| `TV_SHOW` | 2 | +| `SEASON` | 3 | +| `EPISODE` | 4 | +| `AUDIO` | 8 | +| `ALBUM` | 9 | +| `TRACK` | 10 | \ No newline at end of file diff --git a/docs/models/operations/getactorslibraryrequest.md b/docs/models/operations/getactorslibraryrequest.md new file mode 100644 index 0000000..1b58c80 --- /dev/null +++ b/docs/models/operations/getactorslibraryrequest.md @@ -0,0 +1,9 @@ +# GetActorsLibraryRequest + + +## Fields + +| Field | Type | Required | Description | Example | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `section_key` | *::Integer* | :heavy_check_mark: | The unique key of the Plex library.
Note: This is unique in the context of the Plex server.
| 9518 | +| `type` | [::PlexRubySDK::Operations::GetActorsLibraryQueryParamType](../../models/operations/getactorslibraryqueryparamtype.md) | :heavy_check_mark: | The type of media to retrieve or filter by.
1 = movie
2 = show
3 = season
4 = episode
E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
| 2 | \ No newline at end of file diff --git a/docs/models/operations/getactorslibraryresponse.md b/docs/models/operations/getactorslibraryresponse.md new file mode 100644 index 0000000..f8f61c8 --- /dev/null +++ b/docs/models/operations/getactorslibraryresponse.md @@ -0,0 +1,13 @@ +# GetActorsLibraryResponse + + +## Fields + +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | +| `content_type` | *::String* | :heavy_check_mark: | HTTP response content type for this operation | +| `status_code` | *::Integer* | :heavy_check_mark: | HTTP response status code for this operation | +| `raw_response` | [Faraday::Response](https://www.rubydoc.info/gems/faraday/Faraday/Response) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `object` | [T.nilable(::PlexRubySDK::Operations::GetActorsLibraryResponseBody)](../../models/operations/getactorslibraryresponsebody.md) | :heavy_minus_sign: | Successful response containing media container data. | +| `bad_request` | [T.nilable(::PlexRubySDK::Operations::GetActorsLibraryBadRequest)](../../models/operations/getactorslibrarybadrequest.md) | :heavy_minus_sign: | Bad Request - A parameter was not specified, or was specified incorrectly. | +| `unauthorized` | [T.nilable(::PlexRubySDK::Operations::GetActorsLibraryUnauthorized)](../../models/operations/getactorslibraryunauthorized.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file diff --git a/docs/models/operations/getactorslibraryresponsebody.md b/docs/models/operations/getactorslibraryresponsebody.md new file mode 100644 index 0000000..b6c8d57 --- /dev/null +++ b/docs/models/operations/getactorslibraryresponsebody.md @@ -0,0 +1,10 @@ +# GetActorsLibraryResponseBody + +Successful response containing media container data. + + +## Fields + +| Field | Type | Required | Description | +| --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | +| `media_container` | [T.nilable(::PlexRubySDK::Operations::GetActorsLibraryMediaContainer)](../../models/operations/getactorslibrarymediacontainer.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/operations/getmetadatabyratingkeyunauthorized.md b/docs/models/operations/getactorslibraryunauthorized.md similarity index 54% rename from docs/models/operations/getmetadatabyratingkeyunauthorized.md rename to docs/models/operations/getactorslibraryunauthorized.md index 69fe28a..e8f47cb 100644 --- a/docs/models/operations/getmetadatabyratingkeyunauthorized.md +++ b/docs/models/operations/getactorslibraryunauthorized.md @@ -1,10 +1,10 @@ -# GetMetaDataByRatingKeyUnauthorized +# GetActorsLibraryUnauthorized Unauthorized - Returned if the X-Plex-Token is missing from the header or query. ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | -| `errors` | T::Array<[::PlexRubySDK::Operations::GetMetaDataByRatingKeyLibraryErrors](../../models/operations/getmetadatabyratingkeylibraryerrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | +| `errors` | T::Array<[::PlexRubySDK::Operations::GetActorsLibraryLibraryErrors](../../models/operations/getactorslibrarylibraryerrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/operations/getcountrieslibraryqueryparamtype.md b/docs/models/operations/getcountrieslibraryqueryparamtype.md new file mode 100644 index 0000000..01d493f --- /dev/null +++ b/docs/models/operations/getcountrieslibraryqueryparamtype.md @@ -0,0 +1,22 @@ +# GetCountriesLibraryQueryParamType + +The type of media to retrieve or filter by. +1 = movie +2 = show +3 = season +4 = episode +E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries + + + +## Values + +| Name | Value | +| --------- | --------- | +| `MOVIE` | 1 | +| `TV_SHOW` | 2 | +| `SEASON` | 3 | +| `EPISODE` | 4 | +| `AUDIO` | 8 | +| `ALBUM` | 9 | +| `TRACK` | 10 | \ No newline at end of file diff --git a/docs/models/operations/getcountrieslibraryrequest.md b/docs/models/operations/getcountrieslibraryrequest.md index fcd921e..32bb060 100644 --- a/docs/models/operations/getcountrieslibraryrequest.md +++ b/docs/models/operations/getcountrieslibraryrequest.md @@ -3,6 +3,7 @@ ## Fields -| Field | Type | Required | Description | Example | -| --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | -| `section_key` | *::Integer* | :heavy_check_mark: | The unique key of the Plex library.
Note: This is unique in the context of the Plex server.
| 9518 | \ No newline at end of file +| Field | Type | Required | Description | Example | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `section_key` | *::Integer* | :heavy_check_mark: | The unique key of the Plex library.
Note: This is unique in the context of the Plex server.
| 9518 | +| `type` | [::PlexRubySDK::Operations::GetCountriesLibraryQueryParamType](../../models/operations/getcountrieslibraryqueryparamtype.md) | :heavy_check_mark: | The type of media to retrieve or filter by.
1 = movie
2 = show
3 = season
4 = episode
E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
| 2 | \ No newline at end of file diff --git a/docs/models/operations/getgenreslibraryqueryparamtype.md b/docs/models/operations/getgenreslibraryqueryparamtype.md new file mode 100644 index 0000000..d77360e --- /dev/null +++ b/docs/models/operations/getgenreslibraryqueryparamtype.md @@ -0,0 +1,22 @@ +# GetGenresLibraryQueryParamType + +The type of media to retrieve or filter by. +1 = movie +2 = show +3 = season +4 = episode +E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries + + + +## Values + +| Name | Value | +| --------- | --------- | +| `MOVIE` | 1 | +| `TV_SHOW` | 2 | +| `SEASON` | 3 | +| `EPISODE` | 4 | +| `AUDIO` | 8 | +| `ALBUM` | 9 | +| `TRACK` | 10 | \ No newline at end of file diff --git a/docs/models/operations/getgenreslibraryrequest.md b/docs/models/operations/getgenreslibraryrequest.md index 0447a89..622bae4 100644 --- a/docs/models/operations/getgenreslibraryrequest.md +++ b/docs/models/operations/getgenreslibraryrequest.md @@ -3,6 +3,7 @@ ## Fields -| Field | Type | Required | Description | Example | -| --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | -| `section_key` | *::Integer* | :heavy_check_mark: | The unique key of the Plex library.
Note: This is unique in the context of the Plex server.
| 9518 | \ No newline at end of file +| Field | Type | Required | Description | Example | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `section_key` | *::Integer* | :heavy_check_mark: | The unique key of the Plex library.
Note: This is unique in the context of the Plex server.
| 9518 | +| `type` | [::PlexRubySDK::Operations::GetGenresLibraryQueryParamType](../../models/operations/getgenreslibraryqueryparamtype.md) | :heavy_check_mark: | The type of media to retrieve or filter by.
1 = movie
2 = show
3 = season
4 = episode
E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
| 2 | \ No newline at end of file diff --git a/docs/models/operations/getlibraryitemsqueryparamtype.md b/docs/models/operations/getlibraryitemsqueryparamtype.md index 3e72612..294dc8e 100644 --- a/docs/models/operations/getlibraryitemsqueryparamtype.md +++ b/docs/models/operations/getlibraryitemsqueryparamtype.md @@ -1,6 +1,6 @@ # GetLibraryItemsQueryParamType -The type of media to retrieve. +The type of media to retrieve or filter by. 1 = movie 2 = show 3 = season diff --git a/docs/models/operations/getlibraryitemsrequest.md b/docs/models/operations/getlibraryitemsrequest.md index 5c1f789..365f1ce 100644 --- a/docs/models/operations/getlibraryitemsrequest.md +++ b/docs/models/operations/getlibraryitemsrequest.md @@ -3,12 +3,12 @@ ## Fields -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `tag` | [::PlexRubySDK::Operations::Tag](../../models/operations/tag.md) | :heavy_check_mark: | A key representing a specific tag within the section. | | -| `include_guids` | [T.nilable(::PlexRubySDK::Operations::IncludeGuids)](../../models/operations/includeguids.md) | :heavy_minus_sign: | Adds the Guids object to the response
| 1 | -| `type` | [T.nilable(::PlexRubySDK::Operations::GetLibraryItemsQueryParamType)](../../models/operations/getlibraryitemsqueryparamtype.md) | :heavy_minus_sign: | The type of media to retrieve.
1 = movie
2 = show
3 = season
4 = episode
E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
| 2 | -| `section_key` | *::Integer* | :heavy_check_mark: | The unique key of the Plex library.
Note: This is unique in the context of the Plex server.
| 9518 | -| `include_meta` | [T.nilable(::PlexRubySDK::Operations::GetLibraryItemsQueryParamIncludeMeta)](../../models/operations/getlibraryitemsqueryparamincludemeta.md) | :heavy_minus_sign: | Adds the Meta object to the response
| 1 | -| `x_plex_container_start` | *T.nilable(::Integer)* | :heavy_minus_sign: | The index of the first item to return. If not specified, the first item will be returned.
If the number of items exceeds the limit, the response will be paginated.
By default this is 0
| 0 | -| `x_plex_container_size` | *T.nilable(::Integer)* | :heavy_minus_sign: | The number of items to return. If not specified, all items will be returned.
If the number of items exceeds the limit, the response will be paginated.
By default this is 50
| 50 | \ No newline at end of file +| Field | Type | Required | Description | Example | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `tag` | [::PlexRubySDK::Operations::Tag](../../models/operations/tag.md) | :heavy_check_mark: | A key representing a specific tag within the section. | | +| `include_guids` | [T.nilable(::PlexRubySDK::Operations::IncludeGuids)](../../models/operations/includeguids.md) | :heavy_minus_sign: | Adds the Guids object to the response
| 1 | +| `type` | [::PlexRubySDK::Operations::GetLibraryItemsQueryParamType](../../models/operations/getlibraryitemsqueryparamtype.md) | :heavy_check_mark: | The type of media to retrieve or filter by.
1 = movie
2 = show
3 = season
4 = episode
E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
| 2 | +| `section_key` | *::Integer* | :heavy_check_mark: | The unique key of the Plex library.
Note: This is unique in the context of the Plex server.
| 9518 | +| `include_meta` | [T.nilable(::PlexRubySDK::Operations::GetLibraryItemsQueryParamIncludeMeta)](../../models/operations/getlibraryitemsqueryparamincludemeta.md) | :heavy_minus_sign: | Adds the Meta object to the response
| 1 | +| `x_plex_container_start` | *T.nilable(::Integer)* | :heavy_minus_sign: | The index of the first item to return. If not specified, the first item will be returned.
If the number of items exceeds the limit, the response will be paginated.
By default this is 0
| 0 | +| `x_plex_container_size` | *T.nilable(::Integer)* | :heavy_minus_sign: | The number of items to return. If not specified, all items will be returned.
If the number of items exceeds the limit, the response will be paginated.
By default this is 50
| 50 | \ No newline at end of file diff --git a/docs/models/operations/getmediametadatabadrequest.md b/docs/models/operations/getmediametadatabadrequest.md new file mode 100644 index 0000000..43b4f6c --- /dev/null +++ b/docs/models/operations/getmediametadatabadrequest.md @@ -0,0 +1,10 @@ +# GetMediaMetaDataBadRequest + +Bad Request - A parameter was not specified, or was specified incorrectly. + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | +| `errors` | T::Array<[::PlexRubySDK::Operations::GetMediaMetaDataErrors](../../models/operations/getmediametadataerrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/operations/getmediametadatacountry.md b/docs/models/operations/getmediametadatacountry.md new file mode 100644 index 0000000..c3d60a6 --- /dev/null +++ b/docs/models/operations/getmediametadatacountry.md @@ -0,0 +1,10 @@ +# GetMediaMetaDataCountry + + +## Fields + +| Field | Type | Required | Description | Example | +| ---------------------------------- | ---------------------------------- | ---------------------------------- | ---------------------------------- | ---------------------------------- | +| `id` | *::Integer* | :heavy_check_mark: | The unique country identifier. | 58591 | +| `filter` | *::String* | :heavy_check_mark: | The filter string for the country. | country=58591 | +| `tag` | *::String* | :heavy_check_mark: | The country name. | United States of America | \ No newline at end of file diff --git a/docs/models/operations/getmediametadatadirector.md b/docs/models/operations/getmediametadatadirector.md new file mode 100644 index 0000000..6ce241e --- /dev/null +++ b/docs/models/operations/getmediametadatadirector.md @@ -0,0 +1,13 @@ +# GetMediaMetaDataDirector + + +## Fields + +| Field | Type | Required | Description | Example | +| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | +| `id` | *::Integer* | :heavy_check_mark: | The unique role identifier. | 109501 | +| `filter` | *::String* | :heavy_check_mark: | The filter string for the role. | actor=109501 | +| `tag` | *::String* | :heavy_check_mark: | The actor's name. | Bob Odenkirk | +| `tag_key` | *::String* | :heavy_check_mark: | A key associated with the actor tag. | 5d77683254f42c001f8c3f69 | +| `role` | *T.nilable(::String)* | :heavy_minus_sign: | The character name or role. | Jimmy McGill | +| `thumb` | *T.nilable(::String)* | :heavy_minus_sign: | URL for the role thumbnail image. | https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg | \ No newline at end of file diff --git a/docs/models/operations/getmediametadataerrors.md b/docs/models/operations/getmediametadataerrors.md new file mode 100644 index 0000000..c32fff3 --- /dev/null +++ b/docs/models/operations/getmediametadataerrors.md @@ -0,0 +1,10 @@ +# GetMediaMetaDataErrors + + +## Fields + +| Field | Type | Required | Description | Example | +| ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- | +| `code` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 1000 | +| `message` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | X-Plex-Client-Identifier is missing | +| `status` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 400 | \ No newline at end of file diff --git a/docs/models/operations/getmediametadatagenre.md b/docs/models/operations/getmediametadatagenre.md new file mode 100644 index 0000000..5d0da7c --- /dev/null +++ b/docs/models/operations/getmediametadatagenre.md @@ -0,0 +1,10 @@ +# GetMediaMetaDataGenre + + +## Fields + +| Field | Type | Required | Description | Example | +| -------------------------------- | -------------------------------- | -------------------------------- | -------------------------------- | -------------------------------- | +| `id` | *::Integer* | :heavy_check_mark: | The unique genre identifier. | 1057 | +| `filter` | *::String* | :heavy_check_mark: | The filter string for the genre. | genre=1057 | +| `tag` | *::String* | :heavy_check_mark: | The genre name. | Crime | \ No newline at end of file diff --git a/docs/models/operations/getmediametadataimage.md b/docs/models/operations/getmediametadataimage.md new file mode 100644 index 0000000..c10c29e --- /dev/null +++ b/docs/models/operations/getmediametadataimage.md @@ -0,0 +1,10 @@ +# GetMediaMetaDataImage + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | +| `alt` | *::String* | :heavy_check_mark: | Alternate text for the image. | Better Call Saul | +| `type` | *::String* | :heavy_check_mark: | The type of image (e.g., coverPoster, background, clearLogo). | coverPoster | +| `url` | *::String* | :heavy_check_mark: | The URL of the image. | /library/metadata/44288/thumb/1736487993 | \ No newline at end of file diff --git a/docs/models/operations/getmediametadatalibraryerrors.md b/docs/models/operations/getmediametadatalibraryerrors.md new file mode 100644 index 0000000..3a79c07 --- /dev/null +++ b/docs/models/operations/getmediametadatalibraryerrors.md @@ -0,0 +1,10 @@ +# GetMediaMetaDataLibraryErrors + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | +| `code` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 1001 | +| `message` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | User could not be authenticated | +| `status` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 401 | \ No newline at end of file diff --git a/docs/models/operations/getmediametadatalocation.md b/docs/models/operations/getmediametadatalocation.md new file mode 100644 index 0000000..87026b9 --- /dev/null +++ b/docs/models/operations/getmediametadatalocation.md @@ -0,0 +1,8 @@ +# GetMediaMetaDataLocation + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | +| `path` | *::String* | :heavy_check_mark: | The file path for the location. | /TV Shows/Better Call Saul | \ No newline at end of file diff --git a/docs/models/operations/getmediametadatamedia.md b/docs/models/operations/getmediametadatamedia.md new file mode 100644 index 0000000..38147d3 --- /dev/null +++ b/docs/models/operations/getmediametadatamedia.md @@ -0,0 +1,22 @@ +# GetMediaMetaDataMedia + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | +| `id` | *::Integer* | :heavy_check_mark: | Unique media identifier. | 387322 | +| `duration` | *::Integer* | :heavy_check_mark: | Duration of the media in milliseconds. | 9610350 | +| `bitrate` | *::Integer* | :heavy_check_mark: | Bitrate in bits per second. | 25512 | +| `width` | *::Integer* | :heavy_check_mark: | Video width in pixels. | 3840 | +| `height` | *::Integer* | :heavy_check_mark: | Video height in pixels. | 1602 | +| `aspect_ratio` | *::Float* | :heavy_check_mark: | Aspect ratio of the video. | 2.35 | +| `audio_channels` | *::Integer* | :heavy_check_mark: | Number of audio channels. | 6 | +| `audio_codec` | *::String* | :heavy_check_mark: | Audio codec used. | eac3 | +| `video_codec` | *::String* | :heavy_check_mark: | Video codec used. | hevc | +| `video_resolution` | *::String* | :heavy_check_mark: | Video resolution (e.g., 4k). | 4k | +| `container` | *::String* | :heavy_check_mark: | File container type. | mkv | +| `video_frame_rate` | *::String* | :heavy_check_mark: | Frame rate of the video (e.g., 24p). | 24p | +| `video_profile` | *::String* | :heavy_check_mark: | Video profile (e.g., main 10). | main 10 | +| `has_voice_activity` | *T::Boolean* | :heavy_check_mark: | Indicates whether voice activity is detected. | false | +| `part` | T::Array<[::PlexRubySDK::Operations::GetMediaMetaDataPart](../../models/operations/getmediametadatapart.md)> | :heavy_check_mark: | An array of parts for this media item. | | \ No newline at end of file diff --git a/docs/models/operations/getmediametadatamediacontainer.md b/docs/models/operations/getmediametadatamediacontainer.md new file mode 100644 index 0000000..3ce2f48 --- /dev/null +++ b/docs/models/operations/getmediametadatamediacontainer.md @@ -0,0 +1,16 @@ +# GetMediaMetaDataMediaContainer + + +## Fields + +| Field | Type | Required | Description | Example | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `size` | *::Float* | :heavy_check_mark: | N/A | 50 | +| `allow_sync` | *T::Boolean* | :heavy_check_mark: | Indicates whether syncing is allowed. | false | +| `identifier` | *::String* | :heavy_check_mark: | An plugin identifier for the media container. | com.plexapp.plugins.library | +| `library_section_id` | *::Integer* | :heavy_check_mark: | The unique identifier for the library section. | 2 | +| `library_section_title` | *::String* | :heavy_check_mark: | The title of the library section. | TV Series | +| `library_section_uuid` | *T.nilable(::String)* | :heavy_minus_sign: | The universally unique identifier for the library section. | e69655a2-ef48-4aba-bb19-0cc34d1e7d36 | +| `media_tag_prefix` | *::String* | :heavy_check_mark: | The prefix used for media tag resource paths. | /system/bundle/media/flags/ | +| `media_tag_version` | *::Integer* | :heavy_check_mark: | The version number for media tags. | 1734362201 | +| `metadata` | T::Array<[::PlexRubySDK::Operations::GetMediaMetaDataMetadata](../../models/operations/getmediametadatametadata.md)> | :heavy_check_mark: | An array of metadata items. | | \ No newline at end of file diff --git a/docs/models/operations/getmetadatabyratingkeymetadata.md b/docs/models/operations/getmediametadatametadata.md similarity index 53% rename from docs/models/operations/getmetadatabyratingkeymetadata.md rename to docs/models/operations/getmediametadatametadata.md index 4ad6156..6629fd6 100644 --- a/docs/models/operations/getmetadatabyratingkeymetadata.md +++ b/docs/models/operations/getmediametadatametadata.md @@ -1,45 +1,66 @@ -# GetMetaDataByRatingKeyMetadata +# GetMediaMetaDataMetadata ## Fields -| Field | Type | Required | Description | Example | -| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `rating_key` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | 17 | -| `key` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | /library/metadata/17 | -| `guid` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | plex://movie/5d77683f6f4521001ea9dc53 | -| `studio` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | Universal Pictures | -| `type` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | movie | -| `title` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | Serenity | -| `library_section_title` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | Movies | -| `library_section_id` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 1 | -| `library_section_key` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | /library/sections/1 | -| `grandparent_title` | *T.nilable(::String)* | :heavy_minus_sign: | The name of the album artist for the track when audio, and the name of the TV show for the episode when video. | | -| `parent_title` | *T.nilable(::String)* | :heavy_minus_sign: | The name of the album for the track when audio, and the name of the season for the episode when TV show. | | -| `original_title` | *T.nilable(::String)* | :heavy_minus_sign: | The orginal untranslated name of the media item when non-english. | | -| `index` | *T.nilable(::Integer)* | :heavy_minus_sign: | The index starting from 0 of this media item in the MetaData array. | | -| `parent_index` | *T.nilable(::Integer)* | :heavy_minus_sign: | The parent index starting from 0 of this media item in the parent MetaData array. | | -| `content_rating` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | PG-13 | -| `summary` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | Serenity continues the story of the TV series it was based upon ("Firefly"). River Tam had a secret - one in which she's not even aware - so dangerous, no one's safe, as an Alliance operative's sent to capture her, and all others are considered irrelevant to his job. | -| `rating` | *T.nilable(::Float)* | :heavy_minus_sign: | N/A | 8.2 | -| `audience_rating` | *T.nilable(::Float)* | :heavy_minus_sign: | N/A | 9.1 | -| `year` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 2005 | -| `tagline` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | They aim to misbehave. | -| `thumb` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | /library/metadata/17/thumb/1705637165 | -| `art` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | /library/metadata/17/art/1705637165 | -| `duration` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 141417 | -| `originally_available_at` | [DateTime](https://ruby-doc.org/stdlib-2.6.1/libdoc/date/rdoc/DateTime.html) | :heavy_minus_sign: | N/A | 2005-09-29 00:00:00 +0000 UTC | -| `added_at` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 1705637164 | -| `updated_at` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 1705637165 | -| `audience_rating_image` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | rottentomatoes://image.rating.upright | -| `has_premium_primary_extra` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | 1 | -| `rating_image` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | rottentomatoes://image.rating.ripe | -| `media` | T::Array<[::PlexRubySDK::Operations::GetMetaDataByRatingKeyMedia](../../models/operations/getmetadatabyratingkeymedia.md)> | :heavy_minus_sign: | N/A | | -| `genre` | T::Array<[::PlexRubySDK::Operations::GetMetaDataByRatingKeyGenre](../../models/operations/getmetadatabyratingkeygenre.md)> | :heavy_minus_sign: | N/A | | -| `country` | T::Array<[::PlexRubySDK::Operations::GetMetaDataByRatingKeyCountry](../../models/operations/getmetadatabyratingkeycountry.md)> | :heavy_minus_sign: | N/A | | -| `guids` | T::Array<[::PlexRubySDK::Operations::Guids](../../models/operations/guids.md)> | :heavy_minus_sign: | N/A | | -| `ratings` | T::Array<[::PlexRubySDK::Operations::Ratings](../../models/operations/ratings.md)> | :heavy_minus_sign: | N/A | | -| `director` | T::Array<[::PlexRubySDK::Operations::GetMetaDataByRatingKeyDirector](../../models/operations/getmetadatabyratingkeydirector.md)> | :heavy_minus_sign: | N/A | | -| `writer` | T::Array<[::PlexRubySDK::Operations::GetMetaDataByRatingKeyWriter](../../models/operations/getmetadatabyratingkeywriter.md)> | :heavy_minus_sign: | N/A | | -| `role` | T::Array<[::PlexRubySDK::Operations::GetMetaDataByRatingKeyRole](../../models/operations/getmetadatabyratingkeyrole.md)> | :heavy_minus_sign: | N/A | | -| `producer` | T::Array<[::PlexRubySDK::Operations::Producer](../../models/operations/producer.md)> | :heavy_minus_sign: | N/A | | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `rating_key` | *::String* | :heavy_check_mark: | The rating key of the metadata item. | 44288 | +| `parent_rating_key` | *T.nilable(::String)* | :heavy_minus_sign: | The rating key of the parent of this metadata item. | 48047 | +| `grandparent_rating_key` | *T.nilable(::String)* | :heavy_minus_sign: | The rating key of the grandparent of this metadata item. | 45520 | +| `parent_guid` | *T.nilable(::String)* | :heavy_minus_sign: | A GUID identifying the parent entity (e.g., season) for the item. | plex://season/618b89208dde18df707ad15c | +| `grandparent_guid` | *T.nilable(::String)* | :heavy_minus_sign: | A GUID identifying the grandparent entity (e.g., show). | plex://show/5e16253691c20300412003a8 | +| `grandparent_slug` | *T.nilable(::String)* | :heavy_minus_sign: | A URL-friendly identifier (slug) for the grandparent entity. | alice-in-borderland-2020 | +| `grandparent_key` | *T.nilable(::String)* | :heavy_minus_sign: | A key identifying the grandparent metadata in the library. | /library/metadata/45520 | +| `parent_key` | *T.nilable(::String)* | :heavy_minus_sign: | A key identifying the parent metadata in the library. | /library/metadata/48047 | +| `key` | *::String* | :heavy_check_mark: | The API key to access metadata details. | /library/metadata/44288/children | +| `guid` | *::String* | :heavy_check_mark: | The globally unique identifier for the item. | plex://show/5d9c08254eefaa001f5d6dcb | +| `slug` | *T.nilable(::String)* | :heavy_minus_sign: | A URL-friendly identifier for the item. | better-call-saul | +| `studio` | *T.nilable(::String)* | :heavy_minus_sign: | The studio that produced the content. | Sony Pictures Television | +| `type` | *::String* | :heavy_check_mark: | The type of content (e.g., show, movie). | show | +| `title` | *::String* | :heavy_check_mark: | The title of the content. | Better Call Saul | +| `original_title` | *T.nilable(::String)* | :heavy_minus_sign: | The original title of the content. | Wicked: Part I | +| `library_section_title` | *::String* | :heavy_check_mark: | The title of the library section. | TV Series | +| `library_section_id` | *::Integer* | :heavy_check_mark: | The ID of the library section. | 2 | +| `library_section_key` | *::String* | :heavy_check_mark: | The key of the library section. | /library/sections/2 | +| `content_rating` | *::String* | :heavy_check_mark: | The content rating (e.g., TV-MA). | TV-MA | +| `summary` | *::String* | :heavy_check_mark: | A summary of the content. | Before Saul Goodman, he was Jimmy McGill. And if you're calling Jimmy, you're in real trouble. The prequel to "Breaking Bad" follows small-time attorney, Jimmy McGill, as he transforms into Walter White's morally challenged lawyer, Saul Goodman. | +| `index` | *T.nilable(::Integer)* | :heavy_minus_sign: | The index or order of the item. | 1 | +| `grandparent_title` | *T.nilable(::String)* | :heavy_minus_sign: | The title of the grandparent entity (typically the show's title). | Alice in Borderland | +| `parent_title` | *T.nilable(::String)* | :heavy_minus_sign: | The title of the parent entity (typically the season's title). | Season 2 | +| `audience_rating` | *::Float* | :heavy_check_mark: | The audience rating for the content. | 8.7 | +| `view_count` | *T.nilable(::Integer)* | :heavy_minus_sign: | The number of times the item has been viewed. | 4 | +| `skip_count` | *T.nilable(::Integer)* | :heavy_minus_sign: | The number of times the item has been skipped. | 1 | +| `last_viewed_at` | *T.nilable(::Integer)* | :heavy_minus_sign: | Unix timestamp of when the item was last viewed. | 1625764795 | +| `year` | *::Integer* | :heavy_check_mark: | The release year. | 2015 | +| `tagline` | *T.nilable(::String)* | :heavy_minus_sign: | The tagline of the content. | Make the call | +| `chapter_source` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | media | +| `primary_extra_key` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | /library/metadata/134704 | +| `thumb` | *::String* | :heavy_check_mark: | URL of the thumbnail image. | /library/metadata/44288/thumb/1736487993 | +| `art` | *::String* | :heavy_check_mark: | URL of the art image. | /library/metadata/44288/art/1736487993 | +| `theme` | *T.nilable(::String)* | :heavy_minus_sign: | URL of the theme image. | /library/metadata/44288/theme/1736487993 | +| `duration` | *::Integer* | :heavy_check_mark: | Duration of the content in milliseconds. | 2700000 | +| `originally_available_at` | [DateTime](https://ruby-doc.org/stdlib-2.6.1/libdoc/date/rdoc/DateTime.html) | :heavy_check_mark: | The original release date. | 2015-02-08 | +| `leaf_count` | *T.nilable(::Integer)* | :heavy_minus_sign: | The total number of episodes (or leaves). | 63 | +| `viewed_leaf_count` | *T.nilable(::Integer)* | :heavy_minus_sign: | The number of episodes that have been viewed. | 4 | +| `child_count` | *T.nilable(::Integer)* | :heavy_minus_sign: | The number of child items. | 6 | +| `added_at` | *::Integer* | :heavy_check_mark: | Unix timestamp when the item was added. | 1625505101 | +| `updated_at` | *::Integer* | :heavy_check_mark: | Unix timestamp when the item was last updated. | 1736487993 | +| `audience_rating_image` | *::String* | :heavy_check_mark: | The URL for the audience rating image. | themoviedb://image.rating | +| `parent_index` | *T.nilable(::Integer)* | :heavy_minus_sign: | The index number of the parent entity, which could indicate its order or position. | 2 | +| `parent_thumb` | *T.nilable(::String)* | :heavy_minus_sign: | The URL of the parent's thumbnail image. | /library/metadata/48047/thumb/1671800243 | +| `grandparent_thumb` | *T.nilable(::String)* | :heavy_minus_sign: | The URL of the grandparent's thumbnail image. | /library/metadata/45520/thumb/1736488003 | +| `grandparent_art` | *T.nilable(::String)* | :heavy_minus_sign: | The URL of the grandparent's art image. | /library/metadata/45520/art/1736488003 | +| `media` | T::Array<[::PlexRubySDK::Operations::GetMediaMetaDataMedia](../../models/operations/getmediametadatamedia.md)> | :heavy_minus_sign: | N/A | | +| `image` | T::Array<[::PlexRubySDK::Operations::GetMediaMetaDataImage](../../models/operations/getmediametadataimage.md)> | :heavy_check_mark: | An array of image objects. | | +| `ultra_blur_colors` | [::PlexRubySDK::Operations::GetMediaMetaDataUltraBlurColors](../../models/operations/getmediametadataultrablurcolors.md) | :heavy_check_mark: | N/A | | +| `genre` | T::Array<[::PlexRubySDK::Operations::GetMediaMetaDataGenre](../../models/operations/getmediametadatagenre.md)> | :heavy_minus_sign: | An array of genre tags. | | +| `country` | T::Array<[::PlexRubySDK::Operations::GetMediaMetaDataCountry](../../models/operations/getmediametadatacountry.md)> | :heavy_minus_sign: | An array of country tags. | | +| `guids` | T::Array<[::PlexRubySDK::Operations::Guids](../../models/operations/guids.md)> | :heavy_check_mark: | An array of GUID objects. | | +| `rating` | T::Array<[::PlexRubySDK::Operations::Rating](../../models/operations/rating.md)> | :heavy_check_mark: | An array of rating objects. | | +| `role` | T::Array<[::PlexRubySDK::Operations::GetMediaMetaDataRole](../../models/operations/getmediametadatarole.md)> | :heavy_minus_sign: | An array of Actor roles. | | +| `director` | T::Array<[::PlexRubySDK::Operations::GetMediaMetaDataDirector](../../models/operations/getmediametadatadirector.md)> | :heavy_minus_sign: | An array of Director roles. | | +| `writer` | T::Array<[::PlexRubySDK::Operations::GetMediaMetaDataWriter](../../models/operations/getmediametadatawriter.md)> | :heavy_minus_sign: | An array of Writer roles. | | +| `producer` | T::Array<[::PlexRubySDK::Operations::Producer](../../models/operations/producer.md)> | :heavy_minus_sign: | An array of Writer roles. | | +| `similar` | T::Array<[::PlexRubySDK::Operations::Similar](../../models/operations/similar.md)> | :heavy_minus_sign: | An array of similar content objects. | | +| `location` | T::Array<[::PlexRubySDK::Operations::GetMediaMetaDataLocation](../../models/operations/getmediametadatalocation.md)> | :heavy_minus_sign: | An array of location objects. | | \ No newline at end of file diff --git a/docs/models/operations/getmediametadatapart.md b/docs/models/operations/getmediametadatapart.md new file mode 100644 index 0000000..1b2ed7e --- /dev/null +++ b/docs/models/operations/getmediametadatapart.md @@ -0,0 +1,18 @@ +# GetMediaMetaDataPart + + +## Fields + +| Field | Type | Required | Description | Example | +| ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | +| `accessible` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if the part is accessible. | true | +| `exists` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if the part exists. | true | +| `id` | *::Integer* | :heavy_check_mark: | Unique part identifier. | 418385 | +| `key` | *::String* | :heavy_check_mark: | Key to access this part. | /library/parts/418385/1735864239/file.mkv | +| `indexes` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | sd | +| `duration` | *::Integer* | :heavy_check_mark: | Duration of the part in milliseconds. | 9610350 | +| `file` | *::String* | :heavy_check_mark: | File path for the part. | /mnt/Movies_1/W/Wicked (2024).mkv | +| `size` | *::Integer* | :heavy_check_mark: | File size in bytes. | 30649952104 | +| `container` | *::String* | :heavy_check_mark: | Container format of the part. | mkv | +| `video_profile` | *::String* | :heavy_check_mark: | Video profile for the part. | main 10 | +| `stream` | T::Array<[::PlexRubySDK::Operations::GetMediaMetaDataStream](../../models/operations/getmediametadatastream.md)> | :heavy_check_mark: | An array of streams for this part. | | \ No newline at end of file diff --git a/docs/models/operations/getmediametadatarequest.md b/docs/models/operations/getmediametadatarequest.md new file mode 100644 index 0000000..8a0a44f --- /dev/null +++ b/docs/models/operations/getmediametadatarequest.md @@ -0,0 +1,21 @@ +# GetMediaMetaDataRequest + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | +| `rating_key` | *::Integer* | :heavy_check_mark: | the id of the library item to return the children of. | 9518 | +| `include_concerts` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Include concerts data if set to true. | true | +| `include_extras` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Include extra content (e.g. bonus features). | true | +| `include_on_deck` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Include on-deck items. | true | +| `include_popular_leaves` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Include popular leaves (episodes/chapters). | true | +| `include_preferences` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Include preferences information. | true | +| `include_reviews` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Include reviews for the content. | true | +| `include_chapters` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Include chapter details. | true | +| `include_stations` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Include station data. | true | +| `include_external_media` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Include external media data. | true | +| `async_augment_metadata` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Trigger asynchronous metadata augmentation. | true | +| `async_check_files` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Trigger asynchronous file checking. | true | +| `async_refresh_analysis` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Trigger asynchronous refresh of analysis. | true | +| `async_refresh_local_media_agent` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Trigger asynchronous refresh of the local media agent. | true | \ No newline at end of file diff --git a/docs/models/operations/getmediametadataresponse.md b/docs/models/operations/getmediametadataresponse.md new file mode 100644 index 0000000..cb1ca4f --- /dev/null +++ b/docs/models/operations/getmediametadataresponse.md @@ -0,0 +1,13 @@ +# GetMediaMetaDataResponse + + +## Fields + +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | +| `content_type` | *::String* | :heavy_check_mark: | HTTP response content type for this operation | +| `status_code` | *::Integer* | :heavy_check_mark: | HTTP response status code for this operation | +| `raw_response` | [Faraday::Response](https://www.rubydoc.info/gems/faraday/Faraday/Response) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `object` | [T.nilable(::PlexRubySDK::Operations::GetMediaMetaDataResponseBody)](../../models/operations/getmediametadataresponsebody.md) | :heavy_minus_sign: | The metadata of the library item. | +| `bad_request` | [T.nilable(::PlexRubySDK::Operations::GetMediaMetaDataBadRequest)](../../models/operations/getmediametadatabadrequest.md) | :heavy_minus_sign: | Bad Request - A parameter was not specified, or was specified incorrectly. | +| `unauthorized` | [T.nilable(::PlexRubySDK::Operations::GetMediaMetaDataUnauthorized)](../../models/operations/getmediametadataunauthorized.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file diff --git a/docs/models/operations/getmetadatabyratingkeyresponsebody.md b/docs/models/operations/getmediametadataresponsebody.md similarity index 51% rename from docs/models/operations/getmetadatabyratingkeyresponsebody.md rename to docs/models/operations/getmediametadataresponsebody.md index 2d8b8c0..c3fd593 100644 --- a/docs/models/operations/getmetadatabyratingkeyresponsebody.md +++ b/docs/models/operations/getmediametadataresponsebody.md @@ -1,10 +1,10 @@ -# GetMetaDataByRatingKeyResponseBody +# GetMediaMetaDataResponseBody The metadata of the library item. ## Fields -| Field | Type | Required | Description | -| --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | -| `media_container` | [T.nilable(::PlexRubySDK::Operations::GetMetaDataByRatingKeyMediaContainer)](../../models/operations/getmetadatabyratingkeymediacontainer.md) | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | +| `media_container` | [T.nilable(::PlexRubySDK::Operations::GetMediaMetaDataMediaContainer)](../../models/operations/getmediametadatamediacontainer.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/operations/getmediametadatarole.md b/docs/models/operations/getmediametadatarole.md new file mode 100644 index 0000000..3e2906b --- /dev/null +++ b/docs/models/operations/getmediametadatarole.md @@ -0,0 +1,13 @@ +# GetMediaMetaDataRole + + +## Fields + +| Field | Type | Required | Description | Example | +| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | +| `id` | *::Integer* | :heavy_check_mark: | The unique role identifier. | 109501 | +| `filter` | *::String* | :heavy_check_mark: | The filter string for the role. | actor=109501 | +| `tag` | *::String* | :heavy_check_mark: | The actor's name. | Bob Odenkirk | +| `tag_key` | *::String* | :heavy_check_mark: | A key associated with the actor tag. | 5d77683254f42c001f8c3f69 | +| `role` | *T.nilable(::String)* | :heavy_minus_sign: | The character name or role. | Jimmy McGill | +| `thumb` | *T.nilable(::String)* | :heavy_minus_sign: | URL for the role thumbnail image. | https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg | \ No newline at end of file diff --git a/docs/models/operations/getmediametadatastream.md b/docs/models/operations/getmediametadatastream.md new file mode 100644 index 0000000..29f64c6 --- /dev/null +++ b/docs/models/operations/getmediametadatastream.md @@ -0,0 +1,53 @@ +# GetMediaMetaDataStream + + +## Fields + +| Field | Type | Required | Description | Example | +| -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | +| `id` | *::Integer* | :heavy_check_mark: | Unique stream identifier. | 1002625 | +| `stream_type` | *::Integer* | :heavy_check_mark: | Stream type (1=video, 2=audio, 3=subtitle). | 1 | +| `default` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if this stream is default. | true | +| `codec` | *::String* | :heavy_check_mark: | Codec used by the stream. | hevc | +| `index` | *::Integer* | :heavy_check_mark: | Index of the stream. | 0 | +| `bitrate` | *::Integer* | :heavy_check_mark: | Bitrate of the stream. | 24743 | +| `language` | *::String* | :heavy_check_mark: | Language of the stream. | English | +| `language_tag` | *::String* | :heavy_check_mark: | Language tag (e.g., en). | en | +| `language_code` | *::String* | :heavy_check_mark: | ISO language code. | eng | +| `dovibl_compat_id` | *T.nilable(::Integer)* | :heavy_minus_sign: | Dolby Vision BL compatibility ID. | 1 | +| `dovibl_present` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if Dolby Vision BL is present. | true | +| `doviel_present` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if Dolby Vision EL is present. | false | +| `dovi_level` | *T.nilable(::Integer)* | :heavy_minus_sign: | Dolby Vision level. | 6 | +| `dovi_present` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if Dolby Vision is present. | true | +| `dovi_profile` | *T.nilable(::Integer)* | :heavy_minus_sign: | Dolby Vision profile. | 8 | +| `dovirpu_present` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if Dolby Vision RPU is present. | true | +| `dovi_version` | *T.nilable(::String)* | :heavy_minus_sign: | Dolby Vision version. | 1.0 | +| `bit_depth` | *T.nilable(::Integer)* | :heavy_minus_sign: | Bit depth of the video stream. | 10 | +| `chroma_location` | *T.nilable(::String)* | :heavy_minus_sign: | Chroma sample location. | topleft | +| `chroma_subsampling` | *T.nilable(::String)* | :heavy_minus_sign: | Chroma subsampling format. | 4:2:0 | +| `coded_height` | *T.nilable(::Integer)* | :heavy_minus_sign: | Coded video height. | 1608 | +| `coded_width` | *T.nilable(::Integer)* | :heavy_minus_sign: | Coded video width. | 3840 | +| `color_primaries` | *T.nilable(::String)* | :heavy_minus_sign: | Color primaries used. | bt2020 | +| `color_range` | *T.nilable(::String)* | :heavy_minus_sign: | Color range (e.g., tv). | tv | +| `color_space` | *T.nilable(::String)* | :heavy_minus_sign: | Color space. | bt2020nc | +| `color_trc` | *T.nilable(::String)* | :heavy_minus_sign: | Color transfer characteristics. | smpte2084 | +| `frame_rate` | *T.nilable(::Float)* | :heavy_minus_sign: | Frame rate of the stream. | 23.976 | +| `height` | *T.nilable(::Integer)* | :heavy_minus_sign: | Height of the video stream. | 1602 | +| `level` | *T.nilable(::Integer)* | :heavy_minus_sign: | Video level. | 150 | +| `original` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if this is the original stream. | true | +| `has_scaling_matrix` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | N/A | false | +| `profile` | *T.nilable(::String)* | :heavy_minus_sign: | Video profile. | main 10 | +| `scan_type` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | progressive | +| `ref_frames` | *T.nilable(::Integer)* | :heavy_minus_sign: | Number of reference frames. | 1 | +| `width` | *T.nilable(::Integer)* | :heavy_minus_sign: | Width of the video stream. | 3840 | +| `display_title` | *::String* | :heavy_check_mark: | Display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) | +| `extended_display_title` | *::String* | :heavy_check_mark: | Extended display title for the stream. | 4K DoVi/HDR10 (HEVC Main 10) | +| `selected` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if this stream is selected (applicable for audio streams). | true | +| `forced` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | N/A | true | +| `channels` | *T.nilable(::Integer)* | :heavy_minus_sign: | Number of audio channels (for audio streams). | 6 | +| `audio_channel_layout` | *T.nilable(::String)* | :heavy_minus_sign: | Audio channel layout. | 5.1(side) | +| `sampling_rate` | *T.nilable(::Integer)* | :heavy_minus_sign: | Sampling rate for the audio stream. | 48000 | +| `can_auto_sync` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if the stream can auto-sync. | false | +| `hearing_impaired` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if the stream is for the hearing impaired. | true | +| `dub` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | Indicates if the stream is a dub. | true | +| `title` | *T.nilable(::String)* | :heavy_minus_sign: | Optional title for the stream (e.g., language variant). | SDH | \ No newline at end of file diff --git a/docs/models/operations/getmediametadataultrablurcolors.md b/docs/models/operations/getmediametadataultrablurcolors.md new file mode 100644 index 0000000..49ae3fc --- /dev/null +++ b/docs/models/operations/getmediametadataultrablurcolors.md @@ -0,0 +1,11 @@ +# GetMediaMetaDataUltraBlurColors + + +## Fields + +| Field | Type | Required | Description | Example | +| ----------------------------- | ----------------------------- | ----------------------------- | ----------------------------- | ----------------------------- | +| `top_left` | *::String* | :heavy_check_mark: | The top-left color value. | 11333a | +| `top_right` | *::String* | :heavy_check_mark: | The top-right color value. | 1d2721 | +| `bottom_right` | *::String* | :heavy_check_mark: | The bottom-right color value. | 5c451d | +| `bottom_left` | *::String* | :heavy_check_mark: | The bottom-left color value. | 372c10 | \ No newline at end of file diff --git a/docs/models/operations/getmediametadataunauthorized.md b/docs/models/operations/getmediametadataunauthorized.md new file mode 100644 index 0000000..3405430 --- /dev/null +++ b/docs/models/operations/getmediametadataunauthorized.md @@ -0,0 +1,10 @@ +# GetMediaMetaDataUnauthorized + +Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | +| `errors` | T::Array<[::PlexRubySDK::Operations::GetMediaMetaDataLibraryErrors](../../models/operations/getmediametadatalibraryerrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/operations/getmediametadatawriter.md b/docs/models/operations/getmediametadatawriter.md new file mode 100644 index 0000000..392dc72 --- /dev/null +++ b/docs/models/operations/getmediametadatawriter.md @@ -0,0 +1,13 @@ +# GetMediaMetaDataWriter + + +## Fields + +| Field | Type | Required | Description | Example | +| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | +| `id` | *::Integer* | :heavy_check_mark: | The unique role identifier. | 109501 | +| `filter` | *::String* | :heavy_check_mark: | The filter string for the role. | actor=109501 | +| `tag` | *::String* | :heavy_check_mark: | The actor's name. | Bob Odenkirk | +| `tag_key` | *::String* | :heavy_check_mark: | A key associated with the actor tag. | 5d77683254f42c001f8c3f69 | +| `role` | *T.nilable(::String)* | :heavy_minus_sign: | The character name or role. | Jimmy McGill | +| `thumb` | *T.nilable(::String)* | :heavy_minus_sign: | URL for the role thumbnail image. | https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg | \ No newline at end of file diff --git a/docs/models/operations/getmetadatabyratingkeybadrequest.md b/docs/models/operations/getmetadatabyratingkeybadrequest.md deleted file mode 100644 index f03f6be..0000000 --- a/docs/models/operations/getmetadatabyratingkeybadrequest.md +++ /dev/null @@ -1,10 +0,0 @@ -# GetMetaDataByRatingKeyBadRequest - -Bad Request - A parameter was not specified, or was specified incorrectly. - - -## Fields - -| Field | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | -| `errors` | T::Array<[::PlexRubySDK::Operations::GetMetaDataByRatingKeyErrors](../../models/operations/getmetadatabyratingkeyerrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/operations/getmetadatabyratingkeycountry.md b/docs/models/operations/getmetadatabyratingkeycountry.md deleted file mode 100644 index 61b6e9f..0000000 --- a/docs/models/operations/getmetadatabyratingkeycountry.md +++ /dev/null @@ -1,10 +0,0 @@ -# GetMetaDataByRatingKeyCountry - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------ | ------------------------ | ------------------------ | ------------------------ | ------------------------ | -| `id` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 116 | -| `filter` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | country=116 | -| `tag` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | United States of America | \ No newline at end of file diff --git a/docs/models/operations/getmetadatabyratingkeydirector.md b/docs/models/operations/getmetadatabyratingkeydirector.md deleted file mode 100644 index b4fcb84..0000000 --- a/docs/models/operations/getmetadatabyratingkeydirector.md +++ /dev/null @@ -1,12 +0,0 @@ -# GetMetaDataByRatingKeyDirector - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `id` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 130 | -| `filter` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | director=130 | -| `tag` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | Joss Whedon | -| `tag_key` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | 5d776828880197001ec90e8f | -| `thumb` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | https://metadata-static.plex.tv/people/5d776828880197001ec90e8f.jpg | \ No newline at end of file diff --git a/docs/models/operations/getmetadatabyratingkeygenre.md b/docs/models/operations/getmetadatabyratingkeygenre.md deleted file mode 100644 index 1fcd18d..0000000 --- a/docs/models/operations/getmetadatabyratingkeygenre.md +++ /dev/null @@ -1,10 +0,0 @@ -# GetMetaDataByRatingKeyGenre - - -## Fields - -| Field | Type | Required | Description | Example | -| ---------------------- | ---------------------- | ---------------------- | ---------------------- | ---------------------- | -| `id` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 184 | -| `filter` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | genre=184 | -| `tag` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | Thriller | \ No newline at end of file diff --git a/docs/models/operations/getmetadatabyratingkeymedia.md b/docs/models/operations/getmetadatabyratingkeymedia.md deleted file mode 100644 index 40402ac..0000000 --- a/docs/models/operations/getmetadatabyratingkeymedia.md +++ /dev/null @@ -1,24 +0,0 @@ -# GetMetaDataByRatingKeyMedia - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | -| `id` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 15 | -| `duration` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 141417 | -| `bitrate` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 2278 | -| `width` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 1920 | -| `height` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 814 | -| `aspect_ratio` | *T.nilable(::Float)* | :heavy_minus_sign: | N/A | 2.35 | -| `audio_channels` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 2 | -| `audio_codec` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | aac | -| `video_codec` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | h264 | -| `video_resolution` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | 1080 | -| `container` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | mp4 | -| `video_frame_rate` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | 24p | -| `optimized_for_streaming` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 0 | -| `audio_profile` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | lc | -| `has64bit_offsets` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | N/A | false | -| `video_profile` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | high | -| `part` | T::Array<[::PlexRubySDK::Operations::GetMetaDataByRatingKeyPart](../../models/operations/getmetadatabyratingkeypart.md)> | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/operations/getmetadatabyratingkeymediacontainer.md b/docs/models/operations/getmetadatabyratingkeymediacontainer.md deleted file mode 100644 index 9bcd7f3..0000000 --- a/docs/models/operations/getmetadatabyratingkeymediacontainer.md +++ /dev/null @@ -1,16 +0,0 @@ -# GetMetaDataByRatingKeyMediaContainer - - -## Fields - -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -| `size` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 1 | -| `allow_sync` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | N/A | true | -| `identifier` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | com.plexapp.plugins.library | -| `library_section_id` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 1 | -| `library_section_title` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | Movies | -| `library_section_uuid` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | cfc899d7-3000-46f6-8489-b9592714ada5 | -| `media_tag_prefix` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | /system/bundle/media/flags/ | -| `media_tag_version` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 1698860922 | -| `metadata` | T::Array<[::PlexRubySDK::Operations::GetMetaDataByRatingKeyMetadata](../../models/operations/getmetadatabyratingkeymetadata.md)> | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/operations/getmetadatabyratingkeypart.md b/docs/models/operations/getmetadatabyratingkeypart.md deleted file mode 100644 index 08699b5..0000000 --- a/docs/models/operations/getmetadatabyratingkeypart.md +++ /dev/null @@ -1,18 +0,0 @@ -# GetMetaDataByRatingKeyPart - - -## Fields - -| Field | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | -| `id` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 15 | -| `key` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | /library/parts/15/1705637151/file.mp4 | -| `duration` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 141417 | -| `file` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | /movies/Serenity (2005)/Serenity (2005).mp4 | -| `size` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 40271948 | -| `audio_profile` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | lc | -| `container` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | mp4 | -| `has64bit_offsets` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | N/A | false | -| `optimized_for_streaming` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | N/A | false | -| `video_profile` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | high | -| `stream` | T::Array<[::PlexRubySDK::Operations::GetMetaDataByRatingKeyStream](../../models/operations/getmetadatabyratingkeystream.md)> | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/operations/getmetadatabyratingkeyrequest.md b/docs/models/operations/getmetadatabyratingkeyrequest.md deleted file mode 100644 index b3710de..0000000 --- a/docs/models/operations/getmetadatabyratingkeyrequest.md +++ /dev/null @@ -1,8 +0,0 @@ -# GetMetaDataByRatingKeyRequest - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | -| `rating_key` | *::Integer* | :heavy_check_mark: | the id of the library item to return the children of. | 9518 | \ No newline at end of file diff --git a/docs/models/operations/getmetadatabyratingkeyresponse.md b/docs/models/operations/getmetadatabyratingkeyresponse.md deleted file mode 100644 index f8bd32d..0000000 --- a/docs/models/operations/getmetadatabyratingkeyresponse.md +++ /dev/null @@ -1,13 +0,0 @@ -# GetMetaDataByRatingKeyResponse - - -## Fields - -| Field | Type | Required | Description | -| ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | -| `content_type` | *::String* | :heavy_check_mark: | HTTP response content type for this operation | -| `status_code` | *::Integer* | :heavy_check_mark: | HTTP response status code for this operation | -| `raw_response` | [Faraday::Response](https://www.rubydoc.info/gems/faraday/Faraday/Response) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | -| `object` | [T.nilable(::PlexRubySDK::Operations::GetMetaDataByRatingKeyResponseBody)](../../models/operations/getmetadatabyratingkeyresponsebody.md) | :heavy_minus_sign: | The metadata of the library item. | -| `bad_request` | [T.nilable(::PlexRubySDK::Operations::GetMetaDataByRatingKeyBadRequest)](../../models/operations/getmetadatabyratingkeybadrequest.md) | :heavy_minus_sign: | Bad Request - A parameter was not specified, or was specified incorrectly. | -| `unauthorized` | [T.nilable(::PlexRubySDK::Operations::GetMetaDataByRatingKeyUnauthorized)](../../models/operations/getmetadatabyratingkeyunauthorized.md) | :heavy_minus_sign: | Unauthorized - Returned if the X-Plex-Token is missing from the header or query. | \ No newline at end of file diff --git a/docs/models/operations/getmetadatabyratingkeyrole.md b/docs/models/operations/getmetadatabyratingkeyrole.md deleted file mode 100644 index 7b8a0dd..0000000 --- a/docs/models/operations/getmetadatabyratingkeyrole.md +++ /dev/null @@ -1,13 +0,0 @@ -# GetMetaDataByRatingKeyRole - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -| `id` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 220 | -| `filter` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | actor=220 | -| `tag` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | Dennis Keiffer | -| `tag_key` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | 5d77683554f42c001f8c4708 | -| `role` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | Bar Guy (uncredited) | -| `thumb` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | https://metadata-static.plex.tv/6/people/648e9a7ea1d537bccfcd7615134b78ce.jpg | \ No newline at end of file diff --git a/docs/models/operations/getmetadatabyratingkeystream.md b/docs/models/operations/getmetadatabyratingkeystream.md deleted file mode 100644 index 089d61c..0000000 --- a/docs/models/operations/getmetadatabyratingkeystream.md +++ /dev/null @@ -1,39 +0,0 @@ -# GetMetaDataByRatingKeyStream - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------ | ------------------------ | ------------------------ | ------------------------ | ------------------------ | -| `id` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 29 | -| `stream_type` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 2 | -| `default` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | N/A | true | -| `codec` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | aac | -| `index` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 0 | -| `bitrate` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 128 | -| `bit_depth` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 8 | -| `chroma_location` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | left | -| `chroma_subsampling` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | 14520 | -| `coded_height` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 816 | -| `coded_width` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 1920 | -| `color_primaries` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | bt709 | -| `color_range` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | tv | -| `color_space` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | bt709 | -| `color_trc` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | bt709 | -| `frame_rate` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 24 | -| `has_scaling_matrix` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | N/A | false | -| `height` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 814 | -| `level` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 40 | -| `profile` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | lc | -| `ref_frames` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 4 | -| `scan_type` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | progressive | -| `stream_identifier` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | 1 | -| `width` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 1920 | -| `display_title` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | English (AAC Stereo) | -| `extended_display_title` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | English (AAC Stereo) | -| `selected` | *T.nilable(T::Boolean)* | :heavy_minus_sign: | N/A | true | -| `channels` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 2 | -| `language` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | English | -| `language_tag` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | en | -| `language_code` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | eng | -| `sampling_rate` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 44100 | \ No newline at end of file diff --git a/docs/models/operations/getmetadatabyratingkeywriter.md b/docs/models/operations/getmetadatabyratingkeywriter.md deleted file mode 100644 index 7b41239..0000000 --- a/docs/models/operations/getmetadatabyratingkeywriter.md +++ /dev/null @@ -1,12 +0,0 @@ -# GetMetaDataByRatingKeyWriter - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `id` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 132 | -| `filter` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | writer=132 | -| `tag` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | Joss Whedon | -| `tag_key` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | 5d776828880197001ec90e8f | -| `thumb` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | https://metadata-static.plex.tv/people/5d776828880197001ec90e8f.jpg | \ No newline at end of file diff --git a/docs/models/operations/getplaylistcontentsqueryparamtype.md b/docs/models/operations/getplaylistcontentsqueryparamtype.md index 03ff772..65100f4 100644 --- a/docs/models/operations/getplaylistcontentsqueryparamtype.md +++ b/docs/models/operations/getplaylistcontentsqueryparamtype.md @@ -1,6 +1,6 @@ # GetPlaylistContentsQueryParamType -The type of media to retrieve. +The type of media to retrieve or filter by. 1 = movie 2 = show 3 = season diff --git a/docs/models/operations/getplaylistcontentsrequest.md b/docs/models/operations/getplaylistcontentsrequest.md index e2f1f32..4e90550 100644 --- a/docs/models/operations/getplaylistcontentsrequest.md +++ b/docs/models/operations/getplaylistcontentsrequest.md @@ -3,7 +3,7 @@ ## Fields -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `playlist_id` | *::Float* | :heavy_check_mark: | the ID of the playlist | | -| `type` | [::PlexRubySDK::Operations::GetPlaylistContentsQueryParamType](../../models/operations/getplaylistcontentsqueryparamtype.md) | :heavy_check_mark: | The type of media to retrieve.
1 = movie
2 = show
3 = season
4 = episode
E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
| 2 | \ No newline at end of file +| Field | Type | Required | Description | Example | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `playlist_id` | *::Float* | :heavy_check_mark: | the ID of the playlist | | +| `type` | [::PlexRubySDK::Operations::GetPlaylistContentsQueryParamType](../../models/operations/getplaylistcontentsqueryparamtype.md) | :heavy_check_mark: | The type of media to retrieve or filter by.
1 = movie
2 = show
3 = season
4 = episode
E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
| 2 | \ No newline at end of file diff --git a/docs/models/operations/getrecentlyaddedlibraryrequest.md b/docs/models/operations/getrecentlyaddedlibraryrequest.md index 84a3301..9428392 100644 --- a/docs/models/operations/getrecentlyaddedlibraryrequest.md +++ b/docs/models/operations/getrecentlyaddedlibraryrequest.md @@ -3,12 +3,12 @@ ## Fields -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `content_directory_id` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 2 | -| `pinned_content_directory_id` | T::Array<*::Integer*> | :heavy_minus_sign: | N/A | [
3,
5,
7,
13,
12,
1,
6,
14,
2,
10,
16,
17
] | -| `section_id` | *T.nilable(::Integer)* | :heavy_minus_sign: | The library section ID for filtering content. | 2 | -| `type` | [::PlexRubySDK::Operations::QueryParamType](../../models/operations/queryparamtype.md) | :heavy_check_mark: | The type of media to retrieve.
1 = movie
2 = show
3 = season
4 = episode
E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
| 2 | -| `include_meta` | [T.nilable(::PlexRubySDK::Operations::QueryParamIncludeMeta)](../../models/operations/queryparamincludemeta.md) | :heavy_minus_sign: | Adds the Meta object to the response
| 1 | -| `x_plex_container_start` | *T.nilable(::Integer)* | :heavy_minus_sign: | The index of the first item to return. If not specified, the first item will be returned.
If the number of items exceeds the limit, the response will be paginated.
By default this is 0
| 0 | -| `x_plex_container_size` | *T.nilable(::Integer)* | :heavy_minus_sign: | The number of items to return. If not specified, all items will be returned.
If the number of items exceeds the limit, the response will be paginated.
By default this is 50
| 50 | \ No newline at end of file +| Field | Type | Required | Description | Example | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `content_directory_id` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 2 | +| `pinned_content_directory_id` | T::Array<*::Integer*> | :heavy_minus_sign: | N/A | [
3,
5,
7,
13,
12,
1,
6,
14,
2,
10,
16,
17
] | +| `section_id` | *T.nilable(::Integer)* | :heavy_minus_sign: | The library section ID for filtering content. | 2 | +| `type` | [::PlexRubySDK::Operations::QueryParamType](../../models/operations/queryparamtype.md) | :heavy_check_mark: | The type of media to retrieve or filter by.
1 = movie
2 = show
3 = season
4 = episode
E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
| 2 | +| `include_meta` | [T.nilable(::PlexRubySDK::Operations::QueryParamIncludeMeta)](../../models/operations/queryparamincludemeta.md) | :heavy_minus_sign: | Adds the Meta object to the response
| 1 | +| `x_plex_container_start` | *T.nilable(::Integer)* | :heavy_minus_sign: | The index of the first item to return. If not specified, the first item will be returned.
If the number of items exceeds the limit, the response will be paginated.
By default this is 0
| 0 | +| `x_plex_container_size` | *T.nilable(::Integer)* | :heavy_minus_sign: | The number of items to return. If not specified, all items will be returned.
If the number of items exceeds the limit, the response will be paginated.
By default this is 50
| 50 | \ No newline at end of file diff --git a/docs/models/operations/getrecentlyaddedrequest.md b/docs/models/operations/getrecentlyaddedrequest.md index 7eaf9b6..520cd09 100644 --- a/docs/models/operations/getrecentlyaddedrequest.md +++ b/docs/models/operations/getrecentlyaddedrequest.md @@ -3,12 +3,12 @@ ## Fields -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `content_directory_id` | *::Integer* | :heavy_check_mark: | The content directory ID. | | -| `pinned_content_directory_id` | *T.nilable(::String)* | :heavy_minus_sign: | Comma-separated list of pinned content directory IDs. | | -| `section_id` | *T.nilable(::Integer)* | :heavy_minus_sign: | The library section ID for filtering content. | 2 | -| `type` | [::PlexRubySDK::Operations::Type](../../models/operations/type.md) | :heavy_check_mark: | The type of media to retrieve.
1 = movie
2 = show
3 = season
4 = episode
E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
| 2 | -| `include_meta` | [T.nilable(::PlexRubySDK::Operations::IncludeMeta)](../../models/operations/includemeta.md) | :heavy_minus_sign: | Adds the Meta object to the response
| 1 | -| `x_plex_container_start` | *T.nilable(::Integer)* | :heavy_minus_sign: | The index of the first item to return. If not specified, the first item will be returned.
If the number of items exceeds the limit, the response will be paginated.
By default this is 0
| 0 | -| `x_plex_container_size` | *T.nilable(::Integer)* | :heavy_minus_sign: | The number of items to return. If not specified, all items will be returned.
If the number of items exceeds the limit, the response will be paginated.
By default this is 50
| 50 | \ No newline at end of file +| Field | Type | Required | Description | Example | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `content_directory_id` | *::Integer* | :heavy_check_mark: | The content directory ID. | | +| `pinned_content_directory_id` | *T.nilable(::String)* | :heavy_minus_sign: | Comma-separated list of pinned content directory IDs. | | +| `section_id` | *T.nilable(::Integer)* | :heavy_minus_sign: | The library section ID for filtering content. | 2 | +| `type` | [::PlexRubySDK::Operations::Type](../../models/operations/type.md) | :heavy_check_mark: | The type of media to retrieve or filter by.
1 = movie
2 = show
3 = season
4 = episode
E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
| 2 | +| `include_meta` | [T.nilable(::PlexRubySDK::Operations::IncludeMeta)](../../models/operations/includemeta.md) | :heavy_minus_sign: | Adds the Meta object to the response
| 1 | +| `x_plex_container_start` | *T.nilable(::Integer)* | :heavy_minus_sign: | The index of the first item to return. If not specified, the first item will be returned.
If the number of items exceeds the limit, the response will be paginated.
By default this is 0
| 0 | +| `x_plex_container_size` | *T.nilable(::Integer)* | :heavy_minus_sign: | The number of items to return. If not specified, all items will be returned.
If the number of items exceeds the limit, the response will be paginated.
By default this is 50
| 50 | \ No newline at end of file diff --git a/docs/models/operations/getsearchlibraryqueryparamtype.md b/docs/models/operations/getsearchlibraryqueryparamtype.md index 9173866..1331727 100644 --- a/docs/models/operations/getsearchlibraryqueryparamtype.md +++ b/docs/models/operations/getsearchlibraryqueryparamtype.md @@ -1,6 +1,6 @@ # GetSearchLibraryQueryParamType -The type of media to retrieve. +The type of media to retrieve or filter by. 1 = movie 2 = show 3 = season diff --git a/docs/models/operations/getsearchlibraryrequest.md b/docs/models/operations/getsearchlibraryrequest.md index 37495e7..7575c3e 100644 --- a/docs/models/operations/getsearchlibraryrequest.md +++ b/docs/models/operations/getsearchlibraryrequest.md @@ -3,7 +3,7 @@ ## Fields -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `section_key` | *::Integer* | :heavy_check_mark: | The unique key of the Plex library.
Note: This is unique in the context of the Plex server.
| 9518 | -| `type` | [::PlexRubySDK::Operations::GetSearchLibraryQueryParamType](../../models/operations/getsearchlibraryqueryparamtype.md) | :heavy_check_mark: | The type of media to retrieve.
1 = movie
2 = show
3 = season
4 = episode
E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
| 2 | \ No newline at end of file +| Field | Type | Required | Description | Example | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `section_key` | *::Integer* | :heavy_check_mark: | The unique key of the Plex library.
Note: This is unique in the context of the Plex server.
| 9518 | +| `type` | [::PlexRubySDK::Operations::GetSearchLibraryQueryParamType](../../models/operations/getsearchlibraryqueryparamtype.md) | :heavy_check_mark: | The type of media to retrieve or filter by.
1 = movie
2 = show
3 = season
4 = episode
E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
| 2 | \ No newline at end of file diff --git a/docs/models/operations/gettopwatchedcontentqueryparamtype.md b/docs/models/operations/gettopwatchedcontentqueryparamtype.md index 88163df..d8d7d45 100644 --- a/docs/models/operations/gettopwatchedcontentqueryparamtype.md +++ b/docs/models/operations/gettopwatchedcontentqueryparamtype.md @@ -1,6 +1,6 @@ # GetTopWatchedContentQueryParamType -The type of media to retrieve. +The type of media to retrieve or filter by. 1 = movie 2 = show 3 = season diff --git a/docs/models/operations/gettopwatchedcontentrequest.md b/docs/models/operations/gettopwatchedcontentrequest.md index 7dbd493..6eb4b5a 100644 --- a/docs/models/operations/gettopwatchedcontentrequest.md +++ b/docs/models/operations/gettopwatchedcontentrequest.md @@ -3,7 +3,7 @@ ## Fields -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `type` | [::PlexRubySDK::Operations::GetTopWatchedContentQueryParamType](../../models/operations/gettopwatchedcontentqueryparamtype.md) | :heavy_check_mark: | The type of media to retrieve.
1 = movie
2 = show
3 = season
4 = episode
E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
| 2 | -| `include_guids` | *T.nilable(::Integer)* | :heavy_minus_sign: | Adds the Guids object to the response
| 1 | \ No newline at end of file +| Field | Type | Required | Description | Example | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `type` | [::PlexRubySDK::Operations::GetTopWatchedContentQueryParamType](../../models/operations/gettopwatchedcontentqueryparamtype.md) | :heavy_check_mark: | The type of media to retrieve or filter by.
1 = movie
2 = show
3 = season
4 = episode
E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
| 2 | +| `include_guids` | *T.nilable(::Integer)* | :heavy_minus_sign: | Adds the Guids object to the response
| 1 | \ No newline at end of file diff --git a/docs/models/operations/guids.md b/docs/models/operations/guids.md index 72b93a3..39bcf18 100644 --- a/docs/models/operations/guids.md +++ b/docs/models/operations/guids.md @@ -3,6 +3,6 @@ ## Fields -| Field | Type | Required | Description | Example | -| --------------------- | --------------------- | --------------------- | --------------------- | --------------------- | -| `id` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | tvdb://2337 | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | +| `id` | *::String* | :heavy_check_mark: | The GUID value. | imdb://tt3032476 | \ No newline at end of file diff --git a/docs/models/operations/producer.md b/docs/models/operations/producer.md index da2efca..0fae2b4 100644 --- a/docs/models/operations/producer.md +++ b/docs/models/operations/producer.md @@ -5,8 +5,9 @@ | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -| `id` | *T.nilable(::Integer)* | :heavy_minus_sign: | N/A | 221 | -| `filter` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | producer=221 | -| `tag` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | Barry Mendel | -| `tag_key` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | 5d776826961905001eb90e2b | -| `thumb` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | https://metadata-static.plex.tv/8/people/87877371326a964634d18556d94547e1.jpg | \ No newline at end of file +| `id` | *::Integer* | :heavy_check_mark: | The unique role identifier. | 109501 | +| `filter` | *::String* | :heavy_check_mark: | The filter string for the role. | actor=109501 | +| `tag` | *::String* | :heavy_check_mark: | The actor's name. | Bob Odenkirk | +| `tag_key` | *::String* | :heavy_check_mark: | A key associated with the actor tag. | 5d77683254f42c001f8c3f69 | +| `role` | *T.nilable(::String)* | :heavy_minus_sign: | The character name or role. | Jimmy McGill | +| `thumb` | *T.nilable(::String)* | :heavy_minus_sign: | URL for the role thumbnail image. | https://metadata-static.plex.tv/f/people/f2ca7b474cc984efbdd5c503a096285a.jpg | \ No newline at end of file diff --git a/docs/models/operations/queryparamtype.md b/docs/models/operations/queryparamtype.md index 8839871..c6862dd 100644 --- a/docs/models/operations/queryparamtype.md +++ b/docs/models/operations/queryparamtype.md @@ -1,6 +1,6 @@ # QueryParamType -The type of media to retrieve. +The type of media to retrieve or filter by. 1 = movie 2 = show 3 = season diff --git a/docs/models/operations/rating.md b/docs/models/operations/rating.md new file mode 100644 index 0000000..3fc8b99 --- /dev/null +++ b/docs/models/operations/rating.md @@ -0,0 +1,10 @@ +# Rating + + +## Fields + +| Field | Type | Required | Description | Example | +| -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | +| `image` | *::String* | :heavy_check_mark: | The image or reference for the rating. | imdb://image.rating | +| `value` | *::Float* | :heavy_check_mark: | The rating value. | 9 | +| `type` | *::String* | :heavy_check_mark: | The type of rating (e.g., audience, critic). | audience | \ No newline at end of file diff --git a/docs/models/operations/ratings.md b/docs/models/operations/ratings.md deleted file mode 100644 index 229f0aa..0000000 --- a/docs/models/operations/ratings.md +++ /dev/null @@ -1,10 +0,0 @@ -# Ratings - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------- | ------------------------- | ------------------------- | ------------------------- | ------------------------- | -| `image` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | themoviedb://image.rating | -| `value` | *T.nilable(::Float)* | :heavy_minus_sign: | N/A | 7.4 | -| `type` | *T.nilable(::String)* | :heavy_minus_sign: | N/A | audience | \ No newline at end of file diff --git a/docs/models/operations/similar.md b/docs/models/operations/similar.md new file mode 100644 index 0000000..bb26540 --- /dev/null +++ b/docs/models/operations/similar.md @@ -0,0 +1,10 @@ +# Similar + + +## Fields + +| Field | Type | Required | Description | Example | +| ---------------------------------------- | ---------------------------------------- | ---------------------------------------- | ---------------------------------------- | ---------------------------------------- | +| `id` | *::Integer* | :heavy_check_mark: | The unique similar item identifier. | 26 | +| `filter` | *::String* | :heavy_check_mark: | The filter string for similar items. | similar=26 | +| `tag` | *::String* | :heavy_check_mark: | The tag or title of the similar content. | Breaking Bad | \ No newline at end of file diff --git a/docs/models/operations/type.md b/docs/models/operations/type.md index de77210..e750bc8 100644 --- a/docs/models/operations/type.md +++ b/docs/models/operations/type.md @@ -1,6 +1,6 @@ # Type -The type of media to retrieve. +The type of media to retrieve or filter by. 1 = movie 2 = show 3 = season diff --git a/docs/sdks/library/README.md b/docs/sdks/library/README.md index ce33358..7ac7643 100644 --- a/docs/sdks/library/README.md +++ b/docs/sdks/library/README.md @@ -18,8 +18,9 @@ API Calls interacting with Plex Media Server Libraries * [get_search_library](#get_search_library) - Search Library * [get_genres_library](#get_genres_library) - Get Genres of library media * [get_countries_library](#get_countries_library) - Get Countries of library media +* [get_actors_library](#get_actors_library) - Get Actors of library media * [get_search_all_libraries](#get_search_all_libraries) - Search All Libraries -* [get_meta_data_by_rating_key](#get_meta_data_by_rating_key) - Get Metadata by RatingKey +* [get_media_meta_data](#get_media_meta_data) - Get Media Metadata * [get_metadata_children](#get_metadata_children) - Get Items Children * [get_top_watched_content](#get_top_watched_content) - Get Top Watched Content * [get_on_deck](#get_on_deck) - Get On Deck @@ -434,10 +435,10 @@ end ### Parameters -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `section_key` | *::Integer* | :heavy_check_mark: | The unique key of the Plex library.
Note: This is unique in the context of the Plex server.
| 9518 | -| `type` | [::PlexRubySDK::Operations::GetSearchLibraryQueryParamType](../../models/operations/getsearchlibraryqueryparamtype.md) | :heavy_check_mark: | The type of media to retrieve.
1 = movie
2 = show
3 = season
4 = episode
E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
| 2 | +| Parameter | Type | Required | Description | Example | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `section_key` | *::Integer* | :heavy_check_mark: | The unique key of the Plex library.
Note: This is unique in the context of the Plex server.
| 9518 | +| `type` | [::PlexRubySDK::Operations::GetSearchLibraryQueryParamType](../../models/operations/getsearchlibraryqueryparamtype.md) | :heavy_check_mark: | The type of media to retrieve or filter by.
1 = movie
2 = show
3 = season
4 = episode
E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
| 2 | ### Response @@ -464,7 +465,7 @@ s.config_security( ) -res = s.library.get_genres_library(section_key=9518) +res = s.library.get_genres_library(section_key=9518, type=::PlexRubySDK::Operations::GetGenresLibraryQueryParamType::TV_SHOW) if ! res.object.nil? # handle response @@ -474,9 +475,10 @@ end ### Parameters -| Parameter | Type | Required | Description | Example | -| --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | -| `section_key` | *::Integer* | :heavy_check_mark: | The unique key of the Plex library.
Note: This is unique in the context of the Plex server.
| 9518 | +| Parameter | Type | Required | Description | Example | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `section_key` | *::Integer* | :heavy_check_mark: | The unique key of the Plex library.
Note: This is unique in the context of the Plex server.
| 9518 | +| `type` | [::PlexRubySDK::Operations::GetGenresLibraryQueryParamType](../../models/operations/getgenreslibraryqueryparamtype.md) | :heavy_check_mark: | The type of media to retrieve or filter by.
1 = movie
2 = show
3 = season
4 = episode
E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
| 2 | ### Response @@ -503,7 +505,7 @@ s.config_security( ) -res = s.library.get_countries_library(section_key=9518) +res = s.library.get_countries_library(section_key=9518, type=::PlexRubySDK::Operations::GetCountriesLibraryQueryParamType::TV_SHOW) if ! res.object.nil? # handle response @@ -513,9 +515,10 @@ end ### Parameters -| Parameter | Type | Required | Description | Example | -| --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | -| `section_key` | *::Integer* | :heavy_check_mark: | The unique key of the Plex library.
Note: This is unique in the context of the Plex server.
| 9518 | +| Parameter | Type | Required | Description | Example | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `section_key` | *::Integer* | :heavy_check_mark: | The unique key of the Plex library.
Note: This is unique in the context of the Plex server.
| 9518 | +| `type` | [::PlexRubySDK::Operations::GetCountriesLibraryQueryParamType](../../models/operations/getcountrieslibraryqueryparamtype.md) | :heavy_check_mark: | The type of media to retrieve or filter by.
1 = movie
2 = show
3 = season
4 = episode
E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
| 2 | ### Response @@ -523,6 +526,46 @@ end +## get_actors_library + +Retrieves a list of all the actors that are found for the media in this library. + + +### Example Usage + +```ruby +require 'plex_ruby_sdk' + + +s = ::PlexRubySDK::PlexAPI.new +s.config_security( + ::PlexRubySDK::Shared::Security.new( + access_token: "", + ) +) + + +res = s.library.get_actors_library(section_key=9518, type=::PlexRubySDK::Operations::GetActorsLibraryQueryParamType::TV_SHOW) + +if ! res.object.nil? + # handle response +end + +``` + +### Parameters + +| Parameter | Type | Required | Description | Example | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `section_key` | *::Integer* | :heavy_check_mark: | The unique key of the Plex library.
Note: This is unique in the context of the Plex server.
| 9518 | +| `type` | [::PlexRubySDK::Operations::GetActorsLibraryQueryParamType](../../models/operations/getactorslibraryqueryparamtype.md) | :heavy_check_mark: | The type of media to retrieve or filter by.
1 = movie
2 = show
3 = season
4 = episode
E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
| 2 | + +### Response + +**[T.nilable(::PlexRubySDK::Operations::GetActorsLibraryResponse)](../../models/operations/getactorslibraryresponse.md)** + + + ## get_search_all_libraries Search the provided query across all library sections, or a single section, and return matches as hubs, split up by type. @@ -572,9 +615,9 @@ end -## get_meta_data_by_rating_key +## get_media_meta_data -This endpoint will return the metadata of a library item specified with the ratingKey. +This endpoint will return all the (meta)data of a library item specified with by the ratingKey. ### Example Usage @@ -590,8 +633,25 @@ s.config_security( ) ) + +req = ::PlexRubySDK::Operations::GetMediaMetaDataRequest.new( + rating_key: 9518, + include_concerts: true, + include_extras: true, + include_on_deck: true, + include_popular_leaves: true, + include_preferences: true, + include_reviews: true, + include_chapters: true, + include_stations: true, + include_external_media: true, + async_augment_metadata: true, + async_check_files: true, + async_refresh_analysis: true, + async_refresh_local_media_agent: true, +) -res = s.library.get_meta_data_by_rating_key(rating_key=9518) +res = s.library.get_media_meta_data(req) if ! res.object.nil? # handle response @@ -601,13 +661,13 @@ end ### Parameters -| Parameter | Type | Required | Description | Example | -| ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | -| `rating_key` | *::Integer* | :heavy_check_mark: | the id of the library item to return the children of. | 9518 | +| Parameter | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | +| `request` | [::PlexRubySDK::Operations::GetMediaMetaDataRequest](../../models/operations/getmediametadatarequest.md) | :heavy_check_mark: | The request object to use for the request. | ### Response -**[T.nilable(::PlexRubySDK::Operations::GetMetaDataByRatingKeyResponse)](../../models/operations/getmetadatabyratingkeyresponse.md)** +**[T.nilable(::PlexRubySDK::Operations::GetMediaMetaDataResponse)](../../models/operations/getmediametadataresponse.md)** @@ -680,10 +740,10 @@ end ### Parameters -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `type` | [::PlexRubySDK::Operations::GetTopWatchedContentQueryParamType](../../models/operations/gettopwatchedcontentqueryparamtype.md) | :heavy_check_mark: | The type of media to retrieve.
1 = movie
2 = show
3 = season
4 = episode
E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
| 2 | -| `include_guids` | *T.nilable(::Integer)* | :heavy_minus_sign: | Adds the Guids object to the response
| 1 | +| Parameter | Type | Required | Description | Example | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `type` | [::PlexRubySDK::Operations::GetTopWatchedContentQueryParamType](../../models/operations/gettopwatchedcontentqueryparamtype.md) | :heavy_check_mark: | The type of media to retrieve or filter by.
1 = movie
2 = show
3 = season
4 = episode
E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
| 2 | +| `include_guids` | *T.nilable(::Integer)* | :heavy_minus_sign: | Adds the Guids object to the response
| 1 | ### Response diff --git a/docs/sdks/playlists/README.md b/docs/sdks/playlists/README.md index abc03a7..569ac9f 100644 --- a/docs/sdks/playlists/README.md +++ b/docs/sdks/playlists/README.md @@ -260,10 +260,10 @@ end ### Parameters -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `playlist_id` | *::Float* | :heavy_check_mark: | the ID of the playlist | | -| `type` | [::PlexRubySDK::Operations::GetPlaylistContentsQueryParamType](../../models/operations/getplaylistcontentsqueryparamtype.md) | :heavy_check_mark: | The type of media to retrieve.
1 = movie
2 = show
3 = season
4 = episode
E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
| 2 | +| Parameter | Type | Required | Description | Example | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `playlist_id` | *::Float* | :heavy_check_mark: | the ID of the playlist | | +| `type` | [::PlexRubySDK::Operations::GetPlaylistContentsQueryParamType](../../models/operations/getplaylistcontentsqueryparamtype.md) | :heavy_check_mark: | The type of media to retrieve or filter by.
1 = movie
2 = show
3 = season
4 = episode
E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
| 2 | ### Response diff --git a/lib/plex_ruby_sdk/library.rb b/lib/plex_ruby_sdk/library.rb index 4b33945..adcc2c3 100644 --- a/lib/plex_ruby_sdk/library.rb +++ b/lib/plex_ruby_sdk/library.rb @@ -491,14 +491,15 @@ module PlexRubySDK end - sig { params(section_key: ::Integer).returns(::PlexRubySDK::Operations::GetGenresLibraryResponse) } - def get_genres_library(section_key) + sig { params(section_key: ::Integer, type: ::PlexRubySDK::Operations::GetGenresLibraryQueryParamType).returns(::PlexRubySDK::Operations::GetGenresLibraryResponse) } + def get_genres_library(section_key, type) # get_genres_library - Get Genres of library media # Retrieves a list of all the genres that are found for the media in this library. # request = ::PlexRubySDK::Operations::GetGenresLibraryRequest.new( - section_key: section_key + section_key: section_key, + type: type ) url, params = @sdk_configuration.get_server_details base_url = Utils.template_url(url, params) @@ -509,11 +510,13 @@ module PlexRubySDK request ) headers = {} + query_params = Utils.get_query_params(::PlexRubySDK::Operations::GetGenresLibraryRequest, request) headers['Accept'] = 'application/json' headers['user-agent'] = @sdk_configuration.user_agent r = @sdk_configuration.client.get(url) do |req| req.headers = headers + req.params = query_params Utils.configure_request_security(req, @sdk_configuration.security) if !@sdk_configuration.nil? && !@sdk_configuration.security.nil? end @@ -544,14 +547,15 @@ module PlexRubySDK end - sig { params(section_key: ::Integer).returns(::PlexRubySDK::Operations::GetCountriesLibraryResponse) } - def get_countries_library(section_key) + sig { params(section_key: ::Integer, type: ::PlexRubySDK::Operations::GetCountriesLibraryQueryParamType).returns(::PlexRubySDK::Operations::GetCountriesLibraryResponse) } + def get_countries_library(section_key, type) # get_countries_library - Get Countries of library media # Retrieves a list of all the countries that are found for the media in this library. # request = ::PlexRubySDK::Operations::GetCountriesLibraryRequest.new( - section_key: section_key + section_key: section_key, + type: type ) url, params = @sdk_configuration.get_server_details base_url = Utils.template_url(url, params) @@ -562,11 +566,13 @@ module PlexRubySDK request ) headers = {} + query_params = Utils.get_query_params(::PlexRubySDK::Operations::GetCountriesLibraryRequest, request) headers['Accept'] = 'application/json' headers['user-agent'] = @sdk_configuration.user_agent r = @sdk_configuration.client.get(url) do |req| req.headers = headers + req.params = query_params Utils.configure_request_security(req, @sdk_configuration.security) if !@sdk_configuration.nil? && !@sdk_configuration.security.nil? end @@ -597,6 +603,62 @@ module PlexRubySDK end + sig { params(section_key: ::Integer, type: ::PlexRubySDK::Operations::GetActorsLibraryQueryParamType).returns(::PlexRubySDK::Operations::GetActorsLibraryResponse) } + def get_actors_library(section_key, type) + # get_actors_library - Get Actors of library media + # Retrieves a list of all the actors that are found for the media in this library. + # + request = ::PlexRubySDK::Operations::GetActorsLibraryRequest.new( + + section_key: section_key, + type: type + ) + url, params = @sdk_configuration.get_server_details + base_url = Utils.template_url(url, params) + url = Utils.generate_url( + ::PlexRubySDK::Operations::GetActorsLibraryRequest, + base_url, + '/library/sections/{sectionKey}/actor', + request + ) + headers = {} + query_params = Utils.get_query_params(::PlexRubySDK::Operations::GetActorsLibraryRequest, request) + headers['Accept'] = 'application/json' + headers['user-agent'] = @sdk_configuration.user_agent + + r = @sdk_configuration.client.get(url) do |req| + req.headers = headers + req.params = query_params + Utils.configure_request_security(req, @sdk_configuration.security) if !@sdk_configuration.nil? && !@sdk_configuration.security.nil? + end + + content_type = r.headers.fetch('Content-Type', 'application/octet-stream') + + res = ::PlexRubySDK::Operations::GetActorsLibraryResponse.new( + status_code: r.status, content_type: content_type, raw_response: r + ) + if r.status == 200 + if Utils.match_content_type(content_type, 'application/json') + out = Utils.unmarshal_complex(r.env.response_body, ::PlexRubySDK::Operations::GetActorsLibraryResponseBody) + res.object = out + end + elsif r.status == 400 + if Utils.match_content_type(content_type, 'application/json') + out = Utils.unmarshal_complex(r.env.response_body, ::PlexRubySDK::Operations::GetActorsLibraryBadRequest) + res.bad_request = out + end + elsif r.status == 401 + if Utils.match_content_type(content_type, 'application/json') + out = Utils.unmarshal_complex(r.env.response_body, ::PlexRubySDK::Operations::GetActorsLibraryUnauthorized) + res.unauthorized = out + end + elsif r.status == 404 + end + + res + end + + sig { params(request: T.nilable(::PlexRubySDK::Operations::GetSearchAllLibrariesRequest)).returns(::PlexRubySDK::Operations::GetSearchAllLibrariesResponse) } def get_search_all_libraries(request) # get_search_all_libraries - Search All Libraries @@ -642,52 +704,51 @@ module PlexRubySDK end - sig { params(rating_key: ::Integer).returns(::PlexRubySDK::Operations::GetMetaDataByRatingKeyResponse) } - def get_meta_data_by_rating_key(rating_key) - # get_meta_data_by_rating_key - Get Metadata by RatingKey - # This endpoint will return the metadata of a library item specified with the ratingKey. + sig { params(request: T.nilable(::PlexRubySDK::Operations::GetMediaMetaDataRequest)).returns(::PlexRubySDK::Operations::GetMediaMetaDataResponse) } + def get_media_meta_data(request) + # get_media_meta_data - Get Media Metadata + # This endpoint will return all the (meta)data of a library item specified with by the ratingKey. # - request = ::PlexRubySDK::Operations::GetMetaDataByRatingKeyRequest.new( - - rating_key: rating_key - ) url, params = @sdk_configuration.get_server_details base_url = Utils.template_url(url, params) url = Utils.generate_url( - ::PlexRubySDK::Operations::GetMetaDataByRatingKeyRequest, + ::PlexRubySDK::Operations::GetMediaMetaDataRequest, base_url, '/library/metadata/{ratingKey}', request ) headers = {} + query_params = Utils.get_query_params(::PlexRubySDK::Operations::GetMediaMetaDataRequest, request) headers['Accept'] = 'application/json' headers['user-agent'] = @sdk_configuration.user_agent r = @sdk_configuration.client.get(url) do |req| req.headers = headers + req.params = query_params Utils.configure_request_security(req, @sdk_configuration.security) if !@sdk_configuration.nil? && !@sdk_configuration.security.nil? end content_type = r.headers.fetch('Content-Type', 'application/octet-stream') - res = ::PlexRubySDK::Operations::GetMetaDataByRatingKeyResponse.new( + res = ::PlexRubySDK::Operations::GetMediaMetaDataResponse.new( status_code: r.status, content_type: content_type, raw_response: r ) if r.status == 200 if Utils.match_content_type(content_type, 'application/json') - out = Utils.unmarshal_complex(r.env.response_body, ::PlexRubySDK::Operations::GetMetaDataByRatingKeyResponseBody) + out = Utils.unmarshal_complex(r.env.response_body, ::PlexRubySDK::Operations::GetMediaMetaDataResponseBody) res.object = out end elsif r.status == 400 if Utils.match_content_type(content_type, 'application/json') - out = Utils.unmarshal_complex(r.env.response_body, ::PlexRubySDK::Operations::GetMetaDataByRatingKeyBadRequest) + out = Utils.unmarshal_complex(r.env.response_body, ::PlexRubySDK::Operations::GetMediaMetaDataBadRequest) res.bad_request = out end elsif r.status == 401 if Utils.match_content_type(content_type, 'application/json') - out = Utils.unmarshal_complex(r.env.response_body, ::PlexRubySDK::Operations::GetMetaDataByRatingKeyUnauthorized) + out = Utils.unmarshal_complex(r.env.response_body, ::PlexRubySDK::Operations::GetMediaMetaDataUnauthorized) res.unauthorized = out end + elsif r.status == 404 end res diff --git a/lib/plex_ruby_sdk/models/operations.rb b/lib/plex_ruby_sdk/models/operations.rb index 882237e..eafd56e 100644 --- a/lib/plex_ruby_sdk/models/operations.rb +++ b/lib/plex_ruby_sdk/models/operations.rb @@ -448,6 +448,7 @@ module PlexRubySDK autoload :GetSearchLibraryMediaContainer, 'plex_ruby_sdk/models/operations/get_search_library_mediacontainer.rb' autoload :GetSearchLibraryResponseBody, 'plex_ruby_sdk/models/operations/get_search_library_responsebody.rb' autoload :GetSearchLibraryResponse, 'plex_ruby_sdk/models/operations/get_search_library_response.rb' + autoload :GetGenresLibraryQueryParamType, 'plex_ruby_sdk/models/operations/get_genres_library_queryparam_type.rb' autoload :GetGenresLibraryRequest, 'plex_ruby_sdk/models/operations/get_genres_library_request.rb' autoload :GetGenresLibraryLibraryErrors, 'plex_ruby_sdk/models/operations/get_genres_library_library_errors.rb' autoload :GetGenresLibraryUnauthorized, 'plex_ruby_sdk/models/operations/get_genres_library_unauthorized.rb' @@ -457,6 +458,7 @@ module PlexRubySDK autoload :GetGenresLibraryMediaContainer, 'plex_ruby_sdk/models/operations/get_genres_library_mediacontainer.rb' autoload :GetGenresLibraryResponseBody, 'plex_ruby_sdk/models/operations/get_genres_library_responsebody.rb' autoload :GetGenresLibraryResponse, 'plex_ruby_sdk/models/operations/get_genres_library_response.rb' + autoload :GetCountriesLibraryQueryParamType, 'plex_ruby_sdk/models/operations/get_countries_library_queryparam_type.rb' autoload :GetCountriesLibraryRequest, 'plex_ruby_sdk/models/operations/get_countries_library_request.rb' autoload :GetCountriesLibraryLibraryErrors, 'plex_ruby_sdk/models/operations/get_countries_library_library_errors.rb' autoload :GetCountriesLibraryUnauthorized, 'plex_ruby_sdk/models/operations/get_countries_library_unauthorized.rb' @@ -466,6 +468,16 @@ module PlexRubySDK autoload :GetCountriesLibraryMediaContainer, 'plex_ruby_sdk/models/operations/get_countries_library_mediacontainer.rb' autoload :GetCountriesLibraryResponseBody, 'plex_ruby_sdk/models/operations/get_countries_library_responsebody.rb' autoload :GetCountriesLibraryResponse, 'plex_ruby_sdk/models/operations/get_countries_library_response.rb' + autoload :GetActorsLibraryQueryParamType, 'plex_ruby_sdk/models/operations/get_actors_library_queryparam_type.rb' + autoload :GetActorsLibraryRequest, 'plex_ruby_sdk/models/operations/get_actors_library_request.rb' + autoload :GetActorsLibraryLibraryErrors, 'plex_ruby_sdk/models/operations/get_actors_library_library_errors.rb' + autoload :GetActorsLibraryUnauthorized, 'plex_ruby_sdk/models/operations/get_actors_library_unauthorized.rb' + autoload :GetActorsLibraryErrors, 'plex_ruby_sdk/models/operations/get_actors_library_errors.rb' + autoload :GetActorsLibraryBadRequest, 'plex_ruby_sdk/models/operations/get_actors_library_badrequest.rb' + autoload :GetActorsLibraryDirectory, 'plex_ruby_sdk/models/operations/get_actors_library_directory.rb' + autoload :GetActorsLibraryMediaContainer, 'plex_ruby_sdk/models/operations/get_actors_library_mediacontainer.rb' + autoload :GetActorsLibraryResponseBody, 'plex_ruby_sdk/models/operations/get_actors_library_responsebody.rb' + autoload :GetActorsLibraryResponse, 'plex_ruby_sdk/models/operations/get_actors_library_response.rb' autoload :SearchTypes, 'plex_ruby_sdk/models/operations/searchtypes.rb' autoload :QueryParamIncludeCollections, 'plex_ruby_sdk/models/operations/queryparam_includecollections.rb' autoload :QueryParamIncludeExternalMedia, 'plex_ruby_sdk/models/operations/queryparam_includeexternalmedia.rb' @@ -501,26 +513,30 @@ module PlexRubySDK autoload :GetSearchAllLibrariesMediaContainer, 'plex_ruby_sdk/models/operations/get_search_all_libraries_mediacontainer.rb' autoload :GetSearchAllLibrariesResponseBody, 'plex_ruby_sdk/models/operations/get_search_all_libraries_responsebody.rb' autoload :GetSearchAllLibrariesResponse, 'plex_ruby_sdk/models/operations/get_search_all_libraries_response.rb' - autoload :GetMetaDataByRatingKeyRequest, 'plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_request.rb' - autoload :GetMetaDataByRatingKeyLibraryErrors, 'plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_library_errors.rb' - autoload :GetMetaDataByRatingKeyUnauthorized, 'plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_unauthorized.rb' - autoload :GetMetaDataByRatingKeyErrors, 'plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_errors.rb' - autoload :GetMetaDataByRatingKeyBadRequest, 'plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_badrequest.rb' - autoload :GetMetaDataByRatingKeyStream, 'plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_stream.rb' - autoload :GetMetaDataByRatingKeyPart, 'plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_part.rb' - autoload :GetMetaDataByRatingKeyMedia, 'plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_media.rb' - autoload :GetMetaDataByRatingKeyGenre, 'plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_genre.rb' - autoload :GetMetaDataByRatingKeyCountry, 'plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_country.rb' + autoload :GetMediaMetaDataRequest, 'plex_ruby_sdk/models/operations/get_media_meta_data_request.rb' + autoload :GetMediaMetaDataLibraryErrors, 'plex_ruby_sdk/models/operations/get_media_meta_data_library_errors.rb' + autoload :GetMediaMetaDataUnauthorized, 'plex_ruby_sdk/models/operations/get_media_meta_data_unauthorized.rb' + autoload :GetMediaMetaDataErrors, 'plex_ruby_sdk/models/operations/get_media_meta_data_errors.rb' + autoload :GetMediaMetaDataBadRequest, 'plex_ruby_sdk/models/operations/get_media_meta_data_badrequest.rb' + autoload :GetMediaMetaDataStream, 'plex_ruby_sdk/models/operations/get_media_meta_data_stream.rb' + autoload :GetMediaMetaDataPart, 'plex_ruby_sdk/models/operations/get_media_meta_data_part.rb' + autoload :GetMediaMetaDataMedia, 'plex_ruby_sdk/models/operations/get_media_meta_data_media.rb' + autoload :GetMediaMetaDataImage, 'plex_ruby_sdk/models/operations/get_media_meta_data_image.rb' + autoload :GetMediaMetaDataUltraBlurColors, 'plex_ruby_sdk/models/operations/get_media_meta_data_ultrablurcolors.rb' + autoload :GetMediaMetaDataGenre, 'plex_ruby_sdk/models/operations/get_media_meta_data_genre.rb' + autoload :GetMediaMetaDataCountry, 'plex_ruby_sdk/models/operations/get_media_meta_data_country.rb' autoload :Guids, 'plex_ruby_sdk/models/operations/guids.rb' - autoload :Ratings, 'plex_ruby_sdk/models/operations/ratings.rb' - autoload :GetMetaDataByRatingKeyDirector, 'plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_director.rb' - autoload :GetMetaDataByRatingKeyWriter, 'plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_writer.rb' - autoload :GetMetaDataByRatingKeyRole, 'plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_role.rb' + autoload :Rating, 'plex_ruby_sdk/models/operations/rating.rb' + autoload :GetMediaMetaDataRole, 'plex_ruby_sdk/models/operations/get_media_meta_data_role.rb' + autoload :GetMediaMetaDataDirector, 'plex_ruby_sdk/models/operations/get_media_meta_data_director.rb' + autoload :GetMediaMetaDataWriter, 'plex_ruby_sdk/models/operations/get_media_meta_data_writer.rb' autoload :Producer, 'plex_ruby_sdk/models/operations/producer.rb' - autoload :GetMetaDataByRatingKeyMetadata, 'plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_metadata.rb' - autoload :GetMetaDataByRatingKeyMediaContainer, 'plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_mediacontainer.rb' - autoload :GetMetaDataByRatingKeyResponseBody, 'plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_responsebody.rb' - autoload :GetMetaDataByRatingKeyResponse, 'plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_response.rb' + autoload :Similar, 'plex_ruby_sdk/models/operations/similar.rb' + autoload :GetMediaMetaDataLocation, 'plex_ruby_sdk/models/operations/get_media_meta_data_location.rb' + autoload :GetMediaMetaDataMetadata, 'plex_ruby_sdk/models/operations/get_media_meta_data_metadata.rb' + autoload :GetMediaMetaDataMediaContainer, 'plex_ruby_sdk/models/operations/get_media_meta_data_mediacontainer.rb' + autoload :GetMediaMetaDataResponseBody, 'plex_ruby_sdk/models/operations/get_media_meta_data_responsebody.rb' + autoload :GetMediaMetaDataResponse, 'plex_ruby_sdk/models/operations/get_media_meta_data_response.rb' autoload :GetMetadataChildrenRequest, 'plex_ruby_sdk/models/operations/getmetadatachildren_request.rb' autoload :GetMetadataChildrenLibraryErrors, 'plex_ruby_sdk/models/operations/getmetadatachildren_library_errors.rb' autoload :GetMetadataChildrenUnauthorized, 'plex_ruby_sdk/models/operations/getmetadatachildren_unauthorized.rb' diff --git a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_badrequest.rb b/lib/plex_ruby_sdk/models/operations/get_actors_library_badrequest.rb similarity index 66% rename from lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_badrequest.rb rename to lib/plex_ruby_sdk/models/operations/get_actors_library_badrequest.rb index 42314d1..fdf8050 100644 --- a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_badrequest.rb +++ b/lib/plex_ruby_sdk/models/operations/get_actors_library_badrequest.rb @@ -8,14 +8,14 @@ module PlexRubySDK module Operations # Bad Request - A parameter was not specified, or was specified incorrectly. - class GetMetaDataByRatingKeyBadRequest < ::PlexRubySDK::Utils::FieldAugmented + class GetActorsLibraryBadRequest < ::PlexRubySDK::Utils::FieldAugmented extend T::Sig - field :errors, T.nilable(T::Array[::PlexRubySDK::Operations::GetMetaDataByRatingKeyErrors]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('errors') } } + field :errors, T.nilable(T::Array[::PlexRubySDK::Operations::GetActorsLibraryErrors]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('errors') } } - sig { params(errors: T.nilable(T::Array[::PlexRubySDK::Operations::GetMetaDataByRatingKeyErrors])).void } + sig { params(errors: T.nilable(T::Array[::PlexRubySDK::Operations::GetActorsLibraryErrors])).void } def initialize(errors: nil) @errors = errors end diff --git a/lib/plex_ruby_sdk/models/operations/get_actors_library_directory.rb b/lib/plex_ruby_sdk/models/operations/get_actors_library_directory.rb new file mode 100644 index 0000000..001c614 --- /dev/null +++ b/lib/plex_ruby_sdk/models/operations/get_actors_library_directory.rb @@ -0,0 +1,33 @@ +# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +# typed: true +# frozen_string_literal: true + + +module PlexRubySDK + module Operations + + + class GetActorsLibraryDirectory < ::PlexRubySDK::Utils::FieldAugmented + extend T::Sig + + # A fast lookup key for the actor relative url. + field :fast_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('fastKey') } } + # A unique key representing the actor. + field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } } + # URL for the thumbnail image of the actor. + field :thumb, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } } + # The name of the actor. + field :title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } } + + + sig { params(fast_key: ::String, key: ::String, thumb: ::String, title: ::String).void } + def initialize(fast_key: nil, key: nil, thumb: nil, title: nil) + @fast_key = fast_key + @key = key + @thumb = thumb + @title = title + end + end + end +end diff --git a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_errors.rb b/lib/plex_ruby_sdk/models/operations/get_actors_library_errors.rb similarity index 91% rename from lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_errors.rb rename to lib/plex_ruby_sdk/models/operations/get_actors_library_errors.rb index e05fac0..035eef5 100644 --- a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_errors.rb +++ b/lib/plex_ruby_sdk/models/operations/get_actors_library_errors.rb @@ -8,7 +8,7 @@ module PlexRubySDK module Operations - class GetMetaDataByRatingKeyErrors < ::PlexRubySDK::Utils::FieldAugmented + class GetActorsLibraryErrors < ::PlexRubySDK::Utils::FieldAugmented extend T::Sig diff --git a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_library_errors.rb b/lib/plex_ruby_sdk/models/operations/get_actors_library_library_errors.rb similarity index 90% rename from lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_library_errors.rb rename to lib/plex_ruby_sdk/models/operations/get_actors_library_library_errors.rb index 9dfd6d7..62bab2d 100644 --- a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_library_errors.rb +++ b/lib/plex_ruby_sdk/models/operations/get_actors_library_library_errors.rb @@ -8,7 +8,7 @@ module PlexRubySDK module Operations - class GetMetaDataByRatingKeyLibraryErrors < ::PlexRubySDK::Utils::FieldAugmented + class GetActorsLibraryLibraryErrors < ::PlexRubySDK::Utils::FieldAugmented extend T::Sig diff --git a/lib/plex_ruby_sdk/models/operations/get_actors_library_mediacontainer.rb b/lib/plex_ruby_sdk/models/operations/get_actors_library_mediacontainer.rb new file mode 100644 index 0000000..e6e7f13 --- /dev/null +++ b/lib/plex_ruby_sdk/models/operations/get_actors_library_mediacontainer.rb @@ -0,0 +1,60 @@ +# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +# typed: true +# frozen_string_literal: true + + +module PlexRubySDK + module Operations + + + class GetActorsLibraryMediaContainer < ::PlexRubySDK::Utils::FieldAugmented + extend T::Sig + + # Indicates whether syncing is allowed. + field :allow_sync, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('allowSync') } } + # URL for the background artwork of the media container. + field :art, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('art') } } + # An plugin identifier for the media container. + field :identifier, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('identifier') } } + # The prefix used for media tag resource paths. + field :media_tag_prefix, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagPrefix') } } + # The version number for media tags. + field :media_tag_version, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagVersion') } } + # Specifies whether caching is disabled. + field :nocache, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('nocache') } } + + field :size, ::Float, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } } + # URL for the thumbnail image of the media container. + field :thumb, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } } + # The primary title of the media container. + field :title1, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title1') } } + # The secondary title of the media container. + field :title2, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title2') } } + # Identifier for the view group layout. + field :view_group, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewGroup') } } + # Identifier for the view mode. + field :view_mode, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewMode') } } + # An array of actor entries for media items. + field :directory, T.nilable(T::Array[::PlexRubySDK::Operations::GetActorsLibraryDirectory]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Directory') } } + + + sig { params(allow_sync: T::Boolean, art: ::String, identifier: ::String, media_tag_prefix: ::String, media_tag_version: ::Integer, nocache: T::Boolean, size: ::Float, thumb: ::String, title1: ::String, title2: ::String, view_group: ::String, view_mode: ::String, directory: T.nilable(T::Array[::PlexRubySDK::Operations::GetActorsLibraryDirectory])).void } + def initialize(allow_sync: nil, art: nil, identifier: nil, media_tag_prefix: nil, media_tag_version: nil, nocache: nil, size: nil, thumb: nil, title1: nil, title2: nil, view_group: nil, view_mode: nil, directory: nil) + @allow_sync = allow_sync + @art = art + @identifier = identifier + @media_tag_prefix = media_tag_prefix + @media_tag_version = media_tag_version + @nocache = nocache + @size = size + @thumb = thumb + @title1 = title1 + @title2 = title2 + @view_group = view_group + @view_mode = view_mode + @directory = directory + end + end + end +end diff --git a/lib/plex_ruby_sdk/models/operations/get_actors_library_queryparam_type.rb b/lib/plex_ruby_sdk/models/operations/get_actors_library_queryparam_type.rb new file mode 100644 index 0000000..4ee2d45 --- /dev/null +++ b/lib/plex_ruby_sdk/models/operations/get_actors_library_queryparam_type.rb @@ -0,0 +1,29 @@ +# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +# typed: true +# frozen_string_literal: true + + +module PlexRubySDK + module Operations + + # GetActorsLibraryQueryParamType - The type of media to retrieve or filter by. + # 1 = movie + # 2 = show + # 3 = season + # 4 = episode + # E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries + # + class GetActorsLibraryQueryParamType < T::Enum + enums do + MOVIE = new(1) + TV_SHOW = new(2) + SEASON = new(3) + EPISODE = new(4) + AUDIO = new(8) + ALBUM = new(9) + TRACK = new(10) + end + end + end +end diff --git a/lib/plex_ruby_sdk/models/operations/get_actors_library_request.rb b/lib/plex_ruby_sdk/models/operations/get_actors_library_request.rb new file mode 100644 index 0000000..a5df202 --- /dev/null +++ b/lib/plex_ruby_sdk/models/operations/get_actors_library_request.rb @@ -0,0 +1,35 @@ +# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +# typed: true +# frozen_string_literal: true + + +module PlexRubySDK + module Operations + + + class GetActorsLibraryRequest < ::PlexRubySDK::Utils::FieldAugmented + extend T::Sig + + # The unique key of the Plex library. + # Note: This is unique in the context of the Plex server. + # + field :section_key, ::Integer, { 'path_param': { 'field_name': 'sectionKey', 'style': 'simple', 'explode': false } } + # The type of media to retrieve or filter by. + # 1 = movie + # 2 = show + # 3 = season + # 4 = episode + # E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries + # + field :type, ::PlexRubySDK::Operations::GetActorsLibraryQueryParamType, { 'query_param': { 'field_name': 'type', 'style': 'form', 'explode': true } } + + + sig { params(section_key: ::Integer, type: ::PlexRubySDK::Operations::GetActorsLibraryQueryParamType).void } + def initialize(section_key: nil, type: nil) + @section_key = section_key + @type = type + end + end + end +end diff --git a/lib/plex_ruby_sdk/models/operations/get_actors_library_response.rb b/lib/plex_ruby_sdk/models/operations/get_actors_library_response.rb new file mode 100644 index 0000000..e7d1d93 --- /dev/null +++ b/lib/plex_ruby_sdk/models/operations/get_actors_library_response.rb @@ -0,0 +1,39 @@ +# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +# typed: true +# frozen_string_literal: true + + +module PlexRubySDK + module Operations + + + class GetActorsLibraryResponse < ::PlexRubySDK::Utils::FieldAugmented + extend T::Sig + + # HTTP response content type for this operation + field :content_type, ::String + # Raw HTTP response; suitable for custom response parsing + field :raw_response, ::Faraday::Response + # HTTP response status code for this operation + field :status_code, ::Integer + # Bad Request - A parameter was not specified, or was specified incorrectly. + field :bad_request, T.nilable(::PlexRubySDK::Operations::GetActorsLibraryBadRequest) + # Successful response containing media container data. + field :object, T.nilable(::PlexRubySDK::Operations::GetActorsLibraryResponseBody) + # Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + field :unauthorized, T.nilable(::PlexRubySDK::Operations::GetActorsLibraryUnauthorized) + + + sig { params(content_type: ::String, raw_response: ::Faraday::Response, status_code: ::Integer, bad_request: T.nilable(::PlexRubySDK::Operations::GetActorsLibraryBadRequest), object: T.nilable(::PlexRubySDK::Operations::GetActorsLibraryResponseBody), unauthorized: T.nilable(::PlexRubySDK::Operations::GetActorsLibraryUnauthorized)).void } + def initialize(content_type: nil, raw_response: nil, status_code: nil, bad_request: nil, object: nil, unauthorized: nil) + @content_type = content_type + @raw_response = raw_response + @status_code = status_code + @bad_request = bad_request + @object = object + @unauthorized = unauthorized + end + end + end +end diff --git a/lib/plex_ruby_sdk/models/operations/get_actors_library_responsebody.rb b/lib/plex_ruby_sdk/models/operations/get_actors_library_responsebody.rb new file mode 100644 index 0000000..9418080 --- /dev/null +++ b/lib/plex_ruby_sdk/models/operations/get_actors_library_responsebody.rb @@ -0,0 +1,24 @@ +# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +# typed: true +# frozen_string_literal: true + + +module PlexRubySDK + module Operations + + # Successful response containing media container data. + class GetActorsLibraryResponseBody < ::PlexRubySDK::Utils::FieldAugmented + extend T::Sig + + + field :media_container, T.nilable(::PlexRubySDK::Operations::GetActorsLibraryMediaContainer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('MediaContainer') } } + + + sig { params(media_container: T.nilable(::PlexRubySDK::Operations::GetActorsLibraryMediaContainer)).void } + def initialize(media_container: nil) + @media_container = media_container + end + end + end +end diff --git a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_unauthorized.rb b/lib/plex_ruby_sdk/models/operations/get_actors_library_unauthorized.rb similarity index 64% rename from lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_unauthorized.rb rename to lib/plex_ruby_sdk/models/operations/get_actors_library_unauthorized.rb index fb5f259..ae23f89 100644 --- a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_unauthorized.rb +++ b/lib/plex_ruby_sdk/models/operations/get_actors_library_unauthorized.rb @@ -8,14 +8,14 @@ module PlexRubySDK module Operations # Unauthorized - Returned if the X-Plex-Token is missing from the header or query. - class GetMetaDataByRatingKeyUnauthorized < ::PlexRubySDK::Utils::FieldAugmented + class GetActorsLibraryUnauthorized < ::PlexRubySDK::Utils::FieldAugmented extend T::Sig - field :errors, T.nilable(T::Array[::PlexRubySDK::Operations::GetMetaDataByRatingKeyLibraryErrors]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('errors') } } + field :errors, T.nilable(T::Array[::PlexRubySDK::Operations::GetActorsLibraryLibraryErrors]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('errors') } } - sig { params(errors: T.nilable(T::Array[::PlexRubySDK::Operations::GetMetaDataByRatingKeyLibraryErrors])).void } + sig { params(errors: T.nilable(T::Array[::PlexRubySDK::Operations::GetActorsLibraryLibraryErrors])).void } def initialize(errors: nil) @errors = errors end diff --git a/lib/plex_ruby_sdk/models/operations/get_countries_library_queryparam_type.rb b/lib/plex_ruby_sdk/models/operations/get_countries_library_queryparam_type.rb new file mode 100644 index 0000000..71797c2 --- /dev/null +++ b/lib/plex_ruby_sdk/models/operations/get_countries_library_queryparam_type.rb @@ -0,0 +1,29 @@ +# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +# typed: true +# frozen_string_literal: true + + +module PlexRubySDK + module Operations + + # GetCountriesLibraryQueryParamType - The type of media to retrieve or filter by. + # 1 = movie + # 2 = show + # 3 = season + # 4 = episode + # E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries + # + class GetCountriesLibraryQueryParamType < T::Enum + enums do + MOVIE = new(1) + TV_SHOW = new(2) + SEASON = new(3) + EPISODE = new(4) + AUDIO = new(8) + ALBUM = new(9) + TRACK = new(10) + end + end + end +end diff --git a/lib/plex_ruby_sdk/models/operations/get_countries_library_request.rb b/lib/plex_ruby_sdk/models/operations/get_countries_library_request.rb index 729c68a..1a3cfc1 100644 --- a/lib/plex_ruby_sdk/models/operations/get_countries_library_request.rb +++ b/lib/plex_ruby_sdk/models/operations/get_countries_library_request.rb @@ -15,11 +15,20 @@ module PlexRubySDK # Note: This is unique in the context of the Plex server. # field :section_key, ::Integer, { 'path_param': { 'field_name': 'sectionKey', 'style': 'simple', 'explode': false } } + # The type of media to retrieve or filter by. + # 1 = movie + # 2 = show + # 3 = season + # 4 = episode + # E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries + # + field :type, ::PlexRubySDK::Operations::GetCountriesLibraryQueryParamType, { 'query_param': { 'field_name': 'type', 'style': 'form', 'explode': true } } - sig { params(section_key: ::Integer).void } - def initialize(section_key: nil) + sig { params(section_key: ::Integer, type: ::PlexRubySDK::Operations::GetCountriesLibraryQueryParamType).void } + def initialize(section_key: nil, type: nil) @section_key = section_key + @type = type end end end diff --git a/lib/plex_ruby_sdk/models/operations/get_genres_library_queryparam_type.rb b/lib/plex_ruby_sdk/models/operations/get_genres_library_queryparam_type.rb new file mode 100644 index 0000000..e368a44 --- /dev/null +++ b/lib/plex_ruby_sdk/models/operations/get_genres_library_queryparam_type.rb @@ -0,0 +1,29 @@ +# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +# typed: true +# frozen_string_literal: true + + +module PlexRubySDK + module Operations + + # GetGenresLibraryQueryParamType - The type of media to retrieve or filter by. + # 1 = movie + # 2 = show + # 3 = season + # 4 = episode + # E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries + # + class GetGenresLibraryQueryParamType < T::Enum + enums do + MOVIE = new(1) + TV_SHOW = new(2) + SEASON = new(3) + EPISODE = new(4) + AUDIO = new(8) + ALBUM = new(9) + TRACK = new(10) + end + end + end +end diff --git a/lib/plex_ruby_sdk/models/operations/get_genres_library_request.rb b/lib/plex_ruby_sdk/models/operations/get_genres_library_request.rb index 4d2cb63..79ed738 100644 --- a/lib/plex_ruby_sdk/models/operations/get_genres_library_request.rb +++ b/lib/plex_ruby_sdk/models/operations/get_genres_library_request.rb @@ -15,11 +15,20 @@ module PlexRubySDK # Note: This is unique in the context of the Plex server. # field :section_key, ::Integer, { 'path_param': { 'field_name': 'sectionKey', 'style': 'simple', 'explode': false } } + # The type of media to retrieve or filter by. + # 1 = movie + # 2 = show + # 3 = season + # 4 = episode + # E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries + # + field :type, ::PlexRubySDK::Operations::GetGenresLibraryQueryParamType, { 'query_param': { 'field_name': 'type', 'style': 'form', 'explode': true } } - sig { params(section_key: ::Integer).void } - def initialize(section_key: nil) + sig { params(section_key: ::Integer, type: ::PlexRubySDK::Operations::GetGenresLibraryQueryParamType).void } + def initialize(section_key: nil, type: nil) @section_key = section_key + @type = type end end end diff --git a/lib/plex_ruby_sdk/models/operations/get_library_items_queryparam_type.rb b/lib/plex_ruby_sdk/models/operations/get_library_items_queryparam_type.rb index 1da8f8b..90ca6c0 100644 --- a/lib/plex_ruby_sdk/models/operations/get_library_items_queryparam_type.rb +++ b/lib/plex_ruby_sdk/models/operations/get_library_items_queryparam_type.rb @@ -7,7 +7,7 @@ module PlexRubySDK module Operations - # GetLibraryItemsQueryParamType - The type of media to retrieve. + # GetLibraryItemsQueryParamType - The type of media to retrieve or filter by. # 1 = movie # 2 = show # 3 = season diff --git a/lib/plex_ruby_sdk/models/operations/get_library_items_request.rb b/lib/plex_ruby_sdk/models/operations/get_library_items_request.rb index 212a915..c050d8e 100644 --- a/lib/plex_ruby_sdk/models/operations/get_library_items_request.rb +++ b/lib/plex_ruby_sdk/models/operations/get_library_items_request.rb @@ -17,20 +17,20 @@ module PlexRubySDK field :section_key, ::Integer, { 'path_param': { 'field_name': 'sectionKey', 'style': 'simple', 'explode': false } } # A key representing a specific tag within the section. field :tag, ::PlexRubySDK::Operations::Tag, { 'path_param': { 'field_name': 'tag', 'style': 'simple', 'explode': false } } - # Adds the Guids object to the response - # - field :include_guids, T.nilable(::PlexRubySDK::Operations::IncludeGuids), { 'query_param': { 'field_name': 'includeGuids', 'style': 'form', 'explode': true } } - # Adds the Meta object to the response - # - field :include_meta, T.nilable(::PlexRubySDK::Operations::GetLibraryItemsQueryParamIncludeMeta), { 'query_param': { 'field_name': 'includeMeta', 'style': 'form', 'explode': true } } - # The type of media to retrieve. + # The type of media to retrieve or filter by. # 1 = movie # 2 = show # 3 = season # 4 = episode # E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries # - field :type, T.nilable(::PlexRubySDK::Operations::GetLibraryItemsQueryParamType), { 'query_param': { 'field_name': 'type', 'style': 'form', 'explode': true } } + field :type, ::PlexRubySDK::Operations::GetLibraryItemsQueryParamType, { 'query_param': { 'field_name': 'type', 'style': 'form', 'explode': true } } + # Adds the Guids object to the response + # + field :include_guids, T.nilable(::PlexRubySDK::Operations::IncludeGuids), { 'query_param': { 'field_name': 'includeGuids', 'style': 'form', 'explode': true } } + # Adds the Meta object to the response + # + field :include_meta, T.nilable(::PlexRubySDK::Operations::GetLibraryItemsQueryParamIncludeMeta), { 'query_param': { 'field_name': 'includeMeta', 'style': 'form', 'explode': true } } # The number of items to return. If not specified, all items will be returned. # If the number of items exceeds the limit, the response will be paginated. # By default this is 50 @@ -43,13 +43,13 @@ module PlexRubySDK field :x_plex_container_start, T.nilable(::Integer), { 'query_param': { 'field_name': 'X-Plex-Container-Start', 'style': 'form', 'explode': true } } - sig { params(section_key: ::Integer, tag: ::PlexRubySDK::Operations::Tag, include_guids: T.nilable(::PlexRubySDK::Operations::IncludeGuids), include_meta: T.nilable(::PlexRubySDK::Operations::GetLibraryItemsQueryParamIncludeMeta), type: T.nilable(::PlexRubySDK::Operations::GetLibraryItemsQueryParamType), x_plex_container_size: T.nilable(::Integer), x_plex_container_start: T.nilable(::Integer)).void } - def initialize(section_key: nil, tag: nil, include_guids: nil, include_meta: nil, type: nil, x_plex_container_size: nil, x_plex_container_start: nil) + sig { params(section_key: ::Integer, tag: ::PlexRubySDK::Operations::Tag, type: ::PlexRubySDK::Operations::GetLibraryItemsQueryParamType, include_guids: T.nilable(::PlexRubySDK::Operations::IncludeGuids), include_meta: T.nilable(::PlexRubySDK::Operations::GetLibraryItemsQueryParamIncludeMeta), x_plex_container_size: T.nilable(::Integer), x_plex_container_start: T.nilable(::Integer)).void } + def initialize(section_key: nil, tag: nil, type: nil, include_guids: nil, include_meta: nil, x_plex_container_size: nil, x_plex_container_start: nil) @section_key = section_key @tag = tag + @type = type @include_guids = include_guids @include_meta = include_meta - @type = type @x_plex_container_size = x_plex_container_size @x_plex_container_start = x_plex_container_start end diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_badrequest.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_badrequest.rb new file mode 100644 index 0000000..c98684b --- /dev/null +++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_badrequest.rb @@ -0,0 +1,24 @@ +# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +# typed: true +# frozen_string_literal: true + + +module PlexRubySDK + module Operations + + # Bad Request - A parameter was not specified, or was specified incorrectly. + class GetMediaMetaDataBadRequest < ::PlexRubySDK::Utils::FieldAugmented + extend T::Sig + + + field :errors, T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataErrors]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('errors') } } + + + sig { params(errors: T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataErrors])).void } + def initialize(errors: nil) + @errors = errors + end + end + end +end diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_country.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_country.rb new file mode 100644 index 0000000..20d22f0 --- /dev/null +++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_country.rb @@ -0,0 +1,30 @@ +# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +# typed: true +# frozen_string_literal: true + + +module PlexRubySDK + module Operations + + + class GetMediaMetaDataCountry < ::PlexRubySDK::Utils::FieldAugmented + extend T::Sig + + # The filter string for the country. + field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } } + # The unique country identifier. + field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } } + # The country name. + field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } } + + + sig { params(filter: ::String, id: ::Integer, tag: ::String).void } + def initialize(filter: nil, id: nil, tag: nil) + @filter = filter + @id = id + @tag = tag + end + end + end +end diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_director.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_director.rb new file mode 100644 index 0000000..6a7b220 --- /dev/null +++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_director.rb @@ -0,0 +1,39 @@ +# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +# typed: true +# frozen_string_literal: true + + +module PlexRubySDK + module Operations + + + class GetMediaMetaDataDirector < ::PlexRubySDK::Utils::FieldAugmented + extend T::Sig + + # The filter string for the role. + field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } } + # The unique role identifier. + field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } } + # The actor's name. + field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } } + # A key associated with the actor tag. + field :tag_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } } + # The character name or role. + field :role, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('role') } } + # URL for the role thumbnail image. + field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } } + + + sig { params(filter: ::String, id: ::Integer, tag: ::String, tag_key: ::String, role: T.nilable(::String), thumb: T.nilable(::String)).void } + def initialize(filter: nil, id: nil, tag: nil, tag_key: nil, role: nil, thumb: nil) + @filter = filter + @id = id + @tag = tag + @tag_key = tag_key + @role = role + @thumb = thumb + end + end + end +end diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_errors.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_errors.rb new file mode 100644 index 0000000..2c8b138 --- /dev/null +++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_errors.rb @@ -0,0 +1,30 @@ +# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +# typed: true +# frozen_string_literal: true + + +module PlexRubySDK + module Operations + + + class GetMediaMetaDataErrors < ::PlexRubySDK::Utils::FieldAugmented + extend T::Sig + + + field :code, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('code') } } + + field :message, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('message') } } + + field :status, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('status') } } + + + sig { params(code: T.nilable(::Integer), message: T.nilable(::String), status: T.nilable(::Integer)).void } + def initialize(code: nil, message: nil, status: nil) + @code = code + @message = message + @status = status + end + end + end +end diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_genre.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_genre.rb new file mode 100644 index 0000000..dd9e0f7 --- /dev/null +++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_genre.rb @@ -0,0 +1,30 @@ +# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +# typed: true +# frozen_string_literal: true + + +module PlexRubySDK + module Operations + + + class GetMediaMetaDataGenre < ::PlexRubySDK::Utils::FieldAugmented + extend T::Sig + + # The filter string for the genre. + field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } } + # The unique genre identifier. + field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } } + # The genre name. + field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } } + + + sig { params(filter: ::String, id: ::Integer, tag: ::String).void } + def initialize(filter: nil, id: nil, tag: nil) + @filter = filter + @id = id + @tag = tag + end + end + end +end diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_image.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_image.rb new file mode 100644 index 0000000..4c47248 --- /dev/null +++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_image.rb @@ -0,0 +1,30 @@ +# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +# typed: true +# frozen_string_literal: true + + +module PlexRubySDK + module Operations + + + class GetMediaMetaDataImage < ::PlexRubySDK::Utils::FieldAugmented + extend T::Sig + + # Alternate text for the image. + field :alt, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('alt') } } + # The type of image (e.g., coverPoster, background, clearLogo). + field :type, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } } + # The URL of the image. + field :url, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('url') } } + + + sig { params(alt: ::String, type: ::String, url: ::String).void } + def initialize(alt: nil, type: nil, url: nil) + @alt = alt + @type = type + @url = url + end + end + end +end diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_library_errors.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_library_errors.rb new file mode 100644 index 0000000..45e3013 --- /dev/null +++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_library_errors.rb @@ -0,0 +1,30 @@ +# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +# typed: true +# frozen_string_literal: true + + +module PlexRubySDK + module Operations + + + class GetMediaMetaDataLibraryErrors < ::PlexRubySDK::Utils::FieldAugmented + extend T::Sig + + + field :code, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('code') } } + + field :message, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('message') } } + + field :status, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('status') } } + + + sig { params(code: T.nilable(::Integer), message: T.nilable(::String), status: T.nilable(::Integer)).void } + def initialize(code: nil, message: nil, status: nil) + @code = code + @message = message + @status = status + end + end + end +end diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_location.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_location.rb new file mode 100644 index 0000000..9ce52f3 --- /dev/null +++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_location.rb @@ -0,0 +1,24 @@ +# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +# typed: true +# frozen_string_literal: true + + +module PlexRubySDK + module Operations + + + class GetMediaMetaDataLocation < ::PlexRubySDK::Utils::FieldAugmented + extend T::Sig + + # The file path for the location. + field :path, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('path') } } + + + sig { params(path: ::String).void } + def initialize(path: nil) + @path = path + end + end + end +end diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_media.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_media.rb new file mode 100644 index 0000000..807121b --- /dev/null +++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_media.rb @@ -0,0 +1,66 @@ +# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +# typed: true +# frozen_string_literal: true + + +module PlexRubySDK + module Operations + + + class GetMediaMetaDataMedia < ::PlexRubySDK::Utils::FieldAugmented + extend T::Sig + + # Aspect ratio of the video. + field :aspect_ratio, ::Float, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('aspectRatio') } } + # Number of audio channels. + field :audio_channels, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioChannels') } } + # Audio codec used. + field :audio_codec, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioCodec') } } + # Bitrate in bits per second. + field :bitrate, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bitrate') } } + # File container type. + field :container, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('container') } } + # Duration of the media in milliseconds. + field :duration, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } } + # Indicates whether voice activity is detected. + field :has_voice_activity, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasVoiceActivity') } } + # Video height in pixels. + field :height, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } } + # Unique media identifier. + field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } } + # An array of parts for this media item. + field :part, T::Array[::PlexRubySDK::Operations::GetMediaMetaDataPart], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Part') } } + # Video codec used. + field :video_codec, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoCodec') } } + # Frame rate of the video (e.g., 24p). + field :video_frame_rate, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoFrameRate') } } + # Video profile (e.g., main 10). + field :video_profile, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } } + # Video resolution (e.g., 4k). + field :video_resolution, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoResolution') } } + # Video width in pixels. + field :width, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } } + + + sig { params(aspect_ratio: ::Float, audio_channels: ::Integer, audio_codec: ::String, bitrate: ::Integer, container: ::String, duration: ::Integer, has_voice_activity: T::Boolean, height: ::Integer, id: ::Integer, part: T::Array[::PlexRubySDK::Operations::GetMediaMetaDataPart], video_codec: ::String, video_frame_rate: ::String, video_profile: ::String, video_resolution: ::String, width: ::Integer).void } + def initialize(aspect_ratio: nil, audio_channels: nil, audio_codec: nil, bitrate: nil, container: nil, duration: nil, has_voice_activity: nil, height: nil, id: nil, part: nil, video_codec: nil, video_frame_rate: nil, video_profile: nil, video_resolution: nil, width: nil) + @aspect_ratio = aspect_ratio + @audio_channels = audio_channels + @audio_codec = audio_codec + @bitrate = bitrate + @container = container + @duration = duration + @has_voice_activity = has_voice_activity + @height = height + @id = id + @part = part + @video_codec = video_codec + @video_frame_rate = video_frame_rate + @video_profile = video_profile + @video_resolution = video_resolution + @width = width + end + end + end +end diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_mediacontainer.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_mediacontainer.rb new file mode 100644 index 0000000..6051842 --- /dev/null +++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_mediacontainer.rb @@ -0,0 +1,48 @@ +# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +# typed: true +# frozen_string_literal: true + + +module PlexRubySDK + module Operations + + + class GetMediaMetaDataMediaContainer < ::PlexRubySDK::Utils::FieldAugmented + extend T::Sig + + # Indicates whether syncing is allowed. + field :allow_sync, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('allowSync') } } + # An plugin identifier for the media container. + field :identifier, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('identifier') } } + # The unique identifier for the library section. + field :library_section_id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionID') } } + # The title of the library section. + field :library_section_title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionTitle') } } + # The prefix used for media tag resource paths. + field :media_tag_prefix, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagPrefix') } } + # The version number for media tags. + field :media_tag_version, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagVersion') } } + # An array of metadata items. + field :metadata, T::Array[::PlexRubySDK::Operations::GetMediaMetaDataMetadata], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Metadata') } } + + field :size, ::Float, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } } + # The universally unique identifier for the library section. + field :library_section_uuid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionUUID') } } + + + sig { params(allow_sync: T::Boolean, identifier: ::String, library_section_id: ::Integer, library_section_title: ::String, media_tag_prefix: ::String, media_tag_version: ::Integer, metadata: T::Array[::PlexRubySDK::Operations::GetMediaMetaDataMetadata], size: ::Float, library_section_uuid: T.nilable(::String)).void } + def initialize(allow_sync: nil, identifier: nil, library_section_id: nil, library_section_title: nil, media_tag_prefix: nil, media_tag_version: nil, metadata: nil, size: nil, library_section_uuid: nil) + @allow_sync = allow_sync + @identifier = identifier + @library_section_id = library_section_id + @library_section_title = library_section_title + @media_tag_prefix = media_tag_prefix + @media_tag_version = media_tag_version + @metadata = metadata + @size = size + @library_section_uuid = library_section_uuid + end + end + end +end diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_metadata.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_metadata.rb new file mode 100644 index 0000000..672e049 --- /dev/null +++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_metadata.rb @@ -0,0 +1,198 @@ +# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +# typed: true +# frozen_string_literal: true + + +module PlexRubySDK + module Operations + + + class GetMediaMetaDataMetadata < ::PlexRubySDK::Utils::FieldAugmented + extend T::Sig + + # Unix timestamp when the item was added. + field :added_at, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('addedAt') } } + # URL of the art image. + field :art, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('art') } } + # The audience rating for the content. + field :audience_rating, ::Float, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audienceRating') } } + # The URL for the audience rating image. + field :audience_rating_image, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audienceRatingImage') } } + # The content rating (e.g., TV-MA). + field :content_rating, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('contentRating') } } + # Duration of the content in milliseconds. + field :duration, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } } + # The globally unique identifier for the item. + field :guid, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('guid') } } + # An array of GUID objects. + field :guids, T::Array[::PlexRubySDK::Operations::Guids], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Guid') } } + # An array of image objects. + field :image, T::Array[::PlexRubySDK::Operations::GetMediaMetaDataImage], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Image') } } + # The API key to access metadata details. + field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } } + # The ID of the library section. + field :library_section_id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionID') } } + # The key of the library section. + field :library_section_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionKey') } } + # The title of the library section. + field :library_section_title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionTitle') } } + # The original release date. + field :originally_available_at, ::Date, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originallyAvailableAt'), 'decoder': Utils.date_from_iso_format(false) } } + # An array of rating objects. + field :rating, T::Array[::PlexRubySDK::Operations::Rating], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Rating') } } + # The rating key of the metadata item. + field :rating_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('ratingKey') } } + # A summary of the content. + field :summary, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('summary') } } + # URL of the thumbnail image. + field :thumb, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } } + # The title of the content. + field :title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } } + # The type of content (e.g., show, movie). + field :type, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } } + + field :ultra_blur_colors, ::PlexRubySDK::Operations::GetMediaMetaDataUltraBlurColors, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('UltraBlurColors') } } + # Unix timestamp when the item was last updated. + field :updated_at, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('updatedAt') } } + # The release year. + field :year, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('year') } } + + field :chapter_source, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chapterSource') } } + # The number of child items. + field :child_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('childCount') } } + # An array of country tags. + field :country, T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataCountry]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Country') } } + # An array of Director roles. + field :director, T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataDirector]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Director') } } + # An array of genre tags. + field :genre, T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataGenre]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Genre') } } + # The URL of the grandparent's art image. + field :grandparent_art, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentArt') } } + # A GUID identifying the grandparent entity (e.g., show). + field :grandparent_guid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentGuid') } } + # A key identifying the grandparent metadata in the library. + field :grandparent_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentKey') } } + # The rating key of the grandparent of this metadata item. + field :grandparent_rating_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentRatingKey') } } + # A URL-friendly identifier (slug) for the grandparent entity. + field :grandparent_slug, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentSlug') } } + # The URL of the grandparent's thumbnail image. + field :grandparent_thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentThumb') } } + # The title of the grandparent entity (typically the show's title). + field :grandparent_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentTitle') } } + # The index or order of the item. + field :index, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } } + # Unix timestamp of when the item was last viewed. + field :last_viewed_at, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('lastViewedAt') } } + # The total number of episodes (or leaves). + field :leaf_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('leafCount') } } + # An array of location objects. + field :location, T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataLocation]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Location') } } + + field :media, T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataMedia]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Media') } } + # The original title of the content. + field :original_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originalTitle') } } + # A GUID identifying the parent entity (e.g., season) for the item. + field :parent_guid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentGuid') } } + # The index number of the parent entity, which could indicate its order or position. + field :parent_index, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentIndex') } } + # A key identifying the parent metadata in the library. + field :parent_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentKey') } } + # The rating key of the parent of this metadata item. + field :parent_rating_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentRatingKey') } } + # The URL of the parent's thumbnail image. + field :parent_thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentThumb') } } + # The title of the parent entity (typically the season's title). + field :parent_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentTitle') } } + + field :primary_extra_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('primaryExtraKey') } } + # An array of Writer roles. + field :producer, T.nilable(T::Array[::PlexRubySDK::Operations::Producer]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Producer') } } + # An array of Actor roles. + field :role, T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataRole]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Role') } } + # An array of similar content objects. + field :similar, T.nilable(T::Array[::PlexRubySDK::Operations::Similar]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Similar') } } + # The number of times the item has been skipped. + field :skip_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('skipCount') } } + # A URL-friendly identifier for the item. + field :slug, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('slug') } } + # The studio that produced the content. + field :studio, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('studio') } } + # The tagline of the content. + field :tagline, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagline') } } + # URL of the theme image. + field :theme, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('theme') } } + # The number of times the item has been viewed. + field :view_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewCount') } } + # The number of episodes that have been viewed. + field :viewed_leaf_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewedLeafCount') } } + # An array of Writer roles. + field :writer, T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataWriter]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Writer') } } + + + sig { params(added_at: ::Integer, art: ::String, audience_rating: ::Float, audience_rating_image: ::String, content_rating: ::String, duration: ::Integer, guid: ::String, guids: T::Array[::PlexRubySDK::Operations::Guids], image: T::Array[::PlexRubySDK::Operations::GetMediaMetaDataImage], key: ::String, library_section_id: ::Integer, library_section_key: ::String, library_section_title: ::String, originally_available_at: ::Date, rating: T::Array[::PlexRubySDK::Operations::Rating], rating_key: ::String, summary: ::String, thumb: ::String, title: ::String, type: ::String, ultra_blur_colors: ::PlexRubySDK::Operations::GetMediaMetaDataUltraBlurColors, updated_at: ::Integer, year: ::Integer, chapter_source: T.nilable(::String), child_count: T.nilable(::Integer), country: T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataCountry]), director: T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataDirector]), genre: T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataGenre]), grandparent_art: T.nilable(::String), grandparent_guid: T.nilable(::String), grandparent_key: T.nilable(::String), grandparent_rating_key: T.nilable(::String), grandparent_slug: T.nilable(::String), grandparent_thumb: T.nilable(::String), grandparent_title: T.nilable(::String), index: T.nilable(::Integer), last_viewed_at: T.nilable(::Integer), leaf_count: T.nilable(::Integer), location: T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataLocation]), media: T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataMedia]), original_title: T.nilable(::String), parent_guid: T.nilable(::String), parent_index: T.nilable(::Integer), parent_key: T.nilable(::String), parent_rating_key: T.nilable(::String), parent_thumb: T.nilable(::String), parent_title: T.nilable(::String), primary_extra_key: T.nilable(::String), producer: T.nilable(T::Array[::PlexRubySDK::Operations::Producer]), role: T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataRole]), similar: T.nilable(T::Array[::PlexRubySDK::Operations::Similar]), skip_count: T.nilable(::Integer), slug: T.nilable(::String), studio: T.nilable(::String), tagline: T.nilable(::String), theme: T.nilable(::String), view_count: T.nilable(::Integer), viewed_leaf_count: T.nilable(::Integer), writer: T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataWriter])).void } + def initialize(added_at: nil, art: nil, audience_rating: nil, audience_rating_image: nil, content_rating: nil, duration: nil, guid: nil, guids: nil, image: nil, key: nil, library_section_id: nil, library_section_key: nil, library_section_title: nil, originally_available_at: nil, rating: nil, rating_key: nil, summary: nil, thumb: nil, title: nil, type: nil, ultra_blur_colors: nil, updated_at: nil, year: nil, chapter_source: nil, child_count: nil, country: nil, director: nil, genre: nil, grandparent_art: nil, grandparent_guid: nil, grandparent_key: nil, grandparent_rating_key: nil, grandparent_slug: nil, grandparent_thumb: nil, grandparent_title: nil, index: nil, last_viewed_at: nil, leaf_count: nil, location: nil, media: nil, original_title: nil, parent_guid: nil, parent_index: nil, parent_key: nil, parent_rating_key: nil, parent_thumb: nil, parent_title: nil, primary_extra_key: nil, producer: nil, role: nil, similar: nil, skip_count: nil, slug: nil, studio: nil, tagline: nil, theme: nil, view_count: nil, viewed_leaf_count: nil, writer: nil) + @added_at = added_at + @art = art + @audience_rating = audience_rating + @audience_rating_image = audience_rating_image + @content_rating = content_rating + @duration = duration + @guid = guid + @guids = guids + @image = image + @key = key + @library_section_id = library_section_id + @library_section_key = library_section_key + @library_section_title = library_section_title + @originally_available_at = originally_available_at + @rating = rating + @rating_key = rating_key + @summary = summary + @thumb = thumb + @title = title + @type = type + @ultra_blur_colors = ultra_blur_colors + @updated_at = updated_at + @year = year + @chapter_source = chapter_source + @child_count = child_count + @country = country + @director = director + @genre = genre + @grandparent_art = grandparent_art + @grandparent_guid = grandparent_guid + @grandparent_key = grandparent_key + @grandparent_rating_key = grandparent_rating_key + @grandparent_slug = grandparent_slug + @grandparent_thumb = grandparent_thumb + @grandparent_title = grandparent_title + @index = index + @last_viewed_at = last_viewed_at + @leaf_count = leaf_count + @location = location + @media = media + @original_title = original_title + @parent_guid = parent_guid + @parent_index = parent_index + @parent_key = parent_key + @parent_rating_key = parent_rating_key + @parent_thumb = parent_thumb + @parent_title = parent_title + @primary_extra_key = primary_extra_key + @producer = producer + @role = role + @similar = similar + @skip_count = skip_count + @slug = slug + @studio = studio + @tagline = tagline + @theme = theme + @view_count = view_count + @viewed_leaf_count = viewed_leaf_count + @writer = writer + end + end + end +end diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_part.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_part.rb new file mode 100644 index 0000000..db145eb --- /dev/null +++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_part.rb @@ -0,0 +1,54 @@ +# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +# typed: true +# frozen_string_literal: true + + +module PlexRubySDK + module Operations + + + class GetMediaMetaDataPart < ::PlexRubySDK::Utils::FieldAugmented + extend T::Sig + + # Container format of the part. + field :container, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('container') } } + # Duration of the part in milliseconds. + field :duration, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } } + # File path for the part. + field :file, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('file') } } + # Unique part identifier. + field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } } + # Key to access this part. + field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } } + # File size in bytes. + field :size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } } + # An array of streams for this part. + field :stream, T::Array[::PlexRubySDK::Operations::GetMediaMetaDataStream], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Stream') } } + # Video profile for the part. + field :video_profile, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } } + # Indicates if the part is accessible. + field :accessible, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('accessible') } } + # Indicates if the part exists. + field :exists, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('exists') } } + + field :indexes, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('indexes') } } + + + sig { params(container: ::String, duration: ::Integer, file: ::String, id: ::Integer, key: ::String, size: ::Integer, stream: T::Array[::PlexRubySDK::Operations::GetMediaMetaDataStream], video_profile: ::String, accessible: T.nilable(T::Boolean), exists: T.nilable(T::Boolean), indexes: T.nilable(::String)).void } + def initialize(container: nil, duration: nil, file: nil, id: nil, key: nil, size: nil, stream: nil, video_profile: nil, accessible: nil, exists: nil, indexes: nil) + @container = container + @duration = duration + @file = file + @id = id + @key = key + @size = size + @stream = stream + @video_profile = video_profile + @accessible = accessible + @exists = exists + @indexes = indexes + end + end + end +end diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_request.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_request.rb new file mode 100644 index 0000000..742a0c9 --- /dev/null +++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_request.rb @@ -0,0 +1,63 @@ +# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +# typed: true +# frozen_string_literal: true + + +module PlexRubySDK + module Operations + + + class GetMediaMetaDataRequest < ::PlexRubySDK::Utils::FieldAugmented + extend T::Sig + + # the id of the library item to return the children of. + field :rating_key, ::Integer, { 'path_param': { 'field_name': 'ratingKey', 'style': 'simple', 'explode': false } } + # Trigger asynchronous metadata augmentation. + field :async_augment_metadata, T.nilable(T::Boolean), { 'query_param': { 'field_name': 'asyncAugmentMetadata', 'style': 'form', 'explode': true } } + # Trigger asynchronous file checking. + field :async_check_files, T.nilable(T::Boolean), { 'query_param': { 'field_name': 'asyncCheckFiles', 'style': 'form', 'explode': true } } + # Trigger asynchronous refresh of analysis. + field :async_refresh_analysis, T.nilable(T::Boolean), { 'query_param': { 'field_name': 'asyncRefreshAnalysis', 'style': 'form', 'explode': true } } + # Trigger asynchronous refresh of the local media agent. + field :async_refresh_local_media_agent, T.nilable(T::Boolean), { 'query_param': { 'field_name': 'asyncRefreshLocalMediaAgent', 'style': 'form', 'explode': true } } + # Include chapter details. + field :include_chapters, T.nilable(T::Boolean), { 'query_param': { 'field_name': 'includeChapters', 'style': 'form', 'explode': true } } + # Include concerts data if set to true. + field :include_concerts, T.nilable(T::Boolean), { 'query_param': { 'field_name': 'includeConcerts', 'style': 'form', 'explode': true } } + # Include external media data. + field :include_external_media, T.nilable(T::Boolean), { 'query_param': { 'field_name': 'includeExternalMedia', 'style': 'form', 'explode': true } } + # Include extra content (e.g. bonus features). + field :include_extras, T.nilable(T::Boolean), { 'query_param': { 'field_name': 'includeExtras', 'style': 'form', 'explode': true } } + # Include on-deck items. + field :include_on_deck, T.nilable(T::Boolean), { 'query_param': { 'field_name': 'includeOnDeck', 'style': 'form', 'explode': true } } + # Include popular leaves (episodes/chapters). + field :include_popular_leaves, T.nilable(T::Boolean), { 'query_param': { 'field_name': 'includePopularLeaves', 'style': 'form', 'explode': true } } + # Include preferences information. + field :include_preferences, T.nilable(T::Boolean), { 'query_param': { 'field_name': 'includePreferences', 'style': 'form', 'explode': true } } + # Include reviews for the content. + field :include_reviews, T.nilable(T::Boolean), { 'query_param': { 'field_name': 'includeReviews', 'style': 'form', 'explode': true } } + # Include station data. + field :include_stations, T.nilable(T::Boolean), { 'query_param': { 'field_name': 'includeStations', 'style': 'form', 'explode': true } } + + + sig { params(rating_key: ::Integer, async_augment_metadata: T.nilable(T::Boolean), async_check_files: T.nilable(T::Boolean), async_refresh_analysis: T.nilable(T::Boolean), async_refresh_local_media_agent: T.nilable(T::Boolean), include_chapters: T.nilable(T::Boolean), include_concerts: T.nilable(T::Boolean), include_external_media: T.nilable(T::Boolean), include_extras: T.nilable(T::Boolean), include_on_deck: T.nilable(T::Boolean), include_popular_leaves: T.nilable(T::Boolean), include_preferences: T.nilable(T::Boolean), include_reviews: T.nilable(T::Boolean), include_stations: T.nilable(T::Boolean)).void } + def initialize(rating_key: nil, async_augment_metadata: nil, async_check_files: nil, async_refresh_analysis: nil, async_refresh_local_media_agent: nil, include_chapters: nil, include_concerts: nil, include_external_media: nil, include_extras: nil, include_on_deck: nil, include_popular_leaves: nil, include_preferences: nil, include_reviews: nil, include_stations: nil) + @rating_key = rating_key + @async_augment_metadata = async_augment_metadata + @async_check_files = async_check_files + @async_refresh_analysis = async_refresh_analysis + @async_refresh_local_media_agent = async_refresh_local_media_agent + @include_chapters = include_chapters + @include_concerts = include_concerts + @include_external_media = include_external_media + @include_extras = include_extras + @include_on_deck = include_on_deck + @include_popular_leaves = include_popular_leaves + @include_preferences = include_preferences + @include_reviews = include_reviews + @include_stations = include_stations + end + end + end +end diff --git a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_response.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_response.rb similarity index 73% rename from lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_response.rb rename to lib/plex_ruby_sdk/models/operations/get_media_meta_data_response.rb index 784545e..68eed00 100644 --- a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_response.rb +++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_response.rb @@ -8,7 +8,7 @@ module PlexRubySDK module Operations - class GetMetaDataByRatingKeyResponse < ::PlexRubySDK::Utils::FieldAugmented + class GetMediaMetaDataResponse < ::PlexRubySDK::Utils::FieldAugmented extend T::Sig # HTTP response content type for this operation @@ -18,14 +18,14 @@ module PlexRubySDK # HTTP response status code for this operation field :status_code, ::Integer # Bad Request - A parameter was not specified, or was specified incorrectly. - field :bad_request, T.nilable(::PlexRubySDK::Operations::GetMetaDataByRatingKeyBadRequest) + field :bad_request, T.nilable(::PlexRubySDK::Operations::GetMediaMetaDataBadRequest) # The metadata of the library item. - field :object, T.nilable(::PlexRubySDK::Operations::GetMetaDataByRatingKeyResponseBody) + field :object, T.nilable(::PlexRubySDK::Operations::GetMediaMetaDataResponseBody) # Unauthorized - Returned if the X-Plex-Token is missing from the header or query. - field :unauthorized, T.nilable(::PlexRubySDK::Operations::GetMetaDataByRatingKeyUnauthorized) + field :unauthorized, T.nilable(::PlexRubySDK::Operations::GetMediaMetaDataUnauthorized) - sig { params(content_type: ::String, raw_response: ::Faraday::Response, status_code: ::Integer, bad_request: T.nilable(::PlexRubySDK::Operations::GetMetaDataByRatingKeyBadRequest), object: T.nilable(::PlexRubySDK::Operations::GetMetaDataByRatingKeyResponseBody), unauthorized: T.nilable(::PlexRubySDK::Operations::GetMetaDataByRatingKeyUnauthorized)).void } + sig { params(content_type: ::String, raw_response: ::Faraday::Response, status_code: ::Integer, bad_request: T.nilable(::PlexRubySDK::Operations::GetMediaMetaDataBadRequest), object: T.nilable(::PlexRubySDK::Operations::GetMediaMetaDataResponseBody), unauthorized: T.nilable(::PlexRubySDK::Operations::GetMediaMetaDataUnauthorized)).void } def initialize(content_type: nil, raw_response: nil, status_code: nil, bad_request: nil, object: nil, unauthorized: nil) @content_type = content_type @raw_response = raw_response diff --git a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_responsebody.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_responsebody.rb similarity index 63% rename from lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_responsebody.rb rename to lib/plex_ruby_sdk/models/operations/get_media_meta_data_responsebody.rb index b5fcf47..adef7a7 100644 --- a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_responsebody.rb +++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_responsebody.rb @@ -8,14 +8,14 @@ module PlexRubySDK module Operations # The metadata of the library item. - class GetMetaDataByRatingKeyResponseBody < ::PlexRubySDK::Utils::FieldAugmented + class GetMediaMetaDataResponseBody < ::PlexRubySDK::Utils::FieldAugmented extend T::Sig - field :media_container, T.nilable(::PlexRubySDK::Operations::GetMetaDataByRatingKeyMediaContainer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('MediaContainer') } } + field :media_container, T.nilable(::PlexRubySDK::Operations::GetMediaMetaDataMediaContainer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('MediaContainer') } } - sig { params(media_container: T.nilable(::PlexRubySDK::Operations::GetMetaDataByRatingKeyMediaContainer)).void } + sig { params(media_container: T.nilable(::PlexRubySDK::Operations::GetMediaMetaDataMediaContainer)).void } def initialize(media_container: nil) @media_container = media_container end diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_role.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_role.rb new file mode 100644 index 0000000..9cc5b2e --- /dev/null +++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_role.rb @@ -0,0 +1,39 @@ +# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +# typed: true +# frozen_string_literal: true + + +module PlexRubySDK + module Operations + + + class GetMediaMetaDataRole < ::PlexRubySDK::Utils::FieldAugmented + extend T::Sig + + # The filter string for the role. + field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } } + # The unique role identifier. + field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } } + # The actor's name. + field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } } + # A key associated with the actor tag. + field :tag_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } } + # The character name or role. + field :role, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('role') } } + # URL for the role thumbnail image. + field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } } + + + sig { params(filter: ::String, id: ::Integer, tag: ::String, tag_key: ::String, role: T.nilable(::String), thumb: T.nilable(::String)).void } + def initialize(filter: nil, id: nil, tag: nil, tag_key: nil, role: nil, thumb: nil) + @filter = filter + @id = id + @tag = tag + @tag_key = tag_key + @role = role + @thumb = thumb + end + end + end +end diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_stream.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_stream.rb new file mode 100644 index 0000000..1e561cc --- /dev/null +++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_stream.rb @@ -0,0 +1,159 @@ +# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +# typed: true +# frozen_string_literal: true + + +module PlexRubySDK + module Operations + + + class GetMediaMetaDataStream < ::PlexRubySDK::Utils::FieldAugmented + extend T::Sig + + # Bitrate of the stream. + field :bitrate, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bitrate') } } + # Codec used by the stream. + field :codec, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('codec') } } + # Display title for the stream. + field :display_title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('displayTitle') } } + # Extended display title for the stream. + field :extended_display_title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('extendedDisplayTitle') } } + # Unique stream identifier. + field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } } + # Index of the stream. + field :index, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } } + # Language of the stream. + field :language, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('language') } } + # ISO language code. + field :language_code, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('languageCode') } } + # Language tag (e.g., en). + field :language_tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('languageTag') } } + # Stream type (1=video, 2=audio, 3=subtitle). + field :stream_type, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('streamType') } } + # Audio channel layout. + field :audio_channel_layout, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioChannelLayout') } } + # Bit depth of the video stream. + field :bit_depth, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bitDepth') } } + # Indicates if the stream can auto-sync. + field :can_auto_sync, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('canAutoSync') } } + # Number of audio channels (for audio streams). + field :channels, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('channels') } } + # Chroma sample location. + field :chroma_location, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chromaLocation') } } + # Chroma subsampling format. + field :chroma_subsampling, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chromaSubsampling') } } + # Coded video height. + field :coded_height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('codedHeight') } } + # Coded video width. + field :coded_width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('codedWidth') } } + # Color primaries used. + field :color_primaries, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('colorPrimaries') } } + # Color range (e.g., tv). + field :color_range, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('colorRange') } } + # Color space. + field :color_space, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('colorSpace') } } + # Color transfer characteristics. + field :color_trc, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('colorTrc') } } + # Indicates if this stream is default. + field :default, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('default') } } + # Dolby Vision BL compatibility ID. + field :dovibl_compat_id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('DOVIBLCompatID') } } + # Indicates if Dolby Vision BL is present. + field :dovibl_present, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('DOVIBLPresent') } } + # Indicates if Dolby Vision EL is present. + field :doviel_present, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('DOVIELPresent') } } + # Dolby Vision level. + field :dovi_level, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('DOVILevel') } } + # Indicates if Dolby Vision is present. + field :dovi_present, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('DOVIPresent') } } + # Dolby Vision profile. + field :dovi_profile, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('DOVIProfile') } } + # Indicates if Dolby Vision RPU is present. + field :dovirpu_present, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('DOVIRPUPresent') } } + # Dolby Vision version. + field :dovi_version, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('DOVIVersion') } } + # Indicates if the stream is a dub. + field :dub, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('dub') } } + + field :forced, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('forced') } } + # Frame rate of the stream. + field :frame_rate, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('frameRate') } } + + field :has_scaling_matrix, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasScalingMatrix') } } + # Indicates if the stream is for the hearing impaired. + field :hearing_impaired, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hearingImpaired') } } + # Height of the video stream. + field :height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } } + # Video level. + field :level, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('level') } } + # Indicates if this is the original stream. + field :original, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('original') } } + # Video profile. + field :profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('profile') } } + # Number of reference frames. + field :ref_frames, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('refFrames') } } + # Sampling rate for the audio stream. + field :sampling_rate, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('samplingRate') } } + + field :scan_type, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('scanType') } } + # Indicates if this stream is selected (applicable for audio streams). + field :selected, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('selected') } } + # Optional title for the stream (e.g., language variant). + field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } } + # Width of the video stream. + field :width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } } + + + sig { params(bitrate: ::Integer, codec: ::String, display_title: ::String, extended_display_title: ::String, id: ::Integer, index: ::Integer, language: ::String, language_code: ::String, language_tag: ::String, stream_type: ::Integer, audio_channel_layout: T.nilable(::String), bit_depth: T.nilable(::Integer), can_auto_sync: T.nilable(T::Boolean), channels: T.nilable(::Integer), chroma_location: T.nilable(::String), chroma_subsampling: T.nilable(::String), coded_height: T.nilable(::Integer), coded_width: T.nilable(::Integer), color_primaries: T.nilable(::String), color_range: T.nilable(::String), color_space: T.nilable(::String), color_trc: T.nilable(::String), default: T.nilable(T::Boolean), dovibl_compat_id: T.nilable(::Integer), dovibl_present: T.nilable(T::Boolean), doviel_present: T.nilable(T::Boolean), dovi_level: T.nilable(::Integer), dovi_present: T.nilable(T::Boolean), dovi_profile: T.nilable(::Integer), dovirpu_present: T.nilable(T::Boolean), dovi_version: T.nilable(::String), dub: T.nilable(T::Boolean), forced: T.nilable(T::Boolean), frame_rate: T.nilable(::Float), has_scaling_matrix: T.nilable(T::Boolean), hearing_impaired: T.nilable(T::Boolean), height: T.nilable(::Integer), level: T.nilable(::Integer), original: T.nilable(T::Boolean), profile: T.nilable(::String), ref_frames: T.nilable(::Integer), sampling_rate: T.nilable(::Integer), scan_type: T.nilable(::String), selected: T.nilable(T::Boolean), title: T.nilable(::String), width: T.nilable(::Integer)).void } + def initialize(bitrate: nil, codec: nil, display_title: nil, extended_display_title: nil, id: nil, index: nil, language: nil, language_code: nil, language_tag: nil, stream_type: nil, audio_channel_layout: nil, bit_depth: nil, can_auto_sync: nil, channels: nil, chroma_location: nil, chroma_subsampling: nil, coded_height: nil, coded_width: nil, color_primaries: nil, color_range: nil, color_space: nil, color_trc: nil, default: nil, dovibl_compat_id: nil, dovibl_present: nil, doviel_present: nil, dovi_level: nil, dovi_present: nil, dovi_profile: nil, dovirpu_present: nil, dovi_version: nil, dub: nil, forced: nil, frame_rate: nil, has_scaling_matrix: nil, hearing_impaired: nil, height: nil, level: nil, original: nil, profile: nil, ref_frames: nil, sampling_rate: nil, scan_type: nil, selected: nil, title: nil, width: nil) + @bitrate = bitrate + @codec = codec + @display_title = display_title + @extended_display_title = extended_display_title + @id = id + @index = index + @language = language + @language_code = language_code + @language_tag = language_tag + @stream_type = stream_type + @audio_channel_layout = audio_channel_layout + @bit_depth = bit_depth + @can_auto_sync = can_auto_sync + @channels = channels + @chroma_location = chroma_location + @chroma_subsampling = chroma_subsampling + @coded_height = coded_height + @coded_width = coded_width + @color_primaries = color_primaries + @color_range = color_range + @color_space = color_space + @color_trc = color_trc + @default = default + @dovibl_compat_id = dovibl_compat_id + @dovibl_present = dovibl_present + @doviel_present = doviel_present + @dovi_level = dovi_level + @dovi_present = dovi_present + @dovi_profile = dovi_profile + @dovirpu_present = dovirpu_present + @dovi_version = dovi_version + @dub = dub + @forced = forced + @frame_rate = frame_rate + @has_scaling_matrix = has_scaling_matrix + @hearing_impaired = hearing_impaired + @height = height + @level = level + @original = original + @profile = profile + @ref_frames = ref_frames + @sampling_rate = sampling_rate + @scan_type = scan_type + @selected = selected + @title = title + @width = width + end + end + end +end diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_ultrablurcolors.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_ultrablurcolors.rb new file mode 100644 index 0000000..9079b13 --- /dev/null +++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_ultrablurcolors.rb @@ -0,0 +1,33 @@ +# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +# typed: true +# frozen_string_literal: true + + +module PlexRubySDK + module Operations + + + class GetMediaMetaDataUltraBlurColors < ::PlexRubySDK::Utils::FieldAugmented + extend T::Sig + + # The bottom-left color value. + field :bottom_left, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bottomLeft') } } + # The bottom-right color value. + field :bottom_right, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bottomRight') } } + # The top-left color value. + field :top_left, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('topLeft') } } + # The top-right color value. + field :top_right, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('topRight') } } + + + sig { params(bottom_left: ::String, bottom_right: ::String, top_left: ::String, top_right: ::String).void } + def initialize(bottom_left: nil, bottom_right: nil, top_left: nil, top_right: nil) + @bottom_left = bottom_left + @bottom_right = bottom_right + @top_left = top_left + @top_right = top_right + end + end + end +end diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_unauthorized.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_unauthorized.rb new file mode 100644 index 0000000..916dec6 --- /dev/null +++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_unauthorized.rb @@ -0,0 +1,24 @@ +# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +# typed: true +# frozen_string_literal: true + + +module PlexRubySDK + module Operations + + # Unauthorized - Returned if the X-Plex-Token is missing from the header or query. + class GetMediaMetaDataUnauthorized < ::PlexRubySDK::Utils::FieldAugmented + extend T::Sig + + + field :errors, T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataLibraryErrors]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('errors') } } + + + sig { params(errors: T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataLibraryErrors])).void } + def initialize(errors: nil) + @errors = errors + end + end + end +end diff --git a/lib/plex_ruby_sdk/models/operations/get_media_meta_data_writer.rb b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_writer.rb new file mode 100644 index 0000000..18712ba --- /dev/null +++ b/lib/plex_ruby_sdk/models/operations/get_media_meta_data_writer.rb @@ -0,0 +1,39 @@ +# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +# typed: true +# frozen_string_literal: true + + +module PlexRubySDK + module Operations + + + class GetMediaMetaDataWriter < ::PlexRubySDK::Utils::FieldAugmented + extend T::Sig + + # The filter string for the role. + field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } } + # The unique role identifier. + field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } } + # The actor's name. + field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } } + # A key associated with the actor tag. + field :tag_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } } + # The character name or role. + field :role, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('role') } } + # URL for the role thumbnail image. + field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } } + + + sig { params(filter: ::String, id: ::Integer, tag: ::String, tag_key: ::String, role: T.nilable(::String), thumb: T.nilable(::String)).void } + def initialize(filter: nil, id: nil, tag: nil, tag_key: nil, role: nil, thumb: nil) + @filter = filter + @id = id + @tag = tag + @tag_key = tag_key + @role = role + @thumb = thumb + end + end + end +end diff --git a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_country.rb b/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_country.rb deleted file mode 100644 index ec426da..0000000 --- a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_country.rb +++ /dev/null @@ -1,30 +0,0 @@ -# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -# typed: true -# frozen_string_literal: true - - -module PlexRubySDK - module Operations - - - class GetMetaDataByRatingKeyCountry < ::PlexRubySDK::Utils::FieldAugmented - extend T::Sig - - - field :filter, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } } - - field :id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } } - - field :tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } } - - - sig { params(filter: T.nilable(::String), id: T.nilable(::Integer), tag: T.nilable(::String)).void } - def initialize(filter: nil, id: nil, tag: nil) - @filter = filter - @id = id - @tag = tag - end - end - end -end diff --git a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_director.rb b/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_director.rb deleted file mode 100644 index 0d28b63..0000000 --- a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_director.rb +++ /dev/null @@ -1,36 +0,0 @@ -# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -# typed: true -# frozen_string_literal: true - - -module PlexRubySDK - module Operations - - - class GetMetaDataByRatingKeyDirector < ::PlexRubySDK::Utils::FieldAugmented - extend T::Sig - - - field :filter, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } } - - field :id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } } - - field :tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } } - - field :tag_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } } - - field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } } - - - sig { params(filter: T.nilable(::String), id: T.nilable(::Integer), tag: T.nilable(::String), tag_key: T.nilable(::String), thumb: T.nilable(::String)).void } - def initialize(filter: nil, id: nil, tag: nil, tag_key: nil, thumb: nil) - @filter = filter - @id = id - @tag = tag - @tag_key = tag_key - @thumb = thumb - end - end - end -end diff --git a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_genre.rb b/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_genre.rb deleted file mode 100644 index a009624..0000000 --- a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_genre.rb +++ /dev/null @@ -1,30 +0,0 @@ -# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -# typed: true -# frozen_string_literal: true - - -module PlexRubySDK - module Operations - - - class GetMetaDataByRatingKeyGenre < ::PlexRubySDK::Utils::FieldAugmented - extend T::Sig - - - field :filter, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } } - - field :id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } } - - field :tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } } - - - sig { params(filter: T.nilable(::String), id: T.nilable(::Integer), tag: T.nilable(::String)).void } - def initialize(filter: nil, id: nil, tag: nil) - @filter = filter - @id = id - @tag = tag - end - end - end -end diff --git a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_media.rb b/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_media.rb deleted file mode 100644 index a246cdb..0000000 --- a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_media.rb +++ /dev/null @@ -1,72 +0,0 @@ -# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -# typed: true -# frozen_string_literal: true - - -module PlexRubySDK - module Operations - - - class GetMetaDataByRatingKeyMedia < ::PlexRubySDK::Utils::FieldAugmented - extend T::Sig - - - field :aspect_ratio, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('aspectRatio') } } - - field :audio_channels, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioChannels') } } - - field :audio_codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioCodec') } } - - field :audio_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioProfile') } } - - field :bitrate, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bitrate') } } - - field :container, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('container') } } - - field :duration, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } } - - field :has64bit_offsets, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('has64bitOffsets') } } - - field :height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } } - - field :id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } } - - field :optimized_for_streaming, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming') } } - - field :part, T.nilable(T::Array[::PlexRubySDK::Operations::GetMetaDataByRatingKeyPart]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Part') } } - - field :video_codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoCodec') } } - - field :video_frame_rate, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoFrameRate') } } - - field :video_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } } - - field :video_resolution, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoResolution') } } - - field :width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } } - - - sig { params(aspect_ratio: T.nilable(::Float), audio_channels: T.nilable(::Integer), audio_codec: T.nilable(::String), audio_profile: T.nilable(::String), bitrate: T.nilable(::Integer), container: T.nilable(::String), duration: T.nilable(::Integer), has64bit_offsets: T.nilable(T::Boolean), height: T.nilable(::Integer), id: T.nilable(::Integer), optimized_for_streaming: T.nilable(::Integer), part: T.nilable(T::Array[::PlexRubySDK::Operations::GetMetaDataByRatingKeyPart]), video_codec: T.nilable(::String), video_frame_rate: T.nilable(::String), video_profile: T.nilable(::String), video_resolution: T.nilable(::String), width: T.nilable(::Integer)).void } - def initialize(aspect_ratio: nil, audio_channels: nil, audio_codec: nil, audio_profile: nil, bitrate: nil, container: nil, duration: nil, has64bit_offsets: nil, height: nil, id: nil, optimized_for_streaming: nil, part: nil, video_codec: nil, video_frame_rate: nil, video_profile: nil, video_resolution: nil, width: nil) - @aspect_ratio = aspect_ratio - @audio_channels = audio_channels - @audio_codec = audio_codec - @audio_profile = audio_profile - @bitrate = bitrate - @container = container - @duration = duration - @has64bit_offsets = has64bit_offsets - @height = height - @id = id - @optimized_for_streaming = optimized_for_streaming - @part = part - @video_codec = video_codec - @video_frame_rate = video_frame_rate - @video_profile = video_profile - @video_resolution = video_resolution - @width = width - end - end - end -end diff --git a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_mediacontainer.rb b/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_mediacontainer.rb deleted file mode 100644 index 978aea4..0000000 --- a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_mediacontainer.rb +++ /dev/null @@ -1,48 +0,0 @@ -# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -# typed: true -# frozen_string_literal: true - - -module PlexRubySDK - module Operations - - - class GetMetaDataByRatingKeyMediaContainer < ::PlexRubySDK::Utils::FieldAugmented - extend T::Sig - - - field :allow_sync, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('allowSync') } } - - field :identifier, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('identifier') } } - - field :library_section_id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionID') } } - - field :library_section_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionTitle') } } - - field :library_section_uuid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionUUID') } } - - field :media_tag_prefix, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagPrefix') } } - - field :media_tag_version, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagVersion') } } - - field :metadata, T.nilable(T::Array[::PlexRubySDK::Operations::GetMetaDataByRatingKeyMetadata]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Metadata') } } - - field :size, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } } - - - sig { params(allow_sync: T.nilable(T::Boolean), identifier: T.nilable(::String), library_section_id: T.nilable(::Integer), library_section_title: T.nilable(::String), library_section_uuid: T.nilable(::String), media_tag_prefix: T.nilable(::String), media_tag_version: T.nilable(::Integer), metadata: T.nilable(T::Array[::PlexRubySDK::Operations::GetMetaDataByRatingKeyMetadata]), size: T.nilable(::Integer)).void } - def initialize(allow_sync: nil, identifier: nil, library_section_id: nil, library_section_title: nil, library_section_uuid: nil, media_tag_prefix: nil, media_tag_version: nil, metadata: nil, size: nil) - @allow_sync = allow_sync - @identifier = identifier - @library_section_id = library_section_id - @library_section_title = library_section_title - @library_section_uuid = library_section_uuid - @media_tag_prefix = media_tag_prefix - @media_tag_version = media_tag_version - @metadata = metadata - @size = size - end - end - end -end diff --git a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_metadata.rb b/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_metadata.rb deleted file mode 100644 index 7a133ba..0000000 --- a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_metadata.rb +++ /dev/null @@ -1,135 +0,0 @@ -# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -# typed: true -# frozen_string_literal: true - - -module PlexRubySDK - module Operations - - - class GetMetaDataByRatingKeyMetadata < ::PlexRubySDK::Utils::FieldAugmented - extend T::Sig - - - field :added_at, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('addedAt') } } - - field :art, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('art') } } - - field :audience_rating, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audienceRating') } } - - field :audience_rating_image, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audienceRatingImage') } } - - field :content_rating, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('contentRating') } } - - field :country, T.nilable(T::Array[::PlexRubySDK::Operations::GetMetaDataByRatingKeyCountry]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Country') } } - - field :director, T.nilable(T::Array[::PlexRubySDK::Operations::GetMetaDataByRatingKeyDirector]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Director') } } - - field :duration, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } } - - field :genre, T.nilable(T::Array[::PlexRubySDK::Operations::GetMetaDataByRatingKeyGenre]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Genre') } } - # The name of the album artist for the track when audio, and the name of the TV show for the episode when video. - field :grandparent_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentTitle') } } - - field :guid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('guid') } } - - field :guids, T.nilable(T::Array[::PlexRubySDK::Operations::Guids]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Guid') } } - - field :has_premium_primary_extra, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasPremiumPrimaryExtra') } } - # The index starting from 0 of this media item in the MetaData array. - field :index, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } } - - field :key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } } - - field :library_section_id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionID') } } - - field :library_section_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionKey') } } - - field :library_section_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionTitle') } } - - field :media, T.nilable(T::Array[::PlexRubySDK::Operations::GetMetaDataByRatingKeyMedia]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Media') } } - - field :originally_available_at, T.nilable(::Date), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originallyAvailableAt'), 'decoder': Utils.date_from_iso_format(true) } } - # The orginal untranslated name of the media item when non-english. - field :original_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originalTitle') } } - # The parent index starting from 0 of this media item in the parent MetaData array. - field :parent_index, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentIndex') } } - # The name of the album for the track when audio, and the name of the season for the episode when TV show. - field :parent_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentTitle') } } - - field :producer, T.nilable(T::Array[::PlexRubySDK::Operations::Producer]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Producer') } } - - field :rating, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('rating') } } - - field :rating_image, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('ratingImage') } } - - field :rating_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('ratingKey') } } - - field :ratings, T.nilable(T::Array[::PlexRubySDK::Operations::Ratings]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Rating') } } - - field :role, T.nilable(T::Array[::PlexRubySDK::Operations::GetMetaDataByRatingKeyRole]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Role') } } - - field :studio, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('studio') } } - - field :summary, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('summary') } } - - field :tagline, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagline') } } - - field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } } - - field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } } - - field :type, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } } - - field :updated_at, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('updatedAt') } } - - field :writer, T.nilable(T::Array[::PlexRubySDK::Operations::GetMetaDataByRatingKeyWriter]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Writer') } } - - field :year, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('year') } } - - - sig { params(added_at: T.nilable(::Integer), art: T.nilable(::String), audience_rating: T.nilable(::Float), audience_rating_image: T.nilable(::String), content_rating: T.nilable(::String), country: T.nilable(T::Array[::PlexRubySDK::Operations::GetMetaDataByRatingKeyCountry]), director: T.nilable(T::Array[::PlexRubySDK::Operations::GetMetaDataByRatingKeyDirector]), duration: T.nilable(::Integer), genre: T.nilable(T::Array[::PlexRubySDK::Operations::GetMetaDataByRatingKeyGenre]), grandparent_title: T.nilable(::String), guid: T.nilable(::String), guids: T.nilable(T::Array[::PlexRubySDK::Operations::Guids]), has_premium_primary_extra: T.nilable(::String), index: T.nilable(::Integer), key: T.nilable(::String), library_section_id: T.nilable(::Integer), library_section_key: T.nilable(::String), library_section_title: T.nilable(::String), media: T.nilable(T::Array[::PlexRubySDK::Operations::GetMetaDataByRatingKeyMedia]), originally_available_at: T.nilable(::Date), original_title: T.nilable(::String), parent_index: T.nilable(::Integer), parent_title: T.nilable(::String), producer: T.nilable(T::Array[::PlexRubySDK::Operations::Producer]), rating: T.nilable(::Float), rating_image: T.nilable(::String), rating_key: T.nilable(::String), ratings: T.nilable(T::Array[::PlexRubySDK::Operations::Ratings]), role: T.nilable(T::Array[::PlexRubySDK::Operations::GetMetaDataByRatingKeyRole]), studio: T.nilable(::String), summary: T.nilable(::String), tagline: T.nilable(::String), thumb: T.nilable(::String), title: T.nilable(::String), type: T.nilable(::String), updated_at: T.nilable(::Integer), writer: T.nilable(T::Array[::PlexRubySDK::Operations::GetMetaDataByRatingKeyWriter]), year: T.nilable(::Integer)).void } - def initialize(added_at: nil, art: nil, audience_rating: nil, audience_rating_image: nil, content_rating: nil, country: nil, director: nil, duration: nil, genre: nil, grandparent_title: nil, guid: nil, guids: nil, has_premium_primary_extra: nil, index: nil, key: nil, library_section_id: nil, library_section_key: nil, library_section_title: nil, media: nil, originally_available_at: nil, original_title: nil, parent_index: nil, parent_title: nil, producer: nil, rating: nil, rating_image: nil, rating_key: nil, ratings: nil, role: nil, studio: nil, summary: nil, tagline: nil, thumb: nil, title: nil, type: nil, updated_at: nil, writer: nil, year: nil) - @added_at = added_at - @art = art - @audience_rating = audience_rating - @audience_rating_image = audience_rating_image - @content_rating = content_rating - @country = country - @director = director - @duration = duration - @genre = genre - @grandparent_title = grandparent_title - @guid = guid - @guids = guids - @has_premium_primary_extra = has_premium_primary_extra - @index = index - @key = key - @library_section_id = library_section_id - @library_section_key = library_section_key - @library_section_title = library_section_title - @media = media - @originally_available_at = originally_available_at - @original_title = original_title - @parent_index = parent_index - @parent_title = parent_title - @producer = producer - @rating = rating - @rating_image = rating_image - @rating_key = rating_key - @ratings = ratings - @role = role - @studio = studio - @summary = summary - @tagline = tagline - @thumb = thumb - @title = title - @type = type - @updated_at = updated_at - @writer = writer - @year = year - end - end - end -end diff --git a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_part.rb b/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_part.rb deleted file mode 100644 index 8ca755e..0000000 --- a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_part.rb +++ /dev/null @@ -1,54 +0,0 @@ -# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -# typed: true -# frozen_string_literal: true - - -module PlexRubySDK - module Operations - - - class GetMetaDataByRatingKeyPart < ::PlexRubySDK::Utils::FieldAugmented - extend T::Sig - - - field :audio_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioProfile') } } - - field :container, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('container') } } - - field :duration, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } } - - field :file, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('file') } } - - field :has64bit_offsets, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('has64bitOffsets') } } - - field :id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } } - - field :key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } } - - field :optimized_for_streaming, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming') } } - - field :size, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } } - - field :stream, T.nilable(T::Array[::PlexRubySDK::Operations::GetMetaDataByRatingKeyStream]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Stream') } } - - field :video_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } } - - - sig { params(audio_profile: T.nilable(::String), container: T.nilable(::String), duration: T.nilable(::Integer), file: T.nilable(::String), has64bit_offsets: T.nilable(T::Boolean), id: T.nilable(::Integer), key: T.nilable(::String), optimized_for_streaming: T.nilable(T::Boolean), size: T.nilable(::Integer), stream: T.nilable(T::Array[::PlexRubySDK::Operations::GetMetaDataByRatingKeyStream]), video_profile: T.nilable(::String)).void } - def initialize(audio_profile: nil, container: nil, duration: nil, file: nil, has64bit_offsets: nil, id: nil, key: nil, optimized_for_streaming: nil, size: nil, stream: nil, video_profile: nil) - @audio_profile = audio_profile - @container = container - @duration = duration - @file = file - @has64bit_offsets = has64bit_offsets - @id = id - @key = key - @optimized_for_streaming = optimized_for_streaming - @size = size - @stream = stream - @video_profile = video_profile - end - end - end -end diff --git a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_request.rb b/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_request.rb deleted file mode 100644 index faa975f..0000000 --- a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_request.rb +++ /dev/null @@ -1,24 +0,0 @@ -# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -# typed: true -# frozen_string_literal: true - - -module PlexRubySDK - module Operations - - - class GetMetaDataByRatingKeyRequest < ::PlexRubySDK::Utils::FieldAugmented - extend T::Sig - - # the id of the library item to return the children of. - field :rating_key, ::Integer, { 'path_param': { 'field_name': 'ratingKey', 'style': 'simple', 'explode': false } } - - - sig { params(rating_key: ::Integer).void } - def initialize(rating_key: nil) - @rating_key = rating_key - end - end - end -end diff --git a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_role.rb b/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_role.rb deleted file mode 100644 index b2ff585..0000000 --- a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_role.rb +++ /dev/null @@ -1,39 +0,0 @@ -# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -# typed: true -# frozen_string_literal: true - - -module PlexRubySDK - module Operations - - - class GetMetaDataByRatingKeyRole < ::PlexRubySDK::Utils::FieldAugmented - extend T::Sig - - - field :filter, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } } - - field :id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } } - - field :role, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('role') } } - - field :tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } } - - field :tag_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } } - - field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } } - - - sig { params(filter: T.nilable(::String), id: T.nilable(::Integer), role: T.nilable(::String), tag: T.nilable(::String), tag_key: T.nilable(::String), thumb: T.nilable(::String)).void } - def initialize(filter: nil, id: nil, role: nil, tag: nil, tag_key: nil, thumb: nil) - @filter = filter - @id = id - @role = role - @tag = tag - @tag_key = tag_key - @thumb = thumb - end - end - end -end diff --git a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_stream.rb b/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_stream.rb deleted file mode 100644 index 5e0dad3..0000000 --- a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_stream.rb +++ /dev/null @@ -1,117 +0,0 @@ -# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -# typed: true -# frozen_string_literal: true - - -module PlexRubySDK - module Operations - - - class GetMetaDataByRatingKeyStream < ::PlexRubySDK::Utils::FieldAugmented - extend T::Sig - - - field :bit_depth, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bitDepth') } } - - field :bitrate, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bitrate') } } - - field :channels, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('channels') } } - - field :chroma_location, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chromaLocation') } } - - field :chroma_subsampling, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chromaSubsampling') } } - - field :codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('codec') } } - - field :coded_height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('codedHeight') } } - - field :coded_width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('codedWidth') } } - - field :color_primaries, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('colorPrimaries') } } - - field :color_range, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('colorRange') } } - - field :color_space, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('colorSpace') } } - - field :color_trc, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('colorTrc') } } - - field :default, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('default') } } - - field :display_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('displayTitle') } } - - field :extended_display_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('extendedDisplayTitle') } } - - field :frame_rate, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('frameRate') } } - - field :has_scaling_matrix, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasScalingMatrix') } } - - field :height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } } - - field :id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } } - - field :index, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } } - - field :language, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('language') } } - - field :language_code, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('languageCode') } } - - field :language_tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('languageTag') } } - - field :level, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('level') } } - - field :profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('profile') } } - - field :ref_frames, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('refFrames') } } - - field :sampling_rate, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('samplingRate') } } - - field :scan_type, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('scanType') } } - - field :selected, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('selected') } } - - field :stream_identifier, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('streamIdentifier') } } - - field :stream_type, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('streamType') } } - - field :width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } } - - - sig { params(bit_depth: T.nilable(::Integer), bitrate: T.nilable(::Integer), channels: T.nilable(::Integer), chroma_location: T.nilable(::String), chroma_subsampling: T.nilable(::String), codec: T.nilable(::String), coded_height: T.nilable(::Integer), coded_width: T.nilable(::Integer), color_primaries: T.nilable(::String), color_range: T.nilable(::String), color_space: T.nilable(::String), color_trc: T.nilable(::String), default: T.nilable(T::Boolean), display_title: T.nilable(::String), extended_display_title: T.nilable(::String), frame_rate: T.nilable(::Integer), has_scaling_matrix: T.nilable(T::Boolean), height: T.nilable(::Integer), id: T.nilable(::Integer), index: T.nilable(::Integer), language: T.nilable(::String), language_code: T.nilable(::String), language_tag: T.nilable(::String), level: T.nilable(::Integer), profile: T.nilable(::String), ref_frames: T.nilable(::Integer), sampling_rate: T.nilable(::Integer), scan_type: T.nilable(::String), selected: T.nilable(T::Boolean), stream_identifier: T.nilable(::String), stream_type: T.nilable(::Integer), width: T.nilable(::Integer)).void } - def initialize(bit_depth: nil, bitrate: nil, channels: nil, chroma_location: nil, chroma_subsampling: nil, codec: nil, coded_height: nil, coded_width: nil, color_primaries: nil, color_range: nil, color_space: nil, color_trc: nil, default: nil, display_title: nil, extended_display_title: nil, frame_rate: nil, has_scaling_matrix: nil, height: nil, id: nil, index: nil, language: nil, language_code: nil, language_tag: nil, level: nil, profile: nil, ref_frames: nil, sampling_rate: nil, scan_type: nil, selected: nil, stream_identifier: nil, stream_type: nil, width: nil) - @bit_depth = bit_depth - @bitrate = bitrate - @channels = channels - @chroma_location = chroma_location - @chroma_subsampling = chroma_subsampling - @codec = codec - @coded_height = coded_height - @coded_width = coded_width - @color_primaries = color_primaries - @color_range = color_range - @color_space = color_space - @color_trc = color_trc - @default = default - @display_title = display_title - @extended_display_title = extended_display_title - @frame_rate = frame_rate - @has_scaling_matrix = has_scaling_matrix - @height = height - @id = id - @index = index - @language = language - @language_code = language_code - @language_tag = language_tag - @level = level - @profile = profile - @ref_frames = ref_frames - @sampling_rate = sampling_rate - @scan_type = scan_type - @selected = selected - @stream_identifier = stream_identifier - @stream_type = stream_type - @width = width - end - end - end -end diff --git a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_writer.rb b/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_writer.rb deleted file mode 100644 index 4fd050a..0000000 --- a/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_writer.rb +++ /dev/null @@ -1,36 +0,0 @@ -# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -# typed: true -# frozen_string_literal: true - - -module PlexRubySDK - module Operations - - - class GetMetaDataByRatingKeyWriter < ::PlexRubySDK::Utils::FieldAugmented - extend T::Sig - - - field :filter, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } } - - field :id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } } - - field :tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } } - - field :tag_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } } - - field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } } - - - sig { params(filter: T.nilable(::String), id: T.nilable(::Integer), tag: T.nilable(::String), tag_key: T.nilable(::String), thumb: T.nilable(::String)).void } - def initialize(filter: nil, id: nil, tag: nil, tag_key: nil, thumb: nil) - @filter = filter - @id = id - @tag = tag - @tag_key = tag_key - @thumb = thumb - end - end - end -end diff --git a/lib/plex_ruby_sdk/models/operations/get_recently_added_library_request.rb b/lib/plex_ruby_sdk/models/operations/get_recently_added_library_request.rb index 39531e0..d390c41 100644 --- a/lib/plex_ruby_sdk/models/operations/get_recently_added_library_request.rb +++ b/lib/plex_ruby_sdk/models/operations/get_recently_added_library_request.rb @@ -11,7 +11,7 @@ module PlexRubySDK class GetRecentlyAddedLibraryRequest < ::PlexRubySDK::Utils::FieldAugmented extend T::Sig - # The type of media to retrieve. + # The type of media to retrieve or filter by. # 1 = movie # 2 = show # 3 = season diff --git a/lib/plex_ruby_sdk/models/operations/get_recently_added_request.rb b/lib/plex_ruby_sdk/models/operations/get_recently_added_request.rb index b6fc851..5e3805f 100644 --- a/lib/plex_ruby_sdk/models/operations/get_recently_added_request.rb +++ b/lib/plex_ruby_sdk/models/operations/get_recently_added_request.rb @@ -13,7 +13,7 @@ module PlexRubySDK # The content directory ID. field :content_directory_id, ::Integer, { 'query_param': { 'field_name': 'contentDirectoryID', 'style': 'form', 'explode': true } } - # The type of media to retrieve. + # The type of media to retrieve or filter by. # 1 = movie # 2 = show # 3 = season diff --git a/lib/plex_ruby_sdk/models/operations/get_search_library_queryparam_type.rb b/lib/plex_ruby_sdk/models/operations/get_search_library_queryparam_type.rb index fed7dbf..69302ba 100644 --- a/lib/plex_ruby_sdk/models/operations/get_search_library_queryparam_type.rb +++ b/lib/plex_ruby_sdk/models/operations/get_search_library_queryparam_type.rb @@ -7,7 +7,7 @@ module PlexRubySDK module Operations - # GetSearchLibraryQueryParamType - The type of media to retrieve. + # GetSearchLibraryQueryParamType - The type of media to retrieve or filter by. # 1 = movie # 2 = show # 3 = season diff --git a/lib/plex_ruby_sdk/models/operations/get_search_library_request.rb b/lib/plex_ruby_sdk/models/operations/get_search_library_request.rb index 5f971f0..8107c10 100644 --- a/lib/plex_ruby_sdk/models/operations/get_search_library_request.rb +++ b/lib/plex_ruby_sdk/models/operations/get_search_library_request.rb @@ -15,7 +15,7 @@ module PlexRubySDK # Note: This is unique in the context of the Plex server. # field :section_key, ::Integer, { 'path_param': { 'field_name': 'sectionKey', 'style': 'simple', 'explode': false } } - # The type of media to retrieve. + # The type of media to retrieve or filter by. # 1 = movie # 2 = show # 3 = season diff --git a/lib/plex_ruby_sdk/models/operations/getplaylistcontents_queryparam_type.rb b/lib/plex_ruby_sdk/models/operations/getplaylistcontents_queryparam_type.rb index 78abc28..51a4568 100644 --- a/lib/plex_ruby_sdk/models/operations/getplaylistcontents_queryparam_type.rb +++ b/lib/plex_ruby_sdk/models/operations/getplaylistcontents_queryparam_type.rb @@ -7,7 +7,7 @@ module PlexRubySDK module Operations - # GetPlaylistContentsQueryParamType - The type of media to retrieve. + # GetPlaylistContentsQueryParamType - The type of media to retrieve or filter by. # 1 = movie # 2 = show # 3 = season diff --git a/lib/plex_ruby_sdk/models/operations/getplaylistcontents_request.rb b/lib/plex_ruby_sdk/models/operations/getplaylistcontents_request.rb index c33a4e5..b99a1b8 100644 --- a/lib/plex_ruby_sdk/models/operations/getplaylistcontents_request.rb +++ b/lib/plex_ruby_sdk/models/operations/getplaylistcontents_request.rb @@ -13,7 +13,7 @@ module PlexRubySDK # the ID of the playlist field :playlist_id, ::Float, { 'path_param': { 'field_name': 'playlistID', 'style': 'simple', 'explode': false } } - # The type of media to retrieve. + # The type of media to retrieve or filter by. # 1 = movie # 2 = show # 3 = season diff --git a/lib/plex_ruby_sdk/models/operations/gettopwatchedcontent_queryparam_type.rb b/lib/plex_ruby_sdk/models/operations/gettopwatchedcontent_queryparam_type.rb index 0fb79a5..759a7cd 100644 --- a/lib/plex_ruby_sdk/models/operations/gettopwatchedcontent_queryparam_type.rb +++ b/lib/plex_ruby_sdk/models/operations/gettopwatchedcontent_queryparam_type.rb @@ -7,7 +7,7 @@ module PlexRubySDK module Operations - # GetTopWatchedContentQueryParamType - The type of media to retrieve. + # GetTopWatchedContentQueryParamType - The type of media to retrieve or filter by. # 1 = movie # 2 = show # 3 = season diff --git a/lib/plex_ruby_sdk/models/operations/gettopwatchedcontent_request.rb b/lib/plex_ruby_sdk/models/operations/gettopwatchedcontent_request.rb index d228929..c7ed98e 100644 --- a/lib/plex_ruby_sdk/models/operations/gettopwatchedcontent_request.rb +++ b/lib/plex_ruby_sdk/models/operations/gettopwatchedcontent_request.rb @@ -11,7 +11,7 @@ module PlexRubySDK class GetTopWatchedContentRequest < ::PlexRubySDK::Utils::FieldAugmented extend T::Sig - # The type of media to retrieve. + # The type of media to retrieve or filter by. # 1 = movie # 2 = show # 3 = season diff --git a/lib/plex_ruby_sdk/models/operations/guids.rb b/lib/plex_ruby_sdk/models/operations/guids.rb index 4275397..90ce51b 100644 --- a/lib/plex_ruby_sdk/models/operations/guids.rb +++ b/lib/plex_ruby_sdk/models/operations/guids.rb @@ -11,11 +11,11 @@ module PlexRubySDK class Guids < ::PlexRubySDK::Utils::FieldAugmented extend T::Sig - - field :id, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } } + # The GUID value. + field :id, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } } - sig { params(id: T.nilable(::String)).void } + sig { params(id: ::String).void } def initialize(id: nil) @id = id end diff --git a/lib/plex_ruby_sdk/models/operations/producer.rb b/lib/plex_ruby_sdk/models/operations/producer.rb index 39b70ed..b3a41bc 100644 --- a/lib/plex_ruby_sdk/models/operations/producer.rb +++ b/lib/plex_ruby_sdk/models/operations/producer.rb @@ -11,24 +11,27 @@ module PlexRubySDK class Producer < ::PlexRubySDK::Utils::FieldAugmented extend T::Sig - - field :filter, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } } - - field :id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } } - - field :tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } } - - field :tag_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } } - + # The filter string for the role. + field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } } + # The unique role identifier. + field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } } + # The actor's name. + field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } } + # A key associated with the actor tag. + field :tag_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } } + # The character name or role. + field :role, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('role') } } + # URL for the role thumbnail image. field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } } - sig { params(filter: T.nilable(::String), id: T.nilable(::Integer), tag: T.nilable(::String), tag_key: T.nilable(::String), thumb: T.nilable(::String)).void } - def initialize(filter: nil, id: nil, tag: nil, tag_key: nil, thumb: nil) + sig { params(filter: ::String, id: ::Integer, tag: ::String, tag_key: ::String, role: T.nilable(::String), thumb: T.nilable(::String)).void } + def initialize(filter: nil, id: nil, tag: nil, tag_key: nil, role: nil, thumb: nil) @filter = filter @id = id @tag = tag @tag_key = tag_key + @role = role @thumb = thumb end end diff --git a/lib/plex_ruby_sdk/models/operations/queryparam_type.rb b/lib/plex_ruby_sdk/models/operations/queryparam_type.rb index 198869d..54e4b51 100644 --- a/lib/plex_ruby_sdk/models/operations/queryparam_type.rb +++ b/lib/plex_ruby_sdk/models/operations/queryparam_type.rb @@ -7,7 +7,7 @@ module PlexRubySDK module Operations - # QueryParamType - The type of media to retrieve. + # QueryParamType - The type of media to retrieve or filter by. # 1 = movie # 2 = show # 3 = season diff --git a/lib/plex_ruby_sdk/models/operations/rating.rb b/lib/plex_ruby_sdk/models/operations/rating.rb new file mode 100644 index 0000000..e91ea5c --- /dev/null +++ b/lib/plex_ruby_sdk/models/operations/rating.rb @@ -0,0 +1,30 @@ +# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +# typed: true +# frozen_string_literal: true + + +module PlexRubySDK + module Operations + + + class Rating < ::PlexRubySDK::Utils::FieldAugmented + extend T::Sig + + # The image or reference for the rating. + field :image, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('image') } } + # The type of rating (e.g., audience, critic). + field :type, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } } + # The rating value. + field :value, ::Float, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('value') } } + + + sig { params(image: ::String, type: ::String, value: ::Float).void } + def initialize(image: nil, type: nil, value: nil) + @image = image + @type = type + @value = value + end + end + end +end diff --git a/lib/plex_ruby_sdk/models/operations/ratings.rb b/lib/plex_ruby_sdk/models/operations/ratings.rb deleted file mode 100644 index 6e0ebb9..0000000 --- a/lib/plex_ruby_sdk/models/operations/ratings.rb +++ /dev/null @@ -1,30 +0,0 @@ -# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -# typed: true -# frozen_string_literal: true - - -module PlexRubySDK - module Operations - - - class Ratings < ::PlexRubySDK::Utils::FieldAugmented - extend T::Sig - - - field :image, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('image') } } - - field :type, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } } - - field :value, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('value') } } - - - sig { params(image: T.nilable(::String), type: T.nilable(::String), value: T.nilable(::Float)).void } - def initialize(image: nil, type: nil, value: nil) - @image = image - @type = type - @value = value - end - end - end -end diff --git a/lib/plex_ruby_sdk/models/operations/similar.rb b/lib/plex_ruby_sdk/models/operations/similar.rb new file mode 100644 index 0000000..eee36f2 --- /dev/null +++ b/lib/plex_ruby_sdk/models/operations/similar.rb @@ -0,0 +1,30 @@ +# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +# typed: true +# frozen_string_literal: true + + +module PlexRubySDK + module Operations + + + class Similar < ::PlexRubySDK::Utils::FieldAugmented + extend T::Sig + + # The filter string for similar items. + field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } } + # The unique similar item identifier. + field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } } + # The tag or title of the similar content. + field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } } + + + sig { params(filter: ::String, id: ::Integer, tag: ::String).void } + def initialize(filter: nil, id: nil, tag: nil) + @filter = filter + @id = id + @tag = tag + end + end + end +end diff --git a/lib/plex_ruby_sdk/models/operations/type.rb b/lib/plex_ruby_sdk/models/operations/type.rb index 845f94d..9f229bc 100644 --- a/lib/plex_ruby_sdk/models/operations/type.rb +++ b/lib/plex_ruby_sdk/models/operations/type.rb @@ -7,7 +7,7 @@ module PlexRubySDK module Operations - # Type - The type of media to retrieve. + # Type - The type of media to retrieve or filter by. # 1 = movie # 2 = show # 3 = season diff --git a/lib/plex_ruby_sdk/sdkconfiguration.rb b/lib/plex_ruby_sdk/sdkconfiguration.rb index 356c0df..e5e894b 100644 --- a/lib/plex_ruby_sdk/sdkconfiguration.rb +++ b/lib/plex_ruby_sdk/sdkconfiguration.rb @@ -40,9 +40,9 @@ module PlexRubySDK @security = security @language = 'ruby' @openapi_doc_version = '0.0.3' - @sdk_version = '0.7.3' + @sdk_version = '0.7.4' @gen_version = '2.506.0' - @user_agent = 'speakeasy-sdk/ruby 0.7.3 2.506.0 0.0.3 plex_ruby_sdk' + @user_agent = 'speakeasy-sdk/ruby 0.7.4 2.506.0 0.0.3 plex_ruby_sdk' end sig { returns([String, T::Hash[Symbol, String]]) } diff --git a/plex_ruby_sdk.gemspec b/plex_ruby_sdk.gemspec index 9f3d1d4..f4646da 100644 --- a/plex_ruby_sdk.gemspec +++ b/plex_ruby_sdk.gemspec @@ -4,7 +4,7 @@ $LOAD_PATH.push File.expand_path('lib', __dir__) Gem::Specification.new do |s| s.name = 'plex_ruby_sdk' - s.version = '0.7.3' + s.version = '0.7.4' s.platform = Gem::Platform::RUBY s.licenses = ['Apache-2.0'] s.summary = ''