plex_ruby_sdk 0.3.6 → 0.4.1

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 (67) hide show
  1. checksums.yaml +4 -4
  2. data/lib/plex_ruby_sdk/authentication.rb +3 -10
  3. data/lib/plex_ruby_sdk/models/operations/action.rb +27 -0
  4. data/lib/plex_ruby_sdk/models/operations/activedirection.rb +19 -0
  5. data/lib/plex_ruby_sdk/models/operations/autoselectsubtitle.rb +2 -2
  6. data/lib/plex_ruby_sdk/models/operations/collection.rb +24 -0
  7. data/lib/plex_ruby_sdk/models/operations/connections.rb +10 -10
  8. data/lib/plex_ruby_sdk/models/operations/defaultdirection.rb +19 -0
  9. data/lib/plex_ruby_sdk/models/operations/defaultsubtitleaccessibility.rb +3 -3
  10. data/lib/plex_ruby_sdk/models/operations/defaultsubtitleforced.rb +2 -2
  11. data/lib/plex_ruby_sdk/models/operations/feature.rb +16 -4
  12. data/lib/plex_ruby_sdk/models/operations/flattenseasons.rb +18 -0
  13. data/lib/plex_ruby_sdk/models/operations/get_all_libraries_directory.rb +25 -25
  14. data/lib/plex_ruby_sdk/models/operations/get_all_libraries_mediacontainer.rb +5 -5
  15. data/lib/plex_ruby_sdk/models/operations/get_all_libraries_responsebody.rb +2 -2
  16. data/lib/plex_ruby_sdk/models/operations/get_library_items_field.rb +33 -0
  17. data/lib/plex_ruby_sdk/models/operations/get_library_items_fieldtype.rb +27 -0
  18. data/lib/plex_ruby_sdk/models/operations/get_library_items_filter.rb +36 -0
  19. data/lib/plex_ruby_sdk/models/operations/get_library_items_image.rb +30 -0
  20. data/lib/plex_ruby_sdk/models/operations/get_library_items_library_response_type.rb +20 -0
  21. data/lib/plex_ruby_sdk/models/operations/get_library_items_library_type.rb +42 -0
  22. data/lib/plex_ruby_sdk/models/operations/get_library_items_media.rb +22 -16
  23. data/lib/plex_ruby_sdk/models/operations/get_library_items_mediacontainer.rb +34 -18
  24. data/lib/plex_ruby_sdk/models/operations/get_library_items_metadata.rb +68 -23
  25. data/lib/plex_ruby_sdk/models/operations/get_library_items_operator.rb +27 -0
  26. data/lib/plex_ruby_sdk/models/operations/get_library_items_part.rb +19 -9
  27. data/lib/plex_ruby_sdk/models/operations/get_library_items_request.rb +10 -10
  28. data/lib/plex_ruby_sdk/models/operations/get_library_items_sort.rb +47 -0
  29. data/lib/plex_ruby_sdk/models/operations/get_library_items_type.rb +21 -0
  30. data/lib/plex_ruby_sdk/models/operations/get_server_resources_request.rb +2 -8
  31. data/lib/plex_ruby_sdk/models/operations/getpin_request.rb +2 -8
  32. data/lib/plex_ruby_sdk/models/operations/getplaylistcontents_queryparam_type.rb +4 -4
  33. data/lib/plex_ruby_sdk/models/operations/gettokenbypinid_request.rb +2 -8
  34. data/lib/plex_ruby_sdk/models/operations/gettokendetails_userplexaccount.rb +7 -4
  35. data/lib/plex_ruby_sdk/models/operations/gettopwatchedcontent_queryparam_type.rb +4 -4
  36. data/lib/plex_ruby_sdk/models/operations/hasthumbnail.rb +18 -0
  37. data/lib/plex_ruby_sdk/models/operations/includeguids.rb +2 -2
  38. data/lib/plex_ruby_sdk/models/operations/includehttps.rb +2 -2
  39. data/lib/plex_ruby_sdk/models/operations/includeipv6.rb +2 -2
  40. data/lib/plex_ruby_sdk/models/operations/includemeta.rb +2 -2
  41. data/lib/plex_ruby_sdk/models/operations/includerelay.rb +2 -2
  42. data/lib/plex_ruby_sdk/models/operations/location.rb +3 -3
  43. data/lib/plex_ruby_sdk/models/operations/mediaguid.rb +26 -0
  44. data/lib/plex_ruby_sdk/models/operations/mediareviewsvisibility.rb +3 -3
  45. data/lib/plex_ruby_sdk/models/operations/meta.rb +28 -0
  46. data/lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_autoselectsubtitle.rb +2 -2
  47. data/lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_defaultsubtitleaccessibility.rb +3 -3
  48. data/lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_defaultsubtitleforced.rb +2 -2
  49. data/lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_mediareviewsvisibility.rb +3 -3
  50. data/lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_userplexaccount.rb +7 -4
  51. data/lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_userprofile.rb +14 -14
  52. data/lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_watchedindicator.rb +3 -3
  53. data/lib/plex_ruby_sdk/models/operations/protocol.rb +21 -0
  54. data/lib/plex_ruby_sdk/models/operations/queryparam_type.rb +4 -4
  55. data/lib/plex_ruby_sdk/models/operations/showordering.rb +27 -0
  56. data/lib/plex_ruby_sdk/models/operations/type.rb +4 -4
  57. data/lib/plex_ruby_sdk/models/operations/ultrablurcolors.rb +33 -0
  58. data/lib/plex_ruby_sdk/models/operations/uploadplaylist_request.rb +5 -2
  59. data/lib/plex_ruby_sdk/models/operations/userprofile.rb +14 -14
  60. data/lib/plex_ruby_sdk/models/operations/watchedindicator.rb +3 -3
  61. data/lib/plex_ruby_sdk/models/operations.rb +20 -1
  62. data/lib/plex_ruby_sdk/models/shared/security.rb +1 -1
  63. data/lib/plex_ruby_sdk/playlists.rb +4 -3
  64. data/lib/plex_ruby_sdk/plex.rb +5 -9
  65. data/lib/plex_ruby_sdk/sdkconfiguration.rb +3 -3
  66. metadata +22 -3
  67. data/lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_request.rb +0 -33
