components

package
v0.28.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 27, 2025 License: MIT Imports: 6 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Accepts added in v0.26.0

type Accepts string
const (
	AcceptsApplicationJSON Accepts = "application/json"
	AcceptsApplicationXML  Accepts = "application/xml"
)

func (Accepts) ToPointer added in v0.26.0

func (e Accepts) ToPointer() *Accepts

func (*Accepts) UnmarshalJSON added in v0.26.0

func (e *Accepts) UnmarshalJSON(data []byte) error

type AdvancedSubtitles added in v0.26.0

type AdvancedSubtitles string
const (
	AdvancedSubtitlesBurn    AdvancedSubtitles = "burn"
	AdvancedSubtitlesText    AdvancedSubtitles = "text"
	AdvancedSubtitlesUnknown AdvancedSubtitles = "unknown"
)

func (AdvancedSubtitles) ToPointer added in v0.26.0

func (e AdvancedSubtitles) ToPointer() *AdvancedSubtitles

func (*AdvancedSubtitles) UnmarshalJSON added in v0.26.0

func (e *AdvancedSubtitles) UnmarshalJSON(data []byte) error

type AiringsType added in v0.26.0

type AiringsType string
const (
	AiringsTypeNewAiringsOnly      AiringsType = "New Airings Only"
	AiringsTypeNewAndRepeatAirings AiringsType = "New and Repeat Airings"
)

func (AiringsType) ToPointer added in v0.26.0

func (e AiringsType) ToPointer() *AiringsType

func (*AiringsType) UnmarshalJSON added in v0.26.0

func (e *AiringsType) UnmarshalJSON(data []byte) error

type AutoSelectSubtitle added in v0.28.0

type AutoSelectSubtitle int

AutoSelectSubtitle - The auto-select subtitle mode (0 = Manually selected, 1 = Shown with foreign audio, 2 = Always enabled)

const (
	AutoSelectSubtitleManuallySelected      AutoSelectSubtitle = 0
	AutoSelectSubtitleShownWithForeignAudio AutoSelectSubtitle = 1
	AutoSelectSubtitleAlwaysEnabled         AutoSelectSubtitle = 2
)

func (AutoSelectSubtitle) ToPointer added in v0.28.0

func (e AutoSelectSubtitle) ToPointer() *AutoSelectSubtitle

func (*AutoSelectSubtitle) UnmarshalJSON added in v0.28.0

func (e *AutoSelectSubtitle) UnmarshalJSON(data []byte) error

type BoolInt added in v0.26.0

type BoolInt int
const (
	BoolIntFalse BoolInt = 0
	BoolIntTrue  BoolInt = 1
)

func (BoolInt) ToPointer added in v0.26.0

func (e BoolInt) ToPointer() *BoolInt

func (*BoolInt) UnmarshalJSON added in v0.26.0

func (e *BoolInt) UnmarshalJSON(data []byte) error

type Channel added in v0.26.0

type Channel struct {
	Title      *string `json:"title,omitempty"`
	CallSign   *string `json:"callSign,omitempty"`
	ChannelVcn *string `json:"channelVcn,omitempty"`
	Hd         *bool   `json:"hd,omitempty"`
	Identifier *string `json:"identifier,omitempty"`
	Key        *string `json:"key,omitempty"`
	Language   *string `json:"language,omitempty"`
	Thumb      *string `json:"thumb,omitempty"`
}

func (*Channel) GetCallSign added in v0.26.0

func (c *Channel) GetCallSign() *string

func (*Channel) GetChannelVcn added in v0.26.0

func (c *Channel) GetChannelVcn() *string

func (*Channel) GetHd added in v0.26.0

func (c *Channel) GetHd() *bool

func (*Channel) GetIdentifier added in v0.26.0

func (c *Channel) GetIdentifier() *string

func (*Channel) GetKey added in v0.26.0

func (c *Channel) GetKey() *string

func (*Channel) GetLanguage added in v0.26.0

func (c *Channel) GetLanguage() *string

func (*Channel) GetThumb added in v0.26.0

func (c *Channel) GetThumb() *string

func (*Channel) GetTitle added in v0.26.0

func (c *Channel) GetTitle() *string

type ChannelMapping added in v0.26.0

type ChannelMapping struct {
	ChannelKey       *string `json:"channelKey,omitempty"`
	DeviceIdentifier *string `json:"deviceIdentifier,omitempty"`
	Enabled          *string `json:"enabled,omitempty"`
	LineupIdentifier *string `json:"lineupIdentifier,omitempty"`
}

func (*ChannelMapping) GetChannelKey added in v0.26.0

func (c *ChannelMapping) GetChannelKey() *string

func (*ChannelMapping) GetDeviceIdentifier added in v0.26.0

func (c *ChannelMapping) GetDeviceIdentifier() *string

func (*ChannelMapping) GetEnabled added in v0.26.0

func (c *ChannelMapping) GetEnabled() *string

func (*ChannelMapping) GetLineupIdentifier added in v0.26.0

func (c *ChannelMapping) GetLineupIdentifier() *string

type Composite added in v0.26.0

type Composite struct {
	// Limit composite to specified metadata types
	Type *int64 `queryParam:"name=type"`
	// The image type
	Format *Format `queryParam:"name=format"`
	// 6 character hex RGB value for background color for image
	BackgroundColor *string `queryParam:"name=backgroundColor"`
	// The width of the intra-image border
	Border *int64 `queryParam:"name=border"`
	// Number of columns to construct in the composite image
	Cols *int64 `queryParam:"name=cols"`
	// Where to crop source images to fit into composite image proportions
	Crop *Crop `queryParam:"name=crop"`
	// The height of the image
	Height *int64 `queryParam:"name=height"`
	// The default image type to use as the sources
	Media *CompositeMedia `queryParam:"name=media"`
	// Allow repetion of images if there are not enough source images to fill grid
	Repeat *bool `queryParam:"name=repeat"`
	// Number of rows to construct in the composite image
	Rows *int64 `queryParam:"name=rows"`
	// The width of the image
	Width *int64 `queryParam:"name=width"`
}

func (*Composite) GetBackgroundColor added in v0.26.0

func (c *Composite) GetBackgroundColor() *string

func (*Composite) GetBorder added in v0.26.0

func (c *Composite) GetBorder() *int64

func (*Composite) GetCols added in v0.26.0

func (c *Composite) GetCols() *int64

func (*Composite) GetCrop added in v0.26.0

func (c *Composite) GetCrop() *Crop

func (*Composite) GetFormat added in v0.26.0

func (c *Composite) GetFormat() *Format

func (*Composite) GetHeight added in v0.26.0

func (c *Composite) GetHeight() *int64

func (*Composite) GetMedia added in v0.26.0

func (c *Composite) GetMedia() *CompositeMedia

func (*Composite) GetRepeat added in v0.26.0

func (c *Composite) GetRepeat() *bool

func (*Composite) GetRows added in v0.26.0

func (c *Composite) GetRows() *int64

func (*Composite) GetType added in v0.26.0

func (c *Composite) GetType() *int64

func (*Composite) GetWidth added in v0.26.0

func (c *Composite) GetWidth() *int64

type CompositeMedia added in v0.26.0

type CompositeMedia string

CompositeMedia - The default image type to use as the sources

const (
	CompositeMediaThumb  CompositeMedia = "thumb"
	CompositeMediaArt    CompositeMedia = "art"
	CompositeMediaBanner CompositeMedia = "banner"
)

func (CompositeMedia) ToPointer added in v0.26.0

func (e CompositeMedia) ToPointer() *CompositeMedia

func (*CompositeMedia) UnmarshalJSON added in v0.26.0

func (e *CompositeMedia) UnmarshalJSON(data []byte) error

type Connections added in v0.28.0

type Connections struct {
	// The protocol used for the connection (http, https, etc)
	Protocol PlexDeviceProtocol `json:"protocol"`
	// The (ip) address or domain name used for the connection
	Address string `json:"address"`
	// The port used for the connection
	Port int `json:"port"`
	// The full URI of the connection
	URI string `json:"uri"`
	// If the connection is local address
	Local bool `json:"local"`
	// If the connection is relayed through plex.direct
	Relay bool `json:"relay"`
	// If the connection is using IPv6
	IPv6 bool `json:"IPv6"`
}

func (*Connections) GetAddress added in v0.28.0

func (c *Connections) GetAddress() string

func (*Connections) GetIPv6 added in v0.28.0

func (c *Connections) GetIPv6() bool

func (*Connections) GetLocal added in v0.28.0

func (c *Connections) GetLocal() bool

func (*Connections) GetPort added in v0.28.0

func (c *Connections) GetPort() int

func (*Connections) GetProtocol added in v0.28.0

func (c *Connections) GetProtocol() PlexDeviceProtocol

func (*Connections) GetRelay added in v0.28.0

func (c *Connections) GetRelay() bool

func (*Connections) GetURI added in v0.28.0

func (c *Connections) GetURI() string

type Crop added in v0.26.0

type Crop string

Crop - Where to crop source images to fit into composite image proportions

const (
	CropCenter Crop = "center"
	CropTop    Crop = "top"
)

func (Crop) ToPointer added in v0.26.0

func (e Crop) ToPointer() *Crop

func (*Crop) UnmarshalJSON added in v0.26.0

func (e *Crop) UnmarshalJSON(data []byte) error

type Decision added in v0.26.0

type Decision string
const (
	DecisionDirectplay Decision = "directplay"
	DecisionTranscode  Decision = "transcode"
	DecisionNone       Decision = "none"
)

func (Decision) ToPointer added in v0.26.0

func (e Decision) ToPointer() *Decision

func (*Decision) UnmarshalJSON added in v0.26.0

func (e *Decision) UnmarshalJSON(data []byte) error

type Default added in v0.26.0

type Default struct {
	Str     *string  `queryParam:"inline,name=default" union:"member"`
	Number  *float64 `queryParam:"inline,name=default" union:"member"`
	Boolean *bool    `queryParam:"inline,name=default" union:"member"`

	Type DefaultType
}

Default - The default value of this setting

func CreateDefaultBoolean added in v0.26.0

func CreateDefaultBoolean(boolean bool) Default

func CreateDefaultNumber added in v0.26.0

func CreateDefaultNumber(number float64) Default

func CreateDefaultStr added in v0.26.0

func CreateDefaultStr(str string) Default

func (Default) MarshalJSON added in v0.26.0

func (u Default) MarshalJSON() ([]byte, error)

func (*Default) UnmarshalJSON added in v0.26.0

func (u *Default) UnmarshalJSON(data []byte) error

type DefaultAudioAccessibility added in v0.28.0

type DefaultAudioAccessibility int

DefaultAudioAccessibility - The audio accessibility mode (0 = Prefer non-accessibility audio, 1 = Prefer accessibility audio, 2 = Only show accessibility audio, 3 = Only show non-accessibility audio)

const (
	DefaultAudioAccessibilityPreferNonAccessibility DefaultAudioAccessibility = 0
	DefaultAudioAccessibilityPreferAccessibility    DefaultAudioAccessibility = 1
	DefaultAudioAccessibilityOnlyAccessibility      DefaultAudioAccessibility = 2
	DefaultAudioAccessibilityOnlyNonAccessibility   DefaultAudioAccessibility = 3
)

func (DefaultAudioAccessibility) ToPointer added in v0.28.0

func (*DefaultAudioAccessibility) UnmarshalJSON added in v0.28.0

func (e *DefaultAudioAccessibility) UnmarshalJSON(data []byte) error

type DefaultDirection added in v0.26.0

type DefaultDirection string

DefaultDirection - This default diction of this sort

const (
	DefaultDirectionAsc  DefaultDirection = "asc"
	DefaultDirectionDesc DefaultDirection = "desc"
)

func (DefaultDirection) ToPointer added in v0.26.0

func (e DefaultDirection) ToPointer() *DefaultDirection

func (*DefaultDirection) UnmarshalJSON added in v0.26.0

func (e *DefaultDirection) UnmarshalJSON(data []byte) error

type DefaultSubtitleAccessibility added in v0.28.0

type DefaultSubtitleAccessibility int

DefaultSubtitleAccessibility - The subtitles for the deaf or hard-of-hearing (SDH) searches mode (0 = Prefer non-SDH subtitles, 1 = Prefer SDH subtitles, 2 = Only show SDH subtitles, 3 = Only show non-SDH subtitles)

const (
	DefaultSubtitleAccessibilityPreferNonSdh DefaultSubtitleAccessibility = 0
	DefaultSubtitleAccessibilityPreferSdh    DefaultSubtitleAccessibility = 1
	DefaultSubtitleAccessibilityOnlySdh      DefaultSubtitleAccessibility = 2
	DefaultSubtitleAccessibilityOnlyNonSdh   DefaultSubtitleAccessibility = 3
)

func (DefaultSubtitleAccessibility) ToPointer added in v0.28.0

func (*DefaultSubtitleAccessibility) UnmarshalJSON added in v0.28.0

func (e *DefaultSubtitleAccessibility) UnmarshalJSON(data []byte) error

type DefaultSubtitleForced added in v0.28.0

type DefaultSubtitleForced int

DefaultSubtitleForced - The forced subtitles searches mode (0 = Prefer non-forced subtitles, 1 = Prefer forced subtitles, 2 = Only show forced subtitles, 3 = Only show non-forced subtitles)

const (
	DefaultSubtitleForcedPreferNonForced DefaultSubtitleForced = 0
	DefaultSubtitleForcedPreferForced    DefaultSubtitleForced = 1
	DefaultSubtitleForcedOnlyForced      DefaultSubtitleForced = 2
	DefaultSubtitleForcedOnlyNonForced   DefaultSubtitleForced = 3
)

func (DefaultSubtitleForced) ToPointer added in v0.28.0

func (*DefaultSubtitleForced) UnmarshalJSON added in v0.28.0

func (e *DefaultSubtitleForced) UnmarshalJSON(data []byte) error

type DefaultType added in v0.26.0

type DefaultType string
const (
	DefaultTypeStr     DefaultType = "str"
	DefaultTypeNumber  DefaultType = "number"
	DefaultTypeBoolean DefaultType = "boolean"
)

type Device added in v0.26.0

type Device struct {
	ChannelMapping []ChannelMapping `json:"ChannelMapping,omitempty"`
	Key            *string          `json:"key,omitempty"`
	LastSeenAt     *int64           `json:"lastSeenAt,omitempty"`
	Make           *string          `json:"make,omitempty"`
	Model          *string          `json:"model,omitempty"`
	ModelNumber    *string          `json:"modelNumber,omitempty"`
	Protocol       *string          `json:"protocol,omitempty"`
	Sources        *string          `json:"sources,omitempty"`
	State          *string          `json:"state,omitempty"`
	Status         *string          `json:"status,omitempty"`
	Tuners         *string          `json:"tuners,omitempty"`
	URI            *string          `json:"uri,omitempty"`
	UUID           *string          `json:"uuid,omitempty"`
}

func (*Device) GetChannelMapping added in v0.26.0

func (d *Device) GetChannelMapping() []ChannelMapping

func (*Device) GetKey added in v0.26.0

func (d *Device) GetKey() *string

func (*Device) GetLastSeenAt added in v0.26.0

func (d *Device) GetLastSeenAt() *int64

func (*Device) GetMake added in v0.26.0

func (d *Device) GetMake() *string

func (*Device) GetModel added in v0.26.0

func (d *Device) GetModel() *string

func (*Device) GetModelNumber added in v0.26.0

func (d *Device) GetModelNumber() *string

func (*Device) GetProtocol added in v0.26.0

func (d *Device) GetProtocol() *string

func (*Device) GetSources added in v0.26.0

func (d *Device) GetSources() *string

func (*Device) GetState added in v0.26.0

func (d *Device) GetState() *string

func (*Device) GetStatus added in v0.26.0

func (d *Device) GetStatus() *string

func (*Device) GetTuners added in v0.26.0

func (d *Device) GetTuners() *string

func (*Device) GetURI added in v0.26.0

func (d *Device) GetURI() *string

func (*Device) GetUUID added in v0.26.0

func (d *Device) GetUUID() *string

type Directory added in v0.26.0

type Directory struct {
	Title                *string        `json:"title,omitempty"`
	Type                 *string        `json:"type,omitempty"`
	Art                  *string        `json:"art,omitempty"`
	Content              *bool          `json:"content,omitempty"`
	Filter               *string        `json:"filter,omitempty"`
	HasPrefs             *bool          `json:"hasPrefs,omitempty"`
	HasStoreServices     *bool          `json:"hasStoreServices,omitempty"`
	HubKey               *string        `json:"hubKey,omitempty"`
	Identifier           *string        `json:"identifier,omitempty"`
	Key                  *string        `json:"key,omitempty"`
	LastAccessedAt       *int64         `json:"lastAccessedAt,omitempty"`
	Pivot                []Pivot        `json:"Pivot,omitempty"`
	Share                *int64         `json:"share,omitempty"`
	Thumb                *string        `json:"thumb,omitempty"`
	TitleBar             *string        `json:"titleBar,omitempty"`
	AdditionalProperties map[string]any `additionalProperties:"true" json:"-"`
}

func (*Directory) GetAdditionalProperties added in v0.26.0

func (d *Directory) GetAdditionalProperties() map[string]any

func (*Directory) GetArt added in v0.26.0

func (d *Directory) GetArt() *string

func (*Directory) GetContent added in v0.26.0

func (d *Directory) GetContent() *bool

func (*Directory) GetFilter added in v0.26.0

func (d *Directory) GetFilter() *string

func (*Directory) GetHasPrefs added in v0.26.0

func (d *Directory) GetHasPrefs() *bool

func (*Directory) GetHasStoreServices added in v0.26.0

func (d *Directory) GetHasStoreServices() *bool

func (*Directory) GetHubKey added in v0.26.0

func (d *Directory) GetHubKey() *string

func (*Directory) GetIdentifier added in v0.26.0

func (d *Directory) GetIdentifier() *string

func (*Directory) GetKey added in v0.26.0

func (d *Directory) GetKey() *string

func (*Directory) GetLastAccessedAt added in v0.26.0

func (d *Directory) GetLastAccessedAt() *int64

func (*Directory) GetPivot added in v0.26.0

func (d *Directory) GetPivot() []Pivot

func (*Directory) GetShare added in v0.26.0

func (d *Directory) GetShare() *int64

func (*Directory) GetThumb added in v0.26.0

func (d *Directory) GetThumb() *string

func (*Directory) GetTitle added in v0.26.0

func (d *Directory) GetTitle() *string

func (*Directory) GetTitleBar added in v0.26.0

func (d *Directory) GetTitleBar() *string

func (*Directory) GetType added in v0.26.0

func (d *Directory) GetType() *string

func (Directory) MarshalJSON added in v0.26.0

func (d Directory) MarshalJSON() ([]byte, error)

func (*Directory) UnmarshalJSON added in v0.26.0

func (d *Directory) UnmarshalJSON(data []byte) error

type Dvr added in v0.26.0

type Dvr struct {
	Device   []Device `json:"Device,omitempty"`
	Key      *string  `json:"key,omitempty"`
	Language *string  `json:"language,omitempty"`
	Lineup   *string  `json:"lineup,omitempty"`
	UUID     *string  `json:"uuid,omitempty"`
}

func (*Dvr) GetDevice added in v0.26.0

func (d *Dvr) GetDevice() []Device

func (*Dvr) GetKey added in v0.26.0

func (d *Dvr) GetKey() *string

func (*Dvr) GetLanguage added in v0.26.0

func (d *Dvr) GetLanguage() *string

func (*Dvr) GetLineup added in v0.26.0

func (d *Dvr) GetLineup() *string

func (*Dvr) GetUUID added in v0.26.0

func (d *Dvr) GetUUID() *string

type DvrRequestHandlerSlashGetResponses200 added in v0.26.0

type DvrRequestHandlerSlashGetResponses200 struct {
	MediaContainer *DvrRequestHandlerSlashGetResponses200MediaContainer `json:"MediaContainer,omitempty"`
}

DvrRequestHandlerSlashGetResponses200 - OK

func (*DvrRequestHandlerSlashGetResponses200) GetMediaContainer added in v0.26.0

type DvrRequestHandlerSlashGetResponses200MediaContainer added in v0.26.0

type DvrRequestHandlerSlashGetResponses200MediaContainer struct {
	MediaContainer *DvrRequestHandlerSlashGetResponses200MediaContainerMediaContainer `json:"MediaContainer,omitempty"`
	Dvr            []Dvr                                                              `json:"DVR,omitempty"`
}

func (*DvrRequestHandlerSlashGetResponses200MediaContainer) GetDvr added in v0.26.0

func (*DvrRequestHandlerSlashGetResponses200MediaContainer) GetMediaContainer added in v0.26.0

type DvrRequestHandlerSlashGetResponses200MediaContainerMediaContainer added in v0.26.0

type DvrRequestHandlerSlashGetResponses200MediaContainerMediaContainer struct {
	Identifier *string `json:"identifier,omitempty"`
	// The offset of where this container page starts among the total objects available. Also provided in the `X-Plex-Container-Start` header.
	//
	Offset *int64 `json:"offset,omitempty"`
	Size   *int64 `json:"size,omitempty"`
	// The total size of objects available. Also provided in the `X-Plex-Container-Total-Size` header.
	//
	TotalSize *int64 `json:"totalSize,omitempty"`
	// A status indicator. If present and non-zero, indicates an error
	Status *int64 `json:"status,omitempty"`
}

DvrRequestHandlerSlashGetResponses200MediaContainerMediaContainer - `MediaContainer` is the root element of most Plex API responses. It serves as a generic container for various types of content (Metadata, Hubs, Directories, etc.) and includes pagination information (offset, size, totalSize) when applicable. Common attributes: - identifier: Unique identifier for this container - size: Number of items in this response page - totalSize: Total number of items available (for pagination) - offset: Starting index of this page (for pagination) The container often "hoists" common attributes from its children. For example, if all tracks in a container share the same album title, the `parentTitle` attribute may appear on the MediaContainer rather than being repeated on each track.

func (*DvrRequestHandlerSlashGetResponses200MediaContainerMediaContainer) GetIdentifier added in v0.26.0

func (*DvrRequestHandlerSlashGetResponses200MediaContainerMediaContainer) GetOffset added in v0.26.0

func (*DvrRequestHandlerSlashGetResponses200MediaContainerMediaContainer) GetSize added in v0.26.0

func (*DvrRequestHandlerSlashGetResponses200MediaContainerMediaContainer) GetStatus added in v0.26.0

func (*DvrRequestHandlerSlashGetResponses200MediaContainerMediaContainer) GetTotalSize added in v0.26.0

type Filter added in v0.26.0

type Filter struct {
	// The title for the filter.
	Title   *string `json:"title,omitempty"`
	Type    *string `json:"type,omitempty"`
	Art     *string `json:"art,omitempty"`
	Content *bool   `json:"content,omitempty"`
	// This represents the filter name used for the filter, which can be used to construct complex media queries with.
	Filter           *string `json:"filter,omitempty"`
	HasPrefs         *bool   `json:"hasPrefs,omitempty"`
	HasStoreServices *bool   `json:"hasStoreServices,omitempty"`
	HubKey           *string `json:"hubKey,omitempty"`
	Identifier       *string `json:"identifier,omitempty"`
	// This provides the endpoint where the possible range of values for the filter can be retrieved (e.g. for a "Genre" filter, it returns a list of all the genres in the library). This will include a `type` argument that matches the metadata type of the Type element.
	Key            *string       `json:"key,omitempty"`
	LastAccessedAt *int64        `json:"lastAccessedAt,omitempty"`
	Pivot          []FilterPivot `json:"Pivot,omitempty"`
	Share          *int64        `json:"share,omitempty"`
	Thumb          *string       `json:"thumb,omitempty"`
	TitleBar       *string       `json:"titleBar,omitempty"`
	// This is either `string`, `integer`, or `boolean`, and describes the type of values used for the filter.
	FilterType           *string        `json:"filterType,omitempty"`
	AdditionalProperties map[string]any `additionalProperties:"true" json:"-"`
}

Filter - Each `Filter` object contains a description of the filter. Note that it is not an exhaustive list of the full media query language, but an important subset useful for top-level API.

func (*Filter) GetAdditionalProperties added in v0.26.0

func (f *Filter) GetAdditionalProperties() map[string]any

func (*Filter) GetArt added in v0.26.0

func (f *Filter) GetArt() *string

func (*Filter) GetContent added in v0.26.0

func (f *Filter) GetContent() *bool

func (*Filter) GetFilter added in v0.26.0

func (f *Filter) GetFilter() *string

func (*Filter) GetFilterType added in v0.26.0

func (f *Filter) GetFilterType() *string

func (*Filter) GetHasPrefs added in v0.26.0

func (f *Filter) GetHasPrefs() *bool

func (*Filter) GetHasStoreServices added in v0.26.0

func (f *Filter) GetHasStoreServices() *bool

func (*Filter) GetHubKey added in v0.26.0

func (f *Filter) GetHubKey() *string

func (*Filter) GetIdentifier added in v0.26.0

func (f *Filter) GetIdentifier() *string

func (*Filter) GetKey added in v0.26.0

func (f *Filter) GetKey() *string

func (*Filter) GetLastAccessedAt added in v0.26.0

func (f *Filter) GetLastAccessedAt() *int64

func (*Filter) GetPivot added in v0.26.0

func (f *Filter) GetPivot() []FilterPivot

func (*Filter) GetShare added in v0.26.0

func (f *Filter) GetShare() *int64

func (*Filter) GetThumb added in v0.26.0

func (f *Filter) GetThumb() *string

func (*Filter) GetTitle added in v0.26.0

func (f *Filter) GetTitle() *string

func (*Filter) GetTitleBar added in v0.26.0

func (f *Filter) GetTitleBar() *string

func (*Filter) GetType added in v0.26.0

func (f *Filter) GetType() *string

func (Filter) MarshalJSON added in v0.26.0

func (f Filter) MarshalJSON() ([]byte, error)

func (*Filter) UnmarshalJSON added in v0.26.0

func (f *Filter) UnmarshalJSON(data []byte) error

type FilterPivot added in v0.26.0

type FilterPivot struct {
	Title   *string `json:"title,omitempty"`
	Type    *string `json:"type,omitempty"`
	Context *string `json:"context,omitempty"`
	ID      *string `json:"id,omitempty"`
	Key     *string `json:"key,omitempty"`
	Symbol  *string `json:"symbol,omitempty"`
}

func (*FilterPivot) GetContext added in v0.26.0

func (f *FilterPivot) GetContext() *string

func (*FilterPivot) GetID added in v0.26.0

func (f *FilterPivot) GetID() *string

func (*FilterPivot) GetKey added in v0.26.0

func (f *FilterPivot) GetKey() *string

func (*FilterPivot) GetSymbol added in v0.26.0

func (f *FilterPivot) GetSymbol() *string

func (*FilterPivot) GetTitle added in v0.26.0

func (f *FilterPivot) GetTitle() *string

func (*FilterPivot) GetType added in v0.26.0

func (f *FilterPivot) GetType() *string

type Format added in v0.26.0

type Format string

Format - The image type

const (
	FormatJpg Format = "jpg"
	FormatPng Format = "png"
)

func (Format) ToPointer added in v0.26.0

func (e Format) ToPointer() *Format

func (*Format) UnmarshalJSON added in v0.26.0

func (e *Format) UnmarshalJSON(data []byte) error

type GetResponses200 added in v0.26.0

type GetResponses200 struct {
	MediaContainer *GetResponses200MediaContainer `json:"MediaContainer,omitempty"`
}

GetResponses200 - OK

func (*GetResponses200) GetMediaContainer added in v0.26.0

func (g *GetResponses200) GetMediaContainer() *GetResponses200MediaContainer

type GetResponses200Hub added in v0.26.0

type GetResponses200Hub struct {
	// Whether this hub is visible on the home screen
	//   - all: Visible to all users
	//   - none: Visible to no users
	//   - admin: Visible to only admin users
	//   - shared: Visible to shared users
	//
	HomeVisibility *HomeVisibility `json:"homeVisibility,omitempty"`
	// The identifier for this hub
	Identifier *string `json:"identifier,omitempty"`
	// Whether this hub is visible to admin user home
	PromotedToOwnHome *bool `json:"promotedToOwnHome,omitempty"`
	// Whether this hub is promoted to all for recommendations
	PromotedToRecommended *bool `json:"promotedToRecommended,omitempty"`
	// Whether this hub is visible to shared user's home
	PromotedToSharedHome *bool `json:"promotedToSharedHome,omitempty"`
	// The visibility of this hub in recommendations:
	//   - all: Visible to all users
	//   - none: Visible to no users
	//   - admin: Visible to only admin users
	//   - shared: Visible to shared users
	//
	RecommendationsVisibility *RecommendationsVisibility `json:"recommendationsVisibility,omitempty"`
	// The title of this hub
	Title *string `json:"title,omitempty"`
}

func (*GetResponses200Hub) GetHomeVisibility added in v0.26.0

func (g *GetResponses200Hub) GetHomeVisibility() *HomeVisibility

func (*GetResponses200Hub) GetIdentifier added in v0.26.0

func (g *GetResponses200Hub) GetIdentifier() *string

func (*GetResponses200Hub) GetPromotedToOwnHome added in v0.26.0

func (g *GetResponses200Hub) GetPromotedToOwnHome() *bool

func (*GetResponses200Hub) GetPromotedToRecommended added in v0.26.0

func (g *GetResponses200Hub) GetPromotedToRecommended() *bool

func (*GetResponses200Hub) GetPromotedToSharedHome added in v0.26.0

func (g *GetResponses200Hub) GetPromotedToSharedHome() *bool

func (*GetResponses200Hub) GetRecommendationsVisibility added in v0.26.0

func (g *GetResponses200Hub) GetRecommendationsVisibility() *RecommendationsVisibility

func (*GetResponses200Hub) GetTitle added in v0.26.0

func (g *GetResponses200Hub) GetTitle() *string

type GetResponses200MediaContainer added in v0.26.0

type GetResponses200MediaContainer struct {
	Identifier *string `json:"identifier,omitempty"`
	// The offset of where this container page starts among the total objects available. Also provided in the `X-Plex-Container-Start` header.
	//
	Offset *int64 `json:"offset,omitempty"`
	Size   *int64 `json:"size,omitempty"`
	// The total size of objects available. Also provided in the `X-Plex-Container-Total-Size` header.
	//
	TotalSize *int64               `json:"totalSize,omitempty"`
	Hub       []GetResponses200Hub `json:"Hub,omitempty"`
}

GetResponses200MediaContainer - `MediaContainer` is the root element of most Plex API responses. It serves as a generic container for various types of content (Metadata, Hubs, Directories, etc.) and includes pagination information (offset, size, totalSize) when applicable. Common attributes: - identifier: Unique identifier for this container - size: Number of items in this response page - totalSize: Total number of items available (for pagination) - offset: Starting index of this page (for pagination) The container often "hoists" common attributes from its children. For example, if all tracks in a container share the same album title, the `parentTitle` attribute may appear on the MediaContainer rather than being repeated on each track.

func (*GetResponses200MediaContainer) GetHub added in v0.26.0

func (*GetResponses200MediaContainer) GetIdentifier added in v0.26.0

func (g *GetResponses200MediaContainer) GetIdentifier() *string

func (*GetResponses200MediaContainer) GetOffset added in v0.26.0

func (g *GetResponses200MediaContainer) GetOffset() *int64

func (*GetResponses200MediaContainer) GetSize added in v0.26.0

func (g *GetResponses200MediaContainer) GetSize() *int64

func (*GetResponses200MediaContainer) GetTotalSize added in v0.26.0

func (g *GetResponses200MediaContainer) GetTotalSize() *int64

type Guids added in v0.28.0

type Guids struct {
	// The unique identifier for the Guid. Can be prefixed with imdb://, tmdb://, tvdb://
	//
	ID string `json:"id"`
}

func (*Guids) GetID added in v0.28.0

func (g *Guids) GetID() string

type HistoryAllGetResponses200 added in v0.26.0

type HistoryAllGetResponses200 struct {
	MediaContainer *HistoryAllGetResponses200MediaContainer `json:"MediaContainer,omitempty"`
}

HistoryAllGetResponses200 - OK

func (*HistoryAllGetResponses200) GetMediaContainer added in v0.26.0

type HistoryAllGetResponses200MediaContainer added in v0.26.0

type HistoryAllGetResponses200MediaContainer struct {
	Identifier *string `json:"identifier,omitempty"`
	// The offset of where this container page starts among the total objects available. Also provided in the `X-Plex-Container-Start` header.
	//
	Offset *int64 `json:"offset,omitempty"`
	Size   *int64 `json:"size,omitempty"`
	// The total size of objects available. Also provided in the `X-Plex-Container-Total-Size` header.
	//
	TotalSize *int64                              `json:"totalSize,omitempty"`
	Metadata  []HistoryAllGetResponses200Metadata `json:"Metadata,omitempty"`
}

HistoryAllGetResponses200MediaContainer - `MediaContainer` is the root element of most Plex API responses. It serves as a generic container for various types of content (Metadata, Hubs, Directories, etc.) and includes pagination information (offset, size, totalSize) when applicable. Common attributes: - identifier: Unique identifier for this container - size: Number of items in this response page - totalSize: Total number of items available (for pagination) - offset: Starting index of this page (for pagination) The container often "hoists" common attributes from its children. For example, if all tracks in a container share the same album title, the `parentTitle` attribute may appear on the MediaContainer rather than being repeated on each track.

func (*HistoryAllGetResponses200MediaContainer) GetIdentifier added in v0.26.0

func (h *HistoryAllGetResponses200MediaContainer) GetIdentifier() *string

func (*HistoryAllGetResponses200MediaContainer) GetMetadata added in v0.26.0

func (*HistoryAllGetResponses200MediaContainer) GetOffset added in v0.26.0

func (*HistoryAllGetResponses200MediaContainer) GetSize added in v0.26.0

func (*HistoryAllGetResponses200MediaContainer) GetTotalSize added in v0.26.0

type HistoryAllGetResponses200Metadata added in v0.26.0

type HistoryAllGetResponses200Metadata struct {
	// The account id of this playback
	AccountID *int64 `json:"accountID,omitempty"`
	// The device id which played the item
	DeviceID *int64 `json:"deviceID,omitempty"`
	// The key for this individual history item
	HistoryKey *string `json:"historyKey,omitempty"`
	// The metadata key for the item played
	Key *string `json:"key,omitempty"`
	// The library section id containing the item played
	LibrarySectionID *string `json:"librarySectionID,omitempty"`
	// The originally available at of the item played
	OriginallyAvailableAt *string `json:"originallyAvailableAt,omitempty"`
	// The rating key for the item played
	RatingKey *string `json:"ratingKey,omitempty"`
	// The thumb of the item played
	Thumb *string `json:"thumb,omitempty"`
	// The title of the item played
	Title *string `json:"title,omitempty"`
	// The metadata type of the item played
	Type *string `json:"type,omitempty"`
	// The time when the item was played
	ViewedAt *int64 `json:"viewedAt,omitempty"`
}

func (*HistoryAllGetResponses200Metadata) GetAccountID added in v0.26.0

func (h *HistoryAllGetResponses200Metadata) GetAccountID() *int64

func (*HistoryAllGetResponses200Metadata) GetDeviceID added in v0.26.0

func (h *HistoryAllGetResponses200Metadata) GetDeviceID() *int64

func (*HistoryAllGetResponses200Metadata) GetHistoryKey added in v0.26.0

func (h *HistoryAllGetResponses200Metadata) GetHistoryKey() *string

func (*HistoryAllGetResponses200Metadata) GetKey added in v0.26.0

func (*HistoryAllGetResponses200Metadata) GetLibrarySectionID added in v0.26.0

func (h *HistoryAllGetResponses200Metadata) GetLibrarySectionID() *string

func (*HistoryAllGetResponses200Metadata) GetOriginallyAvailableAt added in v0.26.0

func (h *HistoryAllGetResponses200Metadata) GetOriginallyAvailableAt() *string

func (*HistoryAllGetResponses200Metadata) GetRatingKey added in v0.26.0

func (h *HistoryAllGetResponses200Metadata) GetRatingKey() *string

func (*HistoryAllGetResponses200Metadata) GetThumb added in v0.26.0

func (*HistoryAllGetResponses200Metadata) GetTitle added in v0.26.0

func (*HistoryAllGetResponses200Metadata) GetType added in v0.26.0

func (*HistoryAllGetResponses200Metadata) GetViewedAt added in v0.26.0

func (h *HistoryAllGetResponses200Metadata) GetViewedAt() *int64

type HomeVisibility added in v0.26.0

type HomeVisibility string

