API ドキュメント

認証と共通ルール

最終更新 2026-10-13

ベース URL、Bearer JWT 認証、x-organization-id ヘッダー、ページネーション、レスポンス形式。

認証#

Docklify API はユーザーの Supabase セッションで認証します。ブラウザではセッション cookie で十分です。連携用途ではユーザーの Supabase JWT を Authorization: Bearer <jwt> で送信します。未認証は 401 です。

curl の例 — Bearer JWT
BASE="https://saas.docklify.com/api"
TOKEN="<supabase-access-jwt>"
ORG="<organization-id>"

curl -s "$BASE/wms/inventory?page=1&page_size=20" \
  -H "Authorization: Bearer $TOKEN" \
  -H "x-organization-id: $ORG" | jq .

組織スコープ#

ほぼすべてのエンドポイントはテナント分離されています。組織は x-organization-id ヘッダー(推奨)または organization_id クエリパラメータで指定します。非メンバーは 403、組織未指定は 400 です。

ページネーション#

一覧系エンドポイントは page と page_size を受け付けます(デフォルト 20、最大 100。印刷キューは最大 200)。レスポンスに meta: { total, page, page_size } が含まれます。

レスポンス形式#

成功時は { ok: true, data, meta? } を返します。WMS エラーは { code, message, details? } で、HTTP ステータスはエラーコード表に従います(エラーコード編参照)。分岐は code で行い、message の文言には依存しないでください。

成功レスポンスとエラーレスポンス
// success (HTTP 200)
{ "ok": true, "data": { "id": "…" }, "meta": { "total": 128, "page": 1, "page_size": 20 } }

// error (e.g. HTTP 409)
{ "code": "WMS_STOCK_001", "message": "库存可用量不足", "details": { "item_id": "…" } }
権限はドット区切りのモジュール名です(例:wms.inbound.view、wms.inventory_adjust)。2026-10-07 以降、デフォルトで権限チェックは緩和されています(ログイン+組織メンバーのみ)。在庫調整ポイント(wms.inventory_adjust)は引き続き明示的な付与が必要です。