List the master's revisions and retired lines
const url = 'http://127.0.0.1:8765/api/master/history';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 http://127.0.0.1:8765/api/master/historyThe master’s revisions, newest first, and what is retired. Each revision: who wrote it (written_by operator | agent), when, how many lines and entries it holds and what it changed against the one before (added, removed, changed, by id). retired: every line or entry (what; kind is entry or the line’s kind) an earlier revision held and the current one does not, as the last revision that held it had it (text: the line, or an entry’s heading with its sublines; last_revision; retired_in is the revision that dropped it and retired_by who wrote that one), the most recently retired first; a line retired with its entry is not listed on its own: it comes back with the entry. Put one back with PUT /api/master/lines or /entries {id, use: “restore”}. Nothing is ever deleted: every revision stays in the journal. revision is null and both lists are empty when there is no master.
Responses
Section titled “Responses”Success.
object
Example
{ "retired": [ { "entry_heading": "Hexa Cloud", "entry_id": "r-hex", "id": "b-hex-09", "kind": "bullet", "last_revision": 2, "retired_by": "operator", "retired_in": 3, "section": "experience", "sublines": [], "text": "Ran the on-call rotation for 4 teams.", "what": "line" } ], "revision": 3, "revisions": [ { "added": 0, "changed": 0, "content_sha256": "sha256:...", "entries": 1, "items": 3, "parent_revision": "revision_7c1d7b9a-0d58-4f0b-8f27-91f4f6f6a2c3", "removed": 1, "revision": 3, "revision_id": "revision_0b6f2f0e-5a0e-4c58-9a57-2d1b6a0c1e11", "updated_at": "2026-10-04T10:05:00.000000Z", "written_by": "operator" } ], "schema_version": "scout-master-history:1"}Forbidden / forbidden_origin: loopback peer and Host 127.0.0.1:<port> or localhost:<port> only (Origin too on writes).
object
object
Examplegenerated
{ "error": { "allowed_keys": [ "example" ], "code": "example", "message": "example" }}Target_unavailable
object
object
Example
{ "error": { "code": "target_unavailable", "message": "..." }}Unknown_key
object
object
Example
{ "error": { "code": "unknown_key", "message": "..." }}