plex_ruby_sdk 0.3.5 → 0.4.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 (58) 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/autoselectsubtitle.rb +2 -2
  4. data/lib/plex_ruby_sdk/models/operations/connections.rb +10 -10
  5. data/lib/plex_ruby_sdk/models/operations/defaultsubtitleaccessibility.rb +3 -3
  6. data/lib/plex_ruby_sdk/models/operations/defaultsubtitleforced.rb +2 -2
  7. data/lib/plex_ruby_sdk/models/operations/geodata.rb +2 -2
  8. data/lib/plex_ruby_sdk/models/operations/get_all_libraries_directory.rb +25 -25
  9. data/lib/plex_ruby_sdk/models/operations/get_all_libraries_mediacontainer.rb +5 -5
  10. data/lib/plex_ruby_sdk/models/operations/get_all_libraries_responsebody.rb +2 -2
  11. data/lib/plex_ruby_sdk/models/operations/get_library_items_field.rb +33 -0
  12. data/lib/plex_ruby_sdk/models/operations/get_library_items_fieldtype.rb +27 -0
  13. data/lib/plex_ruby_sdk/models/operations/get_library_items_filter.rb +36 -0
  14. data/lib/plex_ruby_sdk/models/operations/get_library_items_mediacontainer.rb +23 -19
  15. data/lib/plex_ruby_sdk/models/operations/get_library_items_metadata.rb +30 -26
  16. data/lib/plex_ruby_sdk/models/operations/get_library_items_operator.rb +27 -0
  17. data/lib/plex_ruby_sdk/models/operations/get_library_items_sort.rb +39 -0
  18. data/lib/plex_ruby_sdk/models/operations/get_library_items_type.rb +42 -0
  19. data/lib/plex_ruby_sdk/models/operations/get_server_resources_request.rb +2 -8
  20. data/lib/plex_ruby_sdk/models/operations/getgeodata_geodata.rb +2 -2
  21. data/lib/plex_ruby_sdk/models/operations/getpin_authpincontainer.rb +2 -2
  22. data/lib/plex_ruby_sdk/models/operations/getpin_request.rb +14 -11
  23. data/lib/plex_ruby_sdk/models/operations/getplaylistcontents_queryparam_type.rb +4 -4
  24. data/lib/plex_ruby_sdk/models/operations/gettokenbypinid_authpincontainer.rb +2 -2
  25. data/lib/plex_ruby_sdk/models/operations/gettokenbypinid_geodata.rb +2 -2
  26. data/lib/plex_ruby_sdk/models/operations/gettokenbypinid_request.rb +2 -8
  27. data/lib/plex_ruby_sdk/models/operations/gettokendetails_userplexaccount.rb +2 -2
  28. data/lib/plex_ruby_sdk/models/operations/gettopwatchedcontent_queryparam_type.rb +4 -4
  29. data/lib/plex_ruby_sdk/models/operations/includeguids.rb +2 -2
  30. data/lib/plex_ruby_sdk/models/operations/includehttps.rb +2 -2
  31. data/lib/plex_ruby_sdk/models/operations/includeipv6.rb +2 -2
  32. data/lib/plex_ruby_sdk/models/operations/includemeta.rb +2 -2
  33. data/lib/plex_ruby_sdk/models/operations/includerelay.rb +2 -2
  34. data/lib/plex_ruby_sdk/models/operations/location.rb +3 -3
  35. data/lib/plex_ruby_sdk/models/operations/mediaguid.rb +26 -0
  36. data/lib/plex_ruby_sdk/models/operations/mediareviewsvisibility.rb +3 -3
  37. data/lib/plex_ruby_sdk/models/operations/meta.rb +28 -0
  38. data/lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_autoselectsubtitle.rb +2 -2
  39. data/lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_defaultsubtitleaccessibility.rb +3 -3
  40. data/lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_defaultsubtitleforced.rb +2 -2
  41. data/lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_mediareviewsvisibility.rb +3 -3
  42. data/lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_userplexaccount.rb +2 -2
  43. data/lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_userprofile.rb +14 -14
  44. data/lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_watchedindicator.rb +3 -3
  45. data/lib/plex_ruby_sdk/models/operations/protocol.rb +21 -0
  46. data/lib/plex_ruby_sdk/models/operations/queryparam_type.rb +4 -4
  47. data/lib/plex_ruby_sdk/models/operations/type.rb +4 -4
  48. data/lib/plex_ruby_sdk/models/operations/uploadplaylist_request.rb +5 -2
  49. data/lib/plex_ruby_sdk/models/operations/userprofile.rb +14 -14
  50. data/lib/plex_ruby_sdk/models/operations/watchedindicator.rb +3 -3
  51. data/lib/plex_ruby_sdk/models/operations.rb +9 -1
  52. data/lib/plex_ruby_sdk/models/shared/security.rb +1 -1
  53. data/lib/plex_ruby_sdk/playlists.rb +4 -3
  54. data/lib/plex_ruby_sdk/plex.rb +9 -19
  55. data/lib/plex_ruby_sdk/plex_api.rb +20 -4
  56. data/lib/plex_ruby_sdk/sdkconfiguration.rb +3 -3
  57. metadata +11 -3
  58. data/lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_request.rb +0 -33
