plex_ruby_sdk 0.13.1 → 0.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. checksums.yaml +4 -4
  2. data/lib/plex_ruby_sdk/library.rb +13 -12
  3. data/lib/plex_ruby_sdk/models/errors/{get_all_media_library_badrequest.rb → get_library_sections_all_badrequest.rb} +3 -3
  4. data/lib/plex_ruby_sdk/models/errors/{get_all_media_library_errors.rb → get_library_sections_all_errors.rb} +1 -1
  5. data/lib/plex_ruby_sdk/models/errors/{get_all_media_library_library_errors.rb → get_library_sections_all_library_errors.rb} +1 -1
  6. data/lib/plex_ruby_sdk/models/errors/{get_all_media_library_unauthorized.rb → get_library_sections_all_unauthorized.rb} +3 -3
  7. data/lib/plex_ruby_sdk/models/errors.rb +4 -4
  8. data/lib/plex_ruby_sdk/models/operations/country.rb +8 -6
  9. data/lib/plex_ruby_sdk/models/operations/director.rb +18 -2
  10. data/lib/plex_ruby_sdk/models/operations/genre.rb +3 -1
  11. data/lib/plex_ruby_sdk/models/operations/get_actors_library_queryparam_type.rb +5 -3
  12. data/lib/plex_ruby_sdk/models/operations/get_all_libraries_type.rb +4 -0
  13. data/lib/plex_ruby_sdk/models/operations/get_countries_library_queryparam_type.rb +5 -3
  14. data/lib/plex_ruby_sdk/models/operations/get_genres_library_queryparam_type.rb +5 -3
  15. data/lib/plex_ruby_sdk/models/operations/get_library_items_library_type.rb +5 -1
  16. data/lib/plex_ruby_sdk/models/operations/get_library_items_metadata.rb +1 -1
  17. data/lib/plex_ruby_sdk/models/operations/get_library_items_queryparam_type.rb +5 -3
  18. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_activedirection.rb → get_library_sections_all_activedirection.rb} +2 -2
  19. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_collection.rb → get_library_sections_all_collection.rb} +1 -1
  20. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_country.rb → get_library_sections_all_country.rb} +1 -1
  21. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_defaultdirection.rb → get_library_sections_all_defaultdirection.rb} +2 -2
  22. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_director.rb → get_library_sections_all_director.rb} +1 -1
  23. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_field.rb → get_library_sections_all_field.rb} +1 -1
  24. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_fieldtype.rb → get_library_sections_all_fieldtype.rb} +3 -3
  25. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_filter.rb → get_library_sections_all_filter.rb} +1 -1
  26. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_genre.rb → get_library_sections_all_genre.rb} +1 -1
  27. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_guids.rb → get_library_sections_all_guids.rb} +4 -4
  28. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_hasthumbnail.rb → get_library_sections_all_hasthumbnail.rb} +2 -2
  29. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_image.rb → get_library_sections_all_image.rb} +3 -3
  30. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_library_optimizedforstreaming.rb → get_library_sections_all_library_optimizedforstreaming.rb} +1 -1
  31. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_library_response_type.rb → get_library_sections_all_library_response_type.rb} +1 -1
  32. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_library_type.rb → get_library_sections_all_library_type.rb} +6 -2
  33. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_media.rb → get_library_sections_all_media.rb} +3 -3
  34. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_mediacontainer.rb → get_library_sections_all_mediacontainer.rb} +4 -4
  35. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_meta.rb → get_library_sections_all_meta.rb} +4 -4
  36. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_metadata.rb → get_library_sections_all_metadata.rb} +13 -13
  37. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_operator.rb → get_library_sections_all_operator.rb} +1 -1
  38. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_optimizedforstreaming.rb → get_library_sections_all_optimizedforstreaming.rb} +1 -1
  39. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_optimizedforstreaming_1.rb → get_library_sections_all_optimizedforstreaming_1.rb} +1 -1
  40. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_part.rb → get_library_sections_all_part.rb} +5 -5
  41. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_queryparam_includemeta.rb → get_library_sections_all_queryparam_includemeta.rb} +2 -2
  42. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_queryparam_type.rb → get_library_sections_all_queryparam_type.rb} +7 -5
  43. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_request.rb → get_library_sections_all_request.rb} +4 -4
  44. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_response.rb → get_library_sections_all_response.rb} +3 -3
  45. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_responsebody.rb → get_library_sections_all_responsebody.rb} +3 -3
  46. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_role.rb → get_library_sections_all_role.rb} +1 -1
  47. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_sort.rb → get_library_sections_all_sort.rb} +4 -4
  48. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_stream.rb → get_library_sections_all_stream.rb} +3 -3
  49. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_streamtype.rb → get_library_sections_all_streamtype.rb} +2 -2
  50. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_type.rb → get_library_sections_all_type.rb} +5 -5
  51. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_ultrablurcolors.rb → get_library_sections_all_ultrablurcolors.rb} +1 -1
  52. data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_writer.rb → get_library_sections_all_writer.rb} +1 -1
  53. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_country.rb +8 -6
  54. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_director.rb +4 -4
  55. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_genre.rb +3 -1
  56. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_guids.rb +2 -1
  57. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_request.rb +3 -3
  58. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_role.rb +12 -8
  59. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_type.rb +5 -1
  60. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_writer.rb +2 -2
  61. data/lib/plex_ruby_sdk/models/operations/get_recently_added_hubs_type.rb +5 -1
  62. data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_metadata.rb +1 -1
  63. data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_type.rb +5 -1
  64. data/lib/plex_ruby_sdk/models/operations/get_search_library_queryparam_type.rb +5 -3
  65. data/lib/plex_ruby_sdk/models/operations/getplaylistcontents_queryparam_type.rb +5 -3
  66. data/lib/plex_ruby_sdk/models/operations/gettopwatchedcontent_mediacontainer.rb +14 -14
  67. data/lib/plex_ruby_sdk/models/operations/gettopwatchedcontent_queryparam_includeguids.rb +21 -0
  68. data/lib/plex_ruby_sdk/models/operations/gettopwatchedcontent_queryparam_type.rb +5 -3
  69. data/lib/plex_ruby_sdk/models/operations/gettopwatchedcontent_request.rb +3 -3
  70. data/lib/plex_ruby_sdk/models/operations/guids.rb +3 -3
  71. data/lib/plex_ruby_sdk/models/operations/producer.rb +5 -4
  72. data/lib/plex_ruby_sdk/models/operations/queryparam_type.rb +5 -3
  73. data/lib/plex_ruby_sdk/models/operations/rating.rb +1 -1
  74. data/lib/plex_ruby_sdk/models/operations/role.rb +12 -8
  75. data/lib/plex_ruby_sdk/models/operations/type.rb +5 -3
  76. data/lib/plex_ruby_sdk/models/operations/writer.rb +7 -3
  77. data/lib/plex_ruby_sdk/models/operations.rb +37 -36
  78. data/lib/plex_ruby_sdk/sdkconfiguration.rb +2 -2
  79. metadata +42 -41
