---
title: "Store a new attachment."
method: POST
path: "/v1/attachments"
tags: ["attachments"]
---

# Store a new attachment.

`POST /v1/attachments`

Creates a new attachment. The data required can be submitted as a JSON body or as a list of parameters. You cannot use this endpoint to upload the actual file data (see below). This endpoint only creates the attachment object.

## Headers

- `X-Trace-Id` string, uuid

## Request body

- AttachmentStore
  - `filename` string, string, required
  - `attachable_type` 'Account' | 'Budget' | 'Bill' | 'TransactionJournal' | 'PiggyBank' | 'Tag', string, required — The object class to which the attachment must be linked.
  - `attachable_id` string, string, required — ID of the model this attachment is linked to.
  - `title` string, string
  - `notes` string, string, nullable

## Response `200`

New attachment stored, result in response.

## Other responses

- `400` — Bad request
- `401` — Unauthenticated
- `404` — Page not found
- `422` — Validation error. The body will have the exact details.
- `500` — Internal exception

---

[API](https://skmtc.dev/firefly-iii/apis/firefly-iii-api-develop.md) · [All operations](https://skmtc.dev/firefly-iii/apis/firefly-iii-api-develop/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/firefly-iii/firefly-iii-api-develop/revisions/8a1f6472e04b/schema)