@@ -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
+
11
+ class GetLibraryItemsOperator < ::PlexRubySDK::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+
15
+ field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
16
+
17
+ field :title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
18
+
19
+
20
+ sig { params(key: ::String, title: ::String).void }
21
+ def initialize(key: nil, title: nil)
22
+ @key = key
23
+ @title = title
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,39 @@
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 GetLibraryItemsSort < ::PlexRubySDK::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+
15
+ field :default_direction, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('defaultDirection') } }
16
+
17
+ field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
18
+
19
+ field :title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
20
+
21
+ field :default, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('default') } }
22
+
23
+ field :desc_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('descKey') } }
24
+
25
+ field :first_character_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('firstCharacterKey') } }
26
+
27
+
28
+ sig { params(default_direction: ::String, key: ::String, title: ::String, default: T.nilable(::String), desc_key: T.nilable(::String), first_character_key: T.nilable(::String)).void }
29
+ def initialize(default_direction: nil, key: nil, title: nil, default: nil, desc_key: nil, first_character_key: nil)
30
+ @default_direction = default_direction
31
+ @key = key
32
+ @title = title
33
+ @default = default
34
+ @desc_key = desc_key
35
+ @first_character_key = first_character_key
36
+ end
37
+ end
38
+ end
39
+ end
@@ -0,0 +1,42 @@
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 GetLibraryItemsType < ::PlexRubySDK::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+
15
+ field :active, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('active') } }
16
+
17
+ field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
18
+
19
+ field :title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
20
+
21
+ field :type, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
22
+
23
+ field :field, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsField]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Field') } }
24
+
25
+ field :filter, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsFilter]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Filter') } }
26
+
27
+ field :sort, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsSort]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Sort') } }
28
+
29
+
30
+ sig { params(active: T::Boolean, key: ::String, title: ::String, type: ::String, field: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsField]), filter: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsFilter]), sort: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsSort])).void }
31
+ def initialize(active: nil, key: nil, title: nil, type: nil, field: nil, filter: nil, sort: nil)
32
+ @active = active
33
+ @key = key
34
+ @title = title
35
+ @type = type
36
+ @field = field
37
+ @filter = filter
38
+ @sort = sort
39
+ end
40
+ end
41
+ end
42
+ end
@@ -22,19 +22,13 @@ module PlexRubySDK
22
22
  # E.g: https://10-0-0-25.bbf8e10c7fa20447cacee74cd9914cde.plex.direct:32400
23
23
  #
24
24
  field :include_relay, T.nilable(::PlexRubySDK::Operations::IncludeRelay), { 'query_param': { 'field_name': 'includeRelay', 'style': 'form', 'explode': true } }
25
- # The unique identifier for the client application
26
- # This is used to track the client application and its usage
27
- # (UUID, serial number, or other number unique per device)
28
- #
29
- field :x_plex_client_identifier, T.nilable(::String), { 'query_param': { 'field_name': 'X-Plex-Client-Identifier', 'style': 'form', 'explode': true } }
30
25
 
