# Platform API for Files

> Give a file an address a task takes, read it, or delete it. Discover what a task's input may reference: the same item shape for every kind, and the address it returns is exactly the string a task accepts.

Give a file an address a task takes, read it, or delete it. Discover what a task's input may reference: the same item shape for every kind, and the address it returns is exactly the string a task accepts.

## Available operations

- [Upload a file](https://docs.refabric.com/api-reference/platform/files/upload-a-file) — `POST /v1/files`: `201` with the file's address (`file:…`), which any task input takes.
- [Read a file](https://docs.refabric.com/api-reference/platform/files/read-a-file) — `GET /v1/files/{ref}`: One file or record by its address, with its URL and what it holds.
- [Delete a file](https://docs.refabric.com/api-reference/platform/files/delete-a-file) — `DELETE /v1/files/{ref}`: The file is deleted; after it its address answers `404`.
- [List what you can reference](https://docs.refabric.com/api-reference/platform/files/list-what-you-can-reference) — `GET /v1/refs/{kind}`: One page of everything of this kind a task input may take — your uploads and the library — each with the `file` handle a task accepts.