HomeVisibility - Whether this hub is visible on the home screen

  • all: Visible to all users
  • none: Visible to no users
  • admin: Visible to only admin users
  • shared: Visible to shared users
const (
	HomeVisibilityAll    HomeVisibility = "all"
	HomeVisibilityNone   HomeVisibility = "none"
	HomeVisibilityAdmin  HomeVisibility = "admin"
	HomeVisibilityShared HomeVisibility = "shared"
)

func (HomeVisibility) ToPointer added in v0.26.0

func (e HomeVisibility) ToPointer() *HomeVisibility

func (*HomeVisibility) UnmarshalJSON added in v0.26.0

func (e *HomeVisibility) UnmarshalJSON(data []byte) error

type Hub added in v0.26.0

type Hub struct {
	// A title for this grouping of content
	Title *string `json:"title,omitempty"`
	// The type of the items contained in this hub, or possibly `mixed` if there are multiple types
	Type    *string `json:"type,omitempty"`
	Context *string `json:"context,omitempty"`
	// A unique identifier for the hub
	HubIdentifier *string `json:"hubIdentifier,omitempty"`
	// A key at which the exact content currently displayed can be fetched again. This is particularly important when a hub is marked as random and requesting the `key` may get different results. It's otherwise optional.
	//
	HubKey *string `json:"hubKey,omitempty"`
	// The key at which all of the content for this hub can be retrieved
	Key      *string    `json:"key,omitempty"`
	Metadata []Metadata `json:"Metadata,omitempty"`
	// "A boolean indicating that the hub contains more than what's included in the current response."
	//
	More *bool `json:"more,omitempty"`
	// Indicating if the hub should be promoted to the user's homescreen
	Promoted *bool `json:"promoted,omitempty"`
	// Indicating that the contents of the hub may change on each request
	Random *bool  `json:"random,omitempty"`
	Size   *int64 `json:"size,omitempty"`
	// A suggestion on how this hub's contents might be displayed by a client. Some examples include `hero`, `list`, `spotlight`, and `upsell`
	Style *string `json:"style,omitempty"`
	// The subtype of the items contained in this hub, or possibly `mixed` if there are multiple types
	Subtype              *string        `json:"subtype,omitempty"`
	TotalSize            *int64         `json:"totalSize,omitempty"`
	AdditionalProperties map[string]any `additionalProperties:"true" json:"-"`
}

func (*Hub) GetAdditionalProperties added in v0.26.0

func (h *Hub) GetAdditionalProperties() map[string]any

func (*Hub) GetContext added in v0.26.0

func (h *Hub) GetContext() *string

func (*Hub) GetHubIdentifier added in v0.26.0

func (h *Hub) GetHubIdentifier() *string

func (*Hub) GetHubKey added in v0.26.0

func (h *Hub) GetHubKey() *string

func (*Hub) GetKey added in v0.26.0

func (h *Hub) GetKey() *string

func (*Hub) GetMetadata added in v0.26.0

func (h *Hub) GetMetadata() []Metadata

func (*Hub) GetMore added in v0.26.0

func (h *Hub) GetMore() *bool

func (*Hub) GetPromoted added in v0.26.0

func (h *Hub) GetPromoted() *bool

func (*Hub) GetRandom added in v0.26.0

func (h *Hub) GetRandom() *bool

func (*Hub) GetSize added in v0.26.0

func (h *Hub) GetSize() *int64

func (*Hub) GetStyle added in v0.26.0

func (h *Hub) GetStyle() *string

func (*Hub) GetSubtype added in v0.26.0

func (h *Hub) GetSubtype() *string

func (*Hub) GetTitle added in v0.26.0

func (h *Hub) GetTitle() *string

func (*Hub) GetTotalSize added in v0.26.0

func (h *Hub) GetTotalSize() *int64

func (*Hub) GetType added in v0.26.0

func (h *Hub) GetType() *string

func (Hub) MarshalJSON added in v0.26.0

func (h Hub) MarshalJSON() ([]byte, error)

func (*Hub) UnmarshalJSON added in v0.26.0

func (h *Hub) UnmarshalJSON(data []byte) error

type Image added in v0.26.0

type Image struct {
	// Describes both the purpose and intended presentation of the image.
	Type *ImageType `json:"type,omitempty"`
	// Title to use for accessibility.
	Alt *string `json:"alt,omitempty"`
	// The relative path or absolute url for the image.
	URL *string `json:"url,omitempty"`
}

Image - Images such as movie posters and background artwork are represented by Image elements.

func (*Image) GetAlt added in v0.26.0

func (i *Image) GetAlt() *string

func (*Image) GetType added in v0.26.0

func (i *Image) GetType() *ImageType

func (*Image) GetURL added in v0.26.0

func (i *Image) GetURL() *string

type ImageType added in v0.26.0

type ImageType string

ImageType - Describes both the purpose and intended presentation of the image.

const (
	ImageTypeBackground       ImageType = "background"
	ImageTypeBackgroundSquare ImageType = "backgroundSquare"
	ImageTypeBanner           ImageType = "banner"
	ImageTypeCoverPoster      ImageType = "coverPoster"
	ImageTypeSnapshot         ImageType = "snapshot"
)

func (ImageType) ToPointer added in v0.26.0

func (e ImageType) ToPointer() *ImageType

func (*ImageType) UnmarshalJSON added in v0.26.0

func (e *ImageType) UnmarshalJSON(data []byte) error

type Items added in v0.26.0

type Items struct {
	// The title of the item (e.g. “300” or “The Simpsons”)
	Title string `json:"title"`
	// The type of the video item, such as `movie`, `episode`, or `clip`.
	Type string `json:"type"`
	// When present, contains the disc number for a track on multi-disc albums.
	AbsoluteIndex *int `json:"absoluteIndex,omitempty"`
	// In units of seconds since the epoch, returns the time at which the item was added to the library.
	AddedAt int64 `json:"addedAt"`
	// When present, the URL for the background artwork for the item.
	Art *string `json:"art,omitempty"`
	// Some rating systems separate reviewer ratings from audience ratings
	AudienceRating *float32 `json:"audienceRating,omitempty"`
	// A URI representing the image to be shown with the audience rating (e.g. rottentomatoes://image.rating.spilled).
	AudienceRatingImage *string `json:"audienceRatingImage,omitempty"`
	Autotag             []Tag   `json:"Autotag,omitempty"`
	// When present, the URL for a banner graphic for the item.
	Banner *string `json:"banner,omitempty"`
	// When present, indicates the source for the chapters in the media file. Can be media (the chapters were embedded in the media itself), agent (a metadata agent computed them), or mixed (a combination of the two).
	ChapterSource *string `json:"chapterSource,omitempty"`
	// The number of child items associated with this media item.
	ChildCount *int `json:"childCount,omitempty"`
	// When present, the URL for a composite image for descendent items (e.g. photo albums or playlists).
	Composite *string `json:"composite,omitempty"`
	// If known, the content rating (e.g. MPAA) for an item.
	ContentRating *string `json:"contentRating,omitempty"`
	Country       []Tag   `json:"Country,omitempty"`
	Director      []Tag   `json:"Director,omitempty"`
	// When present, the duration for the item, in units of milliseconds.
	Duration *int `json:"duration,omitempty"`
	// Typically only seen in metadata at a library's top level
	Filter []Filter `json:"Filter,omitempty"`
	Genre  []Tag    `json:"Genre,omitempty"`
	// The `art` of the grandparent
	GrandparentArt *string `json:"grandparentArt,omitempty"`
	// The GUID of the grandparent media item.
	GrandparentGUID *string `json:"grandparentGuid,omitempty"`
	// The `hero` of the grandparent
	GrandparentHero *string `json:"grandparentHero,omitempty"`
	// The `key` of the grandparent
	GrandparentKey *string `json:"grandparentKey,omitempty"`
	// The `ratingKey` of the grandparent
	GrandparentRatingKey *string `json:"grandparentRatingKey,omitempty"`
	// The `theme` of the grandparent
	GrandparentTheme *string `json:"grandparentTheme,omitempty"`
	// The `thumb` of the grandparent
	GrandparentThumb *string `json:"grandparentThumb,omitempty"`
	// The `title` of the grandparent
	GrandparentTitle *string `json:"grandparentTitle,omitempty"`
	// The globally unique identifier for the media item.
	GUID  *string      `json:"guid,omitempty"`
	Guids []ItemsGuids `json:"Guid,omitempty"`
	// When present, the URL for a hero image for the item.
	Hero  *string `json:"hero,omitempty"`
	Image []Image `json:"Image,omitempty"`
	// When present, this represents the episode number for episodes, season number for seasons, or track number for audio tracks.
	Index *int `json:"index,omitempty"`
	// The key at which the item's details can be fetched.  In many cases a metadata item may be passed without all the details (such as in a hub) and this key corresponds to the endpoint to fetch additional details.
	Key          string `json:"key"`
	LastViewedAt *int64 `json:"lastViewedAt,omitempty"`
	// For shows and seasons, contains the number of total episodes.
	LeafCount *int    `json:"leafCount,omitempty"`
	Media     []Media `json:"Media,omitempty"`
	// When present, in the format YYYY-MM-DD [HH:MM:SS] (the hours/minutes/seconds part is not always present). The air date, or a higher resolution release date for an item, depending on type. For example, episodes usually have air date like 1979-08-10 (we don't use epoch seconds because media existed prior to 1970). In some cases, recorded over-the-air content has higher resolution air date which includes a time component. Albums and movies may have day-resolution release dates as well.
	OriginallyAvailableAt *types.Date `json:"originallyAvailableAt,omitempty"`
	// When present, used to indicate an item's original title, e.g. a movie's foreign title.
	OriginalTitle *string `json:"originalTitle,omitempty"`
	// The GUID of the parent media item.
	ParentGUID *string `json:"parentGuid,omitempty"`
	// The `hero` of the parent
	ParentHero *string `json:"parentHero,omitempty"`
	// The `index` of the parent
	ParentIndex *int `json:"parentIndex,omitempty"`
	// The `key` of the parent
	ParentKey *string `json:"parentKey,omitempty"`
	// The `ratingKey` of the parent
	ParentRatingKey *string `json:"parentRatingKey,omitempty"`
	// The `thumb` of the parent
	ParentThumb *string `json:"parentThumb,omitempty"`
	// The `title` of the parent
	ParentTitle *string `json:"parentTitle,omitempty"`
	// Indicates that the item has a primary extra; for a movie, this is a trailer, and for a music track it is a music video. The URL points to the metadata details endpoint for the item.
	PrimaryExtraKey *string `json:"primaryExtraKey,omitempty"`
	// Prompt to give the user for this directory (such as `Search Movies`)
	Prompt *string `json:"prompt,omitempty"`
	// When present, the rating for the item. The exact meaning and representation depends on where the rating was sourced from.
	Rating      *float32 `json:"rating,omitempty"`
	RatingArray []Tag    `json:"Rating,omitempty"`
	// Number of ratings under this metadata
	RatingCount *int `json:"ratingCount,omitempty"`
	// When present, indicates an image to be shown with the rating. This is passed back as a small set of defined URI values, e.g. rottentomatoes://image.rating.rotten.
	RatingImage *string `json:"ratingImage,omitempty"`
	// This is the opaque string to be passed into timeline, scrobble, and rating endpoints to identify them.  While it often appears to be numeric, this is not guaranteed.
	RatingKey *string `json:"ratingKey,omitempty"`
	Role      []Tag   `json:"Role,omitempty"`
	// Indicates this is a search directory
	Search *bool `json:"search,omitempty"`
	// Used by old clients to provide nested menus allowing for primative (but structured) navigation.
	Secondary *bool `json:"secondary,omitempty"`
	// When found on a show item, indicates that the children (seasons) should be skipped in favor of the grandchildren (episodes). Useful for mini-series, etc.
	SkipChildren *bool `json:"skipChildren,omitempty"`
	// When present on an episode or track item, indicates parent should be skipped in favor of grandparent (show).
	SkipParent *bool `json:"skipParent,omitempty"`
	// Typically only seen in metadata at a library's top level
	Sort []Sort `json:"Sort,omitempty"`
	// When present, the studio or label which produced an item (e.g. movie studio for movies, record label for albums).
	Studio *string `json:"studio,omitempty"`
	// The subtype of the video item, such as `photo` when the video item is in a photo library
	Subtype *string `json:"subtype,omitempty"`
	// When present, the extended textual information about the item (e.g. movie plot, artist biography, album review).
	Summary *string `json:"summary,omitempty"`
	// When present, a pithy one-liner about the item (usually only seen for movies).
	Tagline *string `json:"tagline,omitempty"`
	// When present, the URL for theme music for the item (usually only for TV shows).
	Theme *string `json:"theme,omitempty"`
	// When present, the URL for the poster or thumbnail for the item. When available for types like movie, it will be the poster graphic, but fall-back to the extracted media thumbnail.
	Thumb *string `json:"thumb,omitempty"`
	// Whene present, this is the string used for sorting the item. It's usually the title with any leading articles removed (e.g. “Simpsons”).
	TitleSort *string `json:"titleSort,omitempty"`
	// In units of seconds since the epoch, returns the time at which the item was last changed (e.g. had its metadata updated).
	UpdatedAt *int64 `json:"updatedAt,omitempty"`
	// When the user has rated an item, this contains the user rating
	UserRating *float32 `json:"userRating,omitempty"`
	// When a users has completed watched or listened to an item, this attribute contains the number of consumptions.
	ViewCount *int `json:"viewCount,omitempty"`
	// For shows and seasons, contains the number of viewed episodes.
	ViewedLeafCount *int `json:"viewedLeafCount,omitempty"`
	// When a user is in the process of viewing or listening to this item, this attribute contains the current offset, in units of milliseconds.
	ViewOffset *int  `json:"viewOffset,omitempty"`
	Writer     []Tag `json:"Writer,omitempty"`
	// When present, the year associated with the item's release (e.g. release year for a movie).
	Year                 *int           `json:"year,omitempty"`
	MetadataItem         []Items        `json:"MetadataItem,omitempty"`
	AdditionalProperties map[string]any `additionalProperties:"true" json:"-"`
}

Items in a library are referred to as "metadata items." These metadata items are distinct from "media items" which represent actual instances of media that can be consumed. Consider a TV library that has a single video file in it for a particular episode of a show. The library has a single media item, but it has three metadata items: one for the show, one for the season, and one for the episode. Consider a movie library that has two video files in it: the same movie, but two different resolutions. The library has a single metadata item for the movie, but that metadata item has two media items, one for each resolution. Additionally a "media item" will have one or more "media parts" where the the parts are intended to be watched together, such as a CD1 and CD2 parts of the same movie.

Note that when a metadata item has multiple media items, those media items should be isomorphic. That is, a 4K version and 1080p version of a movie are different versions of the same movie. They have the same duration, same summary, same rating, etc. and they can generally be considered interchangeable. A theatrical release vs. director's cut vs. unrated version on the other hand would be separate metadata items.

Metadata items can often live in a hierarchy with relationships between them. For example, the metadata item for an episodes is associated with a season metadata item which is associated with a show metadata item. A similar hierarchy exists with track, album, and artist and photos and photo album. The relationships may be expressed via relative terms and absolute terms. For example, "leaves" refer to metadata items which has associated media (there is no media for a season nor show). A show will have "children" in the form of seasons and a season will have "children" in the form of episodes and episodes have "parent" in the form of a season which has a "parent" in the form of a show. Similarly, a show has "grandchildren" in the form of episodse and an episode has a "grandparent" in the form of a show.

func (*Items) GetAbsoluteIndex added in v0.26.0

func (i *Items) GetAbsoluteIndex() *int

func (*Items) GetAddedAt added in v0.26.0

func (i *Items) GetAddedAt() int64

func (*Items) GetAdditionalProperties added in v0.26.0

func (i *Items) GetAdditionalProperties() map[string]any

func (*Items) GetArt added in v0.26.0

func (i *Items) GetArt() *string

func (*Items) GetAudienceRating added in v0.26.0

func (i *Items) GetAudienceRating() *float32

func (*Items) GetAudienceRatingImage added in v0.26.0

func (i *Items) GetAudienceRatingImage() *string

func (*Items) GetAutotag added in v0.26.0

func (i *Items) GetAutotag() []Tag

func (*Items) GetBanner added in v0.26.0

func (i *Items) GetBanner() *string

func (*Items) GetChapterSource added in v0.26.0

func (i *Items) GetChapterSource() *string

func (*Items) GetChildCount added in v0.28.0

func (i *Items) GetChildCount() *int

func (*Items) GetComposite added in v0.26.0

func (i *Items) GetComposite() *string

func (*Items) GetContentRating added in v0.26.0

func (i *Items) GetContentRating() *string

func (*Items) GetCountry added in v0.26.0

func (i *Items) GetCountry() []Tag

func (*Items) GetDirector added in v0.26.0

func (i *Items) GetDirector() []Tag

func (*Items) GetDuration added in v0.26.0

func (i *Items) GetDuration() *int

func (*Items) GetFilter added in v0.26.0

func (i *Items) GetFilter() []Filter

func (*Items) GetGUID added in v0.26.0

func (i *Items) GetGUID() *string

func (*Items) GetGenre added in v0.26.0

func (i *Items) GetGenre() []Tag

func (*Items) GetGrandparentArt added in v0.26.0

func (i *Items) GetGrandparentArt() *string

func (*Items) GetGrandparentGUID added in v0.28.0

func (i *Items) GetGrandparentGUID() *string

func (*Items) GetGrandparentHero added in v0.26.0

func (i *Items) GetGrandparentHero() *string

func (*Items) GetGrandparentKey added in v0.26.0

func (i *Items) GetGrandparentKey() *string

func (*Items) GetGrandparentRatingKey added in v0.26.0

func (i *Items) GetGrandparentRatingKey() *string

func (*Items) GetGrandparentTheme added in v0.26.0

func (i *Items) GetGrandparentTheme() *string

func (*Items) GetGrandparentThumb added in v0.26.0

func (i *Items) GetGrandparentThumb() *string

func (*Items) GetGrandparentTitle added in v0.26.0

func (i *Items) GetGrandparentTitle() *string

func (*Items) GetGuids added in v0.28.0

func (i *Items) GetGuids() []ItemsGuids

func (*Items) GetHero added in v0.26.0

func (i *Items) GetHero() *string

func (*Items) GetImage added in v0.26.0

func (i *Items) GetImage() []Image

func (*Items) GetIndex added in v0.26.0

func (i *Items) GetIndex() *int

func (*Items) GetKey added in v0.26.0

func (i *Items) GetKey() string

func (*Items) GetLastViewedAt added in v0.26.0

func (i *Items) GetLastViewedAt() *int64

func (*Items) GetLeafCount added in v0.26.0

func (i *Items) GetLeafCount() *int

func (*Items) GetMedia added in v0.26.0

func (i *Items) GetMedia() []Media

func (*Items) GetMetadataItem added in v0.26.0

func (i *Items) GetMetadataItem() []Items

func (*Items) GetOriginalTitle added in v0.26.0

func (i *Items) GetOriginalTitle() *string

func (*Items) GetOriginallyAvailableAt added in v0.26.0

func (i *Items) GetOriginallyAvailableAt() *types.Date

func (*Items) GetParentGUID added in v0.28.0

func (i *Items) GetParentGUID() *string

func (*Items) GetParentHero added in v0.26.0

func (i *Items) GetParentHero() *string

func (*Items) GetParentIndex added in v0.26.0

func (i *Items) GetParentIndex() *int

func (*Items) GetParentKey added in v0.26.0

func (i *Items) GetParentKey() *string

func (*Items) GetParentRatingKey added in v0.26.0

func (i *Items) GetParentRatingKey() *string

func (*Items) GetParentThumb added in v0.26.0

func (i *Items) GetParentThumb() *string

func (*Items) GetParentTitle added in v0.26.0

func (i *Items) GetParentTitle() *string

func (*Items) GetPrimaryExtraKey added in v0.26.0

func (i *Items) GetPrimaryExtraKey() *string

func (*Items) GetPrompt added in v0.26.0

func (i *Items) GetPrompt() *string

func (*Items) GetRating added in v0.26.0

func (i *Items) GetRating() *float32

func (*Items) GetRatingArray added in v0.26.0

func (i *Items) GetRatingArray() []Tag

func (*Items) GetRatingCount added in v0.26.0

func (i *Items) GetRatingCount() *int

func (*Items) GetRatingImage added in v0.26.0

func (i *Items) GetRatingImage() *string

func (*Items) GetRatingKey added in v0.26.0

func (i *Items) GetRatingKey() *string

func (*Items) GetRole added in v0.26.0

func (i *Items) GetRole() []Tag

func (*Items) GetSearch added in v0.26.0

func (i *Items) GetSearch() *bool

func (*Items) GetSecondary added in v0.26.0

func (i *Items) GetSecondary() *bool

func (*Items) GetSkipChildren added in v0.26.0

func (i *Items) GetSkipChildren() *bool

func (*Items) GetSkipParent added in v0.26.0

func (i *Items) GetSkipParent() *bool

func (*Items) GetSort added in v0.26.0

func (i *Items) GetSort() []Sort

func (*Items) GetStudio added in v0.26.0

func (i *Items) GetStudio() *string

func (*Items) GetSubtype added in v0.26.0

func (i *Items) GetSubtype() *string

func (*Items) GetSummary added in v0.26.0

func (i *Items) GetSummary() *string

func (*Items) GetTagline added in v0.26.0

func (i *Items) GetTagline() *string

func (*Items) GetTheme added in v0.26.0

func (i *Items) GetTheme() *string

func (*Items) GetThumb added in v0.26.0

func (i *Items) GetThumb() *string

func (*Items) GetTitle added in v0.26.0

func (i *Items) GetTitle() string

func (*Items) GetTitleSort added in v0.26.0

func (i *Items) GetTitleSort() *string

func (*Items) GetType added in v0.26.0

func (i *Items) GetType() string

func (*Items) GetUpdatedAt added in v0.26.0

func (i *Items) GetUpdatedAt() *int64

func (*Items) GetUserRating added in v0.26.0

func (i *Items) GetUserRating() *float32

func (*Items) GetViewCount added in v0.26.0

func (i *Items) GetViewCount() *int

func (*Items) GetViewOffset added in v0.26.0

func (i *Items) GetViewOffset() *int

func (*Items) GetViewedLeafCount added in v0.26.0

func (i *Items) GetViewedLeafCount() *int

func (*Items) GetWriter added in v0.26.0

func (i *Items) GetWriter() []Tag

func (*Items) GetYear added in v0.26.0

func (i *Items) GetYear() *int

func (Items) MarshalJSON added in v0.26.0

func (i Items) MarshalJSON() ([]byte, error)

func (*Items) UnmarshalJSON added in v0.26.0

func (i *Items) UnmarshalJSON(data []byte) error

type ItemsGuids added in v0.28.0

type ItemsGuids struct {
	// The unique identifier for the Guid. Can be prefixed with imdb://, tmdb://, tvdb://
	//
	ID string `json:"id"`
}

func (*ItemsGuids) GetID added in v0.28.0

func (i *ItemsGuids) GetID() string

type LibrarySection added in v0.26.0

type LibrarySection struct {
	// The title of the library
	Title *string `json:"title,omitempty"`
	// The type of media content in the Plex library. This can represent videos, music, or photos.
	//
	Type             MediaTypeString `json:"type"`
	Agent            *string         `json:"agent,omitempty"`
	AllowSync        *bool           `json:"allowSync,omitempty"`
	Art              *string         `json:"art,omitempty"`
	Composite        *string         `json:"composite,omitempty"`
	Content          *bool           `json:"content,omitempty"`
	ContentChangedAt *int64          `json:"contentChangedAt,omitempty"`
	CreatedAt        *int64          `json:"createdAt,omitempty"`
	Directory        *bool           `json:"directory,omitempty"`
	// Indicates whether this section has filtering capabilities
	Filters  *bool   `json:"filters,omitempty"`
	Hidden   *bool   `json:"hidden,omitempty"`
	Key      *string `json:"key,omitempty"`
	Language string  `json:"language"`
	// The universally unique identifier for the library.
	UUID     string                   `json:"uuid"`
	Location []LibrarySectionLocation `json:"Location,omitempty"`
	// Indicates whether this library section is currently scanning
	Refreshing *bool   `json:"refreshing,omitempty"`
	ScannedAt  *int64  `json:"scannedAt,omitempty"`
	Scanner    *string `json:"scanner,omitempty"`
	Thumb      *string `json:"thumb,omitempty"`
	UpdatedAt  *int64  `json:"updatedAt,omitempty"`
}

func (*LibrarySection) GetAgent added in v0.26.0

func (l *LibrarySection) GetAgent() *string

func (*LibrarySection) GetAllowSync added in v0.26.0

func (l *LibrarySection) GetAllowSync() *bool

func (*LibrarySection) GetArt added in v0.26.0

func (l *LibrarySection) GetArt() *string

func (*LibrarySection) GetComposite added in v0.26.0

func (l *LibrarySection) GetComposite() *string

func (*LibrarySection) GetContent added in v0.26.0

func (l *LibrarySection) GetContent() *bool

func (*LibrarySection) GetContentChangedAt added in v0.26.0

func (l *LibrarySection) GetContentChangedAt() *int64

func (*LibrarySection) GetCreatedAt added in v0.26.0

func (l *LibrarySection) GetCreatedAt() *int64

func (*LibrarySection) GetDirectory added in v0.26.0

func (l *LibrarySection) GetDirectory() *bool

func (*LibrarySection) GetFilters added in v0.26.0

func (l *LibrarySection) GetFilters() *bool

func (*LibrarySection) GetHidden added in v0.26.0

func (l *LibrarySection) GetHidden() *bool

func (*LibrarySection) GetKey added in v0.26.0

func (l *LibrarySection) GetKey() *string

func (*LibrarySection) GetLanguage added in v0.26.0

func (l *LibrarySection) GetLanguage() string

func (*LibrarySection) GetLocation added in v0.26.0

func (l *LibrarySection) GetLocation() []LibrarySectionLocation

func (*LibrarySection) GetRefreshing added in v0.26.0

func (l *LibrarySection) GetRefreshing() *bool

func (*LibrarySection) GetScannedAt added in v0.26.0

func (l *LibrarySection) GetScannedAt() *int64

func (*LibrarySection) GetScanner added in v0.26.0

func (l *LibrarySection) GetScanner() *string

func (*LibrarySection) GetThumb added in v0.26.0

func (l *LibrarySection) GetThumb() *string

func (*LibrarySection) GetTitle added in v0.26.0

func (l *LibrarySection) GetTitle() *string

func (*LibrarySection) GetType added in v0.26.0

func (l *LibrarySection) GetType() MediaTypeString

func (*LibrarySection) GetUUID added in v0.28.0

func (l *LibrarySection) GetUUID() string

func (*LibrarySection) GetUpdatedAt added in v0.26.0

func (l *LibrarySection) GetUpdatedAt() *int64

type LibrarySectionLocation added in v0.26.0

type LibrarySectionLocation struct {
	ID *int64 `json:"id,omitempty"`
	// The path of where this directory exists on disk
	Path any `json:"path,omitempty"`
}

LibrarySectionLocation - Represents a top-level location on disk where media in this library section is stored

func (*LibrarySectionLocation) GetID added in v0.26.0

func (l *LibrarySectionLocation) GetID() *int64

func (*LibrarySectionLocation) GetPath added in v0.26.0

func (l *LibrarySectionLocation) GetPath() any

type LibrarySections added in v0.27.0

type LibrarySections struct {
	MediaContainer *LibrarySectionsMediaContainer `json:"MediaContainer,omitempty"`
}

LibrarySections - OK

func (*LibrarySections) GetMediaContainer added in v0.27.0

func (l *LibrarySections) GetMediaContainer() *LibrarySectionsMediaContainer

type LibrarySectionsDirectory added in v0.27.0

type LibrarySectionsDirectory struct {
	Count *int64 `json:"count,omitempty"`
	// The key where this directory is found
	Key   *string `json:"key,omitempty"`
	Title *string `json:"title,omitempty"`
}

func (*LibrarySectionsDirectory) GetCount added in v0.27.0

func (l *LibrarySectionsDirectory) GetCount() *int64

func (*LibrarySectionsDirectory) GetKey added in v0.27.0

func (l *LibrarySectionsDirectory) GetKey() *string

func (*LibrarySectionsDirectory) GetTitle added in v0.27.0

func (l *LibrarySectionsDirectory) GetTitle() *string

type LibrarySectionsMediaContainer added in v0.27.0

type LibrarySectionsMediaContainer struct {
	Identifier *string `json:"identifier,omitempty"`
	// The offset of where this container page starts among the total objects available. Also provided in the `X-Plex-Container-Start` header.
	//
	Offset *int64 `json:"offset,omitempty"`
	Size   *int64 `json:"size,omitempty"`
	// The total size of objects available. Also provided in the `X-Plex-Container-Total-Size` header.
	//
	TotalSize            *int64  `json:"totalSize,omitempty"`
	AllowCameraUpload    *bool   `json:"allowCameraUpload,omitempty"`
	AllowChannelAccess   *bool   `json:"allowChannelAccess,omitempty"`
	AllowMediaDeletion   *bool   `json:"allowMediaDeletion,omitempty"`
	AllowSharing         *bool   `json:"allowSharing,omitempty"`
	AllowSync            *bool   `json:"allowSync,omitempty"`
	AllowTuners          *bool   `json:"allowTuners,omitempty"`
	BackgroundProcessing *bool   `json:"backgroundProcessing,omitempty"`
	Certificate          *bool   `json:"certificate,omitempty"`
	CompanionProxy       *bool   `json:"companionProxy,omitempty"`
	CountryCode          *string `json:"countryCode,omitempty"`
	Diagnostics          *string `json:"diagnostics,omitempty"`
	EventStream          *bool   `json:"eventStream,omitempty"`
	FriendlyName         *string `json:"friendlyName,omitempty"`
	HubSearch            *bool   `json:"hubSearch,omitempty"`
	ItemClusters         *bool   `json:"itemClusters,omitempty"`
	Livetv               *int64  `json:"livetv,omitempty"`
	MachineIdentifier    any     `json:"machineIdentifier,omitempty"`
	MediaProviders       *bool   `json:"mediaProviders,omitempty"`
	Multiuser            *bool   `json:"multiuser,omitempty"`
	MusicAnalysis        *int64  `json:"musicAnalysis,omitempty"`
	MyPlex               *bool   `json:"myPlex,omitempty"`
	MyPlexMappingState   any     `json:"myPlexMappingState,omitempty"`
	MyPlexSigninState    any     `json:"myPlexSigninState,omitempty"`
	MyPlexSubscription   *bool   `json:"myPlexSubscription,omitempty"`
	MyPlexUsername       *string `json:"myPlexUsername,omitempty"`
	OfflineTranscode     any     `json:"offlineTranscode,omitempty"`
	// A comma-separated list of features which are enabled for the server owner
	OwnerFeatures                 *string `json:"ownerFeatures,omitempty"`
	Platform                      *string `json:"platform,omitempty"`
	PlatformVersion               *string `json:"platformVersion,omitempty"`
	PluginHost                    *bool   `json:"pluginHost,omitempty"`
	PushNotifications             *bool   `json:"pushNotifications,omitempty"`
	ReadOnlyLibraries             *bool   `json:"readOnlyLibraries,omitempty"`
	StreamingBrainABRVersion      *int64  `json:"streamingBrainABRVersion,omitempty"`
	StreamingBrainVersion         *int64  `json:"streamingBrainVersion,omitempty"`
	Sync                          *bool   `json:"sync,omitempty"`
	TranscoderActiveVideoSessions *int64  `json:"transcoderActiveVideoSessions,omitempty"`
	TranscoderAudio               *bool   `json:"transcoderAudio,omitempty"`
	TranscoderLyrics              *bool   `json:"transcoderLyrics,omitempty"`
	TranscoderPhoto               *bool   `json:"transcoderPhoto,omitempty"`
	TranscoderSubtitles           *bool   `json:"transcoderSubtitles,omitempty"`
	TranscoderVideo               *bool   `json:"transcoderVideo,omitempty"`
	// The suggested video quality bitrates to present to the user
	TranscoderVideoBitrates  any     `json:"transcoderVideoBitrates,omitempty"`
	TranscoderVideoQualities *string `json:"transcoderVideoQualities,omitempty"`
	// The suggested video resolutions to the above quality bitrates
	TranscoderVideoResolutions any                        `json:"transcoderVideoResolutions,omitempty"`
	UpdatedAt                  *int64                     `json:"updatedAt,omitempty"`
	Updater                    *bool                      `json:"updater,omitempty"`
	Version                    *string                    `json:"version,omitempty"`
	VoiceSearch                *bool                      `json:"voiceSearch,omitempty"`
	Directory                  []LibrarySectionsDirectory `json:"Directory,omitempty"`
}

LibrarySectionsMediaContainer - `MediaContainer` is the root element of most Plex API responses. It serves as a generic container for various types of content (Metadata, Hubs, Directories, etc.) and includes pagination information (offset, size, totalSize) when applicable. Common attributes: - identifier: Unique identifier for this container - size: Number of items in this response page - totalSize: Total number of items available (for pagination) - offset: Starting index of this page (for pagination) The container often "hoists" common attributes from its children. For example, if all tracks in a container share the same album title, the `parentTitle` attribute may appear on the MediaContainer rather than being repeated on each track.

func (*LibrarySectionsMediaContainer) GetAllowCameraUpload added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetAllowCameraUpload() *bool

func (*LibrarySectionsMediaContainer) GetAllowChannelAccess added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetAllowChannelAccess() *bool

func (*LibrarySectionsMediaContainer) GetAllowMediaDeletion added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetAllowMediaDeletion() *bool

func (*LibrarySectionsMediaContainer) GetAllowSharing added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetAllowSharing() *bool

func (*LibrarySectionsMediaContainer) GetAllowSync added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetAllowSync() *bool

func (*LibrarySectionsMediaContainer) GetAllowTuners added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetAllowTuners() *bool

func (*LibrarySectionsMediaContainer) GetBackgroundProcessing added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetBackgroundProcessing() *bool

func (*LibrarySectionsMediaContainer) GetCertificate added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetCertificate() *bool

func (*LibrarySectionsMediaContainer) GetCompanionProxy added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetCompanionProxy() *bool

func (*LibrarySectionsMediaContainer) GetCountryCode added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetCountryCode() *string

func (*LibrarySectionsMediaContainer) GetDiagnostics added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetDiagnostics() *string

func (*LibrarySectionsMediaContainer) GetDirectory added in v0.27.0

func (*LibrarySectionsMediaContainer) GetEventStream added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetEventStream() *bool

func (*LibrarySectionsMediaContainer) GetFriendlyName added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetFriendlyName() *string

func (*LibrarySectionsMediaContainer) GetHubSearch added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetHubSearch() *bool

func (*LibrarySectionsMediaContainer) GetIdentifier added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetIdentifier() *string

func (*LibrarySectionsMediaContainer) GetItemClusters added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetItemClusters() *bool

func (*LibrarySectionsMediaContainer) GetLivetv added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetLivetv() *int64

func (*LibrarySectionsMediaContainer) GetMachineIdentifier added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetMachineIdentifier() any

func (*LibrarySectionsMediaContainer) GetMediaProviders added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetMediaProviders() *bool

func (*LibrarySectionsMediaContainer) GetMultiuser added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetMultiuser() *bool

func (*LibrarySectionsMediaContainer) GetMusicAnalysis added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetMusicAnalysis() *int64

func (*LibrarySectionsMediaContainer) GetMyPlex added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetMyPlex() *bool

func (*LibrarySectionsMediaContainer) GetMyPlexMappingState added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetMyPlexMappingState() any

func (*LibrarySectionsMediaContainer) GetMyPlexSigninState added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetMyPlexSigninState() any

func (*LibrarySectionsMediaContainer) GetMyPlexSubscription added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetMyPlexSubscription() *bool

func (*LibrarySectionsMediaContainer) GetMyPlexUsername added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetMyPlexUsername() *string

func (*LibrarySectionsMediaContainer) GetOfflineTranscode added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetOfflineTranscode() any

func (*LibrarySectionsMediaContainer) GetOffset added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetOffset() *int64

func (*LibrarySectionsMediaContainer) GetOwnerFeatures added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetOwnerFeatures() *string

func (*LibrarySectionsMediaContainer) GetPlatform added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetPlatform() *string

func (*LibrarySectionsMediaContainer) GetPlatformVersion added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetPlatformVersion() *string

func (*LibrarySectionsMediaContainer) GetPluginHost added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetPluginHost() *bool

func (*LibrarySectionsMediaContainer) GetPushNotifications added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetPushNotifications() *bool