@@ -15,25 +15,29 @@ module PlexRubySDK
15
15
 
16
16
  # The filter string used to query this actor. For example, it may indicate that this is an actor with a given key.
17
17
  field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
18
- # Unique identifier for the actor or role.
18
+ # The unique identifier for the role.
19
+ # NOTE: This is different for each Plex server and is not globally unique.
20
+ #
19
21
  field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
20
22
  # The display tag for the actor (typically the actor's name).
21
23
  field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
24
+ # A 24-character hexadecimal unique key associated with the actor's tag, used for internal identification.
25
+ # NOTE: This is globally unique across all Plex Servers.
26
+ #
27
+ field :tag_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } }
22
28
  # The role played by the actor in the media item.
23
29
  field :role, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('role') } }
24
- # A unique key associated with the actor's tag, used for internal identification.
25
- field :tag_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } }
26
- # The URL of the thumbnail image for the actor.
30
+ # The absolute URL of the thumbnail image for the actor.
27
31
  field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
28
32
 
29
33
 
30
- sig { params(filter: ::String, id: ::Integer, tag: ::String, role: T.nilable(::String), tag_key: T.nilable(::String), thumb: T.nilable(::String)).void }
31
- def initialize(filter: nil, id: nil, tag: nil, role: nil, tag_key: nil, thumb: nil)
34
+ sig { params(filter: ::String, id: ::Integer, tag: ::String, tag_key: ::String, role: T.nilable(::String), thumb: T.nilable(::String)).void }
35
+ def initialize(filter: nil, id: nil, tag: nil, tag_key: nil, role: nil, thumb: nil)
32
36
  @filter = filter
33
37
  @id = id
34
38
  @tag = tag
35
- @role = role
36
39
  @tag_key = tag_key
40
+ @role = role
37
41
  @thumb = thumb
38
42
  end
39
43
 
@@ -42,8 +46,8 @@ module PlexRubySDK
42
46
  return false unless @filter == other.filter
43
47
  return false unless @id == other.id
44
48
  return false unless @tag == other.tag
45
- return false unless @role == other.role
46
49
  return false unless @tag_key == other.tag_key
50
+ return false unless @role == other.role
47
51
  return false unless @thumb == other.thumb
48
52
  true
49
53
  end
@@ -8,7 +8,7 @@ module PlexRubySDK
8
8
  module Models
9
9
  module Operations
10
10
 
11
- # GetMediaMetaDataType - The type of media content
11
+ # GetMediaMetaDataType - The type of media content in the Plex library. This can represent videos, music, or photos.
12
12
  #
13
13
  class GetMediaMetaDataType < T::Enum
14
14
  enums do
@@ -18,6 +18,10 @@ module PlexRubySDK
18
18
  EPISODE = new('episode')
19
19
  ARTIST = new('artist')
20
20
  ALBUM = new('album')
21
+ TRACK = new('track')
22
+ PHOTO_ALBUM = new('photoalbum')
23
+ PHOTO = new('photo')
24
+ COLLECTION = new('collection')
21
25
  end
22
26
  end
23
27
  end
@@ -19,9 +19,9 @@ module PlexRubySDK
19
19
  field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
20
20
  # The role of Writer
21
21
  field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
22
- # A unique key associated with the writers tag, used for internal identification.
22
+ # A 24-character hexadecimal unique key associated with the writer’s tag, used for internal identification.
23
23
  field :tag_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } }
