Documentation
¶
Overview ¶
Package readarr provides a client for the Readarr v1 API.
Readarr is an ebook and audiobook collection manager for Usenet and BitTorrent users that monitors multiple RSS feeds for new books and automatically grabs, sorts, and renames them. The v1 API applies to current versions of the Readarr application.
The Client type wraps arr.BaseClient and exposes typed methods for every major Readarr resource: authors, books, book files, editions, calendar, queue, commands, history, and more.
Example ¶
package main
import (
"context"
"fmt"
"log"
"github.com/lusoris/goenvoy/arr/readarr"
)
func main() {
// Create a new Readarr client
client, err := readarr.New("http://localhost:8787", "your-api-key")
if err != nil {
log.Fatal(err)
}
ctx := context.Background()
// Get system status
status, err := client.GetSystemStatus(ctx)
if err != nil {
log.Fatal(err)
}
fmt.Printf("%s version %s\n", status.AppName, status.Version)
// Get all authors
authors, err := client.GetAllAuthors(ctx)
if err != nil {
log.Fatal(err)
}
fmt.Printf("Total authors: %d\n", len(authors))
}
Output:
Index ¶
- type AddAuthorOptions
- type AddBookOptions
- type Author
- type AuthorEditorResource
- type AuthorStatistics
- type Book
- type BookEditorResource
- type BookFile
- type BookFileListResource
- type BookStatistics
- type BooksMonitoredResource
- type BookshelfAuthorResource
- type BookshelfResource
- type Client
- func (c *Client) AddAuthor(ctx context.Context, author *Author) (*Author, error)
- func (c *Client) AddBook(ctx context.Context, book *Book) (*Book, error)
- func (c *Client) Bookshelf(ctx context.Context, shelf *BookshelfResource) error
- func (c *Client) BrowseFileSystem(ctx context.Context, path string) (*FileSystemResource, error)
- func (c *Client) BulkDeleteBlocklist(ctx context.Context, ids []int) error
- func (c *Client) BulkDeleteDownloadClients(ctx context.Context, ids []int) error
- func (c *Client) BulkDeleteImportLists(ctx context.Context, ids []int) error
- func (c *Client) BulkDeleteIndexers(ctx context.Context, ids []int) error
- func (c *Client) BulkDeleteQueue(ctx context.Context, bulk *arr.QueueBulkResource, ...) error
- func (c *Client) BulkUpdateDownloadClients(ctx context.Context, bulk *arr.ProviderBulkResource) ([]arr.ProviderResource, error)
- func (c *Client) BulkUpdateImportLists(ctx context.Context, bulk *arr.ProviderBulkResource) ([]arr.ProviderResource, error)
- func (c *Client) BulkUpdateIndexers(ctx context.Context, bulk *arr.ProviderBulkResource) ([]arr.ProviderResource, error)
- func (c *Client) BulkUpdateQualityDefinitions(ctx context.Context, defs []arr.QualityDefinitionResource) ([]arr.QualityDefinitionResource, error)
- func (c *Client) CreateCustomFilter(ctx context.Context, filter *arr.CustomFilterResource) (*arr.CustomFilterResource, error)
- func (c *Client) CreateCustomFormat(ctx context.Context, format *arr.CustomFormatResource) (*arr.CustomFormatResource, error)
- func (c *Client) CreateDelayProfile(ctx context.Context, profile *arr.DelayProfileResource) (*arr.DelayProfileResource, error)
- func (c *Client) CreateDownloadClient(ctx context.Context, dc *arr.ProviderResource) (*arr.ProviderResource, error)
- func (c *Client) CreateImportList(ctx context.Context, il *arr.ProviderResource) (*arr.ProviderResource, error)
- func (c *Client) CreateImportListExclusion(ctx context.Context, exclusion *ImportListExclusion) (*ImportListExclusion, error)
- func (c *Client) CreateIndexer(ctx context.Context, idx *arr.ProviderResource) (*arr.ProviderResource, error)
- func (c *Client) CreateMetadataConsumer(ctx context.Context, m *arr.ProviderResource) (*arr.ProviderResource, error)
- func (c *Client) CreateMetadataProfile(ctx context.Context, profile *MetadataProfile) (*MetadataProfile, error)
- func (c *Client) CreateNotification(ctx context.Context, n *arr.ProviderResource) (*arr.ProviderResource, error)
- func (c *Client) CreateQualityProfile(ctx context.Context, profile *arr.QualityProfile) (*arr.QualityProfile, error)
- func (c *Client) CreateReleaseProfile(ctx context.Context, profile *arr.ReleaseProfileResource) (*arr.ReleaseProfileResource, error)
- func (c *Client) CreateRemotePathMapping(ctx context.Context, mapping *arr.RemotePathMappingResource) (*arr.RemotePathMappingResource, error)
- func (c *Client) CreateRootFolder(ctx context.Context, folder *arr.RootFolder) (*arr.RootFolder, error)
- func (c *Client) CreateTag(ctx context.Context, label string) (*arr.Tag, error)
- func (c *Client) DeleteAuthor(ctx context.Context, id int, deleteFiles, addImportListExclusion bool) error
- func (c *Client) DeleteAuthors(ctx context.Context, editor *AuthorEditorResource) error
- func (c *Client) DeleteBackup(ctx context.Context, id int) error
- func (c *Client) DeleteBlocklistItem(ctx context.Context, id int) error
- func (c *Client) DeleteBook(ctx context.Context, id int, deleteFiles, addImportListExclusion bool) error
- func (c *Client) DeleteBookFile(ctx context.Context, id int) error
- func (c *Client) DeleteBookFiles(ctx context.Context, ids []int) error
- func (c *Client) DeleteBooks(ctx context.Context, editor *BookEditorResource) error
- func (c *Client) DeleteCommand(ctx context.Context, id int) error
- func (c *Client) DeleteCustomFilter(ctx context.Context, id int) error
- func (c *Client) DeleteCustomFormat(ctx context.Context, id int) error
- func (c *Client) DeleteDelayProfile(ctx context.Context, id int) error
- func (c *Client) DeleteDownloadClient(ctx context.Context, id int) error
- func (c *Client) DeleteImportList(ctx context.Context, id int) error
- func (c *Client) DeleteImportListExclusion(ctx context.Context, id int) error
- func (c *Client) DeleteIndexer(ctx context.Context, id int) error
- func (c *Client) DeleteMetadataConsumer(ctx context.Context, id int) error
- func (c *Client) DeleteMetadataProfile(ctx context.Context, id int) error
- func (c *Client) DeleteNotification(ctx context.Context, id int) error
- func (c *Client) DeleteQualityProfile(ctx context.Context, id int) error
- func (c *Client) DeleteQueueItem(ctx context.Context, id int, removeFromClient, blocklist bool) error
- func (c *Client) DeleteReleaseProfile(ctx context.Context, id int) error
- func (c *Client) DeleteRemotePathMapping(ctx context.Context, id int) error
- func (c *Client) DeleteRootFolder(ctx context.Context, id int) error
- func (c *Client) DeleteTag(ctx context.Context, id int) error
- func (c *Client) DownloadClientAction(ctx context.Context, name string, body *arr.ProviderResource) error
- func (c *Client) EditAuthors(ctx context.Context, editor *AuthorEditorResource) error
- func (c *Client) EditBookFilesBulk(ctx context.Context, editor *BookFileListResource) ([]BookFile, error)
- func (c *Client) EditBooks(ctx context.Context, editor *BookEditorResource) error
- func (c *Client) GetAllAuthors(ctx context.Context) ([]Author, error)
- func (c *Client) GetAuthor(ctx context.Context, id int) (*Author, error)
- func (c *Client) GetBackups(ctx context.Context) ([]arr.Backup, error)
- func (c *Client) GetBlocklist(ctx context.Context, page, pageSize int) (*arr.PagingResource[arr.BlocklistResource], error)
- func (c *Client) GetBook(ctx context.Context, id int) (*Book, error)
- func (c *Client) GetBookFile(ctx context.Context, id int) (*BookFile, error)
- func (c *Client) GetBookFiles(ctx context.Context, authorID int) ([]BookFile, error)
- func (c *Client) GetBookOverview(ctx context.Context, id int) (*Book, error)
- func (c *Client) GetBooks(ctx context.Context, authorID int) ([]Book, error)
- func (c *Client) GetCalendar(ctx context.Context, start, end string, unmonitored bool) ([]Book, error)
- func (c *Client) GetCalendarByID(ctx context.Context, id int) (*Book, error)
- func (c *Client) GetCommand(ctx context.Context, id int) (*arr.CommandResponse, error)
- func (c *Client) GetCommands(ctx context.Context) ([]arr.CommandResponse, error)
- func (c *Client) GetCustomFilter(ctx context.Context, id int) (*arr.CustomFilterResource, error)
- func (c *Client) GetCustomFilters(ctx context.Context) ([]arr.CustomFilterResource, error)
- func (c *Client) GetCustomFormat(ctx context.Context, id int) (*arr.CustomFormatResource, error)
- func (c *Client) GetCustomFormatSchema(ctx context.Context) ([]arr.CustomFormatResource, error)
- func (c *Client) GetCustomFormats(ctx context.Context) ([]arr.CustomFormatResource, error)
- func (c *Client) GetDelayProfile(ctx context.Context, id int) (*arr.DelayProfileResource, error)
- func (c *Client) GetDelayProfiles(ctx context.Context) ([]arr.DelayProfileResource, error)
- func (c *Client) GetDevelopmentConfig(ctx context.Context) (*DevelopmentConfigResource, error)
- func (c *Client) GetDevelopmentConfigByID(ctx context.Context, id int) (*DevelopmentConfigResource, error)
- func (c *Client) GetDiskSpace(ctx context.Context) ([]arr.DiskSpace, error)
- func (c *Client) GetDownloadClient(ctx context.Context, id int) (*arr.ProviderResource, error)
- func (c *Client) GetDownloadClientConfig(ctx context.Context) (*arr.DownloadClientConfigResource, error)
- func (c *Client) GetDownloadClientConfigByID(ctx context.Context, id int) (*arr.DownloadClientConfigResource, error)
- func (c *Client) GetDownloadClientSchema(ctx context.Context) ([]arr.ProviderResource, error)
- func (c *Client) GetDownloadClients(ctx context.Context) ([]arr.ProviderResource, error)
- func (c *Client) GetEditions(ctx context.Context, bookID int) ([]Edition, error)
- func (c *Client) GetFileSystemMediaFiles(ctx context.Context, path string) ([]FileSystemEntry, error)
- func (c *Client) GetFileSystemType(ctx context.Context, path string) (string, error)
- func (c *Client) GetHealth(ctx context.Context) ([]arr.HealthCheck, error)
- func (c *Client) GetHistory(ctx context.Context, page, pageSize int) (*arr.PagingResource[HistoryRecord], error)
- func (c *Client) GetHistoryByAuthor(ctx context.Context, authorID int) ([]HistoryRecord, error)
- func (c *Client) GetHistorySince(ctx context.Context, date string) ([]HistoryRecord, error)
- func (c *Client) GetHostConfig(ctx context.Context) (*arr.HostConfigResource, error)
- func (c *Client) GetHostConfigByID(ctx context.Context, id int) (*arr.HostConfigResource, error)
- func (c *Client) GetImportList(ctx context.Context, id int) (*arr.ProviderResource, error)
- func (c *Client) GetImportListExclusion(ctx context.Context, id int) (*ImportListExclusion, error)
- func (c *Client) GetImportListExclusions(ctx context.Context) ([]ImportListExclusion, error)
- func (c *Client) GetImportListSchema(ctx context.Context) ([]arr.ProviderResource, error)
- func (c *Client) GetImportLists(ctx context.Context) ([]arr.ProviderResource, error)
- func (c *Client) GetIndexer(ctx context.Context, id int) (*arr.ProviderResource, error)
- func (c *Client) GetIndexerConfig(ctx context.Context) (*arr.IndexerConfigResource, error)
- func (c *Client) GetIndexerConfigByID(ctx context.Context, id int) (*arr.IndexerConfigResource, error)
- func (c *Client) GetIndexerFlags(ctx context.Context) ([]arr.IndexerFlagResource, error)
- func (c *Client) GetIndexerSchema(ctx context.Context) ([]arr.ProviderResource, error)
- func (c *Client) GetIndexers(ctx context.Context) ([]arr.ProviderResource, error)
- func (c *Client) GetLanguage(ctx context.Context, id int) (*arr.LanguageResource, error)
- func (c *Client) GetLanguages(ctx context.Context) ([]arr.LanguageResource, error)
- func (c *Client) GetLocalization(ctx context.Context) (*LocalizationResource, error)
- func (c *Client) GetLogFileContent(ctx context.Context, filename string) (string, error)
- func (c *Client) GetLogFiles(ctx context.Context) ([]arr.LogFileResource, error)
- func (c *Client) GetLogs(ctx context.Context, page, pageSize int) (*arr.PagingResource[arr.LogRecord], error)
- func (c *Client) GetManualImport(ctx context.Context, folder string) ([]arr.ManualImportResource, error)
- func (c *Client) GetMediaManagementConfig(ctx context.Context) (*arr.MediaManagementConfigResource, error)
- func (c *Client) GetMediaManagementConfigByID(ctx context.Context, id int) (*arr.MediaManagementConfigResource, error)
- func (c *Client) GetMetadataConsumer(ctx context.Context, id int) (*arr.ProviderResource, error)
- func (c *Client) GetMetadataConsumerSchema(ctx context.Context) ([]arr.ProviderResource, error)
- func (c *Client) GetMetadataConsumers(ctx context.Context) ([]arr.ProviderResource, error)
- func (c *Client) GetMetadataProfile(ctx context.Context, id int) (*MetadataProfile, error)
- func (c *Client) GetMetadataProfileSchema(ctx context.Context) (*MetadataProfile, error)
- func (c *Client) GetMetadataProfiles(ctx context.Context) ([]MetadataProfile, error)
- func (c *Client) GetMetadataProviderConfig(ctx context.Context) (*MetadataProviderConfigResource, error)
- func (c *Client) GetMetadataProviderConfigByID(ctx context.Context, id int) (*MetadataProviderConfigResource, error)
- func (c *Client) GetNamingConfig(ctx context.Context) (*arr.NamingConfigResource, error)
- func (c *Client) GetNamingConfigByID(ctx context.Context, id int) (*arr.NamingConfigResource, error)
- func (c *Client) GetNamingExamples(ctx context.Context) (*arr.NamingConfigResource, error)
- func (c *Client) GetNotification(ctx context.Context, id int) (*arr.ProviderResource, error)
- func (c *Client) GetNotificationSchema(ctx context.Context) ([]arr.ProviderResource, error)
- func (c *Client) GetNotifications(ctx context.Context) ([]arr.ProviderResource, error)
- func (c *Client) GetQualityDefinition(ctx context.Context, id int) (*arr.QualityDefinitionResource, error)
- func (c *Client) GetQualityDefinitions(ctx context.Context) ([]arr.QualityDefinitionResource, error)
- func (c *Client) GetQualityProfile(ctx context.Context, id int) (*arr.QualityProfile, error)
- func (c *Client) GetQualityProfileSchema(ctx context.Context) (*arr.QualityProfile, error)
- func (c *Client) GetQualityProfiles(ctx context.Context) ([]arr.QualityProfile, error)
- func (c *Client) GetQueue(ctx context.Context, page, pageSize int) (*arr.PagingResource[arr.QueueRecord], error)
- func (c *Client) GetQueueDetails(ctx context.Context) ([]arr.QueueRecord, error)
- func (c *Client) GetQueueStatus(ctx context.Context) (*arr.QueueStatusResource, error)
- func (c *Client) GetReleaseProfile(ctx context.Context, id int) (*arr.ReleaseProfileResource, error)
- func (c *Client) GetReleaseProfiles(ctx context.Context) ([]arr.ReleaseProfileResource, error)
- func (c *Client) GetRemotePathMapping(ctx context.Context, id int) (*arr.RemotePathMappingResource, error)
- func (c *Client) GetRemotePathMappings(ctx context.Context) ([]arr.RemotePathMappingResource, error)
- func (c *Client) GetRenamePreview(ctx context.Context, authorID, bookID int) ([]RenameBookResource, error)
- func (c *Client) GetRetagPreview(ctx context.Context, authorID, bookID int) ([]RetagBookResource, error)
- func (c *Client) GetRootFolder(ctx context.Context, id int) (*arr.RootFolder, error)
- func (c *Client) GetRootFolders(ctx context.Context) ([]arr.RootFolder, error)
- func (c *Client) GetSeries(ctx context.Context, authorID int) ([]Series, error)
- func (c *Client) GetSystemRoutes(ctx context.Context) ([]arr.SystemRouteResource, error)
- func (c *Client) GetSystemRoutesDuplicate(ctx context.Context) ([]arr.SystemRouteResource, error)
- func (c *Client) GetSystemStatus(ctx context.Context) (*arr.StatusResponse, error)
- func (c *Client) GetTag(ctx context.Context, id int) (*arr.Tag, error)
- func (c *Client) GetTagDetail(ctx context.Context, id int) (*arr.TagDetail, error)
- func (c *Client) GetTagDetails(ctx context.Context) ([]arr.TagDetail, error)
- func (c *Client) GetTags(ctx context.Context) ([]arr.Tag, error)
- func (c *Client) GetTask(ctx context.Context, id int) (*arr.TaskResource, error)
- func (c *Client) GetTasks(ctx context.Context) ([]arr.TaskResource, error)
- func (c *Client) GetUIConfig(ctx context.Context) (*arr.UIConfigResource, error)
- func (c *Client) GetUIConfigByID(ctx context.Context, id int) (*arr.UIConfigResource, error)
- func (c *Client) GetUpdateLogFileContent(ctx context.Context, filename string) (string, error)
- func (c *Client) GetUpdateLogFiles(ctx context.Context) ([]arr.LogFileResource, error)
- func (c *Client) GetUpdates(ctx context.Context) ([]arr.UpdateResource, error)
- func (c *Client) GetWantedCutoff(ctx context.Context, page, pageSize int) (*arr.PagingResource[Book], error)
- func (c *Client) GetWantedCutoffByID(ctx context.Context, id int) (*Book, error)
- func (c *Client) GetWantedMissing(ctx context.Context, page, pageSize int) (*arr.PagingResource[Book], error)
- func (c *Client) GetWantedMissingByID(ctx context.Context, id int) (*Book, error)
- func (c *Client) GrabQueueItem(ctx context.Context, id int) error
- func (c *Client) GrabQueueItemsBulk(ctx context.Context, ids []int) error
- func (c *Client) GrabRelease(ctx context.Context, release *arr.ReleaseResource) (*arr.ReleaseResource, error)
- func (c *Client) HeadPing(ctx context.Context) error
- func (c *Client) ImportListAction(ctx context.Context, name string, body *arr.ProviderResource) error
- func (c *Client) IndexerAction(ctx context.Context, name string, body *arr.ProviderResource) error
- func (c *Client) LookupAuthor(ctx context.Context, term string) ([]Author, error)
- func (c *Client) LookupBook(ctx context.Context, term string) ([]Book, error)
- func (c *Client) MarkHistoryFailed(ctx context.Context, id int) error
- func (c *Client) MetadataConsumerAction(ctx context.Context, name string, body *arr.ProviderResource) error
- func (c *Client) MonitorBooks(ctx context.Context, req *BooksMonitoredResource) error
- func (c *Client) NotificationAction(ctx context.Context, name string, body *arr.ProviderResource) error
- func (c *Client) Parse(ctx context.Context, title string) (*ParseResult, error)
- func (c *Client) Ping(ctx context.Context) error
- func (c *Client) PushRelease(ctx context.Context, release *arr.ReleasePushResource) ([]arr.ReleaseResource, error)
- func (c *Client) ReorderDelayProfile(ctx context.Context, id, afterID int) ([]arr.DelayProfileResource, error)
- func (c *Client) ReprocessManualImport(ctx context.Context, items []arr.ManualImportReprocessResource) ([]arr.ManualImportResource, error)
- func (c *Client) Restart(ctx context.Context) error
- func (c *Client) RestoreBackup(ctx context.Context, id int) error
- func (c *Client) Search(ctx context.Context, term string) ([]Author, error)
- func (c *Client) SearchReleases(ctx context.Context, bookID int) ([]arr.ReleaseResource, error)
- func (c *Client) SendCommand(ctx context.Context, cmd arr.CommandRequest) (*arr.CommandResponse, error)
- func (c *Client) Shutdown(ctx context.Context) error
- func (c *Client) TestAllDownloadClients(ctx context.Context) error
- func (c *Client) TestAllImportLists(ctx context.Context) error
- func (c *Client) TestAllIndexers(ctx context.Context) error
- func (c *Client) TestAllMetadataConsumers(ctx context.Context) error
- func (c *Client) TestAllNotifications(ctx context.Context) error
- func (c *Client) TestDownloadClient(ctx context.Context, dc *arr.ProviderResource) error
- func (c *Client) TestImportList(ctx context.Context, il *arr.ProviderResource) error
- func (c *Client) TestIndexer(ctx context.Context, idx *arr.ProviderResource) error
- func (c *Client) TestMetadataConsumer(ctx context.Context, m *arr.ProviderResource) error
- func (c *Client) TestNotification(ctx context.Context, n *arr.ProviderResource) error
- func (c *Client) UpdateAuthor(ctx context.Context, author *Author, moveFiles bool) (*Author, error)
- func (c *Client) UpdateBook(ctx context.Context, book *Book) (*Book, error)
- func (c *Client) UpdateBookFile(ctx context.Context, file *BookFile) (*BookFile, error)
- func (c *Client) UpdateCustomFilter(ctx context.Context, filter *arr.CustomFilterResource) (*arr.CustomFilterResource, error)
- func (c *Client) UpdateCustomFormat(ctx context.Context, format *arr.CustomFormatResource) (*arr.CustomFormatResource, error)
- func (c *Client) UpdateDelayProfile(ctx context.Context, profile *arr.DelayProfileResource) (*arr.DelayProfileResource, error)
- func (c *Client) UpdateDevelopmentConfig(ctx context.Context, config *DevelopmentConfigResource) (*DevelopmentConfigResource, error)
- func (c *Client) UpdateDownloadClient(ctx context.Context, dc *arr.ProviderResource) (*arr.ProviderResource, error)
- func (c *Client) UpdateDownloadClientConfig(ctx context.Context, config *arr.DownloadClientConfigResource) (*arr.DownloadClientConfigResource, error)
- func (c *Client) UpdateHostConfig(ctx context.Context, config *arr.HostConfigResource) (*arr.HostConfigResource, error)
- func (c *Client) UpdateImportList(ctx context.Context, il *arr.ProviderResource) (*arr.ProviderResource, error)
- func (c *Client) UpdateImportListExclusion(ctx context.Context, exclusion *ImportListExclusion) (*ImportListExclusion, error)
- func (c *Client) UpdateIndexer(ctx context.Context, idx *arr.ProviderResource) (*arr.ProviderResource, error)
- func (c *Client) UpdateIndexerConfig(ctx context.Context, config *arr.IndexerConfigResource) (*arr.IndexerConfigResource, error)
- func (c *Client) UpdateMediaManagementConfig(ctx context.Context, config *arr.MediaManagementConfigResource) (*arr.MediaManagementConfigResource, error)
- func (c *Client) UpdateMetadataConsumer(ctx context.Context, m *arr.ProviderResource) (*arr.ProviderResource, error)
- func (c *Client) UpdateMetadataProfile(ctx context.Context, profile *MetadataProfile) (*MetadataProfile, error)
- func (c *Client) UpdateMetadataProviderConfig(ctx context.Context, config *MetadataProviderConfigResource) (*MetadataProviderConfigResource, error)
- func (c *Client) UpdateNamingConfig(ctx context.Context, config *arr.NamingConfigResource) (*arr.NamingConfigResource, error)
- func (c *Client) UpdateNotification(ctx context.Context, n *arr.ProviderResource) (*arr.ProviderResource, error)
- func (c *Client) UpdateQualityDefinition(ctx context.Context, def *arr.QualityDefinitionResource) (*arr.QualityDefinitionResource, error)
- func (c *Client) UpdateQualityProfile(ctx context.Context, profile *arr.QualityProfile) (*arr.QualityProfile, error)
- func (c *Client) UpdateReleaseProfile(ctx context.Context, profile *arr.ReleaseProfileResource) (*arr.ReleaseProfileResource, error)
- func (c *Client) UpdateRemotePathMapping(ctx context.Context, mapping *arr.RemotePathMappingResource) (*arr.RemotePathMappingResource, error)
- func (c *Client) UpdateRootFolder(ctx context.Context, folder *arr.RootFolder) (*arr.RootFolder, error)
- func (c *Client) UpdateTag(ctx context.Context, tag *arr.Tag) (*arr.Tag, error)
- func (c *Client) UpdateUIConfig(ctx context.Context, config *arr.UIConfigResource) (*arr.UIConfigResource, error)
- func (c *Client) UploadBackup(ctx context.Context, fileName string, data io.Reader) error
- type CustomFormat
- type DevelopmentConfigResource
- type Edition
- type FileSystemEntry
- type FileSystemResource
- type HistoryRecord
- type Image
- type ImportListExclusion
- type Link
- type LocalizationResource
- type MetadataProfile
- type MetadataProviderConfigResource
- type MonitoringOptions
- type ParseResult
- type ParsedBookInfo
- type Quality
- type QualityModel
- type Ratings
- type RenameBookResource
- type RetagBookResource
- type Revision
- type Series
- type TagDifference
Examples ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AddAuthorOptions ¶
type AddAuthorOptions struct {
Monitor string `json:"monitor"`
BooksToMonitor []string `json:"booksToMonitor,omitempty"`
Monitored bool `json:"monitored"`
SearchForMissingBooks bool `json:"searchForMissingBooks"`
}
AddAuthorOptions controls behavior when adding a new author.
type AddBookOptions ¶
type AddBookOptions struct {
AddType string `json:"addType,omitempty"`
SearchForNewBook bool `json:"searchForNewBook"`
}
AddBookOptions controls behavior when adding a new book.
type Author ¶
type Author struct {
ID int `json:"id"`
AuthorMetadataID int `json:"authorMetadataId"`
Status string `json:"status"`
Ended bool `json:"ended,omitempty"`
AuthorName string `json:"authorName"`
AuthorNameLastFirst string `json:"authorNameLastFirst,omitempty"`
ForeignAuthorID string `json:"foreignAuthorId"`
TitleSlug string `json:"titleSlug,omitempty"`
Overview string `json:"overview,omitempty"`
Disambiguation string `json:"disambiguation,omitempty"`
Links []Link `json:"links,omitempty"`
NextBook *Book `json:"nextBook,omitempty"`
LastBook *Book `json:"lastBook,omitempty"`
Images []Image `json:"images,omitempty"`
RemotePoster string `json:"remotePoster,omitempty"`
Path string `json:"path"`
QualityProfileID int `json:"qualityProfileId"`
MetadataProfileID int `json:"metadataProfileId"`
Monitored bool `json:"monitored"`
MonitorNewItems string `json:"monitorNewItems,omitempty"`
RootFolderPath string `json:"rootFolderPath,omitempty"`
Folder string `json:"folder,omitempty"`
Genres []string `json:"genres,omitempty"`
CleanName string `json:"cleanName,omitempty"`
SortName string `json:"sortName,omitempty"`
SortNameLastFirst string `json:"sortNameLastFirst,omitempty"`
Tags []int `json:"tags"`
Added string `json:"added"`
AddOptions *AddAuthorOptions `json:"addOptions,omitempty"`
Ratings Ratings `json:"ratings,omitempty"`
Statistics *AuthorStatistics `json:"statistics,omitempty"`
}
Author represents an author in Readarr.
type AuthorEditorResource ¶
type AuthorEditorResource struct {
AuthorIDs []int `json:"authorIds"`
Monitored *bool `json:"monitored,omitempty"`
MonitorNewItems string `json:"monitorNewItems,omitempty"`
QualityProfileID *int `json:"qualityProfileId,omitempty"`
MetadataProfileID *int `json:"metadataProfileId,omitempty"`
RootFolderPath string `json:"rootFolderPath,omitempty"`
Tags []int `json:"tags,omitempty"`
ApplyTags string `json:"applyTags,omitempty"`
MoveFiles bool `json:"moveFiles"`
DeleteFiles bool `json:"deleteFiles"`
}
AuthorEditorResource is used for batch editing or deleting authors.
type AuthorStatistics ¶
type AuthorStatistics struct {
BookFileCount int `json:"bookFileCount"`
BookCount int `json:"bookCount"`
AvailableBookCount int `json:"availableBookCount"`
TotalBookCount int `json:"totalBookCount"`
SizeOnDisk int64 `json:"sizeOnDisk"`
PercentOfBooks float64 `json:"percentOfBooks"`
}
AuthorStatistics contains aggregate statistics for an author.
type Book ¶
type Book struct {
ID int `json:"id"`
Title string `json:"title"`
AuthorTitle string `json:"authorTitle,omitempty"`
SeriesTitle string `json:"seriesTitle,omitempty"`
Disambiguation string `json:"disambiguation,omitempty"`
Overview string `json:"overview,omitempty"`
AuthorID int `json:"authorId"`
ForeignBookID string `json:"foreignBookId"`
ForeignEditionID string `json:"foreignEditionId,omitempty"`
TitleSlug string `json:"titleSlug,omitempty"`
Monitored bool `json:"monitored"`
AnyEditionOk bool `json:"anyEditionOk"`
Ratings Ratings `json:"ratings,omitempty"`
ReleaseDate string `json:"releaseDate,omitempty"`
PageCount int `json:"pageCount,omitempty"`
Genres []string `json:"genres,omitempty"`
Author *Author `json:"author,omitempty"`
Images []Image `json:"images,omitempty"`
Links []Link `json:"links,omitempty"`
Statistics *BookStatistics `json:"statistics,omitempty"`
Added string `json:"added,omitempty"`
AddOptions *AddBookOptions `json:"addOptions,omitempty"`
RemoteCover string `json:"remoteCover,omitempty"`
Editions []Edition `json:"editions,omitempty"`
}
Book represents a book in Readarr.
type BookEditorResource ¶
type BookEditorResource struct {
BookIDs []int `json:"bookIds"`
Monitored *bool `json:"monitored,omitempty"`
DeleteFiles bool `json:"deleteFiles"`
AddImportListExclusion bool `json:"addImportListExclusion"`
}
BookEditorResource is used for batch editing or deleting books.
type BookFile ¶
type BookFile struct {
ID int `json:"id"`
AuthorID int `json:"authorId"`
BookID int `json:"bookId"`
Path string `json:"path"`
Size int64 `json:"size"`
DateAdded string `json:"dateAdded"`
Quality QualityModel `json:"quality"`
QualityCutoffNotMet bool `json:"qualityCutoffNotMet"`
}
BookFile represents a downloaded book file on disk.
type BookFileListResource ¶
type BookFileListResource struct {
BookFileIDs []int `json:"bookFileIds"`
}
BookFileListResource is the request body for bulk book file operations.
type BookStatistics ¶
type BookStatistics struct {
BookFileCount int `json:"bookFileCount"`
BookCount int `json:"bookCount"`
TotalBookCount int `json:"totalBookCount"`
SizeOnDisk int64 `json:"sizeOnDisk"`
PercentOfBooks float64 `json:"percentOfBooks"`
}
BookStatistics contains file counts and size information for a book.
type BooksMonitoredResource ¶
type BooksMonitoredResource struct {
BookIDs []int `json:"bookIds"`
Monitored bool `json:"monitored"`
}
BooksMonitoredResource is used to set the monitored status of books.
type BookshelfAuthorResource ¶ added in v1.1.0
type BookshelfAuthorResource struct {
ID int `json:"id"`
Monitored *bool `json:"monitored,omitempty"`
Books []Book `json:"books,omitempty"`
}
BookshelfAuthorResource is an author entry in a bookshelf request.
type BookshelfResource ¶ added in v1.1.0
type BookshelfResource struct {
Authors []BookshelfAuthorResource `json:"authors,omitempty"`
MonitoringOptions MonitoringOptions `json:"monitoringOptions"`
MonitorNewItems string `json:"monitorNewItems,omitempty"`
}
BookshelfResource is the request body for the bookshelf endpoint.
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client is a Readarr API client.
func (*Client) Bookshelf ¶ added in v1.1.0
func (c *Client) Bookshelf(ctx context.Context, shelf *BookshelfResource) error
Bookshelf performs batch monitoring changes on authors and books.
func (*Client) BrowseFileSystem ¶ added in v1.1.0
BrowseFileSystem returns directory/file listings for the given path.
func (*Client) BulkDeleteBlocklist ¶ added in v1.1.0
BulkDeleteBlocklist deletes multiple blocklist items.
func (*Client) BulkDeleteDownloadClients ¶ added in v1.1.0
BulkDeleteDownloadClients deletes multiple download clients at once.
func (*Client) BulkDeleteImportLists ¶ added in v1.1.0
BulkDeleteImportLists deletes multiple import lists at once.
func (*Client) BulkDeleteIndexers ¶ added in v1.1.0
BulkDeleteIndexers deletes multiple indexers at once.
func (*Client) BulkDeleteQueue ¶ added in v1.1.0
func (c *Client) BulkDeleteQueue(ctx context.Context, bulk *arr.QueueBulkResource, removeFromClient, blocklist bool) error
BulkDeleteQueue deletes multiple items from the download queue.
func (*Client) BulkUpdateDownloadClients ¶ added in v1.1.0
func (c *Client) BulkUpdateDownloadClients(ctx context.Context, bulk *arr.ProviderBulkResource) ([]arr.ProviderResource, error)
BulkUpdateDownloadClients updates multiple download clients at once.
func (*Client) BulkUpdateImportLists ¶ added in v1.1.0
func (c *Client) BulkUpdateImportLists(ctx context.Context, bulk *arr.ProviderBulkResource) ([]arr.ProviderResource, error)
BulkUpdateImportLists updates multiple import lists at once.
func (*Client) BulkUpdateIndexers ¶ added in v1.1.0
func (c *Client) BulkUpdateIndexers(ctx context.Context, bulk *arr.ProviderBulkResource) ([]arr.ProviderResource, error)
BulkUpdateIndexers updates multiple indexers at once.
func (*Client) BulkUpdateQualityDefinitions ¶ added in v1.1.0
func (c *Client) BulkUpdateQualityDefinitions(ctx context.Context, defs []arr.QualityDefinitionResource) ([]arr.QualityDefinitionResource, error)
BulkUpdateQualityDefinitions updates multiple quality definitions at once.
func (*Client) CreateCustomFilter ¶ added in v1.1.0
func (c *Client) CreateCustomFilter(ctx context.Context, filter *arr.CustomFilterResource) (*arr.CustomFilterResource, error)
CreateCustomFilter creates a new custom filter.
func (*Client) CreateCustomFormat ¶ added in v1.1.0
func (c *Client) CreateCustomFormat(ctx context.Context, format *arr.CustomFormatResource) (*arr.CustomFormatResource, error)
CreateCustomFormat creates a new custom format.
func (*Client) CreateDelayProfile ¶ added in v1.1.0
func (c *Client) CreateDelayProfile(ctx context.Context, profile *arr.DelayProfileResource) (*arr.DelayProfileResource, error)
CreateDelayProfile creates a new delay profile.
func (*Client) CreateDownloadClient ¶ added in v1.1.0
func (c *Client) CreateDownloadClient(ctx context.Context, dc *arr.ProviderResource) (*arr.ProviderResource, error)
CreateDownloadClient creates a new download client.
func (*Client) CreateImportList ¶ added in v1.1.0
func (c *Client) CreateImportList(ctx context.Context, il *arr.ProviderResource) (*arr.ProviderResource, error)
CreateImportList creates a new import list.
func (*Client) CreateImportListExclusion ¶ added in v1.1.0
func (c *Client) CreateImportListExclusion(ctx context.Context, exclusion *ImportListExclusion) (*ImportListExclusion, error)
CreateImportListExclusion creates a new import list exclusion.
func (*Client) CreateIndexer ¶ added in v1.1.0
func (c *Client) CreateIndexer(ctx context.Context, idx *arr.ProviderResource) (*arr.ProviderResource, error)
CreateIndexer creates a new indexer.
func (*Client) CreateMetadataConsumer ¶ added in v1.1.0
func (c *Client) CreateMetadataConsumer(ctx context.Context, m *arr.ProviderResource) (*arr.ProviderResource, error)
CreateMetadataConsumer creates a new metadata consumer.
func (*Client) CreateMetadataProfile ¶ added in v1.1.0
func (c *Client) CreateMetadataProfile(ctx context.Context, profile *MetadataProfile) (*MetadataProfile, error)
CreateMetadataProfile creates a new metadata profile.
func (*Client) CreateNotification ¶ added in v1.1.0
func (c *Client) CreateNotification(ctx context.Context, n *arr.ProviderResource) (*arr.ProviderResource, error)
CreateNotification creates a new notification.
func (*Client) CreateQualityProfile ¶ added in v1.1.0
func (c *Client) CreateQualityProfile(ctx context.Context, profile *arr.QualityProfile) (*arr.QualityProfile, error)
CreateQualityProfile creates a new quality profile.
func (*Client) CreateReleaseProfile ¶ added in v1.1.0
func (c *Client) CreateReleaseProfile(ctx context.Context, profile *arr.ReleaseProfileResource) (*arr.ReleaseProfileResource, error)
CreateReleaseProfile creates a new release profile.
func (*Client) CreateRemotePathMapping ¶ added in v1.1.0
func (c *Client) CreateRemotePathMapping(ctx context.Context, mapping *arr.RemotePathMappingResource) (*arr.RemotePathMappingResource, error)
CreateRemotePathMapping creates a new remote path mapping.
func (*Client) CreateRootFolder ¶ added in v1.1.0
func (c *Client) CreateRootFolder(ctx context.Context, folder *arr.RootFolder) (*arr.RootFolder, error)
CreateRootFolder creates a new root folder.
func (*Client) DeleteAuthor ¶
func (c *Client) DeleteAuthor(ctx context.Context, id int, deleteFiles, addImportListExclusion bool) error
DeleteAuthor removes an author. Set deleteFiles to true to also delete downloaded files from disk.
func (*Client) DeleteAuthors ¶
func (c *Client) DeleteAuthors(ctx context.Context, editor *AuthorEditorResource) error
DeleteAuthors performs a batch delete of multiple authors.
func (*Client) DeleteBackup ¶ added in v1.1.0
DeleteBackup deletes a backup by ID.
func (*Client) DeleteBlocklistItem ¶ added in v1.1.0
DeleteBlocklistItem deletes a single blocklist item by ID.
func (*Client) DeleteBook ¶
func (c *Client) DeleteBook(ctx context.Context, id int, deleteFiles, addImportListExclusion bool) error
DeleteBook removes a book.
func (*Client) DeleteBookFile ¶
DeleteBookFile removes a single book file by its database ID.
func (*Client) DeleteBookFiles ¶
DeleteBookFiles removes multiple book files by their IDs.
func (*Client) DeleteBooks ¶
func (c *Client) DeleteBooks(ctx context.Context, editor *BookEditorResource) error
DeleteBooks performs a batch delete of multiple books.
func (*Client) DeleteCommand ¶ added in v1.1.0
DeleteCommand deletes a command by ID.
func (*Client) DeleteCustomFilter ¶ added in v1.1.0
DeleteCustomFilter deletes a custom filter by ID.
func (*Client) DeleteCustomFormat ¶ added in v1.1.0
DeleteCustomFormat deletes a custom format by ID.
func (*Client) DeleteDelayProfile ¶ added in v1.1.0
DeleteDelayProfile deletes a delay profile by ID.
func (*Client) DeleteDownloadClient ¶ added in v1.1.0
DeleteDownloadClient deletes a download client by ID.
func (*Client) DeleteImportList ¶ added in v1.1.0
DeleteImportList deletes an import list by ID.
func (*Client) DeleteImportListExclusion ¶ added in v1.1.0
DeleteImportListExclusion deletes an import list exclusion by ID.
func (*Client) DeleteIndexer ¶ added in v1.1.0
DeleteIndexer deletes an indexer by ID.
func (*Client) DeleteMetadataConsumer ¶ added in v1.1.0
DeleteMetadataConsumer deletes a metadata consumer by ID.
func (*Client) DeleteMetadataProfile ¶ added in v1.1.0
DeleteMetadataProfile deletes a metadata profile by ID.
func (*Client) DeleteNotification ¶ added in v1.1.0
DeleteNotification deletes a notification by ID.
func (*Client) DeleteQualityProfile ¶ added in v1.1.0
DeleteQualityProfile deletes a quality profile by ID.
func (*Client) DeleteQueueItem ¶
func (c *Client) DeleteQueueItem(ctx context.Context, id int, removeFromClient, blocklist bool) error
DeleteQueueItem removes an item from the download queue.
func (*Client) DeleteReleaseProfile ¶ added in v1.1.0
DeleteReleaseProfile deletes a release profile by ID.
func (*Client) DeleteRemotePathMapping ¶ added in v1.1.0
DeleteRemotePathMapping deletes a remote path mapping by ID.
func (*Client) DeleteRootFolder ¶ added in v1.1.0
DeleteRootFolder deletes a root folder by ID.
func (*Client) DownloadClientAction ¶ added in v1.1.0
func (c *Client) DownloadClientAction(ctx context.Context, name string, body *arr.ProviderResource) error
DownloadClientAction triggers a named action on a download client provider.
func (*Client) EditAuthors ¶
func (c *Client) EditAuthors(ctx context.Context, editor *AuthorEditorResource) error
EditAuthors performs a batch update on multiple authors.
func (*Client) EditBookFilesBulk ¶ added in v1.1.0
func (c *Client) EditBookFilesBulk(ctx context.Context, editor *BookFileListResource) ([]BookFile, error)
EditBookFilesBulk updates multiple book files at once.
func (*Client) EditBooks ¶
func (c *Client) EditBooks(ctx context.Context, editor *BookEditorResource) error
EditBooks performs a batch update on multiple books.
func (*Client) GetAllAuthors ¶
GetAllAuthors returns every author configured in Readarr.
func (*Client) GetBackups ¶ added in v1.1.0
GetBackups returns a list of all available backups.
func (*Client) GetBlocklist ¶ added in v1.1.0
func (c *Client) GetBlocklist(ctx context.Context, page, pageSize int) (*arr.PagingResource[arr.BlocklistResource], error)
GetBlocklist returns the blocklist with pagination.
func (*Client) GetBookFile ¶
GetBookFile returns a single book file by its database ID.
func (*Client) GetBookFiles ¶
GetBookFiles returns all book files for the given author.
func (*Client) GetBookOverview ¶ added in v1.1.0
GetBookOverview returns an overview for a specific book.
func (*Client) GetCalendar ¶
func (c *Client) GetCalendar(ctx context.Context, start, end string, unmonitored bool) ([]Book, error)
GetCalendar returns books with releases between start and end (RFC 3339 timestamps).
func (*Client) GetCalendarByID ¶ added in v1.1.0
GetCalendarByID returns a single calendar entry by its ID.
func (*Client) GetCommand ¶
GetCommand returns the status of a single command by its ID.
func (*Client) GetCommands ¶
GetCommands returns all currently queued or running commands.
func (*Client) GetCustomFilter ¶ added in v1.1.0
GetCustomFilter returns a single custom filter by its ID.
func (*Client) GetCustomFilters ¶ added in v1.1.0
GetCustomFilters returns all custom filters.
func (*Client) GetCustomFormat ¶ added in v1.1.0
GetCustomFormat returns a single custom format by its ID.
func (*Client) GetCustomFormatSchema ¶ added in v1.1.0
GetCustomFormatSchema returns the custom format schema.
func (*Client) GetCustomFormats ¶ added in v1.1.0
GetCustomFormats returns all custom formats.
func (*Client) GetDelayProfile ¶ added in v1.1.0
GetDelayProfile returns a single delay profile by its ID.
func (*Client) GetDelayProfiles ¶ added in v1.1.0
GetDelayProfiles returns all delay profiles.
func (*Client) GetDevelopmentConfig ¶ added in v1.1.0
func (c *Client) GetDevelopmentConfig(ctx context.Context) (*DevelopmentConfigResource, error)
GetDevelopmentConfig returns the development configuration.
func (*Client) GetDevelopmentConfigByID ¶ added in v1.1.0
func (c *Client) GetDevelopmentConfigByID(ctx context.Context, id int) (*DevelopmentConfigResource, error)
GetDevelopmentConfigByID returns the development config by its ID.
func (*Client) GetDiskSpace ¶
GetDiskSpace returns disk usage information for configured paths.
func (*Client) GetDownloadClient ¶ added in v1.1.0
GetDownloadClient returns a single download client by its ID.
func (*Client) GetDownloadClientConfig ¶ added in v1.1.0
func (c *Client) GetDownloadClientConfig(ctx context.Context) (*arr.DownloadClientConfigResource, error)
GetDownloadClientConfig returns the download client configuration.
func (*Client) GetDownloadClientConfigByID ¶ added in v1.1.0
func (c *Client) GetDownloadClientConfigByID(ctx context.Context, id int) (*arr.DownloadClientConfigResource, error)
GetDownloadClientConfigByID returns the download client config by its ID.
func (*Client) GetDownloadClientSchema ¶ added in v1.1.0
GetDownloadClientSchema returns the schema for all download client types.
func (*Client) GetDownloadClients ¶ added in v1.1.0
GetDownloadClients returns all configured download clients.
func (*Client) GetEditions ¶
GetEditions returns all editions for the given book IDs.
func (*Client) GetFileSystemMediaFiles ¶ added in v1.1.0
func (c *Client) GetFileSystemMediaFiles(ctx context.Context, path string) ([]FileSystemEntry, error)
GetFileSystemMediaFiles returns media files for the given path.
func (*Client) GetFileSystemType ¶ added in v1.1.0
GetFileSystemType returns the filesystem type for the given path.
func (*Client) GetHistory ¶
func (c *Client) GetHistory(ctx context.Context, page, pageSize int) (*arr.PagingResource[HistoryRecord], error)
GetHistory returns the download history with pagination.
func (*Client) GetHistoryByAuthor ¶ added in v1.1.0
GetHistoryByAuthor returns history for a specific author.
func (*Client) GetHistorySince ¶ added in v1.1.0
GetHistorySince returns history since a given date.
func (*Client) GetHostConfig ¶ added in v1.1.0
GetHostConfig returns the host configuration.
func (*Client) GetHostConfigByID ¶ added in v1.1.0
GetHostConfigByID returns the host config by its ID.
func (*Client) GetImportList ¶ added in v1.1.0
GetImportList returns a single import list by its ID.
func (*Client) GetImportListExclusion ¶ added in v1.1.0
GetImportListExclusion returns a single import list exclusion by its ID.
func (*Client) GetImportListExclusions ¶
func (c *Client) GetImportListExclusions(ctx context.Context) ([]ImportListExclusion, error)
GetImportListExclusions returns all import list exclusions.
func (*Client) GetImportListSchema ¶ added in v1.1.0
GetImportListSchema returns the schema for all import list types.
func (*Client) GetImportLists ¶ added in v1.1.0
GetImportLists returns all configured import lists.
func (*Client) GetIndexer ¶ added in v1.1.0
GetIndexer returns a single indexer by its ID.
func (*Client) GetIndexerConfig ¶ added in v1.1.0
GetIndexerConfig returns the indexer configuration.
func (*Client) GetIndexerConfigByID ¶ added in v1.1.0
func (c *Client) GetIndexerConfigByID(ctx context.Context, id int) (*arr.IndexerConfigResource, error)
GetIndexerConfigByID returns the indexer config by its ID.
func (*Client) GetIndexerFlags ¶ added in v1.1.0
GetIndexerFlags returns the list of indexer flags.
func (*Client) GetIndexerSchema ¶ added in v1.1.0
GetIndexerSchema returns the schema for all indexer types.
func (*Client) GetIndexers ¶ added in v1.1.0
GetIndexers returns all configured indexers.
func (*Client) GetLanguage ¶ added in v1.1.0
GetLanguage returns a single language by its ID.
func (*Client) GetLanguages ¶ added in v1.1.0
GetLanguages returns all languages.
func (*Client) GetLocalization ¶ added in v1.1.0
func (c *Client) GetLocalization(ctx context.Context) (*LocalizationResource, error)
GetLocalization returns the localization strings.
func (*Client) GetLogFileContent ¶ added in v1.1.0
GetLogFileContent returns the content of a specific log file by filename.
func (*Client) GetLogFiles ¶ added in v1.1.0
GetLogFiles returns a list of log files.
func (*Client) GetLogs ¶ added in v1.1.0
func (c *Client) GetLogs(ctx context.Context, page, pageSize int) (*arr.PagingResource[arr.LogRecord], error)
GetLogs returns log entries with pagination.
func (*Client) GetManualImport ¶ added in v1.1.0
func (c *Client) GetManualImport(ctx context.Context, folder string) ([]arr.ManualImportResource, error)
GetManualImport returns a list of potential imports for the given path.
func (*Client) GetMediaManagementConfig ¶ added in v1.1.0
func (c *Client) GetMediaManagementConfig(ctx context.Context) (*arr.MediaManagementConfigResource, error)
GetMediaManagementConfig returns the media management configuration.
func (*Client) GetMediaManagementConfigByID ¶ added in v1.1.0
func (c *Client) GetMediaManagementConfigByID(ctx context.Context, id int) (*arr.MediaManagementConfigResource, error)
GetMediaManagementConfigByID returns the media management config by its ID.
func (*Client) GetMetadataConsumer ¶ added in v1.1.0
GetMetadataConsumer returns a single metadata consumer by its ID.
func (*Client) GetMetadataConsumerSchema ¶ added in v1.1.0
GetMetadataConsumerSchema returns the schema for all metadata consumer types.
func (*Client) GetMetadataConsumers ¶ added in v1.1.0
GetMetadataConsumers returns all configured metadata consumers.
func (*Client) GetMetadataProfile ¶ added in v1.1.0
GetMetadataProfile returns a single metadata profile by its ID.
func (*Client) GetMetadataProfileSchema ¶ added in v1.1.0
func (c *Client) GetMetadataProfileSchema(ctx context.Context) (*MetadataProfile, error)
GetMetadataProfileSchema returns the metadata profile schema.
func (*Client) GetMetadataProfiles ¶
func (c *Client) GetMetadataProfiles(ctx context.Context) ([]MetadataProfile, error)
GetMetadataProfiles returns all configured metadata profiles.
func (*Client) GetMetadataProviderConfig ¶ added in v1.1.0
func (c *Client) GetMetadataProviderConfig(ctx context.Context) (*MetadataProviderConfigResource, error)
GetMetadataProviderConfig returns the metadata provider configuration.
func (*Client) GetMetadataProviderConfigByID ¶ added in v1.1.0
func (c *Client) GetMetadataProviderConfigByID(ctx context.Context, id int) (*MetadataProviderConfigResource, error)
GetMetadataProviderConfigByID returns the metadata provider config by its ID.
func (*Client) GetNamingConfig ¶ added in v1.1.0
GetNamingConfig returns the naming configuration.
func (*Client) GetNamingConfigByID ¶ added in v1.1.0
func (c *Client) GetNamingConfigByID(ctx context.Context, id int) (*arr.NamingConfigResource, error)
GetNamingConfigByID returns the naming config by its ID.
func (*Client) GetNamingExamples ¶ added in v1.1.0
GetNamingExamples returns naming format examples based on the current naming config.
func (*Client) GetNotification ¶ added in v1.1.0
GetNotification returns a single notification by its ID.
func (*Client) GetNotificationSchema ¶ added in v1.1.0
GetNotificationSchema returns the schema for all notification types.
func (*Client) GetNotifications ¶ added in v1.1.0
GetNotifications returns all configured notifications.
func (*Client) GetQualityDefinition ¶ added in v1.1.0
func (c *Client) GetQualityDefinition(ctx context.Context, id int) (*arr.QualityDefinitionResource, error)
GetQualityDefinition returns a single quality definition by its ID.
func (*Client) GetQualityDefinitions ¶ added in v1.1.0
func (c *Client) GetQualityDefinitions(ctx context.Context) ([]arr.QualityDefinitionResource, error)
GetQualityDefinitions returns all quality definitions.
func (*Client) GetQualityProfile ¶ added in v1.1.0
GetQualityProfile returns a single quality profile by its ID.
func (*Client) GetQualityProfileSchema ¶ added in v1.1.0
GetQualityProfileSchema returns the quality profile schema.
func (*Client) GetQualityProfiles ¶
GetQualityProfiles returns all configured quality profiles.
func (*Client) GetQueue ¶
func (c *Client) GetQueue(ctx context.Context, page, pageSize int) (*arr.PagingResource[arr.QueueRecord], error)
GetQueue returns the current download queue with pagination.
func (*Client) GetQueueDetails ¶ added in v1.1.0
GetQueueDetails returns detailed information about all items in the queue.
func (*Client) GetQueueStatus ¶ added in v1.1.0
GetQueueStatus returns the overall status of the download queue.
func (*Client) GetReleaseProfile ¶ added in v1.1.0
func (c *Client) GetReleaseProfile(ctx context.Context, id int) (*arr.ReleaseProfileResource, error)
GetReleaseProfile returns a single release profile by its ID.
func (*Client) GetReleaseProfiles ¶ added in v1.1.0
GetReleaseProfiles returns all release profiles.
func (*Client) GetRemotePathMapping ¶ added in v1.1.0
func (c *Client) GetRemotePathMapping(ctx context.Context, id int) (*arr.RemotePathMappingResource, error)
GetRemotePathMapping returns a single remote path mapping by its ID.
func (*Client) GetRemotePathMappings ¶ added in v1.1.0
func (c *Client) GetRemotePathMappings(ctx context.Context) ([]arr.RemotePathMappingResource, error)
GetRemotePathMappings returns all remote path mappings.
func (*Client) GetRenamePreview ¶ added in v1.1.0
func (c *Client) GetRenamePreview(ctx context.Context, authorID, bookID int) ([]RenameBookResource, error)
GetRenamePreview returns a preview of book file renames for an author.
func (*Client) GetRetagPreview ¶ added in v1.1.0
func (c *Client) GetRetagPreview(ctx context.Context, authorID, bookID int) ([]RetagBookResource, error)
GetRetagPreview returns a preview of book file retags for an author.
func (*Client) GetRootFolder ¶ added in v1.1.0
GetRootFolder returns a single root folder by its ID.
func (*Client) GetRootFolders ¶
GetRootFolders returns all configured root folders.
func (*Client) GetSystemRoutes ¶ added in v1.1.0
GetSystemRoutes returns all API routes.
func (*Client) GetSystemRoutesDuplicate ¶ added in v1.1.0
GetSystemRoutesDuplicate returns duplicate API routes.
func (*Client) GetSystemStatus ¶
GetSystemStatus returns Readarr system information.
func (*Client) GetTagDetail ¶ added in v1.1.0
GetTagDetail returns a single tag detail by its ID.
func (*Client) GetTagDetails ¶ added in v1.1.0
GetTagDetails returns all tags with details about their usage.
func (*Client) GetUIConfig ¶ added in v1.1.0
GetUIConfig returns the UI configuration.
func (*Client) GetUIConfigByID ¶ added in v1.1.0
GetUIConfigByID returns the UI config by its ID.
func (*Client) GetUpdateLogFileContent ¶ added in v1.1.0
GetUpdateLogFileContent returns the content of a specific update log file.
func (*Client) GetUpdateLogFiles ¶ added in v1.1.0
GetUpdateLogFiles returns a list of update log files.
func (*Client) GetUpdates ¶ added in v1.1.0
GetUpdates returns available application updates.
func (*Client) GetWantedCutoff ¶
func (c *Client) GetWantedCutoff(ctx context.Context, page, pageSize int) (*arr.PagingResource[Book], error)
GetWantedCutoff returns books not meeting quality cutoff (paginated).
func (*Client) GetWantedCutoffByID ¶ added in v1.1.0
GetWantedCutoffByID returns a single wanted cutoff record by its ID.
func (*Client) GetWantedMissing ¶
func (c *Client) GetWantedMissing(ctx context.Context, page, pageSize int) (*arr.PagingResource[Book], error)
GetWantedMissing returns books with missing files (paginated).
func (*Client) GetWantedMissingByID ¶ added in v1.1.0
GetWantedMissingByID returns a single wanted missing record by its ID.
func (*Client) GrabQueueItem ¶ added in v1.1.0
GrabQueueItem grabs a pending release from the queue by its ID.
func (*Client) GrabQueueItemsBulk ¶ added in v1.1.0
GrabQueueItemsBulk grabs multiple pending releases from the queue.
func (*Client) GrabRelease ¶ added in v1.1.0
func (c *Client) GrabRelease(ctx context.Context, release *arr.ReleaseResource) (*arr.ReleaseResource, error)
GrabRelease grabs a release for download.
func (*Client) ImportListAction ¶ added in v1.1.0
func (c *Client) ImportListAction(ctx context.Context, name string, body *arr.ProviderResource) error
ImportListAction triggers a named action on an import list provider.
func (*Client) IndexerAction ¶ added in v1.1.0
IndexerAction triggers a named action on an indexer provider.
func (*Client) LookupAuthor ¶
LookupAuthor searches for an author by name.
func (*Client) LookupBook ¶
LookupBook searches for a book by term.
func (*Client) MarkHistoryFailed ¶ added in v1.1.0
MarkHistoryFailed marks a history item as failed.
func (*Client) MetadataConsumerAction ¶ added in v1.1.0
func (c *Client) MetadataConsumerAction(ctx context.Context, name string, body *arr.ProviderResource) error
MetadataConsumerAction triggers a named action on a metadata consumer provider.
func (*Client) MonitorBooks ¶
func (c *Client) MonitorBooks(ctx context.Context, req *BooksMonitoredResource) error
MonitorBooks sets the monitored status for a list of books.
func (*Client) NotificationAction ¶ added in v1.1.0
func (c *Client) NotificationAction(ctx context.Context, name string, body *arr.ProviderResource) error
NotificationAction triggers a named action on a notification provider.
func (*Client) PushRelease ¶ added in v1.1.0
func (c *Client) PushRelease(ctx context.Context, release *arr.ReleasePushResource) ([]arr.ReleaseResource, error)
PushRelease pushes a release to the download client.
func (*Client) ReorderDelayProfile ¶ added in v1.1.0
func (c *Client) ReorderDelayProfile(ctx context.Context, id, afterID int) ([]arr.DelayProfileResource, error)
ReorderDelayProfile changes the order of a delay profile.
func (*Client) ReprocessManualImport ¶ added in v1.1.0
func (c *Client) ReprocessManualImport(ctx context.Context, items []arr.ManualImportReprocessResource) ([]arr.ManualImportResource, error)
ReprocessManualImport reprocesses manual imports.
func (*Client) RestoreBackup ¶ added in v1.1.0
RestoreBackup triggers a restore from a backup by ID.
func (*Client) SearchReleases ¶ added in v1.1.0
SearchReleases searches for releases using the configured indexers.
func (*Client) SendCommand ¶
func (c *Client) SendCommand(ctx context.Context, cmd arr.CommandRequest) (*arr.CommandResponse, error)
SendCommand triggers a named command (e.g. "RefreshAuthor", "BookSearch").
func (*Client) TestAllDownloadClients ¶ added in v1.1.0
TestAllDownloadClients tests all configured download clients.
func (*Client) TestAllImportLists ¶ added in v1.1.0
TestAllImportLists tests all configured import lists.
func (*Client) TestAllIndexers ¶ added in v1.1.0
TestAllIndexers tests all configured indexers.
func (*Client) TestAllMetadataConsumers ¶ added in v1.1.0
TestAllMetadataConsumers tests all configured metadata consumers.
func (*Client) TestAllNotifications ¶ added in v1.1.0
TestAllNotifications tests all configured notifications.
func (*Client) TestDownloadClient ¶ added in v1.1.0
TestDownloadClient tests a download client configuration.
func (*Client) TestImportList ¶ added in v1.1.0
TestImportList tests an import list configuration.
func (*Client) TestIndexer ¶ added in v1.1.0
TestIndexer tests an indexer configuration.
func (*Client) TestMetadataConsumer ¶ added in v1.1.0
TestMetadataConsumer tests a metadata consumer configuration.
func (*Client) TestNotification ¶ added in v1.1.0
TestNotification tests a notification configuration.
func (*Client) UpdateAuthor ¶
UpdateAuthor updates an existing author. Set moveFiles to true to relocate files when the author path changes.
func (*Client) UpdateBook ¶
UpdateBook updates an existing book.
func (*Client) UpdateBookFile ¶ added in v1.1.0
UpdateBookFile updates a single book file.
func (*Client) UpdateCustomFilter ¶ added in v1.1.0
func (c *Client) UpdateCustomFilter(ctx context.Context, filter *arr.CustomFilterResource) (*arr.CustomFilterResource, error)
UpdateCustomFilter updates an existing custom filter.
func (*Client) UpdateCustomFormat ¶ added in v1.1.0
func (c *Client) UpdateCustomFormat(ctx context.Context, format *arr.CustomFormatResource) (*arr.CustomFormatResource, error)
UpdateCustomFormat updates an existing custom format.
func (*Client) UpdateDelayProfile ¶ added in v1.1.0
func (c *Client) UpdateDelayProfile(ctx context.Context, profile *arr.DelayProfileResource) (*arr.DelayProfileResource, error)
UpdateDelayProfile updates an existing delay profile.
func (*Client) UpdateDevelopmentConfig ¶ added in v1.1.0
func (c *Client) UpdateDevelopmentConfig(ctx context.Context, config *DevelopmentConfigResource) (*DevelopmentConfigResource, error)
UpdateDevelopmentConfig updates the development configuration.
func (*Client) UpdateDownloadClient ¶ added in v1.1.0
func (c *Client) UpdateDownloadClient(ctx context.Context, dc *arr.ProviderResource) (*arr.ProviderResource, error)
UpdateDownloadClient updates an existing download client.
func (*Client) UpdateDownloadClientConfig ¶ added in v1.1.0
func (c *Client) UpdateDownloadClientConfig(ctx context.Context, config *arr.DownloadClientConfigResource) (*arr.DownloadClientConfigResource, error)
UpdateDownloadClientConfig updates the download client configuration.
func (*Client) UpdateHostConfig ¶ added in v1.1.0
func (c *Client) UpdateHostConfig(ctx context.Context, config *arr.HostConfigResource) (*arr.HostConfigResource, error)
UpdateHostConfig updates the host configuration.
func (*Client) UpdateImportList ¶ added in v1.1.0
func (c *Client) UpdateImportList(ctx context.Context, il *arr.ProviderResource) (*arr.ProviderResource, error)
UpdateImportList updates an existing import list.
func (*Client) UpdateImportListExclusion ¶ added in v1.1.0
func (c *Client) UpdateImportListExclusion(ctx context.Context, exclusion *ImportListExclusion) (*ImportListExclusion, error)
UpdateImportListExclusion updates an existing import list exclusion.
func (*Client) UpdateIndexer ¶ added in v1.1.0
func (c *Client) UpdateIndexer(ctx context.Context, idx *arr.ProviderResource) (*arr.ProviderResource, error)
UpdateIndexer updates an existing indexer.
func (*Client) UpdateIndexerConfig ¶ added in v1.1.0
func (c *Client) UpdateIndexerConfig(ctx context.Context, config *arr.IndexerConfigResource) (*arr.IndexerConfigResource, error)
UpdateIndexerConfig updates the indexer configuration.
func (*Client) UpdateMediaManagementConfig ¶ added in v1.1.0
func (c *Client) UpdateMediaManagementConfig(ctx context.Context, config *arr.MediaManagementConfigResource) (*arr.MediaManagementConfigResource, error)
UpdateMediaManagementConfig updates the media management configuration.
func (*Client) UpdateMetadataConsumer ¶ added in v1.1.0
func (c *Client) UpdateMetadataConsumer(ctx context.Context, m *arr.ProviderResource) (*arr.ProviderResource, error)
UpdateMetadataConsumer updates an existing metadata consumer.
func (*Client) UpdateMetadataProfile ¶ added in v1.1.0
func (c *Client) UpdateMetadataProfile(ctx context.Context, profile *MetadataProfile) (*MetadataProfile, error)
UpdateMetadataProfile updates an existing metadata profile.
func (*Client) UpdateMetadataProviderConfig ¶ added in v1.1.0
func (c *Client) UpdateMetadataProviderConfig(ctx context.Context, config *MetadataProviderConfigResource) (*MetadataProviderConfigResource, error)
UpdateMetadataProviderConfig updates the metadata provider configuration.
func (*Client) UpdateNamingConfig ¶ added in v1.1.0
func (c *Client) UpdateNamingConfig(ctx context.Context, config *arr.NamingConfigResource) (*arr.NamingConfigResource, error)
UpdateNamingConfig updates the naming configuration.
func (*Client) UpdateNotification ¶ added in v1.1.0
func (c *Client) UpdateNotification(ctx context.Context, n *arr.ProviderResource) (*arr.ProviderResource, error)
UpdateNotification updates an existing notification.
func (*Client) UpdateQualityDefinition ¶ added in v1.1.0
func (c *Client) UpdateQualityDefinition(ctx context.Context, def *arr.QualityDefinitionResource) (*arr.QualityDefinitionResource, error)
UpdateQualityDefinition updates a single quality definition.
func (*Client) UpdateQualityProfile ¶ added in v1.1.0
func (c *Client) UpdateQualityProfile(ctx context.Context, profile *arr.QualityProfile) (*arr.QualityProfile, error)
UpdateQualityProfile updates an existing quality profile.
func (*Client) UpdateReleaseProfile ¶ added in v1.1.0
func (c *Client) UpdateReleaseProfile(ctx context.Context, profile *arr.ReleaseProfileResource) (*arr.ReleaseProfileResource, error)
UpdateReleaseProfile updates an existing release profile.
func (*Client) UpdateRemotePathMapping ¶ added in v1.1.0
func (c *Client) UpdateRemotePathMapping(ctx context.Context, mapping *arr.RemotePathMappingResource) (*arr.RemotePathMappingResource, error)
UpdateRemotePathMapping updates an existing remote path mapping.
func (*Client) UpdateRootFolder ¶ added in v1.1.0
func (c *Client) UpdateRootFolder(ctx context.Context, folder *arr.RootFolder) (*arr.RootFolder, error)
UpdateRootFolder updates an existing root folder.
func (*Client) UpdateUIConfig ¶ added in v1.1.0
func (c *Client) UpdateUIConfig(ctx context.Context, config *arr.UIConfigResource) (*arr.UIConfigResource, error)
UpdateUIConfig updates the UI configuration.
type CustomFormat ¶
CustomFormat describes a custom format definition.
type DevelopmentConfigResource ¶ added in v1.1.0
type DevelopmentConfigResource struct {
ID int `json:"id"`
MetadataSource string `json:"metadataSource,omitempty"`
ConsoleLogLevel string `json:"consoleLogLevel,omitempty"`
LogSQL bool `json:"logSql"`
LogRotate int `json:"logRotate"`
FilterSentryEvents bool `json:"filterSentryEvents"`
}
DevelopmentConfigResource holds development configuration.
type Edition ¶
type Edition struct {
ID int `json:"id"`
BookID int `json:"bookId"`
ForeignEditionID string `json:"foreignEditionId"`
TitleSlug string `json:"titleSlug,omitempty"`
ISBN13 string `json:"isbn13,omitempty"`
ASIN string `json:"asin,omitempty"`
Title string `json:"title"`
Language string `json:"language,omitempty"`
Overview string `json:"overview,omitempty"`
Format string `json:"format,omitempty"`
IsEbook bool `json:"isEbook"`
Disambiguation string `json:"disambiguation,omitempty"`
Publisher string `json:"publisher,omitempty"`
PageCount int `json:"pageCount,omitempty"`
ReleaseDate string `json:"releaseDate,omitempty"`
Images []Image `json:"images,omitempty"`
Links []Link `json:"links,omitempty"`
Ratings Ratings `json:"ratings,omitempty"`
Monitored bool `json:"monitored"`
ManualAdd bool `json:"manualAdd"`
RemoteCover string `json:"remoteCover,omitempty"`
}
Edition represents a specific edition of a book (hardcover, paperback, ebook, etc.).
type FileSystemEntry ¶ added in v1.1.0
type FileSystemEntry struct {
Type string `json:"type,omitempty"`
Name string `json:"name,omitempty"`
Path string `json:"path,omitempty"`
Size int64 `json:"size,omitempty"`
LastModified string `json:"lastModified,omitempty"`
}
FileSystemEntry represents a single directory or file entry.
type FileSystemResource ¶ added in v1.1.0
type FileSystemResource struct {
Directories []FileSystemEntry `json:"directories,omitempty"`
Files []FileSystemEntry `json:"files,omitempty"`
Parent string `json:"parent,omitempty"`
}
FileSystemResource represents a filesystem browse response.
type HistoryRecord ¶
type HistoryRecord struct {
ID int `json:"id"`
BookID int `json:"bookId"`
AuthorID int `json:"authorId"`
SourceTitle string `json:"sourceTitle"`
Quality QualityModel `json:"quality"`
CustomFormats []CustomFormat `json:"customFormats,omitempty"`
CustomFormatScore int `json:"customFormatScore"`
QualityCutoffNotMet bool `json:"qualityCutoffNotMet"`
Date string `json:"date"`
DownloadID string `json:"downloadId,omitempty"`
EventType string `json:"eventType"`
Data map[string]string `json:"data,omitempty"`
}
HistoryRecord represents an event in the download history.
type Image ¶
type Image struct {
CoverType string `json:"coverType"`
URL string `json:"url"`
RemoteURL string `json:"remoteUrl,omitempty"`
}
Image represents a cover image for a media item.
type ImportListExclusion ¶
type ImportListExclusion struct {
ID int `json:"id"`
ForeignID string `json:"foreignId,omitempty"`
AuthorName string `json:"authorName,omitempty"`
}
ImportListExclusion represents an author excluded from import lists.
type LocalizationResource ¶ added in v1.1.0
type LocalizationResource struct {
ID int `json:"id"`
Strings map[string]string `json:"strings,omitempty"`
}
LocalizationResource represents localization string data.
type MetadataProfile ¶
MetadataProfile describes a metadata profile for filtering book types.
type MetadataProviderConfigResource ¶ added in v1.1.0
type MetadataProviderConfigResource struct {
ID int `json:"id"`
WriteAudioTags string `json:"writeAudioTags,omitempty"`
ScrubAudioTags bool `json:"scrubAudioTags"`
WriteBookTags string `json:"writeBookTags,omitempty"`
UpdateCovers bool `json:"updateCovers"`
EmbedMetadata bool `json:"embedMetadata"`
}
MetadataProviderConfigResource holds metadata provider configuration.
type MonitoringOptions ¶ added in v1.1.0
type MonitoringOptions struct {
Monitor string `json:"monitor,omitempty"`
BooksToMonitor []string `json:"booksToMonitor,omitempty"`
Monitored bool `json:"monitored"`
}
MonitoringOptions controls what to monitor when adding or updating.
type ParseResult ¶
type ParseResult struct {
ID int `json:"id"`
Title string `json:"title"`
ParsedBookInfo *ParsedBookInfo `json:"parsedBookInfo,omitempty"`
Author *Author `json:"author,omitempty"`
Books []Book `json:"books,omitempty"`
}
ParseResult contains the result of parsing a release title.
type ParsedBookInfo ¶
type ParsedBookInfo struct {
BookTitle string `json:"bookTitle,omitempty"`
AuthorName string `json:"authorName,omitempty"`
Quality QualityModel `json:"quality"`
ReleaseDate string `json:"releaseDate,omitempty"`
Discography bool `json:"discography"`
DiscographyStart int `json:"discographyStart,omitempty"`
DiscographyEnd int `json:"discographyEnd,omitempty"`
ReleaseGroup string `json:"releaseGroup,omitempty"`
ReleaseHash string `json:"releaseHash,omitempty"`
ReleaseVersion string `json:"releaseVersion,omitempty"`
}
ParsedBookInfo holds the structured data extracted from a release title.
type QualityModel ¶
QualityModel pairs a quality definition with its revision.
type RenameBookResource ¶ added in v1.1.0
type RenameBookResource struct {
ID int `json:"id"`
AuthorID int `json:"authorId"`
BookID int `json:"bookId"`
BookFileID int `json:"bookFileId"`
ExistingPath string `json:"existingPath,omitempty"`
NewPath string `json:"newPath,omitempty"`
}
RenameBookResource represents a rename preview for a book file.
type RetagBookResource ¶ added in v1.1.0
type RetagBookResource struct {
ID int `json:"id"`
AuthorID int `json:"authorId"`
BookID int `json:"bookId"`
TrackNumbers []int `json:"trackNumbers,omitempty"`
BookFileID int `json:"bookFileId"`
Path string `json:"path,omitempty"`
Changes []TagDifference `json:"changes,omitempty"`
}
RetagBookResource represents a retag preview for a book file.
type Revision ¶
type Revision struct {
Version int `json:"version"`
Real int `json:"real"`
IsRepack bool `json:"isRepack"`
}
Revision tracks repack and version information for a release.
type Series ¶
type Series struct {
ID int `json:"id"`
Title string `json:"title"`
Description string `json:"description,omitempty"`
}
Series represents a book series (e.g. "Harry Potter").
type TagDifference ¶ added in v1.1.0
type TagDifference struct {
Field string `json:"field,omitempty"`
OldValue string `json:"oldValue,omitempty"`
NewValue string `json:"newValue,omitempty"`
}
TagDifference represents a single tag change.