radarr

package
v0.0.0-...-f30bd74 Latest Latest
Warning

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

Go to latest
Published: Nov 21, 2024 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

View Source
const (
	FilterUnknown starr.Filtering = iota
	FilterGrabbed

	FilterDownloadFolderImported
	FilterDownloadFailed

	FilterFileDeleted

	FilterRenamed
	FilterIgnored
)

Filter values are integers. Given names for ease of discovery. https://github.com/Radarr/Radarr/blob/2bca1a71a2ed5130ea642343cb76250f3bf5bc4e/src/NzbDrone.Core/History/History.cs#L33-L44

View Source
const APIver = "v3"

APIver is the Radarr API version supported by this library.

Variables

This section is empty.

Functions

This section is empty.

Types

type AddMovieInput

type AddMovieInput struct {
	Title               string           `json:"title,omitempty"`
	TitleSlug           string           `json:"titleSlug,omitempty"`
	MinimumAvailability Availability     `json:"minimumAvailability,omitempty"`
	RootFolderPath      string           `json:"rootFolderPath"`
	TmdbID              int64            `json:"tmdbId"`
	QualityProfileID    int64            `json:"qualityProfileId"`
	ProfileID           int64            `json:"profileId,omitempty"`
	Year                int              `json:"year,omitempty"`
	Images              []*starr.Image   `json:"images,omitempty"`
	AddOptions          *AddMovieOptions `json:"addOptions"`
	Tags                []int            `json:"tags,omitempty"`
	Monitored           bool             `json:"monitored"`
}

AddMovieInput is the input for a new movie.

type AddMovieOptions

type AddMovieOptions struct {
	SearchForMovie bool `json:"searchForMovie"`
	// Allowed values: "movieOnly", "movieAndCollection", "none"
	Monitor string `json:"monitor,omitempty"`
}

AddMovieOptions are the options for finding a new movie.

type AlternativeTitle

type AlternativeTitle struct {
	MovieMetadataID int64        `json:"movieMetadataId"`
	MovieID         int64        `json:"movieId"`
	Title           string       `json:"title"`
	SourceType      string       `json:"sourceType"`
	SourceID        int64        `json:"sourceId"`
	Votes           int          `json:"votes"`
	VoteCount       int          `json:"voteCount"`
	Language        *starr.Value `json:"language"`
	ID              int64        `json:"id"`
}

AlternativeTitle is part of a Movie.

type Availability

type Availability string

Availability is an enum used as MinimumAvailability in a few places throughout Radarr.

const (
	AvailabilityToBeAnnounced Availability = "tba"
	AvailabilityAnnounced     Availability = "announced"
	AvailabilityInCinemas     Availability = "inCinemas"
	AvailabilityReleased      Availability = "released"
	AvailabilityDeleted       Availability = "deleted"
)

Availability / MinimumAvailability constants. https://radarr.video/docs/api/#/MovieEditor/put_api_v3_movie_editor

type BlockList

type BlockList struct {
	Page          int                `json:"page"`
	PageSize      int                `json:"pageSize"`
	SortKey       string             `json:"sortKey"`
	SortDirection string             `json:"sortDirection"`
	TotalRecords  int                `json:"totalRecords"`
	Records       []*BlockListRecord `json:"records"`
}

BlockList represents the /api/v3/blocklist endpoint.

type BlockListRecord

type BlockListRecord struct {
	Movie         *Movie                `json:"movie"`
	Quality       *starr.Quality        `json:"quality"`
	Languages     []*starr.Value        `json:"languages"`
	CustomFormats []*CustomFormatOutput `json:"customFormats"`
	MovieID       int64                 `json:"movieId"`
	ID            int64                 `json:"id"`
	Date          time.Time             `json:"date"`
	SourceTitle   string                `json:"sourceTitle"`
	Protocol      starr.Protocol        `json:"protocol"`
	Indexer       string                `json:"indexer"`
	Message       string                `json:"message"`
}

BlockListRecord represents a single block list item.

type BulkEdit

type BulkEdit struct {
	MovieIDs            []int64         `json:"movieIds"`
	Monitored           *bool           `json:"monitored,omitempty"`
	QualityProfileID    *int64          `json:"qualityProfileId,omitempty"`
	MinimumAvailability Availability    `json:"minimumAvailability,omitempty"` // tba
	RootFolderPath      *string         `json:"rootFolderPath,omitempty"`      // path
	Tags                []int           `json:"tags,omitempty"`                // [0]
	ApplyTags           starr.ApplyTags `json:"applyTags,omitempty"`           // add
	MoveFiles           *bool           `json:"moveFiles,omitempty"`
	DeleteFiles         *bool           `json:"deleteFiles,omitempty"`        // delete only
	AddImportExclusion  *bool           `json:"addImportExclusion,omitempty"` // delete only
}

BulkEdit is the input for the bulk movie editor endpoint. You may use starr.True(), starr.False(), starr.Int64(), and starr.String() to add data to the struct members. Use Availability.Ptr() to add a value to minimum availability, and starr.ApplyTags.Ptr() for apply tags.

type CRF

type CRF string

CRF is ColonReplacementFormat, for naming config.

const (
	ColonDelete                    CRF = "delete"
	ColonReplaceWithDash           CRF = "dash"
	ColonReplaceWithSpaceDash      CRF = "spaceDash"
	ColonReplaceWithSpaceDashSpace CRF = "spaceDashSpace"
)

These are all of the possible Colon Replacement Formats (for naming config) in Radarr.

type Calendar

type Calendar struct {
	Start       time.Time
	End         time.Time
	Unmonitored bool
}

Calendar defines the filters for fetching calendar items. Start and End are required. Use starr.True() and starr.False() to fill in the booleans.

type Collection

type Collection struct {
	Name   string         `json:"name"`
	TmdbID int64          `json:"tmdbId"`
	Images []*starr.Image `json:"images"`
}

Collection belongs to a Movie.

type CommandRequest

type CommandRequest struct {
	Name     string  `json:"name"`
	MovieIDs []int64 `json:"movieIds,omitempty"`
}

CommandRequest goes into the /api/v3/command endpoint. This was created from the search command and may not support other commands yet.

type CommandResponse

type CommandResponse struct {
	ID                  int64                  `json:"id"`
	Name                string                 `json:"name"`
	CommandName         string                 `json:"commandName"`
	Message             string                 `json:"message,omitempty"`
	Priority            string                 `json:"priority"`
	Status              string                 `json:"status"`
	Queued              time.Time              `json:"queued"`
	Started             time.Time              `json:"started,omitempty"`
	Ended               time.Time              `json:"ended,omitempty"`
	StateChangeTime     time.Time              `json:"stateChangeTime,omitempty"`
	LastExecutionTime   time.Time              `json:"lastExecutionTime,omitempty"`
	Duration            string                 `json:"duration,omitempty"`
	Trigger             string                 `json:"trigger"`
	SendUpdatesToClient bool                   `json:"sendUpdatesToClient"`
	UpdateScheduledTask bool                   `json:"updateScheduledTask"`
	Body                map[string]interface{} `json:"body"`
}

CommandResponse comes from the /api/v3/command endpoint.

type CustomFormatInput

type CustomFormatInput struct {
	ID                    int64                    `json:"id,omitempty"`
	Name                  string                   `json:"name"`
	IncludeCFWhenRenaming bool                     `json:"includeCustomFormatWhenRenaming"`
	Specifications        []*CustomFormatInputSpec `json:"specifications"`
}

CustomFormatInput is the input for a new or updated CustomFormat.

type CustomFormatInputSpec

type CustomFormatInputSpec struct {
	Name           string              `json:"name"`
	Implementation string              `json:"implementation"`
	Negate         bool                `json:"negate"`
	Required       bool                `json:"required"`
	Fields         []*starr.FieldInput `json:"fields"`
}

CustomFormatInputSpec is part of a CustomFormatInput.

type CustomFormatOutput

type CustomFormatOutput struct {
	ID                    int64                     `json:"id"`
	Name                  string                    `json:"name"`
	IncludeCFWhenRenaming bool                      `json:"includeCustomFormatWhenRenaming"`
	Specifications        []*CustomFormatOutputSpec `json:"specifications"`
}

CustomFormatOutput is the output from the CustomFormat methods.

type CustomFormatOutputSpec

type CustomFormatOutputSpec struct {
	Name               string               `json:"name"`
	Implementation     string               `json:"implementation"`
	ImplementationName string               `json:"implementationName"`
	InfoLink           string               `json:"infoLink"`
	Negate             bool                 `json:"negate"`
	Required           bool                 `json:"required"`
	Fields             []*starr.FieldOutput `json:"fields"`
}

CustomFormatOutputSpec is part of a CustomFormatOutput.

type DelayProfile

type DelayProfile struct {
	EnableUsenet           bool           `json:"enableUsenet,omitempty"`
	EnableTorrent          bool           `json:"enableTorrent,omitempty"`
	BypassIfHighestQuality bool           `json:"bypassIfHighestQuality,omitempty"`
	UsenetDelay            int64          `json:"usenetDelay,omitempty"`
	TorrentDelay           int64          `json:"torrentDelay,omitempty"`
	ID                     int64          `json:"id,omitempty"`
	Order                  int64          `json:"order,omitempty"`
	Tags                   []int          `json:"tags"`
	PreferredProtocol      starr.Protocol `json:"preferredProtocol,omitempty"`
}

DelayProfile is the /api/v3/delayprofile endpoint.

type DownloadClientConfig

type DownloadClientConfig struct {
	EnableCompletedDownloadHandling  bool   `json:"enableCompletedDownloadHandling"`
	AutoRedownloadFailed             bool   `json:"autoRedownloadFailed"`
	CheckForFinishedDownloadInterval int64  `json:"checkForFinishedDownloadInterval"`
	ID                               int64  `json:"id"`
	DownloadClientWorkingFolders     string `json:"downloadClientWorkingFolders"`
}

DownloadClientConfig is the /api/v3/config/downloadClientConfig endpoint.

type DownloadClientInput

type DownloadClientInput struct {
	Enable                   bool                `json:"enable"`
	RemoveCompletedDownloads bool                `json:"removeCompletedDownloads"`
	RemoveFailedDownloads    bool                `json:"removeFailedDownloads"`
	Priority                 int                 `json:"priority"`
	ID                       int64               `json:"id,omitempty"`
	ConfigContract           string              `json:"configContract"`
	Implementation           string              `json:"implementation"`
	Name                     string              `json:"name"`
	Protocol                 starr.Protocol      `json:"protocol"`
	Tags                     []int               `json:"tags"`
	Fields                   []*starr.FieldInput `json:"fields"`
}

