ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.402.14

This commit is contained in:
speakeasybot
2024-09-26 00:09:16 +00:00
parent 15ebc7eeca
commit 40e6afeb04
209 changed files with 4162 additions and 705 deletions

View File

@@ -162,7 +162,7 @@ module PlexRubySDK
end
sig { params(request: T.nilable(::PlexRubySDK::Operations::PostUsersSignInDataRequestBody), server_url: T.nilable(String)).returns(::PlexRubySDK::Operations::PostUsersSignInDataResponse) }
sig { params(request: T.nilable(::PlexRubySDK::Operations::PostUsersSignInDataRequest), 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
@@ -171,13 +171,15 @@ module PlexRubySDK
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, :form)
req_content_type, data, form = Utils.serialize_request_body(request, :request_body, :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

@@ -68,6 +68,41 @@ module PlexRubySDK
end
sig { params(request: T.nilable(::PlexRubySDK::Operations::GetRecentlyAddedRequest)).returns(::PlexRubySDK::Operations::GetRecentlyAddedResponse) }
def get_recently_added(request)
# get_recently_added - Get Recently Added
# This endpoint will return the recently added content.
#
url, params = @sdk_configuration.get_server_details
base_url = Utils.template_url(url, params)
url = "#{base_url}/hubs/home/recentlyAdded"
headers = {}
query_params = Utils.get_query_params(::PlexRubySDK::Operations::GetRecentlyAddedRequest, 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
Utils.configure_request_security(req, @sdk_configuration.security) if !@sdk_configuration.nil? && !@sdk_configuration.security.nil?
end
content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
res = ::PlexRubySDK::Operations::GetRecentlyAddedResponse.new(
status_code: r.status, content_type: content_type, raw_response: r
)
if r.status == 200
if Utils.match_content_type(content_type, 'application/json')
out = Utils.unmarshal_complex(r.env.response_body, ::PlexRubySDK::Operations::GetRecentlyAddedResponseBody)
res.object = out
end
elsif [400, 401].include?(r.status)
end
res
end
sig { params(section_id: ::Float, count: T.nilable(::Float), only_transient: T.nilable(::PlexRubySDK::Operations::QueryParamOnlyTransient)).returns(::PlexRubySDK::Operations::GetLibraryHubsResponse) }
def get_library_hubs(section_id, count = nil, only_transient = nil)
# get_library_hubs - Get library specific hubs

View File

@@ -64,21 +64,16 @@ module PlexRubySDK
end
sig { params(x_plex_container_start: T.nilable(::Integer), x_plex_container_size: T.nilable(::Integer)).returns(::PlexRubySDK::Operations::GetRecentlyAddedResponse) }
def get_recently_added(x_plex_container_start = nil, x_plex_container_size = nil)
# get_recently_added - Get Recently Added
sig { params(request: T.nilable(::PlexRubySDK::Operations::GetRecentlyAddedLibraryRequest)).returns(::PlexRubySDK::Operations::GetRecentlyAddedLibraryResponse) }
def get_recently_added_library(request)
# get_recently_added_library - Get Recently Added
# This endpoint will return the recently added content.
#
request = ::PlexRubySDK::Operations::GetRecentlyAddedRequest.new(
x_plex_container_start: x_plex_container_start,
x_plex_container_size: x_plex_container_size
)
url, params = @sdk_configuration.get_server_details
base_url = Utils.template_url(url, params)
url = "#{base_url}/library/recentlyAdded"
headers = {}
query_params = Utils.get_query_params(::PlexRubySDK::Operations::GetRecentlyAddedRequest, request, @sdk_configuration.globals)
query_params = Utils.get_query_params(::PlexRubySDK::Operations::GetRecentlyAddedLibraryRequest, request, @sdk_configuration.globals)
headers['Accept'] = 'application/json'
headers['user-agent'] = @sdk_configuration.user_agent
@@ -90,22 +85,22 @@ module PlexRubySDK
content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
res = ::PlexRubySDK::Operations::GetRecentlyAddedResponse.new(
res = ::PlexRubySDK::Operations::GetRecentlyAddedLibraryResponse.new(
status_code: r.status, content_type: content_type, raw_response: r
)
if r.status == 200
if Utils.match_content_type(content_type, 'application/json')
out = Utils.unmarshal_complex(r.env.response_body, ::PlexRubySDK::Operations::GetRecentlyAddedResponseBody)
out = Utils.unmarshal_complex(r.env.response_body, ::PlexRubySDK::Operations::GetRecentlyAddedLibraryResponseBody)
res.object = out
end
elsif r.status == 400
if Utils.match_content_type(content_type, 'application/json')
out = Utils.unmarshal_complex(r.env.response_body, ::PlexRubySDK::Operations::GetRecentlyAddedBadRequest)
out = Utils.unmarshal_complex(r.env.response_body, ::PlexRubySDK::Operations::GetRecentlyAddedLibraryBadRequest)
res.bad_request = out
end
elsif r.status == 401
if Utils.match_content_type(content_type, 'application/json')
out = Utils.unmarshal_complex(r.env.response_body, ::PlexRubySDK::Operations::GetRecentlyAddedUnauthorized)
out = Utils.unmarshal_complex(r.env.response_body, ::PlexRubySDK::Operations::GetRecentlyAddedLibraryUnauthorized)
res.unauthorized = out
end
end
@@ -420,7 +415,7 @@ module PlexRubySDK
end
sig { params(section_key: ::Integer, type: ::PlexRubySDK::Operations::QueryParamType).returns(::PlexRubySDK::Operations::GetSearchLibraryResponse) }
sig { params(section_key: ::Integer, type: ::PlexRubySDK::Operations::GetSearchLibraryQueryParamType).returns(::PlexRubySDK::Operations::GetSearchLibraryResponse) }
def get_search_library(section_key, type)
# get_search_library - Search Library
# Search for content within a specific section of the library.

View File

@@ -231,6 +231,41 @@ module PlexRubySDK
autoload :GetGlobalHubsMediaContainer, 'plex_ruby_sdk/models/operations/getglobalhubs_mediacontainer.rb'
autoload :GetGlobalHubsResponseBody, 'plex_ruby_sdk/models/operations/getglobalhubs_responsebody.rb'
autoload :GetGlobalHubsResponse, 'plex_ruby_sdk/models/operations/getglobalhubs_response.rb'
autoload :Type, 'plex_ruby_sdk/models/operations/type.rb'
autoload :IncludeMeta, 'plex_ruby_sdk/models/operations/includemeta.rb'
autoload :GetRecentlyAddedRequest, 'plex_ruby_sdk/models/operations/get_recently_added_request.rb'
autoload :GetRecentlyAddedFilter, 'plex_ruby_sdk/models/operations/get_recently_added_filter.rb'
autoload :GetRecentlyAddedActiveDirection, 'plex_ruby_sdk/models/operations/get_recently_added_activedirection.rb'
autoload :GetRecentlyAddedDefaultDirection, 'plex_ruby_sdk/models/operations/get_recently_added_defaultdirection.rb'
autoload :GetRecentlyAddedSort, 'plex_ruby_sdk/models/operations/get_recently_added_sort.rb'
autoload :GetRecentlyAddedField, 'plex_ruby_sdk/models/operations/get_recently_added_field.rb'
autoload :GetRecentlyAddedType, 'plex_ruby_sdk/models/operations/get_recently_added_type.rb'
autoload :GetRecentlyAddedOperator, 'plex_ruby_sdk/models/operations/get_recently_added_operator.rb'
autoload :GetRecentlyAddedFieldType, 'plex_ruby_sdk/models/operations/get_recently_added_fieldtype.rb'
autoload :Meta, 'plex_ruby_sdk/models/operations/meta.rb'
autoload :GetRecentlyAddedHubsType, 'plex_ruby_sdk/models/operations/get_recently_added_hubs_type.rb'
autoload :FlattenSeasons, 'plex_ruby_sdk/models/operations/flattenseasons.rb'
autoload :ShowOrdering, 'plex_ruby_sdk/models/operations/showordering.rb'
autoload :OptimizedForStreaming, 'plex_ruby_sdk/models/operations/optimizedforstreaming.rb'
autoload :HasThumbnail, 'plex_ruby_sdk/models/operations/hasthumbnail.rb'
autoload :Stream, 'plex_ruby_sdk/models/operations/stream.rb'
autoload :Part, 'plex_ruby_sdk/models/operations/part.rb'
autoload :Media, 'plex_ruby_sdk/models/operations/media.rb'
autoload :Genre, 'plex_ruby_sdk/models/operations/genre.rb'
autoload :Country, 'plex_ruby_sdk/models/operations/country.rb'
autoload :Director, 'plex_ruby_sdk/models/operations/director.rb'
autoload :Writer, 'plex_ruby_sdk/models/operations/writer.rb'
autoload :Collection, 'plex_ruby_sdk/models/operations/collection.rb'
autoload :Role, 'plex_ruby_sdk/models/operations/role.rb'
autoload :MediaGuid, 'plex_ruby_sdk/models/operations/mediaguid.rb'
autoload :UltraBlurColors, 'plex_ruby_sdk/models/operations/ultrablurcolors.rb'
autoload :MetaDataRating, 'plex_ruby_sdk/models/operations/metadatarating.rb'
autoload :GetRecentlyAddedHubsResponseType, 'plex_ruby_sdk/models/operations/get_recently_added_hubs_response_type.rb'
autoload :GetRecentlyAddedImage, 'plex_ruby_sdk/models/operations/get_recently_added_image.rb'
autoload :GetRecentlyAddedMetadata, 'plex_ruby_sdk/models/operations/get_recently_added_metadata.rb'
autoload :GetRecentlyAddedMediaContainer, 'plex_ruby_sdk/models/operations/get_recently_added_mediacontainer.rb'
autoload :GetRecentlyAddedResponseBody, 'plex_ruby_sdk/models/operations/get_recently_added_responsebody.rb'
autoload :GetRecentlyAddedResponse, 'plex_ruby_sdk/models/operations/get_recently_added_response.rb'
autoload :QueryParamOnlyTransient, 'plex_ruby_sdk/models/operations/queryparam_onlytransient.rb'
autoload :GetLibraryHubsRequest, 'plex_ruby_sdk/models/operations/getlibraryhubs_request.rb'
autoload :GetLibraryHubsHubsErrors, 'plex_ruby_sdk/models/operations/getlibraryhubs_hubs_errors.rb'
@@ -284,22 +319,32 @@ module PlexRubySDK
autoload :GetFileHashErrors, 'plex_ruby_sdk/models/operations/getfilehash_errors.rb'
autoload :GetFileHashBadRequest, 'plex_ruby_sdk/models/operations/getfilehash_badrequest.rb'
autoload :GetFileHashResponse, 'plex_ruby_sdk/models/operations/getfilehash_response.rb'
autoload :GetRecentlyAddedRequest, 'plex_ruby_sdk/models/operations/getrecentlyadded_request.rb'
autoload :GetRecentlyAddedLibraryErrors, 'plex_ruby_sdk/models/operations/getrecentlyadded_library_errors.rb'
autoload :GetRecentlyAddedUnauthorized, 'plex_ruby_sdk/models/operations/getrecentlyadded_unauthorized.rb'
autoload :GetRecentlyAddedErrors, 'plex_ruby_sdk/models/operations/getrecentlyadded_errors.rb'
autoload :GetRecentlyAddedBadRequest, 'plex_ruby_sdk/models/operations/getrecentlyadded_badrequest.rb'
autoload :Part, 'plex_ruby_sdk/models/operations/part.rb'
autoload :Media, 'plex_ruby_sdk/models/operations/media.rb'
autoload :Genre, 'plex_ruby_sdk/models/operations/genre.rb'
autoload :Director, 'plex_ruby_sdk/models/operations/director.rb'
autoload :Writer, 'plex_ruby_sdk/models/operations/writer.rb'
autoload :Country, 'plex_ruby_sdk/models/operations/country.rb'
autoload :Role, 'plex_ruby_sdk/models/operations/role.rb'
autoload :GetRecentlyAddedMetadata, 'plex_ruby_sdk/models/operations/getrecentlyadded_metadata.rb'
autoload :GetRecentlyAddedMediaContainer, 'plex_ruby_sdk/models/operations/getrecentlyadded_mediacontainer.rb'
autoload :GetRecentlyAddedResponseBody, 'plex_ruby_sdk/models/operations/getrecentlyadded_responsebody.rb'
autoload :GetRecentlyAddedResponse, 'plex_ruby_sdk/models/operations/getrecentlyadded_response.rb'
autoload :QueryParamType, 'plex_ruby_sdk/models/operations/queryparam_type.rb'
autoload :QueryParamIncludeMeta, 'plex_ruby_sdk/models/operations/queryparam_includemeta.rb'
autoload :GetRecentlyAddedLibraryRequest, 'plex_ruby_sdk/models/operations/get_recently_added_library_request.rb'
autoload :GetRecentlyAddedLibraryLibraryErrors, 'plex_ruby_sdk/models/operations/get_recently_added_library_library_errors.rb'
autoload :GetRecentlyAddedLibraryUnauthorized, 'plex_ruby_sdk/models/operations/get_recently_added_library_unauthorized.rb'
autoload :GetRecentlyAddedLibraryErrors, 'plex_ruby_sdk/models/operations/get_recently_added_library_errors.rb'
autoload :GetRecentlyAddedLibraryBadRequest, 'plex_ruby_sdk/models/operations/get_recently_added_library_badrequest.rb'
autoload :GetRecentlyAddedLibraryFilter, 'plex_ruby_sdk/models/operations/get_recently_added_library_filter.rb'
autoload :ActiveDirection, 'plex_ruby_sdk/models/operations/activedirection.rb'
autoload :DefaultDirection, 'plex_ruby_sdk/models/operations/defaultdirection.rb'
autoload :Sort, 'plex_ruby_sdk/models/operations/sort.rb'
autoload :Field, 'plex_ruby_sdk/models/operations/field.rb'
autoload :GetRecentlyAddedLibraryType, 'plex_ruby_sdk/models/operations/get_recently_added_library_type.rb'
autoload :Operator, 'plex_ruby_sdk/models/operations/operator.rb'
autoload :FieldType, 'plex_ruby_sdk/models/operations/fieldtype.rb'
autoload :GetRecentlyAddedLibraryPart, 'plex_ruby_sdk/models/operations/get_recently_added_library_part.rb'
autoload :GetRecentlyAddedLibraryMedia, 'plex_ruby_sdk/models/operations/get_recently_added_library_media.rb'
autoload :GetRecentlyAddedLibraryGenre, 'plex_ruby_sdk/models/operations/get_recently_added_library_genre.rb'
autoload :GetRecentlyAddedLibraryDirector, 'plex_ruby_sdk/models/operations/get_recently_added_library_director.rb'
autoload :GetRecentlyAddedLibraryWriter, 'plex_ruby_sdk/models/operations/get_recently_added_library_writer.rb'
autoload :GetRecentlyAddedLibraryCountry, 'plex_ruby_sdk/models/operations/get_recently_added_library_country.rb'
autoload :GetRecentlyAddedLibraryRole, 'plex_ruby_sdk/models/operations/get_recently_added_library_role.rb'
autoload :GetRecentlyAddedLibraryMetadata, 'plex_ruby_sdk/models/operations/get_recently_added_library_metadata.rb'
autoload :GetRecentlyAddedLibraryMediaContainer, 'plex_ruby_sdk/models/operations/get_recently_added_library_mediacontainer.rb'
autoload :GetRecentlyAddedLibraryResponseBody, 'plex_ruby_sdk/models/operations/get_recently_added_library_responsebody.rb'
autoload :GetRecentlyAddedLibraryResponse, 'plex_ruby_sdk/models/operations/get_recently_added_library_response.rb'
autoload :GetAllLibrariesLibraryErrors, 'plex_ruby_sdk/models/operations/get_all_libraries_library_errors.rb'
autoload :GetAllLibrariesUnauthorized, 'plex_ruby_sdk/models/operations/get_all_libraries_unauthorized.rb'
autoload :GetAllLibrariesErrors, 'plex_ruby_sdk/models/operations/get_all_libraries_errors.rb'
@@ -317,11 +362,11 @@ module PlexRubySDK
autoload :GetLibraryDetailsBadRequest, 'plex_ruby_sdk/models/operations/get_library_details_badrequest.rb'
autoload :GetLibraryDetailsDirectory, 'plex_ruby_sdk/models/operations/get_library_details_directory.rb'
autoload :GetLibraryDetailsFilter, 'plex_ruby_sdk/models/operations/get_library_details_filter.rb'
autoload :Sort, 'plex_ruby_sdk/models/operations/sort.rb'
autoload :Field, 'plex_ruby_sdk/models/operations/field.rb'
autoload :GetLibraryDetailsSort, 'plex_ruby_sdk/models/operations/get_library_details_sort.rb'
autoload :GetLibraryDetailsField, 'plex_ruby_sdk/models/operations/get_library_details_field.rb'
autoload :GetLibraryDetailsType, 'plex_ruby_sdk/models/operations/get_library_details_type.rb'
autoload :Operator, 'plex_ruby_sdk/models/operations/operator.rb'
autoload :FieldType, 'plex_ruby_sdk/models/operations/fieldtype.rb'
autoload :GetLibraryDetailsOperator, 'plex_ruby_sdk/models/operations/get_library_details_operator.rb'
autoload :GetLibraryDetailsFieldType, 'plex_ruby_sdk/models/operations/get_library_details_fieldtype.rb'
autoload :GetLibraryDetailsMediaContainer, 'plex_ruby_sdk/models/operations/get_library_details_mediacontainer.rb'
autoload :GetLibraryDetailsResponseBody, 'plex_ruby_sdk/models/operations/get_library_details_responsebody.rb'
autoload :GetLibraryDetailsResponse, 'plex_ruby_sdk/models/operations/get_library_details_response.rb'
@@ -333,39 +378,50 @@ module PlexRubySDK
autoload :DeleteLibraryResponse, 'plex_ruby_sdk/models/operations/deletelibrary_response.rb'
autoload :Tag, 'plex_ruby_sdk/models/operations/tag.rb'
autoload :IncludeGuids, 'plex_ruby_sdk/models/operations/includeguids.rb'
autoload :IncludeMeta, 'plex_ruby_sdk/models/operations/includemeta.rb'
autoload :Type, 'plex_ruby_sdk/models/operations/type.rb'
autoload :GetLibraryItemsQueryParamType, 'plex_ruby_sdk/models/operations/get_library_items_queryparam_type.rb'
autoload :GetLibraryItemsQueryParamIncludeMeta, 'plex_ruby_sdk/models/operations/get_library_items_queryparam_includemeta.rb'
autoload :GetLibraryItemsRequest, 'plex_ruby_sdk/models/operations/get_library_items_request.rb'
autoload :GetLibraryItemsLibraryErrors, 'plex_ruby_sdk/models/operations/get_library_items_library_errors.rb'
autoload :GetLibraryItemsUnauthorized, 'plex_ruby_sdk/models/operations/get_library_items_unauthorized.rb'
autoload :GetLibraryItemsErrors, 'plex_ruby_sdk/models/operations/get_library_items_errors.rb'
autoload :GetLibraryItemsBadRequest, 'plex_ruby_sdk/models/operations/get_library_items_badrequest.rb'
autoload :GetLibraryItemsFilter, 'plex_ruby_sdk/models/operations/get_library_items_filter.rb'
autoload :GetLibraryItemsActiveDirection, 'plex_ruby_sdk/models/operations/get_library_items_activedirection.rb'
autoload :GetLibraryItemsDefaultDirection, 'plex_ruby_sdk/models/operations/get_library_items_defaultdirection.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 :FlattenSeasons, 'plex_ruby_sdk/models/operations/flattenseasons.rb'
autoload :ShowOrdering, 'plex_ruby_sdk/models/operations/showordering.rb'
autoload :HasThumbnail, 'plex_ruby_sdk/models/operations/hasthumbnail.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 :GetLibraryItemsLibraryType, 'plex_ruby_sdk/models/operations/get_library_items_library_type.rb'
autoload :GetLibraryItemsFlattenSeasons, 'plex_ruby_sdk/models/operations/get_library_items_flattenseasons.rb'
autoload :GetLibraryItemsShowOrdering, 'plex_ruby_sdk/models/operations/get_library_items_showordering.rb'
autoload :GetLibraryItemsOptimizedForStreaming, 'plex_ruby_sdk/models/operations/get_library_items_optimizedforstreaming.rb'
autoload :GetLibraryItemsHasThumbnail, 'plex_ruby_sdk/models/operations/get_library_items_hasthumbnail.rb'
autoload :GetLibraryItemsStream, 'plex_ruby_sdk/models/operations/get_library_items_stream.rb'
autoload :GetLibraryItemsPart, 'plex_ruby_sdk/models/operations/get_library_items_part.rb'
autoload :GetLibraryItemsMedia, 'plex_ruby_sdk/models/operations/get_library_items_media.rb'
autoload :GetLibraryItemsGenre, 'plex_ruby_sdk/models/operations/get_library_items_genre.rb'
autoload :GetLibraryItemsCountry, 'plex_ruby_sdk/models/operations/get_library_items_country.rb'
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 :Collection, 'plex_ruby_sdk/models/operations/collection.rb'
autoload :GetLibraryItemsCollection, 'plex_ruby_sdk/models/operations/get_library_items_collection.rb'
autoload :GetLibraryItemsRole, 'plex_ruby_sdk/models/operations/get_library_items_role.rb'
autoload :MediaGuid, 'plex_ruby_sdk/models/operations/mediaguid.rb'
autoload :UltraBlurColors, 'plex_ruby_sdk/models/operations/ultrablurcolors.rb'
autoload :GetLibraryItemsLibraryResponseType, 'plex_ruby_sdk/models/operations/get_library_items_library_response_type.rb'
autoload :GetLibraryItemsMediaGuid, 'plex_ruby_sdk/models/operations/get_library_items_mediaguid.rb'
autoload :GetLibraryItemsUltraBlurColors, 'plex_ruby_sdk/models/operations/get_library_items_ultrablurcolors.rb'
autoload :GetLibraryItemsMetaDataRating, 'plex_ruby_sdk/models/operations/get_library_items_metadatarating.rb'
autoload :GetLibraryItemsLibraryResponse200Type, 'plex_ruby_sdk/models/operations/get_library_items_library_response_200_type.rb'
autoload :GetLibraryItemsImage, 'plex_ruby_sdk/models/operations/get_library_items_image.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 :ActiveDirection, 'plex_ruby_sdk/models/operations/activedirection.rb'
autoload :DefaultDirection, 'plex_ruby_sdk/models/operations/defaultdirection.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 :GetLibraryItemsLibraryType, 'plex_ruby_sdk/models/operations/get_library_items_library_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 :GetLibraryItemsLibraryFilter, 'plex_ruby_sdk/models/operations/get_library_items_library_filter.rb'
autoload :GetLibraryItemsLibraryActiveDirection, 'plex_ruby_sdk/models/operations/get_library_items_library_activedirection.rb'
autoload :GetLibraryItemsLibraryDefaultDirection, 'plex_ruby_sdk/models/operations/get_library_items_library_defaultdirection.rb'
autoload :GetLibraryItemsLibrarySort, 'plex_ruby_sdk/models/operations/get_library_items_library_sort.rb'
autoload :GetLibraryItemsLibraryField, 'plex_ruby_sdk/models/operations/get_library_items_library_field.rb'
autoload :GetLibraryItemsLibraryResponseType, 'plex_ruby_sdk/models/operations/get_library_items_library_response_type.rb'
autoload :GetLibraryItemsLibraryOperator, 'plex_ruby_sdk/models/operations/get_library_items_library_operator.rb'
autoload :GetLibraryItemsLibraryFieldType, 'plex_ruby_sdk/models/operations/get_library_items_library_fieldtype.rb'
autoload :GetLibraryItemsMeta, 'plex_ruby_sdk/models/operations/get_library_items_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'
@@ -376,7 +432,7 @@ module PlexRubySDK
autoload :GetRefreshLibraryMetadataErrors, 'plex_ruby_sdk/models/operations/get_refresh_library_metadata_errors.rb'
autoload :GetRefreshLibraryMetadataBadRequest, 'plex_ruby_sdk/models/operations/get_refresh_library_metadata_badrequest.rb'
autoload :GetRefreshLibraryMetadataResponse, 'plex_ruby_sdk/models/operations/get_refresh_library_metadata_response.rb'
autoload :QueryParamType, 'plex_ruby_sdk/models/operations/queryparam_type.rb'
autoload :GetSearchLibraryQueryParamType, 'plex_ruby_sdk/models/operations/get_search_library_queryparam_type.rb'
autoload :GetSearchLibraryRequest, 'plex_ruby_sdk/models/operations/get_search_library_request.rb'
autoload :GetSearchLibraryLibraryErrors, 'plex_ruby_sdk/models/operations/get_search_library_library_errors.rb'
autoload :GetSearchLibraryUnauthorized, 'plex_ruby_sdk/models/operations/get_search_library_unauthorized.rb'
@@ -391,7 +447,7 @@ module PlexRubySDK
autoload :GetMetaDataByRatingKeyUnauthorized, 'plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_unauthorized.rb'
autoload :GetMetaDataByRatingKeyErrors, 'plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_errors.rb'
autoload :GetMetaDataByRatingKeyBadRequest, 'plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_badrequest.rb'
autoload :Stream, 'plex_ruby_sdk/models/operations/stream.rb'
autoload :GetMetaDataByRatingKeyStream, 'plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_stream.rb'
autoload :GetMetaDataByRatingKeyPart, 'plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_part.rb'
autoload :GetMetaDataByRatingKeyMedia, 'plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_media.rb'
autoload :GetMetaDataByRatingKeyGenre, 'plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_genre.rb'
@@ -591,6 +647,7 @@ 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

@@ -12,21 +12,21 @@ module PlexRubySDK
extend T::Sig
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 :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') } }
field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
field :type, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
sig { params(key: T.nilable(::String), sub_type: T.nilable(::String), title: T.nilable(::String), type: T.nilable(::String)).void }
def initialize(key: nil, sub_type: nil, title: nil, type: nil)
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
@sub_type = sub_type
@title = title
@type = type
@sub_type = sub_type
end
end
end

View File

@@ -12,12 +12,12 @@ module PlexRubySDK
extend T::Sig
field :operator, T.nilable(T::Array[::PlexRubySDK::Operations::Operator]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Operator') } }
field :operator, T::Array[::PlexRubySDK::Operations::Operator], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Operator') } }
field :type, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
field :type, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
sig { params(operator: T.nilable(T::Array[::PlexRubySDK::Operations::Operator]), type: T.nilable(::String)).void }
sig { params(operator: T::Array[::PlexRubySDK::Operations::Operator], type: ::String).void }
def initialize(operator: nil, type: nil)
@operator = operator
@type = type

View File

@@ -21,7 +21,7 @@ module PlexRubySDK
field :composite, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('composite') } }
field :content, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('content') } }
# Unix epoch datetime in seconds
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') } }

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 GetLibraryDetailsField < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
field :key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
field :sub_type, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('subType') } }
field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
field :type, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
sig { params(key: T.nilable(::String), sub_type: T.nilable(::String), title: T.nilable(::String), type: T.nilable(::String)).void }
def initialize(key: nil, sub_type: nil, title: nil, type: nil)
@key = key
@sub_type = sub_type
@title = title
@type = 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 GetLibraryDetailsFieldType < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
field :operator, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryDetailsOperator]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Operator') } }
field :type, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
sig { params(operator: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryDetailsOperator]), type: T.nilable(::String)).void }
def initialize(operator: nil, type: nil)
@operator = operator
@type = type
end
end
end
end

