# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. # typed: true # frozen_string_literal: true module PlexRubySDK module Operations GET_PIN_REQUEST_SERVERS = [ 'https://plex.tv/api/v2/' ].freeze 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 } } 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 } } # Determines the kind of code returned by the API call # Strong codes are used for Pin authentication flows # Non-Strong codes are used for `Plex.tv/link` # field :strong, T.nilable(T::Boolean), { 'query_param': { 'field_name': 'strong', 'style': 'form', 'explode': true } } sig { params(client_id: T.nilable(::String), client_name: T.nilable(::String), client_platform: T.nilable(::String), client_version: T.nilable(::String), device_name: T.nilable(::String), strong: T.nilable(T::Boolean)).void } def initialize(client_id: nil, client_name: nil, client_platform: nil, client_version: nil, device_name: nil, strong: nil) @client_id = client_id @client_name = client_name @client_platform = client_platform @client_version = client_version @device_name = device_name @strong = strong end end end end