DownloadClientInput is the input for a new or updated download client.

type DownloadClientOutput

type DownloadClientOutput struct {
	Enable                   bool                 `json:"enable"`
	RemoveCompletedDownloads bool                 `json:"removeCompletedDownloads"`
	RemoveFailedDownloads    bool                 `json:"removeFailedDownloads"`
	Priority                 int                  `json:"priority"`
	ID                       int64                `json:"id,omitempty"`
	ConfigContract           string               `json:"configContract"`
	Implementation           string               `json:"implementation"`
	ImplementationName       string               `json:"implementationName"`
	InfoLink                 string               `json:"infoLink"`
	Name                     string               `json:"name"`
	Protocol                 starr.Protocol       `json:"protocol"`
	Tags                     []int                `json:"tags"`
	Fields                   []*starr.FieldOutput `json:"fields"`
}

DownloadClientOutput is the output from the download client methods.

type Exclusion

type Exclusion struct {
	TMDBID int64  `json:"tmdbId"`
	Title  string `json:"movieTitle"`
	Year   int    `json:"movieYear"`
	ID     int64  `json:"id,omitempty"`
}

Exclusion is a Radarr excluded item.

type GetMovie

type GetMovie struct {
	// Set TMDBID to retrieve a single movie. Leave it at 0 to retrieve them all.
	TMDBID int64
	// Setting this to true may speed up the response time, but less data is returned.
	ExcludeLocalCovers bool
}

GetMovie represents the input parameters for a movie api request.

type History

type History struct {
	Page          int              `json:"page"`
	PageSize      int              `json:"pageSize"`
	SortKey       string           `json:"sortKey"`
	SortDirection string           `json:"sortDirection"`
	TotalRecords  int              `json:"totalRecords"`
	Records       []*HistoryRecord `json:"records"`
}

History is the /api/v3/history endpoint.

type HistoryRecord

type HistoryRecord struct {
	ID                  int64                 `json:"id"`
	MovieID             int64                 `json:"movieId"`
	SourceTitle         string                `json:"sourceTitle"`
	Languages           []*starr.Value        `json:"languages"`
	Quality             *starr.Quality        `json:"quality"`
	CustomFormats       []*CustomFormatOutput `json:"customFormats"`
	QualityCutoffNotMet bool                  `json:"qualityCutoffNotMet"`
	Date                time.Time             `json:"date"`
	DownloadID          string                `json:"downloadId"`
	EventType           string                `json:"eventType"`
	Data                struct {
		Age                string         `json:"age"`
		AgeHours           string         `json:"ageHours"`
		AgeMinutes         string         `json:"ageMinutes"`
		DownloadClient     string         `json:"downloadClient"`
		DownloadClientName string         `json:"downloadClientName"`
		DownloadURL        string         `json:"downloadUrl"`
		DroppedPath        string         `json:"droppedPath"`
		FileID             string         `json:"fileId"`
		GUID               string         `json:"guid"`
		ImportedPath       string         `json:"importedPath"`
		Indexer            string         `json:"indexer"`
		IndexerFlags       string         `json:"indexerFlags"`
		IndexerID          string         `json:"indexerId"`
		Message            string         `json:"message"`
		NzbInfoURL         string         `json:"nzbInfoUrl"`
		Protocol           starr.Protocol `json:"protocol"`
		PublishedDate      time.Time      `json:"publishedDate"`
		Reason             string         `json:"reason"`
		ReleaseGroup       string         `json:"releaseGroup"`
		Size               string         `json:"size"`
		TmdbID             string         `json:"tmdbId"`
		TorrentInfoHash    string         `json:"torrentInfoHash"`
	} `json:"data"`
}

HistoryRecord is part of the History data. Not all items have all Data members. Check EventType for what you need.

type ImportListInput

type ImportListInput struct {
	EnableAuto          bool                `json:"enableAuto"`
	Enabled             bool                `json:"enabled"`
	SearchOnAdd         bool                `json:"searchOnAdd"`
	ListOrder           int                 `json:"listOrder"`
	ID                  int64               `json:"id,omitempty"`
	QualityProfileID    int64               `json:"qualityProfileId,omitempty"`
	ConfigContract      string              `json:"configContract,omitempty"`
	Implementation      string              `json:"implementation,omitempty"`
	ImplementationName  string              `json:"implementationName,omitempty"`
	InfoLink            string              `json:"infoLink,omitempty"`
	ListType            string              `json:"listType,omitempty"`
	Monitor             string              `json:"monitor,omitempty"`
	Name                string              `json:"name,omitempty"`
	RootFolderPath      string              `json:"rootFolderPath,omitempty"`
	MinimumAvailability Availability        `json:"minimumAvailability,omitempty"`
	Tags                []int               `json:"tags,omitempty"`
	Fields              []*starr.FieldInput `json:"fields,omitempty"`
}

ImportList represents the api/v3/importlist endpoint.

type ImportListOutput

type ImportListOutput struct {
	EnableAuto          bool                 `json:"enableAuto"`
	Enabled             bool                 `json:"enabled"`
	SearchOnAdd         bool                 `json:"searchOnAdd"`
	ID                  int64                `json:"id"`
	ListOrder           int64                `json:"listOrder"`
	QualityProfileID    int64                `json:"qualityProfileId"`
	ConfigContract      string               `json:"configContract"`
	Implementation      string               `json:"implementation"`
	ImplementationName  string               `json:"implementationName"`
	InfoLink            string               `json:"infoLink"`
	Monitor             string               `json:"monitor"`
	ListType            string               `json:"listType"`
	Name                string               `json:"name"`
	RootFolderPath      string               `json:"rootFolderPath"`
	MinimumAvailability Availability         `json:"minimumAvailability"`
	Tags                []int                `json:"tags"`
	Fields              []*starr.FieldOutput `json:"fields"`
}

ImportList represents the api/v3/importlist endpoint.

type IndexerConfig

type IndexerConfig struct {
	WhitelistedHardcodedSubs string `json:"whitelistedHardcodedSubs"`
	ID                       int64  `json:"id"`
	MaximumSize              int64  `json:"maximumSize"`
	MinimumAge               int64  `json:"minimumAge"`
	Retention                int64  `json:"retention"`
	RssSyncInterval          int64  `json:"rssSyncInterval"`
	AvailabilityDelay        int    `json:"availabilityDelay"`
	PreferIndexerFlags       bool   `json:"preferIndexerFlags"`
	AllowHardcodedSubs       bool   `json:"allowHardcodedSubs"`
}

IndexerConfig represents the /config/indexer endpoint.

type IndexerInput

type IndexerInput struct {
	EnableAutomaticSearch   bool                `json:"enableAutomaticSearch"`
	EnableInteractiveSearch bool                `json:"enableInteractiveSearch"`
	EnableRss               bool                `json:"enableRss"`
	DownloadClientID        int64               `json:"downloadClientId"`
	Priority                int64               `json:"priority"`
	ID                      int64               `json:"id,omitempty"`
	ConfigContract          string              `json:"configContract"`
	Implementation          string              `json:"implementation"`
	Name                    string              `json:"name"`
	Protocol                starr.Protocol      `json:"protocol"`
	Tags                    []int               `json:"tags"`
	Fields                  []*starr.FieldInput `json:"fields"`
}

IndexerInput is the input for a new or updated indexer.

type IndexerOutput

type IndexerOutput struct {
	EnableAutomaticSearch   bool                 `json:"enableAutomaticSearch"`
	EnableInteractiveSearch bool                 `json:"enableInteractiveSearch"`
	EnableRss               bool                 `json:"enableRss"`
	SupportsRss             bool                 `json:"supportsRss"`
	SupportsSearch          bool                 `json:"supportsSearch"`
	DownloadClientID        int64                `json:"downloadClientId"`
	Priority                int64                `json:"priority"`
	ID                      int64                `json:"id,omitempty"`
	ConfigContract          string               `json:"configContract"`
	Implementation          string               `json:"implementation"`
	ImplementationName      string               `json:"implementationName"`
	InfoLink                string               `json:"infoLink"`
	Name                    string               `json:"name"`
	Protocol                starr.Protocol       `json:"protocol"`
	Tags                    []int                `json:"tags"`
	Fields                  []*starr.FieldOutput `json:"fields"`
}

IndexerOutput is the output from the indexer methods.

type ManualImportInput

type ManualImportInput struct {
	ID                int64                `json:"id"`
	Path              string               `json:"path"`
	MovieID           int64                `json:"movieId"`
	Movie             *Movie               `json:"movie"`
	Quality           *starr.Quality       `json:"quality"`
	Languages         []*starr.Value       `json:"languages"`
	ReleaseGroup      string               `json:"releaseGroup"`
	DownloadID        string               `json:"downloadId"`
	CustomFormats     []*CustomFormatInput `json:"customFormats"`
	CustomFormatScore int64                `json:"customFormatScore"`
	Rejections        []*Rejection         `json:"rejections"`
}

ManualImportInput is the input data for a manual import request using a POST request.

type ManualImportOutput

type ManualImportOutput struct {
	ID                int64                 `json:"id"`
	Path              string                `json:"path"`
	RelativePath      string                `json:"relativePath"`
	FolderName        string                `json:"folderName"`
	Name              string                `json:"name"`
	Size              int                   `json:"size"`
	Movie             *Movie                `json:"movie"`
	Quality           *starr.Quality        `json:"quality"`
	Languages         []*starr.Value        `json:"languages"`
	ReleaseGroup      string                `json:"releaseGroup"`
	QualityWeight     int64                 `json:"qualityWeight"`
	DownloadID        string                `json:"downloadId"`
	CustomFormats     []*CustomFormatOutput `json:"customFormats"`
	CustomFormatScore int64                 `json:"customFormatScore"`
	Rejections        []*Rejection          `json:"rejections"`
}

ManualImportOutput is the output data for a manual import request.

type ManualImportParams

type ManualImportParams struct {
	Folder              string
	DownloadID          string
	MovieID             int64
	FilterExistingFiles bool
}

ManualImportParams provides the input parameters for the GET /manualimport API.

type MediaInfo

