Part of Stem. This page defines the ListDisclosures method of the sync RPC specification. It answers "who already holds this" after a revocation.
The formal schema is attached as the schemaDefinition of this page: a struct {key, input, output} with key pinned to ListDisclosures.
Reads the disclosure ledger: which blobs this peer has served to which peers and on what basis.
Input
field | type | required | meaning |
|---|---|---|---|
| no | Only disclosures of this blob. | |
| no | Only disclosures of blobs in this scope. | |
| no | Only disclosures to this peer. | |
| no | Pagination. |
Output
field | type | required | meaning |
|---|---|---|---|
| list of data/disclosure | yes | Matching disclosures, newest first. |
| string or null | yes | Token for the next page, or null. |
Rules
Filters combine with AND. scope matches disclosures of blobs in the scope set as computed now.
Results are newest first. Pagination uses page.
The ledger is local-only state and is never synced or served to peers.
Retention of ledger rows is a local setting; the default keeps them for as long as the blob is held.
Today (HM24)
No equivalent. HM24 records nothing about what Bitswap served.
Example
{"key": "ListDisclosures", "input": {"blob": {"/": "bafy…13"}, "page": {"pageSize": 20}}}{"disclosures": [
{"blob": {"/": "bafy…13"}, "peer": "12D3KooWAb…", "ts": 1759910461000, "basis": {"kind": "grant", "account": {"/": {"bytes": "7QEC44…"}}, "grant": {"/": "bafy…g1"}}},
{"blob": {"/": "bafy…13"}, "peer": "12D3KooWSite…", "ts": 1759910402000, "basis": {"kind": "site", "space": {"/": {"bytes": "7QEAq1…"}}, "grant": {"/": "bafy…s0"}}}
], "nextPageToken": null}See also
Do you like what you are reading? Subscribe to receive updates.
Unsubscribe anytime