# API リファレンス

BASE API で利用できる全エンドポイントの一覧です。
各エンドポイントが要求するスコープは [スコープ](/docs/scopes.md) を参照してください。

## 商品

商品の取得・作成・編集と在庫の管理。

- [GET /api/items](/docs/endpoints/get-api-items.md): 商品一覧取得（要求スコープ: `items.read`）
- [POST /api/items](/docs/endpoints/post-api-items.md): 商品作成（要求スコープ: `items.create`, `items.read`）
- [GET /api/items/{id}](/docs/endpoints/get-api-items-id.md): 商品詳細取得（要求スコープ: `items.read`）
- [POST /api/items/{id}](/docs/endpoints/post-api-items-id.md): 商品編集（要求スコープ: `items.read`, `items.update`）
- [DELETE /api/items/{id}](/docs/endpoints/delete-api-items-id.md): 商品削除（要求スコープ: `items.delete`, `items.read`）
- [GET /api/items/{id}/variations](/docs/endpoints/get-api-items-id-variations.md): 種類一覧取得（要求スコープ: `items.read`）
- [POST /api/items/{id}/variations](/docs/endpoints/post-api-items-id-variations.md): 種類追加（要求スコープ: `items.read`, `items.update`）
- [PUT /api/items/{id}/variations](/docs/endpoints/put-api-items-id-variations.md): 種類の並び替え（要求スコープ: `items.read`, `items.update`）
- [POST /api/items/{id}/variations/{variation_id}](/docs/endpoints/post-api-items-id-variations-variation-id.md): 種類編集（要求スコープ: `items.read`, `items.update`）
- [DELETE /api/items/{id}/variations/{variation_id}](/docs/endpoints/delete-api-items-id-variations-variation-id.md): 種類削除（要求スコープ: `items.read`, `items.update`）
- [PUT /api/items/{id}/stock](/docs/endpoints/put-api-items-id-stock.md): 在庫設定（要求スコープ: `items.read`, `items.update`）
- [GET /api/items/{id}/images](/docs/endpoints/get-api-items-id-images.md): 画像一覧取得（要求スコープ: `items.read`）
- [POST /api/items/{id}/images](/docs/endpoints/post-api-items-id-images.md): 画像追加（要求スコープ: `items.read`, `items.update`）
- [PUT /api/items/{id}/images](/docs/endpoints/put-api-items-id-images.md): 画像の並び替え（要求スコープ: `items.read`, `items.update`）
- [DELETE /api/items/{id}/images/{image_id}](/docs/endpoints/delete-api-items-id-images-image-id.md): 画像削除（要求スコープ: `items.read`, `items.update`）
- [PUT /api/items/{id}/visibility](/docs/endpoints/put-api-items-id-visibility.md): 公開状態の切り替え（要求スコープ: `items.publish`, `items.read`）
- [PUT /api/items/{id}/list_order](/docs/endpoints/put-api-items-id-list-order.md): 並び順の変更（要求スコープ: `items.read`, `items.update`）

## 商品カテゴリ

商品を分類するカテゴリの管理と、商品との結びつけ。

- [GET /api/item_categories](/docs/endpoints/get-api-item-categories.md): カテゴリ一覧取得（要求スコープ: `items.read`）
- [POST /api/item_categories](/docs/endpoints/post-api-item-categories.md): カテゴリ作成（要求スコープ: `item_categories.write`, `items.read`）
- [GET /api/item_categories/{id}](/docs/endpoints/get-api-item-categories-id.md): カテゴリ取得（要求スコープ: `items.read`）
- [POST /api/item_categories/{id}](/docs/endpoints/post-api-item-categories-id.md): カテゴリ編集（要求スコープ: `item_categories.write`, `items.read`）
- [DELETE /api/item_categories/{id}](/docs/endpoints/delete-api-item-categories-id.md): カテゴリ削除（要求スコープ: `item_categories.write`, `items.read`）
- [PUT /api/item_categories/{id}/list_order](/docs/endpoints/put-api-item-categories-id-list-order.md): カテゴリの並び順を変更する（要求スコープ: `item_categories.write`, `items.read`）
- [PUT /api/item_categories/{id}/items/{item_id}](/docs/endpoints/put-api-item-categories-id-items-item-id.md): カテゴリに商品を追加（要求スコープ: `items.read`, `items.update`）
- [DELETE /api/item_categories/{id}/items/{item_id}](/docs/endpoints/delete-api-item-categories-id-items-item-id.md): カテゴリから商品を削除（要求スコープ: `items.read`, `items.update`）

## 注文

注文の参照・検索・更新と発送・キャンセル。

- [GET /api/orders/{unique_key}](/docs/endpoints/get-api-orders-unique-key.md): 注文取得（要求スコープ: `orders.read`）
- [PUT /api/orders/{unique_key}](/docs/endpoints/put-api-orders-unique-key.md): 注文内容更新（要求スコープ: `orders.read`, `orders.update`）
- [POST /api/orders/search](/docs/endpoints/post-api-orders-search.md): 注文検索（要求スコープ: `orders.read`）
- [POST /api/orders/{unique_key}/cancel](/docs/endpoints/post-api-orders-unique-key-cancel.md): 注文キャンセル（要求スコープ: `orders.cancel`, `orders.read`）
- [POST /api/orders/{unique_key}/dispatch](/docs/endpoints/post-api-orders-unique-key-dispatch.md): 注文発送（要求スコープ: `orders.dispatch`, `orders.read`）
- [PUT /api/orders/{unique_key}/customer](/docs/endpoints/put-api-orders-unique-key-customer.md): 注文メールアドレス更新（要求スコープ: `orders.read`, `orders.update`）
- [PUT /api/orders/{unique_key}/shipping](/docs/endpoints/put-api-orders-unique-key-shipping.md): 注文配送先更新（要求スコープ: `orders.read`, `orders.update`）
- [PUT /api/orders/{unique_key}/delivery](/docs/endpoints/put-api-orders-unique-key-delivery.md): 注文配送希望日時更新（要求スコープ: `orders.read`, `orders.update`）
- [PUT /api/orders/{unique_key}/shop_memo](/docs/endpoints/put-api-orders-unique-key-shop-memo.md): 注文ショップメモ更新（要求スコープ: `orders.read`, `orders.update`）

## 配送業者

発送時に指定できる配送業者の一覧。

- [GET /api/delivery_companies](/docs/endpoints/get-api-delivery-companies.md): 配送業者一覧取得（要求スコープ: `orders.read`）

## ファイル

ファイルのアップロード先の発行。商品画像などファイルを扱う操作の入口。

- [POST /api/files](/docs/endpoints/post-api-files.md): アップロード先発行（要求スコープ: `files.write`）

## ユーザー

認証中のユーザー情報の取得。

- [GET /api/user](/docs/endpoints/get-api-user.md): 認証ユーザーとショップの情報取得（要求スコープ: `user.read`）