type MediaInfo struct {
	ID                    int64   `json:"id"`
	AudioBitrate          int     `json:"audioBitrate"`
	AudioChannels         float64 `json:"audioChannels"`
	AudioCodec            string  `json:"audioCodec"`
	AudioLanguages        string  `json:"audioLanguages"`
	AudioStreamCount      int     `json:"audioStreamCount"`
	VideoBitDepth         int     `json:"videoBitDepth"`
	VideoBitrate          int     `json:"videoBitrate"`
	VideoCodec            string  `json:"videoCodec"`
	VideoDynamicRangeType string  `json:"videoDynamicRangeType"`
	VideoFps              float64 `json:"videoFps"`
	Resolution            string  `json:"resolution"`
	RunTime               string  `json:"runTime"`
	ScanType              string  `json:"scanType"`
	Subtitles             string  `json:"subtitles"`
}

MediaInfo is part of a MovieFile.

type MediaManagement

type MediaManagement struct {
	UseScriptImport                         bool   `json:"useScriptImport,omitempty"`
	AutoRenameFolders                       bool   `json:"autoRenameFolders,omitempty"`
	AutoUnmonitorPreviouslyDownloadedMovies bool   `json:"autoUnmonitorPreviouslyDownloadedMovies,omitempty"`
	CopyUsingHardlinks                      bool   `json:"copyUsingHardlinks,omitempty"`
	CreateEmptyMovieFolders                 bool   `json:"createEmptyMovieFolders,omitempty"`
	DeleteEmptyFolders                      bool   `json:"deleteEmptyFolders,omitempty"`
	EnableMediaInfo                         bool   `json:"enableMediaInfo,omitempty"`
	ImportExtraFiles                        bool   `json:"importExtraFiles,omitempty"`
	PathsDefaultStatic                      bool   `json:"pathsDefaultStatic,omitempty"`
	SetPermissionsLinux                     bool   `json:"setPermissionsLinux,omitempty"`
	SkipFreeSpaceCheckWhenImporting         bool   `json:"skipFreeSpaceCheckWhenImporting,omitempty"`
	ID                                      int64  `json:"id"`
	MinimumFreeSpaceWhenImporting           int64  `json:"minimumFreeSpaceWhenImporting"` // 0 or empty not allowed
	RecycleBinCleanupDays                   int64  `json:"recycleBinCleanupDays,omitempty"`
	ScriptImportPath                        string `json:"scriptImportPath,omitempty"`
	ChmodFolder                             string `json:"chmodFolder,omitempty"`
	ChownGroup                              string `json:"chownGroup"` // empty string is valid
	DownloadPropersAndRepacks               string `json:"downloadPropersAndRepacks,omitempty"`
	ExtraFileExtensions                     string `json:"extraFileExtensions,omitempty"`
	FileDate                                string `json:"fileDate,omitempty"`
	RecycleBin                              string `json:"recycleBin"` // empty string is valid
	RescanAfterRefresh                      string `json:"rescanAfterRefresh,omitempty"`
}

MediaManagement represents the /config/mediaManagement endpoint.

type Movie

type Movie struct {
	ID                    int64               `json:"id"`
	Title                 string              `json:"title,omitempty"`
	Path                  string              `json:"path,omitempty"`
	MinimumAvailability   Availability        `json:"minimumAvailability,omitempty"`
	QualityProfileID      int64               `json:"qualityProfileId,omitempty"`
	TmdbID                int64               `json:"tmdbId,omitempty"`
	OriginalTitle         string              `json:"originalTitle,omitempty"`
	AlternateTitles       []*AlternativeTitle `json:"alternateTitles,omitempty"`
	SecondaryYearSourceID int                 `json:"secondaryYearSourceId,omitempty"`
	SortTitle             string              `json:"sortTitle,omitempty"`
	SizeOnDisk            int64               `json:"sizeOnDisk,omitempty"`
	Status                string              `json:"status,omitempty"`
	Overview              string              `json:"overview,omitempty"`
	InCinemas             time.Time           `json:"inCinemas,omitempty"`
	PhysicalRelease       time.Time           `json:"physicalRelease,omitempty"`
	DigitalRelease        time.Time           `json:"digitalRelease,omitempty"`
	Images                []*starr.Image      `json:"images,omitempty"`
	Website               string              `json:"website,omitempty"`
	Year                  int                 `json:"year,omitempty"`
	YouTubeTrailerID      string              `json:"youTubeTrailerId,omitempty"`
	Studio                string              `json:"studio,omitempty"`
	FolderName            string              `json:"folderName,omitempty"`
	Runtime               int                 `json:"runtime,omitempty"`
	CleanTitle            string              `json:"cleanTitle,omitempty"`
	ImdbID                string              `json:"imdbId,omitempty"`
	TitleSlug             string              `json:"titleSlug,omitempty"`
	Certification         string              `json:"certification,omitempty"`
	Genres                []string            `json:"genres,omitempty"`
	Tags                  []int               `json:"tags,omitempty"`
	Added                 time.Time           `json:"added,omitempty"`
	Ratings               starr.OpenRatings   `json:"ratings,omitempty"`
	MovieFile             *MovieFile          `json:"movieFile,omitempty"`
	Collection            *Collection         `json:"collection,omitempty"`
	HasFile               bool                `json:"hasFile,omitempty"`
	IsAvailable           bool                `json:"isAvailable,omitempty"`
	Monitored             bool                `json:"monitored"`
	Popularity            float64             `json:"popularity"`
	OriginalLanguage      *starr.Value        `json:"originalLanguage,omitempty"`
	AddOptions            *AddMovieOptions    `json:"addOptions,omitempty"` // only available upon adding a movie.
}

Movie is the /api/v3/movie endpoint.

type MovieFile

type MovieFile struct {
	ID                  int64                 `json:"id"`
	MovieID             int64                 `json:"movieId"`
	RelativePath        string                `json:"relativePath"`
	Path                string                `json:"path"`
	Size                int64                 `json:"size"`
	DateAdded           time.Time             `json:"dateAdded"`
	SceneName           string                `json:"sceneName"`
	IndexerFlags        int64                 `json:"indexerFlags"`
	Quality             *starr.Quality        `json:"quality,omitempty"`
	CustomFormats       []*CustomFormatOutput `json:"customFormats,omitempty"`
	CustomFormatScore   int                   `json:"customFormatScore"`
	MediaInfo           *MediaInfo            `json:"mediaInfo,omitempty"`
	OriginalFilePath    string                `json:"originalFilePath"`
	QualityCutoffNotMet bool                  `json:"qualityCutoffNotMet"`
	Languages           []*starr.Value        `json:"languages"`
	ReleaseGroup        string                `json:"releaseGroup"`
	Edition             string                `json:"edition"`
}

MovieFile is part of a Movie.

type Naming

type Naming struct {
	RenameMovies             bool   `json:"renameMovies,omitempty"`
	ReplaceIllegalCharacters bool   `json:"replaceIllegalCharacters,omitempty"`
	ID                       int64  `json:"id"` // ID must always be 1 (Oct 10, 2022)
	ColonReplacementFormat   CRF    `json:"colonReplacementFormat,omitempty"`
	StandardMovieFormat      string `json:"standardMovieFormat"` // required
	MovieFolderFormat        string `json:"movieFolderFormat"`   // required
}

Naming represents the config/naming endpoint in Radarr.

type NotificationInput

type NotificationInput struct {
	OnGrab                      bool                `json:"onGrab,omitempty"`
	OnDownload                  bool                `json:"onDownload,omitempty"`
	OnUpgrade                   bool                `json:"onUpgrade,omitempty"`
	OnRename                    bool                `json:"onRename,omitempty"`
	OnMovieAdded                bool                `json:"onMovieAdded,omitempty"`
	OnMovieDelete               bool                `json:"onMovieDelete,omitempty"`
	OnMovieFileDelete           bool                `json:"onMovieFileDelete,omitempty"`
	OnMovieFileDeleteForUpgrade bool                `json:"onMovieFileDeleteForUpgrade,omitempty"`
	OnHealthIssue               bool                `json:"onHealthIssue,omitempty"`
	OnApplicationUpdate         bool                `json:"onApplicationUpdate,omitempty"`
	IncludeHealthWarnings       bool                `json:"includeHealthWarnings,omitempty"`
	ID                          int64               `json:"id,omitempty"`
	Name                        string              `json:"name"`
	Implementation              string              `json:"implementation"`
	ConfigContract              string              `json:"configContract"`
	Tags                        []int               `json:"tags,omitempty"`
	Fields                      []*starr.FieldInput `json:"fields"`
}

NotificationInput is the input for a new or updated notification.

type NotificationOutput

type NotificationOutput struct {
	OnGrab                              bool                 `json:"onGrab,omitempty"`
	OnDownload                          bool                 `json:"onDownload,omitempty"`
	OnUpgrade                           bool                 `json:"onUpgrade,omitempty"`
	OnRename                            bool                 `json:"onRename,omitempty"`
	OnMovieAdded                        bool                 `json:"onMovieAdded,omitempty"`
	OnMovieDelete                       bool                 `json:"onMovieDelete,omitempty"`
	OnMovieFileDelete                   bool                 `json:"onMovieFileDelete,omitempty"`
	OnMovieFileDeleteForUpgrade         bool                 `json:"onMovieFileDeleteForUpgrade,omitempty"`
	OnHealthIssue                       bool                 `json:"onHealthIssue"`
	OnApplicationUpdate                 bool                 `json:"onApplicationUpdate"`
	SupportsOnGrab                      bool                 `json:"supportsOnGrab"`
	SupportsOnDownload                  bool                 `json:"supportsOnDownload"`
	SupportsOnUpgrade                   bool                 `json:"supportsOnUpgrade"`
	SupportsOnRename                    bool                 `json:"supportsOnRename"`
	SupportsOnMovieAdded                bool                 `json:"supportsOnMovieAdded"`
	SupportsOnMovieDelete               bool                 `json:"SupportsOnMovieDelete"`
	SupportsOnMovieFileDelete           bool                 `json:"supportsOnMovieFileDelete"`
	SupportsOnMovieFileDeleteForUpgrade bool                 `json:"supportsOnMovieFileDeleteForUpgrade"`
	SupportsOnHealthIssue               bool                 `json:"supportsOnHealthIssue"`
	SupportsOnApplicationUpdate         bool                 `json:"supportsOnApplicationUpdate"`
	IncludeHealthWarnings               bool                 `json:"includeHealthWarnings"`
	ID                                  int64                `json:"id"`
	Name                                string               `json:"name"`
	ImplementationName                  string               `json:"implementationName"`
	Implementation                      string               `json:"implementation"`
	ConfigContract                      string               `json:"configContract"`
	InfoLink                            string               `json:"infoLink"`
	Tags                                []int                `json:"tags"`
	Fields                              []*starr.FieldOutput `json:"fields"`
}