31
26
 
32
- sig { params(include_https: T.nilable(::PlexRubySDK::Operations::IncludeHttps), include_i_pv6: T.nilable(::PlexRubySDK::Operations::IncludeIPv6), include_relay: T.nilable(::PlexRubySDK::Operations::IncludeRelay), x_plex_client_identifier: T.nilable(::String)).void }
33
- def initialize(include_https: nil, include_i_pv6: nil, include_relay: nil, x_plex_client_identifier: nil)
27
+ sig { params(include_https: T.nilable(::PlexRubySDK::Operations::IncludeHttps), include_i_pv6: T.nilable(::PlexRubySDK::Operations::IncludeIPv6), include_relay: T.nilable(::PlexRubySDK::Operations::IncludeRelay)).void }
28
+ def initialize(include_https: nil, include_i_pv6: nil, include_relay: nil)
34
29
  @include_https = include_https
35
30
  @include_i_pv6 = include_i_pv6
36
31
  @include_relay = include_relay
37
- @x_plex_client_identifier = x_plex_client_identifier
38
32
  end
39
33
  end
40
34
  end
@@ -31,14 +31,14 @@ module PlexRubySDK
31
31
  # Indicates if the region has privacy restrictions.
32
32
  field :in_privacy_restricted_region, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('in_privacy_restricted_region') } }
33
33
  # The postal code of the location.
34
- field :postal_code, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('postal_code') } }
34
+ field :postal_code, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('postal_code') } }
35
35
  # The name of the primary administrative subdivision.
36
36
  field :subdivisions, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('subdivisions') } }
37
37
  # The time zone of the country.
38
38
  field :time_zone, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('time_zone') } }
39
39
 
40
40
 
41
- sig { params(city: ::String, code: ::String, continent_code: ::String, coordinates: ::String, country: ::String, european_union_member: T::Boolean, in_privacy_restricted_country: T::Boolean, in_privacy_restricted_region: T::Boolean, postal_code: ::Integer, subdivisions: ::String, time_zone: ::String).void }
41
+ sig { params(city: ::String, code: ::String, continent_code: ::String, coordinates: ::String, country: ::String, european_union_member: T::Boolean, in_privacy_restricted_country: T::Boolean, in_privacy_restricted_region: T::Boolean, postal_code: ::String, subdivisions: ::String, time_zone: ::String).void }
42
42
  def initialize(city: nil, code: nil, continent_code: nil, coordinates: nil, country: nil, european_union_member: nil, in_privacy_restricted_country: nil, in_privacy_restricted_region: nil, postal_code: nil, subdivisions: nil, time_zone: nil)
43
43
  @city = city
44
44
  @code = code
@@ -35,12 +35,12 @@ module PlexRubySDK
35
35
 
36
36
  field :trusted, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('trusted') } }
37
37
 
38
- field :auth_token, T.nilable(::Object), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('authToken') } }
38
+ field :auth_token, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('authToken') } }
39
39
 
40
40
  field :new_registration, T.nilable(::Object), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('newRegistration') } }
41
41
 
42
42
 
43
- sig { params(client_identifier: ::String, code: ::String, created_at: ::DateTime, expires_at: ::DateTime, expires_in: ::Integer, id: ::Integer, location: ::PlexRubySDK::Operations::GeoData, product: ::String, qr: ::String, trusted: T::Boolean, auth_token: T.nilable(::Object), new_registration: T.nilable(::Object)).void }
43
+ sig { params(client_identifier: ::String, code: ::String, created_at: ::DateTime, expires_at: ::DateTime, expires_in: ::Integer, id: ::Integer, location: ::PlexRubySDK::Operations::GeoData, product: ::String, qr: ::String, trusted: T::Boolean, auth_token: T.nilable(::String), new_registration: T.nilable(::Object)).void }
44
44
  def initialize(client_identifier: nil, code: nil, created_at: nil, expires_at: nil, expires_in: nil, id: nil, location: nil, product: nil, qr: nil, trusted: nil, auth_token: nil, new_registration: nil)