func (*LibrarySectionsMediaContainer) GetReadOnlyLibraries added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetReadOnlyLibraries() *bool

func (*LibrarySectionsMediaContainer) GetSize added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetSize() *int64

func (*LibrarySectionsMediaContainer) GetStreamingBrainABRVersion added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetStreamingBrainABRVersion() *int64

func (*LibrarySectionsMediaContainer) GetStreamingBrainVersion added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetStreamingBrainVersion() *int64

func (*LibrarySectionsMediaContainer) GetSync added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetSync() *bool

func (*LibrarySectionsMediaContainer) GetTotalSize added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetTotalSize() *int64

func (*LibrarySectionsMediaContainer) GetTranscoderActiveVideoSessions added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetTranscoderActiveVideoSessions() *int64

func (*LibrarySectionsMediaContainer) GetTranscoderAudio added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetTranscoderAudio() *bool

func (*LibrarySectionsMediaContainer) GetTranscoderLyrics added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetTranscoderLyrics() *bool

func (*LibrarySectionsMediaContainer) GetTranscoderPhoto added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetTranscoderPhoto() *bool

func (*LibrarySectionsMediaContainer) GetTranscoderSubtitles added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetTranscoderSubtitles() *bool

func (*LibrarySectionsMediaContainer) GetTranscoderVideo added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetTranscoderVideo() *bool

func (*LibrarySectionsMediaContainer) GetTranscoderVideoBitrates added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetTranscoderVideoBitrates() any

func (*LibrarySectionsMediaContainer) GetTranscoderVideoQualities added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetTranscoderVideoQualities() *string

func (*LibrarySectionsMediaContainer) GetTranscoderVideoResolutions added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetTranscoderVideoResolutions() any

func (*LibrarySectionsMediaContainer) GetUpdatedAt added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetUpdatedAt() *int64

func (*LibrarySectionsMediaContainer) GetUpdater added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetUpdater() *bool

func (*LibrarySectionsMediaContainer) GetVersion added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetVersion() *string

func (*LibrarySectionsMediaContainer) GetVoiceSearch added in v0.27.0

func (l *LibrarySectionsMediaContainer) GetVoiceSearch() *bool

type Lineup added in v0.26.0

type Lineup struct {
	Title *string `json:"title,omitempty"`
	// The type of this object (`lineup` in this case)
	Type *string `json:"type,omitempty"`
	// - `-1`: N/A
	// - `0`: Over the air
	// - `1`: Cable
	// - `2`: Satellite
	// - `3`: IPTV
	// - `4`: Virtual
	//
	LineupType *LineupType `json:"lineupType,omitempty"`
	Location   *string     `json:"location,omitempty"`
	// The uuid of this lineup
	UUID *string `json:"uuid,omitempty"`
}

func (*Lineup) GetLineupType added in v0.26.0

func (l *Lineup) GetLineupType() *LineupType

func (*Lineup) GetLocation added in v0.26.0

func (l *Lineup) GetLocation() *string

func (*Lineup) GetTitle added in v0.26.0

func (l *Lineup) GetTitle() *string

func (*Lineup) GetType added in v0.26.0

func (l *Lineup) GetType() *string

func (*Lineup) GetUUID added in v0.26.0

func (l *Lineup) GetUUID() *string

type LineupType added in v0.26.0

type LineupType int64

LineupType - - `-1`: N/A - `0`: Over the air - `1`: Cable - `2`: Satellite - `3`: IPTV - `4`: Virtual

const (
	LineupTypeMinus1 LineupType = -1
	LineupTypeZero   LineupType = 0
	LineupTypeOne    LineupType = 1
	LineupTypeTwo    LineupType = 2
	LineupTypeThree  LineupType = 3
	LineupTypeFour   LineupType = 4
)

func (LineupType) ToPointer added in v0.26.0

func (e LineupType) ToPointer() *LineupType

func (*LineupType) UnmarshalJSON added in v0.26.0

func (e *LineupType) UnmarshalJSON(data []byte) error

type Location added in v0.26.0

type Location string
const (
	LocationLan      Location = "lan"
	LocationWan      Location = "wan"
	LocationCellular Location = "cellular"
)

func (Location) ToPointer added in v0.26.0

func (e Location) ToPointer() *Location

func (*Location) UnmarshalJSON added in v0.26.0

func (e *Location) UnmarshalJSON(data []byte) error

type MailingListStatus added in v0.28.0

type MailingListStatus string

MailingListStatus - Your current mailing list status

const (
	MailingListStatusActive       MailingListStatus = "active"
	MailingListStatusUnsubscribed MailingListStatus = "unsubscribed"
	MailingListStatusRemoved      MailingListStatus = "removed"
)

func (MailingListStatus) ToPointer added in v0.28.0

func (e MailingListStatus) ToPointer() *MailingListStatus

func (*MailingListStatus) UnmarshalJSON added in v0.28.0

func (e *MailingListStatus) UnmarshalJSON(data []byte) error

type Media added in v0.26.0

type Media struct {
	AspectRatio           *float32       `json:"aspectRatio,omitempty"`
	AudioChannels         *int           `json:"audioChannels,omitempty"`
	AudioCodec            *string        `json:"audioCodec,omitempty"`
	AudioProfile          *string        `json:"audioProfile,omitempty"`
	Bitrate               *int           `json:"bitrate,omitempty"`
	Container             *string        `json:"container,omitempty"`
	Duration              *int           `json:"duration,omitempty"`
	Has64bitOffsets       *bool          `json:"has64bitOffsets,omitempty"`
	HasVoiceActivity      *bool          `json:"hasVoiceActivity,omitempty"`
	Height                *int           `json:"height,omitempty"`
	ID                    int64          `json:"id"`
	OptimizedForStreaming *bool          `json:"optimizedForStreaming,omitempty"`
	Part                  []Part         `json:"Part,omitempty"`
	VideoCodec            *string        `json:"videoCodec,omitempty"`
	VideoFrameRate        *string        `json:"videoFrameRate,omitempty"`
	VideoProfile          *string        `json:"videoProfile,omitempty"`
	VideoResolution       *string        `json:"videoResolution,omitempty"`
	Width                 *int           `json:"width,omitempty"`
	AdditionalProperties  map[string]any `additionalProperties:"true" json:"-"`
}

Media - `Media` represents an one or more media files (parts) and is a child of a metadata item. There aren't necessarily any guaranteed attributes on media elements since the attributes will vary based on the type. The possible attributes are not documented here, but they typically have self-evident names. High-level media information that can be used for badging and flagging, such as `videoResolution` and codecs, is included on the media element.

func (*Media) GetAdditionalProperties added in v0.26.0

func (m *Media) GetAdditionalProperties() map[string]any

func (*Media) GetAspectRatio added in v0.26.0

func (m *Media) GetAspectRatio() *float32

func (*Media) GetAudioChannels added in v0.26.0

func (m *Media) GetAudioChannels() *int

func (*Media) GetAudioCodec added in v0.26.0

func (m *Media) GetAudioCodec() *string

func (*Media) GetAudioProfile added in v0.26.0

func (m *Media) GetAudioProfile() *string

func (*Media) GetBitrate added in v0.26.0

func (m *Media) GetBitrate() *int

func (*Media) GetContainer added in v0.26.0

func (m *Media) GetContainer() *string

func (*Media) GetDuration added in v0.26.0

func (m *Media) GetDuration() *int

func (*Media) GetHas64bitOffsets added in v0.26.0

func (m *Media) GetHas64bitOffsets() *bool

func (*Media) GetHasVoiceActivity added in v0.26.0

func (m *Media) GetHasVoiceActivity() *bool

func (*Media) GetHeight added in v0.26.0

func (m *Media) GetHeight() *int

func (*Media) GetID added in v0.26.0

func (m *Media) GetID() int64

func (*Media) GetOptimizedForStreaming added in v0.26.0

func (m *Media) GetOptimizedForStreaming() *bool

func (*Media) GetPart added in v0.26.0

func (m *Media) GetPart() []Part

func (*Media) GetVideoCodec added in v0.26.0

func (m *Media) GetVideoCodec() *string

func (*Media) GetVideoFrameRate added in v0.26.0

func (m *Media) GetVideoFrameRate() *string

func (*Media) GetVideoProfile added in v0.26.0

func (m *Media) GetVideoProfile() *string

func (*Media) GetVideoResolution added in v0.26.0

func (m *Media) GetVideoResolution() *string

func (*Media) GetWidth added in v0.26.0

func (m *Media) GetWidth() *int

func (Media) MarshalJSON added in v0.26.0

func (m Media) MarshalJSON() ([]byte, error)

func (*Media) UnmarshalJSON added in v0.26.0

func (m *Media) UnmarshalJSON(data []byte) error

type MediaContainer added in v0.26.0

type MediaContainer struct {
	Identifier *string `json:"identifier,omitempty"`
	// The offset of where this container page starts among the total objects available. Also provided in the `X-Plex-Container-Start` header.
	//
	Offset *int64 `json:"offset,omitempty"`
	Size   *int64 `json:"size,omitempty"`
	// The total size of objects available. Also provided in the `X-Plex-Container-Total-Size` header.
	//
	TotalSize *int64 `json:"totalSize,omitempty"`
}

MediaContainer - `MediaContainer` is the root element of most Plex API responses. It serves as a generic container for various types of content (Metadata, Hubs, Directories, etc.) and includes pagination information (offset, size, totalSize) when applicable. Common attributes: - identifier: Unique identifier for this container - size: Number of items in this response page - totalSize: Total number of items available (for pagination) - offset: Starting index of this page (for pagination) The container often "hoists" common attributes from its children. For example, if all tracks in a container share the same album title, the `parentTitle` attribute may appear on the MediaContainer rather than being repeated on each track.

func (*MediaContainer) GetIdentifier added in v0.26.0

func (m *MediaContainer) GetIdentifier() *string

func (*MediaContainer) GetOffset added in v0.26.0

func (m *MediaContainer) GetOffset() *int64

func (*MediaContainer) GetSize added in v0.26.0

func (m *MediaContainer) GetSize() *int64

func (*MediaContainer) GetTotalSize added in v0.26.0

func (m *MediaContainer) GetTotalSize() *int64

type MediaContainerWithArtwork added in v0.26.0

type MediaContainerWithArtwork struct {
	MediaContainer *MediaContainerWithArtworkMediaContainer `json:"MediaContainer,omitempty"`
}

func (*MediaContainerWithArtwork) GetMediaContainer added in v0.26.0

type MediaContainerWithArtworkMediaContainer added in v0.26.0

type MediaContainerWithArtworkMediaContainer struct {
	Identifier *string `json:"identifier,omitempty"`
	// The offset of where this container page starts among the total objects available. Also provided in the `X-Plex-Container-Start` header.
	//
	Offset *int64 `json:"offset,omitempty"`
	Size   *int64 `json:"size,omitempty"`
	// The total size of objects available. Also provided in the `X-Plex-Container-Total-Size` header.
	//
	TotalSize *int64                              `json:"totalSize,omitempty"`
	Metadata  []MediaContainerWithArtworkMetadata `json:"Metadata,omitempty"`
}

MediaContainerWithArtworkMediaContainer - `MediaContainer` is the root element of most Plex API responses. It serves as a generic container for various types of content (Metadata, Hubs, Directories, etc.) and includes pagination information (offset, size, totalSize) when applicable. Common attributes: - identifier: Unique identifier for this container - size: Number of items in this response page - totalSize: Total number of items available (for pagination) - offset: Starting index of this page (for pagination) The container often "hoists" common attributes from its children. For example, if all tracks in a container share the same album title, the `parentTitle` attribute may appear on the MediaContainer rather than being repeated on each track.

func (*MediaContainerWithArtworkMediaContainer) GetIdentifier added in v0.26.0

func (m *MediaContainerWithArtworkMediaContainer) GetIdentifier() *string

func (*MediaContainerWithArtworkMediaContainer) GetMetadata added in v0.26.0

func (*MediaContainerWithArtworkMediaContainer) GetOffset added in v0.26.0

func (*MediaContainerWithArtworkMediaContainer) GetSize added in v0.26.0

func (*MediaContainerWithArtworkMediaContainer) GetTotalSize added in v0.26.0

type MediaContainerWithArtworkMetadata added in v0.26.0

type MediaContainerWithArtworkMetadata struct {
	// The title of the item
	Title *string                        `json:"title,omitempty"`
	Type  *MediaContainerWithArtworkType `json:"type,omitempty"`
	// The path to the artwork
	Key                  *string        `json:"key,omitempty"`
	AdditionalProperties map[string]any `additionalProperties:"true" json:"-"`
}

func (*MediaContainerWithArtworkMetadata) GetAdditionalProperties added in v0.26.0

func (m *MediaContainerWithArtworkMetadata) GetAdditionalProperties() map[string]any

func (*MediaContainerWithArtworkMetadata) GetKey added in v0.26.0

func (*MediaContainerWithArtworkMetadata) GetTitle added in v0.26.0

func (*MediaContainerWithArtworkMetadata) GetType added in v0.26.0

func (MediaContainerWithArtworkMetadata) MarshalJSON added in v0.26.0

func (m MediaContainerWithArtworkMetadata) MarshalJSON() ([]byte, error)

func (*MediaContainerWithArtworkMetadata) UnmarshalJSON added in v0.26.0

func (m *MediaContainerWithArtworkMetadata) UnmarshalJSON(data []byte) error

type MediaContainerWithArtworkType added in v0.26.0

type MediaContainerWithArtworkType string
const (
	MediaContainerWithArtworkTypeImage MediaContainerWithArtworkType = "image"
)

func (MediaContainerWithArtworkType) ToPointer added in v0.26.0

func (*MediaContainerWithArtworkType) UnmarshalJSON added in v0.26.0

func (e *MediaContainerWithArtworkType) UnmarshalJSON(data []byte) error

type MediaContainerWithDecision added in v0.26.0

type MediaContainerWithDecision struct {
	MediaContainer *MediaContainerWithDecisionMediaContainer `json:"MediaContainer,omitempty"`
}

MediaContainerWithDecision - `MediaContainer` is commonly found as the root of a response and is a pretty generic container. Common attributes include `identifier` and things related to paging (`offset`, `size`, `totalSize`).

It is also common for a `MediaContainer` to contain attributes "hoisted" from its children. If every element in the container would have had the same attribute, then that attribute can be present on the container instead of being repeated on every element. For example, an album's list of tracks might include `parentTitle` on the container since all of the tracks have the same album title. A container may have a `source` attribute when all of the items came from the same source. Generally speaking, when looking for an attribute on an item, if the attribute wasn't found then the container should be checked for that attribute as well.

func (*MediaContainerWithDecision) GetMediaContainer added in v0.26.0

type MediaContainerWithDecisionDecision added in v0.26.0

type MediaContainerWithDecisionDecision string
const (
	MediaContainerWithDecisionDecisionCopy        MediaContainerWithDecisionDecision = "copy"
	MediaContainerWithDecisionDecisionTranscode   MediaContainerWithDecisionDecision = "transcode"
	MediaContainerWithDecisionDecisionBurn        MediaContainerWithDecisionDecision = "burn"
	MediaContainerWithDecisionDecisionUnavailable MediaContainerWithDecisionDecision = "unavailable"
	MediaContainerWithDecisionDecisionIgnore      MediaContainerWithDecisionDecision = "ignore"
	MediaContainerWithDecisionDecisionNone        MediaContainerWithDecisionDecision = "none"
)

func (MediaContainerWithDecisionDecision) ToPointer added in v0.26.0

func (*MediaContainerWithDecisionDecision) UnmarshalJSON added in v0.26.0

func (e *MediaContainerWithDecisionDecision) UnmarshalJSON(data []byte) error

type MediaContainerWithDecisionGuids added in v0.28.0

type MediaContainerWithDecisionGuids struct {
	// The unique identifier for the Guid. Can be prefixed with imdb://, tmdb://, tvdb://
	//
	ID string `json:"id"`
}

func (*MediaContainerWithDecisionGuids) GetID added in v0.28.0

type MediaContainerWithDecisionLocation added in v0.26.0

type MediaContainerWithDecisionLocation string
const (
	MediaContainerWithDecisionLocationDirect        MediaContainerWithDecisionLocation = "direct"
	MediaContainerWithDecisionLocationSidecarSubs   MediaContainerWithDecisionLocation = "sidecar-subs"
	MediaContainerWithDecisionLocationSegmentsVideo MediaContainerWithDecisionLocation = "segments-video"
	MediaContainerWithDecisionLocationSegmentsAudio MediaContainerWithDecisionLocation = "segments-audio"
	MediaContainerWithDecisionLocationSegmentsAv    MediaContainerWithDecisionLocation = "segments-av"
	MediaContainerWithDecisionLocationSegmentsSubs  MediaContainerWithDecisionLocation = "segments-subs"
	MediaContainerWithDecisionLocationEmbedded      MediaContainerWithDecisionLocation = "embedded"
	MediaContainerWithDecisionLocationSidecar       MediaContainerWithDecisionLocation = "sidecar"
)

func (MediaContainerWithDecisionLocation) ToPointer added in v0.26.0

func (*MediaContainerWithDecisionLocation) UnmarshalJSON added in v0.26.0

func (e *MediaContainerWithDecisionLocation) UnmarshalJSON(data []byte) error

type MediaContainerWithDecisionMedia added in v0.26.0

type MediaContainerWithDecisionMedia struct {
	AspectRatio           *float32                         `json:"aspectRatio,omitempty"`
	AudioChannels         *int                             `json:"audioChannels,omitempty"`
	AudioCodec            *string                          `json:"audioCodec,omitempty"`
	AudioProfile          *string                          `json:"audioProfile,omitempty"`
	Bitrate               *int                             `json:"bitrate,omitempty"`
	Container             *string                          `json:"container,omitempty"`
	Duration              *int                             `json:"duration,omitempty"`
	Has64bitOffsets       *bool                            `json:"has64bitOffsets,omitempty"`
	HasVoiceActivity      *bool                            `json:"hasVoiceActivity,omitempty"`
	Height                *int                             `json:"height,omitempty"`
	ID                    int64                            `json:"id"`
	OptimizedForStreaming *bool                            `json:"optimizedForStreaming,omitempty"`
	Part                  []MediaContainerWithDecisionPart `json:"Part,omitempty"`
	VideoCodec            *string                          `json:"videoCodec,omitempty"`
	VideoFrameRate        *string                          `json:"videoFrameRate,omitempty"`
	VideoProfile          *string                          `json:"videoProfile,omitempty"`
	VideoResolution       *string                          `json:"videoResolution,omitempty"`
	Width                 *int                             `json:"width,omitempty"`
	Abr                   *bool                            `json:"abr,omitempty"`
	ResourceSession       *string                          `json:"resourceSession,omitempty"`
	Selected              *bool                            `json:"selected,omitempty"`
	AdditionalProperties  map[string]any                   `additionalProperties:"true" json:"-"`
}

MediaContainerWithDecisionMedia - `Media` represents an one or more media files (parts) and is a child of a metadata item. There aren't necessarily any guaranteed attributes on media elements since the attributes will vary based on the type. The possible attributes are not documented here, but they typically have self-evident names. High-level media information that can be used for badging and flagging, such as `videoResolution` and codecs, is included on the media element.

func (*MediaContainerWithDecisionMedia) GetAbr added in v0.26.0

func (*MediaContainerWithDecisionMedia) GetAdditionalProperties added in v0.26.0

func (m *MediaContainerWithDecisionMedia) GetAdditionalProperties() map[string]any

func (*MediaContainerWithDecisionMedia) GetAspectRatio added in v0.26.0

func (m *MediaContainerWithDecisionMedia) GetAspectRatio() *float32

func (*MediaContainerWithDecisionMedia) GetAudioChannels added in v0.26.0

func (m *MediaContainerWithDecisionMedia) GetAudioChannels() *int

func (*MediaContainerWithDecisionMedia) GetAudioCodec added in v0.26.0

func (m *MediaContainerWithDecisionMedia) GetAudioCodec() *string

func (*MediaContainerWithDecisionMedia) GetAudioProfile added in v0.26.0

func (m *MediaContainerWithDecisionMedia) GetAudioProfile() *string

func (*MediaContainerWithDecisionMedia) GetBitrate added in v0.26.0

func (m *MediaContainerWithDecisionMedia) GetBitrate() *int

func (*MediaContainerWithDecisionMedia) GetContainer added in v0.26.0

func (m *MediaContainerWithDecisionMedia) GetContainer() *string

func (*MediaContainerWithDecisionMedia) GetDuration added in v0.26.0

func (m *MediaContainerWithDecisionMedia) GetDuration() *int

func (*MediaContainerWithDecisionMedia) GetHas64bitOffsets added in v0.26.0

func (m *MediaContainerWithDecisionMedia) GetHas64bitOffsets() *bool

func (*MediaContainerWithDecisionMedia) GetHasVoiceActivity added in v0.26.0

func (m *MediaContainerWithDecisionMedia) GetHasVoiceActivity() *bool

func (*MediaContainerWithDecisionMedia) GetHeight added in v0.26.0

func (m *MediaContainerWithDecisionMedia) GetHeight() *int

func (*MediaContainerWithDecisionMedia) GetID added in v0.26.0

func (*MediaContainerWithDecisionMedia) GetOptimizedForStreaming added in v0.26.0

func (m *MediaContainerWithDecisionMedia) GetOptimizedForStreaming() *bool

func (*MediaContainerWithDecisionMedia) GetPart added in v0.26.0

func (*MediaContainerWithDecisionMedia) GetResourceSession added in v0.26.0

func (m *MediaContainerWithDecisionMedia) GetResourceSession() *string

func (*MediaContainerWithDecisionMedia) GetSelected added in v0.26.0

func (m *MediaContainerWithDecisionMedia) GetSelected() *bool

func (*MediaContainerWithDecisionMedia) GetVideoCodec added in v0.26.0

func (m *MediaContainerWithDecisionMedia) GetVideoCodec() *string

func (*MediaContainerWithDecisionMedia) GetVideoFrameRate added in v0.26.0

func (m *MediaContainerWithDecisionMedia) GetVideoFrameRate() *string

func (*MediaContainerWithDecisionMedia) GetVideoProfile added in v0.26.0

func (m *MediaContainerWithDecisionMedia) GetVideoProfile() *string

func (*MediaContainerWithDecisionMedia) GetVideoResolution added in v0.26.0

func (m *MediaContainerWithDecisionMedia) GetVideoResolution() *string

func (*MediaContainerWithDecisionMedia) GetWidth added in v0.26.0

func (m *MediaContainerWithDecisionMedia) GetWidth() *int

func (MediaContainerWithDecisionMedia) MarshalJSON added in v0.26.0

func (m MediaContainerWithDecisionMedia) MarshalJSON() ([]byte, error)

func (*MediaContainerWithDecisionMedia) UnmarshalJSON added in v0.26.0

func (m *MediaContainerWithDecisionMedia) UnmarshalJSON(data []byte) error

type MediaContainerWithDecisionMediaContainer added in v0.26.0

type MediaContainerWithDecisionMediaContainer struct {
	Identifier *string `json:"identifier,omitempty"`
	// The offset of where this container page starts among the total objects available. Also provided in the `X-Plex-Container-Start` header.
	//
	Offset *int64 `json:"offset,omitempty"`
	Size   *int64 `json:"size,omitempty"`
	// The total size of objects available. Also provided in the `X-Plex-Container-Total-Size` header.
	//
	TotalSize *int64 `json:"totalSize,omitempty"`
	// The maximum available bitrate when the decision was rendered.
	AvailableBandwidth     *int64  `json:"availableBandwidth,omitempty"`
	DirectPlayDecisionCode *int64  `json:"directPlayDecisionCode,omitempty"`
	DirectPlayDecisionText *string `json:"directPlayDecisionText,omitempty"`
	// The overall decision. 1xxx are playback can succeed, 2xxx are a general error (such as insufficient bandwidth), 3xxx are errors in direct play, and 4xxx are errors in transcodes. Same codes are used in all.
	GeneralDecisionCode *int64  `json:"generalDecisionCode,omitempty"`
	GeneralDecisionText *string `json:"generalDecisionText,omitempty"`
	// The code indicating the status of evaluation of playback when client indicates `hasMDE=1`
	MdeDecisionCode *int64 `json:"mdeDecisionCode,omitempty"`
	// Descriptive text for the above code
	MdeDecisionText       *string                              `json:"mdeDecisionText,omitempty"`
	Metadata              []MediaContainerWithDecisionMetadata `json:"Metadata,omitempty"`
	TranscodeDecisionCode *int64                               `json:"transcodeDecisionCode,omitempty"`
	TranscodeDecisionText *string                              `json:"transcodeDecisionText,omitempty"`
}

MediaContainerWithDecisionMediaContainer - `MediaContainer` is the root element of most Plex API responses. It serves as a generic container for various types of content (Metadata, Hubs, Directories, etc.) and includes pagination information (offset, size, totalSize) when applicable. Common attributes: - identifier: Unique identifier for this container - size: Number of items in this response page - totalSize: Total number of items available (for pagination) - offset: Starting index of this page (for pagination) The container often "hoists" common attributes from its children. For example, if all tracks in a container share the same album title, the `parentTitle` attribute may appear on the MediaContainer rather than being repeated on each track.

func (*MediaContainerWithDecisionMediaContainer) GetAvailableBandwidth added in v0.26.0

func (m *MediaContainerWithDecisionMediaContainer) GetAvailableBandwidth() *int64

func (*MediaContainerWithDecisionMediaContainer) GetDirectPlayDecisionCode added in v0.26.0

func (m *MediaContainerWithDecisionMediaContainer) GetDirectPlayDecisionCode() *int64

func (*MediaContainerWithDecisionMediaContainer) GetDirectPlayDecisionText added in v0.26.0

func (m *MediaContainerWithDecisionMediaContainer) GetDirectPlayDecisionText() *string

func (*MediaContainerWithDecisionMediaContainer) GetGeneralDecisionCode added in v0.26.0

func (m *MediaContainerWithDecisionMediaContainer) GetGeneralDecisionCode() *int64

func (*MediaContainerWithDecisionMediaContainer) GetGeneralDecisionText added in v0.26.0

func (m *MediaContainerWithDecisionMediaContainer) GetGeneralDecisionText() *string

func (*MediaContainerWithDecisionMediaContainer) GetIdentifier added in v0.26.0

func (*MediaContainerWithDecisionMediaContainer) GetMdeDecisionCode added in v0.26.0

func (m *MediaContainerWithDecisionMediaContainer) GetMdeDecisionCode() *int64

func (*MediaContainerWithDecisionMediaContainer) GetMdeDecisionText added in v0.26.0

func (m *MediaContainerWithDecisionMediaContainer) GetMdeDecisionText() *string

func (*MediaContainerWithDecisionMediaContainer) GetMetadata added in v0.26.0

func (*MediaContainerWithDecisionMediaContainer) GetOffset added in v0.26.0

func (*MediaContainerWithDecisionMediaContainer) GetSize added in v0.26.0

func (*MediaContainerWithDecisionMediaContainer) GetTotalSize added in v0.26.0

func (*MediaContainerWithDecisionMediaContainer) GetTranscodeDecisionCode added in v0.26.0

func (m *MediaContainerWithDecisionMediaContainer) GetTranscodeDecisionCode() *int64

func (*MediaContainerWithDecisionMediaContainer) GetTranscodeDecisionText added in v0.26.0

func (m *MediaContainerWithDecisionMediaContainer) GetTranscodeDecisionText() *string

type MediaContainerWithDecisionMetadata added in v0.26.0

type MediaContainerWithDecisionMetadata struct {
	// The title of the item (e.g. “300” or “The Simpsons”)
	Title string `json:"title"`
	// The type of the video item, such as `movie`, `episode`, or `clip`.
	Type string `json:"type"`
	// When present, contains the disc number for a track on multi-disc albums.
	AbsoluteIndex *int `json:"absoluteIndex,omitempty"`
	// In units of seconds since the epoch, returns the time at which the item was added to the library.
	AddedAt int64 `json:"addedAt"`
	// When present, the URL for the background artwork for the item.
	Art *string `json:"art,omitempty"`
	// Some rating systems separate reviewer ratings from audience ratings
	AudienceRating *float32 `json:"audienceRating,omitempty"`
	// A URI representing the image to be shown with the audience rating (e.g. rottentomatoes://image.rating.spilled).
	AudienceRatingImage *string `json:"audienceRatingImage,omitempty"`
	Autotag             []Tag   `json:"Autotag,omitempty"`
	// When present, the URL for a banner graphic for the item.
	Banner *string `json:"banner,omitempty"`
	// When present, indicates the source for the chapters in the media file. Can be media (the chapters were embedded in the media itself), agent (a metadata agent computed them), or mixed (a combination of the two).
	ChapterSource *string `json:"chapterSource,omitempty"`
	// The number of child items associated with this media item.
	ChildCount *int `json:"childCount,omitempty"`
	// When present, the URL for a composite image for descendent items (e.g. photo albums or playlists).
	Composite *string `json:"composite,omitempty"`
	// If known, the content rating (e.g. MPAA) for an item.
	ContentRating *string `json:"contentRating,omitempty"`
	Country       []Tag   `json:"Country,omitempty"`
	Director      []Tag   `json:"Director,omitempty"`
	// When present, the duration for the item, in units of milliseconds.
	Duration *int `json:"duration,omitempty"`
	// Typically only seen in metadata at a library's top level
	Filter []Filter `json:"Filter,omitempty"`
	Genre  []Tag    `json:"Genre,omitempty"`
	// The `art` of the grandparent
	GrandparentArt *string `json:"grandparentArt,omitempty"`
	// The GUID of the grandparent media item.
	GrandparentGUID *string `json:"grandparentGuid,omitempty"`
	// The `hero` of the grandparent
	GrandparentHero *string `json:"grandparentHero,omitempty"`
	// The `key` of the grandparent
	GrandparentKey *string `json:"grandparentKey,omitempty"`
	// The `ratingKey` of the grandparent
	GrandparentRatingKey *string `json:"grandparentRatingKey,omitempty"`
	// The `theme` of the grandparent
	GrandparentTheme *string `json:"grandparentTheme,omitempty"`
	// The `thumb` of the grandparent
	GrandparentThumb *string `json:"grandparentThumb,omitempty"`
	// The `title` of the grandparent
	GrandparentTitle *string `json:"grandparentTitle,omitempty"`
	// The globally unique identifier for the media item.
	GUID  *string                           `json:"guid,omitempty"`
	Guids []MediaContainerWithDecisionGuids `json:"Guid,omitempty"`
	// When present, the URL for a hero image for the item.
	Hero  *string `json:"hero,omitempty"`
	Image []Image `json:"Image,omitempty"`
	// When present, this represents the episode number for episodes, season number for seasons, or track number for audio tracks.
	Index *int `json:"index,omitempty"`
	// The key at which the item's details can be fetched.  In many cases a metadata item may be passed without all the details (such as in a hub) and this key corresponds to the endpoint to fetch additional details.
	Key          string `json:"key"`
	LastViewedAt *int64 `json:"lastViewedAt,omitempty"`
	// For shows and seasons, contains the number of total episodes.
	LeafCount *int                              `json:"leafCount,omitempty"`
	Media     []MediaContainerWithDecisionMedia `json:"Media,omitempty"`
	// When present, in the format YYYY-MM-DD [HH:MM:SS] (the hours/minutes/seconds part is not always present). The air date, or a higher resolution release date for an item, depending on type. For example, episodes usually have air date like 1979-08-10 (we don't use epoch seconds because media existed prior to 1970). In some cases, recorded over-the-air content has higher resolution air date which includes a time component. Albums and movies may have day-resolution release dates as well.
	OriginallyAvailableAt *types.Date `json:"originallyAvailableAt,omitempty"`
	// When present, used to indicate an item's original title, e.g. a movie's foreign title.
	OriginalTitle *string `json:"originalTitle,omitempty"`
	// The GUID of the parent media item.
	ParentGUID *string `json:"parentGuid,omitempty"`
	// The `hero` of the parent
	ParentHero *string `json:"parentHero,omitempty"`
	// The `index` of the parent
	ParentIndex *int `json:"parentIndex,omitempty"`
	// The `key` of the parent
	ParentKey *string `json:"parentKey,omitempty"`
	// The `ratingKey` of the parent
	ParentRatingKey *string `json:"parentRatingKey,omitempty"`
	// The `thumb` of the parent
	ParentThumb *string `json:"parentThumb,omitempty"`
	// The `title` of the parent
	ParentTitle *string `json:"parentTitle,omitempty"`
	// Indicates that the item has a primary extra; for a movie, this is a trailer, and for a music track it is a music video. The URL points to the metadata details endpoint for the item.
	PrimaryExtraKey *string `json:"primaryExtraKey,omitempty"`
	// Prompt to give the user for this directory (such as `Search Movies`)
	Prompt *string `json:"prompt,omitempty"`
	// When present, the rating for the item. The exact meaning and representation depends on where the rating was sourced from.
	Rating      *float32 `json:"rating,omitempty"`
	RatingArray []Tag    `json:"Rating,omitempty"`
	// Number of ratings under this metadata
	RatingCount *int `json:"ratingCount,omitempty"`
	// When present, indicates an image to be shown with the rating. This is passed back as a small set of defined URI values, e.g. rottentomatoes://image.rating.rotten.
	RatingImage *string `json:"ratingImage,omitempty"`
	// This is the opaque string to be passed into timeline, scrobble, and rating endpoints to identify them.  While it often appears to be numeric, this is not guaranteed.
	RatingKey *string `json:"ratingKey,omitempty"`
	Role      []Tag   `json:"Role,omitempty"`
	// Indicates this is a search directory
	Search *bool `json:"search,omitempty"`
	// Used by old clients to provide nested menus allowing for primative (but structured) navigation.
	Secondary *bool `json:"secondary,omitempty"`
	// When found on a show item, indicates that the children (seasons) should be skipped in favor of the grandchildren (episodes). Useful for mini-series, etc.
	SkipChildren *bool `json:"skipChildren,omitempty"`
	// When present on an episode or track item, indicates parent should be skipped in favor of grandparent (show).
	SkipParent *bool `json:"skipParent,omitempty"`
	// Typically only seen in metadata at a library's top level
	Sort []Sort `json:"Sort,omitempty"`
	// When present, the studio or label which produced an item (e.g. movie studio for movies, record label for albums).
	Studio *string `json:"studio,omitempty"`
	// The subtype of the video item, such as `photo` when the video item is in a photo library
	Subtype *string `json:"subtype,omitempty"`
	// When present, the extended textual information about the item (e.g. movie plot, artist biography, album review).
	Summary *string `json:"summary,omitempty"`
	// When present, a pithy one-liner about the item (usually only seen for movies).
	Tagline *string `json:"tagline,omitempty"`
	// When present, the URL for theme music for the item (usually only for TV shows).
	Theme *string `json:"theme,omitempty"`
	// When present, the URL for the poster or thumbnail for the item. When available for types like movie, it will be the poster graphic, but fall-back to the extracted media thumbnail.
	Thumb *string `json:"thumb,omitempty"`
	// Whene present, this is the string used for sorting the item. It's usually the title with any leading articles removed (e.g. “Simpsons”).
	TitleSort *string `json:"titleSort,omitempty"`
	// In units of seconds since the epoch, returns the time at which the item was last changed (e.g. had its metadata updated).
	UpdatedAt *int64 `json:"updatedAt,omitempty"`
	// When the user has rated an item, this contains the user rating
	UserRating *float32 `json:"userRating,omitempty"`
	// When a users has completed watched or listened to an item, this attribute contains the number of consumptions.
	ViewCount *int `json:"viewCount,omitempty"`
	// For shows and seasons, contains the number of viewed episodes.
	ViewedLeafCount *int `json:"viewedLeafCount,omitempty"`
	// When a user is in the process of viewing or listening to this item, this attribute contains the current offset, in units of milliseconds.
	ViewOffset *int  `json:"viewOffset,omitempty"`
	Writer     []Tag `json:"Writer,omitempty"`
	// When present, the year associated with the item's release (e.g. release year for a movie).
	Year                 *int           `json:"year,omitempty"`
	AdditionalProperties map[string]any `additionalProperties:"true" json:"-"`
}

MediaContainerWithDecisionMetadata - Items in a library are referred to as "metadata items." These metadata items are distinct from "media items" which represent actual instances of media that can be consumed. Consider a TV library that has a single video file in it for a particular episode of a show. The library has a single media item, but it has three metadata items: one for the show, one for the season, and one for the episode. Consider a movie library that has two video files in it: the same movie, but two different resolutions. The library has a single metadata item for the movie, but that metadata item has two media items, one for each resolution. Additionally a "media item" will have one or more "media parts" where the the parts are intended to be watched together, such as a CD1 and CD2 parts of the same movie.

