ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.401.2

This commit is contained in:
speakeasybot
2024-09-21 00:09:03 +00:00
parent 4b6c8310d2
commit 7e98fc9803
110 changed files with 956 additions and 578 deletions

View File

@@ -162,29 +162,22 @@ module PlexRubySDK
end
sig { params(client_id: T.nilable(::String), request_body: T.nilable(::PlexRubySDK::Operations::PostUsersSignInDataRequestBody), server_url: T.nilable(String)).returns(::PlexRubySDK::Operations::PostUsersSignInDataResponse) }
def post_users_sign_in_data(client_id = nil, request_body = nil, server_url = nil)
sig { params(request: T.nilable(::PlexRubySDK::Operations::PostUsersSignInDataRequestBody), server_url: T.nilable(String)).returns(::PlexRubySDK::Operations::PostUsersSignInDataResponse) }
def post_users_sign_in_data(request, server_url = nil)
# post_users_sign_in_data - Get User Sign In Data
# Sign in user with username and password and return user data with Plex authentication token
request = ::PlexRubySDK::Operations::PostUsersSignInDataRequest.new(
client_id: client_id,
request_body: request_body
)
base_url = Utils.template_url(POST_USERS_SIGN_IN_DATA_SERVERS[0], {
})
base_url = server_url if !server_url.nil?
url = "#{base_url}/users/signin"
headers = {}
req_content_type, data, form = Utils.serialize_request_body(request, :request_body, :form)
req_content_type, data, form = Utils.serialize_request_body(request, :request, :form)
headers['content-type'] = req_content_type
query_params = Utils.get_query_params(::PlexRubySDK::Operations::PostUsersSignInDataRequest, request, @sdk_configuration.globals)
headers['Accept'] = 'application/json'
headers['user-agent'] = @sdk_configuration.user_agent
r = @sdk_configuration.client.post(url) do |req|
req.headers = headers
req.params = query_params
if form
req.body = Utils.encode_form(form)
elsif Utils.match_content_type(req_content_type, 'application/x-www-form-urlencoded')

View File

@@ -201,6 +201,7 @@ module PlexRubySDK
autoload :GetServerResourcesUnauthorized, 'plex_ruby_sdk/models/operations/get_server_resources_unauthorized.rb'
autoload :GetServerResourcesErrors, 'plex_ruby_sdk/models/operations/get_server_resources_errors.rb'
autoload :GetServerResourcesBadRequest, 'plex_ruby_sdk/models/operations/get_server_resources_badrequest.rb'
autoload :Protocol, 'plex_ruby_sdk/models/operations/protocol.rb'
autoload :Connections, 'plex_ruby_sdk/models/operations/connections.rb'
autoload :PlexDevice, 'plex_ruby_sdk/models/operations/plexdevice.rb'
autoload :GetServerResourcesResponse, 'plex_ruby_sdk/models/operations/get_server_resources_response.rb'
@@ -345,7 +346,15 @@ module PlexRubySDK
autoload :GetLibraryItemsDirector, 'plex_ruby_sdk/models/operations/get_library_items_director.rb'
autoload :GetLibraryItemsWriter, 'plex_ruby_sdk/models/operations/get_library_items_writer.rb'
autoload :GetLibraryItemsRole, 'plex_ruby_sdk/models/operations/get_library_items_role.rb'
autoload :MediaGuid, 'plex_ruby_sdk/models/operations/mediaguid.rb'
autoload :GetLibraryItemsMetadata, 'plex_ruby_sdk/models/operations/get_library_items_metadata.rb'
autoload :GetLibraryItemsFilter, 'plex_ruby_sdk/models/operations/get_library_items_filter.rb'
autoload :GetLibraryItemsSort, 'plex_ruby_sdk/models/operations/get_library_items_sort.rb'
autoload :GetLibraryItemsField, 'plex_ruby_sdk/models/operations/get_library_items_field.rb'
autoload :GetLibraryItemsType, 'plex_ruby_sdk/models/operations/get_library_items_type.rb'
autoload :GetLibraryItemsOperator, 'plex_ruby_sdk/models/operations/get_library_items_operator.rb'
autoload :GetLibraryItemsFieldType, 'plex_ruby_sdk/models/operations/get_library_items_fieldtype.rb'
autoload :Meta, 'plex_ruby_sdk/models/operations/meta.rb'
autoload :GetLibraryItemsMediaContainer, 'plex_ruby_sdk/models/operations/get_library_items_mediacontainer.rb'
autoload :GetLibraryItemsResponseBody, 'plex_ruby_sdk/models/operations/get_library_items_responsebody.rb'
autoload :GetLibraryItemsResponse, 'plex_ruby_sdk/models/operations/get_library_items_response.rb'
@@ -571,7 +580,6 @@ module PlexRubySDK
autoload :GetTokenDetailsUserPlexAccount, 'plex_ruby_sdk/models/operations/gettokendetails_userplexaccount.rb'
autoload :GetTokenDetailsResponse, 'plex_ruby_sdk/models/operations/gettokendetails_response.rb'
autoload :PostUsersSignInDataRequestBody, 'plex_ruby_sdk/models/operations/post_users_sign_in_data_requestbody.rb'
autoload :PostUsersSignInDataRequest, 'plex_ruby_sdk/models/operations/post_users_sign_in_data_request.rb'
autoload :PostUsersSignInDataAuthenticationErrors, 'plex_ruby_sdk/models/operations/post_users_sign_in_data_authentication_errors.rb'
autoload :PostUsersSignInDataUnauthorized, 'plex_ruby_sdk/models/operations/post_users_sign_in_data_unauthorized.rb'
autoload :PostUsersSignInDataErrors, 'plex_ruby_sdk/models/operations/post_users_sign_in_data_errors.rb'

View File

@@ -13,8 +13,8 @@ module PlexRubySDK
# AutoSelectSubtitle - The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign audio, 2 = Always enabled)
class AutoSelectSubtitle < T::Enum
enums do
ZERO = new('0')
ONE = new('1')
DISABLE = new(0)
ENABLE = new(1)
end
end
end

View File