24
- # The URL of the thumbnail image for the writer.
24
+ # The absolute URL of the thumbnail image for the writer.
25
25
  field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
26
26
 
27
27
 
@@ -8,7 +8,7 @@ module PlexRubySDK
8
8
  module Models
9
9
  module Operations
10
10
 
11
- # GetRecentlyAddedHubsType - The type of media content
11
+ # GetRecentlyAddedHubsType - The type of media content in the Plex library. This can represent videos, music, or photos.
12
12
  #
13
13
  class GetRecentlyAddedHubsType < T::Enum
14
14
  enums do
@@ -18,6 +18,10 @@ module PlexRubySDK
18
18
  EPISODE = new('episode')
19
19
  ARTIST = new('artist')
20
20
  ALBUM = new('album')
21
+ TRACK = new('track')
22
+ PHOTO_ALBUM = new('photoalbum')
23
+ PHOTO = new('photo')
24
+ COLLECTION = new('collection')
21
25
  end
22
26
  end
23
27
  end
@@ -27,7 +27,7 @@ module PlexRubySDK
27
27
  field :summary, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('summary') } }
28
28
 
29
29
  field :title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
30
- # The type of media content
30
+ # The type of media content in the Plex library. This can represent videos, music, or photos.
31
31
  #
32
32
  field :type, Models::Operations::GetSearchAllLibrariesType, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type'), 'decoder': Utils.enum_from_string(Models::Operations::GetSearchAllLibrariesType, false) } }
33
33
 
@@ -8,7 +8,7 @@ module PlexRubySDK
8
8
  module Models
9
9
  module Operations
10
10
 
11
- # GetSearchAllLibrariesType - The type of media content
11
+ # GetSearchAllLibrariesType - The type of media content in the Plex library. This can represent videos, music, or photos.
12
12
  #
13
13
  class GetSearchAllLibrariesType < T::Enum
14
14
  enums do
@@ -18,6 +18,10 @@ module PlexRubySDK
18
18
  EPISODE = new('episode')
19
19
  ARTIST = new('artist')
20
20
  ALBUM = new('album')
21
+ TRACK = new('track')
22
+ PHOTO_ALBUM = new('photoalbum')
23
+ PHOTO = new('photo')
24
+ COLLECTION = new('collection')
21
25
  end
22
26
  end
23
27
  end
@@ -21,9 +21,11 @@ module PlexRubySDK
21
21
  TV_SHOW = new(2)
22
22
  SEASON = new(3)
23
23
  EPISODE = new(4)
24
- AUDIO = new(8)
25
- ALBUM = new(9)
26
- TRACK = new(10)
24
+ ARTIST = new(5)
25
+ ALBUM = new(6)
26
+ TRACK = new(7)
27
+ PHOTO_ALBUM = new(8)
28
+ PHOTO = new(9)
27
29
  end
28
30
  end
29
31
  end
@@ -21,9 +21,11 @@ module PlexRubySDK
21
21
  TV_SHOW = new(2)
22
22
  SEASON = new(3)
23
23
  EPISODE = new(4)
24
- AUDIO = new(8)
25
- ALBUM = new(9)
26
- TRACK = new(10)
24
+ ARTIST = new(5)
25
+ ALBUM = new(6)
26
+ TRACK = new(7)
27
+ PHOTO_ALBUM = new(8)
28
+ PHOTO = new(9)
27
29
  end
28
30
  end
29
31
  end
@@ -13,28 +13,28 @@ module PlexRubySDK
13
13
  extend T::Sig
14
14
  include Crystalline::MetadataFields
15
15
 
16
-
17
- field :allow_sync, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('allowSync') } }
18
-
19
- field :identifier, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('identifier') } }
20
-
21
- field :media_tag_prefix, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagPrefix') } }
22
-
23
- field :media_tag_version, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagVersion') } }
16
+ # Indicates whether syncing is allowed.
17
+ field :allow_sync, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('allowSync') } }
18
+ # An plugin identifier for the media container.
19
+ field :identifier, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('identifier') } }
20
+ # The prefix used for media tag resource paths.
21
+ field :media_tag_prefix, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagPrefix') } }
22
+ # The version number for media tags.
23
+ field :media_tag_version, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagVersion') } }
24
+ # Number of media items returned in this response.
25
+ field :size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
24
26
 