NotificationOutput is the output from the notification methods.

type QualityDefinition

type QualityDefinition struct {
	ID       int64              `json:"id,omitempty"`
	Weight   int64              `json:"weight"` // This should not be changed.
	MinSize  float64            `json:"minSize"`
	MaxSize  float64            `json:"maxSize"`
	PrefSize float64            `json:"preferredSize"`
	Title    string             `json:"title"`
	Quality  *starr.BaseQuality `json:"quality"`
}

QualityDefinition is the /api/v3/qualitydefinition endpoint.

type QualityProfile

type QualityProfile struct {
	ID                    int64               `json:"id,omitempty"`
	Name                  string              `json:"name,omitempty"`
	UpgradeAllowed        bool                `json:"upgradeAllowed"`
	Cutoff                int64               `json:"cutoff"`
	Qualities             []*starr.Quality    `json:"items,omitempty"`
	MinFormatScore        int64               `json:"minFormatScore"`
	MinUpgradeFormatScore int64               `json:"minUpgradeFormatScore"`
	CutoffFormatScore     int64               `json:"cutoffFormatScore"`
	FormatItems           []*starr.FormatItem `json:"formatItems"`
	Language              *starr.Value        `json:"language,omitempty"`
}

QualityProfile is applied to Movies.

type Queue

type Queue struct {
	Page          int            `json:"page"`
	PageSize      int            `json:"pageSize"`
	SortKey       string         `json:"sortKey"`
	SortDirection string         `json:"sortDirection"`
	TotalRecords  int            `json:"totalRecords"`
	Records       []*QueueRecord `json:"records"`
}

Queue is the /api/v3/queue endpoint.

type QueueRecord

type QueueRecord struct {
	HasPostImportCategory   bool                   `json:"downloadClientHasPostImportCategory"`
	MovieID                 int64                  `json:"movieId"`
	Languages               []*starr.Value         `json:"languages"`
	Quality                 *starr.Quality         `json:"quality"`
	CustomFormats           []*CustomFormatOutput  `json:"customFormats"`
	Size                    float64                `json:"size"`
	Title                   string                 `json:"title"`
	Sizeleft                float64                `json:"sizeleft"`
	Timeleft                string                 `json:"timeleft"`
	EstimatedCompletionTime time.Time              `json:"estimatedCompletionTime"`
	Status                  string                 `json:"status"`
	TrackedDownloadStatus   string                 `json:"trackedDownloadStatus"`
	TrackedDownloadState    string                 `json:"trackedDownloadState"`
	StatusMessages          []*starr.StatusMessage `json:"statusMessages"`
	DownloadID              string                 `json:"downloadId"`
	Protocol                starr.Protocol         `json:"protocol"`
	DownloadClient          string                 `json:"downloadClient"`
	Indexer                 string                 `json:"indexer"`
	OutputPath              string                 `json:"outputPath"`
	ID                      int64                  `json:"id"`
	ErrorMessage            string                 `json:"errorMessage"`
}

QueueRecord is part of the activity Queue.

type Radarr

type Radarr struct {
	starr.APIer
}

Radarr contains all the methods to interact with a Radarr server.

func New

func New(config *starr.Config) *Radarr

New returns a Radarr object used to interact with the Radarr API.

func (*Radarr) AddCustomFormat

func (r *Radarr) AddCustomFormat(format *CustomFormatInput) (*CustomFormatOutput, error)

AddCustomFormat creates a new custom format and returns the response (with ID).

func (*Radarr) AddCustomFormatContext

func (r *Radarr) AddCustomFormatContext(ctx context.Context, format *CustomFormatInput) (*CustomFormatOutput, error)

AddCustomFormatContext creates a new custom format and returns the response (with ID).

func (*Radarr) AddDelayProfile

func (r *Radarr) AddDelayProfile(profile *DelayProfile) (*DelayProfile, error)

AddDelayProfile creates a delay profile. AddDelayProfile doesn't take into account the "order" field sent on creation. Order will be set to first available. This can only be edited via UpdateDelayProfile later on.

func (*Radarr) AddDelayProfileContext

func (r *Radarr) AddDelayProfileContext(ctx context.Context, profile *DelayProfile) (*DelayProfile, error)

AddDelayProfileContext creates a delay profile.

func (*Radarr) AddDownloadClient

func (r *Radarr) AddDownloadClient(downloadclient *DownloadClientInput) (*DownloadClientOutput, error)

AddDownloadClient creates a download client without testing it.

func (*Radarr) AddDownloadClientContext

func (r *Radarr) AddDownloadClientContext(ctx context.Context,
	client *DownloadClientInput,
) (*DownloadClientOutput, error)

AddDownloadClientContext creates a download client without testing it.

func (*Radarr) AddExclusion

func (r *Radarr) AddExclusion(exclusion *Exclusion) (*Exclusion, error)

AddExclusion adds one exclusion to Radarr.

func (*Radarr) AddExclusionContext

func (r *Radarr) AddExclusionContext(ctx context.Context, exclusion *Exclusion) (*Exclusion, error)

AddExclusionContext adds one exclusion to Radarr.

func (*Radarr) AddExclusions

func (r *Radarr) AddExclusions(exclusions []*Exclusion) error

AddExclusions adds multiple exclusions to Radarr.

func (*Radarr) AddExclusionsContext

func (r *Radarr) AddExclusionsContext(ctx context.Context, exclusions []*Exclusion) error

AddExclusionsContext adds exclusions to Radarr.

func (*Radarr) AddImportList

func (r *Radarr) AddImportList(list *ImportListInput) (*ImportListOutput, error)

AddImportList creates an import list in Radarr without testing it.

func (*Radarr) AddImportListContext

func (r *Radarr) AddImportListContext(ctx context.Context, list *ImportListInput) (*ImportListOutput, error)

AddImportListContext creates an import list in Radarr without testing it.

func (*Radarr) AddIndexer

func (r *Radarr) AddIndexer(indexer *IndexerInput) (*IndexerOutput, error)

AddIndexer creates an indexer without testing it.

func (*Radarr) AddIndexerContext

func (r *Radarr) AddIndexerContext(ctx context.Context, indexer *IndexerInput) (*IndexerOutput, error)

AddIndexerContext creates an indexer without testing it.

func (*Radarr) AddMovie

func (r *Radarr) AddMovie(movie *AddMovieInput) (*Movie, error)

AddMovie adds a movie to the queue.

func (*Radarr) AddMovieContext

func (r *Radarr) AddMovieContext(ctx context.Context, movie *AddMovieInput) (*Movie, error)

AddMovieContext adds a movie to the queue.

func (*Radarr) AddNotification

func (r *Radarr) AddNotification(notification *NotificationInput) (*NotificationOutput, error)

AddNotification creates a notification.

func (*Radarr) AddNotificationContext

func (r *Radarr) AddNotificationContext(ctx context.Context, client *NotificationInput) (*NotificationOutput, error)

AddNotificationContext creates a notification.

func (*Radarr) AddQualityProfile

func (r *Radarr) AddQualityProfile(profile *QualityProfile) (*QualityProfile, error)

AddQualityProfile updates a quality profile in place.

func (*Radarr) AddQualityProfileContext

func (r *Radarr) AddQualityProfileContext(ctx context.Context, profile *QualityProfile) (*QualityProfile, error)

AddQualityProfileContext updates a quality profile in place.

func (*Radarr) AddReleaseProfile

func (r *Radarr) AddReleaseProfile(profile *ReleaseProfile) (*ReleaseProfile, error)

AddReleaseProfile creates a release profile.

func (*Radarr) AddReleaseProfileContext

func (r *Radarr) AddReleaseProfileContext(ctx context.Context, profile *ReleaseProfile) (*ReleaseProfile, error)

AddReleaseProfileContext creates a release profile.

func (*Radarr) AddRemotePathMapping

func (r *Radarr) AddRemotePathMapping(mapping *starr.RemotePathMapping) (*starr.RemotePathMapping, error)

AddRemotePathMapping creates a remote path mapping.

func (*Radarr) AddRemotePathMappingContext

func (r *Radarr) AddRemotePathMappingContext(ctx context.Context,
	mapping *starr.RemotePathMapping,
) (*starr.RemotePathMapping, error)

AddRemotePathMappingContext creates a remote path mapping.

func (*Radarr) AddRestriction

func (r *Radarr) AddRestriction(restriction *Restriction) (*Restriction, error)

AddRestriction creates a restriction.

func (*Radarr) AddRestrictionContext

func (r *Radarr) AddRestrictionContext(ctx context.Context, restriction *Restriction) (*Restriction, error)

AddRestrictionContext creates a restriction.

func (*Radarr) AddRootFolder

func (r *Radarr) AddRootFolder(folder *RootFolder) (*RootFolder, error)

AddRootFolder creates a root folder.

func (*Radarr) AddRootFolderContext

func (r *Radarr) AddRootFolderContext(ctx context.Context, folder *RootFolder) (*RootFolder, error)

AddRootFolderContext creates a root folder.

func (*Radarr) AddTag

func (r *Radarr) AddTag(tag *starr.Tag) (*starr.Tag, error)

AddTag creates a tag.

func (*Radarr) AddTagContext

func (r *Radarr) AddTagContext(ctx context.Context, tag *starr.Tag) (*starr.Tag, error)

AddTagContext creates a tag.

func (*Radarr) DeleteBlockList

func (r *Radarr) DeleteBlockList(listID int64) error

DeleteBlockList removes a single block list item.

func (*Radarr) DeleteBlockListContext

func (r *Radarr) DeleteBlockListContext(ctx context.Context, listID int64) error

DeleteBlockListContext removes a single block list item with a context.

func (*Radarr) DeleteBlockLists

func (r *Radarr) DeleteBlockLists(ids []int64) error

DeleteBlockLists removes multiple block list items.

func (*Radarr) DeleteBlockListsContext

