Skip to content

Delay profiles

vavallee edited this page Apr 15, 2026 · 1 revision

Delay profiles

Delay profiles are a hold-off timer: when a release matches your search criteria, Bindery can wait N minutes before grabbing it. The idea — borrowed from Sonarr — is to give the preferred protocol (usually Usenet) a head start, or to let a better-scoring release show up on a slower indexer before committing to the first one that matches.

Status in v0.12

Heads up — the delay-profile CRUD API (/api/v1/delayprofile) exists and the table is migrated, but the scheduler does not yet honour the timer. Releases are grabbed immediately when a qualifying match appears. Tracking issue: #93 on the roadmap.

The endpoints are exposed today so that tools which speak the Sonarr/Lidarr API (e.g. third-party schedulers, monitoring dashboards) can round-trip profile configuration. Profiles you create now will take effect automatically in the release that wires the delay logic — no migration needed on your side.

Schema

Each profile is stored as a single row:

Field Type Meaning
usenetDelay int Minutes to wait after a Usenet match appears before grabbing it
torrentDelay int Minutes to wait after a torrent match appears before grabbing it
preferredProtocol string usenet or torrent — which side wins when both qualify inside the window
enableUsenet bool Allow Usenet grabs at all
enableTorrent bool Allow torrent grabs at all
order int Tie-breaker when multiple profiles apply (lower wins; one-profile-per-install is fine)

Recommended shape

The Sonarr convention that most homelabs end up copying:

  • usenetDelay: 0
  • torrentDelay: 30
  • preferredProtocol: usenet

Translation: grab Usenet the instant something qualifies, but if only a torrent shows up, give Usenet 30 more minutes before falling back. Most posts land on both sides within that window, so the torrent is only used when no Usenet equivalent exists.

Managing via API

# List
curl -H "X-Api-Key: $KEY" http://bindery:8787/api/v1/delayprofile

# Create
curl -H "X-Api-Key: $KEY" -H "Content-Type: application/json" \
  -X POST http://bindery:8787/api/v1/delayprofile \
  -d '{"usenetDelay":0,"torrentDelay":30,"preferredProtocol":"usenet","enableUsenet":true,"enableTorrent":true,"order":1}'

See also

  • Quality profiles — format preference order (EPUB / MOBI / AZW3 / PDF) and cutoff rules. This is the piece that IS enforced today.
  • Custom formats — release-title scoring (RETAIL, freeleech tags). Also CRUD-only in v0.12.

Clone this wiki locally