View File

@@ -20,7 +20,7 @@ module PlexRubySDK
field :directory, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryDetailsDirectory]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Directory') } }
field :field_type, T.nilable(T::Array[::PlexRubySDK::Operations::FieldType]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('FieldType') } }
field :field_type, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryDetailsFieldType]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('FieldType') } }
field :identifier, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('identifier') } }
@@ -43,7 +43,7 @@ module PlexRubySDK
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), content: T.nilable(::String), directory: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryDetailsDirectory]), field_type: T.nilable(T::Array[::PlexRubySDK::Operations::FieldType]), identifier: T.nilable(::String), library_section_id: T.nilable(::Integer), media_tag_prefix: T.nilable(::String), media_tag_version: T.nilable(::Integer), size: T.nilable(::Integer), thumb: T.nilable(::String), title1: T.nilable(::String), type: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryDetailsType]), view_group: T.nilable(::String), view_mode: T.nilable(::Integer)).void }
sig { params(allow_sync: T.nilable(T::Boolean), art: T.nilable(::String), content: T.nilable(::String), directory: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryDetailsDirectory]), field_type: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryDetailsFieldType]), identifier: T.nilable(::String), library_section_id: T.nilable(::Integer), media_tag_prefix: T.nilable(::String), media_tag_version: T.nilable(::Integer), size: T.nilable(::Integer), thumb: T.nilable(::String), title1: T.nilable(::String), type: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryDetailsType]), view_group: T.nilable(::String), view_mode: T.nilable(::Integer)).void }
def initialize(allow_sync: nil, art: nil, content: nil, directory: nil, field_type: nil, identifier: nil, library_section_id: nil, media_tag_prefix: nil, media_tag_version: nil, size: nil, thumb: nil, title1: nil, type: nil, view_group: nil, view_mode: nil)
@allow_sync = allow_sync
@art = art

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 GetLibraryDetailsOperator < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
field :key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
sig { params(key: T.nilable(::String), title: T.nilable(::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 GetLibraryDetailsSort < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
field :default, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('default') } }
field :default_direction, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('defaultDirection') } }
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') } }
field :key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
sig { params(default: T.nilable(::String), default_direction: T.nilable(::String), desc_key: T.nilable(::String), first_character_key: T.nilable(::String), key: T.nilable(::String), title: T.nilable(::String)).void }
def initialize(default: nil, default_direction: nil, desc_key: nil, first_character_key: nil, key: nil, title: nil)
@default = default
@default_direction = default_direction
@desc_key = desc_key
@first_character_key = first_character_key
@key = key
@title = title
end
end
end
end

