Documentation
¶
Index ¶
- func ExtractDomainFromIndexerFields(fields []IndexerField) string
- type Client
- func (c *Client) GetIndexer(ctx context.Context, indexerID int) (*IndexerDetail, error)
- func (c *Client) GetIndexers(ctx context.Context) ([]Indexer, error)
- func (c *Client) GetTrackerDomains(ctx context.Context) ([]string, error)
- func (c *Client) SearchIndexer(ctx context.Context, indexerID string, params map[string]string) (gojackett.Rss, error)
- type Config
- type Indexer
- type IndexerDetail
- type IndexerField
- type TorznabError
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ExtractDomainFromIndexerFields ¶
func ExtractDomainFromIndexerFields(fields []IndexerField) string
ExtractDomainFromIndexerFields extracts the tracker domain from Prowlarr indexer configuration fields
Types ¶
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client provides a minimal Prowlarr API wrapper suitable for Torznab-style access.
func (*Client) GetIndexer ¶
GetIndexer retrieves detailed information about a specific indexer from Prowlarr
func (*Client) GetIndexers ¶
GetIndexers retrieves all configured indexers from the Prowlarr instance.
func (*Client) GetTrackerDomains ¶
GetTrackerDomains extracts actual tracker domains from Prowlarr indexers
type Config ¶
type Config struct {
Host string
APIKey string
BasicUser string
BasicPass string
Timeout int
HTTPClient *http.Client
UserAgent string
Version string
}
Config holds the options for constructing a Client.
type Indexer ¶
type Indexer struct {
ID int `json:"id"`
Name string `json:"name"`
Description string `json:"description"`
Implementation string `json:"implementation"`
ImplementationName string `json:"implementationName"`
Enable bool `json:"enable"`
Protocol string `json:"protocol"` // "unknown", "usenet", "torrent"
}
Indexer represents a configured Prowlarr indexer returned by the API.
type IndexerDetail ¶
type IndexerDetail struct {
ID int `json:"id"`
Name string `json:"name"`
Description string `json:"description"`
Implementation string `json:"implementation"`
ImplementationName string `json:"implementationName"`
Enable bool `json:"enable"`
Fields []IndexerField `json:"fields"`
}
IndexerDetail represents detailed information about a Prowlarr indexer
type IndexerField ¶
type IndexerField struct {
Order int `json:"order"`
Name string `json:"name"`
Label string `json:"label"`
Value any `json:"value"`
Type string `json:"type"`
Advanced bool `json:"advanced"`
}
IndexerField represents a configuration field for an indexer
type TorznabError ¶
TorznabError represents a Torznab error response