Note that when a metadata item has multiple media items, those media items should be isomorphic. That is, a 4K version and 1080p version of a movie are different versions of the same movie. They have the same duration, same summary, same rating, etc. and they can generally be considered interchangeable. A theatrical release vs. director's cut vs. unrated version on the other hand would be separate metadata items.

Metadata items can often live in a hierarchy with relationships between them. For example, the metadata item for an episodes is associated with a season metadata item which is associated with a show metadata item. A similar hierarchy exists with track, album, and artist and photos and photo album. The relationships may be expressed via relative terms and absolute terms. For example, "leaves" refer to metadata items which has associated media (there is no media for a season nor show). A show will have "children" in the form of seasons and a season will have "children" in the form of episodes and episodes have "parent" in the form of a season which has a "parent" in the form of a show. Similarly, a show has "grandchildren" in the form of episodse and an episode has a "grandparent" in the form of a show.

func (*MediaContainerWithDecisionMetadata) GetAbsoluteIndex added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetAbsoluteIndex() *int

func (*MediaContainerWithDecisionMetadata) GetAddedAt added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetAddedAt() int64

func (*MediaContainerWithDecisionMetadata) GetAdditionalProperties added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetAdditionalProperties() map[string]any

func (*MediaContainerWithDecisionMetadata) GetArt added in v0.26.0

func (*MediaContainerWithDecisionMetadata) GetAudienceRating added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetAudienceRating() *float32

func (*MediaContainerWithDecisionMetadata) GetAudienceRatingImage added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetAudienceRatingImage() *string

func (*MediaContainerWithDecisionMetadata) GetAutotag added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetAutotag() []Tag

func (*MediaContainerWithDecisionMetadata) GetBanner added in v0.26.0

func (*MediaContainerWithDecisionMetadata) GetChapterSource added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetChapterSource() *string

func (*MediaContainerWithDecisionMetadata) GetChildCount added in v0.28.0

func (m *MediaContainerWithDecisionMetadata) GetChildCount() *int

func (*MediaContainerWithDecisionMetadata) GetComposite added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetComposite() *string

func (*MediaContainerWithDecisionMetadata) GetContentRating added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetContentRating() *string

func (*MediaContainerWithDecisionMetadata) GetCountry added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetCountry() []Tag

func (*MediaContainerWithDecisionMetadata) GetDirector added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetDirector() []Tag

func (*MediaContainerWithDecisionMetadata) GetDuration added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetDuration() *int

func (*MediaContainerWithDecisionMetadata) GetFilter added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetFilter() []Filter

func (*MediaContainerWithDecisionMetadata) GetGUID added in v0.26.0

func (*MediaContainerWithDecisionMetadata) GetGenre added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetGenre() []Tag

func (*MediaContainerWithDecisionMetadata) GetGrandparentArt added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetGrandparentArt() *string

func (*MediaContainerWithDecisionMetadata) GetGrandparentGUID added in v0.28.0

func (m *MediaContainerWithDecisionMetadata) GetGrandparentGUID() *string

func (*MediaContainerWithDecisionMetadata) GetGrandparentHero added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetGrandparentHero() *string

func (*MediaContainerWithDecisionMetadata) GetGrandparentKey added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetGrandparentKey() *string

func (*MediaContainerWithDecisionMetadata) GetGrandparentRatingKey added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetGrandparentRatingKey() *string

func (*MediaContainerWithDecisionMetadata) GetGrandparentTheme added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetGrandparentTheme() *string

func (*MediaContainerWithDecisionMetadata) GetGrandparentThumb added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetGrandparentThumb() *string

func (*MediaContainerWithDecisionMetadata) GetGrandparentTitle added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetGrandparentTitle() *string

func (*MediaContainerWithDecisionMetadata) GetGuids added in v0.28.0

func (*MediaContainerWithDecisionMetadata) GetHero added in v0.26.0

func (*MediaContainerWithDecisionMetadata) GetImage added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetImage() []Image

func (*MediaContainerWithDecisionMetadata) GetIndex added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetIndex() *int

func (*MediaContainerWithDecisionMetadata) GetKey added in v0.26.0

func (*MediaContainerWithDecisionMetadata) GetLastViewedAt added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetLastViewedAt() *int64

func (*MediaContainerWithDecisionMetadata) GetLeafCount added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetLeafCount() *int

func (*MediaContainerWithDecisionMetadata) GetMedia added in v0.26.0

func (*MediaContainerWithDecisionMetadata) GetOriginalTitle added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetOriginalTitle() *string

func (*MediaContainerWithDecisionMetadata) GetOriginallyAvailableAt added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetOriginallyAvailableAt() *types.Date

func (*MediaContainerWithDecisionMetadata) GetParentGUID added in v0.28.0

func (m *MediaContainerWithDecisionMetadata) GetParentGUID() *string

func (*MediaContainerWithDecisionMetadata) GetParentHero added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetParentHero() *string

func (*MediaContainerWithDecisionMetadata) GetParentIndex added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetParentIndex() *int

func (*MediaContainerWithDecisionMetadata) GetParentKey added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetParentKey() *string

func (*MediaContainerWithDecisionMetadata) GetParentRatingKey added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetParentRatingKey() *string

func (*MediaContainerWithDecisionMetadata) GetParentThumb added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetParentThumb() *string

func (*MediaContainerWithDecisionMetadata) GetParentTitle added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetParentTitle() *string

func (*MediaContainerWithDecisionMetadata) GetPrimaryExtraKey added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetPrimaryExtraKey() *string

func (*MediaContainerWithDecisionMetadata) GetPrompt added in v0.26.0

func (*MediaContainerWithDecisionMetadata) GetRating added in v0.26.0

func (*MediaContainerWithDecisionMetadata) GetRatingArray added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetRatingArray() []Tag

func (*MediaContainerWithDecisionMetadata) GetRatingCount added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetRatingCount() *int

func (*MediaContainerWithDecisionMetadata) GetRatingImage added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetRatingImage() *string

func (*MediaContainerWithDecisionMetadata) GetRatingKey added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetRatingKey() *string

func (*MediaContainerWithDecisionMetadata) GetRole added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetRole() []Tag

func (*MediaContainerWithDecisionMetadata) GetSearch added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetSearch() *bool

func (*MediaContainerWithDecisionMetadata) GetSecondary added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetSecondary() *bool

func (*MediaContainerWithDecisionMetadata) GetSkipChildren added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetSkipChildren() *bool

func (*MediaContainerWithDecisionMetadata) GetSkipParent added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetSkipParent() *bool

func (*MediaContainerWithDecisionMetadata) GetSort added in v0.26.0

func (*MediaContainerWithDecisionMetadata) GetStudio added in v0.26.0

func (*MediaContainerWithDecisionMetadata) GetSubtype added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetSubtype() *string

func (*MediaContainerWithDecisionMetadata) GetSummary added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetSummary() *string

func (*MediaContainerWithDecisionMetadata) GetTagline added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetTagline() *string

func (*MediaContainerWithDecisionMetadata) GetTheme added in v0.26.0

func (*MediaContainerWithDecisionMetadata) GetThumb added in v0.26.0

func (*MediaContainerWithDecisionMetadata) GetTitle added in v0.26.0

func (*MediaContainerWithDecisionMetadata) GetTitleSort added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetTitleSort() *string

func (*MediaContainerWithDecisionMetadata) GetType added in v0.26.0

func (*MediaContainerWithDecisionMetadata) GetUpdatedAt added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetUpdatedAt() *int64

func (*MediaContainerWithDecisionMetadata) GetUserRating added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetUserRating() *float32

func (*MediaContainerWithDecisionMetadata) GetViewCount added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetViewCount() *int

func (*MediaContainerWithDecisionMetadata) GetViewOffset added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetViewOffset() *int

func (*MediaContainerWithDecisionMetadata) GetViewedLeafCount added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetViewedLeafCount() *int

func (*MediaContainerWithDecisionMetadata) GetWriter added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) GetWriter() []Tag

func (*MediaContainerWithDecisionMetadata) GetYear added in v0.26.0

func (MediaContainerWithDecisionMetadata) MarshalJSON added in v0.26.0

func (m MediaContainerWithDecisionMetadata) MarshalJSON() ([]byte, error)

func (*MediaContainerWithDecisionMetadata) UnmarshalJSON added in v0.26.0

func (m *MediaContainerWithDecisionMetadata) UnmarshalJSON(data []byte) error

type MediaContainerWithDecisionPart added in v0.26.0

type MediaContainerWithDecisionPart struct {
	// Indicates if the part is accessible.
	Accessible   *bool   `json:"accessible,omitempty"`
	AudioProfile *string `json:"audioProfile,omitempty"`
	// The container of the media file, such as `mp4` or `mkv`
	Container *string `json:"container,omitempty"`
	// The duration of the media item, in milliseconds
	Duration *int `json:"duration,omitempty"`
	// Indicates if the part exists.
	Exists *bool `json:"exists,omitempty"`
	// The local file path at which the part is stored on the server
	File            *string `json:"file,omitempty"`
	Has64bitOffsets *bool   `json:"has64bitOffsets,omitempty"`
	ID              int64   `json:"id"`
	Indexes         *string `json:"indexes,omitempty"`
	// The key from which the media can be streamed
	Key                   string `json:"key"`
	OptimizedForStreaming *bool  `json:"optimizedForStreaming,omitempty"`
	// The size of the media, in bytes
	Size                 *int64                             `json:"size,omitempty"`
	Stream               []MediaContainerWithDecisionStream `json:"Stream,omitempty"`
	VideoProfile         *string                            `json:"videoProfile,omitempty"`
	Decision             *Decision                          `json:"decision,omitempty"`
	Selected             *bool                              `json:"selected,omitempty"`
	AdditionalProperties map[string]any                     `additionalProperties:"true" json:"-"`
}

MediaContainerWithDecisionPart - `Part` represents a particular file or "part" of a media item. The part is the playable unit of the media hierarchy. Suppose that a movie library contains a movie that is broken up into files, reminiscent of a movie split across two BDs. The metadata item represents information about the movie, the media item represents this instance of the movie at this resolution and quality, and the part items represent the two playable files. If another media were added which contained the joining of these two parts transcoded down to a lower resolution, then this metadata would contain 2 medias, one with 2 parts and one with 1 part.

func (*MediaContainerWithDecisionPart) GetAccessible added in v0.28.0

func (m *MediaContainerWithDecisionPart) GetAccessible() *bool

func (*MediaContainerWithDecisionPart) GetAdditionalProperties added in v0.26.0

func (m *MediaContainerWithDecisionPart) GetAdditionalProperties() map[string]any

func (*MediaContainerWithDecisionPart) GetAudioProfile added in v0.26.0

func (m *MediaContainerWithDecisionPart) GetAudioProfile() *string

func (*MediaContainerWithDecisionPart) GetContainer added in v0.26.0

func (m *MediaContainerWithDecisionPart) GetContainer() *string

func (*MediaContainerWithDecisionPart) GetDecision added in v0.26.0

func (m *MediaContainerWithDecisionPart) GetDecision() *Decision

func (*MediaContainerWithDecisionPart) GetDuration added in v0.26.0

func (m *MediaContainerWithDecisionPart) GetDuration() *int

func (*MediaContainerWithDecisionPart) GetExists added in v0.28.0

func (m *MediaContainerWithDecisionPart) GetExists() *bool

func (*MediaContainerWithDecisionPart) GetFile added in v0.26.0

func (m *MediaContainerWithDecisionPart) GetFile() *string

func (*MediaContainerWithDecisionPart) GetHas64bitOffsets added in v0.26.0

func (m *MediaContainerWithDecisionPart) GetHas64bitOffsets() *bool

func (*MediaContainerWithDecisionPart) GetID added in v0.26.0

func (*MediaContainerWithDecisionPart) GetIndexes added in v0.28.0

func (m *MediaContainerWithDecisionPart) GetIndexes() *string

func (*MediaContainerWithDecisionPart) GetKey added in v0.26.0

func (*MediaContainerWithDecisionPart) GetOptimizedForStreaming added in v0.26.0

func (m *MediaContainerWithDecisionPart) GetOptimizedForStreaming() *bool

func (*MediaContainerWithDecisionPart) GetSelected added in v0.26.0

func (m *MediaContainerWithDecisionPart) GetSelected() *bool

func (*MediaContainerWithDecisionPart) GetSize added in v0.26.0

func (m *MediaContainerWithDecisionPart) GetSize() *int64

func (*MediaContainerWithDecisionPart) GetStream added in v0.26.0

func (*MediaContainerWithDecisionPart) GetVideoProfile added in v0.26.0

func (m *MediaContainerWithDecisionPart) GetVideoProfile() *string

func (MediaContainerWithDecisionPart) MarshalJSON added in v0.26.0

func (m MediaContainerWithDecisionPart) MarshalJSON() ([]byte, error)

func (*MediaContainerWithDecisionPart) UnmarshalJSON added in v0.26.0

func (m *MediaContainerWithDecisionPart) UnmarshalJSON(data []byte) error

type MediaContainerWithDecisionStream added in v0.26.0

type MediaContainerWithDecisionStream struct {
	// Indicates if this stream is default.
	Default *bool `json:"default,omitempty"`
	// Audio channel layout.
	AudioChannelLayout *string `json:"audioChannelLayout,omitempty"`
	// Number of audio channels (for audio streams).
	Channels *int `json:"channels,omitempty"`
	// Bit depth of the video stream.
	BitDepth *int `json:"bitDepth,omitempty"`
	// Dolby Vision BL compatibility ID.
	DOVIBLCompatID *int `json:"DOVIBLCompatID,omitempty"`
	// Indicates if Dolby Vision BL is present.
	DOVIBLPresent *bool `json:"DOVIBLPresent,omitempty"`
	// Indicates if Dolby Vision EL is present.
	DOVIELPresent *bool `json:"DOVIELPresent,omitempty"`
	// Dolby Vision level.
	DOVILevel *int `json:"DOVILevel,omitempty"`
	// Indicates if Dolby Vision is present.
	DOVIPresent *bool `json:"DOVIPresent,omitempty"`
	// Dolby Vision profile.
	DOVIProfile *int `json:"DOVIProfile,omitempty"`
	// Indicates if Dolby Vision RPU is present.
	DOVIRPUPresent *bool `json:"DOVIRPUPresent,omitempty"`
	// Dolby Vision version.
	DOVIVersion *string `json:"DOVIVersion,omitempty"`
	// Bitrate of the stream.
	Bitrate *int `json:"bitrate,omitempty"`
	// Indicates if the stream can auto-sync.
	CanAutoSync *bool `json:"canAutoSync,omitempty"`
	// Chroma sample location.
	ChromaLocation *string `json:"chromaLocation,omitempty"`
	// Chroma subsampling format.
	ChromaSubsampling *string `json:"chromaSubsampling,omitempty"`
	// Coded video height.
	CodedHeight *int `json:"codedHeight,omitempty"`
	// Coded video width.
	CodedWidth     *int  `json:"codedWidth,omitempty"`
	ClosedCaptions *bool `json:"closedCaptions,omitempty"`
	// Codec used by the stream.
	Codec string `json:"codec"`
	// Color primaries used.
	ColorPrimaries *string `json:"colorPrimaries,omitempty"`
	// Color range (e.g., tv).
	ColorRange *string `json:"colorRange,omitempty"`
	// Color space.
	ColorSpace *string `json:"colorSpace,omitempty"`
	// Color transfer characteristics.
	ColorTrc *string `json:"colorTrc,omitempty"`
	// Display title for the stream.
	DisplayTitle string `json:"displayTitle"`
	// Extended display title for the stream.
	ExtendedDisplayTitle *string `json:"extendedDisplayTitle,omitempty"`
	// Frame rate of the stream.
	FrameRate        *float32 `json:"frameRate,omitempty"`
	HasScalingMatrix *bool    `json:"hasScalingMatrix,omitempty"`
	// Height of the video stream.
	Height *int `json:"height,omitempty"`
	// Unique stream identifier.
	ID int `json:"id"`
	// Index of the stream.
	Index *int `json:"index,omitempty"`
	// Key to access this stream part.
	Key string `json:"key"`
	// Language of the stream.
	Language *string `json:"language,omitempty"`
	// ISO language code.
	LanguageCode *string `json:"languageCode,omitempty"`
	// Language tag (e.g., en).
	LanguageTag *string `json:"languageTag,omitempty"`
	// Format of the stream (e.g., srt).
	Format *string `json:"format,omitempty"`
	// Indicates whether header compression is enabled.
	HeaderCompression *bool `json:"headerCompression,omitempty"`
	// Video level.
	Level *int `json:"level,omitempty"`
	// Indicates if this is the original stream.
	Original *bool `json:"original,omitempty"`
	// Video profile.
	Profile *string `json:"profile,omitempty"`
	// Number of reference frames.
	RefFrames *int `json:"refFrames,omitempty"`
	// Sampling rate for the audio stream.
	SamplingRate    *int    `json:"samplingRate,omitempty"`
	ScanType        *string `json:"scanType,omitempty"`
	EmbeddedInVideo *string `json:"embeddedInVideo,omitempty"`
	// Indicates if this stream is selected (applicable for audio streams).
	Selected *bool `json:"selected,omitempty"`
	Forced   *bool `json:"forced,omitempty"`
	// Indicates if the stream is for the hearing impaired.
	HearingImpaired *bool `json:"hearingImpaired,omitempty"`
	// Indicates if the stream is a dub.
	Dub *bool `json:"dub,omitempty"`
	// Optional title for the stream (e.g., language variant).
	Title            *string `json:"title,omitempty"`
	StreamIdentifier *int    `json:"streamIdentifier,omitempty"`

	// Width of the video stream.
	Width                *int                                `json:"width,omitempty"`
	Decision             *MediaContainerWithDecisionDecision `json:"decision,omitempty"`
	Location             *MediaContainerWithDecisionLocation `json:"location,omitempty"`
	AdditionalProperties map[string]any                      `additionalProperties:"true" json:"-"`
	// contains filtered or unexported fields
}

MediaContainerWithDecisionStream - `Stream` represents a particular stream from a media item, such as the video stream, audio stream, or subtitle stream. The stream may either be part of the file represented by the parent `Part` or, especially for subtitles, an external file. The stream contains more detailed information about the specific stream. For example, a video may include the `aspectRatio` at the `Media` level, but detailed information about the video stream like the color space will be included on the `Stream` for the video stream. Note that photos do not have streams (mostly as an optimization).

func (*MediaContainerWithDecisionStream) GetAdditionalProperties added in v0.26.0

func (m *MediaContainerWithDecisionStream) GetAdditionalProperties() map[string]any

func (*MediaContainerWithDecisionStream) GetAudioChannelLayout added in v0.26.0

func (m *MediaContainerWithDecisionStream) GetAudioChannelLayout() *string

func (*MediaContainerWithDecisionStream) GetBitDepth added in v0.26.0

func (m *MediaContainerWithDecisionStream) GetBitDepth() *int

func (*MediaContainerWithDecisionStream) GetBitrate added in v0.26.0

func (m *MediaContainerWithDecisionStream) GetBitrate() *int

func (*MediaContainerWithDecisionStream) GetCanAutoSync added in v0.26.0

func (m *MediaContainerWithDecisionStream) GetCanAutoSync() *bool

func (*MediaContainerWithDecisionStream) GetChannels added in v0.28.0

func (m *MediaContainerWithDecisionStream) GetChannels() *int

func (*MediaContainerWithDecisionStream) GetChromaLocation added in v0.26.0

func (m *MediaContainerWithDecisionStream) GetChromaLocation() *string

func (*MediaContainerWithDecisionStream) GetChromaSubsampling added in v0.26.0

func (m *MediaContainerWithDecisionStream) GetChromaSubsampling() *string

func (*MediaContainerWithDecisionStream) GetClosedCaptions added in v0.28.0

func (m *MediaContainerWithDecisionStream) GetClosedCaptions() *bool

func (*MediaContainerWithDecisionStream) GetCodec added in v0.26.0

func (*MediaContainerWithDecisionStream) GetCodedHeight added in v0.28.0

func (m *MediaContainerWithDecisionStream) GetCodedHeight() *int

func (*MediaContainerWithDecisionStream) GetCodedWidth added in v0.28.0

func (m *MediaContainerWithDecisionStream) GetCodedWidth() *int

func (*MediaContainerWithDecisionStream) GetColorPrimaries added in v0.26.0

func (m *MediaContainerWithDecisionStream) GetColorPrimaries() *string

func (*MediaContainerWithDecisionStream) GetColorRange added in v0.26.0

func (m *MediaContainerWithDecisionStream) GetColorRange() *string

func (*MediaContainerWithDecisionStream) GetColorSpace added in v0.26.0

func (m *MediaContainerWithDecisionStream) GetColorSpace() *string

func (*MediaContainerWithDecisionStream) GetColorTrc added in v0.26.0

func (m *MediaContainerWithDecisionStream) GetColorTrc() *string

func (*MediaContainerWithDecisionStream) GetDOVIBLCompatID added in v0.28.0

func (m *MediaContainerWithDecisionStream) GetDOVIBLCompatID() *int

func (*MediaContainerWithDecisionStream) GetDOVIBLPresent added in v0.28.0

func (m *MediaContainerWithDecisionStream) GetDOVIBLPresent() *bool

func (*MediaContainerWithDecisionStream) GetDOVIELPresent added in v0.28.0

func (m *MediaContainerWithDecisionStream) GetDOVIELPresent() *bool

func (*MediaContainerWithDecisionStream) GetDOVILevel added in v0.28.0

func (m *MediaContainerWithDecisionStream) GetDOVILevel() *int

func (*MediaContainerWithDecisionStream) GetDOVIPresent added in v0.28.0

func (m *MediaContainerWithDecisionStream) GetDOVIPresent() *bool

func (*MediaContainerWithDecisionStream) GetDOVIProfile added in v0.28.0

func (m *MediaContainerWithDecisionStream) GetDOVIProfile() *int

func (*MediaContainerWithDecisionStream) GetDOVIRPUPresent added in v0.28.0

func (m *MediaContainerWithDecisionStream) GetDOVIRPUPresent() *bool

func (*MediaContainerWithDecisionStream) GetDOVIVersion added in v0.28.0

func (m *MediaContainerWithDecisionStream) GetDOVIVersion() *string

func (*MediaContainerWithDecisionStream) GetDecision added in v0.26.0

func (*MediaContainerWithDecisionStream) GetDefault added in v0.26.0

func (m *MediaContainerWithDecisionStream) GetDefault() *bool

func (*MediaContainerWithDecisionStream) GetDisplayTitle added in v0.26.0

func (m *MediaContainerWithDecisionStream) GetDisplayTitle() string

func (*MediaContainerWithDecisionStream) GetDub added in v0.28.0

func (*MediaContainerWithDecisionStream) GetEmbeddedInVideo added in v0.28.0

func (m *MediaContainerWithDecisionStream) GetEmbeddedInVideo() *string

func (*MediaContainerWithDecisionStream) GetExtendedDisplayTitle added in v0.28.0

func (m *MediaContainerWithDecisionStream) GetExtendedDisplayTitle() *string

func (*MediaContainerWithDecisionStream) GetForced added in v0.28.0

func (m *MediaContainerWithDecisionStream) GetForced() *bool

func (*MediaContainerWithDecisionStream) GetFormat added in v0.28.0

func (m *MediaContainerWithDecisionStream) GetFormat() *string

func (*MediaContainerWithDecisionStream) GetFrameRate added in v0.26.0

func (m *MediaContainerWithDecisionStream) GetFrameRate() *float32

func (*MediaContainerWithDecisionStream) GetHasScalingMatrix added in v0.26.0

func (m *MediaContainerWithDecisionStream) GetHasScalingMatrix() *bool

func (*MediaContainerWithDecisionStream) GetHeaderCompression added in v0.28.0

func (m *MediaContainerWithDecisionStream) GetHeaderCompression() *bool

func (*MediaContainerWithDecisionStream) GetHearingImpaired added in v0.28.0

func (m *MediaContainerWithDecisionStream) GetHearingImpaired() *bool

func (*MediaContainerWithDecisionStream) GetHeight added in v0.26.0

func (m *MediaContainerWithDecisionStream) GetHeight() *int

func (*MediaContainerWithDecisionStream) GetID added in v0.26.0

func (*MediaContainerWithDecisionStream) GetIndex added in v0.26.0

func (m *MediaContainerWithDecisionStream) GetIndex() *int

func (*MediaContainerWithDecisionStream) GetKey added in v0.26.0

func (*MediaContainerWithDecisionStream) GetLanguage added in v0.26.0

func (m *MediaContainerWithDecisionStream) GetLanguage() *string

func (*MediaContainerWithDecisionStream) GetLanguageCode added in v0.26.0

func (m *MediaContainerWithDecisionStream) GetLanguageCode() *string

func (*MediaContainerWithDecisionStream) GetLanguageTag added in v0.28.0

func (m *MediaContainerWithDecisionStream) GetLanguageTag() *string

func (*MediaContainerWithDecisionStream) GetLevel added in v0.26.0

func (m *MediaContainerWithDecisionStream) GetLevel() *int

func (*MediaContainerWithDecisionStream) GetLocation added in v0.26.0

func (*MediaContainerWithDecisionStream) GetOriginal added in v0.28.0

func (m *MediaContainerWithDecisionStream) GetOriginal() *bool

func (*MediaContainerWithDecisionStream) GetProfile added in v0.26.0

func (m *MediaContainerWithDecisionStream) GetProfile() *string

func (*MediaContainerWithDecisionStream) GetRefFrames added in v0.26.0

func (m *MediaContainerWithDecisionStream) GetRefFrames() *int

func (*MediaContainerWithDecisionStream) GetSamplingRate added in v0.26.0

func (m *MediaContainerWithDecisionStream) GetSamplingRate() *int

func (*MediaContainerWithDecisionStream) GetScanType added in v0.28.0

func (m *MediaContainerWithDecisionStream) GetScanType() *string

func (*MediaContainerWithDecisionStream) GetSelected added in v0.26.0

func (m *MediaContainerWithDecisionStream) GetSelected() *bool

func (*MediaContainerWithDecisionStream) GetStreamIdentifier added in v0.26.0

func (m *MediaContainerWithDecisionStream) GetStreamIdentifier() *int

func (*MediaContainerWithDecisionStream) GetStreamType added in v0.26.0

func (m *MediaContainerWithDecisionStream) GetStreamType() int64

func (*MediaContainerWithDecisionStream) GetTitle added in v0.28.0

func (*MediaContainerWithDecisionStream) GetWidth added in v0.26.0

func (m *MediaContainerWithDecisionStream) GetWidth() *int

func (MediaContainerWithDecisionStream) MarshalJSON added in v0.26.0

func (m MediaContainerWithDecisionStream) MarshalJSON() ([]byte, error)

func (*MediaContainerWithDecisionStream) UnmarshalJSON added in v0.26.0

func (m *MediaContainerWithDecisionStream) UnmarshalJSON(data []byte) error

type MediaContainerWithDevice added in v0.26.0

type MediaContainerWithDevice struct {
	MediaContainer *MediaContainerWithDeviceMediaContainer `json:"MediaContainer,omitempty"`
}

func (*MediaContainerWithDevice) GetMediaContainer added in v0.26.0

type MediaContainerWithDeviceDevice added in v0.26.0

type MediaContainerWithDeviceDevice struct {
	ChannelMapping []ChannelMapping `json:"ChannelMapping,omitempty"`
	Key            *string          `json:"key,omitempty"`
	LastSeenAt     *int64           `json:"lastSeenAt,omitempty"`
	Make           *string          `json:"make,omitempty"`
	Model          *string          `json:"model,omitempty"`
	ModelNumber    *string          `json:"modelNumber,omitempty"`
	Protocol       *string          `json:"protocol,omitempty"`
	Sources        *string          `json:"sources,omitempty"`
	State          *string          `json:"state,omitempty"`
	Status         *string          `json:"status,omitempty"`
	Tuners         *string          `json:"tuners,omitempty"`
	URI            *string          `json:"uri,omitempty"`
	UUID           *string          `json:"uuid,omitempty"`
}

func (*MediaContainerWithDeviceDevice) GetChannelMapping added in v0.26.0

func (m *MediaContainerWithDeviceDevice) GetChannelMapping() []ChannelMapping

func (*MediaContainerWithDeviceDevice) GetKey added in v0.26.0

func (*MediaContainerWithDeviceDevice) GetLastSeenAt added in v0.26.0

func (m *MediaContainerWithDeviceDevice) GetLastSeenAt() *int64

func (*MediaContainerWithDeviceDevice) GetMake added in v0.26.0

func (m *MediaContainerWithDeviceDevice) GetMake() *string

func (*MediaContainerWithDeviceDevice) GetModel added in v0.26.0

func (m *MediaContainerWithDeviceDevice) GetModel() *string

func (*MediaContainerWithDeviceDevice) GetModelNumber added in v0.26.0

func (m *MediaContainerWithDeviceDevice) GetModelNumber() *string

func (*MediaContainerWithDeviceDevice) GetProtocol added in v0.26.0

func (m *MediaContainerWithDeviceDevice) GetProtocol() *string

func (*MediaContainerWithDeviceDevice) GetSources added in v0.26.0

func (m *MediaContainerWithDeviceDevice) GetSources() *string

func (*MediaContainerWithDeviceDevice) GetState added in v0.26.0

func (m *MediaContainerWithDeviceDevice) GetState() *string

func (*MediaContainerWithDeviceDevice) GetStatus added in v0.26.0

func (m *MediaContainerWithDeviceDevice) GetStatus() *string

func (*MediaContainerWithDeviceDevice) GetTuners added in v0.26.0

func (m *MediaContainerWithDeviceDevice) GetTuners() *string

func (*MediaContainerWithDeviceDevice) GetURI added in v0.26.0

func (*MediaContainerWithDeviceDevice) GetUUID added in v0.26.0

func (m *MediaContainerWithDeviceDevice) GetUUID() *string

type MediaContainerWithDeviceMediaContainer added in v0.26.0

type MediaContainerWithDeviceMediaContainer struct {
	Identifier *string `json:"identifier,omitempty"`
	// The offset of where this container page starts among the total objects available. Also provided in the `X-Plex-Container-Start` header.
	//
	Offset *int64 `json:"offset,omitempty"`
	Size   *int64 `json:"size,omitempty"`
	// The total size of objects available. Also provided in the `X-Plex-Container-Total-Size` header.
	//
	TotalSize *int64                           `json:"totalSize,omitempty"`
	Device    []MediaContainerWithDeviceDevice `json:"Device,omitempty"`
}

MediaContainerWithDeviceMediaContainer - `MediaContainer` is the root element of most Plex API responses. It serves as a generic container for various types of content (Metadata, Hubs, Directories, etc.) and includes pagination information (offset, size, totalSize) when applicable. Common attributes: - identifier: Unique identifier for this container - size: Number of items in this response page - totalSize: Total number of items available (for pagination) - offset: Starting index of this page (for pagination) The container often "hoists" common attributes from its children. For example, if all tracks in a container share the same album title, the `parentTitle` attribute may appear on the MediaContainer rather than being repeated on each track.

func (*MediaContainerWithDeviceMediaContainer) GetDevice added in v0.26.0

func (*MediaContainerWithDeviceMediaContainer) GetIdentifier added in v0.26.0

func (m *MediaContainerWithDeviceMediaContainer) GetIdentifier() *string

func (*MediaContainerWithDeviceMediaContainer) GetOffset added in v0.26.0

func (*MediaContainerWithDeviceMediaContainer) GetSize added in v0.26.0

func (*MediaContainerWithDeviceMediaContainer) GetTotalSize added in v0.26.0

func (m *MediaContainerWithDeviceMediaContainer) GetTotalSize() *int64

type MediaContainerWithDirectory added in v0.26.0

type MediaContainerWithDirectory struct {
	MediaContainer *MediaContainerWithDirectoryMediaContainer `json:"MediaContainer,omitempty"`
}

func (*MediaContainerWithDirectory) GetMediaContainer added in v0.26.0

type MediaContainerWithDirectoryMediaContainer added in v0.26.0

type MediaContainerWithDirectoryMediaContainer struct {
	Identifier *string `json:"identifier,omitempty"`
	// The offset of where this container page starts among the total objects available. Also provided in the `X-Plex-Container-Start` header.
	//
	Offset *int64 `json:"offset,omitempty"`
	Size   *int64 `json:"size,omitempty"`
	// The total size of objects available. Also provided in the `X-Plex-Container-Total-Size` header.
	//
	TotalSize *int64      `json:"totalSize,omitempty"`
	Directory []Directory `json:"Directory,omitempty"`
}

MediaContainerWithDirectoryMediaContainer - `MediaContainer` is the root element of most Plex API responses. It serves as a generic container for various types of content (Metadata, Hubs, Directories, etc.) and includes pagination information (offset, size, totalSize) when applicable. Common attributes: - identifier: Unique identifier for this container - size: Number of items in this response page - totalSize: Total number of items available (for pagination) - offset: Starting index of this page (for pagination) The container often "hoists" common attributes from its children. For example, if all tracks in a container share the same album title, the `parentTitle` attribute may appear on the MediaContainer rather than being repeated on each track.

func (*MediaContainerWithDirectoryMediaContainer) GetDirectory added in v0.26.0

func (*MediaContainerWithDirectoryMediaContainer) GetIdentifier added in v0.26.0

func (*MediaContainerWithDirectoryMediaContainer) GetOffset added in v0.26.0

func (*MediaContainerWithDirectoryMediaContainer) GetSize added in v0.26.0

func (*MediaContainerWithDirectoryMediaContainer) GetTotalSize added in v0.26.0

type MediaContainerWithHubs added in v0.26.0

type MediaContainerWithHubs struct {
	MediaContainer *MediaContainerWithHubsMediaContainer `json:"MediaContainer,omitempty"`
}

MediaContainerWithHubs - OK

func (*MediaContainerWithHubs) GetMediaContainer added in v0.26.0

type MediaContainerWithHubsMediaContainer added in v0.26.0

type MediaContainerWithHubsMediaContainer struct {
	Identifier *string `json:"identifier,omitempty"`
	// The offset of where this container page starts among the total objects available. Also provided in the `X-Plex-Container-Start` header.
	//
	Offset *int64 `json:"offset,omitempty"`
	Size   *int64 `json:"size,omitempty"`
	// The total size of objects available. Also provided in the `X-Plex-Container-Total-Size` header.
	//
	TotalSize *int64 `json:"totalSize,omitempty"`
	Hub       []Hub  `json:"Hub,omitempty"`
}

MediaContainerWithHubsMediaContainer - `MediaContainer` is the root element of most Plex API responses. It serves as a generic container for various types of content (Metadata, Hubs, Directories, etc.) and includes pagination information (offset, size, totalSize) when applicable. Common attributes: - identifier: Unique identifier for this container - size: Number of items in this response page - totalSize: Total number of items available (for pagination) - offset: Starting index of this page (for pagination) The container often "hoists" common attributes from its children. For example, if all tracks in a container share the same album title, the `parentTitle` attribute may appear on the MediaContainer rather than being repeated on each track.

func (*MediaContainerWithHubsMediaContainer) GetHub added in v0.26.0

func (*MediaContainerWithHubsMediaContainer) GetIdentifier added in v0.26.0

func (m *MediaContainerWithHubsMediaContainer) GetIdentifier() *string

func (*MediaContainerWithHubsMediaContainer) GetOffset added in v0.26.0

func (*MediaContainerWithHubsMediaContainer) GetSize added in v0.26.0

func (*MediaContainerWithHubsMediaContainer) GetTotalSize added in v0.26.0

func (m *MediaContainerWithHubsMediaContainer) GetTotalSize() *int64

type MediaContainerWithLineup added in v0.26.0

type MediaContainerWithLineup struct {
	MediaContainer *MediaContainerWithLineupMediaContainer `json:"MediaContainer,omitempty"`
}

func (*MediaContainerWithLineup) GetMediaContainer added in v0.26.0

type MediaContainerWithLineupMediaContainer added in v0.26.0

type MediaContainerWithLineupMediaContainer struct {
	Identifier *string `json:"identifier,omitempty"`
	// The offset of where this container page starts among the total objects available. Also provided in the `X-Plex-Container-Start` header.
	//
	Offset *int64 `json:"offset,omitempty"`
	Size   *int64 `json:"size,omitempty"`
	// The total size of objects available. Also provided in the `X-Plex-Container-Total-Size` header.
	//
	TotalSize *int64   `json:"totalSize,omitempty"`
	Lineup    []Lineup `json:"Lineup,omitempty"`
	// The UUID of this set lineups
	UUID *string `json:"uuid,omitempty"`
}