@@ -14,23 +14,23 @@ module PlexRubySDK
class Connections < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
# The (ip) address or domain name used for the connection
field :address, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('address') } }
# If the connection is using IPv6
field :i_pv6, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('IPv6') } }
# If the connection is local address
field :local, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('local') } }
field :port, ::Float, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('port') } }
field :protocol, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('protocol') } }
# The port used for the connection
field :port, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('port') } }
# The protocol used for the connection (http, https, etc)
field :protocol, ::PlexRubySDK::Operations::Protocol, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('protocol'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::Protocol, false) } }
# If the connection is relayed through plex.direct
field :relay, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('relay') } }
# The full URI of the connection
field :uri, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('uri') } }
sig { params(address: ::String, i_pv6: T::Boolean, local: T::Boolean, port: ::Float, protocol: ::String, relay: T::Boolean, uri: ::String).void }
sig { params(address: ::String, i_pv6: T::Boolean, local: T::Boolean, port: ::Integer, protocol: ::PlexRubySDK::Operations::Protocol, relay: T::Boolean, uri: ::String).void }
def initialize(address: nil, i_pv6: nil, local: nil, port: nil, protocol: nil, relay: nil, uri: nil)
@address = address
@i_pv6 = i_pv6

View File

@@ -10,11 +10,11 @@ module PlexRubySDK
'https://plex.tv/api/v2/'
].freeze
# DefaultSubtitleAccessibility - 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)
# DefaultSubtitleAccessibility - 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)
class DefaultSubtitleAccessibility < T::Enum
enums do
ZERO = new('0')
ONE = new('1')
DISABLE = new(0)
ENABLE = new(1)
end
end
end

View File

@@ -13,8 +13,8 @@ module PlexRubySDK
# DefaultSubtitleForced - 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)
class DefaultSubtitleForced < T::Enum
enums do
ZERO = new('0')
ONE = new('1')
DISABLE = new(0)
ENABLE = new(1)
end
end
end

View File

@@ -12,50 +12,50 @@ module PlexRubySDK
extend T::Sig
field :agent, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('agent') } }
field :agent, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('agent') } }
field :allow_sync, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('allowSync') } }
field :allow_sync, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('allowSync') } }
field :art, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('art') } }
field :art, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('art') } }
field :composite, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('composite') } }
field :composite, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('composite') } }
field :content, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('content') } }
field :content, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('content') } }
field :content_changed_at, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('contentChangedAt') } }
# Unix epoch datetime
field :created_at, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('createdAt') } }
field :content_changed_at, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('contentChangedAt') } }
# Unix epoch datetime in seconds
field :created_at, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('createdAt') } }
field :directory, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('directory') } }
field :directory, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('directory') } }
field :filters, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filters') } }
field :filters, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filters') } }
field :hidden, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hidden') } }
field :hidden, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hidden') } }
field :key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
field :language, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('language') } }
field :language, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('language') } }
field :location, T.nilable(T::Array[::PlexRubySDK::Operations::Location]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Location') } }
field :location, T::Array[::PlexRubySDK::Operations::Location], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Location') } }
field :refreshing, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('refreshing') } }
# Unix epoch datetime
field :scanned_at, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('scannedAt') } }
field :refreshing, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('refreshing') } }
# Unix epoch datetime in seconds
field :scanned_at, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('scannedAt') } }
field :scanner, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('scanner') } }
field :scanner, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('scanner') } }
field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
field :thumb, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
field :title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
field :type, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
# Unix epoch datetime
field :updated_at, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('updatedAt') } }
field :type, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
# Unix epoch datetime in seconds
field :updated_at, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('updatedAt') } }
field :uuid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('uuid') } }
field :uuid, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('uuid') } }
sig { params(agent: T.nilable(::String), allow_sync: T.nilable(T::Boolean), art: T.nilable(::String), composite: T.nilable(::String), content: T.nilable(T::Boolean), content_changed_at: T.nilable(::Integer), created_at: T.nilable(::Integer), directory: T.nilable(T::Boolean), filters: T.nilable(T::Boolean), hidden: T.nilable(::Integer), key: T.nilable(::String), language: T.nilable(::String), location: T.nilable(T::Array[::PlexRubySDK::Operations::Location]), refreshing: T.nilable(T::Boolean), scanned_at: T.nilable(::Integer), scanner: T.nilable(::String), thumb: T.nilable(::String), title: T.nilable(::String), type: T.nilable(::String), updated_at: T.nilable(::Integer), uuid: T.nilable(::String)).void }
sig { params(agent: ::String, allow_sync: T::Boolean, art: ::String, composite: ::String, content: T::Boolean, content_changed_at: ::Integer, created_at: ::Integer, directory: T::Boolean, filters: T::Boolean, hidden: ::Integer, key: ::String, language: ::String, location: T::Array[::PlexRubySDK::Operations::Location], refreshing: T::Boolean, scanned_at: ::Integer, scanner: ::String, thumb: ::String, title: ::String, type: ::String, updated_at: ::Integer, uuid: ::String).void }
def initialize(agent: nil, allow_sync: nil, art: nil, composite: nil, content: nil, content_changed_at: nil, created_at: nil, directory: nil, filters: nil, hidden: nil, key: nil, language: nil, location: nil, refreshing: nil, scanned_at: nil, scanner: nil, thumb: nil, title: nil, type: nil, updated_at: nil, uuid: nil)
@agent = agent
@allow_sync = allow_sync

View File

@@ -14,19 +14,19 @@ module PlexRubySDK
field :allow_sync, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('allowSync') } }
field :directory, T::Array[::PlexRubySDK::Operations::GetAllLibrariesDirectory], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Directory') } }
field :size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
field :title1, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title1') } }
field :directory, T.nilable(T::Array[::PlexRubySDK::Operations::GetAllLibrariesDirectory]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Directory') } }
sig { params(allow_sync: T::Boolean, size: ::Integer, title1: ::String, directory: T.nilable(T::Array[::PlexRubySDK::Operations::GetAllLibrariesDirectory])).void }
def initialize(allow_sync: nil, size: nil, title1: nil, directory: nil)
sig { params(allow_sync: T::Boolean, directory: T::Array[::PlexRubySDK::Operations::GetAllLibrariesDirectory], size: ::Integer, title1: ::String).void }
def initialize(allow_sync: nil, directory: nil, size: nil, title1: nil)
@allow_sync = allow_sync
@directory = directory
@size = size
@title1 = title1
@directory = directory
end
end
end

View File

@@ -12,10 +12,10 @@ module PlexRubySDK
extend T::Sig
field :media_container, T.nilable(::PlexRubySDK::Operations::GetAllLibrariesMediaContainer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('MediaContainer') } }
field :media_container, ::PlexRubySDK::Operations::GetAllLibrariesMediaContainer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('MediaContainer') } }
sig { params(media_container: T.nilable(::PlexRubySDK::Operations::GetAllLibrariesMediaContainer)).void }
sig { params(media_container: ::PlexRubySDK::Operations::GetAllLibrariesMediaContainer).void }
def initialize(media_container: nil)
@media_container = media_container
end

