Skip to content

List files in the workspace snapshot (stopped)

GET
/workspaces/{id}/snapshot/files
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).

id
required
string

OK

Media type application/json
object
entries
required
Array<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
path
required
string
size
required
integer format: int64
is_dir
required
boolean
mtime
required

Unix-epoch seconds with fractional milliseconds.

number
readonly
required
boolean
mime_type
string
Example generated
{
"entries": [
{
"path": "example",
"size": 1,
"is_dir": true,
"mtime": 1,
"readonly": true,
"mime_type": "example"
}
]
}

Workspace not found or no snapshot exists.

Media type application/json
object
error
required
object
code
required

Closed-enum slug (e.g. permission_denied, validation_error, workspace_not_found)

string
message
required

Human-readable summary

string
request_id
required

Server-generated request id for correlating logs

string
details

Optional structured context. Validation errors land at details.fields as a per-field map.

object
key
additional properties
any
Example
{
"error": {
"code": "permission_denied",
"message": "caller lacks required scope",
"request_id": "7f3a9c2e"
}
}