Read the files the shell and bash helpers left in their sandbox.
The opendunes:shell and opendunes:bash helpers run commands in a sandbox. The sandbox's id — its container — comes back in the helper's results, and the files the commands left in it are read here.
| Method | Path | Does |
|---|---|---|
GET | /v1/containers/{id}/files | lists the files, in path order |
GET | /v1/containers/{id}/files/{file} | one file's details |
GET | /v1/containers/{id}/files/{file}/content | its bytes |
All three are free and take an API key: Authorization: Bearer $OPENDUNES_API_KEY.
curl "https://opendunes.com/v1/containers/sess_abc123/files?limit=20" \
-H "Authorization: Bearer $OPENDUNES_API_KEY"{
"object": "list",
"data": [
{
"id": "cfile_b3V0L3JlcG9ydC5jc3Y",
"object": "container.file",
"container_id": "sess_abc123",
"path": "out/report.csv",
"bytes": 123,
"created_at": 1755640000,
"source": "assistant"
}
],
"first_id": "cfile_b3V0L3JlcG9ydC5jc3Y",
"last_id": "cfile_b3V0L3JlcG9ydC5jc3Y",
"has_more": false
}limit is 1 to 100. For the next page pass after, the previous page's last_id.
GET /v1/containers/{id}/files/{file} answers one container.file object as above. …/content answers its bytes, with the file's content type.
A sandbox belongs to the account whose answer named it. Another account reading it gets a 404, and a request naming another account's sandbox gets a 403. A container no answer gave you is a 404.