View File

@@ -0,0 +1,33 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetLibraryItemsField < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
field :title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
field :type, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
field :sub_type, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('subType') } }
sig { params(key: ::String, title: ::String, type: ::String, sub_type: T.nilable(::String)).void }
def initialize(key: nil, title: nil, type: nil, sub_type: nil)
@key = key
@title = title
@type = type
@sub_type = sub_type
end
end
end
end

View File

@@ -0,0 +1,27 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetLibraryItemsFieldType < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
field :operator, T::Array[::PlexRubySDK::Operations::GetLibraryItemsOperator], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Operator') } }
field :type, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
sig { params(operator: T::Array[::PlexRubySDK::Operations::GetLibraryItemsOperator], type: ::String).void }
def initialize(operator: nil, type: nil)
@operator = operator
@type = type
end
end
end
end

View File

@@ -0,0 +1,36 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetLibraryItemsFilter < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
field :filter_type, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filterType') } }
field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
field :title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
field :type, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
sig { params(filter: ::String, filter_type: ::String, key: ::String, title: ::String, type: ::String).void }
def initialize(filter: nil, filter_type: nil, key: nil, title: nil, type: nil)
@filter = filter
@filter_type = filter_type
@key = key
@title = title
@type = type
end
end
end
end

View File

@@ -12,41 +12,44 @@ module PlexRubySDK
extend T::Sig
field :allow_sync, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('allowSync') } }
field :allow_sync, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('allowSync') } }
field :art, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('art') } }
field :art, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('art') } }
field :identifier, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('identifier') } }
field :identifier, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('identifier') } }
field :library_section_id, T.nilable(::Object), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionID') } }
field :library_section_id, ::Object, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionID') } }
field :library_section_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionTitle') } }
field :library_section_title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionTitle') } }
field :library_section_uuid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionUUID') } }
field :library_section_uuid, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionUUID') } }
field :media_tag_prefix, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagPrefix') } }
field :media_tag_prefix, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagPrefix') } }
field :media_tag_version, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagVersion') } }
field :media_tag_version, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagVersion') } }
field :size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
field :thumb, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
field :title1, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title1') } }
field :title2, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title2') } }
field :view_group, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewGroup') } }
# The Meta object is only included in the response if the `includeMeta` parameter is set to `1`.
#
field :meta, T.nilable(::PlexRubySDK::Operations::Meta), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Meta') } }
field :metadata, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsMetadata]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Metadata') } }
field :mixed_parents, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mixedParents') } }
field :size, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
field :title1, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title1') } }
field :title2, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title2') } }
field :view_group, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewGroup') } }
field :view_mode, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewMode') } }
sig { params(allow_sync: T.nilable(T::Boolean), art: T.nilable(::String), identifier: T.nilable(::String), library_section_id: T.nilable(::Object), library_section_title: T.nilable(::String), library_section_uuid: T.nilable(::String), media_tag_prefix: T.nilable(::String), media_tag_version: T.nilable(::Integer), metadata: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsMetadata]), mixed_parents: T.nilable(T::Boolean), size: T.nilable(::Integer), thumb: T.nilable(::String), title1: T.nilable(::String), title2: T.nilable(::String), view_group: T.nilable(::String), view_mode: T.nilable(::Integer)).void }
def initialize(allow_sync: nil, art: nil, identifier: nil, library_section_id: nil, library_section_title: nil, library_section_uuid: nil, media_tag_prefix: nil, media_tag_version: nil, metadata: nil, mixed_parents: nil, size: nil, thumb: nil, title1: nil, title2: nil, view_group: nil, view_mode: nil)
sig { params(allow_sync: T::Boolean, art: ::String, identifier: ::String, library_section_id: ::Object, library_section_title: ::String, library_section_uuid: ::String, media_tag_prefix: ::String, media_tag_version: ::Integer, size: ::Integer, thumb: ::String, title1: ::String, title2: ::String, view_group: ::String, meta: T.nilable(::PlexRubySDK::Operations::Meta), metadata: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsMetadata]), mixed_parents: T.nilable(T::Boolean), view_mode: T.nilable(::Integer)).void }
def initialize(allow_sync: nil, art: nil, identifier: nil, library_section_id: nil, library_section_title: nil, library_section_uuid: nil, media_tag_prefix: nil, media_tag_version: nil, size: nil, thumb: nil, title1: nil, title2: nil, view_group: nil, meta: nil, metadata: nil, mixed_parents: nil, view_mode: nil)
@allow_sync = allow_sync
@art = art
@identifier = identifier
@@ -55,13 +58,14 @@ module PlexRubySDK
@library_section_uuid = library_section_uuid
@media_tag_prefix = media_tag_prefix
@media_tag_version = media_tag_version
@metadata = metadata
@mixed_parents = mixed_parents
@size = size
@thumb = thumb
@title1 = title1
@title2 = title2
@view_group = view_group
@meta = meta
@metadata = metadata
@mixed_parents = mixed_parents
@view_mode = view_mode
end
end

View File