@@ -14,11 +14,6 @@ module PlexRubySDK
14
14
  class GetPinRequest < ::PlexRubySDK::Utils::FieldAugmented
15
15
  extend T::Sig
16
16
 
17
- # The unique identifier for the client application
18
- # This is used to track the client application and its usage
19
- # (UUID, serial number, or other number unique per device)
20
- #
21
- field :client_id, T.nilable(::String), { 'query_param': { 'field_name': 'X-Plex-Client-Identifier', 'style': 'form', 'explode': true } }
22
17
 
23
18
  field :client_name, T.nilable(::String), { 'query_param': { 'field_name': 'X-Plex-Product', 'style': 'form', 'explode': true } }
24
19
 
@@ -34,9 +29,8 @@ module PlexRubySDK
34
29
  field :strong, T.nilable(T::Boolean), { 'query_param': { 'field_name': 'strong', 'style': 'form', 'explode': true } }
35
30
 
36
31
 
37
- sig { params(client_id: T.nilable(::String), client_name: T.nilable(::String), client_platform: T.nilable(::String), client_version: T.nilable(::String), device_name: T.nilable(::String), strong: T.nilable(T::Boolean)).void }
38
- def initialize(client_id: nil, client_name: nil, client_platform: nil, client_version: nil, device_name: nil, strong: nil)
39
- @client_id = client_id
32
+ sig { params(client_name: T.nilable(::String), client_platform: T.nilable(::String), client_version: T.nilable(::String), device_name: T.nilable(::String), strong: T.nilable(T::Boolean)).void }
33
+ def initialize(client_name: nil, client_platform: nil, client_version: nil, device_name: nil, strong: nil)
40
34
  @client_name = client_name
41
35
  @client_platform = client_platform
42
36
  @client_version = client_version
@@ -16,10 +16,10 @@ module PlexRubySDK
16
16
  #
17
17
  class GetPlaylistContentsQueryParamType < T::Enum
18
18
  enums do
19
- ONE = new(1)
20
- TWO = new(2)
21
- THREE = new(3)
22
- FOUR = new(4)
19
+ MOVIE = new(1)
20
+ TV_SHOW = new(2)
21
+ SEASON = new(3)
22
+ EPISODE = new(4)
23
23
  end
24
24
  end
25
25
  end
@@ -16,17 +16,11 @@ module PlexRubySDK
16
16
 
17
17
  # The PinID to retrieve an access token for
18
18
  field :pin_id, ::Integer, { 'path_param': { 'field_name': 'pinID', 'style': 'simple', 'explode': false } }
19
- # The unique identifier for the client application
20
- # This is used to track the client application and its usage
21
- # (UUID, serial number, or other number unique per device)
22
- #
23
- field :client_id, T.nilable(::String), { 'query_param': { 'field_name': 'X-Plex-Client-Identifier', 'style': 'form', 'explode': true } }
24
19
 
25
20
 
26
- sig { params(pin_id: ::Integer, client_id: T.nilable(::String)).void }
27
- def initialize(pin_id: nil, client_id: nil)
21
+ sig { params(pin_id: ::Integer).void }
22
+ def initialize(pin_id: nil)
28
23
  @pin_id = pin_id
29
- @client_id = client_id
30
24
  end
31
25
  end
32
26
  end
@@ -22,6 +22,8 @@ module PlexRubySDK
22
22
  field :ads_consent_set_at, ::DateTime, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('adsConsentSetAt'), 'decoder': Utils.datetime_from_iso_format(false) } }
23
23
  # Unknown
24
24
  field :anonymous, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('anonymous') } }
25
+
26
+ field :attribution_partner, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('attributionPartner') } }
25
27
  # The account token
26
28
  field :auth_token, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('authToken') } }
27
29
  # If the two-factor authentication backup codes have been created
@@ -52,7 +54,7 @@ module PlexRubySDK
52
54
  field :home_size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('homeSize') } }
53
55
  # The Plex account ID
54
56
  field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
55
- # Unix epoch datetime
57
+ # Unix epoch datetime in seconds
56
58
  field :joined_at, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('joinedAt') } }
57
59
  # The account locale
58
60
  field :locale, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('locale') } }
