One document as its workspace lists it: identity, where it sits among its siblings, its title and kind, and whether it is in the trash. Listing a workspace opens none of its documents.
API reference sections
Schema
DocumentEntry
Type object
Shape
| Field | Type | Description |
|---|---|---|
| idrequired | DocumentId | DocumentId - a client-minted v4 UUID, hyphenated and lowercase. Immutable, and never derived from a name or a path. |
| parent | DocumentId or null | |
| ordinalrequired | integer (uint32, >= 0) | Position among siblings. Data, not list position, so a reorder is a field change rather than a structural rewrite. |
| titlerequired | string | |
| kindrequired | string | The application's own kind - "page", "task-list", whatever it defines. A stable token, and the store never interprets it. |
| mime | string or null | MIME type for opaque file entries. Mirrored into the manifest so a listing can choose an icon without opening the document snapshot. |
| note | DocumentId or null | The note attached to a file, as its document id. |
| trashed_at | Timestamp or null | When this document was put in the trash, if it was. Deleting a document is a move, not a delete ([ADR-69](../../../docs/decisions/ADR-051-075.md#adr-69--trashing-a-document-is-a-move-into-a-hidden-library-node-and-nothing-ever-purges-it)): losing content is the one unrecoverable bug, so Move to trash sets this and nothing else. The entry stays, its bytes stay, and it is absent from a listing only because whoever draws the listing filters on this field. A timestamp rather than a
|
| trashed_by | string or null | A self-declared display label for whoever binned it - "Steven", an email, whatever the profile says. A label, not an identity. The store does not resolve it, compare it, or believe it: it exists so a Trash listing can say who without the window having to look up a profile that may belong to another machine. Anything that needed to trust this would need a |
{
"id": "00000000-0000-4000-8000-000000000000",
"parent": "00000000-0000-4000-8000-000000000000",
"ordinal": 0,
"title": "string",
"kind": "string",
"mime": "string",
"note": "00000000-0000-4000-8000-000000000000",
"trashed_at": 0,
"trashed_by": "string"
}The contract has no example values, so example bodies are generated from each schema: every field is shown with a placeholder of its type.
Used by
Generated from contract version 1. Last updated .