@@ -12,6 +12,22 @@ module PlexRubySDK
extend T::Sig
field :duration, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
field :guid, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('guid') } }
field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
field :media, T::Array[::PlexRubySDK::Operations::GetLibraryItemsMedia], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Media') } }
field :rating_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('ratingKey') } }
field :title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
field :type, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
field :year, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('year') } }
field :added_at, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('addedAt') } }
field :art, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('art') } }
@@ -30,8 +46,6 @@ module PlexRubySDK
field :director, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsDirector]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Director') } }
field :duration, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
field :genre, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsGenre]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Genre') } }
field :grandparent_art, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentArt') } }
@@ -48,21 +62,18 @@ module PlexRubySDK
field :grandparent_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentTitle') } }
field :guid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('guid') } }
field :has_premium_extras, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasPremiumExtras') } }
field :has_premium_primary_extra, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasPremiumPrimaryExtra') } }
field :index, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
field :key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
field :last_viewed_at, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('lastViewedAt') } }
field :leaf_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('leafCount') } }
field :media, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsMedia]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Media') } }
# The Guid object is only included in the response if the `includeGuids` parameter is set to `1`.
#
field :media_guid, T.nilable(T::Array[::PlexRubySDK::Operations::MediaGuid]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Guid') } }
field :originally_available_at, T.nilable(::Date), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originallyAvailableAt'), 'decoder': Utils.date_from_iso_format(true) } }
@@ -92,8 +103,6 @@ module PlexRubySDK
field :rating_image, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('ratingImage') } }
field :rating_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('ratingKey') } }
field :role, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsRole]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Role') } }
field :skip_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('skipCount') } }
@@ -108,12 +117,8 @@ module PlexRubySDK
field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
field :title_sort, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('titleSort') } }
field :type, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
field :updated_at, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('updatedAt') } }
field :view_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewCount') } }
@@ -124,11 +129,17 @@ module PlexRubySDK
field :writer, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsWriter]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Writer') } }
field :year, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('year') } }
sig { params(added_at: T.nilable(::Integer), art: T.nilable(::String), audience_rating: T.nilable(::Float), audience_rating_image: T.nilable(::String), chapter_source: T.nilable(::String), child_count: T.nilable(::Integer), content_rating: T.nilable(::String), country: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsCountry]), director: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsDirector]), duration: T.nilable(::Integer), genre: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsGenre]), grandparent_art: T.nilable(::String), grandparent_guid: T.nilable(::String), grandparent_key: T.nilable(::String), grandparent_rating_key: T.nilable(::String), grandparent_theme: T.nilable(::String), grandparent_thumb: T.nilable(::String), grandparent_title: T.nilable(::String), guid: T.nilable(::String), has_premium_extras: T.nilable(::String), has_premium_primary_extra: T.nilable(::String), index: T.nilable(::Integer), key: T.nilable(::String), last_viewed_at: T.nilable(::Integer), leaf_count: T.nilable(::Integer), media: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsMedia]), 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_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), rating_key: T.nilable(::String), role: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsRole]), skip_count: T.nilable(::Integer), studio: T.nilable(::String), summary: T.nilable(::String), tagline: T.nilable(::String), theme: T.nilable(::String), thumb: T.nilable(::String), title: T.nilable(::String), title_sort: T.nilable(::String), type: T.nilable(::String), 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::GetLibraryItemsWriter]), year: T.nilable(::Integer)).void }
def initialize(added_at: nil, art: nil, audience_rating: nil, audience_rating_image: nil, chapter_source: nil, child_count: nil, content_rating: nil, country: nil, director: nil, duration: nil, genre: nil, grandparent_art: nil, grandparent_guid: nil, grandparent_key: nil, grandparent_rating_key: nil, grandparent_theme: nil, grandparent_thumb: nil, grandparent_title: nil, guid: nil, has_premium_extras: nil, has_premium_primary_extra: nil, index: nil, key: nil, last_viewed_at: nil, leaf_count: nil, media: nil, originally_available_at: nil, original_title: nil, parent_guid: nil, parent_index: nil, parent_key: nil, parent_rating_key: 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, rating_key: nil, role: nil, skip_count: nil, studio: nil, summary: nil, tagline: nil, theme: nil, thumb: nil, title: nil, title_sort: nil, type: nil, updated_at: nil, view_count: nil, viewed_leaf_count: nil, view_offset: nil, writer: nil, year: nil)
sig { params(duration: ::Integer, guid: ::String, key: ::String, media: T::Array[::PlexRubySDK::Operations::GetLibraryItemsMedia], rating_key: ::String, title: ::String, type: ::String, year: ::Integer, added_at: T.nilable(::Integer), art: T.nilable(::String), audience_rating: T.nilable(::Float), audience_rating_image: T.nilable(::String), chapter_source: T.nilable(::String), child_count: T.nilable(::Integer), content_rating: T.nilable(::String), country: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsCountry]), director: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsDirector]), genre: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsGenre]), grandparent_art: T.nilable(::String), grandparent_guid: T.nilable(::String), grandparent_key: T.nilable(::String), grandparent_rating_key: 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), index: T.nilable(::Integer), last_viewed_at: T.nilable(::Integer), leaf_count: T.nilable(::Integer), media_guid: T.nilable(T::Array[::PlexRubySDK::Operations::MediaGuid]), 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_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::GetLibraryItemsRole]), skip_count: T.nilable(::Integer), studio: T.nilable(::String), summary: T.nilable(::String), tagline: T.nilable(::String), theme: T.nilable(::String), thumb: T.nilable(::String), title_sort: T.nilable(::String), 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::GetLibraryItemsWriter])).void }
def initialize(duration: nil, guid: nil, key: nil, media: nil, rating_key: nil, title: nil, type: nil, year: nil, added_at: nil, art: nil, audience_rating: nil, audience_rating_image: nil, chapter_source: nil, child_count: nil, content_rating: nil, country: nil, director: nil, genre: nil, grandparent_art: nil, grandparent_guid: nil, grandparent_key: nil, grandparent_rating_key: nil, grandparent_theme: nil, grandparent_thumb: nil, grandparent_title: nil, has_premium_extras: nil, has_premium_primary_extra: nil, index: nil, last_viewed_at: nil, leaf_count: nil, media_guid: nil, originally_available_at: nil, original_title: nil, parent_guid: nil, parent_index: nil, parent_key: nil, parent_rating_key: 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, skip_count: nil, studio: nil, summary: nil, tagline: nil, theme: nil, thumb: nil, title_sort: nil, updated_at: nil, view_count: nil, viewed_leaf_count: nil, view_offset: nil, writer: nil)
@duration = duration
@guid = guid
@key = key
@media = media
@rating_key = rating_key
@title = title
@type = type
@year = year
@added_at = added_at
@art = art
@audience_rating = audience_rating
@@ -138,7 +149,6 @@ module PlexRubySDK
@content_rating = content_rating
@country = country
@director = director
@duration = duration
@genre = genre
@grandparent_art = grandparent_art
@grandparent_guid = grandparent_guid
@@ -147,14 +157,12 @@ module PlexRubySDK
@grandparent_theme = grandparent_theme
@grandparent_thumb = grandparent_thumb
@grandparent_title = grandparent_title
@guid = guid
@has_premium_extras = has_premium_extras
@has_premium_primary_extra = has_premium_primary_extra
@index = index
@key = key
@last_viewed_at = last_viewed_at
@leaf_count = leaf_count
@media = media
@media_guid = media_guid
@originally_available_at = originally_available_at
@original_title = original_title
@parent_guid = parent_guid
@@ -169,7 +177,6 @@ module PlexRubySDK
@primary_extra_key = primary_extra_key
@rating = rating
@rating_image = rating_image
@rating_key = rating_key
@role = role
@skip_count = skip_count
@studio = studio
@@ -177,15 +184,12 @@ module PlexRubySDK
@tagline = tagline
@theme = theme
@thumb = thumb
@title = title
@title_sort = title_sort
@type = type
@updated_at = updated_at
@view_count = view_count
@viewed_leaf_count = viewed_leaf_count
@view_offset = view_offset
@writer = writer
@year = year
end
end
end