@@ -66,7 +68,7 @@ module PlexRubySDK
66
68
  field :profile, ::PlexRubySDK::Operations::UserProfile, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('profile') } }
67
69
  # If the account has a Plex Home PIN enabled
68
70
  field :protected, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('protected') } }
69
- # Unix epoch datetime
71
+ # Unix epoch datetime in seconds
70
72
  field :remember_expires_at, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('rememberExpiresAt') } }
71
73
  # If the account is a Plex Home managed user
72
74
  field :restricted, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('restricted') } }
@@ -98,12 +100,13 @@ module PlexRubySDK
98
100
  field :roles, T.nilable(T::Array[::String]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('roles') } }
99
101
 
100
102
 
101
- sig { params(ads_consent: T::Boolean, ads_consent_reminder_at: ::DateTime, ads_consent_set_at: ::DateTime, anonymous: T::Boolean, auth_token: ::String, backup_codes_created: T::Boolean, confirmed: T::Boolean, country: ::String, email: ::String, email_only_auth: T::Boolean, entitlements: T::Array[::String], experimental_features: T::Boolean, friendly_name: ::String, guest: T::Boolean, has_password: T::Boolean, home: T::Boolean, home_admin: T::Boolean, home_size: ::Integer, id: ::Integer, joined_at: ::Integer, locale: ::String, mailing_list_active: T::Boolean, mailing_list_status: ::PlexRubySDK::Operations::MailingListStatus, max_home_size: ::Integer, profile: ::PlexRubySDK::Operations::UserProfile, protected: T::Boolean, remember_expires_at: ::Integer, restricted: T::Boolean, scrobble_types: ::String, services: T::Array[::PlexRubySDK::Operations::Services], subscription: ::PlexRubySDK::Operations::Subscription, subscription_description: ::String, subscriptions: T::Array[::PlexRubySDK::Operations::GetTokenDetailsSubscription], thumb: ::String, title: ::String, two_factor_enabled: T::Boolean, username: ::String, uuid: ::String, pin: T.nilable(::String), roles: T.nilable(T::Array[::String])).void }
102
- def initialize(ads_consent: nil, ads_consent_reminder_at: nil, ads_consent_set_at: nil, anonymous: nil, auth_token: nil, backup_codes_created: nil, confirmed: nil, country: nil, email: nil, email_only_auth: nil, entitlements: nil, experimental_features: nil, friendly_name: nil, guest: nil, has_password: nil, home: nil, home_admin: nil, home_size: nil, id: nil, joined_at: nil, locale: nil, mailing_list_active: nil, mailing_list_status: nil, max_home_size: nil, profile: nil, protected: nil, remember_expires_at: nil, restricted: nil, scrobble_types: nil, services: nil, subscription: nil, subscription_description: nil, subscriptions: nil, thumb: nil, title: nil, two_factor_enabled: nil, username: nil, uuid: nil, pin: nil, roles: nil)
103
+ sig { params(ads_consent: T::Boolean, ads_consent_reminder_at: ::DateTime, ads_consent_set_at: ::DateTime, anonymous: T::Boolean, attribution_partner: ::String, auth_token: ::String, backup_codes_created: T::Boolean, confirmed: T::Boolean, country: ::String, email: ::String, email_only_auth: T::Boolean, entitlements: T::Array[::String], experimental_features: T::Boolean, friendly_name: ::String, guest: T::Boolean, has_password: T::Boolean, home: T::Boolean, home_admin: T::Boolean, home_size: ::Integer, id: ::Integer, joined_at: ::Integer, locale: ::String, mailing_list_active: T::Boolean, mailing_list_status: ::PlexRubySDK::Operations::MailingListStatus, max_home_size: ::Integer, profile: ::PlexRubySDK::Operations::UserProfile, protected: T::Boolean, remember_expires_at: ::Integer, restricted: T::Boolean, scrobble_types: ::String, services: T::Array[::PlexRubySDK::Operations::Services], subscription: ::PlexRubySDK::Operations::Subscription, subscription_description: ::String, subscriptions: T::Array[::PlexRubySDK::Operations::GetTokenDetailsSubscription], thumb: ::String, title: ::String, two_factor_enabled: T::Boolean, username: ::String, uuid: ::String, pin: T.nilable(::String), roles: T.nilable(T::Array[::String])).void }
104
+ def initialize(ads_consent: nil, ads_consent_reminder_at: nil, ads_consent_set_at: nil, anonymous: nil, attribution_partner: nil, auth_token: nil, backup_codes_created: nil, confirmed: nil, country: nil, email: nil, email_only_auth: nil, entitlements: nil, experimental_features: nil, friendly_name: nil, guest: nil, has_password: nil, home: nil, home_admin: nil, home_size: nil, id: nil, joined_at: nil, locale: nil, mailing_list_active: nil, mailing_list_status: nil, max_home_size: nil, profile: nil, protected: nil, remember_expires_at: nil, restricted: nil, scrobble_types: nil, services: nil, subscription: nil, subscription_description: nil, subscriptions: nil, thumb: nil, title: nil, two_factor_enabled: nil, username: nil, uuid: nil, pin: nil, roles: nil)
103
105
  @ads_consent = ads_consent
