Create Asset
Persist a file to the platform. v1: PNG images only, base64 in the JSON body, 10 MiB cap. The primary caller is the in-sandbox `agent asset upload` CLI (an agent persisting a screenshot to link on a PR), but all credential types work. Returns the org-membership-gated dashboard URL so callers never hard-code URL shapes.
Persist a file to the platform.
v1: PNG images only, base64 in the JSON body, 10 MiB cap. The
primary caller is the in-sandbox agent asset upload CLI (an
agent persisting a screenshot to link on a PR), but all
credential types work. Returns the org-membership-gated
dashboard URL so callers never hard-code URL shapes.
Authorization
HTTPBearer In: header
Header Parameters
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Upload a file as an asset owned by the calling account.
Response Body
application/json
application/json
curl -X POST "https://example.com/v1/assets" \ -H "Content-Type: application/json" \ -d '{ "content_type": "string", "data_b64": "string", "filename": "string" }'{ "asset": { "agent_session_id": "string", "content_type": "string", "created_at": "2019-08-24T14:15:22Z", "filename": "string", "id": "string", "size_bytes": 0 }, "url": "string"}List Assets
List the customer's assets, newest first. Metadata only — download URLs are minted per explicit GET, not per row. agent_session_id scopes the list to one run's uploads.
Get Asset
Return one asset's metadata, its gated dashboard URL, and a short-lived presigned `download_url`. To fetch the bytes locally, call this and then GET download_url immediately — the JSON API never carries the file. The CLI's `agent asset get` wraps exactly that two-step.