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

# Manage project files

> Manage files, branches, uploads, and search.

Manage project files when work needs source, assets, uploads, or search.

## Steps

1. Read or write project files.
2. Use branches when file changes need review or release flow.
3. Upload assets that the project needs.
4. Search project content before changing or generating files.

## Try it with REST

List project files:

`GET /projects/{project_reference}/files`

```bash title="Terminal" theme={null}
curl https://api.veryfront.com/projects/support-assistant/files \
  -H "Authorization: Bearer $VERYFRONT_API_KEY"
```

Create an upload URL:

`POST /projects/{project_reference}/uploads`

```bash title="Terminal" theme={null}
curl -X POST https://api.veryfront.com/projects/support-assistant/uploads \
  -H "Authorization: Bearer $VERYFRONT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "file_path": "assets/example.txt",
    "content_type": "text/plain",
    "size": 128
  }'
```

## API surfaces

| Surface | Start here                                                                                                                                                                                   |
| ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| REST    | [Files](/cloud/rest/api-reference/files/list-project-files), [Uploads](/cloud/rest/api-reference/uploads/list-uploads), [Search](/cloud/rest/api-reference/search/search-project-files-text) |
| GraphQL | [Files](/cloud/graphql/operations/files/queries/files), [Create File Upload URL](/cloud/graphql/operations/files/mutations/createfileuploadurl)                                              |
| MCP     | [List Files](/cloud/mcp/tools/list-files), [Create Upload URL](/cloud/mcp/tools/create-upload-url)                                                                                           |

## Verify

Confirm the file appears in project file search.

Use the returned upload URL with the required headers before referencing the asset.

## File surfaces

| Surface       | Use it for                               |
| ------------- | ---------------------------------------- |
| Files         | Project source and assets.               |
| Branch files  | Reviewable file changes.                 |
| Release files | Files attached to a release.             |
| Uploads       | Uploaded assets and generated artifacts. |
| Search        | Project content lookup.                  |

## API reference

| API                       | Use                                                  |
| ------------------------- | ---------------------------------------------------- |
| [REST](/cloud/rest)       | Files, branches, release files, uploads, and search. |
| [GraphQL](/cloud/graphql) | File, branch, upload, and search views.              |
| [MCP](/cloud/mcp)         | File, upload, branch, and search tools.              |