View File

@@ -0,0 +1,27 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetLibraryItemsOperator < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
field :title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
sig { params(key: ::String, title: ::String).void }
def initialize(key: nil, title: nil)
@key = key
@title = title
end
end
end
end

View File

@@ -0,0 +1,39 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetLibraryItemsSort < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
field :default_direction, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('defaultDirection') } }
field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
field :title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
field :default, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('default') } }
field :desc_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('descKey') } }
field :first_character_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('firstCharacterKey') } }
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 }
def initialize(default_direction: nil, key: nil, title: nil, default: nil, desc_key: nil, first_character_key: nil)
@default_direction = default_direction
@key = key
@title = title
@default = default
@desc_key = desc_key
@first_character_key = first_character_key
end
end
end
end

View File

@@ -0,0 +1,42 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetLibraryItemsType < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
field :active, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('active') } }
field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
field :title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
field :type, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
field :field, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsField]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Field') } }
field :filter, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsFilter]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Filter') } }
field :sort, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsSort]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Sort') } }
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 }
def initialize(active: nil, key: nil, title: nil, type: nil, field: nil, filter: nil, sort: nil)
@active = active
@key = key
@title = title
@type = type
@field = field
@filter = filter
@sort = sort
end
end
end
end

View File

@@ -14,11 +14,6 @@ module PlexRubySDK
class GetServerResourcesRequest < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
# The unique identifier for the client application
# This is used to track the client application and its usage
# (UUID, serial number, or other number unique per device)
#
field :client_id, T.nilable(::String), { 'query_param': { 'field_name': 'X-Plex-Client-Identifier', 'style': 'form', 'explode': true } }
# Include Https entries in the results
field :include_https, T.nilable(::PlexRubySDK::Operations::IncludeHttps), { 'query_param': { 'field_name': 'includeHttps', 'style': 'form', 'explode': true } }
# Include IPv6 entries in the results
@@ -29,9 +24,8 @@ module PlexRubySDK
field :include_relay, T.nilable(::PlexRubySDK::Operations::IncludeRelay), { 'query_param': { 'field_name': 'includeRelay', 'style': 'form', 'explode': true } }
sig { params(client_id: T.nilable(::String), include_https: T.nilable(::PlexRubySDK::Operations::IncludeHttps), include_i_pv6: T.nilable(::PlexRubySDK::Operations::IncludeIPv6), include_relay: T.nilable(::PlexRubySDK::Operations::IncludeRelay)).void }
def initialize(client_id: nil, include_https: nil, include_i_pv6: nil, include_relay: nil)
@client_id = client_id
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 }
def initialize(include_https: nil, include_i_pv6: nil, include_relay: nil)
@include_https = include_https
@include_i_pv6 = include_i_pv6
@include_relay = include_relay

View File

@@ -14,11 +14,6 @@ module PlexRubySDK
class GetPinRequest < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
# The unique identifier for the client application
# This is used to track the client application and its usage
# (UUID, serial number, or other number unique per device)
#
field :client_id, T.nilable(::String), { 'query_param': { 'field_name': 'X-Plex-Client-Identifier', 'style': 'form', 'explode': true } }
field :client_name, T.nilable(::String), { 'query_param': { 'field_name': 'X-Plex-Product', 'style': 'form', 'explode': true } }
@@ -34,9 +29,8 @@ module PlexRubySDK
field :strong, T.nilable(T::Boolean), { 'query_param': { 'field_name': 'strong', 'style': 'form', 'explode': true } }
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 }
def initialize(client_id: nil, client_name: nil, client_platform: nil, client_version: nil, device_name: nil, strong: nil)
@client_id = client_id
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 }
def initialize(client_name: nil, client_platform: nil, client_version: nil, device_name: nil, strong: nil)
@client_name = client_name
@client_platform = client_platform
@client_version = client_version

View File

@@ -16,10 +16,10 @@ module PlexRubySDK
#
class GetPlaylistContentsQueryParamType < T::Enum
enums do
ONE = new(1)
TWO = new(2)
THREE = new(3)
FOUR = new(4)
MOVIE = new(1)
SHOW = new(2)
SEASON = new(3)
EPISODE = new(4)
end
end
end

View File

@@ -16,17 +16,11 @@ module PlexRubySDK
# The PinID to retrieve an access token for
field :pin_id, ::Integer, { 'path_param': { 'field_name': 'pinID', 'style': 'simple', 'explode': false } }
# The unique identifier for the client application
# This is used to track the client application and its usage
# (UUID, serial number, or other number unique per device)
#
field :client_id, T.nilable(::String), { 'query_param': { 'field_name': 'X-Plex-Client-Identifier', 'style': 'form', 'explode': true } }
sig { params(pin_id: ::Integer, client_id: T.nilable(::String)).void }
def initialize(pin_id: nil, client_id: nil)
sig { params(pin_id: ::Integer).void }
def initialize(pin_id: nil)
@pin_id = pin_id
@client_id = client_id
end
end
end

View File

@@ -52,7 +52,7 @@ module PlexRubySDK
field :home_size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('homeSize') } }
# The Plex account ID
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
# Unix epoch datetime
# Unix epoch datetime in seconds
field :joined_at, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('joinedAt') } }
# The account locale
field :locale, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('locale') } }
@@ -66,7 +66,7 @@ module PlexRubySDK
field :profile, ::PlexRubySDK::Operations::UserProfile, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('profile') } }
# If the account has a Plex Home PIN enabled
field :protected, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('protected') } }
# Unix epoch datetime
# Unix epoch datetime in seconds
field :remember_expires_at, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('rememberExpiresAt') } }
# If the account is a Plex Home managed user
field :restricted, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('restricted') } }

View File

