---
title: "Keep a file in the archive"
method: POST
path: "/archive/files"
tags: ["archive"]
---

# Keep a file in the archive

`POST /archive/files`

## Request

- Base URL: `https://localhost:4410/api/v1`
- URL: `https://localhost:4410/api/v1/archive/files`
- Auth: HTTP bearer

Keeps a file exactly as it came, with its SHA-256, in the Pulley archive (any file a provider exported), among cap table imports (a cap table export to import), or among other securities (a document for a security that isn't a SAFE, kept outside the register and put in round_id's binder). Pass the file as file_name and content_base64, up to 25 MB, or an uploaded document_id. A file already in the archive is refused. A spreadsheet's columns come back for safe.import.table.

## Request body

- object
  - `folder` 'pulley' | 'other_securities' | 'cap_table', required
  - `file_name` string
  - `content_base64` string
  - `document_id` string
  - `label` string, nullable
  - `round_id` string, nullable

## Response `200`

The result.

- object
  - `file` object, required
    - `id` string, required
    - `folder` 'pulley' | 'other_securities' | 'cap_table', required
    - `folder_name` string, required
    - `name` string, required
    - `sha256` string, required
    - `size` integer, required
    - `content_type` string, required
    - `label` string, nullable, required
    - `round_id` string, nullable, required
    - `document_id` string, nullable, required
    - `added_by` string, required
    - `created_at` string, date-time, required
  - `table` object, nullable, required
    - `columns` string[], required
    - `rows` integer, required

## Other responses

- `default`: An RFC 9457 problem.

---

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