25
27
  field :metadata, T.nilable(T::Array[Models::Operations::GetTopWatchedContentMetadata]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Metadata') } }
26
28
 
27
- field :size, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
28
-
29
29
 
30
- sig { params(allow_sync: T.nilable(T::Boolean), identifier: T.nilable(::String), media_tag_prefix: T.nilable(::String), media_tag_version: T.nilable(::Integer), metadata: T.nilable(T::Array[Models::Operations::GetTopWatchedContentMetadata]), size: T.nilable(::Integer)).void }
31
- def initialize(allow_sync: nil, identifier: nil, media_tag_prefix: nil, media_tag_version: nil, metadata: nil, size: nil)
30
+ sig { params(allow_sync: T::Boolean, identifier: ::String, media_tag_prefix: ::String, media_tag_version: ::Integer, size: ::Integer, metadata: T.nilable(T::Array[Models::Operations::GetTopWatchedContentMetadata])).void }
31
+ def initialize(allow_sync: nil, identifier: nil, media_tag_prefix: nil, media_tag_version: nil, size: nil, metadata: nil)
32
32
  @allow_sync = allow_sync
33
33
  @identifier = identifier
34
34
  @media_tag_prefix = media_tag_prefix
35
35
  @media_tag_version = media_tag_version
36
- @metadata = metadata
37
36
  @size = size
37
+ @metadata = metadata
38
38
  end
39
39
 
40
40
  def ==(other)
@@ -43,8 +43,8 @@ module PlexRubySDK
43
43
  return false unless @identifier == other.identifier
44
44
  return false unless @media_tag_prefix == other.media_tag_prefix
45
45
  return false unless @media_tag_version == other.media_tag_version
46
- return false unless @metadata == other.metadata
47
46
  return false unless @size == other.size
47
+ return false unless @metadata == other.metadata
48
48
  true
49
49
  end
50
50
  end
@@ -0,0 +1,21 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module PlexRubySDK
8
+ module Models
9
+ module Operations
10
+
11
+ # GetTopWatchedContentQueryParamIncludeGuids - Adds the Guid object to the response
12
+ #
13
+ class GetTopWatchedContentQueryParamIncludeGuids < T::Enum
14
+ enums do
15
+ DISABLE = new(0)
16
+ ENABLE = new(1)
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
@@ -21,9 +21,11 @@ module PlexRubySDK
21
21
  TV_SHOW = new(2)
22
22
  SEASON = new(3)
23
23
  EPISODE = new(4)
24
- AUDIO = new(8)
25
- ALBUM = new(9)
26
- TRACK = new(10)
24
+ ARTIST = new(5)
25
+ ALBUM = new(6)
26
+ TRACK = new(7)
27
+ PHOTO_ALBUM = new(8)
28
+ PHOTO = new(9)
27
29
  end
28
30
  end
29
31
  end
@@ -21,12 +21,12 @@ module PlexRubySDK
21
21
  # E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
22
22
  #
23
23
  field :type, Models::Operations::GetTopWatchedContentQueryParamType, { 'query_param': { 'field_name': 'type', 'style': 'form', 'explode': true } }
24
- # Adds the Guids object to the response
24
+ # Adds the Guid object to the response
25
25
  #
26
- field :include_guids, T.nilable(::Integer), { 'query_param': { 'field_name': 'includeGuids', 'style': 'form', 'explode': true } }
26
+ field :include_guids, T.nilable(Models::Operations::GetTopWatchedContentQueryParamIncludeGuids), { 'query_param': { 'field_name': 'includeGuids', 'style': 'form', 'explode': true } }
27
27
 
28
28
 
29
- sig { params(type: Models::Operations::GetTopWatchedContentQueryParamType, include_guids: T.nilable(::Integer)).void }
29
+ sig { params(type: Models::Operations::GetTopWatchedContentQueryParamType, include_guids: T.nilable(Models::Operations::GetTopWatchedContentQueryParamIncludeGuids)).void }
30
30
  def initialize(type: nil, include_guids: nil)
31
31
  @type = type
32
32
  @include_guids = include_guids
@@ -13,12 +13,12 @@ module PlexRubySDK
13
13
  extend T::Sig
14
14
  include Crystalline::MetadataFields
15
15
 
16
- # The unique identifier for the Guid. Can be imdb://tt0286347, tmdb://1763, tvdb://2337
16
+ # The unique identifier for the Guid. Can be prefixed with imdb://, tmdb://, tvdb://
17
17
  #
18
- field :id, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
18
+ field :id, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
19
19
 
20
20
 
21
- sig { params(id: T.nilable(::String)).void }
21
+ sig { params(id: ::String).void }
22
22
  def initialize(id: nil)
23
23
  @id = id
24
24
  end
@@ -19,13 +19,14 @@ module PlexRubySDK
19
19
  field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
20
20
  # The name of the producer
21
21
  field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
22
- # A unique key associated with the producer's tag, used for internal identification.
23
- field :tag_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } }
24
- # The URL of the thumbnail image for the actor.
22
+ # A 24-character hexadecimal unique key associated with the producer's tag, used for internal identification.
23
+ #
24
+ field :tag_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } }
25
+ # The absolute URL of the thumbnail image for the producer.
25
26
  field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
26
27
 
27
28
 
28
- sig { params(filter: ::String, id: ::Integer, tag: ::String, tag_key: T.nilable(::String), thumb: T.nilable(::String)).void }
29
+ sig { params(filter: ::String, id: ::Integer, tag: ::String, tag_key: ::String, thumb: T.nilable(::String)).void }
29
30
  def initialize(filter: nil, id: nil, tag: nil, tag_key: nil, thumb: nil)
30
31
  @filter = filter
31
32
  @id = id
@@ -21,9 +21,11 @@ module PlexRubySDK
21
21
  TV_SHOW = new(2)
22
22
  SEASON = new(3)
23
23
  EPISODE = new(4)
24
- AUDIO = new(8)
25
- ALBUM = new(9)
26
- TRACK = new(10)
24
+ ARTIST = new(5)
25
+ ALBUM = new(6)
26
+ TRACK = new(7)
27
+ PHOTO_ALBUM = new(8)
28
+ PHOTO = new(9)
27
29
  end
