plex_ruby_sdk 0.4.1 → 0.4.2

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 (101) hide show
  1. checksums.yaml +4 -4
  2. data/lib/plex_ruby_sdk/authentication.rb +4 -2
  3. data/lib/plex_ruby_sdk/hubs.rb +35 -0
  4. data/lib/plex_ruby_sdk/library.rb +9 -14
  5. data/lib/plex_ruby_sdk/models/operations/field.rb +7 -7
  6. data/lib/plex_ruby_sdk/models/operations/fieldtype.rb +3 -3
  7. data/lib/plex_ruby_sdk/models/operations/get_all_libraries_directory.rb +1 -1
  8. data/lib/plex_ruby_sdk/models/operations/get_library_details_field.rb +33 -0
  9. data/lib/plex_ruby_sdk/models/operations/get_library_details_fieldtype.rb +27 -0
  10. data/lib/plex_ruby_sdk/models/operations/get_library_details_mediacontainer.rb +2 -2
  11. data/lib/plex_ruby_sdk/models/operations/get_library_details_operator.rb +27 -0
  12. data/lib/plex_ruby_sdk/models/operations/get_library_details_sort.rb +39 -0
  13. data/lib/plex_ruby_sdk/models/operations/get_library_details_type.rb +3 -3
  14. data/lib/plex_ruby_sdk/models/operations/get_library_items_activedirection.rb +19 -0
  15. data/lib/plex_ruby_sdk/models/operations/get_library_items_collection.rb +24 -0
  16. data/lib/plex_ruby_sdk/models/operations/get_library_items_defaultdirection.rb +19 -0
  17. data/lib/plex_ruby_sdk/models/operations/get_library_items_flattenseasons.rb +18 -0
  18. data/lib/plex_ruby_sdk/models/operations/get_library_items_hasthumbnail.rb +18 -0
  19. data/lib/plex_ruby_sdk/models/operations/get_library_items_image.rb +2 -2
  20. data/lib/plex_ruby_sdk/models/operations/get_library_items_library_activedirection.rb +19 -0
  21. data/lib/plex_ruby_sdk/models/operations/get_library_items_library_defaultdirection.rb +19 -0
  22. data/lib/plex_ruby_sdk/models/operations/get_library_items_library_field.rb +33 -0
  23. data/lib/plex_ruby_sdk/models/operations/get_library_items_library_fieldtype.rb +27 -0
  24. data/lib/plex_ruby_sdk/models/operations/get_library_items_library_filter.rb +36 -0
  25. data/lib/plex_ruby_sdk/models/operations/get_library_items_library_operator.rb +27 -0
  26. data/lib/plex_ruby_sdk/models/operations/get_library_items_library_response_200_type.rb +20 -0
  27. data/lib/plex_ruby_sdk/models/operations/get_library_items_library_response_type.rb +28 -6
  28. data/lib/plex_ruby_sdk/models/operations/get_library_items_library_sort.rb +47 -0
  29. data/lib/plex_ruby_sdk/models/operations/get_library_items_library_type.rb +8 -29
  30. data/lib/plex_ruby_sdk/models/operations/get_library_items_media.rb +8 -2
  31. data/lib/plex_ruby_sdk/models/operations/get_library_items_mediacontainer.rb +12 -5
  32. data/lib/plex_ruby_sdk/models/operations/get_library_items_mediaguid.rb +26 -0
  33. data/lib/plex_ruby_sdk/models/operations/get_library_items_meta.rb +28 -0
  34. data/lib/plex_ruby_sdk/models/operations/get_library_items_metadata.rb +23 -8
  35. data/lib/plex_ruby_sdk/models/operations/get_library_items_metadatarating.rb +30 -0
  36. data/lib/plex_ruby_sdk/models/operations/get_library_items_optimizedforstreaming.rb +18 -0
  37. data/lib/plex_ruby_sdk/models/operations/get_library_items_part.rb +12 -3
  38. data/lib/plex_ruby_sdk/models/operations/get_library_items_queryparam_includemeta.rb +19 -0
  39. data/lib/plex_ruby_sdk/models/operations/get_library_items_queryparam_type.rb +26 -0
  40. data/lib/plex_ruby_sdk/models/operations/get_library_items_request.rb +3 -3
  41. data/lib/plex_ruby_sdk/models/operations/get_library_items_role.rb +18 -3
  42. data/lib/plex_ruby_sdk/models/operations/get_library_items_showordering.rb +27 -0
  43. data/lib/plex_ruby_sdk/models/operations/get_library_items_sort.rb +3 -3
  44. data/lib/plex_ruby_sdk/models/operations/get_library_items_stream.rb +135 -0
  45. data/lib/plex_ruby_sdk/models/operations/get_library_items_type.rb +29 -8
  46. data/lib/plex_ruby_sdk/models/operations/get_library_items_ultrablurcolors.rb +33 -0
  47. data/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_part.rb +2 -2
  48. data/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_stream.rb +117 -0
  49. data/lib/plex_ruby_sdk/models/operations/get_recently_added_activedirection.rb +19 -0
  50. data/lib/plex_ruby_sdk/models/operations/get_recently_added_defaultdirection.rb +19 -0
  51. data/lib/plex_ruby_sdk/models/operations/get_recently_added_field.rb +33 -0
  52. data/lib/plex_ruby_sdk/models/operations/get_recently_added_fieldtype.rb +27 -0
  53. data/lib/plex_ruby_sdk/models/operations/get_recently_added_filter.rb +36 -0
  54. data/lib/plex_ruby_sdk/models/operations/get_recently_added_hubs_response_type.rb +20 -0
  55. data/lib/plex_ruby_sdk/models/operations/get_recently_added_hubs_type.rb +21 -0
  56. data/lib/plex_ruby_sdk/models/operations/get_recently_added_image.rb +30 -0
  57. data/lib/plex_ruby_sdk/models/operations/{getrecentlyadded_unauthorized.rb → get_recently_added_library_badrequest.rb} +2 -2
  58. data/lib/plex_ruby_sdk/models/operations/get_recently_added_library_country.rb +24 -0
  59. data/lib/plex_ruby_sdk/models/operations/get_recently_added_library_director.rb +24 -0
  60. data/lib/plex_ruby_sdk/models/operations/get_recently_added_library_filter.rb +36 -0
  61. data/lib/plex_ruby_sdk/models/operations/get_recently_added_library_genre.rb +24 -0
  62. data/lib/plex_ruby_sdk/models/operations/{getrecentlyadded_errors.rb → get_recently_added_library_library_errors.rb} +1 -1
  63. data/lib/plex_ruby_sdk/models/operations/get_recently_added_library_media.rb +69 -0
  64. data/lib/plex_ruby_sdk/models/operations/get_recently_added_library_mediacontainer.rb +49 -0
  65. data/lib/plex_ruby_sdk/models/operations/{getrecentlyadded_metadata.rb → get_recently_added_library_metadata.rb} +8 -8
  66. data/lib/plex_ruby_sdk/models/operations/get_recently_added_library_part.rb +51 -0
  67. data/lib/plex_ruby_sdk/models/operations/get_recently_added_library_request.rb +55 -0
  68. data/lib/plex_ruby_sdk/models/operations/{getrecentlyadded_response.rb → get_recently_added_library_response.rb} +5 -5
  69. data/lib/plex_ruby_sdk/models/operations/get_recently_added_library_responsebody.rb +24 -0
  70. data/lib/plex_ruby_sdk/models/operations/get_recently_added_library_role.rb +24 -0
  71. data/lib/plex_ruby_sdk/models/operations/get_recently_added_library_type.rb +42 -0
  72. data/lib/plex_ruby_sdk/models/operations/{getrecentlyadded_badrequest.rb → get_recently_added_library_unauthorized.rb} +4 -4
  73. data/lib/plex_ruby_sdk/models/operations/get_recently_added_library_writer.rb +24 -0
  74. data/lib/plex_ruby_sdk/models/operations/get_recently_added_mediacontainer.rb +43 -0
  75. data/lib/plex_ruby_sdk/models/operations/get_recently_added_metadata.rb +252 -0
  76. data/lib/plex_ruby_sdk/models/operations/get_recently_added_operator.rb +27 -0
  77. data/lib/plex_ruby_sdk/models/operations/get_recently_added_request.rb +55 -0
  78. data/lib/plex_ruby_sdk/models/operations/get_recently_added_response.rb +33 -0
  79. data/lib/plex_ruby_sdk/models/operations/{getrecentlyadded_responsebody.rb → get_recently_added_responsebody.rb} +1 -1
  80. data/lib/plex_ruby_sdk/models/operations/get_recently_added_sort.rb +47 -0
  81. data/lib/plex_ruby_sdk/models/operations/get_recently_added_type.rb +42 -0
  82. data/lib/plex_ruby_sdk/models/operations/get_search_library_queryparam_type.rb +26 -0
  83. data/lib/plex_ruby_sdk/models/operations/get_search_library_request.rb +2 -2
  84. data/lib/plex_ruby_sdk/models/operations/getpin_request.rb +8 -2
  85. data/lib/plex_ruby_sdk/models/operations/media.rb +26 -20
  86. data/lib/plex_ruby_sdk/models/operations/meta.rb +3 -3
  87. data/lib/plex_ruby_sdk/models/operations/metadatarating.rb +30 -0
  88. data/lib/plex_ruby_sdk/models/operations/operator.rb +3 -3
  89. data/lib/plex_ruby_sdk/models/operations/optimizedforstreaming.rb +18 -0
  90. data/lib/plex_ruby_sdk/models/operations/part.rb +25 -15
  91. data/lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_request.rb +45 -0
  92. data/lib/plex_ruby_sdk/models/operations/queryparam_includemeta.rb +19 -0
  93. data/lib/plex_ruby_sdk/models/operations/role.rb +18 -3
  94. data/lib/plex_ruby_sdk/models/operations/sort.rb +19 -11
  95. data/lib/plex_ruby_sdk/models/operations/stream.rb +58 -40
  96. data/lib/plex_ruby_sdk/models/operations.rb +97 -40
  97. data/lib/plex_ruby_sdk/sdkconfiguration.rb +3 -3
  98. metadata +68 -11
  99. data/lib/plex_ruby_sdk/models/operations/getrecentlyadded_mediacontainer.rb +0 -42
  100. data/lib/plex_ruby_sdk/models/operations/getrecentlyadded_request.rb +0 -33
  101. /data/lib/plex_ruby_sdk/models/operations/{getrecentlyadded_library_errors.rb → get_recently_added_library_errors.rb} +0 -0