104
106
  @ads_consent_reminder_at = ads_consent_reminder_at
105
107
  @ads_consent_set_at = ads_consent_set_at
106
108
  @anonymous = anonymous
109
+ @attribution_partner = attribution_partner
107
110
  @auth_token = auth_token
108
111
  @backup_codes_created = backup_codes_created
109
112
  @confirmed = confirmed
@@ -16,10 +16,10 @@ module PlexRubySDK
16
16
  #
17
17
  class GetTopWatchedContentQueryParamType < T::Enum
18
18
  enums do
19
- ONE = new(1)
20
- TWO = new(2)
21
- THREE = new(3)
22
- FOUR = new(4)
19
+ MOVIE = new(1)
20
+ TV_SHOW = new(2)
21
+ SEASON = new(3)
22
+ EPISODE = new(4)
23
23
  end
24
24
  end
25
25
  end
@@ -0,0 +1,18 @@
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 Operations
9
+
10
+
11
+ class HasThumbnail < T::Enum
12
+ enums do
13
+ FALSE = new('0')
14
+ TRUE = new('1')
15
+ end
16
+ end
17
+ end
18
+ end
@@ -11,8 +11,8 @@ module PlexRubySDK
11
11
  #
12
12
  class IncludeGuids < T::Enum
13
13
  enums do
14
- ZERO = new(0)
15
- ONE = new(1)
14
+ DISABLE = new(0)
15
+ ENABLE = new(1)
16
16
  end
17
17
  end
18
18
  end
@@ -13,8 +13,8 @@ module PlexRubySDK
13
13
  # IncludeHttps - Include Https entries in the results
14
14
  class IncludeHttps < T::Enum
15
15
  enums do
16
- ZERO = new(0)
17
- ONE = new(1)
16
+ DISABLE = new(0)
17
+ ENABLE = new(1)
18
18
  end
19
19
  end
20
20
  end
@@ -13,8 +13,8 @@ module PlexRubySDK
13
13
  # IncludeIPv6 - Include IPv6 entries in the results
14
14
  class IncludeIPv6 < T::Enum
15
15
  enums do
16
- ZERO = new(0)
17
- ONE = new(1)
16
+ DISABLE = new(0)
17
+ ENABLE = new(1)
18
18
  end
19
19
  end
20
20
  end
@@ -11,8 +11,8 @@ module PlexRubySDK
11
11
  #
12
12
  class IncludeMeta < T::Enum
13
13
  enums do
14
- ZERO = new(0)
15
- ONE = new(1)
14
+ DISABLE = new(0)
15
+ ENABLE = new(1)
16
16
  end
17
17
  end
18
18
  end
@@ -15,8 +15,8 @@ module PlexRubySDK
15
15
  #
16
16
  class IncludeRelay < T::Enum
17
17
  enums do
18
- ZERO = new(0)
19
- ONE = new(1)
18
+ DISABLE = new(0)
19
+ ENABLE = new(1)
20
20
  end
21
21
  end
22
22
  end
@@ -12,12 +12,12 @@ module PlexRubySDK
12
12
  extend T::Sig
13
13
 
14
14
 
15
- field :id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
15
+ field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
16
16
 
17
- field :path, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('path') } }
17
+ field :path, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('path') } }
18
18
 
19
19
 
20
- sig { params(id: T.nilable(::Integer), path: T.nilable(::String)).void }
20
+ sig { params(id: ::Integer, path: ::String).void }
21
21
  def initialize(id: nil, path: nil)
22
22
  @id = id
23
23
  @path = path
@@ -0,0 +1,26 @@
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 Operations
9
+
10
+
11
+ class MediaGuid < ::PlexRubySDK::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # Can be one of the following formats:
15
+ # imdb://tt13015952, tmdb://2434012, tvdb://7945991
16
+ #
17
+ field :id, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
18
+
19
+
20
+ sig { params(id: ::String).void }
21
+ def initialize(id: nil)
22
+ @id = id
23
+ end
24
+ end
25
+ end
26
+ end
@@ -10,11 +10,11 @@ module PlexRubySDK
10
10
  'https://plex.tv/api/v2/'
11
11
  ].freeze
12
12
 
13
-
13
+ # MediaReviewsVisibility - Whether or not the account has media reviews visibility enabled
14
14
  class MediaReviewsVisibility < T::Enum
15
15
  enums do
16
- ZERO = new(0)
17
- ONE = new(1)
16
+ DISABLE = new(0)
17
+ ENABLE = new(1)
18
18
  end
19
19
  end
20
20
  end
@@ -0,0 +1,28 @@
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 Operations
9
+
10
+ # The Meta object is only included in the response if the `includeMeta` parameter is set to `1`.
11
+ #
12
+ class Meta < ::PlexRubySDK::Utils::FieldAugmented
13
+ extend T::Sig
14
+
15
+
16
+ field :field_type, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsFieldType]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('FieldType') } }
17
+
18
+ field :type, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsLibraryType]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Type') } }
19
+
20
+
21
+ sig { params(field_type: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsFieldType]), type: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsLibraryType])).void }
22
+ def initialize(field_type: nil, type: nil)
23
+ @field_type = field_type
24
+ @type = type
25
+ end
26
+ end
27
+ end
28
+ end
@@ -13,8 +13,8 @@ module PlexRubySDK
13
13
  # PostUsersSignInDataAutoSelectSubtitle - The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign audio, 2 = Always enabled)