View File

@@ -14,20 +14,20 @@ module PlexRubySDK
field :active, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('active') } }
field :field, T.nilable(T::Array[::PlexRubySDK::Operations::Field]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Field') } }
field :field, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryDetailsField]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Field') } }
field :filter, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryDetailsFilter]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Filter') } }
field :key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
field :sort, T.nilable(T::Array[::PlexRubySDK::Operations::Sort]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Sort') } }
field :sort, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryDetailsSort]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Sort') } }
field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
field :type, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
sig { params(active: T.nilable(T::Boolean), field: T.nilable(T::Array[::PlexRubySDK::Operations::Field]), filter: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryDetailsFilter]), key: T.nilable(::String), sort: T.nilable(T::Array[::PlexRubySDK::Operations::Sort]), title: T.nilable(::String), type: T.nilable(::String)).void }
sig { params(active: T.nilable(T::Boolean), field: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryDetailsField]), filter: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryDetailsFilter]), key: T.nilable(::String), sort: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryDetailsSort]), title: T.nilable(::String), type: T.nilable(::String)).void }
def initialize(active: nil, field: nil, filter: nil, key: nil, sort: nil, title: nil, type: nil)
@active = active
@field = field

View File

@@ -0,0 +1,19 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
# GetLibraryItemsActiveDirection - The direction of the sort. Can be either `asc` or `desc`.
#
class GetLibraryItemsActiveDirection < T::Enum
enums do
ASCENDING = new('asc')
DESCENDING = new('desc')
end
end
end
end

View File

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

View File

@@ -0,0 +1,19 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
# GetLibraryItemsDefaultDirection - The direction of the sort. Can be either `asc` or `desc`.
#
class GetLibraryItemsDefaultDirection < T::Enum
enums do
ASCENDING = new('asc')
DESCENDING = new('desc')
end
end
end
end

View File

@@ -0,0 +1,18 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetLibraryItemsFlattenSeasons < T::Enum
enums do
FALSE = new('0')
TRUE = new('1')
end
end
end
end

View File

@@ -0,0 +1,18 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetLibraryItemsHasThumbnail < T::Enum
enums do
FALSE = new('0')
TRUE = new('1')
end
end
end
end

View File

@@ -14,12 +14,12 @@ module PlexRubySDK
field :alt, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('alt') } }
field :type, ::PlexRubySDK::Operations::GetLibraryItemsLibraryResponseType, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::GetLibraryItemsLibraryResponseType, false) } }
field :type, ::PlexRubySDK::Operations::GetLibraryItemsLibraryResponse200Type, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::GetLibraryItemsLibraryResponse200Type, false) } }
field :url, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('url') } }
sig { params(alt: ::String, type: ::PlexRubySDK::Operations::GetLibraryItemsLibraryResponseType, url: ::String).void }
sig { params(alt: ::String, type: ::PlexRubySDK::Operations::GetLibraryItemsLibraryResponse200Type, url: ::String).void }
def initialize(alt: nil, type: nil, url: nil)
@alt = alt
@type = type

View File

@@ -0,0 +1,19 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
# GetLibraryItemsLibraryActiveDirection - The direction of the sort. Can be either `asc` or `desc`.
#
class GetLibraryItemsLibraryActiveDirection < T::Enum
enums do
ASCENDING = new('asc')
DESCENDING = new('desc')
end
end
end
end

View File

@@ -0,0 +1,19 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
# GetLibraryItemsLibraryDefaultDirection - The direction of the sort. Can be either `asc` or `desc`.
#
class GetLibraryItemsLibraryDefaultDirection < T::Enum
enums do
ASCENDING = new('asc')
DESCENDING = new('desc')
end
end
end
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 GetLibraryItemsLibraryField < ::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 GetLibraryItemsLibraryFieldType < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
field :operator, T::Array[::PlexRubySDK::Operations::GetLibraryItemsLibraryOperator], { '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::GetLibraryItemsLibraryOperator], 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 GetLibraryItemsLibraryFilter < ::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

@@ -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 GetLibraryItemsLibraryOperator < ::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,20 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetLibraryItemsLibraryResponse200Type < T::Enum
enums do
COVER_POSTER = new('coverPoster')
BACKGROUND = new('background')
SNAPSHOT = new('snapshot')
CLEAR_LOGO = new('clearLogo')
end
end
end
end

View File

@@ -8,12 +8,34 @@ module PlexRubySDK
module Operations
class GetLibraryItemsLibraryResponseType < T::Enum
enums do
COVER_POSTER = new('coverPoster')
BACKGROUND = new('background')
SNAPSHOT = new('snapshot')
CLEAR_LOGO = new('clearLogo')
class GetLibraryItemsLibraryResponseType < ::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::GetLibraryItemsLibraryField]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Field') } }
field :filter, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsLibraryFilter]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Filter') } }
field :sort, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsLibrarySort]), { '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::GetLibraryItemsLibraryField]), filter: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsLibraryFilter]), sort: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsLibrarySort])).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

View File

@@ -0,0 +1,47 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetLibraryItemsLibrarySort < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
# The direction of the sort. Can be either `asc` or `desc`.
#
field :default_direction, ::PlexRubySDK::Operations::GetLibraryItemsLibraryDefaultDirection, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('defaultDirection'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::GetLibraryItemsLibraryDefaultDirection, false) } }
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 :active, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('active') } }
# The direction of the sort. Can be either `asc` or `desc`.
#
field :active_direction, T.nilable(::PlexRubySDK::Operations::GetLibraryItemsLibraryActiveDirection), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('activeDirection'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::GetLibraryItemsLibraryActiveDirection, true) } }
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: ::PlexRubySDK::Operations::GetLibraryItemsLibraryDefaultDirection, key: ::String, title: ::String, active: T.nilable(T::Boolean), active_direction: T.nilable(::PlexRubySDK::Operations::GetLibraryItemsLibraryActiveDirection), 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, active: nil, active_direction: nil, default: nil, desc_key: nil, first_character_key: nil)
@default_direction = default_direction
@key = key
@title = title
@active = active
@active_direction = active_direction
@default = default
@desc_key = desc_key
@first_character_key = first_character_key
end
end
end
end

View File

@@ -7,35 +7,14 @@
module PlexRubySDK
module Operations
class GetLibraryItemsLibraryType < ::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
# GetLibraryItemsLibraryType - The type of media content
#
class GetLibraryItemsLibraryType < T::Enum
enums do
MOVIE = new('movie')
TV_SHOW = new('show')
SEASON = new('season')
EPISODE = new('episode')
end
end
end

View File

@@ -42,11 +42,15 @@ module PlexRubySDK
field :audio_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioProfile') } }
field :has64bit_offsets, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('has64bitOffsets') } }
field :has_voice_activity, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasVoiceActivity') } }
field :optimized_for_streaming, T.nilable(::PlexRubySDK::Operations::GetLibraryItemsOptimizedForStreaming), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::GetLibraryItemsOptimizedForStreaming, true) } }
sig { params(aspect_ratio: ::Float, audio_channels: ::Integer, audio_codec: ::String, bitrate: ::Integer, container: ::String, duration: ::Integer, height: ::Integer, id: ::Integer, part: T::Array[::PlexRubySDK::Operations::GetLibraryItemsPart], video_codec: ::String, video_frame_rate: ::String, video_profile: ::String, video_resolution: ::String, width: ::Integer, audio_profile: T.nilable(::String), has_voice_activity: T.nilable(T::Boolean)).void }
def initialize(aspect_ratio: nil, audio_channels: nil, audio_codec: nil, bitrate: nil, container: nil, duration: nil, height: nil, id: nil, part: nil, video_codec: nil, video_frame_rate: nil, video_profile: nil, video_resolution: nil, width: nil, audio_profile: nil, has_voice_activity: nil)
sig { params(aspect_ratio: ::Float, audio_channels: ::Integer, audio_codec: ::String, bitrate: ::Integer, container: ::String, duration: ::Integer, height: ::Integer, id: ::Integer, part: T::Array[::PlexRubySDK::Operations::GetLibraryItemsPart], video_codec: ::String, video_frame_rate: ::String, video_profile: ::String, video_resolution: ::String, width: ::Integer, audio_profile: T.nilable(::String), has64bit_offsets: T.nilable(T::Boolean), has_voice_activity: T.nilable(T::Boolean), optimized_for_streaming: T.nilable(::PlexRubySDK::Operations::GetLibraryItemsOptimizedForStreaming)).void }
def initialize(aspect_ratio: nil, audio_channels: nil, audio_codec: nil, bitrate: nil, container: nil, duration: nil, height: nil, id: nil, part: nil, video_codec: nil, video_frame_rate: nil, video_profile: nil, video_resolution: nil, width: nil, audio_profile: nil, has64bit_offsets: nil, has_voice_activity: nil, optimized_for_streaming: nil)
@aspect_ratio = aspect_ratio
@audio_channels = audio_channels
@audio_codec = audio_codec
@@ -62,7 +66,9 @@ module PlexRubySDK
@video_resolution = video_resolution
@width = width
@audio_profile = audio_profile
@has64bit_offsets = has64bit_offsets
@has_voice_activity = has_voice_activity
@optimized_for_streaming = optimized_for_streaming
end
end
end

View File

@@ -7,7 +7,8 @@
module PlexRubySDK
module Operations
# The Meta object is only included in the response if the `includeMeta` parameter is set to `1`.
#
class GetLibraryItemsMediaContainer < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
@@ -20,7 +21,7 @@ module PlexRubySDK
field :identifier, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('identifier') } }
field :library_section_id, ::Object, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionID') } }
field :library_section_id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionID') } }
field :library_section_title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionTitle') } }
@@ -45,19 +46,23 @@ module PlexRubySDK
field :total_size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('totalSize') } }
field :view_group, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewGroup') } }
field :field_type, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsFieldType]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('FieldType') } }
# 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 :meta, T.nilable(::PlexRubySDK::Operations::GetLibraryItemsMeta), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Meta') } }
field :mixed_parents, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mixedParents') } }
field :nocache, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('nocache') } }
field :type, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsType]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Type') } }
field :view_mode, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewMode') } }
sig { params(allow_sync: T::Boolean, art: ::String, content: ::String, identifier: ::String, library_section_id: ::Object, library_section_title: ::String, library_section_uuid: ::String, media_tag_prefix: ::String, media_tag_version: ::Integer, metadata: T::Array[::PlexRubySDK::Operations::GetLibraryItemsMetadata], offset: ::Integer, size: ::Integer, thumb: ::String, title1: ::String, title2: ::String, total_size: ::Integer, view_group: ::String, meta: T.nilable(::PlexRubySDK::Operations::Meta), mixed_parents: T.nilable(T::Boolean), nocache: T.nilable(T::Boolean), view_mode: T.nilable(::Integer)).void }
def initialize(allow_sync: nil, art: nil, content: 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, offset: nil, size: nil, thumb: nil, title1: nil, title2: nil, total_size: nil, view_group: nil, meta: nil, mixed_parents: nil, nocache: nil, view_mode: nil)
sig { params(allow_sync: T::Boolean, art: ::String, content: ::String, identifier: ::String, library_section_id: ::Integer, library_section_title: ::String, library_section_uuid: ::String, media_tag_prefix: ::String, media_tag_version: ::Integer, metadata: T::Array[::PlexRubySDK::Operations::GetLibraryItemsMetadata], offset: ::Integer, size: ::Integer, thumb: ::String, title1: ::String, title2: ::String, total_size: ::Integer, view_group: ::String, field_type: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsFieldType]), meta: T.nilable(::PlexRubySDK::Operations::GetLibraryItemsMeta), mixed_parents: T.nilable(T::Boolean), nocache: T.nilable(T::Boolean), type: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsType]), view_mode: T.nilable(::Integer)).void }
def initialize(allow_sync: nil, art: nil, content: 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, offset: nil, size: nil, thumb: nil, title1: nil, title2: nil, total_size: nil, view_group: nil, field_type: nil, meta: nil, mixed_parents: nil, nocache: nil, type: nil, view_mode: nil)
@allow_sync = allow_sync
@art = art
@content = content
@@ -75,9 +80,11 @@ module PlexRubySDK
@title2 = title2
@total_size = total_size
@view_group = view_group
@field_type = field_type
@meta = meta
@mixed_parents = mixed_parents
@nocache = nocache
@type = type
@view_mode = view_mode
end
end

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 GetLibraryItemsMediaGuid < ::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

@@ -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 GetLibraryItemsMeta < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
field :field_type, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsLibraryFieldType]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('FieldType') } }
field :type, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsLibraryResponseType]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Type') } }
sig { params(field_type: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsLibraryFieldType]), type: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsLibraryResponseType])).void }
def initialize(field_type: nil, type: nil)
@field_type = field_type
@type = type
end
end
end
end

View File

@@ -27,7 +27,7 @@ module PlexRubySDK
field :title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
# The type of media content
#
field :type, ::PlexRubySDK::Operations::GetLibraryItemsType, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::GetLibraryItemsType, false) } }
field :type, ::PlexRubySDK::Operations::GetLibraryItemsLibraryType, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::GetLibraryItemsLibraryType, false) } }
field :art, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('art') } }
@@ -41,7 +41,7 @@ module PlexRubySDK
field :child_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('childCount') } }
field :collection, T.nilable(T::Array[::PlexRubySDK::Operations::Collection]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Collection') } }
field :collection, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsCollection]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Collection') } }
field :content_rating, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('contentRating') } }
@@ -51,7 +51,7 @@ module PlexRubySDK
field :duration, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
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) } }
field :flatten_seasons, T.nilable(::PlexRubySDK::Operations::GetLibraryItemsFlattenSeasons), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('flattenSeasons'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::GetLibraryItemsFlattenSeasons, true) } }
field :genre, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsGenre]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Genre') } }
@@ -82,12 +82,20 @@ module PlexRubySDK
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 :library_section_id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionID') } }
field :library_section_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionKey') } }
field :library_section_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionTitle') } }
# The Media object is only included when type query is `4` or higher.
#
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 :media_guid, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsMediaGuid]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Guid') } }
field :meta_data_rating, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsMetaDataRating]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Rating') } }
field :originally_available_at, T.nilable(::Date), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originallyAvailableAt'), 'decoder': Utils.date_from_iso_format(true) } }
@@ -102,6 +110,8 @@ module PlexRubySDK
#
field :parent_rating_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentRatingKey') } }
field :parent_slug, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentSlug') } }
field :parent_studio, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentStudio') } }
field :parent_theme, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentTheme') } }
@@ -128,7 +138,7 @@ module PlexRubySDK
# dvd = TheTVDB (DVD),
# absolute = TheTVDB (Absolute)).
#
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) } }
field :show_ordering, T.nilable(::PlexRubySDK::Operations::GetLibraryItemsShowOrdering), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('showOrdering'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::GetLibraryItemsShowOrdering, true) } }
field :skip_children, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('skipChildren') } }
@@ -146,7 +156,7 @@ module PlexRubySDK
field :title_sort, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('titleSort') } }
field :ultra_blur_colors, T.nilable(::PlexRubySDK::Operations::UltraBlurColors), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('UltraBlurColors') } }
field :ultra_blur_colors, T.nilable(::PlexRubySDK::Operations::GetLibraryItemsUltraBlurColors), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('UltraBlurColors') } }
# Unix epoch datetime in seconds
field :updated_at, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('updatedAt') } }
@@ -161,8 +171,8 @@ module PlexRubySDK
field :year, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('year') } }
sig { params(added_at: ::Integer, guid: ::String, key: ::String, rating_key: ::String, summary: ::String, title: ::String, type: ::PlexRubySDK::Operations::GetLibraryItemsType, 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::GetLibraryItemsCountry]), director: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsDirector]), duration: T.nilable(::Integer), flatten_seasons: T.nilable(::PlexRubySDK::Operations::FlattenSeasons), 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_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::GetLibraryItemsImage]), index: T.nilable(::Integer), last_viewed_at: T.nilable(::Integer), leaf_count: T.nilable(::Integer), media: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsMedia]), 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]), 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::GetLibraryItemsWriter]), year: T.nilable(::Integer)).void }
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, media: 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, 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)
sig { params(added_at: ::Integer, guid: ::String, key: ::String, rating_key: ::String, summary: ::String, title: ::String, type: ::PlexRubySDK::Operations::GetLibraryItemsLibraryType, 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::GetLibraryItemsCollection]), 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), flatten_seasons: T.nilable(::PlexRubySDK::Operations::GetLibraryItemsFlattenSeasons), 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_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::GetLibraryItemsImage]), 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::GetLibraryItemsMedia]), media_guid: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsMediaGuid]), meta_data_rating: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsMetaDataRating]), 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::GetLibraryItemsRole]), season_count: T.nilable(::Integer), show_ordering: T.nilable(::PlexRubySDK::Operations::GetLibraryItemsShowOrdering), 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::GetLibraryItemsUltraBlurColors), 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, 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)
@added_at = added_at
@guid = guid
@key = key
@@ -197,14 +207,19 @@ module PlexRubySDK
@index = index
@last_viewed_at = last_viewed_at
@leaf_count = leaf_count
@library_section_id = library_section_id
@library_section_key = library_section_key
@library_section_title = library_section_title
@media = media
@media_guid = media_guid
@meta_data_rating = meta_data_rating
@originally_available_at = originally_available_at
@original_title = original_title
@parent_guid = parent_guid
@parent_index = parent_index
@parent_key = parent_key
@parent_rating_key = parent_rating_key
@parent_slug = parent_slug
@parent_studio = parent_studio
@parent_theme = parent_theme
@parent_thumb = parent_thumb