28
30
  end
29
31
  end
@@ -13,7 +13,7 @@ module PlexRubySDK
13
13
  extend T::Sig
14
14
  include Crystalline::MetadataFields
15
15
 
16
-
16
+ # The URL for the rating image, for example from IMDb.
17
17
  field :image, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('image') } }
18
18
 
19
19
  field :type, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
@@ -15,25 +15,29 @@ module PlexRubySDK
15
15
 
16
16
  # The filter string used to query this actor. For example, it may indicate that this is an actor with a given key.
17
17
  field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
18
- # Unique identifier for the actor or role.
18
+ # The unique identifier for the role.
19
+ # NOTE: This is different for each Plex server and is not globally unique.
20
+ #
19
21
  field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
20
22
  # The display tag for the actor (typically the actor's name).
21
23
  field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
24
+ # A 24-character hexadecimal unique key associated with the actor's tag, used for internal identification.
25
+ # NOTE: This is globally unique across all Plex Servers.
26
+ #
27
+ field :tag_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } }
22
28
  # The role played by the actor in the media item.
23
29
  field :role, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('role') } }
24
- # A unique key associated with the actor's tag, used for internal identification.
25
- field :tag_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } }
26
- # The URL of the thumbnail image for the actor.
30
+ # The absolute URL of the thumbnail image for the actor.
27
31
  field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
28
32
 
29
33
 
30
- sig { params(filter: ::String, id: ::Integer, tag: ::String, role: T.nilable(::String), tag_key: T.nilable(::String), thumb: T.nilable(::String)).void }
31
- def initialize(filter: nil, id: nil, tag: nil, role: nil, tag_key: nil, thumb: nil)
34
+ sig { params(filter: ::String, id: ::Integer, tag: ::String, tag_key: ::String, role: T.nilable(::String), thumb: T.nilable(::String)).void }
35
+ def initialize(filter: nil, id: nil, tag: nil, tag_key: nil, role: nil, thumb: nil)
32
36
  @filter = filter
33
37
  @id = id
34
38
  @tag = tag
35
- @role = role
36
39
  @tag_key = tag_key
40
+ @role = role
37
41
  @thumb = thumb
38
42
  end
39
43
 
@@ -42,8 +46,8 @@ module PlexRubySDK
42
46
  return false unless @filter == other.filter
43
47
  return false unless @id == other.id
44
48
  return false unless @tag == other.tag
45
- return false unless @role == other.role
46
49
  return false unless @tag_key == other.tag_key
50
+ return false unless @role == other.role
47
51
  return false unless @thumb == other.thumb
48
52
  true
49
53
  end
@@ -21,9 +21,11 @@ module PlexRubySDK
21
21
  TV_SHOW = new(2)
22
22
  SEASON = new(3)
23
23
  EPISODE = new(4)
24
- AUDIO = new(8)
25
- ALBUM = new(9)
26
- TRACK = new(10)
24
+ ARTIST = new(5)
25
+ ALBUM = new(6)
26
+ TRACK = new(7)
27
+ PHOTO_ALBUM = new(8)
28
+ PHOTO = new(9)
27
29
  end
28
30
  end
29
31
  end
@@ -19,16 +19,19 @@ module PlexRubySDK
19
19
  field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
20
20
  # The role of Writer
21
21
  field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
22
- # A unique key associated with the writers tag, used for internal identification.
22
+ # A 24-character hexadecimal unique key associated with the writer’s tag, used for internal identification.
23
23
  field :tag_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } }
24
+ # The absolute URL of the thumbnail image for the writer.
25
+ field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
24
26
 
25
27
 
26
- sig { params(filter: ::String, id: ::Integer, tag: ::String, tag_key: T.nilable(::String)).void }
27
- def initialize(filter: nil, id: nil, tag: nil, tag_key: nil)
28
+ sig { params(filter: ::String, id: ::Integer, tag: ::String, tag_key: T.nilable(::String), thumb: T.nilable(::String)).void }
29
+ def initialize(filter: nil, id: nil, tag: nil, tag_key: nil, thumb: nil)
28
30
  @filter = filter
29
31
  @id = id
30
32
  @tag = tag
31
33
  @tag_key = tag_key
34
+ @thumb = thumb
32
35
  end
33
36
 
34
37
  def ==(other)
@@ -37,6 +40,7 @@ module PlexRubySDK
37
40
  return false unless @id == other.id
38
41
  return false unless @tag == other.tag
39
42
  return false unless @tag_key == other.tag_key
43
+ return false unless @thumb == other.thumb
40
44
  true
41
45
  end
42
46
  end
@@ -122,41 +122,6 @@ module PlexRubySDK
122
122
  autoload :GetAllLibrariesResponse, 'plex_ruby_sdk/models/operations/get_all_libraries_response.rb'
123
123
  autoload :GetAllLibrariesResponseBody, 'plex_ruby_sdk/models/operations/get_all_libraries_responsebody.rb'
124
124
  autoload :GetAllLibrariesType, 'plex_ruby_sdk/models/operations/get_all_libraries_type.rb'