MediaContainerWithLineupMediaContainer - `MediaContainer` is the root element of most Plex API responses. It serves as a generic container for various types of content (Metadata, Hubs, Directories, etc.) and includes pagination information (offset, size, totalSize) when applicable. Common attributes: - identifier: Unique identifier for this container - size: Number of items in this response page - totalSize: Total number of items available (for pagination) - offset: Starting index of this page (for pagination) The container often "hoists" common attributes from its children. For example, if all tracks in a container share the same album title, the `parentTitle` attribute may appear on the MediaContainer rather than being repeated on each track.

func (*MediaContainerWithLineupMediaContainer) GetIdentifier added in v0.26.0

func (m *MediaContainerWithLineupMediaContainer) GetIdentifier() *string

func (*MediaContainerWithLineupMediaContainer) GetLineup added in v0.26.0

func (*MediaContainerWithLineupMediaContainer) GetOffset added in v0.26.0

func (*MediaContainerWithLineupMediaContainer) GetSize added in v0.26.0

func (*MediaContainerWithLineupMediaContainer) GetTotalSize added in v0.26.0

func (m *MediaContainerWithLineupMediaContainer) GetTotalSize() *int64

func (*MediaContainerWithLineupMediaContainer) GetUUID added in v0.26.0

type MediaContainerWithMetadata added in v0.26.0

type MediaContainerWithMetadata struct {
	MediaContainer *MediaContainerWithMetadataMediaContainer `json:"MediaContainer,omitempty"`
}

func (*MediaContainerWithMetadata) GetMediaContainer added in v0.26.0

type MediaContainerWithMetadataMediaContainer added in v0.26.0

type MediaContainerWithMetadataMediaContainer struct {
	Identifier *string `json:"identifier,omitempty"`
	// The offset of where this container page starts among the total objects available. Also provided in the `X-Plex-Container-Start` header.
	//
	Offset *int64 `json:"offset,omitempty"`
	Size   *int64 `json:"size,omitempty"`
	// The total size of objects available. Also provided in the `X-Plex-Container-Total-Size` header.
	//
	TotalSize *int64     `json:"totalSize,omitempty"`
	Metadata  []Metadata `json:"Metadata,omitempty"`
}

MediaContainerWithMetadataMediaContainer - `MediaContainer` is the root element of most Plex API responses. It serves as a generic container for various types of content (Metadata, Hubs, Directories, etc.) and includes pagination information (offset, size, totalSize) when applicable. Common attributes: - identifier: Unique identifier for this container - size: Number of items in this response page - totalSize: Total number of items available (for pagination) - offset: Starting index of this page (for pagination) The container often "hoists" common attributes from its children. For example, if all tracks in a container share the same album title, the `parentTitle` attribute may appear on the MediaContainer rather than being repeated on each track.

func (*MediaContainerWithMetadataMediaContainer) GetIdentifier added in v0.26.0

func (*MediaContainerWithMetadataMediaContainer) GetMetadata added in v0.26.0

func (*MediaContainerWithMetadataMediaContainer) GetOffset added in v0.26.0

func (*MediaContainerWithMetadataMediaContainer) GetSize added in v0.26.0

func (*MediaContainerWithMetadataMediaContainer) GetTotalSize added in v0.26.0

type MediaContainerWithNestedMetadata added in v0.26.0

type MediaContainerWithNestedMetadata struct {
	MediaContainer *MediaContainerWithNestedMetadataMediaContainer `json:"MediaContainer,omitempty"`
}

func (*MediaContainerWithNestedMetadata) GetMediaContainer added in v0.26.0

type MediaContainerWithNestedMetadataGuids added in v0.28.0

type MediaContainerWithNestedMetadataGuids struct {
	// The unique identifier for the Guid. Can be prefixed with imdb://, tmdb://, tvdb://
	//
	ID string `json:"id"`
}

func (*MediaContainerWithNestedMetadataGuids) GetID added in v0.28.0

type MediaContainerWithNestedMetadataMediaContainer added in v0.26.0

type MediaContainerWithNestedMetadataMediaContainer struct {
	Identifier *string `json:"identifier,omitempty"`
	// The offset of where this container page starts among the total objects available. Also provided in the `X-Plex-Container-Start` header.
	//
	Offset *int64 `json:"offset,omitempty"`
	Size   *int64 `json:"size,omitempty"`
	// The total size of objects available. Also provided in the `X-Plex-Container-Total-Size` header.
	//
	TotalSize    *int64         `json:"totalSize,omitempty"`
	MetadataItem []MetadataItem `json:"MetadataItem,omitempty"`
}

MediaContainerWithNestedMetadataMediaContainer - `MediaContainer` is the root element of most Plex API responses. It serves as a generic container for various types of content (Metadata, Hubs, Directories, etc.) and includes pagination information (offset, size, totalSize) when applicable. Common attributes: - identifier: Unique identifier for this container - size: Number of items in this response page - totalSize: Total number of items available (for pagination) - offset: Starting index of this page (for pagination) The container often "hoists" common attributes from its children. For example, if all tracks in a container share the same album title, the `parentTitle` attribute may appear on the MediaContainer rather than being repeated on each track.

func (*MediaContainerWithNestedMetadataMediaContainer) GetIdentifier added in v0.26.0

func (*MediaContainerWithNestedMetadataMediaContainer) GetMetadataItem added in v0.26.0

func (*MediaContainerWithNestedMetadataMediaContainer) GetOffset added in v0.26.0

func (*MediaContainerWithNestedMetadataMediaContainer) GetSize added in v0.26.0

func (*MediaContainerWithNestedMetadataMediaContainer) GetTotalSize added in v0.26.0

type MediaContainerWithPlaylistMetadata added in v0.26.0

type MediaContainerWithPlaylistMetadata struct {
	MediaContainer *MediaContainerWithPlaylistMetadataMediaContainer `json:"MediaContainer,omitempty"`
}

func (*MediaContainerWithPlaylistMetadata) GetMediaContainer added in v0.26.0

type MediaContainerWithPlaylistMetadataGuids added in v0.28.0

type MediaContainerWithPlaylistMetadataGuids struct {
	// The unique identifier for the Guid. Can be prefixed with imdb://, tmdb://, tvdb://
	//
	ID string `json:"id"`
}

func (*MediaContainerWithPlaylistMetadataGuids) GetID added in v0.28.0

type MediaContainerWithPlaylistMetadataMediaContainer added in v0.26.0

type MediaContainerWithPlaylistMetadataMediaContainer struct {
	Identifier *string `json:"identifier,omitempty"`
	// The offset of where this container page starts among the total objects available. Also provided in the `X-Plex-Container-Start` header.
	//
	Offset *int64 `json:"offset,omitempty"`
	Size   *int64 `json:"size,omitempty"`
	// The total size of objects available. Also provided in the `X-Plex-Container-Total-Size` header.
	//
	TotalSize *int64                                       `json:"totalSize,omitempty"`
	Metadata  []MediaContainerWithPlaylistMetadataMetadata `json:"Metadata,omitempty"`
}

MediaContainerWithPlaylistMetadataMediaContainer - `MediaContainer` is the root element of most Plex API responses. It serves as a generic container for various types of content (Metadata, Hubs, Directories, etc.) and includes pagination information (offset, size, totalSize) when applicable. Common attributes: - identifier: Unique identifier for this container - size: Number of items in this response page - totalSize: Total number of items available (for pagination) - offset: Starting index of this page (for pagination) The container often "hoists" common attributes from its children. For example, if all tracks in a container share the same album title, the `parentTitle` attribute may appear on the MediaContainer rather than being repeated on each track.

func (*MediaContainerWithPlaylistMetadataMediaContainer) GetIdentifier added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMediaContainer) GetMetadata added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMediaContainer) GetOffset added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMediaContainer) GetSize added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMediaContainer) GetTotalSize added in v0.26.0

type MediaContainerWithPlaylistMetadataMetadata added in v0.26.0

type MediaContainerWithPlaylistMetadataMetadata struct {
	// If we return this as true then this playlist cannot be altered or deleted directly by the client.
	ReadOnly *bool `json:"readOnly,omitempty"`
	// When present, the URL for a composite image for descendent items (e.g. photo albums or playlists).
	Composite *string `json:"composite,omitempty"`
	// When present, the duration for the item, in units of milliseconds.
	Duration *int `json:"duration,omitempty"`
	// The key at which the item's details can be fetched.  In many cases a metadata item may be passed without all the details (such as in a hub) and this key corresponds to the endpoint to fetch additional details.
	Key string `json:"key"`
	// For shows and seasons, contains the number of total episodes.
	LeafCount *int `json:"leafCount,omitempty"`
	// The type of the playlist.
	PlaylistType *PlaylistType `json:"playlistType,omitempty"`
	// Whether or not the playlist is smart.
	Smart *bool `json:"smart,omitempty"`
	// If this is a special playlist, this returns its type (e.g. favorites).
	SpecialPlaylistType *string `json:"specialPlaylistType,omitempty"`
	// The title of the item (e.g. “300” or “The Simpsons”)
	Title string `json:"title"`
	// The type of the video item, such as `movie`, `episode`, or `clip`.
	Type string `json:"type"`
	// When present, contains the disc number for a track on multi-disc albums.
	AbsoluteIndex *int `json:"absoluteIndex,omitempty"`
	// In units of seconds since the epoch, returns the time at which the item was added to the library.
	AddedAt int64 `json:"addedAt"`
	// When present, the URL for the background artwork for the item.
	Art *string `json:"art,omitempty"`
	// Some rating systems separate reviewer ratings from audience ratings
	AudienceRating *float32 `json:"audienceRating,omitempty"`
	// A URI representing the image to be shown with the audience rating (e.g. rottentomatoes://image.rating.spilled).
	AudienceRatingImage *string `json:"audienceRatingImage,omitempty"`
	Autotag             []Tag   `json:"Autotag,omitempty"`
	// When present, the URL for a banner graphic for the item.
	Banner *string `json:"banner,omitempty"`
	// When present, indicates the source for the chapters in the media file. Can be media (the chapters were embedded in the media itself), agent (a metadata agent computed them), or mixed (a combination of the two).
	ChapterSource *string `json:"chapterSource,omitempty"`
	// The number of child items associated with this media item.
	ChildCount *int `json:"childCount,omitempty"`
	// If known, the content rating (e.g. MPAA) for an item.
	ContentRating *string `json:"contentRating,omitempty"`
	Country       []Tag   `json:"Country,omitempty"`
	Director      []Tag   `json:"Director,omitempty"`
	// Typically only seen in metadata at a library's top level
	Filter []Filter `json:"Filter,omitempty"`
	Genre  []Tag    `json:"Genre,omitempty"`
	// The `art` of the grandparent
	GrandparentArt *string `json:"grandparentArt,omitempty"`
	// The GUID of the grandparent media item.
	GrandparentGUID *string `json:"grandparentGuid,omitempty"`
	// The `hero` of the grandparent
	GrandparentHero *string `json:"grandparentHero,omitempty"`
	// The `key` of the grandparent
	GrandparentKey *string `json:"grandparentKey,omitempty"`
	// The `ratingKey` of the grandparent
	GrandparentRatingKey *string `json:"grandparentRatingKey,omitempty"`
	// The `theme` of the grandparent
	GrandparentTheme *string `json:"grandparentTheme,omitempty"`
	// The `thumb` of the grandparent
	GrandparentThumb *string `json:"grandparentThumb,omitempty"`
	// The `title` of the grandparent
	GrandparentTitle *string `json:"grandparentTitle,omitempty"`
	// The globally unique identifier for the media item.
	GUID  *string                                   `json:"guid,omitempty"`
	Guids []MediaContainerWithPlaylistMetadataGuids `json:"Guid,omitempty"`
	// When present, the URL for a hero image for the item.
	Hero  *string `json:"hero,omitempty"`
	Image []Image `json:"Image,omitempty"`
	// When present, this represents the episode number for episodes, season number for seasons, or track number for audio tracks.
	Index        *int    `json:"index,omitempty"`
	LastViewedAt *int64  `json:"lastViewedAt,omitempty"`
	Media        []Media `json:"Media,omitempty"`
	// When present, in the format YYYY-MM-DD [HH:MM:SS] (the hours/minutes/seconds part is not always present). The air date, or a higher resolution release date for an item, depending on type. For example, episodes usually have air date like 1979-08-10 (we don't use epoch seconds because media existed prior to 1970). In some cases, recorded over-the-air content has higher resolution air date which includes a time component. Albums and movies may have day-resolution release dates as well.
	OriginallyAvailableAt *types.Date `json:"originallyAvailableAt,omitempty"`
	// When present, used to indicate an item's original title, e.g. a movie's foreign title.
	OriginalTitle *string `json:"originalTitle,omitempty"`
	// The GUID of the parent media item.
	ParentGUID *string `json:"parentGuid,omitempty"`
	// The `hero` of the parent
	ParentHero *string `json:"parentHero,omitempty"`
	// The `index` of the parent
	ParentIndex *int `json:"parentIndex,omitempty"`
	// The `key` of the parent
	ParentKey *string `json:"parentKey,omitempty"`
	// The `ratingKey` of the parent
	ParentRatingKey *string `json:"parentRatingKey,omitempty"`
	// The `thumb` of the parent
	ParentThumb *string `json:"parentThumb,omitempty"`
	// The `title` of the parent
	ParentTitle *string `json:"parentTitle,omitempty"`
	// Indicates that the item has a primary extra; for a movie, this is a trailer, and for a music track it is a music video. The URL points to the metadata details endpoint for the item.
	PrimaryExtraKey *string `json:"primaryExtraKey,omitempty"`
	// Prompt to give the user for this directory (such as `Search Movies`)
	Prompt *string `json:"prompt,omitempty"`
	// When present, the rating for the item. The exact meaning and representation depends on where the rating was sourced from.
	Rating      *float32 `json:"rating,omitempty"`
	RatingArray []Tag    `json:"Rating,omitempty"`
	// Number of ratings under this metadata
	RatingCount *int `json:"ratingCount,omitempty"`
	// When present, indicates an image to be shown with the rating. This is passed back as a small set of defined URI values, e.g. rottentomatoes://image.rating.rotten.
	RatingImage *string `json:"ratingImage,omitempty"`
	// This is the opaque string to be passed into timeline, scrobble, and rating endpoints to identify them.  While it often appears to be numeric, this is not guaranteed.
	RatingKey *string `json:"ratingKey,omitempty"`
	Role      []Tag   `json:"Role,omitempty"`
	// Indicates this is a search directory
	Search *bool `json:"search,omitempty"`
	// Used by old clients to provide nested menus allowing for primative (but structured) navigation.
	Secondary *bool `json:"secondary,omitempty"`
	// When found on a show item, indicates that the children (seasons) should be skipped in favor of the grandchildren (episodes). Useful for mini-series, etc.
	SkipChildren *bool `json:"skipChildren,omitempty"`
	// When present on an episode or track item, indicates parent should be skipped in favor of grandparent (show).
	SkipParent *bool `json:"skipParent,omitempty"`
	// Typically only seen in metadata at a library's top level
	Sort []Sort `json:"Sort,omitempty"`
	// When present, the studio or label which produced an item (e.g. movie studio for movies, record label for albums).
	Studio *string `json:"studio,omitempty"`
	// The subtype of the video item, such as `photo` when the video item is in a photo library
	Subtype *string `json:"subtype,omitempty"`
	// When present, the extended textual information about the item (e.g. movie plot, artist biography, album review).
	Summary *string `json:"summary,omitempty"`
	// When present, a pithy one-liner about the item (usually only seen for movies).
	Tagline *string `json:"tagline,omitempty"`
	// When present, the URL for theme music for the item (usually only for TV shows).
	Theme *string `json:"theme,omitempty"`
	// When present, the URL for the poster or thumbnail for the item. When available for types like movie, it will be the poster graphic, but fall-back to the extracted media thumbnail.
	Thumb *string `json:"thumb,omitempty"`
	// Whene present, this is the string used for sorting the item. It's usually the title with any leading articles removed (e.g. “Simpsons”).
	TitleSort *string `json:"titleSort,omitempty"`
	// In units of seconds since the epoch, returns the time at which the item was last changed (e.g. had its metadata updated).
	UpdatedAt *int64 `json:"updatedAt,omitempty"`
	// When the user has rated an item, this contains the user rating
	UserRating *float32 `json:"userRating,omitempty"`
	// When a users has completed watched or listened to an item, this attribute contains the number of consumptions.
	ViewCount *int `json:"viewCount,omitempty"`
	// For shows and seasons, contains the number of viewed episodes.
	ViewedLeafCount *int `json:"viewedLeafCount,omitempty"`
	// When a user is in the process of viewing or listening to this item, this attribute contains the current offset, in units of milliseconds.
	ViewOffset *int  `json:"viewOffset,omitempty"`
	Writer     []Tag `json:"Writer,omitempty"`
	// When present, the year associated with the item's release (e.g. release year for a movie).
	Year                 *int           `json:"year,omitempty"`
	AdditionalProperties map[string]any `additionalProperties:"true" json:"-"`
}

MediaContainerWithPlaylistMetadataMetadata - Items in a library are referred to as "metadata items." These metadata items are distinct from "media items" which represent actual instances of media that can be consumed. Consider a TV library that has a single video file in it for a particular episode of a show. The library has a single media item, but it has three metadata items: one for the show, one for the season, and one for the episode. Consider a movie library that has two video files in it: the same movie, but two different resolutions. The library has a single metadata item for the movie, but that metadata item has two media items, one for each resolution. Additionally a "media item" will have one or more "media parts" where the the parts are intended to be watched together, such as a CD1 and CD2 parts of the same movie.

Note that when a metadata item has multiple media items, those media items should be isomorphic. That is, a 4K version and 1080p version of a movie are different versions of the same movie. They have the same duration, same summary, same rating, etc. and they can generally be considered interchangeable. A theatrical release vs. director's cut vs. unrated version on the other hand would be separate metadata items.

Metadata items can often live in a hierarchy with relationships between them. For example, the metadata item for an episodes is associated with a season metadata item which is associated with a show metadata item. A similar hierarchy exists with track, album, and artist and photos and photo album. The relationships may be expressed via relative terms and absolute terms. For example, "leaves" refer to metadata items which has associated media (there is no media for a season nor show). A show will have "children" in the form of seasons and a season will have "children" in the form of episodes and episodes have "parent" in the form of a season which has a "parent" in the form of a show. Similarly, a show has "grandchildren" in the form of episodse and an episode has a "grandparent" in the form of a show.

func (*MediaContainerWithPlaylistMetadataMetadata) GetAbsoluteIndex added in v0.26.0

func (m *MediaContainerWithPlaylistMetadataMetadata) GetAbsoluteIndex() *int

func (*MediaContainerWithPlaylistMetadataMetadata) GetAddedAt added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetAdditionalProperties added in v0.26.0

func (m *MediaContainerWithPlaylistMetadataMetadata) GetAdditionalProperties() map[string]any

func (*MediaContainerWithPlaylistMetadataMetadata) GetArt added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetAudienceRating added in v0.26.0

func (m *MediaContainerWithPlaylistMetadataMetadata) GetAudienceRating() *float32

func (*MediaContainerWithPlaylistMetadataMetadata) GetAudienceRatingImage added in v0.26.0

func (m *MediaContainerWithPlaylistMetadataMetadata) GetAudienceRatingImage() *string

func (*MediaContainerWithPlaylistMetadataMetadata) GetAutotag added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetBanner added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetChapterSource added in v0.26.0

func (m *MediaContainerWithPlaylistMetadataMetadata) GetChapterSource() *string

func (*MediaContainerWithPlaylistMetadataMetadata) GetChildCount added in v0.28.0

func (m *MediaContainerWithPlaylistMetadataMetadata) GetChildCount() *int

func (*MediaContainerWithPlaylistMetadataMetadata) GetComposite added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetContentRating added in v0.26.0

func (m *MediaContainerWithPlaylistMetadataMetadata) GetContentRating() *string

func (*MediaContainerWithPlaylistMetadataMetadata) GetCountry added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetDirector added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetDuration added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetFilter added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetGUID added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetGenre added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetGrandparentArt added in v0.26.0

func (m *MediaContainerWithPlaylistMetadataMetadata) GetGrandparentArt() *string

func (*MediaContainerWithPlaylistMetadataMetadata) GetGrandparentGUID added in v0.28.0

func (m *MediaContainerWithPlaylistMetadataMetadata) GetGrandparentGUID() *string

func (*MediaContainerWithPlaylistMetadataMetadata) GetGrandparentHero added in v0.26.0

func (m *MediaContainerWithPlaylistMetadataMetadata) GetGrandparentHero() *string

func (*MediaContainerWithPlaylistMetadataMetadata) GetGrandparentKey added in v0.26.0

func (m *MediaContainerWithPlaylistMetadataMetadata) GetGrandparentKey() *string

func (*MediaContainerWithPlaylistMetadataMetadata) GetGrandparentRatingKey added in v0.26.0

func (m *MediaContainerWithPlaylistMetadataMetadata) GetGrandparentRatingKey() *string

func (*MediaContainerWithPlaylistMetadataMetadata) GetGrandparentTheme added in v0.26.0

func (m *MediaContainerWithPlaylistMetadataMetadata) GetGrandparentTheme() *string

func (*MediaContainerWithPlaylistMetadataMetadata) GetGrandparentThumb added in v0.26.0

func (m *MediaContainerWithPlaylistMetadataMetadata) GetGrandparentThumb() *string

func (*MediaContainerWithPlaylistMetadataMetadata) GetGrandparentTitle added in v0.26.0

func (m *MediaContainerWithPlaylistMetadataMetadata) GetGrandparentTitle() *string

func (*MediaContainerWithPlaylistMetadataMetadata) GetGuids added in v0.28.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetHero added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetImage added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetIndex added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetKey added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetLastViewedAt added in v0.26.0

func (m *MediaContainerWithPlaylistMetadataMetadata) GetLastViewedAt() *int64

func (*MediaContainerWithPlaylistMetadataMetadata) GetLeafCount added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetMedia added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetOriginalTitle added in v0.26.0

func (m *MediaContainerWithPlaylistMetadataMetadata) GetOriginalTitle() *string

func (*MediaContainerWithPlaylistMetadataMetadata) GetOriginallyAvailableAt added in v0.26.0

func (m *MediaContainerWithPlaylistMetadataMetadata) GetOriginallyAvailableAt() *types.Date

func (*MediaContainerWithPlaylistMetadataMetadata) GetParentGUID added in v0.28.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetParentHero added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetParentIndex added in v0.26.0

func (m *MediaContainerWithPlaylistMetadataMetadata) GetParentIndex() *int

func (*MediaContainerWithPlaylistMetadataMetadata) GetParentKey added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetParentRatingKey added in v0.26.0

func (m *MediaContainerWithPlaylistMetadataMetadata) GetParentRatingKey() *string

func (*MediaContainerWithPlaylistMetadataMetadata) GetParentThumb added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetParentTitle added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetPlaylistType added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetPrimaryExtraKey added in v0.26.0

func (m *MediaContainerWithPlaylistMetadataMetadata) GetPrimaryExtraKey() *string

func (*MediaContainerWithPlaylistMetadataMetadata) GetPrompt added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetRating added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetRatingArray added in v0.26.0

func (m *MediaContainerWithPlaylistMetadataMetadata) GetRatingArray() []Tag

func (*MediaContainerWithPlaylistMetadataMetadata) GetRatingCount added in v0.26.0

func (m *MediaContainerWithPlaylistMetadataMetadata) GetRatingCount() *int

func (*MediaContainerWithPlaylistMetadataMetadata) GetRatingImage added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetRatingKey added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetReadOnly added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetRole added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetSearch added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetSecondary added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetSkipChildren added in v0.26.0

func (m *MediaContainerWithPlaylistMetadataMetadata) GetSkipChildren() *bool

func (*MediaContainerWithPlaylistMetadataMetadata) GetSkipParent added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetSmart added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetSort added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetSpecialPlaylistType added in v0.26.0

func (m *MediaContainerWithPlaylistMetadataMetadata) GetSpecialPlaylistType() *string

func (*MediaContainerWithPlaylistMetadataMetadata) GetStudio added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetSubtype added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetSummary added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetTagline added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetTheme added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetThumb added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetTitle added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetTitleSort added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetType added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetUpdatedAt added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetUserRating added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetViewCount added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetViewOffset added in v0.26.0

func (m *MediaContainerWithPlaylistMetadataMetadata) GetViewOffset() *int

func (*MediaContainerWithPlaylistMetadataMetadata) GetViewedLeafCount added in v0.26.0

func (m *MediaContainerWithPlaylistMetadataMetadata) GetViewedLeafCount() *int

func (*MediaContainerWithPlaylistMetadataMetadata) GetWriter added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) GetYear added in v0.26.0

func (MediaContainerWithPlaylistMetadataMetadata) MarshalJSON added in v0.26.0

func (*MediaContainerWithPlaylistMetadataMetadata) UnmarshalJSON added in v0.26.0

func (m *MediaContainerWithPlaylistMetadataMetadata) UnmarshalJSON(data []byte) error

type MediaContainerWithSettings added in v0.26.0

type MediaContainerWithSettings struct {
	MediaContainer *MediaContainerWithSettingsMediaContainer `json:"MediaContainer,omitempty"`
}

func (*MediaContainerWithSettings) GetMediaContainer added in v0.26.0

type MediaContainerWithSettingsMediaContainer added in v0.26.0

type MediaContainerWithSettingsMediaContainer struct {
	Identifier *string `json:"identifier,omitempty"`
	// The offset of where this container page starts among the total objects available. Also provided in the `X-Plex-Container-Start` header.
	//
	Offset *int64 `json:"offset,omitempty"`
	Size   *int64 `json:"size,omitempty"`
	// The total size of objects available. Also provided in the `X-Plex-Container-Total-Size` header.
	//
	TotalSize *int64    `json:"totalSize,omitempty"`
	Setting   []Setting `json:"Setting,omitempty"`
}

MediaContainerWithSettingsMediaContainer - `MediaContainer` is the root element of most Plex API responses. It serves as a generic container for various types of content (Metadata, Hubs, Directories, etc.) and includes pagination information (offset, size, totalSize) when applicable. Common attributes: - identifier: Unique identifier for this container - size: Number of items in this response page - totalSize: Total number of items available (for pagination) - offset: Starting index of this page (for pagination) The container often "hoists" common attributes from its children. For example, if all tracks in a container share the same album title, the `parentTitle` attribute may appear on the MediaContainer rather than being repeated on each track.

func (*MediaContainerWithSettingsMediaContainer) GetIdentifier added in v0.26.0

func (*MediaContainerWithSettingsMediaContainer) GetOffset added in v0.26.0

func (*MediaContainerWithSettingsMediaContainer) GetSetting added in v0.26.0

func (*MediaContainerWithSettingsMediaContainer) GetSize added in v0.26.0

func (*MediaContainerWithSettingsMediaContainer) GetTotalSize added in v0.26.0

type MediaContainerWithSubscription added in v0.26.0

type MediaContainerWithSubscription struct {
	MediaContainer *MediaContainerWithSubscriptionMediaContainer `json:"MediaContainer,omitempty"`
}

func (*MediaContainerWithSubscription) GetMediaContainer added in v0.26.0

type MediaContainerWithSubscriptionMediaContainer added in v0.26.0

type MediaContainerWithSubscriptionMediaContainer struct {
	Identifier *string `json:"identifier,omitempty"`
	// The offset of where this container page starts among the total objects available. Also provided in the `X-Plex-Container-Start` header.
	//
	Offset *int64 `json:"offset,omitempty"`
	Size   *int64 `json:"size,omitempty"`
	// The total size of objects available. Also provided in the `X-Plex-Container-Total-Size` header.
	//
	TotalSize         *int64              `json:"totalSize,omitempty"`
	MediaSubscription []MediaSubscription `json:"MediaSubscription,omitempty"`
}

MediaContainerWithSubscriptionMediaContainer - `MediaContainer` is the root element of most Plex API responses. It serves as a generic container for various types of content (Metadata, Hubs, Directories, etc.) and includes pagination information (offset, size, totalSize) when applicable. Common attributes: - identifier: Unique identifier for this container - size: Number of items in this response page - totalSize: Total number of items available (for pagination) - offset: Starting index of this page (for pagination) The container often "hoists" common attributes from its children. For example, if all tracks in a container share the same album title, the `parentTitle` attribute may appear on the MediaContainer rather than being repeated on each track.

func (*MediaContainerWithSubscriptionMediaContainer) GetIdentifier added in v0.26.0

func (*MediaContainerWithSubscriptionMediaContainer) GetMediaSubscription added in v0.26.0

func (*MediaContainerWithSubscriptionMediaContainer) GetOffset added in v0.26.0

func (*MediaContainerWithSubscriptionMediaContainer) GetSize added in v0.26.0

func (*MediaContainerWithSubscriptionMediaContainer) GetTotalSize added in v0.26.0

type MediaGrabOperation added in v0.26.0

type MediaGrabOperation struct {
	CurrentSize         *int64  `json:"currentSize,omitempty"`
	GrabberIdentifier   *string `json:"grabberIdentifier,omitempty"`
	GrabberProtocol     *string `json:"grabberProtocol,omitempty"`
	ID                  *string `json:"id,omitempty"`
	Key                 *string `json:"key,omitempty"`
	MediaIndex          *int64  `json:"mediaIndex,omitempty"`
	MediaSubscriptionID *int64  `json:"mediaSubscriptionID,omitempty"`
	// Items in a library are referred to as "metadata items." These metadata items are distinct from "media items" which represent actual instances of media that can be consumed. Consider a TV library that has a single video file in it for a particular episode of a show. The library has a single media item, but it has three metadata items: one for the show, one for the season, and one for the episode. Consider a movie library that has two video files in it: the same movie, but two different resolutions. The library has a single metadata item for the movie, but that metadata item has two media items, one for each resolution. Additionally a "media item" will have one or more "media parts" where the the parts are intended to be watched together, such as a CD1 and CD2 parts of the same movie.
	//
	// Note that when a metadata item has multiple media items, those media items should be isomorphic. That is, a 4K version and 1080p version of a movie are different versions of the same movie. They have the same duration, same summary, same rating, etc. and they can generally be considered interchangeable. A theatrical release vs. director's cut vs. unrated version on the other hand would be separate metadata items.
	//
	// Metadata items can often live in a hierarchy with relationships between them.  For example, the metadata item for an episodes is associated with a season metadata item which is associated with a show metadata item.  A similar hierarchy exists with track, album, and artist and photos and photo album.  The relationships may be expressed via relative terms and absolute terms.  For example, "leaves" refer to metadata items which has associated media (there is no media for a season nor show).  A show will have "children" in the form of seasons and a season will have "children" in the form of episodes and episodes have "parent" in the form of a season which has a "parent" in the form of a show.  Similarly, a show has "grandchildren" in the form of episodse and an episode has a "grandparent" in the form of a show.
	//
	Metadata *Metadata `json:"Metadata,omitempty"`
	Percent  *float64  `json:"percent,omitempty"`
	Provider *string   `json:"provider,omitempty"`
	Status   *Status   `json:"status,omitempty"`
}

MediaGrabOperation - A media grab opration represents a scheduled or active recording of media

func (*MediaGrabOperation) GetCurrentSize added in v0.26.0

func (m *MediaGrabOperation) GetCurrentSize() *int64

func (*MediaGrabOperation) GetGrabberIdentifier added in v0.26.0

func (m *MediaGrabOperation) GetGrabberIdentifier() *string

func (*MediaGrabOperation) GetGrabberProtocol added in v0.26.0

func (m *MediaGrabOperation) GetGrabberProtocol() *string

func (*MediaGrabOperation) GetID added in v0.26.0

func (m *MediaGrabOperation) GetID() *string

func (*MediaGrabOperation) GetKey added in v0.26.0

func (m *MediaGrabOperation) GetKey() *string

func (*MediaGrabOperation) GetMediaIndex added in v0.26.0

func (m *MediaGrabOperation) GetMediaIndex() *int64

func (*MediaGrabOperation) GetMediaSubscriptionID added in v0.26.0

func (m *MediaGrabOperation) GetMediaSubscriptionID() *int64

func (*MediaGrabOperation) GetMetadata added in v0.26.0

func (m *MediaGrabOperation) GetMetadata() *Metadata

func (*MediaGrabOperation) GetPercent added in v0.26.0

func (m *MediaGrabOperation) GetPercent() *float64

func (*MediaGrabOperation) GetProvider added in v0.26.0

func (m *MediaGrabOperation) GetProvider() *string

func (*MediaGrabOperation) GetStatus added in v0.26.0

func (m *MediaGrabOperation) GetStatus() *Status

type MediaQuery added in v0.26.0

type MediaQuery struct {
	// The type of media to retrieve or filter by.
	//
	// 1 = movie
	// 2 = show
	// 3 = season
	// 4 = episode
	// 5 = artist
	// 6 = album
	// 7 = track
	// 8 = photo_album
	// 9 = photo
	//
	// E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
	//
	Type *MediaType `queryParam:"name=type"`
	// Change the default level to which fields refer (used with type for hierarchical queries)
	SourceType *int64 `queryParam:"name=sourceType"`
	// Field(s) to sort by, with optional modifiers. Use comma to separate multiple fields, and :desc or :nullsLast for modifiers (e.g., "duration:desc,index")
	Sort *string `queryParam:"name=sort"`
	// Field to group results by (similar to SQL GROUP BY)
	Group *string `queryParam:"name=group"`
	// Maximum number of results to return
	Limit *int64 `queryParam:"name=limit"`
}

MediaQuery - A querystring-based filtering language used to select subsets of media. When provided as an object, properties are serialized as a querystring using form style with explode.

Only the defined properties below are allowed. The object serializes to a querystring format like: `type=4&sourceType=2&sort=duration:desc,index`

func (*MediaQuery) GetGroup added in v0.28.0

func (m *MediaQuery) GetGroup() *string

func (*MediaQuery) GetLimit added in v0.28.0

func (m *MediaQuery) GetLimit() *int64

func (*MediaQuery) GetSort added in v0.28.0

func (m *MediaQuery) GetSort() *string

func (*MediaQuery) GetSourceType added in v0.28.0

func (m *MediaQuery) GetSourceType() *int64

func (*MediaQuery) GetType added in v0.28.0

func (m *MediaQuery) GetType() *MediaType

type MediaReviewsVisibility added in v0.28.0

type MediaReviewsVisibility int

MediaReviewsVisibility - Whether or not the account has media reviews visibility enabled

const (
	MediaReviewsVisibilityNoOne               MediaReviewsVisibility = 0
	MediaReviewsVisibilityCriticsOnly         MediaReviewsVisibility = 1
	MediaReviewsVisibilityPlexUsersOnly       MediaReviewsVisibility = 2
	MediaReviewsVisibilityPlexUsersAndCritics MediaReviewsVisibility = 3
)

func (MediaReviewsVisibility) ToPointer added in v0.28.0

func (*MediaReviewsVisibility) UnmarshalJSON added in v0.28.0

func (e *MediaReviewsVisibility) UnmarshalJSON(data []byte) error

type MediaSubscription added in v0.26.0

type MediaSubscription struct {
	Title *string `json:"title,omitempty"`
	// The metadata type of the root item of the subscription
	Type        *int64       `json:"type,omitempty"`
	AiringsType *AiringsType `json:"airingsType,omitempty"`
	CreatedAt   *int64       `json:"createdAt,omitempty"`
	// Media Matching Hints
	Directory map[string]any `json:"Directory,omitempty"`
	// Only included if `includeStorage` is specified
	DurationTotal       *int64               `json:"durationTotal,omitempty"`
	Key                 *string              `json:"key,omitempty"`
	LibrarySectionTitle *string              `json:"librarySectionTitle,omitempty"`
	LocationPath        *string              `json:"locationPath,omitempty"`
	MediaGrabOperation  []MediaGrabOperation `json:"MediaGrabOperation,omitempty"`
	// Media Matching Hints
	Playlist map[string]any `json:"Playlist,omitempty"`
	Setting  []Setting      `json:"Setting,omitempty"`
	// Only included if `includeStorage` is specified
	StorageTotal *int64 `json:"storageTotal,omitempty"`
	// The library section id for where the item is to be recorded
	TargetLibrarySectionID *int64 `json:"targetLibrarySectionID,omitempty"`
	// The library section location id for where the item is to be recorded
	TargetSectionLocationID *int64 `json:"targetSectionLocationID,omitempty"`
	// Media Matching Hints
	Video map[string]any `json:"Video,omitempty"`
}