func (r *Radarr) DeleteBlockListsContext(ctx context.Context, ids []int64) error

DeleteBlockListsContext removes multiple block list items with a context.

func (*Radarr) DeleteCustomFormat

func (r *Radarr) DeleteCustomFormat(cfID int64) error

DeleteCustomFormat deletes a custom format.

func (*Radarr) DeleteCustomFormatContext

func (r *Radarr) DeleteCustomFormatContext(ctx context.Context, cfID int64) error

DeleteCustomFormatContext deletes a custom format.

func (*Radarr) DeleteDelayProfile

func (r *Radarr) DeleteDelayProfile(profileID int64) error

DeleteDelayProfile removes a single delay profile.

func (*Radarr) DeleteDelayProfileContext

func (r *Radarr) DeleteDelayProfileContext(ctx context.Context, profileID int64) error

DeleteDelayProfileContext removes a single delay profile.

func (*Radarr) DeleteDownloadClient

func (r *Radarr) DeleteDownloadClient(downloadclientID int64) error

DeleteDownloadClient removes a single download client.

func (*Radarr) DeleteDownloadClientContext

func (r *Radarr) DeleteDownloadClientContext(ctx context.Context, downloadclientID int64) error

DeleteDownloadClientContext removes a single download client.

func (*Radarr) DeleteExclusions

func (r *Radarr) DeleteExclusions(ids []int64) error

DeleteExclusions removes exclusions from Radarr.

func (*Radarr) DeleteExclusionsContext

func (r *Radarr) DeleteExclusionsContext(ctx context.Context, ids []int64) error

DeleteExclusionsContext removes exclusions from Radarr.

func (*Radarr) DeleteImportList

func (r *Radarr) DeleteImportList(ids []int64) error

DeleteImportList removes an import list from Radarr.

func (*Radarr) DeleteImportListContext

func (r *Radarr) DeleteImportListContext(ctx context.Context, ids []int64) error

DeleteImportListContext removes an import list from Radarr.

func (*Radarr) DeleteIndexer

func (r *Radarr) DeleteIndexer(indexerID int64) error

DeleteIndexer removes a single indexer.

func (*Radarr) DeleteIndexerContext

func (r *Radarr) DeleteIndexerContext(ctx context.Context, indexerID int64) error

DeleteIndexerContext removes a single indexer.

func (*Radarr) DeleteMovie

func (r *Radarr) DeleteMovie(movieID int64, deleteFiles, addImportExclusion bool) error

DeleteMovie removes a movie from the database. Setting deleteFiles true will delete all content for the movie.

func (*Radarr) DeleteMovieContext

func (r *Radarr) DeleteMovieContext(ctx context.Context, movieID int64, deleteFiles, addImportExclusion bool) error

DeleteMovieContext removes a movie from the database. Setting deleteFiles true will delete all content for the movie.

func (*Radarr) DeleteMovieFiles

func (r *Radarr) DeleteMovieFiles(movieFileIDs ...int64) error

DeleteMovieFile deletes movie files by their IDs.

func (*Radarr) DeleteMovieFilesContext

func (r *Radarr) DeleteMovieFilesContext(ctx context.Context, movieFileIDs ...int64) error

DeleteMovieFileContext deletes movie files by their IDs.

func (*Radarr) DeleteMovies

func (r *Radarr) DeleteMovies(deleteMovies *BulkEdit) error

DeleteMovies bulk deletes movies. Can also mark them as excluded, and delete their files.

func (*Radarr) DeleteMoviesContext

func (r *Radarr) DeleteMoviesContext(ctx context.Context, deleteMovies *BulkEdit) error

DeleteMoviesContext bulk deletes movies. Can also mark them as excluded, and delete their files.

func (*Radarr) DeleteNotification

func (r *Radarr) DeleteNotification(notificationID int64) error

DeleteNotification removes a single notification.

func (*Radarr) DeleteNotificationContext

func (r *Radarr) DeleteNotificationContext(ctx context.Context, notificationID int64) error

func (*Radarr) DeleteQualityProfile

func (r *Radarr) DeleteQualityProfile(profileID int64) error

DeleteQualityProfile deletes a quality profile.

func (*Radarr) DeleteQualityProfileContext

func (r *Radarr) DeleteQualityProfileContext(ctx context.Context, profileID int64) error

DeleteQualityProfileContext deletes a quality profile.

func (*Radarr) DeleteQueue

func (r *Radarr) DeleteQueue(queueID int64, opts *starr.QueueDeleteOpts) error

DeleteQueue deletes an item from the Activity Queue.

func (*Radarr) DeleteQueueContext

func (r *Radarr) DeleteQueueContext(ctx context.Context, queueID int64, opts *starr.QueueDeleteOpts) error

DeleteQueueContext deletes an item from the Activity Queue.

func (*Radarr) DeleteReleaseProfile

func (r *Radarr) DeleteReleaseProfile(profileID int64) error

DeleteReleaseProfile removes a single release profile.

func (*Radarr) DeleteReleaseProfileContext

func (r *Radarr) DeleteReleaseProfileContext(ctx context.Context, profileID int64) error

DeleteReleaseProfileContext removes a single release profile.

func (*Radarr) DeleteRemotePathMapping

func (r *Radarr) DeleteRemotePathMapping(mappingID int64) error

DeleteRemotePathMapping removes a single remote path mapping.

func (*Radarr) DeleteRemotePathMappingContext

func (r *Radarr) DeleteRemotePathMappingContext(ctx context.Context, mappingID int64) error

DeleteRemotePathMappingContext removes a single remote path mapping.

func (*Radarr) DeleteRestriction

func (r *Radarr) DeleteRestriction(restrictionID int64) error

DeleteRestriction removes a single restriction.

func (*Radarr) DeleteRestrictionContext

func (r *Radarr) DeleteRestrictionContext(ctx context.Context, restrictionID int64) error

DeleteRestrictionContext removes a single restriction.

func (*Radarr) DeleteRootFolder

func (r *Radarr) DeleteRootFolder(folderID int64) error

DeleteRootFolder removes a single root folder.

func (*Radarr) DeleteRootFolderContext

func (r *Radarr) DeleteRootFolderContext(ctx context.Context, folderID int64) error

DeleteRootFolderContext removes a single root folder.

func (*Radarr) DeleteTag

func (r *Radarr) DeleteTag(tagID int) error

DeleteTag removes a single tag.

func (*Radarr) DeleteTagContext

func (r *Radarr) DeleteTagContext(ctx context.Context, tagID int) error

DeleteTagContext removes a single tag.

func (*Radarr) EditMovies

func (r *Radarr) EditMovies(editMovies *BulkEdit) ([]*Movie, error)

EditMovies allows bulk diting many movies at once.

func (*Radarr) EditMoviesContext

func (r *Radarr) EditMoviesContext(ctx context.Context, editMovies *BulkEdit) ([]*Movie, error)

EditMoviesContext allows bulk diting many movies at once.

func (*Radarr) Fail

func (r *Radarr) Fail(historyID int64) error

Fail marks the given history item as failed by id.

func (*Radarr) FailContext

func (r *Radarr) FailContext(ctx context.Context, historyID int64) error

FailContext marks the given history item as failed by id.

func (*Radarr) GetBackupFiles

func (r *Radarr) GetBackupFiles() ([]*starr.BackupFile, error)

GetBackupFiles returns all available Radarr backup files. Use GetBody to download a file using BackupFile.Path.

func (*Radarr) GetBackupFilesContext

func (r *Radarr) GetBackupFilesContext(ctx context.Context) ([]*starr.BackupFile, error)

GetBackupFilesContext returns all available Radarr backup files. Use GetBody to download a file using BackupFile.Path.

func (*Radarr) GetBlockList

func (r *Radarr) GetBlockList(count int) (*BlockList, error)

GetBlockList returns the count of block list items requested. If you need control over the page, use GetBlockListPage().

func (*Radarr) GetBlockListContext

func (r *Radarr) GetBlockListContext(ctx context.Context, records int) (*BlockList, error)

GetBlockListContext returns block list items.

func (*Radarr) GetBlockListPage

func (r *Radarr) GetBlockListPage(params *starr.PageReq) (*BlockList, error)

GetBlockListPage returns block list items based on filters.

func (*Radarr) GetBlockListPageContext

func (r *Radarr) GetBlockListPageContext(ctx context.Context, params *starr.PageReq) (*BlockList, error)

GetBlockListPageContext returns block list items based on filters.

func (*Radarr) GetCalendar

func (r *Radarr) GetCalendar(filter Calendar) ([]*Movie, error)

GetCalendar returns calendars based on filters.

func (*Radarr) GetCalendarContext

func (r *Radarr) GetCalendarContext(ctx context.Context, filter Calendar) ([]*Movie, error)

GetCalendarContext returns calendars based on filters.

func (*Radarr) GetCommands

func (r *Radarr) GetCommands() ([]*CommandResponse, error)

GetCommands returns all available Radarr commands.

func (*Radarr) GetCommandsContext

func (r *Radarr) GetCommandsContext(ctx context.Context) ([]*CommandResponse, error)

GetCommandsContext returns all available Radarr commands.

func (*Radarr) GetCustomFormat

func (r *Radarr) GetCustomFormat(customformatID int64) (*CustomFormatOutput, error)

GetCustomFormat returns a single customformat.

func (*Radarr) GetCustomFormatContext

func (r *Radarr) GetCustomFormatContext(ctx context.Context, customformatID int64) (*CustomFormatOutput, error)

GetCustomFormatContext returns a single customformat.

func (*Radarr) GetCustomFormats

func (r *Radarr) GetCustomFormats() ([]*CustomFormatOutput, error)

GetCustomFormats returns all configured Custom Formats.

func (*Radarr) GetCustomFormatsContext

func (r *Radarr) GetCustomFormatsContext(ctx context.Context) ([]*CustomFormatOutput, error)

GetCustomFormatsContext returns all configured Custom Formats.

func (*Radarr) GetDelayProfile

func (r *Radarr) GetDelayProfile(profileID int64) (*DelayProfile, error)

GetDelayProfile returns a single delay profile.

func (*Radarr) GetDelayProfileContext

func (r *Radarr) GetDelayProfileContext(ctx context.Context, profileID int64) (*DelayProfile, error)

GetDelayProfileContext returns a single delay profile.

func (*Radarr) GetDelayProfiles

