Get a link to upload a large file
upload_linkA link to upload one file straight into the account's storage, for a file too large to send as base64 (add_attachment stops at 32 MB) or one that should not pass through the conversation. path is where it goes, as the shell shows it: /attachments/<workbook>/<name> (up to 5 GB; attached once the upload finishes) or a path in a connected drive, /googledrive/<folders>/<name> or /dropbox/<folders>/<name> (up to 100 MB; then call upload_done). Any other path is refused. Send the file's bytes with an HTTP PUT to put_url, e.g. curl -T file put_url; the link lasts an hour. With no shell to PUT from, give the person page_url: they sign in there and drop the file, and it lands at the same path. Nothing is billed.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | Where the file goes: /attachments/<workbook>/<name>, /googledrive/<folders>/<name> or /dropbox/<folders>/<name>. | |
| size | No | The file's size in bytes, when known: one over the limit is refused before uploading. | |
| context | No | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| llm_model | No | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. |