MediaSubscription - A media subscription contains a representation of metadata desired to be recorded

func (*MediaSubscription) GetAiringsType added in v0.26.0

func (m *MediaSubscription) GetAiringsType() *AiringsType

func (*MediaSubscription) GetCreatedAt added in v0.26.0

func (m *MediaSubscription) GetCreatedAt() *int64

func (*MediaSubscription) GetDirectory added in v0.26.0

func (m *MediaSubscription) GetDirectory() map[string]any

func (*MediaSubscription) GetDurationTotal added in v0.26.0

func (m *MediaSubscription) GetDurationTotal() *int64

func (*MediaSubscription) GetKey added in v0.26.0

func (m *MediaSubscription) GetKey() *string

func (*MediaSubscription) GetLibrarySectionTitle added in v0.26.0

func (m *MediaSubscription) GetLibrarySectionTitle() *string

func (*MediaSubscription) GetLocationPath added in v0.26.0

func (m *MediaSubscription) GetLocationPath() *string

func (*MediaSubscription) GetMediaGrabOperation added in v0.26.0

func (m *MediaSubscription) GetMediaGrabOperation() []MediaGrabOperation

func (*MediaSubscription) GetPlaylist added in v0.26.0

func (m *MediaSubscription) GetPlaylist() map[string]any

func (*MediaSubscription) GetSetting added in v0.26.0

func (m *MediaSubscription) GetSetting() []Setting

func (*MediaSubscription) GetStorageTotal added in v0.26.0

func (m *MediaSubscription) GetStorageTotal() *int64

func (*MediaSubscription) GetTargetLibrarySectionID added in v0.26.0

func (m *MediaSubscription) GetTargetLibrarySectionID() *int64

func (*MediaSubscription) GetTargetSectionLocationID added in v0.26.0

func (m *MediaSubscription) GetTargetSectionLocationID() *int64

func (*MediaSubscription) GetTitle added in v0.26.0

func (m *MediaSubscription) GetTitle() *string

func (*MediaSubscription) GetType added in v0.26.0

func (m *MediaSubscription) GetType() *int64

func (*MediaSubscription) GetVideo added in v0.26.0

func (m *MediaSubscription) GetVideo() map[string]any

type MediaType added in v0.28.0

type MediaType int64

MediaType - The type of media to retrieve or filter by.

1 = movie 2 = show 3 = season 4 = episode 5 = artist 6 = album 7 = track 8 = photo_album 9 = photo

E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries

const (
	MediaTypeMovie      MediaType = 1
	MediaTypeTvShow     MediaType = 2
	MediaTypeSeason     MediaType = 3
	MediaTypeEpisode    MediaType = 4
	MediaTypeArtist     MediaType = 5
	MediaTypeAlbum      MediaType = 6
	MediaTypeTrack      MediaType = 7
	MediaTypePhotoAlbum MediaType = 8
	MediaTypePhoto      MediaType = 9
)

func (MediaType) ToPointer added in v0.28.0

func (e MediaType) ToPointer() *MediaType

func (*MediaType) UnmarshalJSON added in v0.28.0

func (e *MediaType) UnmarshalJSON(data []byte) error

type MediaTypeString added in v0.28.0

type MediaTypeString string

MediaTypeString - The type of media content in the Plex library. This can represent videos, music, or photos.

const (
	MediaTypeStringMovie      MediaTypeString = "movie"
	MediaTypeStringTvShow     MediaTypeString = "show"
	MediaTypeStringSeason     MediaTypeString = "season"
	MediaTypeStringEpisode    MediaTypeString = "episode"
	MediaTypeStringArtist     MediaTypeString = "artist"
	MediaTypeStringAlbum      MediaTypeString = "album"
	MediaTypeStringTrack      MediaTypeString = "track"
	MediaTypeStringPhotoAlbum MediaTypeString = "photoalbum"
	MediaTypeStringPhoto      MediaTypeString = "photo"
	MediaTypeStringCollection MediaTypeString = "collection"
)

func (MediaTypeString) ToPointer added in v0.28.0

func (e MediaTypeString) ToPointer() *MediaTypeString

func (*MediaTypeString) UnmarshalJSON added in v0.28.0

func (e *MediaTypeString) UnmarshalJSON(data []byte) error

type Metadata added in v0.26.0

type Metadata struct {
	// The title of the item (e.g. “300” or “The Simpsons”)
	Title string `json:"title"`
	// The type of the video item, such as `movie`, `episode`, or `clip`.
	Type string `json:"type"`
	// When present, contains the disc number for a track on multi-disc albums.
	AbsoluteIndex *int `json:"absoluteIndex,omitempty"`
	// In units of seconds since the epoch, returns the time at which the item was added to the library.
	AddedAt int64 `json:"addedAt"`
	// When present, the URL for the background artwork for the item.
	Art *string `json:"art,omitempty"`
	// Some rating systems separate reviewer ratings from audience ratings
	AudienceRating *float32 `json:"audienceRating,omitempty"`
	// A URI representing the image to be shown with the audience rating (e.g. rottentomatoes://image.rating.spilled).
	AudienceRatingImage *string `json:"audienceRatingImage,omitempty"`
	Autotag             []Tag   `json:"Autotag,omitempty"`
	// When present, the URL for a banner graphic for the item.
	Banner *string `json:"banner,omitempty"`
	// When present, indicates the source for the chapters in the media file. Can be media (the chapters were embedded in the media itself), agent (a metadata agent computed them), or mixed (a combination of the two).
	ChapterSource *string `json:"chapterSource,omitempty"`
	// The number of child items associated with this media item.
	ChildCount *int `json:"childCount,omitempty"`
	// When present, the URL for a composite image for descendent items (e.g. photo albums or playlists).
	Composite *string `json:"composite,omitempty"`
	// If known, the content rating (e.g. MPAA) for an item.
	ContentRating *string `json:"contentRating,omitempty"`
	Country       []Tag   `json:"Country,omitempty"`
	Director      []Tag   `json:"Director,omitempty"`
	// When present, the duration for the item, in units of milliseconds.
	Duration *int `json:"duration,omitempty"`
	// Typically only seen in metadata at a library's top level
	Filter []Filter `json:"Filter,omitempty"`
	Genre  []Tag    `json:"Genre,omitempty"`
	// The `art` of the grandparent
	GrandparentArt *string `json:"grandparentArt,omitempty"`
	// The GUID of the grandparent media item.
	GrandparentGUID *string `json:"grandparentGuid,omitempty"`
	// The `hero` of the grandparent
	GrandparentHero *string `json:"grandparentHero,omitempty"`
	// The `key` of the grandparent
	GrandparentKey *string `json:"grandparentKey,omitempty"`
	// The `ratingKey` of the grandparent
	GrandparentRatingKey *string `json:"grandparentRatingKey,omitempty"`
	// The `theme` of the grandparent
	GrandparentTheme *string `json:"grandparentTheme,omitempty"`
	// The `thumb` of the grandparent
	GrandparentThumb *string `json:"grandparentThumb,omitempty"`
	// The `title` of the grandparent
	GrandparentTitle *string `json:"grandparentTitle,omitempty"`
	// The globally unique identifier for the media item.
	GUID  *string `json:"guid,omitempty"`
	Guids []Guids `json:"Guid,omitempty"`
	// When present, the URL for a hero image for the item.
	Hero  *string `json:"hero,omitempty"`
	Image []Image `json:"Image,omitempty"`
	// When present, this represents the episode number for episodes, season number for seasons, or track number for audio tracks.
	Index *int `json:"index,omitempty"`
	// The key at which the item's details can be fetched.  In many cases a metadata item may be passed without all the details (such as in a hub) and this key corresponds to the endpoint to fetch additional details.
	Key          string `json:"key"`
	LastViewedAt *int64 `json:"lastViewedAt,omitempty"`
	// For shows and seasons, contains the number of total episodes.
	LeafCount *int    `json:"leafCount,omitempty"`
	Media     []Media `json:"Media,omitempty"`
	// When present, in the format YYYY-MM-DD [HH:MM:SS] (the hours/minutes/seconds part is not always present). The air date, or a higher resolution release date for an item, depending on type. For example, episodes usually have air date like 1979-08-10 (we don't use epoch seconds because media existed prior to 1970). In some cases, recorded over-the-air content has higher resolution air date which includes a time component. Albums and movies may have day-resolution release dates as well.
	OriginallyAvailableAt *types.Date `json:"originallyAvailableAt,omitempty"`
	// When present, used to indicate an item's original title, e.g. a movie's foreign title.
	OriginalTitle *string `json:"originalTitle,omitempty"`
	// The GUID of the parent media item.
	ParentGUID *string `json:"parentGuid,omitempty"`
	// The `hero` of the parent
	ParentHero *string `json:"parentHero,omitempty"`
	// The `index` of the parent
	ParentIndex *int `json:"parentIndex,omitempty"`
	// The `key` of the parent
	ParentKey *string `json:"parentKey,omitempty"`
	// The `ratingKey` of the parent
	ParentRatingKey *string `json:"parentRatingKey,omitempty"`
	// The `thumb` of the parent
	ParentThumb *string `json:"parentThumb,omitempty"`
	// The `title` of the parent
	ParentTitle *string `json:"parentTitle,omitempty"`
	// Indicates that the item has a primary extra; for a movie, this is a trailer, and for a music track it is a music video. The URL points to the metadata details endpoint for the item.
	PrimaryExtraKey *string `json:"primaryExtraKey,omitempty"`
	// Prompt to give the user for this directory (such as `Search Movies`)
	Prompt *string `json:"prompt,omitempty"`
	// When present, the rating for the item. The exact meaning and representation depends on where the rating was sourced from.
	Rating      *float32 `json:"rating,omitempty"`
	RatingArray []Tag    `json:"Rating,omitempty"`
	// Number of ratings under this metadata
	RatingCount *int `json:"ratingCount,omitempty"`
	// When present, indicates an image to be shown with the rating. This is passed back as a small set of defined URI values, e.g. rottentomatoes://image.rating.rotten.
	RatingImage *string `json:"ratingImage,omitempty"`
	// This is the opaque string to be passed into timeline, scrobble, and rating endpoints to identify them.  While it often appears to be numeric, this is not guaranteed.
	RatingKey *string `json:"ratingKey,omitempty"`
	Role      []Tag   `json:"Role,omitempty"`
	// Indicates this is a search directory
	Search *bool `json:"search,omitempty"`
	// Used by old clients to provide nested menus allowing for primative (but structured) navigation.
	Secondary *bool `json:"secondary,omitempty"`
	// When found on a show item, indicates that the children (seasons) should be skipped in favor of the grandchildren (episodes). Useful for mini-series, etc.
	SkipChildren *bool `json:"skipChildren,omitempty"`
	// When present on an episode or track item, indicates parent should be skipped in favor of grandparent (show).
	SkipParent *bool `json:"skipParent,omitempty"`
	// Typically only seen in metadata at a library's top level
	Sort []Sort `json:"Sort,omitempty"`
	// When present, the studio or label which produced an item (e.g. movie studio for movies, record label for albums).
	Studio *string `json:"studio,omitempty"`
	// The subtype of the video item, such as `photo` when the video item is in a photo library
	Subtype *string `json:"subtype,omitempty"`
	// When present, the extended textual information about the item (e.g. movie plot, artist biography, album review).
	Summary *string `json:"summary,omitempty"`
	// When present, a pithy one-liner about the item (usually only seen for movies).
	Tagline *string `json:"tagline,omitempty"`
	// When present, the URL for theme music for the item (usually only for TV shows).
	Theme *string `json:"theme,omitempty"`
	// When present, the URL for the poster or thumbnail for the item. When available for types like movie, it will be the poster graphic, but fall-back to the extracted media thumbnail.
	Thumb *string `json:"thumb,omitempty"`
	// Whene present, this is the string used for sorting the item. It's usually the title with any leading articles removed (e.g. “Simpsons”).
	TitleSort *string `json:"titleSort,omitempty"`
	// In units of seconds since the epoch, returns the time at which the item was last changed (e.g. had its metadata updated).
	UpdatedAt *int64 `json:"updatedAt,omitempty"`
	// When the user has rated an item, this contains the user rating
	UserRating *float32 `json:"userRating,omitempty"`
	// When a users has completed watched or listened to an item, this attribute contains the number of consumptions.
	ViewCount *int `json:"viewCount,omitempty"`
	// For shows and seasons, contains the number of viewed episodes.
	ViewedLeafCount *int `json:"viewedLeafCount,omitempty"`
	// When a user is in the process of viewing or listening to this item, this attribute contains the current offset, in units of milliseconds.
	ViewOffset *int  `json:"viewOffset,omitempty"`
	Writer     []Tag `json:"Writer,omitempty"`
	// When present, the year associated with the item's release (e.g. release year for a movie).
	Year                 *int           `json:"year,omitempty"`
	AdditionalProperties map[string]any `additionalProperties:"true" json:"-"`
}

Metadata - Items in a library are referred to as "metadata items." These metadata items are distinct from "media items" which represent actual instances of media that can be consumed. Consider a TV library that has a single video file in it for a particular episode of a show. The library has a single media item, but it has three metadata items: one for the show, one for the season, and one for the episode. Consider a movie library that has two video files in it: the same movie, but two different resolutions. The library has a single metadata item for the movie, but that metadata item has two media items, one for each resolution. Additionally a "media item" will have one or more "media parts" where the the parts are intended to be watched together, such as a CD1 and CD2 parts of the same movie.

Note that when a metadata item has multiple media items, those media items should be isomorphic. That is, a 4K version and 1080p version of a movie are different versions of the same movie. They have the same duration, same summary, same rating, etc. and they can generally be considered interchangeable. A theatrical release vs. director's cut vs. unrated version on the other hand would be separate metadata items.

Metadata items can often live in a hierarchy with relationships between them. For example, the metadata item for an episodes is associated with a season metadata item which is associated with a show metadata item. A similar hierarchy exists with track, album, and artist and photos and photo album. The relationships may be expressed via relative terms and absolute terms. For example, "leaves" refer to metadata items which has associated media (there is no media for a season nor show). A show will have "children" in the form of seasons and a season will have "children" in the form of episodes and episodes have "parent" in the form of a season which has a "parent" in the form of a show. Similarly, a show has "grandchildren" in the form of episodse and an episode has a "grandparent" in the form of a show.

func (*Metadata) GetAbsoluteIndex added in v0.26.0

func (m *Metadata) GetAbsoluteIndex() *int

func (*Metadata) GetAddedAt added in v0.26.0

func (m *Metadata) GetAddedAt() int64

func (*Metadata) GetAdditionalProperties added in v0.26.0

func (m *Metadata) GetAdditionalProperties() map[string]any

func (*Metadata) GetArt added in v0.26.0

func (m *Metadata) GetArt() *string

func (*Metadata) GetAudienceRating added in v0.26.0

func (m *Metadata) GetAudienceRating() *float32

func (*Metadata) GetAudienceRatingImage added in v0.26.0

func (m *Metadata) GetAudienceRatingImage() *string

func (*Metadata) GetAutotag added in v0.26.0

func (m *Metadata) GetAutotag() []Tag

func (*Metadata) GetBanner added in v0.26.0

func (m *Metadata) GetBanner() *string

func (*Metadata) GetChapterSource added in v0.26.0

func (m *Metadata) GetChapterSource() *string

func (*Metadata) GetChildCount added in v0.28.0

func (m *Metadata) GetChildCount() *int

func (*Metadata) GetComposite added in v0.26.0

func (m *Metadata) GetComposite() *string

func (*Metadata) GetContentRating added in v0.26.0

func (m *Metadata) GetContentRating() *string

func (*Metadata) GetCountry added in v0.26.0

func (m *Metadata) GetCountry() []Tag

func (*Metadata) GetDirector added in v0.26.0

func (m *Metadata) GetDirector() []Tag

func (*Metadata) GetDuration added in v0.26.0

func (m *Metadata) GetDuration() *int

func (*Metadata) GetFilter added in v0.26.0

func (m *Metadata) GetFilter() []Filter

func (*Metadata) GetGUID added in v0.26.0

func (m *Metadata) GetGUID() *string

func (*Metadata) GetGenre added in v0.26.0

func (m *Metadata) GetGenre() []Tag

func (*Metadata) GetGrandparentArt added in v0.26.0

func (m *Metadata) GetGrandparentArt() *string

func (*Metadata) GetGrandparentGUID added in v0.28.0

func (m *Metadata) GetGrandparentGUID() *string

func (*Metadata) GetGrandparentHero added in v0.26.0

func (m *Metadata) GetGrandparentHero() *string

func (*Metadata) GetGrandparentKey added in v0.26.0

func (m *Metadata) GetGrandparentKey() *string

func (*Metadata) GetGrandparentRatingKey added in v0.26.0

func (m *Metadata) GetGrandparentRatingKey() *string

func (*Metadata) GetGrandparentTheme added in v0.26.0

func (m *Metadata) GetGrandparentTheme() *string

func (*Metadata) GetGrandparentThumb added in v0.26.0

func (m *Metadata) GetGrandparentThumb() *string

func (*Metadata) GetGrandparentTitle added in v0.26.0

func (m *Metadata) GetGrandparentTitle() *string

func (*Metadata) GetGuids added in v0.28.0

func (m *Metadata) GetGuids() []Guids

func (*Metadata) GetHero added in v0.26.0

func (m *Metadata) GetHero() *string

func (*Metadata) GetImage added in v0.26.0

func (m *Metadata) GetImage() []Image

func (*Metadata) GetIndex added in v0.26.0

func (m *Metadata) GetIndex() *int

func (*Metadata) GetKey added in v0.26.0

func (m *Metadata) GetKey() string

func (*Metadata) GetLastViewedAt added in v0.26.0

func (m *Metadata) GetLastViewedAt() *int64

func (*Metadata) GetLeafCount added in v0.26.0

func (m *Metadata) GetLeafCount() *int

func (*Metadata) GetMedia added in v0.26.0

func (m *Metadata) GetMedia() []Media

func (*Metadata) GetOriginalTitle added in v0.26.0

func (m *Metadata) GetOriginalTitle() *string

func (*Metadata) GetOriginallyAvailableAt added in v0.26.0

func (m *Metadata) GetOriginallyAvailableAt() *types.Date

func (*Metadata) GetParentGUID added in v0.28.0

func (m *Metadata) GetParentGUID() *string

func (*Metadata) GetParentHero added in v0.26.0

func (m *Metadata) GetParentHero() *string

func (*Metadata) GetParentIndex added in v0.26.0

func (m *Metadata) GetParentIndex() *int

func (*Metadata) GetParentKey added in v0.26.0

func (m *Metadata) GetParentKey() *string

func (*Metadata) GetParentRatingKey added in v0.26.0

func (m *Metadata) GetParentRatingKey() *string

func (*Metadata) GetParentThumb added in v0.26.0

func (m *Metadata) GetParentThumb() *string

func (*Metadata) GetParentTitle added in v0.26.0

func (m *Metadata) GetParentTitle() *string

func (*Metadata) GetPrimaryExtraKey added in v0.26.0

func (m *Metadata) GetPrimaryExtraKey() *string

func (*Metadata) GetPrompt added in v0.26.0

func (m *Metadata) GetPrompt() *string

func (*Metadata) GetRating added in v0.26.0

func (m *Metadata) GetRating() *float32

func (*Metadata) GetRatingArray added in v0.26.0

func (m *Metadata) GetRatingArray() []Tag

func (*Metadata) GetRatingCount added in v0.26.0

func (m *Metadata) GetRatingCount() *int

func (*Metadata) GetRatingImage added in v0.26.0

func (m *Metadata) GetRatingImage() *string

func (*Metadata) GetRatingKey added in v0.26.0

func (m *Metadata) GetRatingKey() *string

func (*Metadata) GetRole added in v0.26.0

func (m *Metadata) GetRole() []Tag

func (*Metadata) GetSearch added in v0.26.0

func (m *Metadata) GetSearch() *bool

func (*Metadata) GetSecondary added in v0.26.0

func (m *Metadata) GetSecondary() *bool

func (*Metadata) GetSkipChildren added in v0.26.0

func (m *Metadata) GetSkipChildren() *bool

func (*Metadata) GetSkipParent added in v0.26.0

func (m *Metadata) GetSkipParent() *bool

func (*Metadata) GetSort added in v0.26.0

func (m *Metadata) GetSort() []Sort

func (*Metadata) GetStudio added in v0.26.0

func (m *Metadata) GetStudio() *string

func (*Metadata) GetSubtype added in v0.26.0

func (m *Metadata) GetSubtype() *string

func (*Metadata) GetSummary added in v0.26.0

func (m *Metadata) GetSummary() *string

func (*Metadata) GetTagline added in v0.26.0

func (m *Metadata) GetTagline() *string

func (*Metadata) GetTheme added in v0.26.0

func (m *Metadata) GetTheme() *string

func (*Metadata) GetThumb added in v0.26.0

func (m *Metadata) GetThumb() *string

func (*Metadata) GetTitle added in v0.26.0

func (m *Metadata) GetTitle() string

func (*Metadata) GetTitleSort added in v0.26.0

func (m *Metadata) GetTitleSort() *string

func (*Metadata) GetType added in v0.26.0

func (m *Metadata) GetType() string

func (*Metadata) GetUpdatedAt added in v0.26.0

func (m *Metadata) GetUpdatedAt() *int64

func (*Metadata) GetUserRating added in v0.26.0

func (m *Metadata) GetUserRating() *float32

func (*Metadata) GetViewCount added in v0.26.0

func (m *Metadata) GetViewCount() *int

func (*Metadata) GetViewOffset added in v0.26.0

func (m *Metadata) GetViewOffset() *int

func (*Metadata) GetViewedLeafCount added in v0.26.0

func (m *Metadata) GetViewedLeafCount() *int

func (*Metadata) GetWriter added in v0.26.0

func (m *Metadata) GetWriter() []Tag

func (*Metadata) GetYear added in v0.26.0

func (m *Metadata) GetYear() *int

func (Metadata) MarshalJSON added in v0.26.0

func (m Metadata) MarshalJSON() ([]byte, error)

func (*Metadata) UnmarshalJSON added in v0.26.0

func (m *Metadata) UnmarshalJSON(data []byte) error

type MetadataItem added in v0.26.0

type MetadataItem struct {
	// The title of the item (e.g. “300” or “The Simpsons”)
	Title string `json:"title"`
	// The type of the video item, such as `movie`, `episode`, or `clip`.
	Type string `json:"type"`
	// When present, contains the disc number for a track on multi-disc albums.
	AbsoluteIndex *int `json:"absoluteIndex,omitempty"`
	// In units of seconds since the epoch, returns the time at which the item was added to the library.
	AddedAt int64 `json:"addedAt"`
	// When present, the URL for the background artwork for the item.
	Art *string `json:"art,omitempty"`
	// Some rating systems separate reviewer ratings from audience ratings
	AudienceRating *float32 `json:"audienceRating,omitempty"`
	// A URI representing the image to be shown with the audience rating (e.g. rottentomatoes://image.rating.spilled).
	AudienceRatingImage *string `json:"audienceRatingImage,omitempty"`
	Autotag             []Tag   `json:"Autotag,omitempty"`
	// When present, the URL for a banner graphic for the item.
	Banner *string `json:"banner,omitempty"`
	// When present, indicates the source for the chapters in the media file. Can be media (the chapters were embedded in the media itself), agent (a metadata agent computed them), or mixed (a combination of the two).
	ChapterSource *string `json:"chapterSource,omitempty"`
	// The number of child items associated with this media item.
	ChildCount *int `json:"childCount,omitempty"`
	// When present, the URL for a composite image for descendent items (e.g. photo albums or playlists).
	Composite *string `json:"composite,omitempty"`
	// If known, the content rating (e.g. MPAA) for an item.
	ContentRating *string `json:"contentRating,omitempty"`
	Country       []Tag   `json:"Country,omitempty"`
	Director      []Tag   `json:"Director,omitempty"`
	// When present, the duration for the item, in units of milliseconds.
	Duration *int `json:"duration,omitempty"`
	// Typically only seen in metadata at a library's top level
	Filter []Filter `json:"Filter,omitempty"`
	Genre  []Tag    `json:"Genre,omitempty"`
	// The `art` of the grandparent
	GrandparentArt *string `json:"grandparentArt,omitempty"`
	// The GUID of the grandparent media item.
	GrandparentGUID *string `json:"grandparentGuid,omitempty"`
	// The `hero` of the grandparent
	GrandparentHero *string `json:"grandparentHero,omitempty"`
	// The `key` of the grandparent
	GrandparentKey *string `json:"grandparentKey,omitempty"`
	// The `ratingKey` of the grandparent
	GrandparentRatingKey *string `json:"grandparentRatingKey,omitempty"`
	// The `theme` of the grandparent
	GrandparentTheme *string `json:"grandparentTheme,omitempty"`
	// The `thumb` of the grandparent
	GrandparentThumb *string `json:"grandparentThumb,omitempty"`
	// The `title` of the grandparent
	GrandparentTitle *string `json:"grandparentTitle,omitempty"`
	// The globally unique identifier for the media item.
	GUID  *string                                 `json:"guid,omitempty"`
	Guids []MediaContainerWithNestedMetadataGuids `json:"Guid,omitempty"`
	// When present, the URL for a hero image for the item.
	Hero  *string `json:"hero,omitempty"`
	Image []Image `json:"Image,omitempty"`
	// When present, this represents the episode number for episodes, season number for seasons, or track number for audio tracks.
	Index *int `json:"index,omitempty"`
	// The key at which the item's details can be fetched.  In many cases a metadata item may be passed without all the details (such as in a hub) and this key corresponds to the endpoint to fetch additional details.
	Key          string `json:"key"`
	LastViewedAt *int64 `json:"lastViewedAt,omitempty"`
	// For shows and seasons, contains the number of total episodes.
	LeafCount *int    `json:"leafCount,omitempty"`
	Media     []Media `json:"Media,omitempty"`
	// When present, in the format YYYY-MM-DD [HH:MM:SS] (the hours/minutes/seconds part is not always present). The air date, or a higher resolution release date for an item, depending on type. For example, episodes usually have air date like 1979-08-10 (we don't use epoch seconds because media existed prior to 1970). In some cases, recorded over-the-air content has higher resolution air date which includes a time component. Albums and movies may have day-resolution release dates as well.
	OriginallyAvailableAt *types.Date `json:"originallyAvailableAt,omitempty"`
	// When present, used to indicate an item's original title, e.g. a movie's foreign title.
	OriginalTitle *string `json:"originalTitle,omitempty"`
	// The GUID of the parent media item.
	ParentGUID *string `json:"parentGuid,omitempty"`
	// The `hero` of the parent
	ParentHero *string `json:"parentHero,omitempty"`
	// The `index` of the parent
	ParentIndex *int `json:"parentIndex,omitempty"`
	// The `key` of the parent
	ParentKey *string `json:"parentKey,omitempty"`
	// The `ratingKey` of the parent
	ParentRatingKey *string `json:"parentRatingKey,omitempty"`
	// The `thumb` of the parent
	ParentThumb *string `json:"parentThumb,omitempty"`
	// The `title` of the parent
	ParentTitle *string `json:"parentTitle,omitempty"`
	// Indicates that the item has a primary extra; for a movie, this is a trailer, and for a music track it is a music video. The URL points to the metadata details endpoint for the item.
	PrimaryExtraKey *string `json:"primaryExtraKey,omitempty"`
	// Prompt to give the user for this directory (such as `Search Movies`)
	Prompt *string `json:"prompt,omitempty"`
	// When present, the rating for the item. The exact meaning and representation depends on where the rating was sourced from.
	Rating      *float32 `json:"rating,omitempty"`
	RatingArray []Tag    `json:"Rating,omitempty"`
	// Number of ratings under this metadata
	RatingCount *int `json:"ratingCount,omitempty"`
	// When present, indicates an image to be shown with the rating. This is passed back as a small set of defined URI values, e.g. rottentomatoes://image.rating.rotten.
	RatingImage *string `json:"ratingImage,omitempty"`
	// This is the opaque string to be passed into timeline, scrobble, and rating endpoints to identify them.  While it often appears to be numeric, this is not guaranteed.
	RatingKey *string `json:"ratingKey,omitempty"`
	Role      []Tag   `json:"Role,omitempty"`
	// Indicates this is a search directory
	Search *bool `json:"search,omitempty"`
	// Used by old clients to provide nested menus allowing for primative (but structured) navigation.
	Secondary *bool `json:"secondary,omitempty"`
	// When found on a show item, indicates that the children (seasons) should be skipped in favor of the grandchildren (episodes). Useful for mini-series, etc.
	SkipChildren *bool `json:"skipChildren,omitempty"`
	// When present on an episode or track item, indicates parent should be skipped in favor of grandparent (show).
	SkipParent *bool `json:"skipParent,omitempty"`
	// Typically only seen in metadata at a library's top level
	Sort []Sort `json:"Sort,omitempty"`
	// When present, the studio or label which produced an item (e.g. movie studio for movies, record label for albums).
	Studio *string `json:"studio,omitempty"`
	// The subtype of the video item, such as `photo` when the video item is in a photo library
	Subtype *string `json:"subtype,omitempty"`
	// When present, the extended textual information about the item (e.g. movie plot, artist biography, album review).
	Summary *string `json:"summary,omitempty"`
	// When present, a pithy one-liner about the item (usually only seen for movies).
	Tagline *string `json:"tagline,omitempty"`
	// When present, the URL for theme music for the item (usually only for TV shows).
	Theme *string `json:"theme,omitempty"`
	// When present, the URL for the poster or thumbnail for the item. When available for types like movie, it will be the poster graphic, but fall-back to the extracted media thumbnail.
	Thumb *string `json:"thumb,omitempty"`
	// Whene present, this is the string used for sorting the item. It's usually the title with any leading articles removed (e.g. “Simpsons”).
	TitleSort *string `json:"titleSort,omitempty"`
	// In units of seconds since the epoch, returns the time at which the item was last changed (e.g. had its metadata updated).
	UpdatedAt *int64 `json:"updatedAt,omitempty"`
	// When the user has rated an item, this contains the user rating
	UserRating *float32 `json:"userRating,omitempty"`
	// When a users has completed watched or listened to an item, this attribute contains the number of consumptions.
	ViewCount *int `json:"viewCount,omitempty"`
	// For shows and seasons, contains the number of viewed episodes.
	ViewedLeafCount *int `json:"viewedLeafCount,omitempty"`
	// When a user is in the process of viewing or listening to this item, this attribute contains the current offset, in units of milliseconds.
	ViewOffset *int  `json:"viewOffset,omitempty"`
	Writer     []Tag `json:"Writer,omitempty"`
	// When present, the year associated with the item's release (e.g. release year for a movie).
	Year                 *int           `json:"year,omitempty"`
	MetadataItem         []Items        `json:"MetadataItem,omitempty"`
	AdditionalProperties map[string]any `additionalProperties:"true" json:"-"`
}

MetadataItem - Items in a library are referred to as "metadata items." These metadata items are distinct from "media items" which represent actual instances of media that can be consumed. Consider a TV library that has a single video file in it for a particular episode of a show. The library has a single media item, but it has three metadata items: one for the show, one for the season, and one for the episode. Consider a movie library that has two video files in it: the same movie, but two different resolutions. The library has a single metadata item for the movie, but that metadata item has two media items, one for each resolution. Additionally a "media item" will have one or more "media parts" where the the parts are intended to be watched together, such as a CD1 and CD2 parts of the same movie.

Note that when a metadata item has multiple media items, those media items should be isomorphic. That is, a 4K version and 1080p version of a movie are different versions of the same movie. They have the same duration, same summary, same rating, etc. and they can generally be considered interchangeable. A theatrical release vs. director's cut vs. unrated version on the other hand would be separate metadata items.

Metadata items can often live in a hierarchy with relationships between them. For example, the metadata item for an episodes is associated with a season metadata item which is associated with a show metadata item. A similar hierarchy exists with track, album, and artist and photos and photo album. The relationships may be expressed via relative terms and absolute terms. For example, "leaves" refer to metadata items which has associated media (there is no media for a season nor show). A show will have "children" in the form of seasons and a season will have "children" in the form of episodes and episodes have "parent" in the form of a season which has a "parent" in the form of a show. Similarly, a show has "grandchildren" in the form of episodse and an episode has a "grandparent" in the form of a show.

func (*MetadataItem) GetAbsoluteIndex added in v0.26.0

func (m *MetadataItem) GetAbsoluteIndex() *int

func (*MetadataItem) GetAddedAt added in v0.26.0

func (m *MetadataItem) GetAddedAt() int64

func (*MetadataItem) GetAdditionalProperties added in v0.26.0

func (m *MetadataItem) GetAdditionalProperties() map[string]any

func (*MetadataItem) GetArt added in v0.26.0

func (m *MetadataItem) GetArt() *string

func (*MetadataItem) GetAudienceRating added in v0.26.0

func (m *MetadataItem) GetAudienceRating() *float32

func (*MetadataItem) GetAudienceRatingImage added in v0.26.0

func (m *MetadataItem) GetAudienceRatingImage() *string

func (*MetadataItem) GetAutotag added in v0.26.0

func (m *MetadataItem) GetAutotag() []Tag

func (*MetadataItem) GetBanner added in v0.26.0

func (m *MetadataItem) GetBanner() *string

func (*MetadataItem) GetChapterSource added in v0.26.0

func (m *MetadataItem) GetChapterSource() *string

func (*MetadataItem) GetChildCount added in v0.28.0

func (m *MetadataItem) GetChildCount() *int

func (*MetadataItem) GetComposite added in v0.26.0

func (m *MetadataItem) GetComposite() *string

func (*MetadataItem) GetContentRating added in v0.26.0

func (m *MetadataItem) GetContentRating() *string

func (*MetadataItem) GetCountry added in v0.26.0

func (m *MetadataItem) GetCountry() []Tag

func (*MetadataItem) GetDirector added in v0.26.0

func (m *MetadataItem) GetDirector() []Tag

func (*MetadataItem) GetDuration added in v0.26.0

func (m *MetadataItem) GetDuration() *int

func (*MetadataItem) GetFilter added in v0.26.0

func (m *MetadataItem) GetFilter() []Filter

func (*MetadataItem) GetGUID added in v0.26.0

func (m *MetadataItem) GetGUID() *string

func (*MetadataItem) GetGenre added in v0.26.0

func (m *MetadataItem) GetGenre() []Tag

func (*MetadataItem) GetGrandparentArt added in v0.26.0

func (m *MetadataItem) GetGrandparentArt() *string

func (*MetadataItem) GetGrandparentGUID added in v0.28.0

func (m *MetadataItem) GetGrandparentGUID() *string

func (*MetadataItem) GetGrandparentHero added in v0.26.0

func (m *MetadataItem) GetGrandparentHero() *string

func (*MetadataItem) GetGrandparentKey added in v0.26.0

func (m *MetadataItem) GetGrandparentKey() *string

func (*MetadataItem) GetGrandparentRatingKey added in v0.26.0

func (m *MetadataItem) GetGrandparentRatingKey() *string

func (*MetadataItem) GetGrandparentTheme added in v0.26.0

func (m *MetadataItem) GetGrandparentTheme() *string

func (*MetadataItem) GetGrandparentThumb added in v0.26.0

func (m *MetadataItem) GetGrandparentThumb() *string

func (*MetadataItem) GetGrandparentTitle added in v0.26.0

func (m *MetadataItem) GetGrandparentTitle() *string

func (*MetadataItem) GetGuids added in v0.28.0

func (*MetadataItem) GetHero added in v0.26.0

func (m *MetadataItem) GetHero() *string

func (*MetadataItem) GetImage added in v0.26.0

func (m *MetadataItem) GetImage() []Image

func (*MetadataItem) GetIndex added in v0.26.0

func (m *MetadataItem) GetIndex() *int

func (*MetadataItem) GetKey added in v0.26.0

func (m *MetadataItem) GetKey() string

func (*MetadataItem) GetLastViewedAt added in v0.26.0

func (m *MetadataItem) GetLastViewedAt() *int64

func (*MetadataItem) GetLeafCount added in v0.26.0

func (m *MetadataItem) GetLeafCount() *int

func (*MetadataItem) GetMedia added in v0.26.0

func (m *MetadataItem) GetMedia() []Media

func (*MetadataItem) GetMetadataItem added in v0.26.0

func (m *MetadataItem) GetMetadataItem() []Items

func (*MetadataItem) GetOriginalTitle added in v0.26.0

func (m *MetadataItem) GetOriginalTitle() *string

func (*MetadataItem) GetOriginallyAvailableAt added in v0.26.0

func (m *MetadataItem) GetOriginallyAvailableAt() *types.Date

