Browse the docs
Developers / Docs / Jobs & files
Upload file
Imports an image, video or audio file from a public https URL (up to 100 MB) so other tools can use it as fileId. REST callers can also send the file itself as multipart/form-data (field "file").
Paste it into any AI assistant. The shortcuts open with the prompt typed in; nothing is sent until you press enter.
At a glance
- REST
POST https://api.clippie.ai/v1/files
- MCP tool
upload_file
- Scope
create
- Cost
- Spends nothing. Needs the
createscope.
- Spends nothing. Needs the
- Upload
- Also takes
multipart/form-datawith the file infile, up to 100 MB.
- Also takes
Parameters
url- In:
- body
- Type:
- string (URL)
- Required:
- No
- Description:
- Public https URL of the file to import. Up to 2048 chars.
name- In:
- body
- Type:
- string
- Required:
- No
- Description:
- File name to keep, e.g. "intro.mp4". Up to 120 chars.
Example
curl
curl https://api.clippie.ai/v1/files \
-H "Authorization: Bearer $CLIPPIE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com/photo.jpg",
"name": "photo.jpg"
}'upload-file.mjs
const auth = { Authorization: `Bearer ${process.env.CLIPPIE_API_KEY}` };
const res = await fetch('https://api.clippie.ai/v1/files', {
method: 'POST',
headers: { ...auth, 'Content-Type': 'application/json' },
body: JSON.stringify({
"url": "https://example.com/photo.jpg",
"name": "photo.jpg"
}),
});
if (!res.ok) throw new Error((await res.json()).error.message);
console.log(await res.json());Response
200 with JSON. The full response schema is in the OpenAPI spec.
From an MCP client
Your AI calls upload_file with the same fields as JSON arguments. See MCP server to connect one.
tools/call
{
"name": "upload_file",
"arguments": {
"url": "https://example.com/photo.jpg",
"name": "photo.jpg"
}
}