# プロジェクトへのファイルのアップロード

`POST /api/project/{projectId}/file`

URL: https://repsona.com/ja/api/post-project-projectid-file

プロジェクトに紐付くファイルを、multipart/form-data で 1 つ以上アップロードします。フォームの項目名は file にし、ファイル名がそのままファイルの名前になります (1 ファイル 100 MB まで)。プロジェクトのメンバーだけが使えます。

## パラメーター

| name | in | type | required | description |
| --- | --- | --- | --- | --- |
| `projectId` | path | integer | 必須 | アップロードしたファイルを紐付けるプロジェクトの ID です。そのプロジェクトのメンバーである必要があります。 |

## リクエストボディ

| name | in | type | required | description |
| --- | --- | --- | --- | --- |
| `file` | body | file | 必須 | アップロードするファイル。ファイル名がそのままファイルの名前になります。複数のファイルは、パートを繰り返して送ります。 |

## リクエスト

```sh
curl -X POST "https://<space>.repsona.com/api/project/{projectId}/file" \
  -H "Authorization: Bearer $REPSONA_API_KEY" \
  -F "file=@screenshot.png"
```

## レスポンス

- 200: Uploaded files
- 400: Invalid multipart payload or quota exceeded
- 401: Authentication is required
- 403: Not a project member
- 404: Project not found

## レスポンスの例

```json
{
  "files": [
    {
      "id": 61,
      "hash": "f115d239-d980-4b0a-b1a8-8facf9ced74a",
      "size": 15,
      "type": "application/pdf",
      "filename": "meeting-notes.pdf"
    }
  ]
}
```