func (r *Radarr) GetDelayProfiles() ([]*DelayProfile, error)

GetDelayProfiles returns all configured delay profiles.

func (*Radarr) GetDelayProfilesContext

func (r *Radarr) GetDelayProfilesContext(ctx context.Context) ([]*DelayProfile, error)

GetDelayProfilesContext returns all configured delay profiles.

func (*Radarr) GetDownloadClient

func (r *Radarr) GetDownloadClient(downloadclientID int64) (*DownloadClientOutput, error)

GetDownloadClient returns a single download client.

func (*Radarr) GetDownloadClientConfig

func (r *Radarr) GetDownloadClientConfig() (*DownloadClientConfig, error)

GetDownloadClientConfig returns the download client config.

func (*Radarr) GetDownloadClientConfigContext

func (r *Radarr) GetDownloadClientConfigContext(ctx context.Context) (*DownloadClientConfig, error)

GetDownloadClientConfig returns the download client config.

func (*Radarr) GetDownloadClientContext

func (r *Radarr) GetDownloadClientContext(ctx context.Context, downloadclientID int64) (*DownloadClientOutput, error)

GetDownloadClientContext returns a single download client.

func (*Radarr) GetDownloadClients

func (r *Radarr) GetDownloadClients() ([]*DownloadClientOutput, error)

GetDownloadClients returns all configured download clients.

func (*Radarr) GetDownloadClientsContext

func (r *Radarr) GetDownloadClientsContext(ctx context.Context) ([]*DownloadClientOutput, error)

GetDownloadClientsContext returns all configured download clients.

func (*Radarr) GetExclusions

func (r *Radarr) GetExclusions() ([]*Exclusion, error)

GetExclusions returns all configured exclusions from Radarr.

func (*Radarr) GetExclusionsContext

func (r *Radarr) GetExclusionsContext(ctx context.Context) ([]*Exclusion, error)

GetExclusionsContext returns all configured exclusions from Radarr.

func (*Radarr) GetHistory

func (r *Radarr) GetHistory(records, perPage int) (*History, error)

GetHistory returns the Radarr History (grabs/failures/completed). If you need control over the page, use radarr.GetHistoryPage(). This function simply returns the number of history records desired, up to the number of records present in the application. It grabs records in (paginated) batches of perPage, and concatenates them into one list. Passing zero for records will return all of them.

func (*Radarr) GetHistoryContext

func (r *Radarr) GetHistoryContext(ctx context.Context, records, perPage int) (*History, error)

GetHistoryContext returns the Radarr History (grabs/failures/completed).

func (*Radarr) GetHistoryPage

func (r *Radarr) GetHistoryPage(params *starr.PageReq) (*History, error)

GetHistoryPage returns a single page from the Radarr History (grabs/failures/completed). The page size and number is configurable with the input request parameters.

func (*Radarr) GetHistoryPageContext

func (r *Radarr) GetHistoryPageContext(ctx context.Context, params *starr.PageReq) (*History, error)

GetHistoryPageContext returns a single page from the Radarr History (grabs/failures/completed). The page size and number is configurable with the input request parameters.

func (*Radarr) GetImportLists

func (r *Radarr) GetImportLists() ([]*ImportListOutput, error)

GetImportLists returns all import lists.

func (*Radarr) GetImportListsContext

func (r *Radarr) GetImportListsContext(ctx context.Context) ([]*ImportListOutput, error)

GetImportListsContext returns all import lists.

func (*Radarr) GetIndexer

func (r *Radarr) GetIndexer(indexerID int64) (*IndexerOutput, error)

GetIndexer returns a single indexer.

func (*Radarr) GetIndexerConfig

func (r *Radarr) GetIndexerConfig() (*IndexerConfig, error)

GetIndexerConfig returns an Indexer Config.

func (*Radarr) GetIndexerConfigContext

func (r *Radarr) GetIndexerConfigContext(ctx context.Context) (*IndexerConfig, error)

GetIndexerConfigContext returns the indexer Config.

func (*Radarr) GetIndexerContext

func (r *Radarr) GetIndexerContext(ctx context.Context, indexerID int64) (*IndexerOutput, error)

GetIndexerContext returns a single indexer.

func (*Radarr) GetIndexers

func (r *Radarr) GetIndexers() ([]*IndexerOutput, error)

GetIndexers returns all configured indexers.

func (*Radarr) GetIndexersContext

func (r *Radarr) GetIndexersContext(ctx context.Context) ([]*IndexerOutput, error)

GetIndexersContext returns all configured indexers.

func (*Radarr) GetMediaManagement

func (r *Radarr) GetMediaManagement() (*MediaManagement, error)

GetMediaManagement returns the media management.

func (*Radarr) GetMediaManagementContext

func (r *Radarr) GetMediaManagementContext(ctx context.Context) (*MediaManagement, error)

GetMediaManagement returns the media management.

func (*Radarr) GetMovie

func (r *Radarr) GetMovie(getMovie *GetMovie) ([]*Movie, error)

GetMovie grabs a movie from the queue, or all movies if tmdbId is 0.

func (*Radarr) GetMovieByID

func (r *Radarr) GetMovieByID(movieID int64) (*Movie, error)

GetMovieByID grabs a movie from the database by DB [movie] ID.

func (*Radarr) GetMovieByIDContext

func (r *Radarr) GetMovieByIDContext(ctx context.Context, movieID int64) (*Movie, error)

GetMovieByIDContext grabs a movie from the database by DB [movie] ID.

func (*Radarr) GetMovieContext

func (r *Radarr) GetMovieContext(ctx context.Context, getMovie *GetMovie) ([]*Movie, error)

GetMovieContext grabs a movie from the queue, or all movies if tmdbId is 0.

func (*Radarr) GetMovieFile

func (r *Radarr) GetMovieFile(movieID int64) ([]*MovieFile, error)

GetMovieFile returns the movie file(s) for a movie.

func (*Radarr) GetMovieFileByID

func (r *Radarr) GetMovieFileByID(movieFileID int64) (*MovieFile, error)

GetMovieFileByID grabs a movie from the database by DB [movieFile] ID.

func (*Radarr) GetMovieFileByIDContext

func (r *Radarr) GetMovieFileByIDContext(ctx context.Context, movieFileID int64) (*MovieFile, error)

GetMovieFileByIDContext grabs a movie from the database by DB [movieFile] ID.

func (*Radarr) GetMovieFileContext

func (r *Radarr) GetMovieFileContext(ctx context.Context, movieID int64) ([]*MovieFile, error)

GetMovieFileContext returns the movie file(s) for a movie.

func (*Radarr) GetMovieFiles

func (r *Radarr) GetMovieFiles(movieFileIDs []int64) ([]*MovieFile, error)

GetMovieFiles returns the movie file(s) requested.

func (*Radarr) GetMovieFilesContext

func (r *Radarr) GetMovieFilesContext(ctx context.Context, movieFileIDs []int64) ([]*MovieFile, error)

GetMovieFilesContext returns the movie file(s) requested.

func (*Radarr) GetNaming

func (r *Radarr) GetNaming() (*Naming, error)

GetNaming returns the file naming rules.

func (*Radarr) GetNamingContext

func (r *Radarr) GetNamingContext(ctx context.Context) (*Naming, error)

GetNamingContext returns the file naming rules.

func (*Radarr) GetNotification

func (r *Radarr) GetNotification(notificationID int) (*NotificationOutput, error)

GetNotification returns a single notification.

func (*Radarr) GetNotificationContext

func (r *Radarr) GetNotificationContext(ctx context.Context, notificationID int) (*NotificationOutput, error)

GetNotificationContext returns a single notification.

func (*Radarr) GetNotifications

func (r *Radarr) GetNotifications() ([]*NotificationOutput, error)

GetNotifications returns all configured notifications.

func (*Radarr) GetNotificationsContext

func (r *Radarr) GetNotificationsContext(ctx context.Context) ([]*NotificationOutput, error)

GetNotificationsContext returns all configured notifications.

func (*Radarr) GetQualityDefinition

func (r *Radarr) GetQualityDefinition(qualityDefinitionID int64) (*QualityDefinition, error)

GetQualityDefinition returns a single quality definition.

func (*Radarr) GetQualityDefinitionContext

func (r *Radarr) GetQualityDefinitionContext(ctx context.Context, qdID int64) (*QualityDefinition, error)

GetQualityDefinitionContext returns a single quality definition.

func (*Radarr) GetQualityDefinitions

func (r *Radarr) GetQualityDefinitions() ([]*QualityDefinition, error)

GetQualityDefinitions returns all configured quality definitions.

func (*Radarr) GetQualityDefinitionsContext

func (r *Radarr) GetQualityDefinitionsContext(ctx context.Context) ([]*QualityDefinition, error)

GetQualityDefinitionsContext returns all configured quality definitions.

func (*Radarr) GetQualityProfile

func (r *Radarr) GetQualityProfile(profileID int64) (*QualityProfile, error)

GetQualityProfile returns a single quality profile.

func (*Radarr) GetQualityProfileContext

func (r *Radarr) GetQualityProfileContext(ctx context.Context, profileID int64) (*QualityProfile, error)

GetQualityProfileContext returns a single quality profile.

func (*Radarr) GetQualityProfiles

func (r *Radarr) GetQualityProfiles() ([]*QualityProfile, error)

GetQualityProfiles returns all configured quality profiles.

func (*Radarr) GetQualityProfilesContext

func (r *Radarr) GetQualityProfilesContext(ctx context.Context) ([]*QualityProfile, error)

GetQualityProfilesContext returns all configured quality profiles.

func (*Radarr) GetQueue

func (r *Radarr) GetQueue(records, perPage int) (*Queue, error)

GetQueue returns a single page from the Radarr Queue (processing, but not yet imported). If you need control over the page, use radarr.GetQueuePage(). This function simply returns the number of queue records desired, up to the number of records present in the application. It grabs records in (paginated) batches of perPage, and concatenates them into one list. Passing zero for records will return all of them.

func (*Radarr) GetQueueContext

func (r *Radarr) GetQueueContext(ctx context.Context, records, perPage int) (*Queue, error)

GetQueueContext returns a single page from the Radarr Queue (processing, but not yet imported).

func (*Radarr) GetQueuePage

func (r *Radarr) GetQueuePage(params *starr.PageReq) (*Queue, error)