14
14
  class PostUsersSignInDataAutoSelectSubtitle < T::Enum
15
15
  enums do
16
- ZERO = new('0')
17
- ONE = new('1')
16
+ DISABLE = new(0)
17
+ ENABLE = new(1)
18
18
  end
19
19
  end
20
20
  end
@@ -10,11 +10,11 @@ module PlexRubySDK
10
10
  'https://plex.tv/api/v2/'
11
11
  ].freeze
12
12
 
13
- # PostUsersSignInDataDefaultSubtitleAccessibility - The subtitles for the deaf or hard-of-hearing (SDH) searches mode (0 = Prefer non-SDH subtitles, 1 = Prefer SDH subtitles, 2 = Only show SDH subtitles, 3 = Only shown non-SDH subtitles)
13
+ # PostUsersSignInDataDefaultSubtitleAccessibility - The subtitles for the deaf or hard-of-hearing (SDH) searches mode (0 = Prefer non-SDH subtitles, 1 = Prefer SDH subtitles, 2 = Only show SDH subtitles, 3 = Only show non-SDH subtitles)
14
14
  class PostUsersSignInDataDefaultSubtitleAccessibility < T::Enum
15
15
  enums do
16
- ZERO = new('0')
17
- ONE = new('1')
16
+ DISABLE = new(0)
17
+ ENABLE = new(1)
18
18
  end
19
19
  end
20
20
  end
@@ -13,8 +13,8 @@ module PlexRubySDK
13
13
  # PostUsersSignInDataDefaultSubtitleForced - The forced subtitles searches mode (0 = Prefer non-forced subtitles, 1 = Prefer forced subtitles, 2 = Only show forced subtitles, 3 = Only show non-forced subtitles)
14
14
  class PostUsersSignInDataDefaultSubtitleForced < T::Enum
15
15
  enums do
16
- ZERO = new('0')
17
- ONE = new('1')
16
+ DISABLE = new(0)
17
+ ENABLE = new(1)
18
18
  end
19
19
  end
20
20
  end
@@ -10,11 +10,11 @@ module PlexRubySDK
10
10
  'https://plex.tv/api/v2/'
11
11
  ].freeze
12
12
 
13
-
13
+ # PostUsersSignInDataMediaReviewsVisibility - Whether or not the account has media reviews visibility enabled
14
14
  class PostUsersSignInDataMediaReviewsVisibility < T::Enum
15
15
  enums do
16
- ZERO = new(0)
17
- ONE = new(1)
16
+ DISABLE = new(0)
17
+ ENABLE = new(1)
18
18
  end
19
19
  end
20
20
  end
@@ -22,6 +22,8 @@ module PlexRubySDK
22
22
  field :ads_consent_set_at, ::DateTime, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('adsConsentSetAt'), 'decoder': Utils.datetime_from_iso_format(false) } }
23
23
  # Unknown
24
24
  field :anonymous, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('anonymous') } }
25
+
26
+ field :attribution_partner, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('attributionPartner') } }
25
27
  # The account token
26
28
  field :auth_token, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('authToken') } }
27
29
  # If the two-factor authentication backup codes have been created
@@ -52,7 +54,7 @@ module PlexRubySDK
52
54
  field :home_size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('homeSize') } }
53
55
  # The Plex account ID
54
56
  field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
55
- # Unix epoch datetime
57
+ # Unix epoch datetime in seconds
56
58
  field :joined_at, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('joinedAt') } }
57
59
  # The account locale
58
60
  field :locale, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('locale') } }
@@ -68,7 +70,7 @@ module PlexRubySDK
68
70
  field :profile, ::PlexRubySDK::Operations::PostUsersSignInDataUserProfile, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('profile') } }
69
71
  # If the account has a Plex Home PIN enabled
70
72
  field :protected, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('protected') } }
71
- # Unix epoch datetime
73
+ # Unix epoch datetime in seconds
72
74
  field :remember_expires_at, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('rememberExpiresAt') } }
73
75
  # If the account is a Plex Home managed user
74
76
  field :restricted, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('restricted') } }
@@ -102,12 +104,13 @@ module PlexRubySDK
102
104
  field :roles, T.nilable(T::Array[::String]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('roles') } }
103
105
 
104
106
 