View File

@@ -0,0 +1,30 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetLibraryItemsMetaDataRating < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
# A URI or path to the rating image.
field :image, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('image') } }
# The type of rating (e.g., audience, critic).
field :type, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
# The value of the rating.
field :value, ::Float, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('value') } }
sig { params(image: ::String, type: ::String, value: ::Float).void }
def initialize(image: nil, type: nil, value: nil)
@image = image
@type = type
@value = value
end
end
end
end

View File

@@ -0,0 +1,18 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetLibraryItemsOptimizedForStreaming < T::Enum
enums do
DISABLE = new(0)
ENABLE = new(1)
end
end
end
end

View File

@@ -29,13 +29,19 @@ module PlexRubySDK
field :audio_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioProfile') } }
field :has_thumbnail, T.nilable(::PlexRubySDK::Operations::HasThumbnail), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasThumbnail'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::HasThumbnail, true) } }
field :has64bit_offsets, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('has64bitOffsets') } }
field :has_thumbnail, T.nilable(::PlexRubySDK::Operations::GetLibraryItemsHasThumbnail), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasThumbnail'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::GetLibraryItemsHasThumbnail, true) } }
field :indexes, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('indexes') } }
field :optimized_for_streaming, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming') } }
sig { params(container: ::String, duration: ::Integer, file: ::String, id: ::Integer, key: ::String, size: ::Integer, video_profile: ::String, audio_profile: T.nilable(::String), has_thumbnail: T.nilable(::PlexRubySDK::Operations::HasThumbnail), indexes: T.nilable(::String)).void }
def initialize(container: nil, duration: nil, file: nil, id: nil, key: nil, size: nil, video_profile: nil, audio_profile: nil, has_thumbnail: nil, indexes: nil)
field :stream, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsStream]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Stream') } }
sig { params(container: ::String, duration: ::Integer, file: ::String, id: ::Integer, key: ::String, size: ::Integer, video_profile: ::String, audio_profile: T.nilable(::String), has64bit_offsets: T.nilable(T::Boolean), has_thumbnail: T.nilable(::PlexRubySDK::Operations::GetLibraryItemsHasThumbnail), indexes: T.nilable(::String), optimized_for_streaming: T.nilable(T::Boolean), stream: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsStream])).void }
def initialize(container: nil, duration: nil, file: nil, id: nil, key: nil, size: nil, video_profile: nil, audio_profile: nil, has64bit_offsets: nil, has_thumbnail: nil, indexes: nil, optimized_for_streaming: nil, stream: nil)
@container = container
@duration = duration
@file = file
@@ -44,8 +50,11 @@ module PlexRubySDK
@size = size
@video_profile = video_profile
@audio_profile = audio_profile
@has64bit_offsets = has64bit_offsets
@has_thumbnail = has_thumbnail
@indexes = indexes
@optimized_for_streaming = optimized_for_streaming
@stream = stream
end
end
end

View File

@@ -0,0 +1,19 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
# GetLibraryItemsQueryParamIncludeMeta - Adds the Meta object to the response
#
class GetLibraryItemsQueryParamIncludeMeta < T::Enum
enums do
DISABLE = new(0)
ENABLE = new(1)
end
end
end
end

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
# GetLibraryItemsQueryParamType - The type of media to retrieve.
# 1 = movie
# 2 = show
# 3 = season
# 4 = episode
# E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
#
class GetLibraryItemsQueryParamType < T::Enum
enums do
MOVIE = new(1)
TV_SHOW = new(2)
SEASON = new(3)
EPISODE = new(4)
end
end
end
end

View File

@@ -22,7 +22,7 @@ module PlexRubySDK
field :include_guids, T.nilable(::PlexRubySDK::Operations::IncludeGuids), { 'query_param': { 'field_name': 'includeGuids', 'style': 'form', 'explode': true } }
# Adds the Meta object to the response
#
field :include_meta, T.nilable(::PlexRubySDK::Operations::IncludeMeta), { 'query_param': { 'field_name': 'includeMeta', 'style': 'form', 'explode': true } }
field :include_meta, T.nilable(::PlexRubySDK::Operations::GetLibraryItemsQueryParamIncludeMeta), { 'query_param': { 'field_name': 'includeMeta', 'style': 'form', 'explode': true } }
# The type of media to retrieve.
# 1 = movie
# 2 = show
@@ -30,7 +30,7 @@ module PlexRubySDK
# 4 = episode
# E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
#
field :type, T.nilable(::PlexRubySDK::Operations::Type), { 'query_param': { 'field_name': 'type', 'style': 'form', 'explode': true } }
field :type, T.nilable(::PlexRubySDK::Operations::GetLibraryItemsQueryParamType), { 'query_param': { 'field_name': 'type', 'style': 'form', 'explode': true } }
# The number of items to return. If not specified, all items will be returned.
# If the number of items exceeds the limit, the response will be paginated.
# By default this is 50
@@ -43,7 +43,7 @@ module PlexRubySDK
field :x_plex_container_start, T.nilable(::Integer), { 'query_param': { 'field_name': 'X-Plex-Container-Start', 'style': 'form', 'explode': true } }
sig { params(section_key: ::Integer, tag: ::PlexRubySDK::Operations::Tag, include_guids: T.nilable(::PlexRubySDK::Operations::IncludeGuids), include_meta: T.nilable(::PlexRubySDK::Operations::IncludeMeta), type: T.nilable(::PlexRubySDK::Operations::Type), x_plex_container_size: T.nilable(::Integer), x_plex_container_start: T.nilable(::Integer)).void }
sig { params(section_key: ::Integer, tag: ::PlexRubySDK::Operations::Tag, include_guids: T.nilable(::PlexRubySDK::Operations::IncludeGuids), include_meta: T.nilable(::PlexRubySDK::Operations::GetLibraryItemsQueryParamIncludeMeta), type: T.nilable(::PlexRubySDK::Operations::GetLibraryItemsQueryParamType), x_plex_container_size: T.nilable(::Integer), x_plex_container_start: T.nilable(::Integer)).void }
def initialize(section_key: nil, tag: nil, include_guids: nil, include_meta: nil, type: nil, x_plex_container_size: nil, x_plex_container_start: nil)
@section_key = section_key
@tag = tag

View File

@@ -11,13 +11,28 @@ module PlexRubySDK
class GetLibraryItemsRole < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
# The filter used to find the actor or tag.
field :filter, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
# The ID of the tag or actor.
field :id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
# The role of the actor or tag in the media.
field :role, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('role') } }
# The name of the tag or actor.
field :tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
# Unique identifier for the tag.
field :tag_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } }
# The thumbnail of the actor
field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
sig { params(tag: T.nilable(::String)).void }
def initialize(tag: nil)
sig { params(filter: T.nilable(::String), id: T.nilable(::Integer), role: T.nilable(::String), tag: T.nilable(::String), tag_key: T.nilable(::String), thumb: T.nilable(::String)).void }
def initialize(filter: nil, id: nil, role: nil, tag: nil, tag_key: nil, thumb: nil)
@filter = filter
@id = id
@role = role
@tag = tag
@tag_key = tag_key
@thumb = thumb
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
# GetLibraryItemsShowOrdering - Setting that indicates the episode ordering for the show
# None = Library default,
# tmdbAiring = The Movie Database (Aired),
# aired = TheTVDB (Aired),
# dvd = TheTVDB (DVD),
# absolute = TheTVDB (Absolute)).
#
class GetLibraryItemsShowOrdering < T::Enum
enums do
NONE = new('None')
TMDB_AIRING = new('tmdbAiring')
AIRED = new('aired')
DVD = new('dvd')
ABSOLUTE = new('absolute')
end
end
end
end

View File

@@ -13,7 +13,7 @@ module PlexRubySDK
# The direction of the sort. Can be either `asc` or `desc`.
#
field :default_direction, ::PlexRubySDK::Operations::DefaultDirection, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('defaultDirection'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::DefaultDirection, false) } }
field :default_direction, ::PlexRubySDK::Operations::GetLibraryItemsDefaultDirection, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('defaultDirection'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::GetLibraryItemsDefaultDirection, false) } }
field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
@@ -22,7 +22,7 @@ module PlexRubySDK
field :active, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('active') } }
# The direction of the sort. Can be either `asc` or `desc`.
#
field :active_direction, T.nilable(::PlexRubySDK::Operations::ActiveDirection), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('activeDirection'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::ActiveDirection, true) } }
field :active_direction, T.nilable(::PlexRubySDK::Operations::GetLibraryItemsActiveDirection), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('activeDirection'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::GetLibraryItemsActiveDirection, true) } }
field :default, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('default') } }
@@ -31,7 +31,7 @@ module PlexRubySDK
field :first_character_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('firstCharacterKey') } }
sig { params(default_direction: ::PlexRubySDK::Operations::DefaultDirection, key: ::String, title: ::String, active: T.nilable(T::Boolean), active_direction: T.nilable(::PlexRubySDK::Operations::ActiveDirection), default: T.nilable(::String), desc_key: T.nilable(::String), first_character_key: T.nilable(::String)).void }
sig { params(default_direction: ::PlexRubySDK::Operations::GetLibraryItemsDefaultDirection, key: ::String, title: ::String, active: T.nilable(T::Boolean), active_direction: T.nilable(::PlexRubySDK::Operations::GetLibraryItemsActiveDirection), 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, active: nil, active_direction: nil, default: nil, desc_key: nil, first_character_key: nil)
@default_direction = default_direction
@key = key

View File

@@ -0,0 +1,135 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetLibraryItemsStream < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
# Codec used by the stream
field :codec, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('codec') } }
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
# The index of the stream
field :index, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
# Type of stream (1 = video, 2 = audio, 3 = subtitle)
field :stream_type, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('streamType') } }
# The audio channel layout
field :audio_channel_layout, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioChannelLayout') } }
# The bit depth of the video stream
field :bit_depth, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bitDepth') } }
# The bitrate of the stream in kbps
field :bitrate, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bitrate') } }
# Indicates if the subtitle stream can auto-sync
field :can_auto_sync, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('canAutoSync') } }
# Number of audio channels (for audio streams)
field :channels, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('channels') } }
# The chroma location of the video stream
field :chroma_location, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chromaLocation') } }
# The chroma subsampling format
field :chroma_subsampling, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chromaSubsampling') } }
field :closed_captions, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('closedCaptions') } }
# The coded height of the video stream
field :coded_height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('codedHeight') } }
# The coded width of the video stream
field :coded_width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('codedWidth') } }
# The color primaries of the video stream
field :color_primaries, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('colorPrimaries') } }
# The color range of the video stream
field :color_range, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('colorRange') } }
# The color space of the video stream
field :color_space, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('colorSpace') } }
# The transfer characteristics (TRC) of the video stream
field :color_trc, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('colorTrc') } }
# Indicates if this is the default stream
field :default, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('default') } }
# Display title of the stream
field :display_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('displayTitle') } }
field :embedded_in_video, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('embeddedInVideo') } }
# Extended display title of the stream
field :extended_display_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('extendedDisplayTitle') } }
# The frame rate of the video stream
field :frame_rate, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('frameRate') } }
# Indicates if the stream has a scaling matrix
field :has_scaling_matrix, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasScalingMatrix') } }
field :hearing_impaired, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hearingImpaired') } }
# The height of the video stream
field :height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
# The language of the stream (for audio/subtitle streams)
field :language, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('language') } }
# Language code of the stream
field :language_code, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('languageCode') } }
# Language tag of the stream
field :language_tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('languageTag') } }
# The level of the video codec
field :level, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('level') } }
# The profile of the video codec
field :profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('profile') } }
# Number of reference frames
field :ref_frames, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('refFrames') } }
# Sampling rate of the audio stream in Hz
field :sampling_rate, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('samplingRate') } }
# The scan type (progressive or interlaced)
field :scan_type, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('scanType') } }
# Indicates if the stream is selected
field :selected, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('selected') } }
# The identifier of the video stream
field :stream_identifier, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('streamIdentifier') } }
# Title of the subtitle track (for subtitle streams)
field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
# The width of the video stream
field :width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
sig { params(codec: ::String, id: ::Integer, index: ::Integer, stream_type: ::Integer, audio_channel_layout: T.nilable(::String), bit_depth: T.nilable(::Integer), bitrate: T.nilable(::Integer), can_auto_sync: T.nilable(T::Boolean), channels: T.nilable(::Integer), chroma_location: T.nilable(::String), chroma_subsampling: T.nilable(::String), closed_captions: T.nilable(T::Boolean), coded_height: T.nilable(::Integer), coded_width: T.nilable(::Integer), color_primaries: T.nilable(::String), color_range: T.nilable(::String), color_space: T.nilable(::String), color_trc: T.nilable(::String), default: T.nilable(T::Boolean), display_title: T.nilable(::String), embedded_in_video: T.nilable(::String), extended_display_title: T.nilable(::String), frame_rate: T.nilable(::Float), has_scaling_matrix: T.nilable(T::Boolean), hearing_impaired: T.nilable(T::Boolean), height: T.nilable(::Integer), language: T.nilable(::String), language_code: T.nilable(::String), language_tag: T.nilable(::String), level: T.nilable(::Integer), profile: T.nilable(::String), ref_frames: T.nilable(::Integer), sampling_rate: T.nilable(::Integer), scan_type: T.nilable(::String), selected: T.nilable(T::Boolean), stream_identifier: T.nilable(::String), title: T.nilable(::String), width: T.nilable(::Integer)).void }
def initialize(codec: nil, id: nil, index: nil, stream_type: nil, audio_channel_layout: nil, bit_depth: nil, bitrate: nil, can_auto_sync: nil, channels: nil, chroma_location: nil, chroma_subsampling: nil, closed_captions: nil, coded_height: nil, coded_width: nil, color_primaries: nil, color_range: nil, color_space: nil, color_trc: nil, default: nil, display_title: nil, embedded_in_video: nil, extended_display_title: nil, frame_rate: nil, has_scaling_matrix: nil, hearing_impaired: nil, height: nil, language: nil, language_code: nil, language_tag: nil, level: nil, profile: nil, ref_frames: nil, sampling_rate: nil, scan_type: nil, selected: nil, stream_identifier: nil, title: nil, width: nil)
@codec = codec
@id = id
@index = index
@stream_type = stream_type
@audio_channel_layout = audio_channel_layout
@bit_depth = bit_depth
@bitrate = bitrate
@can_auto_sync = can_auto_sync
@channels = channels
@chroma_location = chroma_location
@chroma_subsampling = chroma_subsampling
@closed_captions = closed_captions
@coded_height = coded_height
@coded_width = coded_width
@color_primaries = color_primaries
@color_range = color_range
@color_space = color_space
@color_trc = color_trc
@default = default
@display_title = display_title
@embedded_in_video = embedded_in_video
@extended_display_title = extended_display_title
@frame_rate = frame_rate
@has_scaling_matrix = has_scaling_matrix
@hearing_impaired = hearing_impaired
@height = height
@language = language
@language_code = language_code
@language_tag = language_tag
@level = level
@profile = profile
@ref_frames = ref_frames
@sampling_rate = sampling_rate
@scan_type = scan_type
@selected = selected
@stream_identifier = stream_identifier
@title = title
@width = width
end
end
end
end

