Every command that reports something accepts the global --json flag. The schema version is 1 (ag version --json prints json_schema).
The stability rule. Within a schema version, keys are only ever added: never removed, renamed or retyped. A consumer ignores keys it does not know. Removing, renaming or retyping a key would be a new schema version and an entry in the changelog.
Where this is enforced. The shapes below are the golden files crates/ag-cli/tests/golden/json-shapes.json and json-shapes-remote.json. cargo test -p agentgit-cli runs every command listed here in a scratch repository (the remote ones against a real in-process ag-server), compares the shape of its output (keys and value types, no values) with the golden file, and fails when a command of ag --help has neither a shape nor an entry in the list of commands whose output is not JSON.
Reading the shapes: a value is its type (string, number, bool, null); string|null means both were seen; an array shows the merged shape of its elements, and [] means the list was empty in the test run. A command printed with a suffix such as integrate (blocked) is the same command in another situation (here: when policy blocks the integration, exit code 3).
With --json an error is one JSON line on standard error (and the exit code is the process's):
{"error":{"message":"not found: proposal 'x'","hint":"...","exit_code":1}}Their output is the data (file contents, a template, a script, a man page, help text), so --json does not change it:
ag catag completionsag helpag manag policy exampleag remote cat
ag remote events --follow --json prints one compact JSON object per line (NDJSON), each the shape of an event in ag remote events, so that a consumer can read it line by line.
ag agentag auditag authag backupag blameag checkoutag cloneag configag diffag doctorag explainag fetchag gcag gitag initag integrateag leaseag logag loginag logoutag lsag migrateag opag pinag pinsag policyag portabilityag predictag previewag proposalag proposeag provenanceag pullag pushag queueag recoverag reindexag remoteag showag snapshotag statusag streamag syncag taskag traceag unpinag validateag verifyag versionag workspace
{
"disabled": "string"
}{
"disabled": "string"
}{
"enabled": "string"
}{
"enabled": "string"
}{
"run": "string",
"status": "string"
}{
"run": "string"
}[
{
"created_at": "number",
"disabled": "bool",
"identity": "string",
"name": "string",
"public_key": "string",
"role": "string"
}
][
{
"created_at_ms": "number",
"disabled": "bool",
"executor": "null",
"identity": "string",
"name": "string",
"public_key": "string",
"role": "string"
}
][]{
"created_at": "number",
"disabled": "bool",
"identity": "string",
"name": "string",
"public_key": "string",
"role": "string"
}[
{
"agent": "string",
"finished_at": "null",
"last_heartbeat": "number",
"run_id": "string",
"started_at": "number",
"status": "string",
"summary": "null",
"task_id": "string"
}
]{
"identity": "string",
"run_id": "string"
}{
"entries": "number",
"first_bad": "null",
"head": "string"
}[
{
"action": "string",
"actor": "string",
"details": "string",
"hash": "string",
"prev_hash": "string",
"seq": "number",
"target": "string",
"timestamp": "number"
}
]{
"checked_online": "bool",
"connections": [
{
"expires_at": "string",
"identity": "string",
"server": "string",
"state": "string"
}
]
}{
"checked_online": "bool",
"connections": []
}{
"bytes": "number",
"keys_included": "bool",
"objects": "number",
"verification": {
"audit_entries": "number",
"audit_head": "string",
"changesets_checked": "number",
"heads_recomputed": "number",
"issues": [],
"objects_checked": "number"
}
}{
"lines": [
{
"author": "string",
"boundary": "bool",
"changeset": "string",
"line": "number",
"original_line": "number",
"path": "string",
"summary": "string",
"text": "string",
"timestamp": "number"
}
],
"path": "string",
"rev": "string",
"truncated": "bool",
"visited": "number"
}{
"changeset": "string",
"dir": "string",
"files": "number"
}{
"blobs": "number",
"changesets": "number",
"head": "string",
"remote": "string",
"stream": "string",
"version": "number"
}{
"key": "string",
"settable": "bool",
"source": "string",
"value": "string"
}[
{
"key": "string",
"settable": "bool",
"source": "string",
"value": "string"
}
]{
"repository": {
"config": "string",
"keys": "string",
"remotes": "string"
},
"user": {
"exists": "bool",
"path": "string"
}
}{
"file": "string",
"key": "string",
"value": "string"
}{
"file": "string",
"key": "string",
"was_set": "bool"
}{
"diff": "string"
}{
"checks": [
{
"hint": "null|string",
"id": "string",
"status": "string",
"summary": "string"
}
],
"ok": "bool",
"summary": {
"fail": "number",
"ok": "number",
"skip": "number",
"warn": "number"
},
"version": "string"
}{
"checks": [
{
"hint": "null",
"id": "string",
"status": "string",
"summary": "string"
}
],
"ok": "bool",
"summary": {
"fail": "number",
"ok": "number",
"skip": "number",
"warn": "number"
},
"version": "string"
}{
"explanations": [],
"next": [],
"policy_version": "number",
"proposal": "string",
"standing": "string",
"stream": "string",
"title": "string"
}{
"explanations": [
{
"code": "string",
"fixes": [
{
"command": "string",
"note": "string"
}
],
"kind": "string",
"summary": "string",
"why": "string"
}
],
"next": [
"string"
],
"policy_version": "number",
"proposal": "string",
"standing": "string",
"stream": "string",
"title": "string"
}{
"blobs": "number",
"changesets": "number",
"head": "string",
"remote": "string",
"stream": "string",
"version": "number"
}{
"bytes": "number",
"deleted": [],
"dry_run": "bool",
"kept_staged": "number",
"kept_young": "number",
"reachable_blobs": "number",
"reachable_changesets": "number",
"scanned": "number"
}{
"branch": "string",
"commits": "number"
}{
"blobs": "number",
"commits": "number",
"head": "string",
"lossy_commits": "number",
"skipped_paths": [],
"skipped_submodules": "number"
}{
"durability": "string",
"namespace": "string",
"policy_version": "null",
"preset": "null",
"root": "string",
"stream": "string"
}{
"durability": "string",
"namespace": "string",
"policy_version": "number",
"preset": "string",
"root": "string",
"stream": "string"
}{
"operation_id": "string",
"outcome": {
"changed_files": "number",
"new_head": "string",
"previous_head": "null",
"status": "string",
"strategy": "string",
"tree_id": "string",
"version": "number"
},
"state": "string"
}{
"operation_id": "string",
"outcome": {
"blockers": [
{
"code": "string",
"detail": {
"have": "number",
"kind": "string",
"required": "number",
"scope": "string"
},
"message": "string"
}
],
"candidate_changeset": "string",
"candidate_tree": "string",
"policy_version": "number",
"status": "string"
},
"state": "string"
}{
"lease": {
"acquired_at": "number",
"exclusive": "bool",
"expires_at": "number",
"holder": "string",
"id": "string",
"released_at": "null",
"scope": "string",
"task_id": "null",
"token": "number"
},
"overlaps": []
}{
"acquired_at": "number",
"exclusive": "bool",
"expires_at": "number",
"holder": "string",
"id": "string",
"released_at": "null",
"scope": "string",
"task_id": "null",
"token": "number"
}[
{
"acquired_at": "number",
"exclusive": "bool",
"expires_at": "number",
"holder": "string",
"id": "string",
"released_at": "null",
"scope": "string",
"task_id": "null",
"token": "number"
}
]{
"released": "string"
}[
{
"author": "string",
"generation": "number",
"id": "string",
"message": "string",
"parents": [
"string"
],
"timestamp": "number"
}
]{
"expires_at": "string",
"file": "string",
"identity": "string",
"server": "string"
}{
"forgotten": [
"string"
]
}[
{
"blob": "string",
"executable": "bool",
"name": "string",
"type": "string"
}
]{
"blobs": "number",
"branches": [
{
"changeset": "string",
"destination": "string",
"git_commit": "string",
"name": "string"
}
],
"commits": "number",
"default_branch": "string",
"lfs_pointers": "number",
"lossy_commits": "number",
"other_refs": [],
"skipped_paths": [],
"skipped_submodules": "number",
"tags": [
{
"changeset": "string",
"destination": "string",
"git_commit": "string",
"name": "string"
}
]
}[
{
"actor": "string",
"created_at": "number",
"error": "null",
"idempotency_key": "string",
"kind": "string",
"operation_id": "string",
"payload": {
"head": "string",
"proposal": "string",
"stream": "string",
"tokens": []
},
"request_hash": "string",
"result": {
"blobs": "number",
"changed_files": "number",
"changesets": "number",
"new_head": "string",
"previous_head": "null",
"status": "string",
"strategy": "string",
"tree_id": "string",
"version": "number"
},
"state": "string",
"stream": "null|string",
"updated_at": "number"
}
]{
"operation_id": "string",
"outcome": {
"changed_files": "number",
"new_head": "string",
"previous_head": "null",
"status": "string",
"strategy": "string",
"tree_id": "string",
"version": "number"
},
"state": "string"
}{
"operation_id": "string",
"outcome": {
"blockers": [
{
"code": "string",
"detail": {
"have": "number",
"kind": "string",
"required": "number",
"scope": "string"
},
"message": "string"
}
],
"candidate_changeset": "string",
"candidate_tree": "string",
"policy_version": "number",
"status": "string"
},
"state": "string"
}{
"changeset": "string",
"pin": "string"
}[
{
"changeset": "string",
"created_at": "number",
"name": "string",
"reason": "string"
}
]{
"explanation": [
{
"effect": "string",
"field": "string",
"text": "string"
}
],
"source": "string",
"version": "number"
}[
{
"created_at": "number",
"created_by": "string",
"doc": "string",
"doc_hash": "string",
"stream": "string",
"version": "number"
}
]{
"hash": "string",
"preset": "string",
"stream": "string",
"version": "number"
}[
{
"for": "string",
"name": "string",
"needs_ci_issuer": "bool"
}
]{
"explanation": [
{
"effect": "string",
"field": "string",
"text": "string"
}
],
"policy": {
"admins": [
"string"
],
"agent_autonomy": {
"allowed_paths": [],
"auto_integrate": "bool",
"max_files": "number"
},
"allowed_authors": [
"string"
],
"approvals": {
"approvers": [
"string"
],
"forbid_self_approval": "bool",
"min": "number",
"min_for_agents": "number"
},
"integrators": [
"string"
],
"max_changed_files": "number",
"protected_paths": [],
"require_provenance_for_agents": "bool",
"required_validations": [],
"trusted_issuers": []
},
"preset": "string"
}{
"created_at": "number",
"created_by": "string",
"doc": "string",
"doc_hash": "string",
"stream": "string",
"version": "number"
}{
"policy": {
"admins": [],
"agent_autonomy": {
"allowed_paths": [],
"auto_integrate": "bool",
"max_files": "number"
},
"allowed_authors": [],
"approvals": {
"approvers": [],
"forbid_self_approval": "bool",
"min": "number",
"min_for_agents": "number"
},
"integrators": [],
"max_changed_files": "number",
"protected_paths": [],
"require_provenance_for_agents": "bool",
"required_validations": [],
"trusted_issuers": []
},
"stream": "string",
"version": "number"
}{
"changeset": "string",
"collisions": [],
"executables_without_bit": [],
"hazards": [],
"ok": "bool",
"paths": "number",
"platform": "string",
"problems": [],
"symlinks_as_files": []
}{
"overlaps": []
}{
"algorithm": "string",
"base": "null",
"candidate_tree": "string",
"changed_files": [
"string"
],
"conflicts": [],
"notes": [],
"problem": "null",
"strategy": "string"
}{
"closed": "string"
}[
{
"author": "string",
"created_at": "number",
"description": "string",
"head": "string",
"id": "string",
"integrated_as": "null",
"state": "string",
"stream": "string",
"task_id": "null",
"title": "string",
"updated_at": "number"
}
]{
"body": "string",
"decision": "string",
"head": "string",
"id": "number",
"proposal": "string",
"reviewer": "string",
"timestamp": "number"
}{
"proposal": {
"author": "string",
"created_at": "number",
"description": "string",
"head": "string",
"id": "string",
"integrated_as": "null",
"state": "string",
"stream": "string",
"task_id": "null",
"title": "string",
"updated_at": "number"
},
"reviews": []
}{
"author": "string",
"created_at": "number",
"description": "string",
"head": "string",
"id": "string",
"integrated_as": "null",
"state": "string",
"stream": "string",
"task_id": "null",
"title": "string",
"updated_at": "number"
}{
"author": "string",
"created_at": "number",
"description": "string",
"head": "string",
"id": "string",
"integrated_as": "null",
"state": "string",
"stream": "string",
"task_id": "null",
"title": "string",
"updated_at": "number"
}{
"changeset": "string",
"record": "number"
}[
{
"agent": "string",
"error": "null",
"id": "number",
"record": {
"agent": "string",
"changeset": "string",
"checks_run": [
"string"
],
"created_at": "number",
"inputs": [],
"model": "string",
"parameters": {},
"prompt_digest": "null",
"rationale": "null",
"run_id": "null",
"schema": "string",
"task_id": "null"
},
"verified": "bool"
}
]{
"fetch": {
"blobs": "number",
"changesets": "number",
"head": "string",
"remote": "string",
"stream": "string",
"version": "number"
},
"workspace": "null"
}{
"objects_sent": "number",
"objects_stored": "number",
"proposal": {
"author": "string",
"created_at_ms": "number",
"description": "string",
"head": "string",
"id": "string",
"integrated_as": "string",
"state": "string",
"stream": "string",
"task_id": "string",
"title": "string",
"updated_at_ms": "number"
}
}{
"enqueued_at": "number",
"enqueued_by": "string",
"id": "number",
"outcome": "null",
"processed_at": "null",
"proposal": "string",
"state": "string",
"stream": "string"
}[
{
"enqueued_at": "number",
"enqueued_by": "string",
"id": "number",
"outcome": "null",
"processed_at": "null",
"proposal": "string",
"state": "string",
"stream": "string"
}
]{
"blocked": [],
"failed": [],
"integrated": [
"string"
],
"rejected": []
}{
"aborted": [],
"errors": [],
"resumed": [],
"waiting": []
}{
"changesets": "number"
}{
"repo": "string",
"token_env": "string",
"url": "string"
}{
"lines": [
{
"author": "string",
"boundary": "bool",
"changeset": "string",
"line": "number",
"original_line": "number",
"path": "string",
"summary": "string",
"text": "string",
"timestamp_ms": "number"
}
],
"path": "string",
"rev": "string",
"truncated": "bool",
"visited": "number"
}{
"author": "string",
"created_at_ms": "number",
"description": "string",
"head": "string",
"id": "string",
"integrated_as": "string",
"state": "string",
"stream": "string",
"task_id": "string",
"title": "string",
"updated_at_ms": "number"
}{
"next_page_token": "string",
"threads": [
{
"anchor": {
"base": "string",
"head": "string",
"line": "number",
"path": "string",
"side": "string",
"text": "string"
},
"author": "string",
"body": "string",
"created_at_ms": "number",
"id": "string",
"proposal": "string",
"resolved": "bool",
"updated_at_ms": "number",
"version": "number"
}
]
}{
"comments": [
{
"author": "string",
"body": "string",
"created_at_ms": "number",
"id": "number",
"thread_id": "string"
}
],
"next_page_token": "string"
}{
"author": "string",
"body": "string",
"created_at_ms": "number",
"id": "number",
"thread_id": "string"
}{
"anchor": {
"base": "string",
"head": "string",
"line": "number",
"path": "string",
"side": "string",
"text": "string"
},
"author": "string",
"body": "string",
"created_at_ms": "number",
"id": "string",
"proposal": "string",
"resolved": "bool",
"updated_at_ms": "number",
"version": "number"
}{
"anchor": {
"base": "string",
"head": "string",
"line": "number",
"path": "string",
"side": "string",
"text": "string"
},
"author": "string",
"body": "string",
"created_at_ms": "number",
"id": "string",
"proposal": "string",
"resolved": "bool",
"updated_at_ms": "number",
"version": "number"
}{
"events": [
{
"payload": {
"actor": "string",
"details": {
"after": {
"description": "string",
"scope": [],
"title": "string"
},
"before": {
"description": "string",
"scope": [],
"title": "string"
},
"blockers": [
{
"code": "string",
"detail": {
"have": "number",
"kind": "string",
"required": "number",
"scope": "string"
},
"message": "string"
}
],
"candidate_changeset": "string",
"candidate_tree": "string",
"changesets": "number",
"decision": "string",
"default_stream": "string",
"hash": "string",
"head": "string",
"key_id": "string",
"new_head": "string",
"old_head": "null",
"operation_id": "string",
"operator": "bool",
"policy_version": "number",
"proposal": "string",
"resolved": "bool",
"role": "string",
"status": "string",
"stream": "string",
"thread_id": "string",
"title": "string",
"tree": "string",
"version": "number"
},
"target": "string"
},
"repo": "string",
"seq": "number",
"timestamp_ms": "number",
"topic": "string"
}
],
"latest_seq": "number"
}{
"candidate_tree": "string",
"explanations": [
{
"code": "string",
"fixes": [
{
"command": "string",
"note": "string"
}
],
"kind": "string",
"summary": "string",
"why": "string"
}
],
"next": [
"string"
],
"policy_version": "number",
"proposal": "string",
"standing": "string",
"state": "string",
"stream": "string",
"summary": "string",
"title": "string"
}{
"operation_id": "string",
"outcome": {
"base": "string",
"blockers": [],
"candidate_changeset": "string",
"candidate_tree": "string",
"changed_files": "number",
"conflicts": [],
"new_head": "string",
"policy_version": "number",
"previous_head": "string",
"reason": "string",
"status": "string",
"strategy": "string",
"tree_id": "string",
"version": "number"
},
"state": "string"
}{
"operation_id": "string",
"outcome": {
"base": "string",
"blockers": [
{
"code": "string",
"detail": {
"have": "number",
"kind": "string",
"required": "number",
"scope": "string"
},
"message": "string"
}
],
"candidate_changeset": "string",
"candidate_tree": "string",
"changed_files": "number",
"conflicts": [],
"new_head": "string",
"policy_version": "number",
"previous_head": "string",
"reason": "string",
"status": "string",
"strategy": "string",
"tree_id": "string",
"version": "number"
},
"state": "string"
}{
"origin": {
"repo": "string",
"token_env": "string",
"url": "string"
}
}{
"changesets": [
{
"author": "string",
"generation": "number",
"id": "string",
"message": "string",
"namespace": "string",
"ops": [],
"parents": [],
"published": "bool",
"timestamp_ms": "number"
}
],
"next_page_token": "string"
}{
"created_at_ms": "number",
"created_by": "string",
"doc_hash": "string",
"document": "string",
"stream": "string",
"version": "number"
}{
"algorithm": "string",
"base": "string",
"blockers": [
{
"code": "string",
"detail": {
"have": "number",
"kind": "string",
"required": "number",
"scope": "string"
},
"message": "string"
}
],
"candidate_tree": "string",
"changed_files": [
"string"
],
"conflicts": [],
"jobs": [],
"policy_version": "number",
"problem": "string",
"proposal": "string",
"strategy": "string",
"validations": []
}{
"proposal": {
"author": "string",
"created_at_ms": "number",
"description": "string",
"head": "string",
"id": "string",
"integrated_as": "string",
"state": "string",
"stream": "string",
"task_id": "string",
"title": "string",
"updated_at_ms": "number"
},
"reviews": []
}{
"next_page_token": "string",
"proposals": [
{
"author": "string",
"created_at_ms": "number",
"description": "string",
"head": "string",
"id": "string",
"integrated_as": "string",
"state": "string",
"stream": "string",
"task_id": "string",
"title": "string",
"updated_at_ms": "number"
}
]
}{
"removed": "string"
}{
"body": "string",
"decision": "string",
"head": "string",
"id": "number",
"proposal": "string",
"reviewer": "string",
"timestamp_ms": "number"
}{
"streams": [
{
"created_at_ms": "number",
"created_by": "string",
"head": "string",
"name": "string",
"policy_version": "number",
"version": "number"
}
]
}{
"credential_id": "string",
"expires_at_ms": "number",
"identity": "string",
"kind": "string",
"method": "string",
"roles": [
"string"
],
"scope": {
"operations": [],
"repos": [],
"run_id": "string",
"streams": []
}
}{
"author": "string",
"changes": [
{
"op": "string",
"path": "string"
}
],
"id": "string",
"message": "string",
"parents": [
"string"
],
"provenance_records": "number",
"published": "bool",
"timestamp": "number"
}{
"changeset": "null|string"
}{
"base": "null|string",
"changes": [
{
"kind": "string",
"path": "string"
}
],
"head": "null|string",
"merging": "bool",
"stream": "string",
"summary": {
"ahead": "number",
"behind": "number",
"identity": "string",
"identity_source": "string",
"leases": {
"active": "number",
"mine": [
{
"exclusive": "bool",
"expires_at": "number",
"id": "string",
"scope": "string",
"token": "number"
}
]
},
"next": "string",
"proposals": {
"mine": [
{
"author": "string",
"id": "string",
"is_workspace_head": "bool",
"stream": "string",
"title": "string"
}
],
"open": "number"
},
"relation": "string",
"remotes": [],
"stream_head": "null|string",
"stream_version": "number",
"task": {
"id": "string",
"state": "string",
"title": "string"
},
"unpublished": "number"
},
"workspace": "string"
}{
"base": "string",
"changes": [],
"head": "string",
"merging": "bool",
"stream": "string",
"summary": {
"ahead": "number",
"behind": "number",
"identity": "string",
"identity_source": "string",
"leases": {
"active": "number",
"mine": []
},
"next": "null",
"proposals": {
"mine": [],
"open": "number"
},
"relation": "string",
"remotes": [
{
"ahead": "number",
"behind": "number",
"fetched_head": "string",
"name": "string",
"repo": "string",
"server_head": "string",
"state": "string",
"stream": "string",
"url": "string"
}
],
"stream_head": "string",
"stream_version": "number",
"task": "null",
"unpublished": "number"
},
"workspace": "string"
}{
"created_at": "number",
"created_by": "string",
"name": "string",
"state": {
"head": "string",
"version": "number"
}
}[
{
"created_at": "number",
"created_by": "string",
"name": "string",
"state": {
"head": "string",
"version": "number"
}
}
][
{
"actor": "string",
"new_head": "string",
"old_head": "null|string",
"operation_id": "string",
"reason": "string",
"seq": "number",
"stream": "string",
"timestamp": "number",
"version": "number"
}
]{
"policy_version": "number",
"stream": {
"created_at": "number",
"created_by": "string",
"name": "string",
"state": {
"head": "string",
"version": "number"
}
}
}{
"conflicts": [
{
"kind": "string",
"message": "string",
"path": "string"
}
],
"id": "string",
"status": "string",
"to": "string"
}{
"attempts_started": "number",
"created_at": "number",
"created_by": "string",
"description": "string",
"id": "string",
"max_attempts": "number",
"owner": "null",
"scope": [],
"source_run": "null",
"source_task": "null",
"state": "string",
"title": "string",
"updated_at": "number"
}{
"state": "string",
"task": "string"
}{
"attempts_started": "number",
"created_at": "number",
"created_by": "string",
"description": "string",
"id": "string",
"max_attempts": "number",
"owner": "null",
"scope": [
"string"
],
"source_run": "null",
"source_task": "null",
"state": "string",
"title": "string",
"updated_at": "number"
}{
"attempts_started": "number",
"created_at": "number",
"created_by": "string",
"description": "string",
"id": "string",
"max_attempts": "number",
"owner": "null",
"scope": [],
"source_run": "string",
"source_task": "string",
"state": "string",
"title": "string",
"updated_at": "number"
}{
"depends_on": "string",
"task": "string"
}{
"state": "string",
"task": "string"
}{
"attempts_started": "number",
"created_at": "number",
"created_by": "string",
"description": "string",
"id": "string",
"max_attempts": "number",
"owner": "null",
"scope": [
"string"
],
"source_run": "null",
"source_task": "null",
"state": "string",
"title": "string",
"updated_at": "number"
}{
"attempts_started": "number",
"created_at_ms": "number",
"created_by": "string",
"depends_on": [],
"description": "string",
"id": "string",
"max_attempts": "number",
"owner": "string",
"ready": "bool",
"scope": [],
"source_run": "string",
"source_task": "string",
"state": "string",
"title": "string",
"updated_at_ms": "number"
}[
{
"attempts_started": "number",
"created_at": "number",
"created_by": "string",
"description": "string",
"id": "string",
"max_attempts": "number",
"owner": "null",
"scope": [
"string"
],
"source_run": "null",
"source_task": "null",
"state": "string",
"title": "string",
"updated_at": "number"
}
][
{
"attempts_started": "number",
"created_at": "number",
"created_by": "string",
"description": "string",
"id": "string",
"max_attempts": "number",
"owner": "null",
"scope": [
"string"
],
"source_run": "null",
"source_task": "null",
"state": "string",
"title": "string",
"updated_at": "number"
}
][
{
"action": "string",
"actor": "string",
"details": "string",
"hash": "string",
"prev_hash": "string",
"seq": "number",
"target": "string",
"timestamp": "number"
}
]{
"unpinned": "string"
}{
"identity": "string",
"key_file": "string",
"name": "string",
"public_key": "string"
}[
{
"check_name": "string",
"environment_digest": "string",
"id": "string",
"issued_at": "number",
"issuer": "string",
"payload": {
"check": "string",
"environment_digest": "string",
"id": "string",
"issued_at": "number",
"issuer": "string",
"policy_version": "number",
"public_key": "string",
"result": "string",
"signature": "string",
"tree_id": "string"
},
"policy_version": "number",
"public_key": "string",
"result": "string",
"signature": "string",
"tree_id": "string"
}
]{
"check": "string",
"environment_digest": "string",
"id": "string",
"issued_at": "number",
"issuer": "string",
"policy_version": "number",
"public_key": "string",
"result": "string",
"signature": "string",
"tree_id": "string"
}{
"audit_entries": "number",
"audit_head": "string",
"changesets_checked": "number",
"heads_recomputed": "number",
"issues": [],
"objects_checked": "number"
}{
"arch": "string",
"json_schema": "number",
"os": "string",
"protocol": "string",
"version": "string"
}{
"base": "string",
"created_at": "number",
"head": "string",
"name": "string",
"owner": "string",
"stream": "string",
"updated_at": "number"
}[
{
"base": "null|string",
"created_at": "number",
"head": "string",
"name": "string",
"owner": "string",
"stream": "string",
"updated_at": "number"
}
]{
"removed": "string"
}