45
45
  @client_identifier = client_identifier
46
46
  @code = code
@@ -14,25 +14,28 @@ module PlexRubySDK
14
14
  class GetPinRequest < ::PlexRubySDK::Utils::FieldAugmented
15
15
  extend T::Sig
16
16
 
17
+
18
+ field :client_name, T.nilable(::String), { 'query_param': { 'field_name': 'X-Plex-Product', 'style': 'form', 'explode': true } }
19
+
20
+ field :client_platform, T.nilable(::String), { 'query_param': { 'field_name': 'X-Plex-Platform', 'style': 'form', 'explode': true } }
21
+
22
+ field :client_version, T.nilable(::String), { 'query_param': { 'field_name': 'X-Plex-Version', 'style': 'form', 'explode': true } }
23
+
24
+ field :device_name, T.nilable(::String), { 'query_param': { 'field_name': 'X-Plex-Device', 'style': 'form', 'explode': true } }
17
25
  # Determines the kind of code returned by the API call
18
26
  # Strong codes are used for Pin authentication flows
19
27
  # Non-Strong codes are used for `Plex.tv/link`
20
28
  #
21
29
  field :strong, T.nilable(T::Boolean), { 'query_param': { 'field_name': 'strong', 'style': 'form', 'explode': true } }
22
- # The unique identifier for the client application
23
- # This is used to track the client application and its usage
24
- # (UUID, serial number, or other number unique per device)
25
- #
26
- field :x_plex_client_identifier, T.nilable(::String), { 'query_param': { 'field_name': 'X-Plex-Client-Identifier', 'style': 'form', 'explode': true } }
27
-
28
- field :x_plex_product, T.nilable(::String), { 'query_param': { 'field_name': 'X-Plex-Product', 'style': 'form', 'explode': true } }
29
30
 
30
31
 
31
- sig { params(strong: T.nilable(T::Boolean), x_plex_client_identifier: T.nilable(::String), x_plex_product: T.nilable(::String)).void }
32
- def initialize(strong: nil, x_plex_client_identifier: nil, x_plex_product: nil)
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)
34
+ @client_name = client_name
35
+ @client_platform = client_platform
36
+ @client_version = client_version
37
+ @device_name = device_name
33
38
  @strong = strong
34
- @x_plex_client_identifier = x_plex_client_identifier
35
- @x_plex_product = x_plex_product
36
39
  end
37
40
  end
38
41
  end
@@ -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
+ SHOW = new(2)
21
+ SEASON = new(3)
22
+ EPISODE = new(4)
23
23
  end
24
24
  end
25
25
  end
@@ -35,12 +35,12 @@ module PlexRubySDK
35
35
 
36
36
  field :trusted, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('trusted') } }
37
37
 
38
- field :auth_token, T.nilable(::Object), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('authToken') } }
38
+ field :auth_token, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('authToken') } }
39
39
 
40
40
  field :new_registration, T.nilable(::Object), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('newRegistration') } }
41
41
 
42
42
 
43
- sig { params(client_identifier: ::String, code: ::String, created_at: ::DateTime, expires_at: ::DateTime, expires_in: ::Integer, id: ::Integer, location: ::PlexRubySDK::Operations::GetTokenByPinIdGeoData, product: ::String, qr: ::String, trusted: T::Boolean, auth_token: T.nilable(::Object), new_registration: T.nilable(::Object)).void }
43
+ sig { params(client_identifier: ::String, code: ::String, created_at: ::DateTime, expires_at: ::DateTime, expires_in: ::Integer, id: ::Integer, location: ::PlexRubySDK::Operations::GetTokenByPinIdGeoData, product: ::String, qr: ::String, trusted: T::Boolean, auth_token: T.nilable(::String), new_registration: T.nilable(::Object)).void }
44
44
  def initialize(client_identifier: nil, code: nil, created_at: nil, expires_at: nil, expires_in: nil, id: nil, location: nil, product: nil, qr: nil, trusted: nil, auth_token: nil, new_registration: nil)
45
45
  @client_identifier = client_identifier
46
46
  @code = code