View File

@@ -7,14 +7,35 @@
module PlexRubySDK
module Operations
# GetLibraryItemsType - The type of media content
#
class GetLibraryItemsType < T::Enum
enums do
MOVIE = new('movie')
TV_SHOW = new('show')
SEASON = new('season')
EPISODE = new('episode')
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

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 GetLibraryItemsUltraBlurColors < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
field :bottom_left, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bottomLeft') } }
field :bottom_right, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bottomRight') } }
field :top_left, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('topLeft') } }
field :top_right, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('topRight') } }
sig { params(bottom_left: ::String, bottom_right: ::String, top_left: ::String, top_right: ::String).void }
def initialize(bottom_left: nil, bottom_right: nil, top_left: nil, top_right: nil)
@bottom_left = bottom_left
@bottom_right = bottom_right
@top_left = top_left
@top_right = top_right
end
end
end
end

View File

@@ -30,12 +30,12 @@ module PlexRubySDK
field :size, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
field :stream, T.nilable(T::Array[::PlexRubySDK::Operations::Stream]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Stream') } }
field :stream, T.nilable(T::Array[::PlexRubySDK::Operations::GetMetaDataByRatingKeyStream]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Stream') } }
field :video_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } }
sig { params(audio_profile: T.nilable(::String), container: T.nilable(::String), duration: T.nilable(::Integer), file: T.nilable(::String), has64bit_offsets: T.nilable(T::Boolean), id: T.nilable(::Integer), key: T.nilable(::String), optimized_for_streaming: T.nilable(T::Boolean), size: T.nilable(::Integer), stream: T.nilable(T::Array[::PlexRubySDK::Operations::Stream]), video_profile: T.nilable(::String)).void }
sig { params(audio_profile: T.nilable(::String), container: T.nilable(::String), duration: T.nilable(::Integer), file: T.nilable(::String), has64bit_offsets: T.nilable(T::Boolean), id: T.nilable(::Integer), key: T.nilable(::String), optimized_for_streaming: T.nilable(T::Boolean), size: T.nilable(::Integer), stream: T.nilable(T::Array[::PlexRubySDK::Operations::GetMetaDataByRatingKeyStream]), video_profile: T.nilable(::String)).void }
def initialize(audio_profile: nil, container: nil, duration: nil, file: nil, has64bit_offsets: nil, id: nil, key: nil, optimized_for_streaming: nil, size: nil, stream: nil, video_profile: nil)
@audio_profile = audio_profile
@container = container

View File

@@ -0,0 +1,117 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetMetaDataByRatingKeyStream < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
field :bit_depth, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bitDepth') } }
field :bitrate, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bitrate') } }
field :channels, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('channels') } }
field :chroma_location, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chromaLocation') } }
field :chroma_subsampling, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chromaSubsampling') } }
field :codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('codec') } }
field :coded_height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('codedHeight') } }
field :coded_width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('codedWidth') } }
field :color_primaries, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('colorPrimaries') } }
field :color_range, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('colorRange') } }
field :color_space, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('colorSpace') } }
field :color_trc, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('colorTrc') } }
field :default, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('default') } }
field :display_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('displayTitle') } }
field :extended_display_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('extendedDisplayTitle') } }
field :frame_rate, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('frameRate') } }
field :has_scaling_matrix, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasScalingMatrix') } }
field :height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
field :id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
field :index, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
field :language, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('language') } }
field :language_code, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('languageCode') } }
field :language_tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('languageTag') } }
field :level, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('level') } }
field :profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('profile') } }
field :ref_frames, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('refFrames') } }
field :sampling_rate, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('samplingRate') } }
field :scan_type, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('scanType') } }
field :selected, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('selected') } }
field :stream_identifier, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('streamIdentifier') } }
field :stream_type, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('streamType') } }
field :width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
sig { params(bit_depth: T.nilable(::Integer), bitrate: T.nilable(::Integer), channels: T.nilable(::Integer), chroma_location: T.nilable(::String), chroma_subsampling: T.nilable(::String), codec: T.nilable(::String), coded_height: T.nilable(::Integer), coded_width: T.nilable(::Integer), color_primaries: T.nilable(::String), color_range: T.nilable(::String), color_space: T.nilable(::String), color_trc: T.nilable(::String), default: T.nilable(T::Boolean), display_title: T.nilable(::String), extended_display_title: T.nilable(::String), frame_rate: T.nilable(::Integer), has_scaling_matrix: T.nilable(T::Boolean), height: T.nilable(::Integer), id: T.nilable(::Integer), index: T.nilable(::Integer), language: T.nilable(::String), language_code: T.nilable(::String), language_tag: T.nilable(::String), level: T.nilable(::Integer), profile: T.nilable(::String), ref_frames: T.nilable(::Integer), sampling_rate: T.nilable(::Integer), scan_type: T.nilable(::String), selected: T.nilable(T::Boolean), stream_identifier: T.nilable(::String), stream_type: T.nilable(::Integer), width: T.nilable(::Integer)).void }
def initialize(bit_depth: nil, bitrate: nil, channels: nil, chroma_location: nil, chroma_subsampling: nil, codec: nil, coded_height: nil, coded_width: nil, color_primaries: nil, color_range: nil, color_space: nil, color_trc: nil, default: nil, display_title: nil, extended_display_title: nil, frame_rate: nil, has_scaling_matrix: nil, height: nil, id: nil, index: nil, language: nil, language_code: nil, language_tag: nil, level: nil, profile: nil, ref_frames: nil, sampling_rate: nil, scan_type: nil, selected: nil, stream_identifier: nil, stream_type: nil, width: nil)
@bit_depth = bit_depth
@bitrate = bitrate
@channels = channels
@chroma_location = chroma_location
@chroma_subsampling = chroma_subsampling
@codec = codec
@coded_height = coded_height
@coded_width = coded_width
@color_primaries = color_primaries
@color_range = color_range
@color_space = color_space
@color_trc = color_trc
@default = default
@display_title = display_title
@extended_display_title = extended_display_title
@frame_rate = frame_rate
@has_scaling_matrix = has_scaling_matrix
@height = height
@id = id
@index = index
@language = language
@language_code = language_code
@language_tag = language_tag
@level = level
@profile = profile
@ref_frames = ref_frames
@sampling_rate = sampling_rate
@scan_type = scan_type
@selected = selected
@stream_identifier = stream_identifier
@stream_type = stream_type
@width = width
end
end
end
end

View File

@@ -0,0 +1,19 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
# GetRecentlyAddedActiveDirection - The direction of the sort. Can be either `asc` or `desc`.
#
class GetRecentlyAddedActiveDirection < T::Enum
enums do
ASCENDING = new('asc')
DESCENDING = new('desc')
end
end
end
end

View File

@@ -0,0 +1,19 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
# GetRecentlyAddedDefaultDirection - The direction of the sort. Can be either `asc` or `desc`.
#
class GetRecentlyAddedDefaultDirection < T::Enum
enums do
ASCENDING = new('asc')
DESCENDING = new('desc')
end
end
end
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 GetRecentlyAddedField < ::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 GetRecentlyAddedFieldType < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
field :operator, T::Array[::PlexRubySDK::Operations::GetRecentlyAddedOperator], { '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::GetRecentlyAddedOperator], 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 GetRecentlyAddedFilter < ::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

@@ -0,0 +1,20 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetRecentlyAddedHubsResponseType < T::Enum
enums do
COVER_POSTER = new('coverPoster')
BACKGROUND = new('background')
SNAPSHOT = new('snapshot')
CLEAR_LOGO = new('clearLogo')
end
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
# GetRecentlyAddedHubsType - The type of media content
#
class GetRecentlyAddedHubsType < T::Enum
enums do
MOVIE = new('movie')
TV_SHOW = new('show')
SEASON = new('season')
EPISODE = new('episode')
end
end
end
end

View File

@@ -0,0 +1,30 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetRecentlyAddedImage < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
field :alt, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('alt') } }
field :type, ::PlexRubySDK::Operations::GetRecentlyAddedHubsResponseType, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::GetRecentlyAddedHubsResponseType, false) } }
field :url, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('url') } }
sig { params(alt: ::String, type: ::PlexRubySDK::Operations::GetRecentlyAddedHubsResponseType, url: ::String).void }
def initialize(alt: nil, type: nil, url: nil)
@alt = alt
@type = type
@url = url
end
end
end
end

View File

@@ -7,8 +7,8 @@
module PlexRubySDK
module Operations
# Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
class GetRecentlyAddedUnauthorized < ::PlexRubySDK::Utils::FieldAugmented
# Bad Request - A parameter was not specified, or was specified incorrectly.
class GetRecentlyAddedLibraryBadRequest < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig

View File

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

View File

@@ -0,0 +1,24 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetRecentlyAddedLibraryDirector < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
field :tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
sig { params(tag: T.nilable(::String)).void }
def initialize(tag: nil)
@tag = tag
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 GetRecentlyAddedLibraryFilter < ::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

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

View File

@@ -8,7 +8,7 @@ module PlexRubySDK
module Operations
class GetRecentlyAddedErrors < ::PlexRubySDK::Utils::FieldAugmented
class GetRecentlyAddedLibraryLibraryErrors < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig

View File

@@ -0,0 +1,69 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetRecentlyAddedLibraryMedia < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
field :aspect_ratio, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('aspectRatio') } }
field :audio_channels, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioChannels') } }
field :audio_codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioCodec') } }
field :bitrate, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bitrate') } }
field :container, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('container') } }
field :duration, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
field :has64bit_offsets, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('has64bitOffsets') } }
field :height, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
field :id, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
field :optimized_for_streaming, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming') } }
field :part, T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedLibraryPart]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Part') } }
field :video_codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoCodec') } }
field :video_frame_rate, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoFrameRate') } }
field :video_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } }
field :video_resolution, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoResolution') } }
field :width, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
sig { params(aspect_ratio: T.nilable(::Float), audio_channels: T.nilable(::Float), audio_codec: T.nilable(::String), bitrate: T.nilable(::Float), container: T.nilable(::String), duration: T.nilable(::Float), has64bit_offsets: T.nilable(T::Boolean), height: T.nilable(::Float), id: T.nilable(::Float), optimized_for_streaming: T.nilable(::Float), part: T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedLibraryPart]), video_codec: T.nilable(::String), video_frame_rate: T.nilable(::String), video_profile: T.nilable(::String), video_resolution: T.nilable(::Float), width: T.nilable(::Float)).void }
def initialize(aspect_ratio: nil, audio_channels: nil, audio_codec: nil, bitrate: nil, container: nil, duration: nil, has64bit_offsets: nil, height: nil, id: nil, optimized_for_streaming: nil, part: nil, video_codec: nil, video_frame_rate: nil, video_profile: nil, video_resolution: nil, width: nil)
@aspect_ratio = aspect_ratio
@audio_channels = audio_channels
@audio_codec = audio_codec
@bitrate = bitrate
@container = container
@duration = duration
@has64bit_offsets = has64bit_offsets
@height = height
@id = id
@optimized_for_streaming = optimized_for_streaming
@part = part
@video_codec = video_codec
@video_frame_rate = video_frame_rate
@video_profile = video_profile
@video_resolution = video_resolution
@width = width
end
end
end
end

View File

@@ -0,0 +1,49 @@
# 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 GetRecentlyAddedLibraryMediaContainer < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
field :allow_sync, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('allowSync') } }
field :field_type, T.nilable(T::Array[::PlexRubySDK::Operations::FieldType]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('FieldType') } }
field :identifier, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('identifier') } }
field :media_tag_prefix, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagPrefix') } }
field :media_tag_version, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagVersion') } }
field :metadata, T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedLibraryMetadata]), { '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(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
field :type, T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedLibraryType]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Type') } }
sig { params(allow_sync: T.nilable(T::Boolean), field_type: T.nilable(T::Array[::PlexRubySDK::Operations::FieldType]), identifier: T.nilable(::String), media_tag_prefix: T.nilable(::String), media_tag_version: T.nilable(::Float), metadata: T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedLibraryMetadata]), mixed_parents: T.nilable(T::Boolean), size: T.nilable(::Float), type: T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedLibraryType])).void }
def initialize(allow_sync: nil, field_type: nil, identifier: nil, media_tag_prefix: nil, media_tag_version: nil, metadata: nil, mixed_parents: nil, size: nil, type: nil)
@allow_sync = allow_sync
@field_type = field_type
@identifier = identifier
@media_tag_prefix = media_tag_prefix
@media_tag_version = media_tag_version
@metadata = metadata
@mixed_parents = mixed_parents
@size = size
@type = type
end
end
end
end

View File