105
- sig { params(ads_consent: T::Boolean, ads_consent_reminder_at: ::DateTime, ads_consent_set_at: ::DateTime, anonymous: T::Boolean, auth_token: ::String, backup_codes_created: T::Boolean, confirmed: T::Boolean, country: ::String, email: ::String, email_only_auth: T::Boolean, entitlements: T::Array[::String], experimental_features: T::Boolean, friendly_name: ::String, guest: T::Boolean, has_password: T::Boolean, home: T::Boolean, home_admin: T::Boolean, home_size: ::Integer, id: ::Integer, joined_at: ::Integer, locale: ::String, mailing_list_active: T::Boolean, mailing_list_status: ::PlexRubySDK::Operations::PostUsersSignInDataMailingListStatus, max_home_size: ::Integer, past_subscriptions: T::Array[::PlexRubySDK::Operations::PastSubscription], profile: ::PlexRubySDK::Operations::PostUsersSignInDataUserProfile, protected: T::Boolean, remember_expires_at: ::Integer, restricted: T::Boolean, scrobble_types: ::String, services: T::Array[::PlexRubySDK::Operations::PostUsersSignInDataServices], subscription: ::PlexRubySDK::Operations::PostUsersSignInDataSubscription, subscription_description: ::String, subscriptions: T::Array[::PlexRubySDK::Operations::PostUsersSignInDataAuthenticationSubscription], thumb: ::String, title: ::String, trials: T::Array[::PlexRubySDK::Operations::Trials], two_factor_enabled: T::Boolean, username: ::String, uuid: ::String, pin: T.nilable(::String), roles: T.nilable(T::Array[::String])).void }
106
- def initialize(ads_consent: nil, ads_consent_reminder_at: nil, ads_consent_set_at: nil, anonymous: nil, auth_token: nil, backup_codes_created: nil, confirmed: nil, country: nil, email: nil, email_only_auth: nil, entitlements: nil, experimental_features: nil, friendly_name: nil, guest: nil, has_password: nil, home: nil, home_admin: nil, home_size: nil, id: nil, joined_at: nil, locale: nil, mailing_list_active: nil, mailing_list_status: nil, max_home_size: nil, past_subscriptions: nil, profile: nil, protected: nil, remember_expires_at: nil, restricted: nil, scrobble_types: nil, services: nil, subscription: nil, subscription_description: nil, subscriptions: nil, thumb: nil, title: nil, trials: nil, two_factor_enabled: nil, username: nil, uuid: nil, pin: nil, roles: nil)
107
+ sig { params(ads_consent: T::Boolean, ads_consent_reminder_at: ::DateTime, ads_consent_set_at: ::DateTime, anonymous: T::Boolean, attribution_partner: ::String, auth_token: ::String, backup_codes_created: T::Boolean, confirmed: T::Boolean, country: ::String, email: ::String, email_only_auth: T::Boolean, entitlements: T::Array[::String], experimental_features: T::Boolean, friendly_name: ::String, guest: T::Boolean, has_password: T::Boolean, home: T::Boolean, home_admin: T::Boolean, home_size: ::Integer, id: ::Integer, joined_at: ::Integer, locale: ::String, mailing_list_active: T::Boolean, mailing_list_status: ::PlexRubySDK::Operations::PostUsersSignInDataMailingListStatus, max_home_size: ::Integer, past_subscriptions: T::Array[::PlexRubySDK::Operations::PastSubscription], profile: ::PlexRubySDK::Operations::PostUsersSignInDataUserProfile, protected: T::Boolean, remember_expires_at: ::Integer, restricted: T::Boolean, scrobble_types: ::String, services: T::Array[::PlexRubySDK::Operations::PostUsersSignInDataServices], subscription: ::PlexRubySDK::Operations::PostUsersSignInDataSubscription, subscription_description: ::String, subscriptions: T::Array[::PlexRubySDK::Operations::PostUsersSignInDataAuthenticationSubscription], thumb: ::String, title: ::String, trials: T::Array[::PlexRubySDK::Operations::Trials], two_factor_enabled: T::Boolean, username: ::String, uuid: ::String, pin: T.nilable(::String), roles: T.nilable(T::Array[::String])).void }
108
+ def initialize(ads_consent: nil, ads_consent_reminder_at: nil, ads_consent_set_at: nil, anonymous: nil, attribution_partner: nil, auth_token: nil, backup_codes_created: nil, confirmed: nil, country: nil, email: nil, email_only_auth: nil, entitlements: nil, experimental_features: nil, friendly_name: nil, guest: nil, has_password: nil, home: nil, home_admin: nil, home_size: nil, id: nil, joined_at: nil, locale: nil, mailing_list_active: nil, mailing_list_status: nil, max_home_size: nil, past_subscriptions: nil, profile: nil, protected: nil, remember_expires_at: nil, restricted: nil, scrobble_types: nil, services: nil, subscription: nil, subscription_description: nil, subscriptions: nil, thumb: nil, title: nil, trials: nil, two_factor_enabled: nil, username: nil, uuid: nil, pin: nil, roles: nil)
107
109
  @ads_consent = ads_consent
108
110
  @ads_consent_reminder_at = ads_consent_reminder_at
109
111
  @ads_consent_set_at = ads_consent_set_at
110
112
  @anonymous = anonymous
113
+ @attribution_partner = attribution_partner
111
114
  @auth_token = auth_token
112
115
  @backup_codes_created = backup_codes_created
113
116
  @confirmed = confirmed
@@ -14,32 +14,32 @@ module PlexRubySDK
14
14
  class PostUsersSignInDataUserProfile < ::PlexRubySDK::Utils::FieldAugmented
15
15
  extend T::Sig
16
16
 
17
+ # If the account has automatically select audio and subtitle tracks enabled
18
+ field :auto_select_audio, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('autoSelectAudio') } }
19
+
20
+ field :auto_select_subtitle, ::PlexRubySDK::Operations::PostUsersSignInDataAutoSelectSubtitle, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('autoSelectSubtitle'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::PostUsersSignInDataAutoSelectSubtitle, false) } }
17
21
  # The preferred audio language for the account
