POST /revisions/:id/data/query (Command: list_session_objects)
Request Body
Response
Each entry carries its
alias, the storage updated_at timestamp, and size in bytes. Objects of type
"thread" and "graph" appear here like any other object (their envelopes only — items and elements live in
separate stores).
updated_at is the one timestamp on this API written by object storage rather than by the platform, so it is
the only one spelled with a +00:00 offset and without sub-second precision. The same object’s envelope
carries its own updated_at in the …Z form every other endpoint uses; the two describe the same write.
Aliases are paths. An alias is a /-separated path (e.g. missions/a1b2c3/graph); use prefix to scope a
subtree and delimiter: "/" to browse one level as folders. See
Session Objects for the full alias grammar.
Pagination. Pass the response cursor back as the request cursor to fetch the next page; stop when cursor
is null. The cursor is opaque — send it back verbatim and keep prefix/delimiter unchanged. An invalid or
expired cursor returns 400 invalid_cursor. This is the same cursor + limit contract used by every list_*
command (session objects, graph elements, thread items, session events, execution events).