@@ -16,10 +16,10 @@ module PlexRubySDK
#
class GetTopWatchedContentQueryParamType < T::Enum
enums do
ONE = new(1)
TWO = new(2)
THREE = new(3)
FOUR = new(4)
MOVIE = new(1)
SHOW = new(2)
SEASON = new(3)
EPISODE = new(4)
end
end
end

View File

@@ -11,8 +11,8 @@ module PlexRubySDK
#
class IncludeGuids < T::Enum
enums do
ZERO = new(0)
ONE = new(1)
DISABLE = new(0)
ENABLE = new(1)
end
end
end

View File

@@ -13,8 +13,8 @@ module PlexRubySDK
# IncludeHttps - Include Https entries in the results
class IncludeHttps < T::Enum
enums do
ZERO = new(0)
ONE = new(1)
DISABLE = new(0)
ENABLE = new(1)
end
end
end

View File

@@ -13,8 +13,8 @@ module PlexRubySDK
# IncludeIPv6 - Include IPv6 entries in the results
class IncludeIPv6 < T::Enum
enums do
ZERO = new(0)
ONE = new(1)
DISABLE = new(0)
ENABLE = new(1)
end
end
end

View File

@@ -11,8 +11,8 @@ module PlexRubySDK
#
class IncludeMeta < T::Enum
enums do
ZERO = new(0)
ONE = new(1)
DISABLE = new(0)
ENABLE = new(1)
end
end
end

View File

@@ -15,8 +15,8 @@ module PlexRubySDK
#
class IncludeRelay < T::Enum
enums do
ZERO = new(0)
ONE = new(1)
DISABLE = new(0)
ENABLE = new(1)
end
end
end

View File

@@ -12,12 +12,12 @@ module PlexRubySDK
extend T::Sig
field :id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
field :path, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('path') } }
field :path, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('path') } }
sig { params(id: T.nilable(::Integer), path: T.nilable(::String)).void }
sig { params(id: ::Integer, path: ::String).void }
def initialize(id: nil, path: nil)
@id = id
@path = path

View File

@@ -0,0 +1,26 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class MediaGuid < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
# Can be one of the following formats:
# imdb://tt13015952, tmdb://2434012, tvdb://7945991
#
field :id, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
sig { params(id: ::String).void }
def initialize(id: nil)
@id = id
end
end
end
end

View File

@@ -10,11 +10,11 @@ module PlexRubySDK
'https://plex.tv/api/v2/'
].freeze
# MediaReviewsVisibility - Whether or not the account has media reviews visibility enabled
class MediaReviewsVisibility < T::Enum
enums do
ZERO = new(0)
ONE = new(1)
DISABLE = new(0)
ENABLE = new(1)
end
end
end

View File

@@ -0,0 +1,28 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
# The Meta object is only included in the response if the `includeMeta` parameter is set to `1`.
#
class Meta < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
field :field_type, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsFieldType]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('FieldType') } }
field :type, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsType]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Type') } }
sig { params(field_type: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsFieldType]), type: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsType])).void }
def initialize(field_type: nil, type: nil)
@field_type = field_type
@type = type
end
end
end
end

View File

@@ -13,8 +13,8 @@ module PlexRubySDK
# PostUsersSignInDataAutoSelectSubtitle - The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign audio, 2 = Always enabled)
class PostUsersSignInDataAutoSelectSubtitle < T::Enum
enums do
ZERO = new('0')
ONE = new('1')
DISABLE = new(0)
ENABLE = new(1)
end
end
end

View File

@@ -10,11 +10,11 @@ module PlexRubySDK
'https://plex.tv/api/v2/'
].freeze
# 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)
# 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)
class PostUsersSignInDataDefaultSubtitleAccessibility < T::Enum
enums do
ZERO = new('0')
ONE = new('1')
DISABLE = new(0)
ENABLE = new(1)
end
end
end

View File

@@ -13,8 +13,8 @@ module PlexRubySDK
# 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)
class PostUsersSignInDataDefaultSubtitleForced < T::Enum
enums do
ZERO = new('0')
ONE = new('1')
DISABLE = new(0)
ENABLE = new(1)
end
end
end

View File

@@ -10,11 +10,11 @@ module PlexRubySDK
'https://plex.tv/api/v2/'
].freeze
# PostUsersSignInDataMediaReviewsVisibility - Whether or not the account has media reviews visibility enabled
class PostUsersSignInDataMediaReviewsVisibility < T::Enum
enums do
ZERO = new(0)
ONE = new(1)
DISABLE = new(0)
ENABLE = new(1)
end
end
end

View File

@@ -1,33 +0,0 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
POST_USERS_SIGN_IN_DATA_REQUEST_SERVERS = [
'https://plex.tv/api/v2/'
].freeze
class PostUsersSignInDataRequest < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
# The unique identifier for the client application
# This is used to track the client application and its usage
# (UUID, serial number, or other number unique per device)
#
field :client_id, T.nilable(::String), { 'query_param': { 'field_name': 'X-Plex-Client-Identifier', 'style': 'form', 'explode': true } }
# Login credentials
field :request_body, T.nilable(::PlexRubySDK::Operations::PostUsersSignInDataRequestBody), { 'request': { 'media_type': 'application/x-www-form-urlencoded' } }
sig { params(client_id: T.nilable(::String), request_body: T.nilable(::PlexRubySDK::Operations::PostUsersSignInDataRequestBody)).void }
def initialize(client_id: nil, request_body: nil)
@client_id = client_id
@request_body = request_body
end
end
end
end

View File

@@ -52,7 +52,7 @@ module PlexRubySDK
field :home_size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('homeSize') } }
# The Plex account ID
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
# Unix epoch datetime
# Unix epoch datetime in seconds
field :joined_at, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('joinedAt') } }
# The account locale
field :locale, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('locale') } }
@@ -68,7 +68,7 @@ module PlexRubySDK
field :profile, ::PlexRubySDK::Operations::PostUsersSignInDataUserProfile, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('profile') } }
# If the account has a Plex Home PIN enabled
field :protected, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('protected') } }
# Unix epoch datetime
# Unix epoch datetime in seconds
field :remember_expires_at, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('rememberExpiresAt') } }
# If the account is a Plex Home managed user
field :restricted, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('restricted') } }

View File