18
22
  field :default_audio_language, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('defaultAudioLanguage') } }
23
+
24
+ field :default_subtitle_accessibility, ::PlexRubySDK::Operations::PostUsersSignInDataDefaultSubtitleAccessibility, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('defaultSubtitleAccessibility'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::PostUsersSignInDataDefaultSubtitleAccessibility, false) } }
25
+
26
+ field :default_subtitle_forced, ::PlexRubySDK::Operations::PostUsersSignInDataDefaultSubtitleForced, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('defaultSubtitleForced'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::PostUsersSignInDataDefaultSubtitleForced, false) } }
19
27
  # The preferred subtitle language for the account
20
28
  field :default_subtitle_language, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('defaultSubtitleLanguage') } }
21
- # If the account has automatically select audio and subtitle tracks enabled
22
- field :auto_select_audio, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('autoSelectAudio') } }
23
- # The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign audio, 2 = Always enabled)
24
- field :auto_select_subtitle, T.nilable(::PlexRubySDK::Operations::PostUsersSignInDataAutoSelectSubtitle), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('autoSelectSubtitle'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::PostUsersSignInDataAutoSelectSubtitle, true) } }
25
- # The subtitles for the deaf or hard-of-hearing (SDH) searches mode (0 = Prefer non-SDH subtitles, 1 = Prefer SDH subtitles, 2 = Only show SDH subtitles, 3 = Only shown non-SDH subtitles)
26
- field :default_subtitle_accessibility, T.nilable(::PlexRubySDK::Operations::PostUsersSignInDataDefaultSubtitleAccessibility), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('defaultSubtitleAccessibility'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::PostUsersSignInDataDefaultSubtitleAccessibility, true) } }
27
- # The forced subtitles searches mode (0 = Prefer non-forced subtitles, 1 = Prefer forced subtitles, 2 = Only show forced subtitles, 3 = Only show non-forced subtitles)
28
- field :default_subtitle_forced, T.nilable(::PlexRubySDK::Operations::PostUsersSignInDataDefaultSubtitleForced), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('defaultSubtitleForced'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::PostUsersSignInDataDefaultSubtitleForced, true) } }
29
29
 
30
- field :media_reviews_visibility, T.nilable(::PlexRubySDK::Operations::PostUsersSignInDataMediaReviewsVisibility), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaReviewsVisibility'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::PostUsersSignInDataMediaReviewsVisibility, true) } }
30
+ field :media_reviews_visibility, ::PlexRubySDK::Operations::PostUsersSignInDataMediaReviewsVisibility, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaReviewsVisibility'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::PostUsersSignInDataMediaReviewsVisibility, false) } }
31
31
 
32
- field :watched_indicator, T.nilable(::PlexRubySDK::Operations::PostUsersSignInDataWatchedIndicator), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('watchedIndicator'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::PostUsersSignInDataWatchedIndicator, true) } }
32
+ field :watched_indicator, ::PlexRubySDK::Operations::PostUsersSignInDataWatchedIndicator, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('watchedIndicator'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::PostUsersSignInDataWatchedIndicator, false) } }
33
33
 
34
34
 
35
- sig { params(default_audio_language: ::String, default_subtitle_language: ::String, auto_select_audio: T.nilable(T::Boolean), auto_select_subtitle: T.nilable(::PlexRubySDK::Operations::PostUsersSignInDataAutoSelectSubtitle), default_subtitle_accessibility: T.nilable(::PlexRubySDK::Operations::PostUsersSignInDataDefaultSubtitleAccessibility), default_subtitle_forced: T.nilable(::PlexRubySDK::Operations::PostUsersSignInDataDefaultSubtitleForced), media_reviews_visibility: T.nilable(::PlexRubySDK::Operations::PostUsersSignInDataMediaReviewsVisibility), watched_indicator: T.nilable(::PlexRubySDK::Operations::PostUsersSignInDataWatchedIndicator)).void }
36
- def initialize(default_audio_language: nil, default_subtitle_language: nil, auto_select_audio: nil, auto_select_subtitle: nil, default_subtitle_accessibility: nil, default_subtitle_forced: nil, media_reviews_visibility: nil, watched_indicator: nil)
37
- @default_audio_language = default_audio_language
38
- @default_subtitle_language = default_subtitle_language
35
+ sig { params(auto_select_audio: T::Boolean, auto_select_subtitle: ::PlexRubySDK::Operations::PostUsersSignInDataAutoSelectSubtitle, default_audio_language: ::String, default_subtitle_accessibility: ::PlexRubySDK::Operations::PostUsersSignInDataDefaultSubtitleAccessibility, default_subtitle_forced: ::PlexRubySDK::Operations::PostUsersSignInDataDefaultSubtitleForced, default_subtitle_language: ::String, media_reviews_visibility: ::PlexRubySDK::Operations::PostUsersSignInDataMediaReviewsVisibility, watched_indicator: ::PlexRubySDK::Operations::PostUsersSignInDataWatchedIndicator).void }
36
+ def initialize(auto_select_audio: nil, auto_select_subtitle: nil, default_audio_language: nil, default_subtitle_accessibility: nil, default_subtitle_forced: nil, default_subtitle_language: nil, media_reviews_visibility: nil, watched_indicator: nil)
39
37
  @auto_select_audio = auto_select_audio
