Resolve current + latest terminal run for a TRaSH source
const url = 'https://example.com/api/v1/trash-guide/sources/1/sync';const options = {method: 'GET'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://example.com/api/v1/trash-guide/sources/1/syncReturns the source’s current queue slot and latest terminal run evidence, used to poll a queued/running sync to its exact terminal run. Read-only and safe for a since-deleted source: identity falls back to the durable snapshot, so it does not 404 on that case.
Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”TRaSH source ID
Responses
Section titled “Responses”Current + latest terminal run view
Single wire view of a source’s current queue slot + latest terminal run, reused by the POST response and the GET status resolver.
object
object
Versioned, structured terminal evidence for one TRaSH sync run, serialized into job_run_history.output. Survives a source hard-delete via its embedded identity snapshot.
object
Typed, closed, SAFE failure evidence. message/recoveryAction are pre-authored copy that never embeds raw exception text, git/parser diagnostics, credentials, or hostnames.
object
Closed, safe vocabulary of TRaSH sync failure reasons. Assigned by outcome/error type only — never by message parsing — so no raw diagnostic can leak.
Example
{ "arrType": "radarr", "latestRun": { "status": "success", "evidence": { "schemaVersion": 1, "source": { "arrType": "radarr" }, "trigger": "manual", "status": "success", "failure": { "code": "source_missing" } } }}Invalid source ID
object
Error message
Examplegenerated
{ "error": "example"}Failed to resolve sync status
object
Error message
Examplegenerated
{ "error": "example"}