@@ -0,0 +1,43 @@
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 GetRecentlyAddedMediaContainer < ::PlexRubySDK::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+
15
+ field :size, ::Float, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
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
+ # The Meta object is only included in the response if the `includeMeta` parameter is set to `1`.
21
+ #
22
+ field :meta, T.nilable(::PlexRubySDK::Operations::Meta), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Meta') } }
23
+
24
+ field :metadata, T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedMetadata]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Metadata') } }
25
+
26
+ field :offset, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('offset') } }
27
+
28
+ field :total_size, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('totalSize') } }
29
+
30
+
31
+ sig { params(size: ::Float, allow_sync: T.nilable(T::Boolean), identifier: T.nilable(::String), meta: T.nilable(::PlexRubySDK::Operations::Meta), metadata: T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedMetadata]), offset: T.nilable(::Integer), total_size: T.nilable(::Integer)).void }
32
+ def initialize(size: nil, allow_sync: nil, identifier: nil, meta: nil, metadata: nil, offset: nil, total_size: nil)
33
+ @size = size
34
+ @allow_sync = allow_sync
35
+ @identifier = identifier
36
+ @meta = meta
37
+ @metadata = metadata
38
+ @offset = offset
39
+ @total_size = total_size
40
+ end
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,252 @@
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 GetRecentlyAddedMetadata < ::PlexRubySDK::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # Unix epoch datetime in seconds
15
+ field :added_at, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('addedAt') } }
16
+
17
+ field :guid, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('guid') } }
18
+
19
+ field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
20
+ # The rating key (Media ID) of this media item.
21
+ # Note: This is always an integer, but is represented as a string in the API.
22
+ #
23
+ field :rating_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('ratingKey') } }
24
+
25
+ field :summary, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('summary') } }
26
+
27
+ field :title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
28
+ # The type of media content
29
+ #
30
+ field :type, ::PlexRubySDK::Operations::GetRecentlyAddedHubsType, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::GetRecentlyAddedHubsType, false) } }
31
+
32
+ field :art, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('art') } }
33
+
34
+ field :audience_rating, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audienceRating') } }
35
+
36
+ field :audience_rating_image, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audienceRatingImage') } }
37
+
38
+ field :banner, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('banner') } }
39
+
40
+ field :chapter_source, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chapterSource') } }
41
+
42
+ field :child_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('childCount') } }
43
+
44
+ field :collection, T.nilable(T::Array[::PlexRubySDK::Operations::Collection]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Collection') } }
45
+
46
+ field :content_rating, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('contentRating') } }
47
+
48
+ field :country, T.nilable(T::Array[::PlexRubySDK::Operations::Country]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Country') } }
49
+
50
+ field :director, T.nilable(T::Array[::PlexRubySDK::Operations::Director]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Director') } }
51
+
52
+ field :duration, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
53
+
54
+ field :flatten_seasons, T.nilable(::PlexRubySDK::Operations::FlattenSeasons), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('flattenSeasons'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::FlattenSeasons, true) } }
55
+
56
+ field :genre, T.nilable(T::Array[::PlexRubySDK::Operations::Genre]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Genre') } }
57
+
58
+ field :grandparent_art, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentArt') } }
59
+
60
+ field :grandparent_guid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentGuid') } }
61
+
62
+ field :grandparent_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentKey') } }
63
+
64
+ field :grandparent_rating_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentRatingKey') } }
65
+
66
+ field :grandparent_slug, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentSlug') } }
67
+
68
+ field :grandparent_theme, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentTheme') } }
69
+
70
+ field :grandparent_thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentThumb') } }
71
+
72
+ field :grandparent_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentTitle') } }
73
+
74
+ field :has_premium_extras, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasPremiumExtras') } }
75
+
76
+ field :has_premium_primary_extra, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasPremiumPrimaryExtra') } }
77
+
78
+ field :image, T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedImage]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Image') } }
79
+
80
+ field :index, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
81
+
82
+ field :last_viewed_at, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('lastViewedAt') } }
83
+
84
+ field :leaf_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('leafCount') } }
85
+
86
+ field :library_section_id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionID') } }
87
+
88
+ field :library_section_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionKey') } }
89
+
90
+ field :library_section_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionTitle') } }
91
+ # The Media object is only included when type query is `4` or higher.
92
+ #
93
+ field :media, T.nilable(T::Array[::PlexRubySDK::Operations::Media]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Media') } }
94
+ # The Guid object is only included in the response if the `includeGuids` parameter is set to `1`.
95
+ #
96
+ field :media_guid, T.nilable(T::Array[::PlexRubySDK::Operations::MediaGuid]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Guid') } }
97
+
98
+ field :meta_data_rating, T.nilable(T::Array[::PlexRubySDK::Operations::MetaDataRating]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Rating') } }
99
+
100
+ field :originally_available_at, T.nilable(::Date), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originallyAvailableAt'), 'decoder': Utils.date_from_iso_format(true) } }
101
+
102
+ field :original_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originalTitle') } }
103
+
104
+ field :parent_guid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentGuid') } }
105
+
106
+ field :parent_index, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentIndex') } }
107
+
108
+ field :parent_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentKey') } }
109
+ # The rating key of the parent item.
110
+ #
111
+ field :parent_rating_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentRatingKey') } }
112
+
113
+ field :parent_slug, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentSlug') } }
114
+
115
+ field :parent_studio, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentStudio') } }
116
+
117
+ field :parent_theme, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentTheme') } }
118
+
119
+ field :parent_thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentThumb') } }
120
+
121
+ field :parent_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentTitle') } }
122
+
123
+ field :parent_year, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentYear') } }
124
+
125
+ field :primary_extra_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('primaryExtraKey') } }
126
+
127
+ field :rating, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('rating') } }
128
+
129
+ field :rating_image, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('ratingImage') } }
130
+
131
+ field :role, T.nilable(T::Array[::PlexRubySDK::Operations::Role]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Role') } }
132
+
133
+ field :season_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('seasonCount') } }
134
+ # Setting that indicates the episode ordering for the show
135
+ # None = Library default,
136
+ # tmdbAiring = The Movie Database (Aired),
137
+ # aired = TheTVDB (Aired),
138
+ # dvd = TheTVDB (DVD),
139
+ # absolute = TheTVDB (Absolute)).
140
+ #
141
+ field :show_ordering, T.nilable(::PlexRubySDK::Operations::ShowOrdering), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('showOrdering'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::ShowOrdering, true) } }
142
+
143
+ field :skip_children, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('skipChildren') } }
144
+
145
+ field :skip_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('skipCount') } }
146
+
147
+ field :slug, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('slug') } }
148
+
149
+ field :studio, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('studio') } }
150
+
151
+ field :tagline, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagline') } }
152
+
153
+ field :theme, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('theme') } }
154
+
155
+ field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
156
+
157
+ field :title_sort, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('titleSort') } }
158
+
159
+ field :ultra_blur_colors, T.nilable(::PlexRubySDK::Operations::UltraBlurColors), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('UltraBlurColors') } }
160
+ # Unix epoch datetime in seconds
161
+ field :updated_at, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('updatedAt') } }
162
+
163
+ field :view_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewCount') } }
164
+
165
+ field :viewed_leaf_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewedLeafCount') } }
166
+
167
+ field :view_offset, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewOffset') } }
168
+
169
+ field :writer, T.nilable(T::Array[::PlexRubySDK::Operations::Writer]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Writer') } }
170
+
171
+ field :year, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('year') } }
172
+
173
+
174
+ sig { params(added_at: ::Integer, guid: ::String, key: ::String, rating_key: ::String, summary: ::String, title: ::String, type: ::PlexRubySDK::Operations::GetRecentlyAddedHubsType, art: T.nilable(::String), audience_rating: T.nilable(::Float), audience_rating_image: T.nilable(::String), banner: T.nilable(::String), chapter_source: T.nilable(::String), child_count: T.nilable(::Integer), collection: T.nilable(T::Array[::PlexRubySDK::Operations::Collection]), content_rating: T.nilable(::String), country: T.nilable(T::Array[::PlexRubySDK::Operations::Country]), director: T.nilable(T::Array[::PlexRubySDK::Operations::Director]), duration: T.nilable(::Integer), flatten_seasons: T.nilable(::PlexRubySDK::Operations::FlattenSeasons), genre: T.nilable(T::Array[::PlexRubySDK::Operations::Genre]), grandparent_art: T.nilable(::String), grandparent_guid: T.nilable(::String), grandparent_key: T.nilable(::String), grandparent_rating_key: T.nilable(::String), grandparent_slug: T.nilable(::String), grandparent_theme: T.nilable(::String), grandparent_thumb: T.nilable(::String), grandparent_title: T.nilable(::String), has_premium_extras: T.nilable(::String), has_premium_primary_extra: T.nilable(::String), image: T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedImage]), index: T.nilable(::Integer), last_viewed_at: T.nilable(::Integer), leaf_count: T.nilable(::Integer), library_section_id: T.nilable(::Integer), library_section_key: T.nilable(::String), library_section_title: T.nilable(::String), media: T.nilable(T::Array[::PlexRubySDK::Operations::Media]), media_guid: T.nilable(T::Array[::PlexRubySDK::Operations::MediaGuid]), meta_data_rating: T.nilable(T::Array[::PlexRubySDK::Operations::MetaDataRating]), originally_available_at: T.nilable(::Date), original_title: T.nilable(::String), parent_guid: T.nilable(::String), parent_index: T.nilable(::Integer), parent_key: T.nilable(::String), parent_rating_key: T.nilable(::String), parent_slug: T.nilable(::String), parent_studio: T.nilable(::String), parent_theme: T.nilable(::String), parent_thumb: T.nilable(::String), parent_title: T.nilable(::String), parent_year: T.nilable(::Integer), primary_extra_key: T.nilable(::String), rating: T.nilable(::Float), rating_image: T.nilable(::String), role: T.nilable(T::Array[::PlexRubySDK::Operations::Role]), season_count: T.nilable(::Integer), show_ordering: T.nilable(::PlexRubySDK::Operations::ShowOrdering), skip_children: T.nilable(T::Boolean), skip_count: T.nilable(::Integer), slug: T.nilable(::String), studio: T.nilable(::String), tagline: T.nilable(::String), theme: T.nilable(::String), thumb: T.nilable(::String), title_sort: T.nilable(::String), ultra_blur_colors: T.nilable(::PlexRubySDK::Operations::UltraBlurColors), updated_at: T.nilable(::Integer), view_count: T.nilable(::Integer), viewed_leaf_count: T.nilable(::Integer), view_offset: T.nilable(::Integer), writer: T.nilable(T::Array[::PlexRubySDK::Operations::Writer]), year: T.nilable(::Integer)).void }
175
+ def initialize(added_at: nil, guid: nil, key: nil, rating_key: nil, summary: nil, title: nil, type: nil, art: nil, audience_rating: nil, audience_rating_image: nil, banner: nil, chapter_source: nil, child_count: nil, collection: nil, content_rating: nil, country: nil, director: nil, duration: nil, flatten_seasons: nil, genre: nil, grandparent_art: nil, grandparent_guid: nil, grandparent_key: nil, grandparent_rating_key: nil, grandparent_slug: nil, grandparent_theme: nil, grandparent_thumb: nil, grandparent_title: nil, has_premium_extras: nil, has_premium_primary_extra: nil, image: nil, index: nil, last_viewed_at: nil, leaf_count: nil, library_section_id: nil, library_section_key: nil, library_section_title: nil, media: nil, media_guid: nil, meta_data_rating: nil, originally_available_at: nil, original_title: nil, parent_guid: nil, parent_index: nil, parent_key: nil, parent_rating_key: nil, parent_slug: nil, parent_studio: nil, parent_theme: nil, parent_thumb: nil, parent_title: nil, parent_year: nil, primary_extra_key: nil, rating: nil, rating_image: nil, role: nil, season_count: nil, show_ordering: nil, skip_children: nil, skip_count: nil, slug: nil, studio: nil, tagline: nil, theme: nil, thumb: nil, title_sort: nil, ultra_blur_colors: nil, updated_at: nil, view_count: nil, viewed_leaf_count: nil, view_offset: nil, writer: nil, year: nil)
176
+ @added_at = added_at
177
+ @guid = guid
178
+ @key = key
179
+ @rating_key = rating_key
180
+ @summary = summary
181
+ @title = title
182
+ @type = type
183
+ @art = art
184
+ @audience_rating = audience_rating
185
+ @audience_rating_image = audience_rating_image
186
+ @banner = banner
187
+ @chapter_source = chapter_source
188
+ @child_count = child_count
189
+ @collection = collection
190
+ @content_rating = content_rating
191
+ @country = country
192
+ @director = director
193
+ @duration = duration
194
+ @flatten_seasons = flatten_seasons
195
+ @genre = genre
196
+ @grandparent_art = grandparent_art
197
+ @grandparent_guid = grandparent_guid
198
+ @grandparent_key = grandparent_key
199
+ @grandparent_rating_key = grandparent_rating_key
200
+ @grandparent_slug = grandparent_slug
201
+ @grandparent_theme = grandparent_theme
202
+ @grandparent_thumb = grandparent_thumb
203
+ @grandparent_title = grandparent_title
204
+ @has_premium_extras = has_premium_extras
205
+ @has_premium_primary_extra = has_premium_primary_extra
206
+ @image = image
207
+ @index = index
208
+ @last_viewed_at = last_viewed_at
209
+ @leaf_count = leaf_count
210
+ @library_section_id = library_section_id
211
+ @library_section_key = library_section_key
212
+ @library_section_title = library_section_title
213
+ @media = media
214
+ @media_guid = media_guid
215
+ @meta_data_rating = meta_data_rating
216
+ @originally_available_at = originally_available_at
217
+ @original_title = original_title
218
+ @parent_guid = parent_guid
219
+ @parent_index = parent_index
220
+ @parent_key = parent_key
221
+ @parent_rating_key = parent_rating_key
222
+ @parent_slug = parent_slug
223
+ @parent_studio = parent_studio
224
+ @parent_theme = parent_theme
225
+ @parent_thumb = parent_thumb
226
+ @parent_title = parent_title
227
+ @parent_year = parent_year
228
+ @primary_extra_key = primary_extra_key
229
+ @rating = rating
230
+ @rating_image = rating_image
231
+ @role = role
232
+ @season_count = season_count
233
+ @show_ordering = show_ordering
234
+ @skip_children = skip_children
235
+ @skip_count = skip_count
236
+ @slug = slug
237
+ @studio = studio
238
+ @tagline = tagline
239
+ @theme = theme
240
+ @thumb = thumb
241
+ @title_sort = title_sort
242
+ @ultra_blur_colors = ultra_blur_colors
243
+ @updated_at = updated_at
244
+ @view_count = view_count
245
+ @viewed_leaf_count = viewed_leaf_count
246
+ @view_offset = view_offset
247
+ @writer = writer
248
+ @year = year
249
+ end
250
+ end
251
+ end
252
+ 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
+
11
+ class GetRecentlyAddedOperator < ::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,55 @@
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 GetRecentlyAddedRequest < ::PlexRubySDK::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # The content directory ID.
15
+ field :content_directory_id, ::Integer, { 'query_param': { 'field_name': 'contentDirectoryID', 'style': 'form', 'explode': true } }
16
+ # The type of media to retrieve.
17
+ # 1 = movie
18
+ # 2 = show
19
+ # 3 = season
20
+ # 4 = episode
21
+ # E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
22
+ #
23
+ field :type, ::PlexRubySDK::Operations::Type, { 'query_param': { 'field_name': 'type', 'style': 'form', 'explode': true } }
24
+ # Adds the Meta object to the response
25
+ #
26
+ field :include_meta, T.nilable(::PlexRubySDK::Operations::IncludeMeta), { 'query_param': { 'field_name': 'includeMeta', 'style': 'form', 'explode': true } }
27
+ # Comma-separated list of pinned content directory IDs.
28
+ field :pinned_content_directory_id, T.nilable(::String), { 'query_param': { 'field_name': 'pinnedContentDirectoryID', 'style': 'form', 'explode': true } }
29
+ # The library section ID for filtering content.
30
+ field :section_id, T.nilable(::Integer), { 'query_param': { 'field_name': 'sectionID', 'style': 'form', 'explode': true } }
31
+ # The number of items to return. If not specified, all items will be returned.
32
+ # If the number of items exceeds the limit, the response will be paginated.
33
+ # By default this is 50
34
+ #
35
+ field :x_plex_container_size, T.nilable(::Integer), { 'query_param': { 'field_name': 'X-Plex-Container-Size', 'style': 'form', 'explode': true } }
36
+ # The index of the first item to return. If not specified, the first item will be returned.
37
+ # If the number of items exceeds the limit, the response will be paginated.
38
+ # By default this is 0
39
+ #
40
+ field :x_plex_container_start, T.nilable(::Integer), { 'query_param': { 'field_name': 'X-Plex-Container-Start', 'style': 'form', 'explode': true } }
41
+
42
+
43
+ sig { params(content_directory_id: ::Integer, type: ::PlexRubySDK::Operations::Type, include_meta: T.nilable(::PlexRubySDK::Operations::IncludeMeta), pinned_content_directory_id: T.nilable(::String), section_id: T.nilable(::Integer), x_plex_container_size: T.nilable(::Integer), x_plex_container_start: T.nilable(::Integer)).void }
44
+ def initialize(content_directory_id: nil, type: nil, include_meta: nil, pinned_content_directory_id: nil, section_id: nil, x_plex_container_size: nil, x_plex_container_start: nil)
45
+ @content_directory_id = content_directory_id
46
+ @type = type
47
+ @include_meta = include_meta
48
+ @pinned_content_directory_id = pinned_content_directory_id
49
+ @section_id = section_id
50
+ @x_plex_container_size = x_plex_container_size
51
+ @x_plex_container_start = x_plex_container_start
52
+ end
53
+ end
54
+ end
55
+ 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 GetRecentlyAddedResponse < ::PlexRubySDK::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # HTTP response content type for this operation
15
+ field :content_type, ::String
16
+ # Raw HTTP response; suitable for custom response parsing
17
+ field :raw_response, ::Faraday::Response
18
+ # HTTP response status code for this operation
19
+ field :status_code, ::Integer
20
+ # A successful response with recently added content.
21
+ field :object, T.nilable(::PlexRubySDK::Operations::GetRecentlyAddedResponseBody)
22
+
23
+
24
+ sig { params(content_type: ::String, raw_response: ::Faraday::Response, status_code: ::Integer, object: T.nilable(::PlexRubySDK::Operations::GetRecentlyAddedResponseBody)).void }
25
+ def initialize(content_type: nil, raw_response: nil, status_code: nil, object: nil)
26
+ @content_type = content_type
27
+ @raw_response = raw_response
28
+ @status_code = status_code
29
+ @object = object
30
+ end
31
+ end
32
+ end
33
+ end
@@ -7,7 +7,7 @@
7
7
  module PlexRubySDK