40
38
  @auto_select_subtitle = auto_select_subtitle
39
+ @default_audio_language = default_audio_language
41
40
  @default_subtitle_accessibility = default_subtitle_accessibility
42
41
  @default_subtitle_forced = default_subtitle_forced
42
+ @default_subtitle_language = default_subtitle_language
43
43
  @media_reviews_visibility = media_reviews_visibility
44
44
  @watched_indicator = watched_indicator
45
45
  end
@@ -10,11 +10,11 @@ module PlexRubySDK
10
10
  'https://plex.tv/api/v2/'
11
11
  ].freeze
12
12
 
13
-
13
+ # PostUsersSignInDataWatchedIndicator - Whether or not media watched indicators are enabled (little orange dot on media)
14
14
  class PostUsersSignInDataWatchedIndicator < T::Enum
15
15
  enums do
16
- ZERO = new('0')
17
- ONE = new('1')
16
+ DISABLE = new(0)
17
+ ENABLE = new(1)
18
18
  end
19
19
  end
20
20
  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 Operations
9
+ PROTOCOL_SERVERS = [
10
+ 'https://plex.tv/api/v2/'
11
+ ].freeze
12
+
13
+ # Protocol - The protocol used for the connection (http, https, etc)
14
+ class Protocol < T::Enum
15
+ enums do
16
+ HTTP = new('http')
17
+ HTTPS = new('https')
18
+ end
19
+ end
20
+ end
21
+ end
@@ -16,10 +16,10 @@ module PlexRubySDK
16
16
  #
17
17
  class QueryParamType < T::Enum
18
18
  enums do
19
- ONE = new(1)
20
- TWO = new(2)
21
- THREE = new(3)
22
- FOUR = new(4)
19
+ MOVIE = new(1)
20
+ TV_SHOW = new(2)
21
+ SEASON = new(3)
22
+ EPISODE = new(4)
23
23
  end
24
24
  end
25
25
  end
@@ -0,0 +1,27 @@
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 Operations
9
+
10
+ # ShowOrdering - Setting that indicates the episode ordering for the show
11
+ # None = Library default,
12
+ # tmdbAiring = The Movie Database (Aired),
13
+ # aired = TheTVDB (Aired),
14
+ # dvd = TheTVDB (DVD),
15
+ # absolute = TheTVDB (Absolute)).
16
+ #
17
+ class ShowOrdering < T::Enum
18
+ enums do
19
+ NONE = new('None')
20
+ TMDB_AIRING = new('tmdbAiring')
21
+ AIRED = new('aired')
22
+ DVD = new('dvd')
23
+ ABSOLUTE = new('absolute')
24
+ end
25
+ end
26
+ end
27
+ end
@@ -16,10 +16,10 @@ module PlexRubySDK
16
16
  #
17
17
  class Type < T::Enum
18
18
  enums do
19
- ONE = new(1)
20
- TWO = new(2)
21
- THREE = new(3)
22
- FOUR = new(4)
19
+ MOVIE = new(1)
20
+ TV_SHOW = new(2)
21
+ SEASON = new(3)
22
+ EPISODE = new(4)
23
23
  end
24
24
  end
25
25
  end
@@ -0,0 +1,33 @@
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 Operations
9
+
10
+
11
+ class UltraBlurColors < ::PlexRubySDK::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+
15
+ field :bottom_left, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bottomLeft') } }
16
+
17
+ field :bottom_right, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bottomRight') } }
18
+
19
+ field :top_left, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('topLeft') } }
20
+
21
+ field :top_right, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('topRight') } }
22
+
23
+
24
+ sig { params(bottom_left: ::String, bottom_right: ::String, top_left: ::String, top_right: ::String).void }
25
+ def initialize(bottom_left: nil, bottom_right: nil, top_left: nil, top_right: nil)
26
+ @bottom_left = bottom_left
27
+ @bottom_right = bottom_right
28
+ @top_left = top_left
29
+ @top_right = top_right
30
+ end
31
+ end
32
+ end
33
+ end
@@ -25,12 +25,15 @@ module PlexRubySDK
25
25
  # The GUID of each playlist is based on the filename.
26
26
  #
27
27
  field :path, ::String, { 'query_param': { 'field_name': 'path', 'style': 'form', 'explode': true } }
28
+ # Possibly the section ID to upload the playlist to, we are not certain.
29
+ field :section_id, ::Integer, { 'query_param': { 'field_name': 'sectionID', 'style': 'form', 'explode': true } }
28
30
 
29
31
 
30
- sig { params(force: ::PlexRubySDK::Operations::QueryParamForce, path: ::String).void }
31
- def initialize(force: nil, path: nil)
32
+ sig { params(force: ::PlexRubySDK::Operations::QueryParamForce, path: ::String, section_id: ::Integer).void }
33
+ def initialize(force: nil, path: nil, section_id: nil)
32
34
  @force = force
33
35
  @path = path
36
+ @section_id = section_id
34
37
  end
35
38
  end
36
39
  end