---
name: "files_upload_link"
area: "files"
title: "Get an upload link"
price: "free"
method: "POST"
url: "https://api.conecto.chat/v1/tools/files_upload_link"
mcp_server: "https://api.conecto.chat/mcp/files"
auth: "Authorization: Bearer <conecto_sk_ key>"
docs_url: "https://conecto.chat/tools/files/files_upload_link"
---

# Get an upload link (`files_upload_link`)

A one-time link to upload one file of up to 25 MB, to use yourself or hand to a person.

A one-time link to upload one file of up to 25 MB as the raw request body, e.g. `curl -T report.pdf "<upload_url>"` (PUT). Works for an hour. Free to ask for; the upload itself costs $0.001 when it arrives and replies with the file and its download link. Hand it to a person to send you a document: files.added tells you when it arrives, with its text once read.

Price: Free. A call that fails costs nothing.

## Use it when

A file is too big to send inline, or a person should send the business a document.

## Say this to your agent

> Send Rachel a link so she can upload the insurance form for her crash repair.

## Inputs

| Name | Type | Required | Description | Allowed values | Default |
|---|---|---|---|---|---|
| `name` | string | yes | 1 to 200 characters. |  |  |
| `content_type` | string | no | Up to 120 characters. |  |  |

## Example

Written for Halverson Cycle & Repair, a bike shop with a repair workshop in Portland, Oregon.

MCP: call `files_upload_link` on the MCP server `https://api.conecto.chat/mcp/files` with these arguments:

```json
{
  "name": "Insurance form, Rachel Kim.pdf",
  "content_type": "application/pdf"
}
```

REST:

```bash
curl https://api.conecto.chat/v1/tools/files_upload_link \
  -H "Authorization: Bearer $CONECTO_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name": "Insurance form, Rachel Kim.pdf", "content_type": "application/pdf"}'
```

## Response

```json
{
  "call_id": "5f0c8a2e-3b7d-4c1e-9a64-2d8e1f7b0c93",
  "tool": "files_upload_link",
  "status": "succeeded",
  "replayed": false,
  "cost_usd": "$0.00",
  "balance_usd": "$19.75",
  "result": {
    "upload_url": "https://api.conecto.chat/v1/files/upload/.eJwlzUsOwiAUheGtkDsGLag8uoPGmTu4XCASW0r6iCbGvUt0cgZ_vuS84Qm95PD4bYIePCnnUUWBWgdx9kEKe1JBONspE73T7kLAoTQ6lHVfsFBkaV4mzm5I9ziya54ONaSGtoaw1jETbnkux3-Nr9rejFOdMdrKzxd4cCXn:1xHMKf:EA40cTWX4K-dO5DqYcaNi0VRKnY9dt83tc37jFX2AjQ",
    "method": "PUT",
    "file_id": "bc29ba2e-a66d-4bd1-832d-98027eb9695c",
    "expires_in_minutes": 60,
    "how": "curl -T <path-to-file> \"https://api.conecto.chat/v1/files/upload/.eJwlzUsOwiAUheGtkDsGLag8uoPGmTu4XCASW0r6iCbGvUt0cgZ_vuS84Qm95PD4bYIePCnnUUWBWgdx9kEKe1JBONspE73T7kLAoTQ6lHVfsFBkaV4mzm5I9ziya54ONaSGtoaw1jETbnkux3-Nr9rejFOdMdrKzxd4cCXn:1xHMKf:EA40cTWX4K-dO5DqYcaNi0VRKnY9dt83tc37jFX2AjQ\"",
    "max_size": "25 MB"
  }
}
```

`result`: upload_url and method (PUT), the file_id the file will have, how many minutes the link works, and how to use it.

## Errors

This tool has no errors of its own.

The refusals every tool can give (401 key, 402 balance, 429 limits) are on the errors page: https://conecto.chat/docs/errors.md

## Related

- [files_upload](https://conecto.chat/tools/files/files_upload.md): Stores a file in the business's file store from its bytes, its text or a public link, with a download link. $0.001 a call.
- [files_list](https://conecto.chat/tools/files/files_list.md): The business's files, newest first, filtered by name, words inside, tags, type, correspondent, document date or fields. Free up to 1,000,000 reads a month.
- [files_get](https://conecto.chat/tools/files/files_get.md): One file's details and a fresh download link, with the text of a small text file if asked. Free up to 1,000,000 reads a month.
- [files_read_text](https://conecto.chat/tools/files/files_read_text.md): The words in a file as Conecto read them: text files, PDFs, office files, HTML, and scans once read with OCR. Free up to 1,000,000 reads a month.
- [files_edit](https://conecto.chat/tools/files/files_edit.md): Says what one file is, or up to 100 at once: title, notes, document date, correspondent, type, tags and fields. $0.005 per file changed.
- [files_define](https://conecto.chat/tools/files/files_define.md): Adds, renames or deletes a tag, a document type, a custom field or a correspondent to file things with. $0.001 a call.
- [files_definitions](https://conecto.chat/tools/files/files_definitions.md): The tags, document types, custom fields and correspondents the business files with, each with how many files use it, and the OCR settings. Free up to 1,000,000 reads a month.
- [files_ocr](https://conecto.chat/tools/files/files_ocr.md): Reads the words in a scan with OCR: an image, or the pages of a PDF without text; the text is kept. $0.005 per page read.
- [files_ocr_settings](https://conecto.chat/tools/files/files_ocr_settings.md): Sets whether new scans are read with OCR as they arrive, and the languages OCR reads in. $0.001 a call.
- [files_delete](https://conecto.chat/tools/files/files_delete.md): Deletes a file for good; every download link to it stops working. Free.
- [files_add_storage](https://conecto.chat/tools/files/files_add_storage.md): Rents 10 GB more file storage, renewed monthly from the balance; this call pays the first month. $1.00 a call.
- [files_remove_storage](https://conecto.chat/tools/files/files_remove_storage.md): Stops renting one 10 GB block of storage, if the files still fit. Free.
