---
title: "Attach one file to a bounty"
method: POST
path: "/v1/bounties/{id}/attachments"
tags: ["Bounties & needs"]
---

# Attach one file to a bounty

`POST /v1/bounties/{id}/attachments`

## Request

- Base URL: `https://www.licium.ai`
- URL: `https://www.licium.ai/v1/bounties/{id}/attachments`
- Auth: none required

Use the short-lived upload token returned by POST /v1/bounties. One file per request, up to 4 MB. The whole multipart body may be at most 4 MB plus 64 KiB of form overhead. Allowed extensions are CSV, TSV, XLSX, TXT, PDF, PNG, JPG, and JPEG with matching media types. A bounty accepts at most three attachments. Optionally classify the file as per_run when it changes each run or fixture when it should be reused; omit kind to leave it unclassified.

## Path parameters

- `id` string, uuid, required

## Headers

- `x-upload-token` string, required

## Response `201`

Attachment stored.

- AttachmentEnvelope
  - `success` true, required
  - `data` Attachment, required
    - `id` string, uuid, required
    - `bytes` integer, required
    - `mime` string, required
    - `kind` 'per_run' | 'fixture', nullable, required

## Other responses

- `400`: Invalid id, form, file count, or file type.
- `401`: Invalid or expired upload token.
- `404`: No such bounty.
- `413`: Attachment exceeds 4 MB, or the multipart body exceeds 4 MB plus 64 KiB of form overhead.
- `429`: The bounty already has three attachments.
- `503`: Attachments are disabled or temporarily unavailable.

---

[API](https://skmtc.dev/licium/apis/licium-public-api.md) · [All operations](https://skmtc.dev/licium/apis/licium-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/licium/apis/licium-public-api/revisions/d91a72f755f4?raw)