@@ -14,32 +14,32 @@ module PlexRubySDK
class PostUsersSignInDataUserProfile < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
# If the account has automatically select audio and subtitle tracks enabled
field :auto_select_audio, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('autoSelectAudio') } }
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) } }
# The preferred audio language for the account
field :default_audio_language, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('defaultAudioLanguage') } }
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) } }
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) } }
# The preferred subtitle language for the account
field :default_subtitle_language, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('defaultSubtitleLanguage') } }
# If the account has automatically select audio and subtitle tracks enabled
field :auto_select_audio, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('autoSelectAudio') } }
# The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign audio, 2 = Always enabled)
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) } }
# 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)
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) } }
# 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)
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) } }
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) } }
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) } }
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) } }
field :watched_indicator, ::PlexRubySDK::Operations::PostUsersSignInDataWatchedIndicator, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('watchedIndicator'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::PostUsersSignInDataWatchedIndicator, false) } }
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 }
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)
@default_audio_language = default_audio_language
@default_subtitle_language = default_subtitle_language
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 }
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)
@auto_select_audio = auto_select_audio
@auto_select_subtitle = auto_select_subtitle
@default_audio_language = default_audio_language
@default_subtitle_accessibility = default_subtitle_accessibility
@default_subtitle_forced = default_subtitle_forced
@default_subtitle_language = default_subtitle_language
@media_reviews_visibility = media_reviews_visibility
@watched_indicator = watched_indicator
end

View File

@@ -10,11 +10,11 @@ module PlexRubySDK
'https://plex.tv/api/v2/'
].freeze
# PostUsersSignInDataWatchedIndicator - Whether or not media watched indicators are enabled (little orange dot on media)
class PostUsersSignInDataWatchedIndicator < T::Enum
enums do
ZERO = new('0')
ONE = new('1')
DISABLE = new(0)
ENABLE = new(1)
end
end
end

View File

@@ -0,0 +1,21 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
PROTOCOL_SERVERS = [
'https://plex.tv/api/v2/'
].freeze
# Protocol - The protocol used for the connection (http, https, etc)
class Protocol < T::Enum
enums do
HTTP = new('http')
HTTPS = new('https')
end
end
end
end

View File

@@ -16,10 +16,10 @@ module PlexRubySDK
#
class QueryParamType < T::Enum
enums do
ONE = new(1)
TWO = new(2)
THREE = new(3)
FOUR = new(4)
MOVIE = new(1)
SHOW = new(2)
SEASON = new(3)
EPISODE = new(4)
end
end
end

View File

@@ -16,10 +16,10 @@ module PlexRubySDK
#
class Type < T::Enum
enums do
ONE = new(1)
TWO = new(2)
THREE = new(3)
FOUR = new(4)
MOVIE = new(1)
SHOW = new(2)
SEASON = new(3)
EPISODE = new(4)
end
end
end

View File

@@ -25,12 +25,15 @@ module PlexRubySDK
# The GUID of each playlist is based on the filename.
#
field :path, ::String, { 'query_param': { 'field_name': 'path', 'style': 'form', 'explode': true } }
# Possibly the section ID to upload the playlist to, we are not certain.
field :section_id, ::Integer, { 'query_param': { 'field_name': 'sectionID', 'style': 'form', 'explode': true } }
sig { params(force: ::PlexRubySDK::Operations::QueryParamForce, path: ::String).void }
def initialize(force: nil, path: nil)
sig { params(force: ::PlexRubySDK::Operations::QueryParamForce, path: ::String, section_id: ::Integer).void }
def initialize(force: nil, path: nil, section_id: nil)
@force = force
@path = path
@section_id = section_id
end
end
end

View File

@@ -14,32 +14,32 @@ module PlexRubySDK
class UserProfile < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
# If the account has automatically select audio and subtitle tracks enabled
field :auto_select_audio, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('autoSelectAudio') } }
field :auto_select_subtitle, ::PlexRubySDK::Operations::AutoSelectSubtitle, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('autoSelectSubtitle'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::AutoSelectSubtitle, false) } }
# The preferred audio language for the account
field :default_audio_language, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('defaultAudioLanguage') } }
field :default_subtitle_accessibility, ::PlexRubySDK::Operations::DefaultSubtitleAccessibility, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('defaultSubtitleAccessibility'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::DefaultSubtitleAccessibility, false) } }
field :default_subtitle_forced, ::PlexRubySDK::Operations::DefaultSubtitleForced, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('defaultSubtitleForced'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::DefaultSubtitleForced, false) } }
# The preferred subtitle language for the account
field :default_subtitle_language, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('defaultSubtitleLanguage') } }
# If the account has automatically select audio and subtitle tracks enabled
field :auto_select_audio, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('autoSelectAudio') } }
# The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign audio, 2 = Always enabled)
field :auto_select_subtitle, T.nilable(::PlexRubySDK::Operations::AutoSelectSubtitle), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('autoSelectSubtitle'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::AutoSelectSubtitle, true) } }
# 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)
field :default_subtitle_accessibility, T.nilable(::PlexRubySDK::Operations::DefaultSubtitleAccessibility), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('defaultSubtitleAccessibility'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::DefaultSubtitleAccessibility, true) } }
# 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)
field :default_subtitle_forced, T.nilable(::PlexRubySDK::Operations::DefaultSubtitleForced), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('defaultSubtitleForced'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::DefaultSubtitleForced, true) } }
field :media_reviews_visibility, T.nilable(::PlexRubySDK::Operations::MediaReviewsVisibility), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaReviewsVisibility'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::MediaReviewsVisibility, true) } }
field :media_reviews_visibility, ::PlexRubySDK::Operations::MediaReviewsVisibility, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaReviewsVisibility'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::MediaReviewsVisibility, false) } }
field :watched_indicator, T.nilable(::PlexRubySDK::Operations::WatchedIndicator), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('watchedIndicator'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::WatchedIndicator, true) } }
field :watched_indicator, ::PlexRubySDK::Operations::WatchedIndicator, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('watchedIndicator'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::WatchedIndicator, false) } }
sig { params(default_audio_language: ::String, default_subtitle_language: ::String, auto_select_audio: T.nilable(T::Boolean), auto_select_subtitle: T.nilable(::PlexRubySDK::Operations::AutoSelectSubtitle), default_subtitle_accessibility: T.nilable(::PlexRubySDK::Operations::DefaultSubtitleAccessibility), default_subtitle_forced: T.nilable(::PlexRubySDK::Operations::DefaultSubtitleForced), media_reviews_visibility: T.nilable(::PlexRubySDK::Operations::MediaReviewsVisibility), watched_indicator: T.nilable(::PlexRubySDK::Operations::WatchedIndicator)).void }
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)
@default_audio_language = default_audio_language
@default_subtitle_language = default_subtitle_language
sig { params(auto_select_audio: T::Boolean, auto_select_subtitle: ::PlexRubySDK::Operations::AutoSelectSubtitle, default_audio_language: ::String, default_subtitle_accessibility: ::PlexRubySDK::Operations::DefaultSubtitleAccessibility, default_subtitle_forced: ::PlexRubySDK::Operations::DefaultSubtitleForced, default_subtitle_language: ::String, media_reviews_visibility: ::PlexRubySDK::Operations::MediaReviewsVisibility, watched_indicator: ::PlexRubySDK::Operations::WatchedIndicator).void }
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)
@auto_select_audio = auto_select_audio
@auto_select_subtitle = auto_select_subtitle
@default_audio_language = default_audio_language
@default_subtitle_accessibility = default_subtitle_accessibility
@default_subtitle_forced = default_subtitle_forced
@default_subtitle_language = default_subtitle_language
@media_reviews_visibility = media_reviews_visibility
@watched_indicator = watched_indicator
end