@@ -31,14 +31,14 @@ module PlexRubySDK
31
31
  # Indicates if the region has privacy restrictions.
32
32
  field :in_privacy_restricted_region, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('in_privacy_restricted_region') } }
33
33
  # The postal code of the location.
34
- field :postal_code, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('postal_code') } }
34
+ field :postal_code, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('postal_code') } }
35
35
  # The name of the primary administrative subdivision.
36
36
  field :subdivisions, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('subdivisions') } }
37
37
  # The time zone of the country.
38
38
  field :time_zone, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('time_zone') } }
39
39
 
40
40
 
41
- sig { params(city: ::String, code: ::String, continent_code: ::String, coordinates: ::String, country: ::String, european_union_member: T::Boolean, in_privacy_restricted_country: T::Boolean, in_privacy_restricted_region: T::Boolean, postal_code: ::Integer, subdivisions: ::String, time_zone: ::String).void }
41
+ sig { params(city: ::String, code: ::String, continent_code: ::String, coordinates: ::String, country: ::String, european_union_member: T::Boolean, in_privacy_restricted_country: T::Boolean, in_privacy_restricted_region: T::Boolean, postal_code: ::String, subdivisions: ::String, time_zone: ::String).void }
42
42
  def initialize(city: nil, code: nil, continent_code: nil, coordinates: nil, country: nil, european_union_member: nil, in_privacy_restricted_country: nil, in_privacy_restricted_region: nil, postal_code: nil, subdivisions: nil, time_zone: nil)
43
43
  @city = city
44
44
  @code = code
@@ -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 :x_plex_client_identifier, 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, x_plex_client_identifier: T.nilable(::String)).void }
27
- def initialize(pin_id: nil, x_plex_client_identifier: nil)
21
+ sig { params(pin_id: ::Integer).void }
22
+ def initialize(pin_id: nil)
28
23
  @pin_id = pin_id
29
- @x_plex_client_identifier = x_plex_client_identifier
30
24
  end
31
25
  end
32
26
  end
@@ -52,7 +52,7 @@ module PlexRubySDK
52
52
  field :home_size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('homeSize') } }
53
53
  # The Plex account ID
54
54
  field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
55
- # Unix epoch datetime
55
+ # Unix epoch datetime in seconds
56
56
  field :joined_at, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('joinedAt') } }
57
57
  # The account locale
58
58
  field :locale, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('locale') } }
@@ -66,7 +66,7 @@ module PlexRubySDK
66
66
  field :profile, ::PlexRubySDK::Operations::UserProfile, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('profile') } }
67
67
  # If the account has a Plex Home PIN enabled
68
68
  field :protected, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('protected') } }
69
- # Unix epoch datetime
69
+ # Unix epoch datetime in seconds
70
70
  field :remember_expires_at, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('rememberExpiresAt') } }
71
71
  # If the account is a Plex Home managed user
72
72
  field :restricted, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('restricted') } }
@@ -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
+ SHOW = new(2)
21
+ SEASON = new(3)
22
+ EPISODE = new(4)
23
23
  end
24
24
  end
25
25
  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::GetLibraryItemsType]), { '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::GetLibraryItemsType])).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
@@ -52,7 +52,7 @@ module PlexRubySDK
52
52
  field :home_size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('homeSize') } }
53
53
  # The Plex account ID
54
54
  field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
55
- # Unix epoch datetime
55
+ # Unix epoch datetime in seconds
56
56
  field :joined_at, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('joinedAt') } }
57
57
  # The account locale
58
58
  field :locale, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('locale') } }
@@ -68,7 +68,7 @@ module PlexRubySDK
68
68
  field :profile, ::PlexRubySDK::Operations::PostUsersSignInDataUserProfile, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('profile') } }
69
69
  # If the account has a Plex Home PIN enabled
70
70
  field :protected, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('protected') } }
71
- # Unix epoch datetime
71
+ # Unix epoch datetime in seconds
72
72
  field :remember_expires_at, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('rememberExpiresAt') } }
73
73
  # If the account is a Plex Home managed user
74
74
  field :restricted, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('restricted') } }
@@ -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