GetQueuePage returns a single page from the Radarr Queue. The page size and number is configurable with the input request parameters.

func (*Radarr) GetQueuePageContext

func (r *Radarr) GetQueuePageContext(ctx context.Context, params *starr.PageReq) (*Queue, error)

GetQueuePage returns a single page from the Radarr Queue. The page size and number is configurable with the input request parameters.

func (*Radarr) GetReleaseProfile

func (r *Radarr) GetReleaseProfile(profileID int64) (*ReleaseProfile, error)

GetReleaseProfile returns a single release profile.

func (*Radarr) GetReleaseProfileContext

func (r *Radarr) GetReleaseProfileContext(ctx context.Context, profileID int64) (*ReleaseProfile, error)

GetReleaseProfileContext returns a single release profile.

func (*Radarr) GetReleaseProfiles

func (r *Radarr) GetReleaseProfiles() ([]*ReleaseProfile, error)

GetReleaseProfiles returns all configured release profiles.

func (*Radarr) GetReleaseProfilesContext

func (r *Radarr) GetReleaseProfilesContext(ctx context.Context) ([]*ReleaseProfile, error)

GetReleaseProfilesContext returns all configured release profiles.

func (*Radarr) GetRemotePathMapping

func (r *Radarr) GetRemotePathMapping(mappingID int64) (*starr.RemotePathMapping, error)

GetRemotePathMapping returns a single remote path mapping.

func (*Radarr) GetRemotePathMappingContext

func (r *Radarr) GetRemotePathMappingContext(ctx context.Context, mappingID int64) (*starr.RemotePathMapping, error)

GetRemotePathMappingContext returns a single remote path mapping.

func (*Radarr) GetRemotePathMappings

func (r *Radarr) GetRemotePathMappings() ([]*starr.RemotePathMapping, error)

GetRemotePathMappings returns all configured remote path mappings.

func (*Radarr) GetRemotePathMappingsContext

func (r *Radarr) GetRemotePathMappingsContext(ctx context.Context) ([]*starr.RemotePathMapping, error)

GetRemotePathMappingsContext returns all configured remote path mappings.

func (*Radarr) GetRestriction

func (r *Radarr) GetRestriction(restrictionID int64) (*Restriction, error)

GetRestriction returns a single restriction.

func (*Radarr) GetRestrictionContext

func (r *Radarr) GetRestrictionContext(ctx context.Context, restrictionID int64) (*Restriction, error)

GetIndGetRestrictionContextexer returns a single restriction.

func (*Radarr) GetRestrictions

func (r *Radarr) GetRestrictions() ([]*Restriction, error)

GetRestrictions returns all configured restrictions.

func (*Radarr) GetRestrictionsContext

func (r *Radarr) GetRestrictionsContext(ctx context.Context) ([]*Restriction, error)

GetRestrictionsContext returns all configured restrictions.

func (*Radarr) GetRootFolder

func (r *Radarr) GetRootFolder(folderID int64) (*RootFolder, error)

GetRootFolder returns a single root folder.

func (*Radarr) GetRootFolderContext

func (r *Radarr) GetRootFolderContext(ctx context.Context, folderID int64) (*RootFolder, error)

GetRootFolderContext returns a single root folder.

func (*Radarr) GetRootFolders

func (r *Radarr) GetRootFolders() ([]*RootFolder, error)

GetRootFolders returns all configured root folders.

func (*Radarr) GetRootFoldersContext

func (r *Radarr) GetRootFoldersContext(ctx context.Context) ([]*RootFolder, error)

GetRootFoldersContext returns all configured root folders.

func (*Radarr) GetSystemStatus

func (r *Radarr) GetSystemStatus() (*SystemStatus, error)

GetSystemStatus returns system status.

func (*Radarr) GetSystemStatusContext

func (r *Radarr) GetSystemStatusContext(ctx context.Context) (*SystemStatus, error)

GetSystemStatusContext returns system status.

func (*Radarr) GetTag

func (r *Radarr) GetTag(tagID int) (*starr.Tag, error)

GetTag returns a single tag.

func (*Radarr) GetTagContext

func (r *Radarr) GetTagContext(ctx context.Context, tagID int) (*starr.Tag, error)

GetTagContext returns a single tag.

func (*Radarr) GetTags

func (r *Radarr) GetTags() ([]*starr.Tag, error)

GetTags returns all configured tags.

func (*Radarr) GetTagsContext

func (r *Radarr) GetTagsContext(ctx context.Context) ([]*starr.Tag, error)

GetTagsContext returns all configured tags.

func (*Radarr) Lookup

func (r *Radarr) Lookup(term string) ([]*Movie, error)

Lookup will search for movies matching the specified search term.

func (*Radarr) LookupContext

func (r *Radarr) LookupContext(ctx context.Context, term string) ([]*Movie, error)

LookupContext will search for movies matching the specified search term.

func (*Radarr) LookupID

func (r *Radarr) LookupID(movieID int64) (*Movie, error)

LookupID will return a movie by its ID.

func (*Radarr) LookupIDContext

func (r *Radarr) LookupIDContext(ctx context.Context, movieID int64) (*Movie, error)

LookupIDContext will return a movie by its ID using a context.

func (*Radarr) LookupIMDB

func (r *Radarr) LookupIMDB(imdbID string) (*Movie, error)

LookupIMDB will search IMDB for the imdbId provided.

func (*Radarr) LookupIMDBContext

func (r *Radarr) LookupIMDBContext(ctx context.Context, imdbID string) (*Movie, error)

LookupIMDBContext will search IMDB for the imdbId provided using a context.

func (*Radarr) LookupTMDB

func (r *Radarr) LookupTMDB(tmdbID int64) (*Movie, error)

LookupTMDB will search TMDB for the tmdbID provided.

func (*Radarr) LookupTMDBContext

func (r *Radarr) LookupTMDBContext(ctx context.Context, tmdbID int64) (*Movie, error)

LookupTMDBContext will search TMDB for the tmdbID provided using a context.

func (*Radarr) ManualImport

func (r *Radarr) ManualImport(params *ManualImportParams) (*ManualImportOutput, error)

ManualImport initiates a manual import (GET).

func (*Radarr) ManualImportContext

func (r *Radarr) ManualImportContext(ctx context.Context, params *ManualImportParams) (*ManualImportOutput, error)

ManualImportContext initiates a manual import (GET).

func (*Radarr) ManualImportReprocess

func (r *Radarr) ManualImportReprocess(manualimport *ManualImportInput) error

ManualImportReprocess reprocesses a manual import (POST).

func (*Radarr) ManualImportReprocessContext

func (r *Radarr) ManualImportReprocessContext(ctx context.Context, manualimport *ManualImportInput) error

ManualImportReprocessContext reprocesses a manual import (POST).

func (*Radarr) Ping

func (r *Radarr) Ping() error

Ping returns an error if the starr instance does not respond with a 200 to an HTTP /ping request.

func (*Radarr) PingContext

func (r *Radarr) PingContext(ctx context.Context) error

PingContext returns an error if the starr instance does not respond with a 200 to an HTTP /ping request.

func (*Radarr) QueueGrab

func (r *Radarr) QueueGrab(ids ...int64) error

QueueGrab tells the app to grab an item that's in queue. Most often used on items with a delay set from a delay profile.

func (*Radarr) QueueGrabContext

func (r *Radarr) QueueGrabContext(ctx context.Context, ids ...int64) error

QueueGrabContext tells the app to grab an item that's in queue, probably set to a delay. Most often used on items with a delay set from a delay profile.

func (*Radarr) SendCommand

func (r *Radarr) SendCommand(cmd *CommandRequest) (*CommandResponse, error)

SendCommand sends a command to Radarr.

func (*Radarr) SendCommandContext

func (r *Radarr) SendCommandContext(ctx context.Context, cmd *CommandRequest) (*CommandResponse, error)

SendCommandContext sends a command to Radarr.

func (*Radarr) TestDownloadClient

func (r *Radarr) TestDownloadClient(client *DownloadClientInput) error

TestDownloadClient tests a download client.

func (*Radarr) TestDownloadClientContext

func (r *Radarr) TestDownloadClientContext(ctx context.Context, client *DownloadClientInput) error

TestDownloadClientContext tests a download client.

func (*Radarr) TestImportList

func (r *Radarr) TestImportList(list *ImportListInput) error

TestImportList tests an import list.

func (*Radarr) TestImportListContextt

func (r *Radarr) TestImportListContextt(ctx context.Context, list *ImportListInput) error

TestImportListContextt tests an import list.

func (*Radarr) TestIndexer

func (r *Radarr) TestIndexer(indexer *IndexerInput) error

TestIndexer tests an indexer.

func (*Radarr) TestIndexerContext

func (r *Radarr) TestIndexerContext(ctx context.Context, indexer *IndexerInput) error

TestIndexerContext tests an indexer.

func (*Radarr) UpdateCustomFormat

func (r *Radarr) UpdateCustomFormat(cf *CustomFormatInput) (*CustomFormatOutput, error)

UpdateCustomFormat updates an existing custom format and returns the response.

func (*Radarr) UpdateCustomFormatContext

func (r *Radarr) UpdateCustomFormatContext(ctx context.Context,
	format *CustomFormatInput,
) (*CustomFormatOutput, error)

UpdateCustomFormatContext updates an existing custom format and returns the response.

func (*Radarr) UpdateDelayProfile

func (r *Radarr) UpdateDelayProfile(profile *DelayProfile) (*DelayProfile, error)

UpdateDelayProfile updates the delay profile.

func (*Radarr) UpdateDelayProfileContext

func (r *Radarr) UpdateDelayProfileContext(ctx context.Context, profile *DelayProfile) (*DelayProfile, error)

UpdateDelayProfileContext updates the delay profile.

func (*Radarr) UpdateDownloadClient

func (r *Radarr) UpdateDownloadClient(downloadclient *DownloadClientInput, force bool) (*DownloadClientOutput, error)

UpdateDownloadClient updates the download client.

func (*Radarr) UpdateDownloadClientConfig

func (r *Radarr) UpdateDownloadClientConfig(downloadClientConfig *DownloadClientConfig) (*DownloadClientConfig, error)

UpdateDownloadClientConfig update the single download client config.

func (*Radarr) UpdateDownloadClientConfigContext

func (r *Radarr) UpdateDownloadClientConfigContext(ctx context.Context,
	config *DownloadClientConfig,
) (*DownloadClientConfig, error)

