---
# System prepended metadata

title: API設計書サンプル

---

# API設計書サンプル

## ファイル登録API

### 概要

ファイルをxxxxxする

### パス

`/api/v1/register`

### メソッド

- POST
  - JSON (Req/Res)

### パラメータ

|パラメータ名|型|内容|
|---|---|---|
|id|string|xxx ID|
|files|array|ファイルのオブジェクト|

#### ファイルオブジェクト

|パラメータ名|型|内容|
|---|---|---|
|filename|string|ファイル名|
|data|string|base64エンコードしたファイルの実体|

#### リクエストサンプル

```JSON
{
  "id": "1234567890abcedf"
  "files": [
    {
      "filename": "sample.txt",
      "data": "aGVsbG8gd29ybGQ="
    },
    {
      "filename": "test.txt",
      "data": "44GT44KT44Gr44Gh44Gv"
    }
  ]
}
```

### レスポンス

#### 成功時

- ステータスコード: 200

#### レスポンスオブジェクト

|パラメータ名|型|内容|
|---|---|---|
|code|number|コード|
|message|string|メッセージ|

#### レスポンスサンプル

```JSON
{
  "code": 0,
  "message": "OK"
}
```

#### 失敗時

- [[エラーレスポンス]] を参照

#### レスポンスオブジェクト

|パラメータ名|型|内容|
|---|---|---|
|code|number|コード|
|message|string|メッセージ|

※ エラーレスポンスの体系は別途検討

#### レスポンスサンプル

```JSON
{
  "code": 101,
  "message": "invalid parameter error"
}
```

## 監査API

### 概要

- xxxxを監査をする

### パス

`/api/v1/audit`

### メソッド

- POST
  - JSON (req/res)

### パラメータ

|パラメータ名|型|内容|
|---|---|---|
|id|string|xxx ID|
|files|array|ファイルのオブジェクト|

#### ファイルオブジェクト

|パラメータ名|型|内容|
|---|---|---|
|filename|string|ファイル名|
|data|string|base64エンコードしたファイルの実体|

#### リクエストサンプル

```JSON
{
  "id": "1234567890abcdef",
  "files": [
    {
      "filename": "sample.txt",
      "data": "aGVsbG8gd29ybGQ="
    },
    {
      "filename": "test.txt",
      "data": "44GT44KT44Gr44Gh44Gv"
    }
  ],
}
```

### レスポンス

#### 監査実行完了

- ステータスコード: 200

#### レスポンスオブジェクト

|パラメータ名|型|内容|
|---|---|---|
|isValid|boolean|監査結果: true...問題なし, false...問題あり|
|files|array|監査結果オブジェクト|

#### 監査結果

|パラメータ名|型|内容|
|---|---|---|
|filename|string|ファイル名|
|isValid|boolean|監査結果: true...問題なし, false...問題あり|

#### レスポンスサンプル

```JSON
{
  "isValid": false,
  "files": [
    {
       "filename": "sample.txt",
       "isValid": true
    },
    {
       "filename": "test.txt",
       "isValid": false
    },
  ]
}
```

#### 監査実行失敗

- [[エラーレスポンス]] を参照

#### レスポンスオブジェクト

|パラメータ名|型|内容|
|---|---|---|
|code|number|エラーコード|
|message|string|エラーメッセージ|

※ エラーレスポンスの体系は別途検討

#### レスポンスサンプル

```JSON
{
  "code": 101,
  "message": "invalid parameter error"
}
```