@@ -8,7 +8,7 @@ module PlexRubySDK
module Operations
class GetRecentlyAddedMetadata < ::PlexRubySDK::Utils::FieldAugmented
class GetRecentlyAddedLibraryMetadata < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
@@ -26,13 +26,13 @@ module PlexRubySDK
field :content_rating, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('contentRating') } }
field :country, T.nilable(T::Array[::PlexRubySDK::Operations::Country]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Country') } }
field :country, T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedLibraryCountry]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Country') } }
field :director, T.nilable(T::Array[::PlexRubySDK::Operations::Director]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Director') } }
field :director, T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedLibraryDirector]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Director') } }
field :duration, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
field :genre, T.nilable(T::Array[::PlexRubySDK::Operations::Genre]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Genre') } }
field :genre, T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedLibraryGenre]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Genre') } }
field :guid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('guid') } }
@@ -44,7 +44,7 @@ module PlexRubySDK
field :library_section_uuid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionUUID') } }
field :media, T.nilable(T::Array[::PlexRubySDK::Operations::Media]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Media') } }
field :media, T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedLibraryMedia]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Media') } }
field :originally_available_at, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originallyAvailableAt'), 'decoder': Utils.datetime_from_iso_format(true) } }
@@ -56,7 +56,7 @@ module PlexRubySDK
field :rating_key, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('ratingKey') } }
field :role, T.nilable(T::Array[::PlexRubySDK::Operations::Role]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Role') } }
field :role, T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedLibraryRole]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Role') } }
field :studio, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('studio') } }
@@ -72,12 +72,12 @@ module PlexRubySDK
field :updated_at, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('updatedAt') } }
field :writer, T.nilable(T::Array[::PlexRubySDK::Operations::Writer]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Writer') } }
field :writer, T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedLibraryWriter]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Writer') } }
field :year, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('year') } }
sig { params(added_at: T.nilable(::Float), allow_sync: T.nilable(T::Boolean), art: T.nilable(::String), audience_rating: T.nilable(::Float), audience_rating_image: T.nilable(::String), chapter_source: T.nilable(::String), content_rating: T.nilable(::String), country: T.nilable(T::Array[::PlexRubySDK::Operations::Country]), director: T.nilable(T::Array[::PlexRubySDK::Operations::Director]), duration: T.nilable(::Float), genre: T.nilable(T::Array[::PlexRubySDK::Operations::Genre]), guid: T.nilable(::String), key: T.nilable(::String), library_section_id: T.nilable(::Float), library_section_title: T.nilable(::String), library_section_uuid: T.nilable(::String), media: T.nilable(T::Array[::PlexRubySDK::Operations::Media]), originally_available_at: T.nilable(::DateTime), primary_extra_key: T.nilable(::String), rating: T.nilable(::Float), rating_image: T.nilable(::String), rating_key: T.nilable(::Float), role: T.nilable(T::Array[::PlexRubySDK::Operations::Role]), studio: T.nilable(::String), summary: T.nilable(::String), tagline: T.nilable(::String), thumb: T.nilable(::String), title: T.nilable(::String), type: T.nilable(::String), updated_at: T.nilable(::Float), writer: T.nilable(T::Array[::PlexRubySDK::Operations::Writer]), year: T.nilable(::Float)).void }
sig { params(added_at: T.nilable(::Float), allow_sync: T.nilable(T::Boolean), art: T.nilable(::String), audience_rating: T.nilable(::Float), audience_rating_image: T.nilable(::String), chapter_source: T.nilable(::String), content_rating: T.nilable(::String), country: T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedLibraryCountry]), director: T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedLibraryDirector]), duration: T.nilable(::Float), genre: T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedLibraryGenre]), guid: T.nilable(::String), key: T.nilable(::String), library_section_id: T.nilable(::Float), library_section_title: T.nilable(::String), library_section_uuid: T.nilable(::String), media: T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedLibraryMedia]), originally_available_at: T.nilable(::DateTime), primary_extra_key: T.nilable(::String), rating: T.nilable(::Float), rating_image: T.nilable(::String), rating_key: T.nilable(::Float), role: T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedLibraryRole]), studio: T.nilable(::String), summary: T.nilable(::String), tagline: T.nilable(::String), thumb: T.nilable(::String), title: T.nilable(::String), type: T.nilable(::String), updated_at: T.nilable(::Float), writer: T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedLibraryWriter]), year: T.nilable(::Float)).void }
def initialize(added_at: nil, allow_sync: nil, art: nil, audience_rating: nil, audience_rating_image: nil, chapter_source: nil, content_rating: nil, country: nil, director: nil, duration: nil, genre: nil, guid: nil, key: nil, library_section_id: nil, library_section_title: nil, library_section_uuid: nil, media: nil, originally_available_at: nil, primary_extra_key: nil, rating: nil, rating_image: nil, rating_key: nil, role: nil, studio: nil, summary: nil, tagline: nil, thumb: nil, title: nil, type: nil, updated_at: nil, writer: nil, year: nil)
@added_at = added_at
@allow_sync = allow_sync

View File

@@ -0,0 +1,51 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetRecentlyAddedLibraryPart < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
field :container, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('container') } }
field :duration, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
field :file, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('file') } }
field :has64bit_offsets, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('has64bitOffsets') } }
field :has_thumbnail, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasThumbnail') } }
field :id, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
field :key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
field :optimized_for_streaming, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming') } }
field :size, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
field :video_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } }
sig { params(container: T.nilable(::String), duration: T.nilable(::Float), file: T.nilable(::String), has64bit_offsets: T.nilable(T::Boolean), has_thumbnail: T.nilable(::Float), id: T.nilable(::Float), key: T.nilable(::String), optimized_for_streaming: T.nilable(T::Boolean), size: T.nilable(::Float), video_profile: T.nilable(::String)).void }
def initialize(container: nil, duration: nil, file: nil, has64bit_offsets: nil, has_thumbnail: nil, id: nil, key: nil, optimized_for_streaming: nil, size: nil, video_profile: nil)
@container = container
@duration = duration
@file = file
@has64bit_offsets = has64bit_offsets
@has_thumbnail = has_thumbnail
@id = id
@key = key
@optimized_for_streaming = optimized_for_streaming
@size = size
@video_profile = video_profile
end
end
end
end

View File

@@ -0,0 +1,55 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetRecentlyAddedLibraryRequest < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
# The type of media to retrieve.
# 1 = movie
# 2 = show
# 3 = season
# 4 = episode
# E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
#
field :type, ::PlexRubySDK::Operations::QueryParamType, { 'query_param': { 'field_name': 'type', 'style': 'form', 'explode': true } }
field :content_directory_id, T.nilable(::Integer), { 'query_param': { 'field_name': 'contentDirectoryID', 'style': 'form', 'explode': true } }
# Adds the Meta object to the response
#
field :include_meta, T.nilable(::PlexRubySDK::Operations::QueryParamIncludeMeta), { 'query_param': { 'field_name': 'includeMeta', 'style': 'form', 'explode': true } }
field :pinned_content_directory_id, T.nilable(T::Array[::Integer]), { 'query_param': { 'field_name': 'pinnedContentDirectoryID', 'style': 'form', 'explode': true } }
# The library section ID for filtering content.
field :section_id, T.nilable(::Integer), { 'query_param': { 'field_name': 'sectionID', 'style': 'form', 'explode': true } }
# The number of items to return. If not specified, all items will be returned.
# If the number of items exceeds the limit, the response will be paginated.
# By default this is 50
#
field :x_plex_container_size, T.nilable(::Integer), { 'query_param': { 'field_name': 'X-Plex-Container-Size', 'style': 'form', 'explode': true } }
# The index of the first item to return. If not specified, the first item will be returned.
# If the number of items exceeds the limit, the response will be paginated.
# By default this is 0
#
field :x_plex_container_start, T.nilable(::Integer), { 'query_param': { 'field_name': 'X-Plex-Container-Start', 'style': 'form', 'explode': true } }
sig { params(type: ::PlexRubySDK::Operations::QueryParamType, content_directory_id: T.nilable(::Integer), include_meta: T.nilable(::PlexRubySDK::Operations::QueryParamIncludeMeta), pinned_content_directory_id: T.nilable(T::Array[::Integer]), section_id: T.nilable(::Integer), x_plex_container_size: T.nilable(::Integer), x_plex_container_start: T.nilable(::Integer)).void }
def initialize(type: nil, content_directory_id: nil, include_meta: nil, pinned_content_directory_id: nil, section_id: nil, x_plex_container_size: nil, x_plex_container_start: nil)
@type = type
@content_directory_id = content_directory_id
@include_meta = include_meta
@pinned_content_directory_id = pinned_content_directory_id
@section_id = section_id
@x_plex_container_size = x_plex_container_size
@x_plex_container_start = x_plex_container_start
end
end
end
end

View File

@@ -8,7 +8,7 @@ module PlexRubySDK
module Operations
class GetRecentlyAddedResponse < ::PlexRubySDK::Utils::FieldAugmented
class GetRecentlyAddedLibraryResponse < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
# HTTP response content type for this operation
@@ -18,14 +18,14 @@ module PlexRubySDK
# HTTP response status code for this operation
field :status_code, ::Integer
# Bad Request - A parameter was not specified, or was specified incorrectly.
field :bad_request, T.nilable(::PlexRubySDK::Operations::GetRecentlyAddedBadRequest)
field :bad_request, T.nilable(::PlexRubySDK::Operations::GetRecentlyAddedLibraryBadRequest)
# The recently added content
field :object, T.nilable(::PlexRubySDK::Operations::GetRecentlyAddedResponseBody)
field :object, T.nilable(::PlexRubySDK::Operations::GetRecentlyAddedLibraryResponseBody)
# Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
field :unauthorized, T.nilable(::PlexRubySDK::Operations::GetRecentlyAddedUnauthorized)
field :unauthorized, T.nilable(::PlexRubySDK::Operations::GetRecentlyAddedLibraryUnauthorized)
sig { params(content_type: ::String, raw_response: ::Faraday::Response, status_code: ::Integer, bad_request: T.nilable(::PlexRubySDK::Operations::GetRecentlyAddedBadRequest), object: T.nilable(::PlexRubySDK::Operations::GetRecentlyAddedResponseBody), unauthorized: T.nilable(::PlexRubySDK::Operations::GetRecentlyAddedUnauthorized)).void }
sig { params(content_type: ::String, raw_response: ::Faraday::Response, status_code: ::Integer, bad_request: T.nilable(::PlexRubySDK::Operations::GetRecentlyAddedLibraryBadRequest), object: T.nilable(::PlexRubySDK::Operations::GetRecentlyAddedLibraryResponseBody), unauthorized: T.nilable(::PlexRubySDK::Operations::GetRecentlyAddedLibraryUnauthorized)).void }
def initialize(content_type: nil, raw_response: nil, status_code: nil, bad_request: nil, object: nil, unauthorized: nil)
@content_type = content_type
@raw_response = raw_response

View File

@@ -0,0 +1,24 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
# The recently added content
class GetRecentlyAddedLibraryResponseBody < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
field :media_container, T.nilable(::PlexRubySDK::Operations::GetRecentlyAddedLibraryMediaContainer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('MediaContainer') } }
sig { params(media_container: T.nilable(::PlexRubySDK::Operations::GetRecentlyAddedLibraryMediaContainer)).void }
def initialize(media_container: nil)
@media_container = media_container
end
end
end
end

View File

@@ -0,0 +1,24 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetRecentlyAddedLibraryRole < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
field :tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
sig { params(tag: T.nilable(::String)).void }
def initialize(tag: nil)
@tag = tag
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 GetRecentlyAddedLibraryType < ::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::Field]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Field') } }
field :filter, T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedLibraryFilter]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Filter') } }
field :sort, T.nilable(T::Array[::PlexRubySDK::Operations::Sort]), { '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::Field]), filter: T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedLibraryFilter]), sort: T.nilable(T::Array[::PlexRubySDK::Operations::Sort])).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

@@ -7,15 +7,15 @@
module PlexRubySDK
module Operations
# Bad Request - A parameter was not specified, or was specified incorrectly.
class GetRecentlyAddedBadRequest < ::PlexRubySDK::Utils::FieldAugmented
# Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
class GetRecentlyAddedLibraryUnauthorized < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
field :errors, T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedErrors]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('errors') } }
field :errors, T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedLibraryLibraryErrors]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('errors') } }
sig { params(errors: T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedErrors])).void }
sig { params(errors: T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedLibraryLibraryErrors])).void }
def initialize(errors: nil)
@errors = errors
end

View File

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

View File

@@ -0,0 +1,43 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetRecentlyAddedMediaContainer < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
field :size, ::Float, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
field :allow_sync, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('allowSync') } }
field :identifier, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('identifier') } }
# 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::GetRecentlyAddedMetadata]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Metadata') } }
field :offset, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('offset') } }
field :total_size, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('totalSize') } }
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 }
def initialize(size: nil, allow_sync: nil, identifier: nil, meta: nil, metadata: nil, offset: nil, total_size: nil)
@size = size
@allow_sync = allow_sync
@identifier = identifier
@meta = meta
@metadata = metadata
@offset = offset
@total_size = total_size
end
end
end
end

View File

