公開API
公開APIの概要です。できること、認証方法、レート制限について説明します。
1. APIの利用範囲
Section titled “1. APIの利用範囲”a. APIで利用できる機能
Section titled “a. APIで利用できる機能”公開APIでは、Wholesaleアプリの次のような主要機能を操作できます。
- Core Features: Wholesale Pricing、Volume Pricing、Registration form、Quick Order Form、Quick Buy Collection、Quick Buy Variant
- Addon Features: Order Limit、Shipping Rate、Extra Fee、Payment Term(近日公開)
b. 利用できるメソッド
Section titled “b. 利用できるメソッド”このAPIは、次のHTTPメソッドによるCRUD操作をすべてサポートしています。
- GET – データを取得
- POST – 新しいデータを作成
- PUT – 既存のデータを更新
- DELETE – データを削除
APIキーには、次の権限レベルを付与できます: Read Only/Write Only、Read & Write
利用できるアクション: Get list - Get item - Create item - Update item - Delete item
c. 対応するShopifyプラン
Section titled “c. 対応するShopifyプラン”Wholesaleアプリの公開APIは、次の条件を満たすShopifyストアで利用できます。
- 本番ストアであること(開発ストアやテストストアは対象外)
- Goldプランに登録していること
すべてのAPIリクエストは、処理される前に適切に認証される必要があります。
a. 必須パラメーター
Section titled “a. 必須パラメーター”各APIリクエストには、次の必須パラメーターを含める必要があります。
| パラメーター | 説明 |
|---|---|
shop |
Shopifyストアドメイン(例: mystore.myshopify.com) |
api_key |
Wholesaleアプリで生成されたAPIキー |
どちらかのパラメーターが欠けている場合、リクエストは拒否されます。
b. APIキーの管理
Section titled “b. APIキーの管理”APIキーは、Wholesaleアプリの管理画面で直接作成・管理します。
ストアオーナーは、APIキーごとに権限を設定できます: Read only/Write only、Read & Write
3. APIの構造とレスポンス形式
Section titled “3. APIの構造とレスポンス形式”a. APIエンドポイント
Section titled “a. APIエンドポイント”すべてのAPIリクエストで、次のベースURLを使用します。
https://wholesale.samita.io/v1/b. 機能別のエンドポイント
Section titled “b. 機能別のエンドポイント”機能グループごとに、それぞれ専用のエンドポイントがあります。例:
-
Wholesale機能:
https://wholesale.samita.io/v1/wholesale/ -
Volume Pricing機能:
https://wholesale.samita.io/v1/volume/
(実際のエンドポイントは、機能によって異なる場合があります。)
c. 利用できるクエリパラメーター
Section titled “c. 利用できるクエリパラメーター”このAPIは、次の共通クエリパラメーターをサポートしています。
| パラメーター | 説明 |
|---|---|
status |
レコードのステータス |
page |
ページネーションのページ番号 |
limit |
1ページあたりのレコード数 |
sort |
並べ替えの条件 |
query |
検索またはフィルターの条件 |
リクエストの例:
GET /wholesale?page=1&limit=20&sort=created_at4. レスポンスコード
Section titled “4. レスポンスコード”各APIリクエストは、次のいずれかのステータスコードを返します。
a. 共通のエラーレスポンス
Section titled “a. 共通のエラーレスポンス”401 – Unauthorized(認証エラー)
考えられる原因:
- ストアURLが指定されていない
- APIキーが指定されていない
- ストアURLが無効
- APIキーが無効
- APIキーがストアと一致しない
403 – This action is unauthorized(この操作は許可されていません)
- APIキーに、リクエストされた操作を実行する権限がない
- View / Create / Update / Deleteの権限が不足している
429 – Too Many Requests(リクエストが多すぎます)
- リクエストの上限を超過した
- APIの呼び出し頻度が、許可されたレート制限を超えている
b. 成功レスポンス
Section titled “b. 成功レスポンス”200 – Success(成功)
- リクエストが有効
- APIの操作が正常に実行された
- データが正しい形式で返される
5. レート制限
Section titled “5. レート制限”システムのパフォーマンスと安定性を保つため、APIの利用には1日あたりのリクエスト上限が設けられています。リクエストごと、または短い間隔ごとの制限はなくなりました。プランの1日の上限内であれば、必要な回数だけAPIを呼び出せます。
1日の上限は、ストアの料金プランによって異なります。
| プラン | 1日のリクエスト上限 |
|---|---|
| Free | 5リクエスト/日 |
| Starter | 50リクエスト/日 |
| Growth | 250リクエスト/日 |
| Enterprise | 500リクエスト/日 |
1日のカウンターは、毎日深夜0時(サーバー時間)にリセットされます。
1日の上限を超えた場合、システムは次のレスポンスを返します。
429 – Too Many Requests{ "message": "Daily request limit exceeded (X requests/day)."}