func (*MetadataItem) GetParentGUID added in v0.28.0

func (m *MetadataItem) GetParentGUID() *string

func (*MetadataItem) GetParentHero added in v0.26.0

func (m *MetadataItem) GetParentHero() *string

func (*MetadataItem) GetParentIndex added in v0.26.0

func (m *MetadataItem) GetParentIndex() *int

func (*MetadataItem) GetParentKey added in v0.26.0

func (m *MetadataItem) GetParentKey() *string

func (*MetadataItem) GetParentRatingKey added in v0.26.0

func (m *MetadataItem) GetParentRatingKey() *string

func (*MetadataItem) GetParentThumb added in v0.26.0

func (m *MetadataItem) GetParentThumb() *string

func (*MetadataItem) GetParentTitle added in v0.26.0

func (m *MetadataItem) GetParentTitle() *string

func (*MetadataItem) GetPrimaryExtraKey added in v0.26.0

func (m *MetadataItem) GetPrimaryExtraKey() *string

func (*MetadataItem) GetPrompt added in v0.26.0

func (m *MetadataItem) GetPrompt() *string

func (*MetadataItem) GetRating added in v0.26.0

func (m *MetadataItem) GetRating() *float32

func (*MetadataItem) GetRatingArray added in v0.26.0

func (m *MetadataItem) GetRatingArray() []Tag

func (*MetadataItem) GetRatingCount added in v0.26.0

func (m *MetadataItem) GetRatingCount() *int

func (*MetadataItem) GetRatingImage added in v0.26.0

func (m *MetadataItem) GetRatingImage() *string

func (*MetadataItem) GetRatingKey added in v0.26.0

func (m *MetadataItem) GetRatingKey() *string

func (*MetadataItem) GetRole added in v0.26.0

func (m *MetadataItem) GetRole() []Tag

func (*MetadataItem) GetSearch added in v0.26.0

func (m *MetadataItem) GetSearch() *bool

func (*MetadataItem) GetSecondary added in v0.26.0

func (m *MetadataItem) GetSecondary() *bool

func (*MetadataItem) GetSkipChildren added in v0.26.0

func (m *MetadataItem) GetSkipChildren() *bool

func (*MetadataItem) GetSkipParent added in v0.26.0

func (m *MetadataItem) GetSkipParent() *bool

func (*MetadataItem) GetSort added in v0.26.0

func (m *MetadataItem) GetSort() []Sort

func (*MetadataItem) GetStudio added in v0.26.0

func (m *MetadataItem) GetStudio() *string

func (*MetadataItem) GetSubtype added in v0.26.0

func (m *MetadataItem) GetSubtype() *string

func (*MetadataItem) GetSummary added in v0.26.0

func (m *MetadataItem) GetSummary() *string

func (*MetadataItem) GetTagline added in v0.26.0

func (m *MetadataItem) GetTagline() *string

func (*MetadataItem) GetTheme added in v0.26.0

func (m *MetadataItem) GetTheme() *string

func (*MetadataItem) GetThumb added in v0.26.0

func (m *MetadataItem) GetThumb() *string

func (*MetadataItem) GetTitle added in v0.26.0

func (m *MetadataItem) GetTitle() string

func (*MetadataItem) GetTitleSort added in v0.26.0

func (m *MetadataItem) GetTitleSort() *string

func (*MetadataItem) GetType added in v0.26.0

func (m *MetadataItem) GetType() string

func (*MetadataItem) GetUpdatedAt added in v0.26.0

func (m *MetadataItem) GetUpdatedAt() *int64

func (*MetadataItem) GetUserRating added in v0.26.0

func (m *MetadataItem) GetUserRating() *float32

func (*MetadataItem) GetViewCount added in v0.26.0

func (m *MetadataItem) GetViewCount() *int

func (*MetadataItem) GetViewOffset added in v0.26.0

func (m *MetadataItem) GetViewOffset() *int

func (*MetadataItem) GetViewedLeafCount added in v0.26.0

func (m *MetadataItem) GetViewedLeafCount() *int

func (*MetadataItem) GetWriter added in v0.26.0

func (m *MetadataItem) GetWriter() []Tag

func (*MetadataItem) GetYear added in v0.26.0

func (m *MetadataItem) GetYear() *int

func (MetadataItem) MarshalJSON added in v0.26.0

func (m MetadataItem) MarshalJSON() ([]byte, error)

func (*MetadataItem) UnmarshalJSON added in v0.26.0

func (m *MetadataItem) UnmarshalJSON(data []byte) error

type Part added in v0.26.0

type Part struct {
	// Indicates if the part is accessible.
	Accessible   *bool   `json:"accessible,omitempty"`
	AudioProfile *string `json:"audioProfile,omitempty"`
	// The container of the media file, such as `mp4` or `mkv`
	Container *string `json:"container,omitempty"`
	// The duration of the media item, in milliseconds
	Duration *int `json:"duration,omitempty"`
	// Indicates if the part exists.
	Exists *bool `json:"exists,omitempty"`
	// The local file path at which the part is stored on the server
	File            *string `json:"file,omitempty"`
	Has64bitOffsets *bool   `json:"has64bitOffsets,omitempty"`
	ID              int64   `json:"id"`
	Indexes         *string `json:"indexes,omitempty"`
	// The key from which the media can be streamed
	Key                   string `json:"key"`
	OptimizedForStreaming *bool  `json:"optimizedForStreaming,omitempty"`
	// The size of the media, in bytes
	Size                 *int64         `json:"size,omitempty"`
	Stream               []Stream       `json:"Stream,omitempty"`
	VideoProfile         *string        `json:"videoProfile,omitempty"`
	AdditionalProperties map[string]any `additionalProperties:"true" json:"-"`
}

Part - `Part` represents a particular file or "part" of a media item. The part is the playable unit of the media hierarchy. Suppose that a movie library contains a movie that is broken up into files, reminiscent of a movie split across two BDs. The metadata item represents information about the movie, the media item represents this instance of the movie at this resolution and quality, and the part items represent the two playable files. If another media were added which contained the joining of these two parts transcoded down to a lower resolution, then this metadata would contain 2 medias, one with 2 parts and one with 1 part.

func (*Part) GetAccessible added in v0.28.0

func (p *Part) GetAccessible() *bool

func (*Part) GetAdditionalProperties added in v0.26.0

func (p *Part) GetAdditionalProperties() map[string]any

func (*Part) GetAudioProfile added in v0.26.0

func (p *Part) GetAudioProfile() *string

func (*Part) GetContainer added in v0.26.0

func (p *Part) GetContainer() *string

func (*Part) GetDuration added in v0.26.0

func (p *Part) GetDuration() *int

func (*Part) GetExists added in v0.28.0

func (p *Part) GetExists() *bool

func (*Part) GetFile added in v0.26.0

func (p *Part) GetFile() *string

func (*Part) GetHas64bitOffsets added in v0.26.0

func (p *Part) GetHas64bitOffsets() *bool

func (*Part) GetID added in v0.26.0

func (p *Part) GetID() int64

func (*Part) GetIndexes added in v0.28.0

func (p *Part) GetIndexes() *string

func (*Part) GetKey added in v0.26.0

func (p *Part) GetKey() string

func (*Part) GetOptimizedForStreaming added in v0.26.0

func (p *Part) GetOptimizedForStreaming() *bool

func (*Part) GetSize added in v0.26.0

func (p *Part) GetSize() *int64

func (*Part) GetStream added in v0.26.0

func (p *Part) GetStream() []Stream

func (*Part) GetVideoProfile added in v0.26.0

func (p *Part) GetVideoProfile() *string

func (Part) MarshalJSON added in v0.26.0

func (p Part) MarshalJSON() ([]byte, error)

func (*Part) UnmarshalJSON added in v0.26.0

func (p *Part) UnmarshalJSON(data []byte) error

type Pivot added in v0.26.0

type Pivot struct {
	Title   *string `json:"title,omitempty"`
	Type    *string `json:"type,omitempty"`
	Context *string `json:"context,omitempty"`
	ID      *string `json:"id,omitempty"`
	Key     *string `json:"key,omitempty"`
	Symbol  *string `json:"symbol,omitempty"`
}

func (*Pivot) GetContext added in v0.26.0

func (p *Pivot) GetContext() *string

func (*Pivot) GetID added in v0.26.0

func (p *Pivot) GetID() *string

func (*Pivot) GetKey added in v0.26.0

func (p *Pivot) GetKey() *string

func (*Pivot) GetSymbol added in v0.26.0

func (p *Pivot) GetSymbol() *string

func (*Pivot) GetTitle added in v0.26.0

func (p *Pivot) GetTitle() *string

func (*Pivot) GetType added in v0.26.0

func (p *Pivot) GetType() *string

type Player added in v0.26.0

type Player struct {
	// The title of the client
	Title *string `json:"title,omitempty"`
	// The remote address
	Address *string `json:"address,omitempty"`
	// Indicating if the client is playing from the local LAN
	Local *bool `json:"local,omitempty"`
	// The identifier of the client
	MachineIdentifier *string `json:"machineIdentifier,omitempty"`
	// The model of the client
	Model *string `json:"model,omitempty"`
	// The platform of the client
	Platform *string `json:"platform,omitempty"`
	// The platformVersion of the client
	PlatformVersion *string `json:"platformVersion,omitempty"`
	// The product name of the client
	Product *string `json:"product,omitempty"`
	// Indicating if the client is playing over a relay connection
	Relayed *bool `json:"relayed,omitempty"`
	// The client's public address
	RemotePublicAddress *string `json:"remotePublicAddress,omitempty"`
	// Indicating if the client is playing over HTTPS
	Secure *bool `json:"secure,omitempty"`
	// The client's last reported state
	State *string `json:"state,omitempty"`
	// The id of the user
	UserID *int64 `json:"userID,omitempty"`
	// The vendor of the client
	Vendor *string `json:"vendor,omitempty"`
	// The version of the client
	Version *string `json:"version,omitempty"`
}

Player - Information about the player being used for playback

func (*Player) GetAddress added in v0.26.0

func (p *Player) GetAddress() *string

func (*Player) GetLocal added in v0.26.0

func (p *Player) GetLocal() *bool

func (*Player) GetMachineIdentifier added in v0.26.0

func (p *Player) GetMachineIdentifier() *string

func (*Player) GetModel added in v0.26.0

func (p *Player) GetModel() *string

func (*Player) GetPlatform added in v0.26.0

func (p *Player) GetPlatform() *string

func (*Player) GetPlatformVersion added in v0.26.0

func (p *Player) GetPlatformVersion() *string

func (*Player) GetProduct added in v0.26.0

func (p *Player) GetProduct() *string

func (*Player) GetRelayed added in v0.26.0

func (p *Player) GetRelayed() *bool

func (*Player) GetRemotePublicAddress added in v0.26.0

func (p *Player) GetRemotePublicAddress() *string

func (*Player) GetSecure added in v0.26.0

func (p *Player) GetSecure() *bool

func (*Player) GetState added in v0.26.0

func (p *Player) GetState() *string

func (*Player) GetTitle added in v0.26.0

func (p *Player) GetTitle() *string

func (*Player) GetUserID added in v0.26.0

func (p *Player) GetUserID() *int64

func (*Player) GetVendor added in v0.26.0

func (p *Player) GetVendor() *string

func (*Player) GetVersion added in v0.26.0

func (p *Player) GetVersion() *string

type PlaylistType added in v0.26.0

type PlaylistType string

PlaylistType - The type of the playlist.

const (
	PlaylistTypeAudio PlaylistType = "audio"
	PlaylistTypeVideo PlaylistType = "video"
	PlaylistTypePhoto PlaylistType = "photo"
)

func (PlaylistType) ToPointer added in v0.26.0

func (e PlaylistType) ToPointer() *PlaylistType

func (*PlaylistType) UnmarshalJSON added in v0.26.0

func (e *PlaylistType) UnmarshalJSON(data []byte) error

type PlexDevice added in v0.28.0

type PlexDevice struct {
	Name             string    `json:"name"`
	Product          string    `json:"product"`
	ProductVersion   string    `json:"productVersion"`
	Platform         *string   `json:"platform"`
	PlatformVersion  *string   `json:"platformVersion"`
	Device           *string   `json:"device"`
	ClientIdentifier string    `json:"clientIdentifier"`
	CreatedAt        time.Time `json:"createdAt"`
	LastSeenAt       time.Time `json:"lastSeenAt"`
	Provides         string    `json:"provides"`
	// ownerId is null when the device is owned by the token used to send the request
	OwnerID                *int64        `json:"ownerId"`
	SourceTitle            *string       `json:"sourceTitle"`
	PublicAddress          string        `json:"publicAddress"`
	AccessToken            string        `json:"accessToken"`
	Owned                  bool          `json:"owned"`
	Home                   bool          `json:"home"`
	Synced                 bool          `json:"synced"`
	Relay                  bool          `json:"relay"`
	Presence               bool          `json:"presence"`
	HTTPSRequired          bool          `json:"httpsRequired"`
	PublicAddressMatches   bool          `json:"publicAddressMatches"`
	DNSRebindingProtection bool          `json:"dnsRebindingProtection"`
	NatLoopbackSupported   bool          `json:"natLoopbackSupported"`
	Connections            []Connections `json:"connections"`
}

func (*PlexDevice) GetAccessToken added in v0.28.0

func (p *PlexDevice) GetAccessToken() string

func (*PlexDevice) GetClientIdentifier added in v0.28.0

func (p *PlexDevice) GetClientIdentifier() string

func (*PlexDevice) GetConnections added in v0.28.0

func (p *PlexDevice) GetConnections() []Connections

func (*PlexDevice) GetCreatedAt added in v0.28.0

func (p *PlexDevice) GetCreatedAt() time.Time

func (*PlexDevice) GetDNSRebindingProtection added in v0.28.0

func (p *PlexDevice) GetDNSRebindingProtection() bool

func (*PlexDevice) GetDevice added in v0.28.0

func (p *PlexDevice) GetDevice() *string

func (*PlexDevice) GetHTTPSRequired added in v0.28.0

func (p *PlexDevice) GetHTTPSRequired() bool

func (*PlexDevice) GetHome added in v0.28.0

func (p *PlexDevice) GetHome() bool

func (*PlexDevice) GetLastSeenAt added in v0.28.0

func (p *PlexDevice) GetLastSeenAt() time.Time

func (*PlexDevice) GetName added in v0.28.0

func (p *PlexDevice) GetName() string

func (*PlexDevice) GetNatLoopbackSupported added in v0.28.0

func (p *PlexDevice) GetNatLoopbackSupported() bool

func (*PlexDevice) GetOwned added in v0.28.0

func (p *PlexDevice) GetOwned() bool

func (*PlexDevice) GetOwnerID added in v0.28.0

func (p *PlexDevice) GetOwnerID() *int64

func (*PlexDevice) GetPlatform added in v0.28.0

func (p *PlexDevice) GetPlatform() *string

func (*PlexDevice) GetPlatformVersion added in v0.28.0

func (p *PlexDevice) GetPlatformVersion() *string

func (*PlexDevice) GetPresence added in v0.28.0

func (p *PlexDevice) GetPresence() bool

func (*PlexDevice) GetProduct added in v0.28.0

func (p *PlexDevice) GetProduct() string

func (*PlexDevice) GetProductVersion added in v0.28.0

func (p *PlexDevice) GetProductVersion() string

func (*PlexDevice) GetProvides added in v0.28.0

func (p *PlexDevice) GetProvides() string

func (*PlexDevice) GetPublicAddress added in v0.28.0

func (p *PlexDevice) GetPublicAddress() string

func (*PlexDevice) GetPublicAddressMatches added in v0.28.0

func (p *PlexDevice) GetPublicAddressMatches() bool

func (*PlexDevice) GetRelay added in v0.28.0

func (p *PlexDevice) GetRelay() bool

func (*PlexDevice) GetSourceTitle added in v0.28.0

func (p *PlexDevice) GetSourceTitle() *string

func (*PlexDevice) GetSynced added in v0.28.0

func (p *PlexDevice) GetSynced() bool

func (PlexDevice) MarshalJSON added in v0.28.0

func (p PlexDevice) MarshalJSON() ([]byte, error)

func (*PlexDevice) UnmarshalJSON added in v0.28.0

func (p *PlexDevice) UnmarshalJSON(data []byte) error

type PlexDeviceProtocol added in v0.28.0

type PlexDeviceProtocol string

PlexDeviceProtocol - The protocol used for the connection (http, https, etc)

const (
	PlexDeviceProtocolHTTP  PlexDeviceProtocol = "http"
	PlexDeviceProtocolHTTPS PlexDeviceProtocol = "https"
)

func (PlexDeviceProtocol) ToPointer added in v0.28.0

func (e PlexDeviceProtocol) ToPointer() *PlexDeviceProtocol

func (*PlexDeviceProtocol) UnmarshalJSON added in v0.28.0

func (e *PlexDeviceProtocol) UnmarshalJSON(data []byte) error

type PostResponses200 added in v0.26.0

type PostResponses200 struct {
	MediaContainer *PostResponses200MediaContainer `json:"MediaContainer,omitempty"`
}

PostResponses200 - OK

func (*PostResponses200) GetMediaContainer added in v0.26.0

func (p *PostResponses200) GetMediaContainer() *PostResponses200MediaContainer

type PostResponses200MediaContainer added in v0.26.0

type PostResponses200MediaContainer struct {
	Identifier *string `json:"identifier,omitempty"`
	// The offset of where this container page starts among the total objects available. Also provided in the `X-Plex-Container-Start` header.
	//
	Offset *int64 `json:"offset,omitempty"`
	Size   *int64 `json:"size,omitempty"`
	// The total size of objects available. Also provided in the `X-Plex-Container-Total-Size` header.
	//
	TotalSize            *int64                `json:"totalSize,omitempty"`
	Color                *string               `json:"color,omitempty"`
	EndTimeOffset        *int64                `json:"endTimeOffset,omitempty"`
	ID                   *int64                `json:"id,omitempty"`
	StartTimeOffset      *int64                `json:"startTimeOffset,omitempty"`
	Title                *string               `json:"title,omitempty"`
	Type                 *PostResponses200Type `json:"type,omitempty"`
	AdditionalProperties map[string]any        `additionalProperties:"true" json:"-"`
}

PostResponses200MediaContainer - `MediaContainer` is the root element of most Plex API responses. It serves as a generic container for various types of content (Metadata, Hubs, Directories, etc.) and includes pagination information (offset, size, totalSize) when applicable. Common attributes: - identifier: Unique identifier for this container - size: Number of items in this response page - totalSize: Total number of items available (for pagination) - offset: Starting index of this page (for pagination) The container often "hoists" common attributes from its children. For example, if all tracks in a container share the same album title, the `parentTitle` attribute may appear on the MediaContainer rather than being repeated on each track.

func (*PostResponses200MediaContainer) GetAdditionalProperties added in v0.26.0

func (p *PostResponses200MediaContainer) GetAdditionalProperties() map[string]any

func (*PostResponses200MediaContainer) GetColor added in v0.26.0

func (p *PostResponses200MediaContainer) GetColor() *string

func (*PostResponses200MediaContainer) GetEndTimeOffset added in v0.26.0

func (p *PostResponses200MediaContainer) GetEndTimeOffset() *int64

func (*PostResponses200MediaContainer) GetID added in v0.26.0

func (*PostResponses200MediaContainer) GetIdentifier added in v0.26.0

func (p *PostResponses200MediaContainer) GetIdentifier() *string

func (*PostResponses200MediaContainer) GetOffset added in v0.26.0

func (p *PostResponses200MediaContainer) GetOffset() *int64

func (*PostResponses200MediaContainer) GetSize added in v0.26.0

func (p *PostResponses200MediaContainer) GetSize() *int64

func (*PostResponses200MediaContainer) GetStartTimeOffset added in v0.26.0

func (p *PostResponses200MediaContainer) GetStartTimeOffset() *int64

func (*PostResponses200MediaContainer) GetTitle added in v0.26.0

func (p *PostResponses200MediaContainer) GetTitle() *string

func (*PostResponses200MediaContainer) GetTotalSize added in v0.26.0

func (p *PostResponses200MediaContainer) GetTotalSize() *int64

func (*PostResponses200MediaContainer) GetType added in v0.26.0

func (PostResponses200MediaContainer) MarshalJSON added in v0.26.0

func (p PostResponses200MediaContainer) MarshalJSON() ([]byte, error)

func (*PostResponses200MediaContainer) UnmarshalJSON added in v0.26.0

func (p *PostResponses200MediaContainer) UnmarshalJSON(data []byte) error

type PostResponses200Type added in v0.26.0

type PostResponses200Type string
const (
	PostResponses200TypeIntro      PostResponses200Type = "intro"
	PostResponses200TypeCommercial PostResponses200Type = "commercial"
	PostResponses200TypeBookmark   PostResponses200Type = "bookmark"
	PostResponses200TypeResume     PostResponses200Type = "resume"
	PostResponses200TypeCredit     PostResponses200Type = "credit"
)

func (PostResponses200Type) ToPointer added in v0.26.0

func (*PostResponses200Type) UnmarshalJSON added in v0.26.0

func (e *PostResponses200Type) UnmarshalJSON(data []byte) error

type Protocol added in v0.26.0

type Protocol string
const (
	ProtocolHTTP Protocol = "http"
	ProtocolHls  Protocol = "hls"
	ProtocolDash Protocol = "dash"
)

func (Protocol) ToPointer added in v0.26.0

func (e Protocol) ToPointer() *Protocol

func (*Protocol) UnmarshalJSON added in v0.26.0

func (e *Protocol) UnmarshalJSON(data []byte) error

type RecommendationsVisibility added in v0.26.0

type RecommendationsVisibility string

RecommendationsVisibility - The visibility of this hub in recommendations:

  • all: Visible to all users
  • none: Visible to no users
  • admin: Visible to only admin users
  • shared: Visible to shared users
const (
	RecommendationsVisibilityAll    RecommendationsVisibility = "all"
	RecommendationsVisibilityNone   RecommendationsVisibility = "none"
	RecommendationsVisibilityAdmin  RecommendationsVisibility = "admin"
	RecommendationsVisibilityShared RecommendationsVisibility = "shared"
)

func (RecommendationsVisibility) ToPointer added in v0.26.0

func (*RecommendationsVisibility) UnmarshalJSON added in v0.26.0

func (e *RecommendationsVisibility) UnmarshalJSON(data []byte) error

type Security

type Security struct {
	Token *string `security:"scheme,type=apiKey,subtype=header,name=X-Plex-Token"`
}

func (*Security) GetToken added in v0.26.0

func (s *Security) GetToken() *string

type Services added in v0.28.0

type Services struct {
	Identifier string                `json:"identifier"`
	Endpoint   string                `json:"endpoint"`
	Token      *string               `json:"token"`
	Secret     *string               `json:"secret"`
	Status     UserPlexAccountStatus `json:"status"`
}

func (*Services) GetEndpoint added in v0.28.0

func (s *Services) GetEndpoint() string

func (*Services) GetIdentifier added in v0.28.0

func (s *Services) GetIdentifier() string

func (*Services) GetSecret added in v0.28.0

func (s *Services) GetSecret() *string

func (*Services) GetStatus added in v0.28.0

func (s *Services) GetStatus() UserPlexAccountStatus

func (*Services) GetToken added in v0.28.0

func (s *Services) GetToken() *string

type Session added in v0.26.0

type Session struct {
	// The bandwidth used by this client's playback in kbps
	Bandwidth *int64 `json:"bandwidth,omitempty"`
	// The id of the playback session
	ID *string `json:"id,omitempty"`
	// The location of the client
	Location *SessionLocation `json:"location,omitempty"`
}

Session - Information about the playback session

func (*Session) GetBandwidth added in v0.26.0

func (s *Session) GetBandwidth() *int64

func (*Session) GetID added in v0.26.0

func (s *Session) GetID() *string

func (*Session) GetLocation added in v0.26.0

func (s *Session) GetLocation() *SessionLocation

type SessionLocation added in v0.26.0

type SessionLocation string

SessionLocation - The location of the client

const (
	SessionLocationLan SessionLocation = "lan"
	SessionLocationWan SessionLocation = "wan"
)

func (SessionLocation) ToPointer added in v0.26.0

func (e SessionLocation) ToPointer() *SessionLocation

func (*SessionLocation) UnmarshalJSON added in v0.26.0

func (e *SessionLocation) UnmarshalJSON(data []byte) error

type Setting added in v0.26.0

type Setting struct {
	// The type of the value of this setting
	Type *Type `json:"type,omitempty"`
	// The default value of this setting
	Default *Default `json:"default,omitempty"`
	// Whether the setting is considered advanced and normally hidden from the user
	Advanced *bool `json:"advanced,omitempty"`
	// The possible values for this setting if restricted. The list is `|` separated with `value:name` entries.
	EnumValues *string `json:"enumValues,omitempty"`
	// The group name of this setting to aid in display of a hierarchy
	Group *string `json:"group,omitempty"`
	// Whether the setting is hidden or not
	Hidden *bool `json:"hidden,omitempty"`
	// The query parameter name for this setting
	ID *string `json:"id,omitempty"`
	// A user-friendly name for the setting
	Label *string `json:"label,omitempty"`
	// A description of the setting
	Summary *string `json:"summary,omitempty"`
	// The current value of this setting
	Value *Value `json:"value,omitempty"`
}

Setting - A configuration setting or preference

func (*Setting) GetAdvanced added in v0.26.0

func (s *Setting) GetAdvanced() *bool

func (*Setting) GetDefault added in v0.26.0

func (s *Setting) GetDefault() *Default

func (*Setting) GetEnumValues added in v0.26.0

func (s *Setting) GetEnumValues() *string

func (*Setting) GetGroup added in v0.26.0

func (s *Setting) GetGroup() *string

func (*Setting) GetHidden added in v0.26.0

func (s *Setting) GetHidden() *bool

func (*Setting) GetID added in v0.26.0

func (s *Setting) GetID() *string

func (*Setting) GetLabel added in v0.26.0

func (s *Setting) GetLabel() *string

func (*Setting) GetSummary added in v0.26.0

func (s *Setting) GetSummary() *string

func (*Setting) GetType added in v0.26.0

func (s *Setting) GetType() *Type

func (*Setting) GetValue added in v0.26.0

func (s *Setting) GetValue() *Value

type SlashGetResponses200 added in v0.26.0

type SlashGetResponses200 struct {
	MediaContainer *SlashGetResponses200MediaContainer `json:"MediaContainer,omitempty"`
}

SlashGetResponses200 - OK

func (*SlashGetResponses200) GetMediaContainer added in v0.26.0

type SlashGetResponses200MediaContainer added in v0.26.0

type SlashGetResponses200MediaContainer struct {
	// The flavors of directory found here:
	//   - Primary: (e.g. all, On Deck) These are still used in some clients to provide "shortcuts" to subsets of media. However, with the exception of On Deck, all of them can be created by media queries, and the desire is to allow these to be customized by users.
	//   - Secondary: These are marked with `"secondary": true` and were used by old clients to provide nested menus allowing for primative (but structured) navigation.
	//   - Special: There is a By Folder entry which allows browsing the media by the underlying filesystem structure, and there's a completely obsolete entry marked `"search": true` which used to be used to allow clients to build search dialogs on the fly.
	Content          *string    `json:"content,omitempty"`
	AllowSync        *bool      `json:"allowSync,omitempty"`
	Art              *string    `json:"art,omitempty"`
	Directory        []Metadata `json:"Directory,omitempty"`
	Identifier       *string    `json:"identifier,omitempty"`
	LibrarySectionID *int64     `json:"librarySectionID,omitempty"`
	MediaTagPrefix   *string    `json:"mediaTagPrefix,omitempty"`
	MediaTagVersion  *int64     `json:"mediaTagVersion,omitempty"`
	Size             *int64     `json:"size,omitempty"`
	SortAsc          *bool      `json:"sortAsc,omitempty"`
	Thumb            *string    `json:"thumb,omitempty"`
	Title1           *string    `json:"title1,omitempty"`
	ViewGroup        *string    `json:"viewGroup,omitempty"`
	ViewMode         *int64     `json:"viewMode,omitempty"`
}

func (*SlashGetResponses200MediaContainer) GetAllowSync added in v0.26.0

func (s *SlashGetResponses200MediaContainer) GetAllowSync() *bool

func (*SlashGetResponses200MediaContainer) GetArt added in v0.26.0

func (*SlashGetResponses200MediaContainer) GetContent added in v0.26.0

func (s *SlashGetResponses200MediaContainer) GetContent() *string

func (*SlashGetResponses200MediaContainer) GetDirectory added in v0.26.0

func (s *SlashGetResponses200MediaContainer) GetDirectory() []Metadata

func (*SlashGetResponses200MediaContainer) GetIdentifier added in v0.26.0

func (s *SlashGetResponses200MediaContainer) GetIdentifier() *string

func (*SlashGetResponses200MediaContainer) GetLibrarySectionID added in v0.26.0

func (s *SlashGetResponses200MediaContainer) GetLibrarySectionID() *int64

func (*SlashGetResponses200MediaContainer) GetMediaTagPrefix added in v0.26.0

func (s *SlashGetResponses200MediaContainer) GetMediaTagPrefix() *string

func (*SlashGetResponses200MediaContainer) GetMediaTagVersion added in v0.26.0

func (s *SlashGetResponses200MediaContainer) GetMediaTagVersion() *int64

func (*SlashGetResponses200MediaContainer) GetSize added in v0.26.0

func (*SlashGetResponses200MediaContainer) GetSortAsc added in v0.26.0

func (s *SlashGetResponses200MediaContainer) GetSortAsc() *bool

func (*SlashGetResponses200MediaContainer) GetThumb added in v0.26.0

func (*SlashGetResponses200MediaContainer) GetTitle1 added in v0.26.0

func (*SlashGetResponses200MediaContainer) GetViewGroup added in v0.26.0

func (s *SlashGetResponses200MediaContainer) GetViewGroup() *string

func (*SlashGetResponses200MediaContainer) GetViewMode added in v0.26.0

func (s *SlashGetResponses200MediaContainer) GetViewMode() *int64

type Sort added in v0.26.0

type Sort struct {
	// The title of the field.
	Title            *string `json:"title,omitempty"`
	Type             *string `json:"type,omitempty"`
	Art              *string `json:"art,omitempty"`
	Content          *bool   `json:"content,omitempty"`
	Filter           *string `json:"filter,omitempty"`
	HasPrefs         *bool   `json:"hasPrefs,omitempty"`
	HasStoreServices *bool   `json:"hasStoreServices,omitempty"`
	HubKey           *string `json:"hubKey,omitempty"`
	Identifier       *string `json:"identifier,omitempty"`
	// The key to use in the sort field to make items sort by this item
	Key            *string     `json:"key,omitempty"`
	LastAccessedAt *int64      `json:"lastAccessedAt,omitempty"`
	Pivot          []SortPivot `json:"Pivot,omitempty"`
	Share          *int64      `json:"share,omitempty"`
	Thumb          *string     `json:"thumb,omitempty"`
	TitleBar       *string     `json:"titleBar,omitempty"`
	// If present, this sort is the default and in this direction
	Default *SortDefault `json:"default,omitempty"`
	// This default diction of this sort
	DefaultDirection *DefaultDirection `json:"defaultDirection,omitempty"`
	// The key for sorting this field in reverse order
	DescKey *string `json:"descKey,omitempty"`
	// The key to use to get items sorted by this field and indexed by the first character
	FirstCharacterKey    *string        `json:"firstCharacterKey,omitempty"`
	AdditionalProperties map[string]any `additionalProperties:"true" json:"-"`
}

Sort - Each `Sort` object contains a description of the sort field.

func (*Sort) GetAdditionalProperties added in v0.26.0

func (s *Sort) GetAdditionalProperties() map[string]any

func (*Sort) GetArt added in v0.26.0

func (s *Sort) GetArt() *string

func (*Sort) GetContent added in v0.26.0

func (s *Sort) GetContent() *bool

func (*Sort) GetDefault added in v0.26.0

func (s *Sort) GetDefault() *SortDefault

func (*Sort) GetDefaultDirection added in v0.26.0

func (s *Sort) GetDefaultDirection() *DefaultDirection

func (*Sort) GetDescKey added in v0.26.0

func (s *Sort) GetDescKey() *string

func (*Sort) GetFilter added in v0.26.0

func (s *Sort) GetFilter() *string

func (*Sort) GetFirstCharacterKey added in v0.26.0

func (s *Sort) GetFirstCharacterKey() *string

func (*Sort) GetHasPrefs added in v0.26.0

func (s *Sort) GetHasPrefs() *bool

func (*Sort) GetHasStoreServices added in v0.26.0

func (s *Sort) GetHasStoreServices() *bool

func (*Sort) GetHubKey added in v0.26.0

func (s *Sort) GetHubKey() *string

func (*Sort) GetIdentifier added in v0.26.0

func (s *Sort) GetIdentifier() *string

func (*Sort) GetKey added in v0.26.0

func (s *Sort) GetKey() *string

func (*Sort) GetLastAccessedAt added in v0.26.0

func (s *Sort) GetLastAccessedAt() *int64

func (*Sort) GetPivot added in v0.26.0

func (s *Sort) GetPivot() []SortPivot

func (*Sort) GetShare added in v0.26.0

func (s *Sort) GetShare() *int64

func (*Sort) GetThumb added in v0.26.0

func (s *Sort) GetThumb() *string

func (*Sort) GetTitle added in v0.26.0

func (s *Sort) GetTitle() *string

func (*Sort) GetTitleBar added in v0.26.0

func (s *Sort) GetTitleBar() *string

func (*Sort) GetType added in v0.26.0

func (s *Sort) GetType() *string

func (Sort) MarshalJSON added in v0.26.0

func (s Sort) MarshalJSON() ([]byte, error)

func (*Sort) UnmarshalJSON added in v0.26.0

func (s *Sort) UnmarshalJSON(data []byte) error

type SortDefault added in v0.26.0

type SortDefault string

SortDefault - If present, this sort is the default and in this direction

const (
	SortDefaultAsc  SortDefault = "asc"
	SortDefaultDesc SortDefault = "desc"
)

func (SortDefault) ToPointer added in v0.26.0

func (e SortDefault) ToPointer() *SortDefault

func (*SortDefault) UnmarshalJSON added in v0.26.0

func (e *SortDefault) UnmarshalJSON(data []byte) error

type SortPivot added in v0.26.0

type SortPivot struct {
	Title   *string `json:"title,omitempty"`
	Type    *string `json:"type,omitempty"`
	Context *string `json:"context,omitempty"`
	ID      *string `json:"id,omitempty"`
	Key     *string `json:"key,omitempty"`
	Symbol  *string `json:"symbol,omitempty"`
}

func (*SortPivot) GetContext added in v0.26.0

func (s *SortPivot) GetContext() *string

func (*SortPivot) GetID added in v0.26.0

func (s *SortPivot) GetID() *string

func (*SortPivot) GetKey added in v0.26.0

func (s *SortPivot) GetKey() *string

func (*SortPivot) GetSymbol added in v0.26.0

func (s *SortPivot) GetSymbol() *string

func (*SortPivot) GetTitle added in v0.26.0

func (s *SortPivot) GetTitle() *string

func (*SortPivot) GetType added in v0.26.0

func (s *SortPivot) GetType() *string

type Status added in v0.26.0

type Status string
const (
	StatusInactive       Status = "inactive"
	StatusScheduled      Status = "scheduled"
	StatusInprogress     Status = "inprogress"
	StatusComplete       Status = "complete"
	StatusCancelled      Status = "cancelled"
	StatusError          Status = "error"
	StatusPostprocessing Status = "postprocessing"
	StatusPaused         Status = "paused"
)

func (Status) ToPointer added in v0.26.0

func (e Status) ToPointer() *Status

func (*Status) UnmarshalJSON added in v0.26.0

func (e *Status) UnmarshalJSON(data []byte) error

type Stream added in v0.26.0

