Modification Request — 出庫内容の修正依頼
入庫検品中(progress = receiving)に「出庫内容を見直したい」ときに立てる 修正依頼のサブリソースです。修正依頼を開くと、その移動の 受領更新がロックされ(receive が modification_requested_locked で拒否)、見直しが済んだら 完了(受領を再開)または 取消(破棄して受領を再開)します。1 つの移動に同時に開ける依頼は 1 件です。
Base URL
https://api.lmile.io· 認証x-ingest-secretヘッダー または operator JWT(Authorization: Bearer)(詳細) · 書き込み(POST)はshopをリクエストボディに、読み取り(GET)はshopをクエリに含めます(API キーで呼ぶ場合は省略できます)
移動そのもののライフサイクル(作成 → 承認 → 出庫 → 入庫)は Stock Transfer を参照してください。修正依頼は入庫検品中だけに関わるワークフローで、棚・在庫は動かしません(実数量は receive の受領数で確定します)。
エンドポイント
POST
/api/routing/stock-transfer/modification-request
修正依頼を起票(受領をロック)
POST
/api/routing/stock-transfer/modification-request/complete
修正依頼を完了(受領を再開)
POST
/api/routing/stock-transfer/modification-request/delete
修正依頼を取消・破棄(受領を再開)
GET
/api/routing/stock-transfer/modification-requests
修正依頼の一覧
GET
/api/routing/stock-transfer/modification-request
指定した移動の最新の修正依頼 1 件
状態の流れ
(入庫検品中 receiving のみ)
modificationRequest=none ─[create]─▶ requested ─[complete]─▶ completed
│ │
└─[delete]─▶ none └─[create]─▶ requested (再依頼可)requested(依頼中)の間は受領更新がロックされます。completeでcompleted(依頼済み・受領再開)、deleteでnone(破棄・受領再開)になります。検品中に別の不整合が見つかれば
completedから再度createしてrequestedに戻せます(再依頼)。
POST /api/routing/stock-transfer/modification-request
修正依頼を起票します。入庫検品中(progress = receiving)のときだけ開けます。起票時点の明細内容をスナップショットとして記録します。
リクエスト
ボディパラメータ
shop
string
✓
店舗ドメイン(API キーで呼ぶ場合は省略できます)
stockTransferId
string (uuid)
✓
対象の移動 ID
reason
string
依頼理由(任意)
レスポンス
挙動・冪等性
入庫検品中のみ:
progressがreceivingでなければnot_receivingを返します。1 件だけ: 既に依頼が開いている(
requested)移動への再起票はmodification_request_already_openを返します。起票すると受領更新がロックされます(receive が
modification_requested_locked)。
POST /api/routing/stock-transfer/modification-request/complete
開いている修正依頼を完了します(requested → completed)。受領更新のロックが解除されます。
ボディパラメータ
shop
string
✓
店舗ドメイン(API キーで呼ぶ場合は省略できます)
stockTransferId
string (uuid)
✓
対象の移動 ID
レスポンス
開いている依頼が無ければ
no_open_modification_requestを返します。
POST /api/routing/stock-transfer/modification-request/delete
開いている修正依頼を取り消して破棄します(requested → none)。受領更新のロックが解除されます。依頼行は破棄済み(deleted)として記録に残ります。
ボディパラメータ
shop
string
✓
店舗ドメイン(API キーで呼ぶ場合は省略できます)
stockTransferId
string (uuid)
✓
対象の移動 ID
レスポンス
開いている依頼が無ければ
no_open_modification_requestを返します。
GET /api/routing/stock-transfer/modification-requests
修正依頼の一覧を取得します。
クエリパラメータ
shop
✓
店舗ドメイン(API キーで呼ぶ場合は省略できます)
status
状態で絞り込み(requested / completed / deleted。既定 requested = 依頼中)
stockTransferId
特定の移動に絞り込み
レスポンス
新しい順(requestedAt 降順)で返します。各行に依頼時点の明細スナップショット(linesSnapshot)と、紐づく移動のサマリ(transferProgress / transferIdentificationNo)を付与します。
GET /api/routing/stock-transfer/modification-request
指定した移動の 最新の修正依頼 1 件を取得します。
クエリパラメータ
shop
✓
店舗ドメイン(API キーで呼ぶ場合は省略できます)
id
✓
移動 ID(stockTransferId)
レスポンス
id(クエリ)は 移動の ID(stockTransferId)です。その移動の最新の依頼を 1 件返します。該当が無ければ
404+error_kind: not_found。
エラー
エンドポイント固有:
error_kind
Status
エンドポイント
意味
not_receiving
422
modification-request
入庫検品中(receiving)でないため起票できない
modification_request_already_open
422
modification-request
既に開いている依頼がある(1 件のみ)
no_open_modification_request
422
complete / delete
完了・取消できる開いた依頼が無い
not_found
404
各エンドポイント / get
指定 ID の移動 / 依頼が存在しない
共通エラー(401 / 400 / 403 / 405 / 500 / 503)は Error Codes を参照。ボディのバリデーション失敗は 400 + invalid_input(details[] 付き)です。
データモデル
sot.lm_stock_transfer_modification_requests— 修正依頼(status:requested/completed/deleted・reason・依頼時点の明細スナップショットlines_snapshot・requested_by_staff_user_id・各遷移時刻)。1 伝票に active(requested)は 1 件(partial unique index)。移動ヘッダsot.lm_stock_transfers.modification_requestと同期します(詳細は Stock Transfer データモデル)。
Last updated
Was this helpful?