125
- autoload :GetAllMediaLibraryCollection, 'plex_ruby_sdk/models/operations/get_all_media_library_collection.rb'
126
- autoload :GetAllMediaLibraryCountry, 'plex_ruby_sdk/models/operations/get_all_media_library_country.rb'
127
- autoload :GetAllMediaLibraryDirector, 'plex_ruby_sdk/models/operations/get_all_media_library_director.rb'
128
- autoload :GetAllMediaLibraryField, 'plex_ruby_sdk/models/operations/get_all_media_library_field.rb'
129
- autoload :GetAllMediaLibraryFieldType, 'plex_ruby_sdk/models/operations/get_all_media_library_fieldtype.rb'
130
- autoload :GetAllMediaLibraryFilter, 'plex_ruby_sdk/models/operations/get_all_media_library_filter.rb'
131
- autoload :GetAllMediaLibraryGenre, 'plex_ruby_sdk/models/operations/get_all_media_library_genre.rb'
132
- autoload :GetAllMediaLibraryImage, 'plex_ruby_sdk/models/operations/get_all_media_library_image.rb'
133
- autoload :GetAllMediaLibraryLibraryOptimizedForStreaming, 'plex_ruby_sdk/models/operations/get_all_media_library_library_optimizedforstreaming.rb'
134
- autoload :GetAllMediaLibraryLibraryResponseType, 'plex_ruby_sdk/models/operations/get_all_media_library_library_response_type.rb'
135
- autoload :GetAllMediaLibraryLibraryType, 'plex_ruby_sdk/models/operations/get_all_media_library_library_type.rb'
136
- autoload :GetAllMediaLibraryMedia, 'plex_ruby_sdk/models/operations/get_all_media_library_media.rb'
137
- autoload :GetAllMediaLibraryMediaContainer, 'plex_ruby_sdk/models/operations/get_all_media_library_mediacontainer.rb'
138
- autoload :GetAllMediaLibraryMeta, 'plex_ruby_sdk/models/operations/get_all_media_library_meta.rb'
139
- autoload :GetAllMediaLibraryMetadata, 'plex_ruby_sdk/models/operations/get_all_media_library_metadata.rb'
140
- autoload :GetAllMediaLibraryOperator, 'plex_ruby_sdk/models/operations/get_all_media_library_operator.rb'
141
- autoload :GetAllMediaLibraryPart, 'plex_ruby_sdk/models/operations/get_all_media_library_part.rb'
142
- autoload :GetAllMediaLibraryRole, 'plex_ruby_sdk/models/operations/get_all_media_library_role.rb'
143
- autoload :GetAllMediaLibrarySort, 'plex_ruby_sdk/models/operations/get_all_media_library_sort.rb'
144
- autoload :GetAllMediaLibraryStream, 'plex_ruby_sdk/models/operations/get_all_media_library_stream.rb'
145
- autoload :GetAllMediaLibraryType, 'plex_ruby_sdk/models/operations/get_all_media_library_type.rb'
146
- autoload :GetAllMediaLibraryUltraBlurColors, 'plex_ruby_sdk/models/operations/get_all_media_library_ultrablurcolors.rb'
147
- autoload :GetAllMediaLibraryWriter, 'plex_ruby_sdk/models/operations/get_all_media_library_writer.rb'
148
- autoload :GetAllMediaLibraryActiveDirection, 'plex_ruby_sdk/models/operations/get_all_media_library_activedirection.rb'
149
- autoload :GetAllMediaLibraryDefaultDirection, 'plex_ruby_sdk/models/operations/get_all_media_library_defaultdirection.rb'
150
- autoload :GetAllMediaLibraryGuids, 'plex_ruby_sdk/models/operations/get_all_media_library_guids.rb'
151
- autoload :GetAllMediaLibraryHasThumbnail, 'plex_ruby_sdk/models/operations/get_all_media_library_hasthumbnail.rb'
152
- autoload :GetAllMediaLibraryOptimizedForStreaming, 'plex_ruby_sdk/models/operations/get_all_media_library_optimizedforstreaming.rb'
153
- autoload :GetAllMediaLibraryOptimizedForStreaming1, 'plex_ruby_sdk/models/operations/get_all_media_library_optimizedforstreaming_1.rb'
154
- autoload :GetAllMediaLibraryQueryParamIncludeMeta, 'plex_ruby_sdk/models/operations/get_all_media_library_queryparam_includemeta.rb'
155
- autoload :GetAllMediaLibraryQueryParamType, 'plex_ruby_sdk/models/operations/get_all_media_library_queryparam_type.rb'
156
- autoload :GetAllMediaLibraryRequest, 'plex_ruby_sdk/models/operations/get_all_media_library_request.rb'
157
- autoload :GetAllMediaLibraryResponse, 'plex_ruby_sdk/models/operations/get_all_media_library_response.rb'
158
- autoload :GetAllMediaLibraryResponseBody, 'plex_ruby_sdk/models/operations/get_all_media_library_responsebody.rb'
159
- autoload :GetAllMediaLibraryStreamType, 'plex_ruby_sdk/models/operations/get_all_media_library_streamtype.rb'
160
125
  autoload :GetBannerImageRequest, 'plex_ruby_sdk/models/operations/get_banner_image_request.rb'
161
126
  autoload :GetBannerImageResponse, 'plex_ruby_sdk/models/operations/get_banner_image_response.rb'
162
127
  autoload :GetCountriesLibraryDirectory, 'plex_ruby_sdk/models/operations/get_countries_library_directory.rb'
@@ -222,6 +187,41 @@ module PlexRubySDK
222
187
  autoload :GetLibraryItemsRequest, 'plex_ruby_sdk/models/operations/get_library_items_request.rb'
223
188
  autoload :GetLibraryItemsResponse, 'plex_ruby_sdk/models/operations/get_library_items_response.rb'
224
189
  autoload :GetLibraryItemsResponseBody, 'plex_ruby_sdk/models/operations/get_library_items_responsebody.rb'
190
+ autoload :GetLibrarySectionsAllCollection, 'plex_ruby_sdk/models/operations/get_library_sections_all_collection.rb'
191
+ autoload :GetLibrarySectionsAllCountry, 'plex_ruby_sdk/models/operations/get_library_sections_all_country.rb'
192
+ autoload :GetLibrarySectionsAllDirector, 'plex_ruby_sdk/models/operations/get_library_sections_all_director.rb'
193
+ autoload :GetLibrarySectionsAllField, 'plex_ruby_sdk/models/operations/get_library_sections_all_field.rb'
194
+ autoload :GetLibrarySectionsAllFieldType, 'plex_ruby_sdk/models/operations/get_library_sections_all_fieldtype.rb'
195
+ autoload :GetLibrarySectionsAllFilter, 'plex_ruby_sdk/models/operations/get_library_sections_all_filter.rb'
196
+ autoload :GetLibrarySectionsAllGenre, 'plex_ruby_sdk/models/operations/get_library_sections_all_genre.rb'
197
+ autoload :GetLibrarySectionsAllImage, 'plex_ruby_sdk/models/operations/get_library_sections_all_image.rb'
198
+ autoload :GetLibrarySectionsAllLibraryOptimizedForStreaming, 'plex_ruby_sdk/models/operations/get_library_sections_all_library_optimizedforstreaming.rb'
199
+ autoload :GetLibrarySectionsAllLibraryResponseType, 'plex_ruby_sdk/models/operations/get_library_sections_all_library_response_type.rb'
200
+ autoload :GetLibrarySectionsAllLibraryType, 'plex_ruby_sdk/models/operations/get_library_sections_all_library_type.rb'
201
+ autoload :GetLibrarySectionsAllMedia, 'plex_ruby_sdk/models/operations/get_library_sections_all_media.rb'
202
+ autoload :GetLibrarySectionsAllMediaContainer, 'plex_ruby_sdk/models/operations/get_library_sections_all_mediacontainer.rb'
203
+ autoload :GetLibrarySectionsAllMeta, 'plex_ruby_sdk/models/operations/get_library_sections_all_meta.rb'
204
+ autoload :GetLibrarySectionsAllMetadata, 'plex_ruby_sdk/models/operations/get_library_sections_all_metadata.rb'
205
+ autoload :GetLibrarySectionsAllOperator, 'plex_ruby_sdk/models/operations/get_library_sections_all_operator.rb'
206
+ autoload :GetLibrarySectionsAllPart, 'plex_ruby_sdk/models/operations/get_library_sections_all_part.rb'
207
+ autoload :GetLibrarySectionsAllRole, 'plex_ruby_sdk/models/operations/get_library_sections_all_role.rb'
208
+ autoload :GetLibrarySectionsAllSort, 'plex_ruby_sdk/models/operations/get_library_sections_all_sort.rb'
209
+ autoload :GetLibrarySectionsAllStream, 'plex_ruby_sdk/models/operations/get_library_sections_all_stream.rb'
210
+ autoload :GetLibrarySectionsAllType, 'plex_ruby_sdk/models/operations/get_library_sections_all_type.rb'
211
+ autoload :GetLibrarySectionsAllUltraBlurColors, 'plex_ruby_sdk/models/operations/get_library_sections_all_ultrablurcolors.rb'
212
+ autoload :GetLibrarySectionsAllWriter, 'plex_ruby_sdk/models/operations/get_library_sections_all_writer.rb'
213
+ autoload :GetLibrarySectionsAllActiveDirection, 'plex_ruby_sdk/models/operations/get_library_sections_all_activedirection.rb'
214
+ autoload :GetLibrarySectionsAllDefaultDirection, 'plex_ruby_sdk/models/operations/get_library_sections_all_defaultdirection.rb'
215
+ autoload :GetLibrarySectionsAllGuids, 'plex_ruby_sdk/models/operations/get_library_sections_all_guids.rb'
216
+ autoload :GetLibrarySectionsAllHasThumbnail, 'plex_ruby_sdk/models/operations/get_library_sections_all_hasthumbnail.rb'
217
+ autoload :GetLibrarySectionsAllOptimizedForStreaming, 'plex_ruby_sdk/models/operations/get_library_sections_all_optimizedforstreaming.rb'
218
+ autoload :GetLibrarySectionsAllOptimizedForStreaming1, 'plex_ruby_sdk/models/operations/get_library_sections_all_optimizedforstreaming_1.rb'
219
+ autoload :GetLibrarySectionsAllQueryParamIncludeMeta, 'plex_ruby_sdk/models/operations/get_library_sections_all_queryparam_includemeta.rb'
220
+ autoload :GetLibrarySectionsAllQueryParamType, 'plex_ruby_sdk/models/operations/get_library_sections_all_queryparam_type.rb'
221
+ autoload :GetLibrarySectionsAllRequest, 'plex_ruby_sdk/models/operations/get_library_sections_all_request.rb'
222
+ autoload :GetLibrarySectionsAllResponse, 'plex_ruby_sdk/models/operations/get_library_sections_all_response.rb'
223
+ autoload :GetLibrarySectionsAllResponseBody, 'plex_ruby_sdk/models/operations/get_library_sections_all_responsebody.rb'
224
+ autoload :GetLibrarySectionsAllStreamType, 'plex_ruby_sdk/models/operations/get_library_sections_all_streamtype.rb'
225
225
  autoload :GetMediaArtsMediaContainer, 'plex_ruby_sdk/models/operations/get_media_arts_mediacontainer.rb'