type Stream struct {
	// Indicates if this stream is default.
	Default *bool `json:"default,omitempty"`
	// Audio channel layout.
	AudioChannelLayout *string `json:"audioChannelLayout,omitempty"`
	// Number of audio channels (for audio streams).
	Channels *int `json:"channels,omitempty"`
	// Bit depth of the video stream.
	BitDepth *int `json:"bitDepth,omitempty"`
	// Dolby Vision BL compatibility ID.
	DOVIBLCompatID *int `json:"DOVIBLCompatID,omitempty"`
	// Indicates if Dolby Vision BL is present.
	DOVIBLPresent *bool `json:"DOVIBLPresent,omitempty"`
	// Indicates if Dolby Vision EL is present.
	DOVIELPresent *bool `json:"DOVIELPresent,omitempty"`
	// Dolby Vision level.
	DOVILevel *int `json:"DOVILevel,omitempty"`
	// Indicates if Dolby Vision is present.
	DOVIPresent *bool `json:"DOVIPresent,omitempty"`
	// Dolby Vision profile.
	DOVIProfile *int `json:"DOVIProfile,omitempty"`
	// Indicates if Dolby Vision RPU is present.
	DOVIRPUPresent *bool `json:"DOVIRPUPresent,omitempty"`
	// Dolby Vision version.
	DOVIVersion *string `json:"DOVIVersion,omitempty"`
	// Bitrate of the stream.
	Bitrate *int `json:"bitrate,omitempty"`
	// Indicates if the stream can auto-sync.
	CanAutoSync *bool `json:"canAutoSync,omitempty"`
	// Chroma sample location.
	ChromaLocation *string `json:"chromaLocation,omitempty"`
	// Chroma subsampling format.
	ChromaSubsampling *string `json:"chromaSubsampling,omitempty"`
	// Coded video height.
	CodedHeight *int `json:"codedHeight,omitempty"`
	// Coded video width.
	CodedWidth     *int  `json:"codedWidth,omitempty"`
	ClosedCaptions *bool `json:"closedCaptions,omitempty"`
	// Codec used by the stream.
	Codec string `json:"codec"`
	// Color primaries used.
	ColorPrimaries *string `json:"colorPrimaries,omitempty"`
	// Color range (e.g., tv).
	ColorRange *string `json:"colorRange,omitempty"`
	// Color space.
	ColorSpace *string `json:"colorSpace,omitempty"`
	// Color transfer characteristics.
	ColorTrc *string `json:"colorTrc,omitempty"`
	// Display title for the stream.
	DisplayTitle string `json:"displayTitle"`
	// Extended display title for the stream.
	ExtendedDisplayTitle *string `json:"extendedDisplayTitle,omitempty"`
	// Frame rate of the stream.
	FrameRate        *float32 `json:"frameRate,omitempty"`
	HasScalingMatrix *bool    `json:"hasScalingMatrix,omitempty"`
	// Height of the video stream.
	Height *int `json:"height,omitempty"`
	// Unique stream identifier.
	ID int `json:"id"`
	// Index of the stream.
	Index *int `json:"index,omitempty"`
	// Key to access this stream part.
	Key string `json:"key"`
	// Language of the stream.
	Language *string `json:"language,omitempty"`
	// ISO language code.
	LanguageCode *string `json:"languageCode,omitempty"`
	// Language tag (e.g., en).
	LanguageTag *string `json:"languageTag,omitempty"`
	// Format of the stream (e.g., srt).
	Format *string `json:"format,omitempty"`
	// Indicates whether header compression is enabled.
	HeaderCompression *bool `json:"headerCompression,omitempty"`
	// Video level.
	Level *int `json:"level,omitempty"`
	// Indicates if this is the original stream.
	Original *bool `json:"original,omitempty"`
	// Video profile.
	Profile *string `json:"profile,omitempty"`
	// Number of reference frames.
	RefFrames *int `json:"refFrames,omitempty"`
	// Sampling rate for the audio stream.
	SamplingRate    *int    `json:"samplingRate,omitempty"`
	ScanType        *string `json:"scanType,omitempty"`
	EmbeddedInVideo *string `json:"embeddedInVideo,omitempty"`
	// Indicates if this stream is selected (applicable for audio streams).
	Selected *bool `json:"selected,omitempty"`
	Forced   *bool `json:"forced,omitempty"`
	// Indicates if the stream is for the hearing impaired.
	HearingImpaired *bool `json:"hearingImpaired,omitempty"`
	// Indicates if the stream is a dub.
	Dub *bool `json:"dub,omitempty"`
	// Optional title for the stream (e.g., language variant).
	Title            *string `json:"title,omitempty"`
	StreamIdentifier *int    `json:"streamIdentifier,omitempty"`

	// Width of the video stream.
	Width                *int           `json:"width,omitempty"`
	AdditionalProperties map[string]any `additionalProperties:"true" json:"-"`
	// contains filtered or unexported fields
}

Stream - `Stream` represents a particular stream from a media item, such as the video stream, audio stream, or subtitle stream. The stream may either be part of the file represented by the parent `Part` or, especially for subtitles, an external file. The stream contains more detailed information about the specific stream. For example, a video may include the `aspectRatio` at the `Media` level, but detailed information about the video stream like the color space will be included on the `Stream` for the video stream. Note that photos do not have streams (mostly as an optimization).

func (*Stream) GetAdditionalProperties added in v0.26.0

func (s *Stream) GetAdditionalProperties() map[string]any

func (*Stream) GetAudioChannelLayout added in v0.26.0

func (s *Stream) GetAudioChannelLayout() *string

func (*Stream) GetBitDepth added in v0.26.0

func (s *Stream) GetBitDepth() *int

func (*Stream) GetBitrate added in v0.26.0

func (s *Stream) GetBitrate() *int

func (*Stream) GetCanAutoSync added in v0.26.0

func (s *Stream) GetCanAutoSync() *bool

func (*Stream) GetChannels added in v0.28.0

func (s *Stream) GetChannels() *int

func (*Stream) GetChromaLocation added in v0.26.0

func (s *Stream) GetChromaLocation() *string

func (*Stream) GetChromaSubsampling added in v0.26.0

func (s *Stream) GetChromaSubsampling() *string

func (*Stream) GetClosedCaptions added in v0.28.0

func (s *Stream) GetClosedCaptions() *bool

func (*Stream) GetCodec added in v0.26.0

func (s *Stream) GetCodec() string

func (*Stream) GetCodedHeight added in v0.28.0

func (s *Stream) GetCodedHeight() *int

func (*Stream) GetCodedWidth added in v0.28.0

func (s *Stream) GetCodedWidth() *int

func (*Stream) GetColorPrimaries added in v0.26.0

func (s *Stream) GetColorPrimaries() *string

func (*Stream) GetColorRange added in v0.26.0

func (s *Stream) GetColorRange() *string

func (*Stream) GetColorSpace added in v0.26.0

func (s *Stream) GetColorSpace() *string

func (*Stream) GetColorTrc added in v0.26.0

func (s *Stream) GetColorTrc() *string

func (*Stream) GetDOVIBLCompatID added in v0.28.0

func (s *Stream) GetDOVIBLCompatID() *int

func (*Stream) GetDOVIBLPresent added in v0.28.0

func (s *Stream) GetDOVIBLPresent() *bool

func (*Stream) GetDOVIELPresent added in v0.28.0

func (s *Stream) GetDOVIELPresent() *bool

func (*Stream) GetDOVILevel added in v0.28.0

func (s *Stream) GetDOVILevel() *int

func (*Stream) GetDOVIPresent added in v0.28.0

func (s *Stream) GetDOVIPresent() *bool

func (*Stream) GetDOVIProfile added in v0.28.0

func (s *Stream) GetDOVIProfile() *int

func (*Stream) GetDOVIRPUPresent added in v0.28.0

func (s *Stream) GetDOVIRPUPresent() *bool

func (*Stream) GetDOVIVersion added in v0.28.0

func (s *Stream) GetDOVIVersion() *string

func (*Stream) GetDefault added in v0.26.0

func (s *Stream) GetDefault() *bool

func (*Stream) GetDisplayTitle added in v0.26.0

func (s *Stream) GetDisplayTitle() string

func (*Stream) GetDub added in v0.28.0

func (s *Stream) GetDub() *bool

func (*Stream) GetEmbeddedInVideo added in v0.28.0

func (s *Stream) GetEmbeddedInVideo() *string

func (*Stream) GetExtendedDisplayTitle added in v0.28.0

func (s *Stream) GetExtendedDisplayTitle() *string

func (*Stream) GetForced added in v0.28.0

func (s *Stream) GetForced() *bool

func (*Stream) GetFormat added in v0.28.0

func (s *Stream) GetFormat() *string

func (*Stream) GetFrameRate added in v0.26.0

func (s *Stream) GetFrameRate() *float32

func (*Stream) GetHasScalingMatrix added in v0.26.0

func (s *Stream) GetHasScalingMatrix() *bool

func (*Stream) GetHeaderCompression added in v0.28.0

func (s *Stream) GetHeaderCompression() *bool

func (*Stream) GetHearingImpaired added in v0.28.0

func (s *Stream) GetHearingImpaired() *bool

func (*Stream) GetHeight added in v0.26.0

func (s *Stream) GetHeight() *int

func (*Stream) GetID added in v0.26.0

func (s *Stream) GetID() int

func (*Stream) GetIndex added in v0.26.0

func (s *Stream) GetIndex() *int

func (*Stream) GetKey added in v0.26.0

func (s *Stream) GetKey() string

func (*Stream) GetLanguage added in v0.26.0

func (s *Stream) GetLanguage() *string

func (*Stream) GetLanguageCode added in v0.26.0

func (s *Stream) GetLanguageCode() *string

func (*Stream) GetLanguageTag added in v0.28.0

func (s *Stream) GetLanguageTag() *string

func (*Stream) GetLevel added in v0.26.0

func (s *Stream) GetLevel() *int

func (*Stream) GetOriginal added in v0.28.0

func (s *Stream) GetOriginal() *bool

func (*Stream) GetProfile added in v0.26.0

func (s *Stream) GetProfile() *string

func (*Stream) GetRefFrames added in v0.26.0

func (s *Stream) GetRefFrames() *int

func (*Stream) GetSamplingRate added in v0.26.0

func (s *Stream) GetSamplingRate() *int

func (*Stream) GetScanType added in v0.28.0

func (s *Stream) GetScanType() *string

func (*Stream) GetSelected added in v0.26.0

func (s *Stream) GetSelected() *bool

func (*Stream) GetStreamIdentifier added in v0.26.0

func (s *Stream) GetStreamIdentifier() *int

func (*Stream) GetStreamType added in v0.26.0

func (s *Stream) GetStreamType() int64

func (*Stream) GetTitle added in v0.28.0

func (s *Stream) GetTitle() *string

func (*Stream) GetWidth added in v0.26.0

func (s *Stream) GetWidth() *int

func (Stream) MarshalJSON added in v0.26.0

func (s Stream) MarshalJSON() ([]byte, error)

func (*Stream) UnmarshalJSON added in v0.26.0

func (s *Stream) UnmarshalJSON(data []byte) error

type Subscription added in v0.28.0

type Subscription struct {
	// List of features allowed on your Plex Pass subscription
	Features []string `json:"features,omitempty"`
	// If the account's Plex Pass subscription is active
	Active *bool `json:"active,omitempty"`
	// Date the account subscribed to Plex Pass
	SubscribedAt *string `json:"subscribedAt,omitempty"`
	// String representation of subscriptionActive
	Status *UserPlexAccountSubscriptionStatus `json:"status,omitempty"`
	// Payment service used for your Plex Pass subscription
	PaymentService *string `json:"paymentService,omitempty"`
	// Name of Plex Pass subscription plan
	Plan *string `json:"plan,omitempty"`
}

Subscription - If the account's Plex Pass subscription is active

func (*Subscription) GetActive added in v0.28.0

func (s *Subscription) GetActive() *bool

func (*Subscription) GetFeatures added in v0.28.0

func (s *Subscription) GetFeatures() []string

func (*Subscription) GetPaymentService added in v0.28.0

func (s *Subscription) GetPaymentService() *string

func (*Subscription) GetPlan added in v0.28.0

func (s *Subscription) GetPlan() *string

func (*Subscription) GetStatus added in v0.28.0

func (*Subscription) GetSubscribedAt added in v0.28.0

func (s *Subscription) GetSubscribedAt() *string

type Subtitles added in v0.26.0

type Subtitles string
const (
	SubtitlesAuto      Subtitles = "auto"
	SubtitlesBurn      Subtitles = "burn"
	SubtitlesNone      Subtitles = "none"
	SubtitlesSidecar   Subtitles = "sidecar"
	SubtitlesEmbedded  Subtitles = "embedded"
	SubtitlesSegmented Subtitles = "segmented"
	SubtitlesUnknown   Subtitles = "unknown"
)

func (Subtitles) ToPointer added in v0.26.0

func (e Subtitles) ToPointer() *Subtitles

func (*Subtitles) UnmarshalJSON added in v0.26.0

func (e *Subtitles) UnmarshalJSON(data []byte) error

type Tag added in v0.26.0

type Tag struct {
	// Measure of the confidence of an automatic tag
	Confidence *float64 `json:"confidence,omitempty"`
	Context    *string  `json:"context,omitempty"`
	// A filter parameter that can be used to query for more content that matches this tag value.
	Filter *string `json:"filter,omitempty"`
	ID     *int    `json:"id,omitempty"`
	// The rating key (Media ID) of this media item. Note: Although this is always an integer, it is represented as a string in the API.
	RatingKey *string `json:"ratingKey,omitempty"`
	// The role this actor played
	Role *string `json:"role,omitempty"`
	// The value of the tag (the name)
	Tag string `json:"tag"`
	// Plex identifier for this tag which can be used to fetch additional information from plex.tv
	TagKey  *string `json:"tagKey,omitempty"`
	TagType *int    `json:"tagType,omitempty"`
	Thumb   *string `json:"thumb,omitempty"`
}

Tag - A variety of extra information about a metadata item is included as tags. These tags use their own element names such as `Genre`, `Writer`, `Directory`, and `Role`. Individual tag types may introduce their own extra attributes.

func (*Tag) GetConfidence added in v0.26.0

func (t *Tag) GetConfidence() *float64

func (*Tag) GetContext added in v0.26.0

func (t *Tag) GetContext() *string

func (*Tag) GetFilter added in v0.26.0

func (t *Tag) GetFilter() *string

func (*Tag) GetID added in v0.26.0

func (t *Tag) GetID() *int

func (*Tag) GetRatingKey added in v0.26.0

func (t *Tag) GetRatingKey() *string

func (*Tag) GetRole added in v0.26.0

func (t *Tag) GetRole() *string

func (*Tag) GetTag added in v0.26.0

func (t *Tag) GetTag() string

func (*Tag) GetTagKey added in v0.26.0

func (t *Tag) GetTagKey() *string

func (*Tag) GetTagType added in v0.26.0

func (t *Tag) GetTagType() *int

func (*Tag) GetThumb added in v0.26.0

func (t *Tag) GetThumb() *string

type TranscodeSession added in v0.26.0

type TranscodeSession struct {
	Complete                *bool    `json:"complete,omitempty"`
	Context                 *string  `json:"context,omitempty"`
	Duration                *int64   `json:"duration,omitempty"`
	Error                   *bool    `json:"error,omitempty"`
	Key                     *string  `json:"key,omitempty"`
	Progress                *float64 `json:"progress,omitempty"`
	Protocol                *string  `json:"protocol,omitempty"`
	Size                    *int64   `json:"size,omitempty"`
	SourceAudioCodec        *string  `json:"sourceAudioCodec,omitempty"`
	SourceVideoCodec        *string  `json:"sourceVideoCodec,omitempty"`
	Speed                   *float64 `json:"speed,omitempty"`
	Throttled               *bool    `json:"throttled,omitempty"`
	TranscodeHwFullPipeline *bool    `json:"transcodeHwFullPipeline,omitempty"`
	TranscodeHwRequested    *bool    `json:"transcodeHwRequested,omitempty"`
}

TranscodeSession - The transcode session if item is currently being transcoded

func (*TranscodeSession) GetComplete added in v0.26.0

func (t *TranscodeSession) GetComplete() *bool

func (*TranscodeSession) GetContext added in v0.26.0

func (t *TranscodeSession) GetContext() *string

func (*TranscodeSession) GetDuration added in v0.26.0

func (t *TranscodeSession) GetDuration() *int64

func (*TranscodeSession) GetError added in v0.26.0

func (t *TranscodeSession) GetError() *bool

func (*TranscodeSession) GetKey added in v0.26.0

func (t *TranscodeSession) GetKey() *string

func (*TranscodeSession) GetProgress added in v0.26.0

func (t *TranscodeSession) GetProgress() *float64

func (*TranscodeSession) GetProtocol added in v0.26.0

func (t *TranscodeSession) GetProtocol() *string

func (*TranscodeSession) GetSize added in v0.26.0

func (t *TranscodeSession) GetSize() *int64

func (*TranscodeSession) GetSourceAudioCodec added in v0.26.0

func (t *TranscodeSession) GetSourceAudioCodec() *string

func (*TranscodeSession) GetSourceVideoCodec added in v0.26.0

func (t *TranscodeSession) GetSourceVideoCodec() *string

func (*TranscodeSession) GetSpeed added in v0.26.0

func (t *TranscodeSession) GetSpeed() *float64

func (*TranscodeSession) GetThrottled added in v0.26.0

func (t *TranscodeSession) GetThrottled() *bool

func (*TranscodeSession) GetTranscodeHwFullPipeline added in v0.26.0

func (t *TranscodeSession) GetTranscodeHwFullPipeline() *bool

func (*TranscodeSession) GetTranscodeHwRequested added in v0.26.0

func (t *TranscodeSession) GetTranscodeHwRequested() *bool

type TranscodeType added in v0.26.0

type TranscodeType string
const (
	TranscodeTypeVideo     TranscodeType = "video"
	TranscodeTypeMusic     TranscodeType = "music"
	TranscodeTypeAudio     TranscodeType = "audio"
	TranscodeTypeSubtitles TranscodeType = "subtitles"
)

func (TranscodeType) ToPointer added in v0.26.0

func (e TranscodeType) ToPointer() *TranscodeType

func (*TranscodeType) UnmarshalJSON added in v0.26.0

func (e *TranscodeType) UnmarshalJSON(data []byte) error

type Type added in v0.26.0

type Type string

Type - The type of the value of this setting

const (
	TypeBool   Type = "bool"
	TypeInt    Type = "int"
	TypeText   Type = "text"
	TypeDouble Type = "double"
)

func (Type) ToPointer added in v0.26.0

func (e Type) ToPointer() *Type

func (*Type) UnmarshalJSON added in v0.26.0

func (e *Type) UnmarshalJSON(data []byte) error

type User added in v0.26.0

type User struct {
	// The username
	Title *string `json:"title,omitempty"`
	// The id of the user
	ID *string `json:"id,omitempty"`
	// Thumb image to display for the user
	Thumb *string `json:"thumb,omitempty"`
}

User - The user playing the content

func (*User) GetID added in v0.26.0

func (u *User) GetID() *string

func (*User) GetThumb added in v0.26.0

func (u *User) GetThumb() *string

func (*User) GetTitle added in v0.26.0

func (u *User) GetTitle() *string

type UserPlexAccount added in v0.28.0

type UserPlexAccount struct {
	// Unknown
	AdsConsent           *bool  `json:"adsConsent,omitempty"`
	AdsConsentReminderAt *int64 `json:"adsConsentReminderAt,omitempty"`
	AdsConsentSetAt      *int64 `json:"adsConsentSetAt,omitempty"`
	// Unknown
	Anonymous *bool `default:"false" json:"anonymous"`
	// The account token
	AuthToken string `json:"authToken"`
	// If the two-factor authentication backup codes have been created
	BackupCodesCreated *bool `default:"false" json:"backupCodesCreated"`
	// If the account has been confirmed
	Confirmed *bool `default:"false" json:"confirmed"`
	// The account country
	Country *string `json:"country,omitempty"`
	// The account email address
	Email string `json:"email"`
	// If login with email only is enabled
	EmailOnlyAuth *bool `default:"false" json:"emailOnlyAuth"`
	// If experimental features are enabled
	ExperimentalFeatures *bool `default:"false" json:"experimentalFeatures"`
	// Your account full name
	FriendlyName string `json:"friendlyName"`
	// List of devices your allowed to use with this account
	Entitlements []string `json:"entitlements,omitempty"`
	// If the account is a Plex Home guest user
	Guest *bool `default:"false" json:"guest"`
	// If the account has a password
	HasPassword *bool `default:"true" json:"hasPassword"`
	// If the account is a Plex Home user
	Home *bool `default:"false" json:"home"`
	// If the account is the Plex Home admin
	HomeAdmin *bool `default:"false" json:"homeAdmin"`
	// The number of accounts in the Plex Home
	HomeSize *int `json:"homeSize,omitempty"`
	// The Plex account ID
	ID int `json:"id"`
	// Unix epoch datetime in seconds
	JoinedAt int64 `json:"joinedAt"`
	// The account locale
	Locale *string `json:"locale,omitempty"`
	// If you are subscribed to the Plex newsletter
	MailingListActive *bool `default:"false" json:"mailingListActive"`
	// Your current mailing list status
	MailingListStatus *MailingListStatus `json:"mailingListStatus,omitempty"`
	// The maximum number of accounts allowed in the Plex Home
	MaxHomeSize *int `json:"maxHomeSize,omitempty"`
	// [Might be removed] The hashed Plex Home PIN
	//
	// Deprecated: This will be removed in a future release, please migrate away from it as soon as possible.
	Pin     *string      `json:"pin,omitempty"`
	Profile *UserProfile `json:"profile,omitempty"`
	// If the account has a Plex Home PIN enabled
	Protected *bool `default:"false" json:"protected"`
	// Unix epoch datetime in seconds
	RememberExpiresAt *int64 `json:"rememberExpiresAt,omitempty"`
	// If the account is a Plex Home managed user
	Restricted *bool `default:"false" json:"restricted"`
	// [Might be removed] List of account roles. Plexpass membership listed here
	Roles []string `json:"roles,omitempty"`
	// Unknown
	ScrobbleTypes *string    `json:"scrobbleTypes,omitempty"`
	Services      []Services `json:"services,omitempty"`
	// If the account's Plex Pass subscription is active
	Subscription *Subscription `json:"subscription,omitempty"`
	// Description of the Plex Pass subscription
	SubscriptionDescription *string                       `json:"subscriptionDescription,omitempty"`
	Subscriptions           []UserPlexAccountSubscription `json:"subscriptions,omitempty"`
	// URL of the account thumbnail
	Thumb *string `json:"thumb,omitempty"`
	// The title of the account (username or friendly name)
	Title string `json:"title"`
	// If two-factor authentication is enabled
	TwoFactorEnabled *bool `default:"false" json:"twoFactorEnabled"`
	// The account username
	Username string `json:"username"`
	// The account UUID
	UUID               string  `json:"uuid"`
	AttributionPartner *string `json:"attributionPartner,omitempty"`
}

func (*UserPlexAccount) GetAdsConsent added in v0.28.0

func (u *UserPlexAccount) GetAdsConsent() *bool

func (*UserPlexAccount) GetAdsConsentReminderAt added in v0.28.0

func (u *UserPlexAccount) GetAdsConsentReminderAt() *int64

func (*UserPlexAccount) GetAdsConsentSetAt added in v0.28.0

func (u *UserPlexAccount) GetAdsConsentSetAt() *int64

func (*UserPlexAccount) GetAnonymous added in v0.28.0

func (u *UserPlexAccount) GetAnonymous() *bool

func (*UserPlexAccount) GetAttributionPartner added in v0.28.0

func (u *UserPlexAccount) GetAttributionPartner() *string

func (*UserPlexAccount) GetAuthToken added in v0.28.0

func (u *UserPlexAccount) GetAuthToken() string

func (*UserPlexAccount) GetBackupCodesCreated added in v0.28.0

func (u *UserPlexAccount) GetBackupCodesCreated() *bool

func (*UserPlexAccount) GetConfirmed added in v0.28.0

func (u *UserPlexAccount) GetConfirmed() *bool

func (*UserPlexAccount) GetCountry added in v0.28.0

func (u *UserPlexAccount) GetCountry() *string

func (*UserPlexAccount) GetEmail added in v0.28.0

func (u *UserPlexAccount) GetEmail() string

func (*UserPlexAccount) GetEmailOnlyAuth added in v0.28.0

func (u *UserPlexAccount) GetEmailOnlyAuth() *bool

func (*UserPlexAccount) GetEntitlements added in v0.28.0

func (u *UserPlexAccount) GetEntitlements() []string

func (*UserPlexAccount) GetExperimentalFeatures added in v0.28.0

func (u *UserPlexAccount) GetExperimentalFeatures() *bool

func (*UserPlexAccount) GetFriendlyName added in v0.28.0

func (u *UserPlexAccount) GetFriendlyName() string

func (*UserPlexAccount) GetGuest added in v0.28.0

func (u *UserPlexAccount) GetGuest() *bool

func (*UserPlexAccount) GetHasPassword added in v0.28.0

func (u *UserPlexAccount) GetHasPassword() *bool

func (*UserPlexAccount) GetHome added in v0.28.0

func (u *UserPlexAccount) GetHome() *bool

func (*UserPlexAccount) GetHomeAdmin added in v0.28.0

func (u *UserPlexAccount) GetHomeAdmin() *bool

func (*UserPlexAccount) GetHomeSize added in v0.28.0

func (u *UserPlexAccount) GetHomeSize() *int

func (*UserPlexAccount) GetID added in v0.28.0

func (u *UserPlexAccount) GetID() int

func (*UserPlexAccount) GetJoinedAt added in v0.28.0

func (u *UserPlexAccount) GetJoinedAt() int64

func (*UserPlexAccount) GetLocale added in v0.28.0

func (u *UserPlexAccount) GetLocale() *string

func (*UserPlexAccount) GetMailingListActive added in v0.28.0

func (u *UserPlexAccount) GetMailingListActive() *bool

func (*UserPlexAccount) GetMailingListStatus added in v0.28.0

func (u *UserPlexAccount) GetMailingListStatus() *MailingListStatus

func (*UserPlexAccount) GetMaxHomeSize added in v0.28.0

func (u *UserPlexAccount) GetMaxHomeSize() *int

func (*UserPlexAccount) GetPin added in v0.28.0

func (u *UserPlexAccount) GetPin() *string

func (*UserPlexAccount) GetProfile added in v0.28.0

func (u *UserPlexAccount) GetProfile() *UserProfile

func (*UserPlexAccount) GetProtected added in v0.28.0

func (u *UserPlexAccount) GetProtected() *bool

func (*UserPlexAccount) GetRememberExpiresAt added in v0.28.0

func (u *UserPlexAccount) GetRememberExpiresAt() *int64

func (*UserPlexAccount) GetRestricted added in v0.28.0

func (u *UserPlexAccount) GetRestricted() *bool

func (*UserPlexAccount) GetRoles added in v0.28.0

func (u *UserPlexAccount) GetRoles() []string

func (*UserPlexAccount) GetScrobbleTypes added in v0.28.0

func (u *UserPlexAccount) GetScrobbleTypes() *string

func (*UserPlexAccount) GetServices added in v0.28.0

func (u *UserPlexAccount) GetServices() []Services

func (*UserPlexAccount) GetSubscription added in v0.28.0

func (u *UserPlexAccount) GetSubscription() *Subscription

func (*UserPlexAccount) GetSubscriptionDescription added in v0.28.0

func (u *UserPlexAccount) GetSubscriptionDescription() *string

func (*UserPlexAccount) GetSubscriptions added in v0.28.0

func (u *UserPlexAccount) GetSubscriptions() []UserPlexAccountSubscription

func (*UserPlexAccount) GetThumb added in v0.28.0

func (u *UserPlexAccount) GetThumb() *string

func (*UserPlexAccount) GetTitle added in v0.28.0

func (u *UserPlexAccount) GetTitle() string

func (*UserPlexAccount) GetTwoFactorEnabled added in v0.28.0

func (u *UserPlexAccount) GetTwoFactorEnabled() *bool

func (*UserPlexAccount) GetUUID added in v0.28.0

func (u *UserPlexAccount) GetUUID() string

func (*UserPlexAccount) GetUsername added in v0.28.0

func (u *UserPlexAccount) GetUsername() string

func (UserPlexAccount) MarshalJSON added in v0.28.0

func (u UserPlexAccount) MarshalJSON() ([]byte, error)

func (*UserPlexAccount) UnmarshalJSON added in v0.28.0

func (u *UserPlexAccount) UnmarshalJSON(data []byte) error

type UserPlexAccountStatus added in v0.28.0

type UserPlexAccountStatus string
const (
	UserPlexAccountStatusOnline  UserPlexAccountStatus = "online"
	UserPlexAccountStatusOffline UserPlexAccountStatus = "offline"
)

func (*UserPlexAccountStatus) IsExact added in v0.28.0

func (e *UserPlexAccountStatus) IsExact() bool

IsExact returns true if the value matches a known enum value, false otherwise.

func (UserPlexAccountStatus) ToPointer added in v0.28.0

type UserPlexAccountSubscription added in v0.28.0

type UserPlexAccountSubscription struct {
	// List of features allowed on your Plex Pass subscription
	Features []string `json:"features,omitempty"`
	// If the account's Plex Pass subscription is active
	Active *bool `json:"active,omitempty"`
	// Date the account subscribed to Plex Pass
	SubscribedAt *string `json:"subscribedAt,omitempty"`
	// String representation of subscriptionActive
	Status *UserPlexAccountSubscriptionsStatus `json:"status,omitempty"`
	// Payment service used for your Plex Pass subscription
	PaymentService *string `json:"paymentService,omitempty"`
	// Name of Plex Pass subscription plan
	Plan *string `json:"plan,omitempty"`
}

func (*UserPlexAccountSubscription) GetActive added in v0.28.0

func (u *UserPlexAccountSubscription) GetActive() *bool

func (*UserPlexAccountSubscription) GetFeatures added in v0.28.0

func (u *UserPlexAccountSubscription) GetFeatures() []string

func (*UserPlexAccountSubscription) GetPaymentService added in v0.28.0

func (u *UserPlexAccountSubscription) GetPaymentService() *string

func (*UserPlexAccountSubscription) GetPlan added in v0.28.0

func (u *UserPlexAccountSubscription) GetPlan() *string

func (*UserPlexAccountSubscription) GetStatus added in v0.28.0

func (*UserPlexAccountSubscription) GetSubscribedAt added in v0.28.0

func (u *UserPlexAccountSubscription) GetSubscribedAt() *string

type UserPlexAccountSubscriptionStatus added in v0.28.0

type UserPlexAccountSubscriptionStatus string

UserPlexAccountSubscriptionStatus - String representation of subscriptionActive

const (
	UserPlexAccountSubscriptionStatusInactive UserPlexAccountSubscriptionStatus = "Inactive"
	UserPlexAccountSubscriptionStatusActive   UserPlexAccountSubscriptionStatus = "Active"
)

func (*UserPlexAccountSubscriptionStatus) IsExact added in v0.28.0

IsExact returns true if the value matches a known enum value, false otherwise.

func (UserPlexAccountSubscriptionStatus) ToPointer added in v0.28.0

type UserPlexAccountSubscriptionsStatus added in v0.28.0

type UserPlexAccountSubscriptionsStatus string

UserPlexAccountSubscriptionsStatus - String representation of subscriptionActive

const (
	UserPlexAccountSubscriptionsStatusInactive UserPlexAccountSubscriptionsStatus = "Inactive"
	UserPlexAccountSubscriptionsStatusActive   UserPlexAccountSubscriptionsStatus = "Active"
)

func (*UserPlexAccountSubscriptionsStatus) IsExact added in v0.28.0

IsExact returns true if the value matches a known enum value, false otherwise.

func (UserPlexAccountSubscriptionsStatus) ToPointer added in v0.28.0

type UserProfile added in v0.28.0

type UserProfile struct {
	// If the account has automatically select audio and subtitle tracks enabled
	AutoSelectAudio *bool `default:"true" json:"autoSelectAudio"`
	// The preferred audio language for the account
	DefaultAudioLanguage      *string                    `json:"defaultAudioLanguage"`
	DefaultAudioAccessibility *DefaultAudioAccessibility `default:"0" json:"defaultAudioAccessibility"`
	// The preferred audio languages for the account
	DefaultAudioLanguages []string `json:"defaultAudioLanguages,omitempty"`
	// The preferred subtitle language for the account
	DefaultSubtitleLanguage *string `json:"defaultSubtitleLanguage"`
	// The preferred subtitle languages for the account
	DefaultSubtitleLanguages     []string                      `json:"defaultSubtitleLanguages,omitempty"`
	AutoSelectSubtitle           *AutoSelectSubtitle           `default:"0" json:"autoSelectSubtitle"`
	DefaultSubtitleAccessibility *DefaultSubtitleAccessibility `default:"0" json:"defaultSubtitleAccessibility"`
	DefaultSubtitleForced        *DefaultSubtitleForced        `default:"0" json:"defaultSubtitleForced"`
	WatchedIndicator             *WatchedIndicator             `default:"0" json:"watchedIndicator"`
	MediaReviewsVisibility       *MediaReviewsVisibility       `default:"0" json:"mediaReviewsVisibility"`
	// The languages for media reviews visibility
	MediaReviewsLanguages []string `json:"mediaReviewsLanguages,omitempty"`
}

func (*UserProfile) GetAutoSelectAudio added in v0.28.0

func (u *UserProfile) GetAutoSelectAudio() *bool

func (*UserProfile) GetAutoSelectSubtitle added in v0.28.0

func (u *UserProfile) GetAutoSelectSubtitle() *AutoSelectSubtitle

func (*UserProfile) GetDefaultAudioAccessibility added in v0.28.0

func (u *UserProfile) GetDefaultAudioAccessibility() *DefaultAudioAccessibility

func (*UserProfile) GetDefaultAudioLanguage added in v0.28.0

func (u *UserProfile) GetDefaultAudioLanguage() *string

func (*UserProfile) GetDefaultAudioLanguages added in v0.28.0

func (u *UserProfile) GetDefaultAudioLanguages() []string

func (*UserProfile) GetDefaultSubtitleAccessibility added in v0.28.0

func (u *UserProfile) GetDefaultSubtitleAccessibility() *DefaultSubtitleAccessibility

func (*UserProfile) GetDefaultSubtitleForced added in v0.28.0

func (u *UserProfile) GetDefaultSubtitleForced() *DefaultSubtitleForced

func (*UserProfile) GetDefaultSubtitleLanguage added in v0.28.0

func (u *UserProfile) GetDefaultSubtitleLanguage() *string

func (*UserProfile) GetDefaultSubtitleLanguages added in v0.28.0

func (u *UserProfile) GetDefaultSubtitleLanguages() []string

func (*UserProfile) GetMediaReviewsLanguages added in v0.28.0

func (u *UserProfile) GetMediaReviewsLanguages() []string

func (*UserProfile) GetMediaReviewsVisibility added in v0.28.0

func (u *UserProfile) GetMediaReviewsVisibility() *MediaReviewsVisibility

func (*UserProfile) GetWatchedIndicator added in v0.28.0

func (u *UserProfile) GetWatchedIndicator() *WatchedIndicator

func (UserProfile) MarshalJSON added in v0.28.0

func (u UserProfile) MarshalJSON() ([]byte, error)

func (*UserProfile) UnmarshalJSON added in v0.28.0

func (u *UserProfile) UnmarshalJSON(data []byte) error

type Value added in v0.26.0

type Value struct {
	Str     *string  `queryParam:"inline,name=value" union:"member"`
	Number  *float64 `queryParam:"inline,name=value" union:"member"`
	Boolean *bool    `queryParam:"inline,name=value" union:"member"`

	Type ValueType
}

Value - The current value of this setting

func CreateValueBoolean added in v0.26.0

func CreateValueBoolean(boolean bool) Value

func CreateValueNumber added in v0.26.0

func CreateValueNumber(number float64) Value

func CreateValueStr added in v0.26.0

func CreateValueStr(str string) Value

func (Value) MarshalJSON added in v0.26.0

func (u Value) MarshalJSON() ([]byte, error)

func (*Value) UnmarshalJSON added in v0.26.0

func (u *Value) UnmarshalJSON(data []byte) error

type ValueType added in v0.26.0

type ValueType string
const (
	ValueTypeStr     ValueType = "str"
	ValueTypeNumber  ValueType = "number"
	ValueTypeBoolean ValueType = "boolean"
)

type WatchedIndicator added in v0.28.0

type WatchedIndicator int

WatchedIndicator - Whether or not media watched indicators are enabled (little orange dot on media)

const (
	WatchedIndicatorNone             WatchedIndicator = 0
	WatchedIndicatorMoviesAndTvShows WatchedIndicator = 1
	WatchedIndicatorMovies           WatchedIndicator = 2
	WatchedIndicatorTvShows          WatchedIndicator = 3
)

func (WatchedIndicator) ToPointer added in v0.28.0

func (e WatchedIndicator) ToPointer() *WatchedIndicator

func (*WatchedIndicator) UnmarshalJSON added in v0.28.0

func (e *WatchedIndicator) UnmarshalJSON(data []byte) error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL