List files in the workspace snapshot (stopped)
const url = 'https://your-org.evershell.ai/v1/workspaces/example/snapshot/files';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://your-org.evershell.ai/v1/workspaces/example/snapshot/files \ --header 'Authorization: Bearer <token>'Permissions: workspace:read or workspace:read:own
(creator-match on :own).
Reads file metadata from the snapshot tar without unpacking.
Available only for workspaces that have been stopped at
least once (the snapshot is what POST /stop creates).
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”Responses
Section titled “ Responses ”OK
object
A single entry in the workspace sandbox or snapshot tree.
Shape matches the agent’s FileEntry so the same renderer
works on both live (/sandbox/files) and stopped
(/snapshot/files) sources.
object
Unix-epoch seconds with fractional milliseconds.
Example generated
{ "entries": [ { "path": "example", "size": 1, "is_dir": true, "mtime": 1, "readonly": true, "mime_type": "example" } ]}Workspace not found or no snapshot exists.
object
object
Closed-enum slug (e.g. permission_denied, validation_error, workspace_not_found)
Human-readable summary
Server-generated request id for correlating logs
Optional structured context. Validation errors land at
details.fields as a per-field map.
object
Example
{ "error": { "code": "permission_denied", "message": "caller lacks required scope", "request_id": "7f3a9c2e" }}