8
8
  module Operations
9
9
 
10
- # The recently added content
10
+ # A successful response with recently added content.
11
11
  class GetRecentlyAddedResponseBody < ::PlexRubySDK::Utils::FieldAugmented
12
12
  extend T::Sig
13
13
 
@@ -0,0 +1,47 @@
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 GetRecentlyAddedSort < ::PlexRubySDK::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # The direction of the sort. Can be either `asc` or `desc`.
15
+ #
16
+ field :default_direction, ::PlexRubySDK::Operations::GetRecentlyAddedDefaultDirection, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('defaultDirection'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::GetRecentlyAddedDefaultDirection, false) } }
17
+
18
+ field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
19
+
20
+ field :title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
21
+
22
+ field :active, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('active') } }
23
+ # The direction of the sort. Can be either `asc` or `desc`.
24
+ #
25
+ field :active_direction, T.nilable(::PlexRubySDK::Operations::GetRecentlyAddedActiveDirection), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('activeDirection'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::GetRecentlyAddedActiveDirection, true) } }
26
+
27
+ field :default, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('default') } }
28
+
29
+ field :desc_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('descKey') } }
30
+
31
+ field :first_character_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('firstCharacterKey') } }
32
+
33
+
34
+ sig { params(default_direction: ::PlexRubySDK::Operations::GetRecentlyAddedDefaultDirection, key: ::String, title: ::String, active: T.nilable(T::Boolean), active_direction: T.nilable(::PlexRubySDK::Operations::GetRecentlyAddedActiveDirection), default: T.nilable(::String), desc_key: T.nilable(::String), first_character_key: T.nilable(::String)).void }
35
+ def initialize(default_direction: nil, key: nil, title: nil, active: nil, active_direction: nil, default: nil, desc_key: nil, first_character_key: nil)
36
+ @default_direction = default_direction
37
+ @key = key
38
+ @title = title
39
+ @active = active
40
+ @active_direction = active_direction
41
+ @default = default
42
+ @desc_key = desc_key
43
+ @first_character_key = first_character_key
44
+ end
45
+ end
46
+ end
47
+ 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 GetRecentlyAddedType < ::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::GetRecentlyAddedField]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Field') } }
24
+
25
+ field :filter, T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedFilter]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Filter') } }
26
+
27
+ field :sort, T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedSort]), { '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::GetRecentlyAddedField]), filter: T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedFilter]), sort: T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedSort])).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
@@ -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
+ # GetSearchLibraryQueryParamType - The type of media to retrieve.
11
+ # 1 = movie
12
+ # 2 = show
13
+ # 3 = season
14
+ # 4 = episode
15
+ # E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
16
+ #
17
+ class GetSearchLibraryQueryParamType < T::Enum
18
+ enums do
19
+ MOVIE = new(1)
20
+ TV_SHOW = new(2)
21
+ SEASON = new(3)
22
+ EPISODE = new(4)
23
+ end
24
+ end
25
+ end
26
+ end
@@ -22,10 +22,10 @@ module PlexRubySDK
22
22
  # 4 = episode
23
23
  # E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
24
24
  #
25
- field :type, ::PlexRubySDK::Operations::QueryParamType, { 'query_param': { 'field_name': 'type', 'style': 'form', 'explode': true } }
25
+ field :type, ::PlexRubySDK::Operations::GetSearchLibraryQueryParamType, { 'query_param': { 'field_name': 'type', 'style': 'form', 'explode': true } }
26
26
 
27
27
 
28
- sig { params(section_key: ::Integer, type: ::PlexRubySDK::Operations::QueryParamType).void }
28
+ sig { params(section_key: ::Integer, type: ::PlexRubySDK::Operations::GetSearchLibraryQueryParamType).void }
29
29
  def initialize(section_key: nil, type: nil)
30
30
  @section_key = section_key
31
31
  @type = type
@@ -14,6 +14,11 @@ 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 } }
17
22
 
18
23
  field :client_name, T.nilable(::String), { 'query_param': { 'field_name': 'X-Plex-Product', 'style': 'form', 'explode': true } }
19
24
 
@@ -29,8 +34,9 @@ module PlexRubySDK
29
34
  field :strong, T.nilable(T::Boolean), { 'query_param': { 'field_name': 'strong', 'style': 'form', 'explode': true } }
30
35
 
31
36
 
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)
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
34
40
  @client_name = client_name
35
41
  @client_platform = client_platform
36
42
  @client_version = client_version