> Agent-readable docs index: /llms.txt. Fetch only the needed Markdown pages first; use /docs.zip only for broad search after checking /docs-manifest.json or /docs.zip.sha256.

# KOS OpenAPI

KOS OpenAPI は、KOS ソリューションを利用する病院の開発チームのみが利用できます。

詳しくは、各病院の KOS 営業担当者にお問い合わせください。

このドキュメントは [OpenAPI Spec](/openapi.yaml) ファイルから確認できます。

### API リクエスト方法

1. KOS OpenAPI は、照会、更新、削除などすべてのリクエストを POST で送信します。

2. 認証関連 API を除くすべてのリクエストでは、`Authorization` ヘッダーに認証トークン(Auth Token)を含める必要があります。詳しくは [認証方法](/docs/openapi/authorization) を参照してください。

3. すべてのエラー応答は、種類にかかわらず `400` ステータスコードを返します。エラー応答の詳細から原因を確認できます。詳しくは [エラー応答](#エラー応答) を参照してください。

### 日付と時刻の形式

日付や時間を伝えるフィールドは、各フィールドの説明に明記された形式に従います。

`format: date-time`としてドキュメント化されたフィールドは、[ISO 8601](https://ja.wikipedia.org/wiki/ISO_8601) date-time文字列を使用します。UTCが指定されたフィールドはUTCタイムゾーンの値を伝達します。

### 国コード形式

商品とターゲット国の照会で使用する国コードは、[ISO 3166-1 alpha-2](https://ja.wikipedia.org/wiki/ISO_3166-1_alpha-2) 文字列を使用します。

電話番号の国番号は、電話番号スキーマの`countryCode`の説明に従います。

<Callout type="caution">
<p>ただし、国別に表示する商品を指定し、その国に合わせた価格を設定するための「ターゲット国」の <strong>「その他の国」は <code>ETC</code></strong> と表記します。</p>
<p>詳細については、<a href="/docs/openapi/targetcountry">ターゲット国</a>を確認してください。</p>
</Callout>

### エラー応答

照会またはコマンドを正常に処理できない場合、`400` HTTP ステータスコードとともに次のようなエラー応答が返ります。

```json
{
  "status": 400,
  "message": "InvalidCommandException",
  "className": "InvalidCommandException",
  "errorProperties": [
    {
      "key": "{{ Key }}",
      "reason": "{{ ErrorReason }}"
    }
  ]
}
```

- `key`: 不足しているフィールド名、または不正な値を持つフィールド名
- `reason`: エラー原因
  - `TooShort`: 文字列が短すぎる
  - `TooLong`: 文字列が長すぎる
  - `Required`: 必須項目が不足している
  - `Duplicated`: 重複している
  - `InvalidTimeRange`: 時間範囲の検証に失敗
  - `NotAvailable`: 使用不可
  - `NotFound`: 対象が存在しない
  - `TooSmall`: 値が小さすぎる
  - `TooBig`: 値が大きすぎる


## エンドポイント

- [認証](/ja/docs/openapi/authorization.md): 1
- [画像](/ja/docs/openapi/image.md): 2
- [プリペイドカード](/ja/docs/openapi/prepaid-card.md): 3
- [商品](/ja/docs/openapi/product.md): 15
- [会計](/ja/docs/openapi/purchase.md): 2
- [予約](/ja/docs/openapi/schedule.md): 31
- [統計](/ja/docs/openapi/statistics.md): 6
- [ターゲット国](/ja/docs/openapi/target-country.md): 1
- [施術チケット](/ja/docs/openapi/ticket.md): 1
- [患者](/ja/docs/openapi/visitor.md): 8

## スキーマ

[スキーマ](/ja/docs/openapi/~schemas.md)