@@ -0,0 +1,252 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetRecentlyAddedMetadata < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
# Unix epoch datetime in seconds
field :added_at, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('addedAt') } }
field :guid, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('guid') } }
field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
# The rating key (Media ID) of this media item.
# Note: This is always an integer, but is represented as a string in the API.
#
field :rating_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('ratingKey') } }
field :summary, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('summary') } }
field :title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
# The type of media content
#
field :type, ::PlexRubySDK::Operations::GetRecentlyAddedHubsType, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::GetRecentlyAddedHubsType, false) } }
field :art, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('art') } }
field :audience_rating, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audienceRating') } }
field :audience_rating_image, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audienceRatingImage') } }
field :banner, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('banner') } }
field :chapter_source, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chapterSource') } }
field :child_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('childCount') } }
field :collection, T.nilable(T::Array[::PlexRubySDK::Operations::Collection]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Collection') } }
field :content_rating, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('contentRating') } }
field :country, T.nilable(T::Array[::PlexRubySDK::Operations::Country]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Country') } }
field :director, T.nilable(T::Array[::PlexRubySDK::Operations::Director]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Director') } }
field :duration, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
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) } }
field :genre, T.nilable(T::Array[::PlexRubySDK::Operations::Genre]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Genre') } }
field :grandparent_art, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentArt') } }
field :grandparent_guid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentGuid') } }
field :grandparent_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentKey') } }
field :grandparent_rating_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentRatingKey') } }
field :grandparent_slug, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentSlug') } }
field :grandparent_theme, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentTheme') } }
field :grandparent_thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentThumb') } }
field :grandparent_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentTitle') } }
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 :image, T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedImage]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Image') } }
field :index, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
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 :library_section_id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionID') } }
field :library_section_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionKey') } }
field :library_section_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionTitle') } }
# The Media object is only included when type query is `4` or higher.
#
field :media, T.nilable(T::Array[::PlexRubySDK::Operations::Media]), { '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 :meta_data_rating, T.nilable(T::Array[::PlexRubySDK::Operations::MetaDataRating]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Rating') } }
field :originally_available_at, T.nilable(::Date), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originallyAvailableAt'), 'decoder': Utils.date_from_iso_format(true) } }
field :original_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originalTitle') } }
field :parent_guid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentGuid') } }
field :parent_index, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentIndex') } }
field :parent_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentKey') } }
# The rating key of the parent item.
#
field :parent_rating_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentRatingKey') } }
field :parent_slug, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentSlug') } }
field :parent_studio, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentStudio') } }
field :parent_theme, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentTheme') } }
field :parent_thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentThumb') } }
field :parent_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentTitle') } }
field :parent_year, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentYear') } }
field :primary_extra_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('primaryExtraKey') } }
field :rating, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('rating') } }
field :rating_image, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('ratingImage') } }
field :role, T.nilable(T::Array[::PlexRubySDK::Operations::Role]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Role') } }
field :season_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('seasonCount') } }
# Setting that indicates the episode ordering for the show
# None = Library default,
# tmdbAiring = The Movie Database (Aired),
# aired = TheTVDB (Aired),
# dvd = TheTVDB (DVD),
# absolute = TheTVDB (Absolute)).
#
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) } }
field :skip_children, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('skipChildren') } }
field :skip_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('skipCount') } }
field :slug, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('slug') } }
field :studio, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('studio') } }
field :tagline, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagline') } }
field :theme, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('theme') } }
field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
field :title_sort, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('titleSort') } }
field :ultra_blur_colors, T.nilable(::PlexRubySDK::Operations::UltraBlurColors), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('UltraBlurColors') } }
# Unix epoch datetime in seconds
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') } }
field :viewed_leaf_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewedLeafCount') } }
field :view_offset, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewOffset') } }
field :writer, T.nilable(T::Array[::PlexRubySDK::Operations::Writer]), { '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: ::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 }
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)
@added_at = added_at
@guid = guid
@key = key
@rating_key = rating_key
@summary = summary
@title = title
@type = type
@art = art
@audience_rating = audience_rating
@audience_rating_image = audience_rating_image
@banner = banner
@chapter_source = chapter_source
@child_count = child_count
@collection = collection
@content_rating = content_rating
@country = country
@director = director
@duration = duration
@flatten_seasons = flatten_seasons
@genre = genre
@grandparent_art = grandparent_art
@grandparent_guid = grandparent_guid
@grandparent_key = grandparent_key
@grandparent_rating_key = grandparent_rating_key
@grandparent_slug = grandparent_slug
@grandparent_theme = grandparent_theme
@grandparent_thumb = grandparent_thumb
@grandparent_title = grandparent_title
@has_premium_extras = has_premium_extras
@has_premium_primary_extra = has_premium_primary_extra
@image = image
@index = index
@last_viewed_at = last_viewed_at
@leaf_count = leaf_count
@library_section_id = library_section_id
@library_section_key = library_section_key
@library_section_title = library_section_title
@media = media
@media_guid = media_guid
@meta_data_rating = meta_data_rating
@originally_available_at = originally_available_at
@original_title = original_title
@parent_guid = parent_guid
@parent_index = parent_index
@parent_key = parent_key
@parent_rating_key = parent_rating_key
@parent_slug = parent_slug
@parent_studio = parent_studio
@parent_theme = parent_theme
@parent_thumb = parent_thumb
@parent_title = parent_title
@parent_year = parent_year
@primary_extra_key = primary_extra_key
@rating = rating
@rating_image = rating_image
@role = role
@season_count = season_count
@show_ordering = show_ordering
@skip_children = skip_children
@skip_count = skip_count
@slug = slug
@studio = studio
@tagline = tagline
@theme = theme
@thumb = thumb
@title_sort = title_sort
@ultra_blur_colors = ultra_blur_colors
@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
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 GetRecentlyAddedOperator < ::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,55 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetRecentlyAddedRequest < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
# The content directory ID.
field :content_directory_id, ::Integer, { 'query_param': { 'field_name': 'contentDirectoryID', 'style': 'form', 'explode': true } }
# The type of media to retrieve.
# 1 = movie
# 2 = show
# 3 = season
# 4 = episode
# E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
#
field :type, ::PlexRubySDK::Operations::Type, { 'query_param': { 'field_name': 'type', 'style': 'form', 'explode': true } }
# Adds the Meta object to the response
#
field :include_meta, T.nilable(::PlexRubySDK::Operations::IncludeMeta), { 'query_param': { 'field_name': 'includeMeta', 'style': 'form', 'explode': true } }
# Comma-separated list of pinned content directory IDs.
field :pinned_content_directory_id, T.nilable(::String), { 'query_param': { 'field_name': 'pinnedContentDirectoryID', 'style': 'form', 'explode': true } }
# The library section ID for filtering content.
field :section_id, T.nilable(::Integer), { 'query_param': { 'field_name': 'sectionID', 'style': 'form', 'explode': true } }
# The number of items to return. If not specified, all items will be returned.
# If the number of items exceeds the limit, the response will be paginated.
# By default this is 50
#
field :x_plex_container_size, T.nilable(::Integer), { 'query_param': { 'field_name': 'X-Plex-Container-Size', 'style': 'form', 'explode': true } }
# The index of the first item to return. If not specified, the first item will be returned.
# If the number of items exceeds the limit, the response will be paginated.
# By default this is 0
#
field :x_plex_container_start, T.nilable(::Integer), { 'query_param': { 'field_name': 'X-Plex-Container-Start', 'style': 'form', 'explode': true } }
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 }
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)
@content_directory_id = content_directory_id
@type = type
@include_meta = include_meta
@pinned_content_directory_id = pinned_content_directory_id
@section_id = section_id
@x_plex_container_size = x_plex_container_size
@x_plex_container_start = x_plex_container_start
end
end
end
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 GetRecentlyAddedResponse < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
# HTTP response content type for this operation
field :content_type, ::String
# Raw HTTP response; suitable for custom response parsing
field :raw_response, ::Faraday::Response
# HTTP response status code for this operation
field :status_code, ::Integer
# A successful response with recently added content.
field :object, T.nilable(::PlexRubySDK::Operations::GetRecentlyAddedResponseBody)
sig { params(content_type: ::String, raw_response: ::Faraday::Response, status_code: ::Integer, object: T.nilable(::PlexRubySDK::Operations::GetRecentlyAddedResponseBody)).void }
def initialize(content_type: nil, raw_response: nil, status_code: nil, object: nil)
@content_type = content_type
@raw_response = raw_response
@status_code = status_code
@object = object
end
end
end
end

View File

@@ -7,7 +7,7 @@
module PlexRubySDK
module Operations
# The recently added content
# A successful response with recently added content.
class GetRecentlyAddedResponseBody < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig

View File

@@ -0,0 +1,47 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetRecentlyAddedSort < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
# The direction of the sort. Can be either `asc` or `desc`.
#
field :default_direction, ::PlexRubySDK::Operations::GetRecentlyAddedDefaultDirection, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('defaultDirection'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::GetRecentlyAddedDefaultDirection, false) } }
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 :active, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('active') } }
# The direction of the sort. Can be either `asc` or `desc`.
#
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) } }
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: ::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 }
def initialize(default_direction: nil, key: nil, title: nil, active: nil, active_direction: nil, default: nil, desc_key: nil, first_character_key: nil)
@default_direction = default_direction
@key = key
@title = title
@active = active
@active_direction = active_direction
@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 GetRecentlyAddedType < ::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::GetRecentlyAddedField]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Field') } }
field :filter, T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedFilter]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Filter') } }
field :sort, T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedSort]), { '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::GetRecentlyAddedField]), filter: T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedFilter]), sort: T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedSort])).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

@@ -0,0 +1,26 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
# GetSearchLibraryQueryParamType - The type of media to retrieve.
# 1 = movie
# 2 = show
# 3 = season
# 4 = episode
# E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
#
class GetSearchLibraryQueryParamType < T::Enum
enums do
MOVIE = new(1)
TV_SHOW = new(2)
SEASON = new(3)
EPISODE = new(4)
end
end
end
end

View File

@@ -22,10 +22,10 @@ module PlexRubySDK
# 4 = episode
# E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
#
field :type, ::PlexRubySDK::Operations::QueryParamType, { 'query_param': { 'field_name': 'type', 'style': 'form', 'explode': true } }
field :type, ::PlexRubySDK::Operations::GetSearchLibraryQueryParamType, { 'query_param': { 'field_name': 'type', 'style': 'form', 'explode': true } }
sig { params(section_key: ::Integer, type: ::PlexRubySDK::Operations::QueryParamType).void }
sig { params(section_key: ::Integer, type: ::PlexRubySDK::Operations::GetSearchLibraryQueryParamType).void }
def initialize(section_key: nil, type: nil)
@section_key = section_key
@type = type

View File

@@ -14,6 +14,11 @@ 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 } }
@@ -29,8 +34,9 @@ module PlexRubySDK
field :strong, T.nilable(T::Boolean), { 'query_param': { 'field_name': 'strong', 'style': 'form', 'explode': true } }
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)
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
@client_name = client_name
@client_platform = client_platform
@client_version = client_version

View File

@@ -1,42 +0,0 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetRecentlyAddedMediaContainer < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
field :allow_sync, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('allowSync') } }
field :identifier, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('identifier') } }
field :media_tag_prefix, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagPrefix') } }
field :media_tag_version, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagVersion') } }
field :metadata, T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedMetadata]), { '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(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
sig { params(allow_sync: T.nilable(T::Boolean), identifier: T.nilable(::String), media_tag_prefix: T.nilable(::String), media_tag_version: T.nilable(::Float), metadata: T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedMetadata]), mixed_parents: T.nilable(T::Boolean), size: T.nilable(::Float)).void }
def initialize(allow_sync: nil, identifier: nil, media_tag_prefix: nil, media_tag_version: nil, metadata: nil, mixed_parents: nil, size: nil)
@allow_sync = allow_sync
@identifier = identifier
@media_tag_prefix = media_tag_prefix
@media_tag_version = media_tag_version
@metadata = metadata
@mixed_parents = mixed_parents
@size = size
end
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
class GetRecentlyAddedRequest < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
# The number of items to return. If not specified, all items will be returned.
# If the number of items exceeds the limit, the response will be paginated.
# By default this is 50
#
field :x_plex_container_size, T.nilable(::Integer), { 'query_param': { 'field_name': 'X-Plex-Container-Size', 'style': 'form', 'explode': true } }
# The index of the first item to return. If not specified, the first item will be returned.
# If the number of items exceeds the limit, the response will be paginated.
# By default this is 0
#
field :x_plex_container_start, T.nilable(::Integer), { 'query_param': { 'field_name': 'X-Plex-Container-Start', 'style': 'form', 'explode': true } }
sig { params(x_plex_container_size: T.nilable(::Integer), x_plex_container_start: T.nilable(::Integer)).void }
def initialize(x_plex_container_size: nil, x_plex_container_start: nil)
@x_plex_container_size = x_plex_container_size
@x_plex_container_start = x_plex_container_start
end
end
end
end

View File

@@ -12,57 +12,63 @@ module PlexRubySDK
extend T::Sig
field :aspect_ratio, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('aspectRatio') } }
field :aspect_ratio, ::Float, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('aspectRatio') } }
field :audio_channels, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioChannels') } }
field :audio_channels, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioChannels') } }
field :audio_codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioCodec') } }
field :audio_codec, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioCodec') } }
field :bitrate, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bitrate') } }
field :bitrate, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bitrate') } }
field :container, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('container') } }
field :container, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('container') } }
field :duration, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
field :duration, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
field :height, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
field :part, T::Array[::PlexRubySDK::Operations::Part], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Part') } }
field :video_codec, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoCodec') } }
field :video_frame_rate, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoFrameRate') } }
field :video_profile, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } }
field :video_resolution, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoResolution') } }
field :width, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
field :audio_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioProfile') } }
field :has64bit_offsets, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('has64bitOffsets') } }
field :height, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
field :has_voice_activity, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasVoiceActivity') } }
field :id, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
field :optimized_for_streaming, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming') } }
field :part, T.nilable(T::Array[::PlexRubySDK::Operations::Part]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Part') } }
field :video_codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoCodec') } }
field :video_frame_rate, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoFrameRate') } }
field :video_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } }
field :video_resolution, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoResolution') } }
field :width, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
field :optimized_for_streaming, T.nilable(::PlexRubySDK::Operations::OptimizedForStreaming), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::OptimizedForStreaming, true) } }
sig { params(aspect_ratio: T.nilable(::Float), audio_channels: T.nilable(::Float), audio_codec: T.nilable(::String), bitrate: T.nilable(::Float), container: T.nilable(::String), duration: T.nilable(::Float), has64bit_offsets: T.nilable(T::Boolean), height: T.nilable(::Float), id: T.nilable(::Float), optimized_for_streaming: T.nilable(::Float), part: T.nilable(T::Array[::PlexRubySDK::Operations::Part]), video_codec: T.nilable(::String), video_frame_rate: T.nilable(::String), video_profile: T.nilable(::String), video_resolution: T.nilable(::Float), width: T.nilable(::Float)).void }
def initialize(aspect_ratio: nil, audio_channels: nil, audio_codec: nil, bitrate: nil, container: nil, duration: nil, has64bit_offsets: nil, height: nil, id: nil, optimized_for_streaming: nil, part: nil, video_codec: nil, video_frame_rate: nil, video_profile: nil, video_resolution: nil, width: nil)
sig { params(aspect_ratio: ::Float, audio_channels: ::Integer, audio_codec: ::String, bitrate: ::Integer, container: ::String, duration: ::Integer, height: ::Integer, id: ::Integer, part: T::Array[::PlexRubySDK::Operations::Part], video_codec: ::String, video_frame_rate: ::String, video_profile: ::String, video_resolution: ::String, width: ::Integer, audio_profile: T.nilable(::String), has64bit_offsets: T.nilable(T::Boolean), has_voice_activity: T.nilable(T::Boolean), optimized_for_streaming: T.nilable(::PlexRubySDK::Operations::OptimizedForStreaming)).void }
def initialize(aspect_ratio: nil, audio_channels: nil, audio_codec: nil, bitrate: nil, container: nil, duration: nil, height: nil, id: nil, part: nil, video_codec: nil, video_frame_rate: nil, video_profile: nil, video_resolution: nil, width: nil, audio_profile: nil, has64bit_offsets: nil, has_voice_activity: nil, optimized_for_streaming: nil)
@aspect_ratio = aspect_ratio
@audio_channels = audio_channels
@audio_codec = audio_codec
@bitrate = bitrate
@container = container
@duration = duration
@has64bit_offsets = has64bit_offsets
@height = height
@id = id
@optimized_for_streaming = optimized_for_streaming
@part = part
@video_codec = video_codec
@video_frame_rate = video_frame_rate
@video_profile = video_profile
@video_resolution = video_resolution
@width = width
@audio_profile = audio_profile
@has64bit_offsets = has64bit_offsets
@has_voice_activity = has_voice_activity
@optimized_for_streaming = optimized_for_streaming
end
end
end

View File

@@ -13,12 +13,12 @@ module PlexRubySDK
extend T::Sig
field :field_type, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsFieldType]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('FieldType') } }
field :field_type, T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedFieldType]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('FieldType') } }
field :type, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsLibraryType]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Type') } }
field :type, T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedType]), { '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::GetLibraryItemsLibraryType])).void }
sig { params(field_type: T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedFieldType]), type: T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedType])).void }
def initialize(field_type: nil, type: nil)
@field_type = field_type
@type = type