UpdateDownloadClientConfig update the single download client config.

func (*Radarr) UpdateDownloadClientContext

func (r *Radarr) UpdateDownloadClientContext(ctx context.Context,
	client *DownloadClientInput,
	force bool,
) (*DownloadClientOutput, error)

UpdateDownloadClientContext updates the download client.

func (*Radarr) UpdateExclusion

func (r *Radarr) UpdateExclusion(exclusion *Exclusion) (*Exclusion, error)

UpdateExclusion changes an exclusions in Radarr.

func (*Radarr) UpdateExclusionContext

func (r *Radarr) UpdateExclusionContext(ctx context.Context, exclusion *Exclusion) (*Exclusion, error)

UpdateExclusionContext changes an exclusions in Radarr.

func (*Radarr) UpdateImportList

func (r *Radarr) UpdateImportList(list *ImportListInput, force bool) (*ImportListOutput, error)

UpdateImportList updates an existing import list and returns the response.

func (*Radarr) UpdateImportListContext

func (r *Radarr) UpdateImportListContext(
	ctx context.Context,
	importList *ImportListInput,
	force bool,
) (*ImportListOutput, error)

UpdateImportListContext updates an existing import list and returns the response.

func (*Radarr) UpdateIndexer

func (r *Radarr) UpdateIndexer(indexer *IndexerInput, force bool) (*IndexerOutput, error)

UpdateIndexer updates the indexer.

func (*Radarr) UpdateIndexerConfig

func (r *Radarr) UpdateIndexerConfig(indexerConfig *IndexerConfig) (*IndexerConfig, error)

UpdateIndexerConfig update the single indexerConfig.

func (*Radarr) UpdateIndexerConfigContext

func (r *Radarr) UpdateIndexerConfigContext(ctx context.Context, indexerConfig *IndexerConfig) (*IndexerConfig, error)

UpdateIndexerConfigContext update the single indexerConfig.

func (*Radarr) UpdateIndexerContext

func (r *Radarr) UpdateIndexerContext(ctx context.Context, indexer *IndexerInput, force bool) (*IndexerOutput, error)

UpdateIndexerContext updates the indexer.

func (*Radarr) UpdateMediaManagement

func (r *Radarr) UpdateMediaManagement(mMgt *MediaManagement) (*MediaManagement, error)

UpdateMediaManagement updates the media management.

func (*Radarr) UpdateMediaManagementContext

func (r *Radarr) UpdateMediaManagementContext(ctx context.Context, mMgt *MediaManagement) (*MediaManagement, error)

UpdateMediaManagementContext updates the media management.

func (*Radarr) UpdateMovie

func (r *Radarr) UpdateMovie(movieID int64, movie *Movie, moveFiles bool) (*Movie, error)

UpdateMovie sends a PUT request to update a movie in place.

func (*Radarr) UpdateMovieContext

func (r *Radarr) UpdateMovieContext(ctx context.Context, movieID int64, movie *Movie, moveFiles bool) (*Movie, error)

UpdateMovieContext sends a PUT request to update a movie in place.

func (*Radarr) UpdateMovieFile

func (r *Radarr) UpdateMovieFile(movieFile *MovieFile) (*MovieFile, error)

UpdateMovieFile updates the movie file provided.

func (*Radarr) UpdateMovieFileContext

func (r *Radarr) UpdateMovieFileContext(ctx context.Context, movieFile *MovieFile) (*MovieFile, error)

UpdateMovieFileContext updates the movie file provided.

func (*Radarr) UpdateNaming

func (r *Radarr) UpdateNaming(naming *Naming) (*Naming, error)

UpdateNaming updates the file naming rules.

func (*Radarr) UpdateNamingContext

func (r *Radarr) UpdateNamingContext(ctx context.Context, naming *Naming) (*Naming, error)

UpdateNamingContext updates the file naming rules.

func (*Radarr) UpdateNotification

func (r *Radarr) UpdateNotification(notification *NotificationInput) (*NotificationOutput, error)

UpdateNotification updates the notification.

func (*Radarr) UpdateNotificationContext

func (r *Radarr) UpdateNotificationContext(ctx context.Context,
	client *NotificationInput,
) (*NotificationOutput, error)

UpdateNotificationContext updates the notification.

func (*Radarr) UpdateQualityDefinition

func (r *Radarr) UpdateQualityDefinition(definition *QualityDefinition) (*QualityDefinition, error)

UpdateQualityDefinition updates a quality definition.

func (*Radarr) UpdateQualityDefinitionContext

func (r *Radarr) UpdateQualityDefinitionContext(
	ctx context.Context,
	definition *QualityDefinition,
) (*QualityDefinition, error)

UpdateQualityDefinitionContext updates a quality definition.

func (*Radarr) UpdateQualityDefinitions

func (r *Radarr) UpdateQualityDefinitions(definition []*QualityDefinition) ([]*QualityDefinition, error)

UpdateQualityDefinitions updates all quality definitions.

func (*Radarr) UpdateQualityDefinitionsContext

func (r *Radarr) UpdateQualityDefinitionsContext(
	ctx context.Context,
	definition []*QualityDefinition,
) ([]*QualityDefinition, error)

UpdateQualityDefinitionsContext updates all quality definitions.

func (*Radarr) UpdateQualityProfile

func (r *Radarr) UpdateQualityProfile(profile *QualityProfile) (*QualityProfile, error)

UpdateQualityProfile updates a quality profile in place.

func (*Radarr) UpdateQualityProfileContext

func (r *Radarr) UpdateQualityProfileContext(ctx context.Context, profile *QualityProfile) (*QualityProfile, error)

UpdateQualityProfileContext updates a quality profile in place.

func (*Radarr) UpdateReleaseProfile

func (r *Radarr) UpdateReleaseProfile(profile *ReleaseProfile) (*ReleaseProfile, error)

UpdateReleaseProfile updates the release profile.

func (*Radarr) UpdateReleaseProfileContext

func (r *Radarr) UpdateReleaseProfileContext(ctx context.Context, profile *ReleaseProfile) (*ReleaseProfile, error)

UpdateReleaseProfileContext updates the release profile.

func (*Radarr) UpdateRemotePathMapping

func (r *Radarr) UpdateRemotePathMapping(mapping *starr.RemotePathMapping) (*starr.RemotePathMapping, error)

UpdateRemotePathMapping updates the remote path mapping.

func (*Radarr) UpdateRemotePathMappingContext

func (r *Radarr) UpdateRemotePathMappingContext(ctx context.Context,
	mapping *starr.RemotePathMapping,
) (*starr.RemotePathMapping, error)

UpdateRemotePathMappingContext updates the remote path mapping.

func (*Radarr) UpdateRestriction

func (r *Radarr) UpdateRestriction(restriction *Restriction) (*Restriction, error)

UpdateRestriction updates the restriction.

func (*Radarr) UpdateRestrictionContext

func (r *Radarr) UpdateRestrictionContext(ctx context.Context, restriction *Restriction) (*Restriction, error)

UpdateRestrictionContext updates the restriction.

func (*Radarr) UpdateTag

func (r *Radarr) UpdateTag(tag *starr.Tag) (*starr.Tag, error)

UpdateTag updates a tag.

func (*Radarr) UpdateTagContext

func (r *Radarr) UpdateTagContext(ctx context.Context, tag *starr.Tag) (*starr.Tag, error)

UpdateTagContext updates a tag.

type Rejection

type Rejection struct {
	Reason string `json:"reason"`
	// permanent or temporary
	Type string `json:"type"`
}

Rejection is part of the manual import payload.

type ReleaseProfile

type ReleaseProfile struct {
	Name      string   `json:"name"`
	Enabled   bool     `json:"enabled"`
	Required  []string `json:"required"`
	Ignored   []string `json:"ignored"`
	IndexerID int64    `json:"indexerId"`
	Tags      []int    `json:"tags"`
	ID        int64    `json:"id,omitempty"`
}

ReleaseProfile defines a release profile's data from Radarr. v4 only.

type Restriction

type Restriction struct {
	Tags     []int  `json:"tags,omitempty"`
	Required string `json:"required,omitempty"`
	Ignored  string `json:"ignored,omitempty"`
	ID       int64  `json:"id,omitempty"`
}

Restriction is the input for a new or updated restriction.

type RootFolder

type RootFolder struct {
	Accessible      bool          `json:"accessible,omitempty"`
	ID              int64         `json:"id,omitempty"`
	FreeSpace       int64         `json:"freeSpace,omitempty"`
	Path            string        `json:"path"`
	UnmappedFolders []*starr.Path `json:"unmappedFolders,omitempty"`
}

RootFolder is the /api/v3/rootfolder endpoint.

type SystemStatus

type SystemStatus struct {
	AppData                string    `json:"appData"`
	AppName                string    `json:"appName"`
	Authentication         string    `json:"authentication"`
	Branch                 string    `json:"branch"`
	BuildTime              time.Time `json:"buildTime"`
	DatabaseType           string    `json:"databaseType"`
	DatabaseVersion        string    `json:"databaseVersion"`
	InstanceName           string    `json:"instanceName"`
	IsAdmin                bool      `json:"isAdmin"`
	IsDebug                bool      `json:"isDebug"`
	IsDocker               bool      `json:"isDocker"`
	IsLinux                bool      `json:"isLinux"`
	IsNetCore              bool      `json:"isNetCore"`
	IsOsx                  bool      `json:"isOsx"`
	IsProduction           bool      `json:"isProduction"`
	IsUserInteractive      bool      `json:"isUserInteractive"`
	IsWindows              bool      `json:"isWindows"`
	MigrationVersion       int64     `json:"migrationVersion"`
	Mode                   string    `json:"mode"`
	OsName                 string    `json:"osName"`
	PackageAuthor          string    `json:"packageAuthor"`
	PackageUpdateMechanism string    `json:"packageUpdateMechanism"`
	PackageVersion         string    `json:"packageVersion"`
	RuntimeName            string    `json:"runtimeName"`
	RuntimeVersion         string    `json:"runtimeVersion"`
	StartTime              time.Time `json:"startTime"`
	StartupPath            string    `json:"startupPath"`
	URLBase                string    `json:"urlBase"`
	Version                string    `json:"version"`
}

SystemStatus is the /api/v3/system/status endpoint.

Jump to

Keyboard shortcuts

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