> ## Documentation Index
> Fetch the complete documentation index at: https://docs.getspine.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# File uploads

> Attach documents and images to a run as agent context.

Attach files to a run request using the `files` field on [`POST /v1/run`](/api-reference/endpoints/create-run). Files ride along as `multipart/form-data` and become blocks on the resulting canvas.

## Supported file types

**Images** (create an `image-block`): PNG, JPEG, GIF, WEBP, SVG.

**Documents** (create a `file-block`, indexed for agent access): PDF, DOCX, XLSX, CSV, TXT, MD, YAML, JSON, ZIP.

## Example

```bash theme={"theme":{"light":"github-light","dark":"tokyo-night"}}
curl -X POST https://api.getspine.ai/v1/run \
  -H "X-API-KEY: sk_spine_..." \
  -F "prompt=Summarize this sales data and create a chart" \
  -F "template=report" \
  -F "files=@sales-data.csv;type=text/csv" \
  -F "files=@revenue-chart.png;type=image/png"
```

## Notes

* Multiple files can be attached in a single request — just repeat `-F "files=@..."`.
* Image files show up as image-blocks on the canvas and are available to downstream agents by visual reference.
* Document files are indexed at ingest time so every agent in the run can query them.
* Maximum file size and total attachment limits apply per plan — see [Pricing](/app/team/pricing).