View File

@@ -0,0 +1,30 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class MetaDataRating < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
# A URI or path to the rating image.
field :image, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('image') } }
# The type of rating (e.g., audience, critic).
field :type, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
# The value of the rating.
field :value, ::Float, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('value') } }
sig { params(image: ::String, type: ::String, value: ::Float).void }
def initialize(image: nil, type: nil, value: nil)
@image = image
@type = type
@value = value
end
end
end
end

View File

@@ -12,12 +12,12 @@ module PlexRubySDK
extend T::Sig
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 :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') } }
sig { params(key: T.nilable(::String), title: T.nilable(::String)).void }
sig { params(key: ::String, title: ::String).void }
def initialize(key: nil, title: nil)
@key = key
@title = title

View File

@@ -0,0 +1,18 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class OptimizedForStreaming < T::Enum
enums do
DISABLE = new(0)
ENABLE = new(1)
end
end
end
end

View File

@@ -11,40 +11,50 @@ module PlexRubySDK
class Part < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
# The container format of the media file.
#
field :container, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('container') } }
field :container, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('container') } }
field :duration, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
field :duration, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
field :file, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('file') } }
field :file, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('file') } }
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
field :size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
field :video_profile, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } }
field :audio_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioProfile') } }
field :has64bit_offsets, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('has64bitOffsets') } }
field :has_thumbnail, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasThumbnail') } }
field :has_thumbnail, T.nilable(::PlexRubySDK::Operations::HasThumbnail), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasThumbnail'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::HasThumbnail, true) } }
field :id, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
field :key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
field :indexes, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('indexes') } }
field :optimized_for_streaming, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming') } }
field :size, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
field :video_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } }
field :stream, T.nilable(T::Array[::PlexRubySDK::Operations::Stream]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Stream') } }
sig { params(container: T.nilable(::String), duration: T.nilable(::Float), file: T.nilable(::String), has64bit_offsets: T.nilable(T::Boolean), has_thumbnail: T.nilable(::Float), id: T.nilable(::Float), key: T.nilable(::String), optimized_for_streaming: T.nilable(T::Boolean), size: T.nilable(::Float), video_profile: T.nilable(::String)).void }
def initialize(container: nil, duration: nil, file: nil, has64bit_offsets: nil, has_thumbnail: nil, id: nil, key: nil, optimized_for_streaming: nil, size: nil, video_profile: nil)
sig { params(container: ::String, duration: ::Integer, file: ::String, id: ::Integer, key: ::String, size: ::Integer, video_profile: ::String, audio_profile: T.nilable(::String), has64bit_offsets: T.nilable(T::Boolean), has_thumbnail: T.nilable(::PlexRubySDK::Operations::HasThumbnail), indexes: T.nilable(::String), optimized_for_streaming: T.nilable(T::Boolean), stream: T.nilable(T::Array[::PlexRubySDK::Operations::Stream])).void }
def initialize(container: nil, duration: nil, file: nil, id: nil, key: nil, size: nil, video_profile: nil, audio_profile: nil, has64bit_offsets: nil, has_thumbnail: nil, indexes: nil, optimized_for_streaming: nil, stream: nil)
@container = container
@duration = duration
@file = file
@has64bit_offsets = has64bit_offsets
@has_thumbnail = has_thumbnail
@id = id
@key = key
@optimized_for_streaming = optimized_for_streaming
@size = size
@video_profile = video_profile
@audio_profile = audio_profile
@has64bit_offsets = has64bit_offsets
@has_thumbnail = has_thumbnail
@indexes = indexes
@optimized_for_streaming = optimized_for_streaming
@stream = stream
end
end
end

View File

@@ -0,0 +1,45 @@
# 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 } }
field :client_name, T.nilable(::String), { 'query_param': { 'field_name': 'X-Plex-Product', 'style': 'form', 'explode': true } }
field :client_platform, T.nilable(::String), { 'query_param': { 'field_name': 'X-Plex-Platform', 'style': 'form', 'explode': true } }
field :client_version, T.nilable(::String), { 'query_param': { 'field_name': 'X-Plex-Version', 'style': 'form', 'explode': true } }
field :device_name, T.nilable(::String), { 'query_param': { 'field_name': 'X-Plex-Device', '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), client_name: T.nilable(::String), client_platform: T.nilable(::String), client_version: T.nilable(::String), device_name: T.nilable(::String), request_body: T.nilable(::PlexRubySDK::Operations::PostUsersSignInDataRequestBody)).void }
def initialize(client_id: nil, client_name: nil, client_platform: nil, client_version: nil, device_name: nil, request_body: nil)
@client_id = client_id
@client_name = client_name
@client_platform = client_platform
@client_version = client_version
@device_name = device_name
@request_body = request_body
end
end
end
end

View File

@@ -0,0 +1,19 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
# QueryParamIncludeMeta - Adds the Meta object to the response
#
class QueryParamIncludeMeta < T::Enum
enums do
DISABLE = new(0)
ENABLE = new(1)
end
end
end
end

View File

@@ -11,13 +11,28 @@ module PlexRubySDK
class Role < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
# The filter used to find the actor or tag.
field :filter, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
# The ID of the tag or actor.
field :id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
# The role of the actor or tag in the media.
field :role, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('role') } }
# The name of the tag or actor.
field :tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
# Unique identifier for the tag.
field :tag_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } }
# The thumbnail of the actor
field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
sig { params(tag: T.nilable(::String)).void }
def initialize(tag: nil)
sig { params(filter: T.nilable(::String), id: T.nilable(::Integer), role: T.nilable(::String), tag: T.nilable(::String), tag_key: T.nilable(::String), thumb: T.nilable(::String)).void }
def initialize(filter: nil, id: nil, role: nil, tag: nil, tag_key: nil, thumb: nil)
@filter = filter
@id = id
@role = role
@tag = tag
@tag_key = tag_key
@thumb = thumb
end
end
end

View File

@@ -11,28 +11,36 @@ module PlexRubySDK
class Sort < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
# The direction of the sort. Can be either `asc` or `desc`.
#
field :default_direction, ::PlexRubySDK::Operations::DefaultDirection, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('defaultDirection'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::DefaultDirection, false) } }
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 :active, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('active') } }
# The direction of the sort. Can be either `asc` or `desc`.
#
field :active_direction, T.nilable(::PlexRubySDK::Operations::ActiveDirection), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('activeDirection'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::ActiveDirection, true) } }
field :default, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('default') } }
field :default_direction, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('defaultDirection') } }
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') } }
field :key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
sig { params(default: T.nilable(::String), default_direction: T.nilable(::String), desc_key: T.nilable(::String), first_character_key: T.nilable(::String), key: T.nilable(::String), title: T.nilable(::String)).void }
def initialize(default: nil, default_direction: nil, desc_key: nil, first_character_key: nil, key: nil, title: nil)
@default = default
sig { params(default_direction: ::PlexRubySDK::Operations::DefaultDirection, key: ::String, title: ::String, active: T.nilable(T::Boolean), active_direction: T.nilable(::PlexRubySDK::Operations::ActiveDirection), 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, active: nil, active_direction: nil, default: nil, desc_key: nil, first_character_key: nil)
@default_direction = default_direction
@desc_key = desc_key
@first_character_key = first_character_key
@key = key
@title = title
@active = active
@active_direction = active_direction
@default = default
@desc_key = desc_key
@first_character_key = first_character_key
end
end
end

View File

@@ -11,80 +11,98 @@ module PlexRubySDK
class Stream < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
# Codec used by the stream
field :codec, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('codec') } }
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
# The index of the stream
field :index, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
# Type of stream (1 = video, 2 = audio, 3 = subtitle)
field :stream_type, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('streamType') } }
# The audio channel layout
field :audio_channel_layout, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioChannelLayout') } }
# The bit depth of the video stream
field :bit_depth, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bitDepth') } }
# The bitrate of the stream in kbps
field :bitrate, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bitrate') } }
# Indicates if the subtitle stream can auto-sync
field :can_auto_sync, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('canAutoSync') } }
# Number of audio channels (for audio streams)
field :channels, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('channels') } }
# The chroma location of the video stream
field :chroma_location, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chromaLocation') } }
# The chroma subsampling format
field :chroma_subsampling, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chromaSubsampling') } }
field :codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('codec') } }
field :closed_captions, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('closedCaptions') } }
# The coded height of the video stream
field :coded_height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('codedHeight') } }
# The coded width of the video stream
field :coded_width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('codedWidth') } }
# The color primaries of the video stream
field :color_primaries, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('colorPrimaries') } }
# The color range of the video stream
field :color_range, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('colorRange') } }
# The color space of the video stream
field :color_space, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('colorSpace') } }
# The transfer characteristics (TRC) of the video stream
field :color_trc, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('colorTrc') } }
# Indicates if this is the default stream
field :default, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('default') } }
# Display title of the stream
field :display_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('displayTitle') } }
field :embedded_in_video, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('embeddedInVideo') } }
# Extended display title of the stream
field :extended_display_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('extendedDisplayTitle') } }
field :frame_rate, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('frameRate') } }
# The frame rate of the video stream
field :frame_rate, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('frameRate') } }
# Indicates if the stream has a scaling matrix
field :has_scaling_matrix, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasScalingMatrix') } }
field :hearing_impaired, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hearingImpaired') } }
# The height of the video stream
field :height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
field :id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
field :index, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
# The language of the stream (for audio/subtitle streams)
field :language, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('language') } }
# Language code of the stream
field :language_code, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('languageCode') } }
# Language tag of the stream
field :language_tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('languageTag') } }
# The level of the video codec
field :level, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('level') } }
# The profile of the video codec
field :profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('profile') } }
# Number of reference frames
field :ref_frames, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('refFrames') } }
# Sampling rate of the audio stream in Hz
field :sampling_rate, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('samplingRate') } }
# The scan type (progressive or interlaced)
field :scan_type, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('scanType') } }
# Indicates if the stream is selected
field :selected, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('selected') } }
# The identifier of the video stream
field :stream_identifier, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('streamIdentifier') } }
field :stream_type, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('streamType') } }
# Title of the subtitle track (for subtitle streams)
field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
# The width of the video stream
field :width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
sig { params(bit_depth: T.nilable(::Integer), bitrate: T.nilable(::Integer), channels: T.nilable(::Integer), chroma_location: T.nilable(::String), chroma_subsampling: T.nilable(::String), codec: T.nilable(::String), coded_height: T.nilable(::Integer), coded_width: T.nilable(::Integer), color_primaries: T.nilable(::String), color_range: T.nilable(::String), color_space: T.nilable(::String), color_trc: T.nilable(::String), default: T.nilable(T::Boolean), display_title: T.nilable(::String), extended_display_title: T.nilable(::String), frame_rate: T.nilable(::Integer), has_scaling_matrix: T.nilable(T::Boolean), height: T.nilable(::Integer), id: T.nilable(::Integer), index: T.nilable(::Integer), language: T.nilable(::String), language_code: T.nilable(::String), language_tag: T.nilable(::String), level: T.nilable(::Integer), profile: T.nilable(::String), ref_frames: T.nilable(::Integer), sampling_rate: T.nilable(::Integer), scan_type: T.nilable(::String), selected: T.nilable(T::Boolean), stream_identifier: T.nilable(::String), stream_type: T.nilable(::Integer), width: T.nilable(::Integer)).void }
def initialize(bit_depth: nil, bitrate: nil, channels: nil, chroma_location: nil, chroma_subsampling: nil, codec: nil, coded_height: nil, coded_width: nil, color_primaries: nil, color_range: nil, color_space: nil, color_trc: nil, default: nil, display_title: nil, extended_display_title: nil, frame_rate: nil, has_scaling_matrix: nil, height: nil, id: nil, index: nil, language: nil, language_code: nil, language_tag: nil, level: nil, profile: nil, ref_frames: nil, sampling_rate: nil, scan_type: nil, selected: nil, stream_identifier: nil, stream_type: nil, width: nil)
sig { params(codec: ::String, id: ::Integer, index: ::Integer, stream_type: ::Integer, audio_channel_layout: T.nilable(::String), bit_depth: T.nilable(::Integer), bitrate: T.nilable(::Integer), can_auto_sync: T.nilable(T::Boolean), channels: T.nilable(::Integer), chroma_location: T.nilable(::String), chroma_subsampling: T.nilable(::String), closed_captions: T.nilable(T::Boolean), coded_height: T.nilable(::Integer), coded_width: T.nilable(::Integer), color_primaries: T.nilable(::String), color_range: T.nilable(::String), color_space: T.nilable(::String), color_trc: T.nilable(::String), default: T.nilable(T::Boolean), display_title: T.nilable(::String), embedded_in_video: T.nilable(::String), extended_display_title: T.nilable(::String), frame_rate: T.nilable(::Float), has_scaling_matrix: T.nilable(T::Boolean), hearing_impaired: T.nilable(T::Boolean), height: T.nilable(::Integer), language: T.nilable(::String), language_code: T.nilable(::String), language_tag: T.nilable(::String), level: T.nilable(::Integer), profile: T.nilable(::String), ref_frames: T.nilable(::Integer), sampling_rate: T.nilable(::Integer), scan_type: T.nilable(::String), selected: T.nilable(T::Boolean), stream_identifier: T.nilable(::String), title: T.nilable(::String), width: T.nilable(::Integer)).void }
def initialize(codec: nil, id: nil, index: nil, stream_type: nil, audio_channel_layout: nil, bit_depth: nil, bitrate: nil, can_auto_sync: nil, channels: nil, chroma_location: nil, chroma_subsampling: nil, closed_captions: nil, coded_height: nil, coded_width: nil, color_primaries: nil, color_range: nil, color_space: nil, color_trc: nil, default: nil, display_title: nil, embedded_in_video: nil, extended_display_title: nil, frame_rate: nil, has_scaling_matrix: nil, hearing_impaired: nil, height: nil, language: nil, language_code: nil, language_tag: nil, level: nil, profile: nil, ref_frames: nil, sampling_rate: nil, scan_type: nil, selected: nil, stream_identifier: nil, title: nil, width: nil)
@codec = codec
@id = id
@index = index
@stream_type = stream_type
@audio_channel_layout = audio_channel_layout
@bit_depth = bit_depth
@bitrate = bitrate
@can_auto_sync = can_auto_sync
@channels = channels
@chroma_location = chroma_location
@chroma_subsampling = chroma_subsampling
@codec = codec
@closed_captions = closed_captions
@coded_height = coded_height
@coded_width = coded_width
@color_primaries = color_primaries
@@ -93,12 +111,12 @@ module PlexRubySDK
@color_trc = color_trc
@default = default
@display_title = display_title
@embedded_in_video = embedded_in_video
@extended_display_title = extended_display_title
@frame_rate = frame_rate
@has_scaling_matrix = has_scaling_matrix
@hearing_impaired = hearing_impaired
@height = height
@id = id
@index = index
@language = language
@language_code = language_code
@language_tag = language_tag
@@ -109,7 +127,7 @@ module PlexRubySDK
@scan_type = scan_type
@selected = selected
@stream_identifier = stream_identifier
@stream_type = stream_type
@title = title
@width = width
end
end

View File

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