226
226
  autoload :GetMediaArtsMetadata, 'plex_ruby_sdk/models/operations/get_media_arts_metadata.rb'
227
227
  autoload :GetMediaArtsRequest, 'plex_ruby_sdk/models/operations/get_media_arts_request.rb'
@@ -230,7 +230,6 @@ module PlexRubySDK
230
230
  autoload :GetMediaMetaDataCountry, 'plex_ruby_sdk/models/operations/get_media_meta_data_country.rb'
231
231
  autoload :GetMediaMetaDataDirector, 'plex_ruby_sdk/models/operations/get_media_meta_data_director.rb'
232
232
  autoload :GetMediaMetaDataGenre, 'plex_ruby_sdk/models/operations/get_media_meta_data_genre.rb'
233
- autoload :GetMediaMetaDataGuids, 'plex_ruby_sdk/models/operations/get_media_meta_data_guids.rb'
234
233
  autoload :GetMediaMetaDataImage, 'plex_ruby_sdk/models/operations/get_media_meta_data_image.rb'
235
234
  autoload :GetMediaMetaDataLibraryOptimizedForStreaming, 'plex_ruby_sdk/models/operations/get_media_meta_data_library_optimizedforstreaming.rb'
236
235
  autoload :GetMediaMetaDataLibraryType, 'plex_ruby_sdk/models/operations/get_media_meta_data_library_type.rb'
@@ -245,6 +244,7 @@ module PlexRubySDK
245
244
  autoload :GetMediaMetaDataStream, 'plex_ruby_sdk/models/operations/get_media_meta_data_stream.rb'
246
245
  autoload :GetMediaMetaDataUltraBlurColors, 'plex_ruby_sdk/models/operations/get_media_meta_data_ultrablurcolors.rb'
247
246
  autoload :GetMediaMetaDataWriter, 'plex_ruby_sdk/models/operations/get_media_meta_data_writer.rb'
247
+ autoload :GetMediaMetaDataGuids, 'plex_ruby_sdk/models/operations/get_media_meta_data_guids.rb'
248
248
  autoload :GetMediaMetaDataHasThumbnail, 'plex_ruby_sdk/models/operations/get_media_meta_data_hasthumbnail.rb'
249
249
  autoload :GetMediaMetaDataOptimizedForStreaming, 'plex_ruby_sdk/models/operations/get_media_meta_data_optimizedforstreaming.rb'
250
250
  autoload :GetMediaMetaDataOptimizedForStreaming1, 'plex_ruby_sdk/models/operations/get_media_meta_data_optimizedforstreaming_1.rb'
@@ -490,6 +490,7 @@ module PlexRubySDK
490
490
  autoload :GetTopWatchedContentRole, 'plex_ruby_sdk/models/operations/gettopwatchedcontent_role.rb'
491
491
  autoload :GetTopWatchedContentUser, 'plex_ruby_sdk/models/operations/gettopwatchedcontent_user.rb'
492
492
  autoload :GetTopWatchedContentGuids, 'plex_ruby_sdk/models/operations/gettopwatchedcontent_guids.rb'
493
+ autoload :GetTopWatchedContentQueryParamIncludeGuids, 'plex_ruby_sdk/models/operations/gettopwatchedcontent_queryparam_includeguids.rb'
493
494
  autoload :GetTopWatchedContentQueryParamType, 'plex_ruby_sdk/models/operations/gettopwatchedcontent_queryparam_type.rb'
494
495
  autoload :GetTopWatchedContentRequest, 'plex_ruby_sdk/models/operations/gettopwatchedcontent_request.rb'
495
496
  autoload :GetTopWatchedContentResponse, 'plex_ruby_sdk/models/operations/gettopwatchedcontent_response.rb'
@@ -66,9 +66,9 @@ module PlexRubySDK
66
66
  end
67
67
  @language = 'ruby'
68
68
  @openapi_doc_version = '0.0.3'
69
- @sdk_version = '0.13.1'
69
+ @sdk_version = '0.15.0'
70
70
  @gen_version = '2.570.4'
71
- @user_agent = 'speakeasy-sdk/ruby 0.13.1 2.570.4 0.0.3 plex_ruby_sdk'
71
+ @user_agent = 'speakeasy-sdk/ruby 0.15.0 2.570.4 0.0.3 plex_ruby_sdk'
72
72
  end
73
73
 
74
74
  sig { returns([String, T::Hash[Symbol, String]]) }