attachment_file_ids. The platform materializes the file in the Expert’s sandbox (/home/user/uploads/), where the Expert can read / grep it — including PDF, Word, and Excel.
Why ids and not URLs: the platform never fetches a link you hand it. That means (1) you never have to publish a readable link to a private document, and (2) the platform cannot be used as a proxy to reach your internal network. The read URL is minted by the platform at invoke time and only travels inside the platform.
Quick Start
One call with the SDK (which wraps the three steps below):Upload Flow
Without the SDK, uploading is three steps: get an upload ticket, PUT the bytes to storage, register the object. The bytes go straight to object storage rather than through the platform’s API pods, so large files are not bounded by a request body limit.1. Get an Upload Ticket
string
required
File name. Must not contain path separators (
/, \); max 255 characters.string
required
MIME type, e.g.
application/pdf. Must be on the platform’s allowlist.integer
required
Size in bytes, max 100 MB. Used here for a fail-fast storage quota check.
Response
2. PUT the Bytes to Storage
Send aPUT to upload_url with the file bytes as the body.
3. Register the File
string
required
The
file_key returned in step 1.string
File name. Defaults to the name embedded in
file_key.string
MIME type. Defaults to what object storage recorded.
Response
Delete a File
Limits
Error Codes
Next Steps
Run Expert
Pass the file to an Expert via
attachment_file_idsPython SDK
Complete Python SDK guide