View File

@@ -10,11 +10,11 @@ module PlexRubySDK
'https://plex.tv/api/v2/'
].freeze
# WatchedIndicator - Whether or not media watched indicators are enabled (little orange dot on media)
class WatchedIndicator < T::Enum
enums do
ZERO = new('0')
ONE = new('1')
DISABLE = new(0)
ENABLE = new(1)
end
end
end

View File

@@ -12,7 +12,7 @@ module PlexRubySDK
extend T::Sig
field :access_token, T.nilable(::String), { 'security': { 'scheme': true, 'type': 'apiKey', 'sub_type': 'query', 'field_name': 'X-Plex-Token' } }
field :access_token, T.nilable(::String), { 'security': { 'scheme': true, 'type': 'apiKey', 'sub_type': 'header', 'field_name': 'X-Plex-Token' } }
sig { params(access_token: T.nilable(::String)).void }

View File

@@ -433,15 +433,16 @@ module PlexRubySDK
end
sig { params(path: ::String, force: ::PlexRubySDK::Operations::QueryParamForce).returns(::PlexRubySDK::Operations::UploadPlaylistResponse) }
def upload_playlist(path, force)
sig { params(path: ::String, force: ::PlexRubySDK::Operations::QueryParamForce, section_id: ::Integer).returns(::PlexRubySDK::Operations::UploadPlaylistResponse) }
def upload_playlist(path, force, section_id)
# upload_playlist - Upload Playlist
# Imports m3u playlists by passing a path on the server to scan for m3u-formatted playlist files, or a path to a single playlist file.
#
request = ::PlexRubySDK::Operations::UploadPlaylistRequest.new(
path: path,
force: force
force: force,
section_id: section_id
)
url, params = @sdk_configuration.get_server_details
base_url = Utils.template_url(url, params)

View File

@@ -216,13 +216,12 @@ module PlexRubySDK
end
sig { params(client_id: T.nilable(::String), include_https: T.nilable(::PlexRubySDK::Operations::IncludeHttps), include_relay: T.nilable(::PlexRubySDK::Operations::IncludeRelay), include_i_pv6: T.nilable(::PlexRubySDK::Operations::IncludeIPv6), server_url: T.nilable(String)).returns(::PlexRubySDK::Operations::GetServerResourcesResponse) }
def get_server_resources(client_id = nil, include_https = nil, include_relay = nil, include_i_pv6 = nil, server_url = nil)
sig { params(include_https: T.nilable(::PlexRubySDK::Operations::IncludeHttps), include_relay: T.nilable(::PlexRubySDK::Operations::IncludeRelay), include_i_pv6: T.nilable(::PlexRubySDK::Operations::IncludeIPv6), server_url: T.nilable(String)).returns(::PlexRubySDK::Operations::GetServerResourcesResponse) }
def get_server_resources(include_https = nil, include_relay = nil, include_i_pv6 = nil, server_url = nil)
# get_server_resources - Get Server Resources
# Get Plex server access tokens and server connections
request = ::PlexRubySDK::Operations::GetServerResourcesRequest.new(
client_id: client_id,
include_https: include_https,
include_relay: include_relay,
include_i_pv6: include_i_pv6
@@ -305,14 +304,13 @@ module PlexRubySDK
end
sig { params(pin_id: ::Integer, client_id: T.nilable(::String), server_url: T.nilable(String)).returns(::PlexRubySDK::Operations::GetTokenByPinIdResponse) }
def get_token_by_pin_id(pin_id, client_id = nil, server_url = nil)
sig { params(pin_id: ::Integer, server_url: T.nilable(String)).returns(::PlexRubySDK::Operations::GetTokenByPinIdResponse) }
def get_token_by_pin_id(pin_id, server_url = nil)
# get_token_by_pin_id - Get Access Token by PinId
# Retrieve an Access Token from Plex.tv after the Pin has been authenticated
request = ::PlexRubySDK::Operations::GetTokenByPinIdRequest.new(
pin_id: pin_id,
client_id: client_id
pin_id: pin_id
)
base_url = Utils.template_url(GET_TOKEN_BY_PIN_ID_SERVERS[0], {
})
@@ -325,13 +323,11 @@ module PlexRubySDK
@sdk_configuration.globals
)
headers = {}
query_params = Utils.get_query_params(::PlexRubySDK::Operations::GetTokenByPinIdRequest, request, @sdk_configuration.globals)
headers['Accept'] = 'application/json'
headers['user-agent'] = @sdk_configuration.user_agent
r = @sdk_configuration.client.get(url) do |req|
req.headers = headers
req.params = query_params
end
content_type = r.headers.fetch('Content-Type', 'application/octet-stream')

View File

@@ -42,9 +42,9 @@ module PlexRubySDK
@globals = globals.nil? ? {} : globals
@language = 'ruby'
@openapi_doc_version = '0.0.3'
@sdk_version = '0.3.6'
@gen_version = '2.416.6'
@user_agent = 'speakeasy-sdk/ruby 0.3.6 2.416.6 0.0.3 plex_ruby_sdk'
@sdk_version = '0.4.0'
@gen_version = '2.421.3'
@user_agent = 'speakeasy-sdk/ruby 0.4.0 2.421.3 0.0.3 plex_ruby_sdk'
end
sig { returns([String, T::Hash[Symbol, String]]) }