コンテンツにスキップ

商品詳細更新

PATCH
/products/{product_id}/details
curl --request PATCH \
--url https://api.smaregi.dev/TARGET-CONTRACT-ID/ec-oms/products/example/details \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "product": { "commonCode": "ABC-001", "name": "サンプル商品", "zaikoType": 2, "inventoryType": 3, "inventoryDisp": 5 }, "productsClass": [ { "productClassId": 2001, "productCode": "ABC-001-01", "price02": 1980, "productTypeId": 1, "stockUpdateFlg": 2, "stockUpdateValue": 30, "rcatalogId": "4900000000099", "delvdateChk": 1, "restoreInventoryFlag": 1, "backorderFlag": 0, "normalDelvdateId": 3, "backorderDelvdateId": 5 } ] }'

商品共通情報と商品規格を更新します。
product または productsClass の少なくとも一方を指定してください。

product_id
required
string
>= 1 characters

商品ID

Media typeapplication/json
Any of:
ProductDetailsPatchRequest

指定した項目のみを更新し、省略した項目は変更しません。
productsClass は、配列に指定した productClassId の商品規格のみを部分更新します。
配列に含めなかった既存の商品規格は変更しません。

object
product
required
ProductDetailsPatchProductRequest

指定した項目のみを更新し、省略した項目は変更しません。

object
commonCode

商品管理番号
※ユニークでなければエラーになります。

string
>= 1 characters <= 32 characters
commonProductCode

商品番号

string
>= 1 characters <= 200 characters
name

商品名

string
>= 1 characters <= 255 characters
taxFlag

消費税

integer
<= 999999999
status

倉庫指定

  • 1: 販売中
  • 2: 倉庫
integer
Allowed values: 1 2
zaikoType

在庫タイプ

integer
<= 999999999
nokori

在庫表示設定(通常在庫)
※在庫タイプに1:通常在庫を設定している場合は必須

  • 0: 残り在庫を表示しない
  • 1: 残り在庫を表示する
  • 2: 在庫がn以下になったら「残りあとわずか」を表示する
integer
Allowed values: 0 1 2
nokoriDisp

残り表示閾値(通常在庫)
※在庫表示設定(通常在庫)に2:在庫がn以下になったら「残りあとわずか」を表示するを設定している場合は必須

integer
<= 20
inventoryType

在庫表示設定(項目選択肢別在庫)
※在庫タイプに2:項目選択肢別在庫を設定している場合は必須

  • 1: 残り在庫を表示する
  • 2: 残り在庫を表示しない
  • 3: 在庫がn以下になったら「△」の印を表示する
integer
Allowed values: 1 2 3
inventoryDisp

残り表示閾値(項目選択肢別在庫)
※在庫表示設定(項目選択肢別在庫)に3:在庫がn以下になったら「△」の印を表示するを設定している場合は必須

integer
<= 20
taxRate

消費税率

integer
<= 999
rcatalogId

JANコード

string
0 <= 50 characters
name1

商品略称(内部用)

string
0 <= 255 characters
name2

商品略称(お客様用)

string
0 <= 255 characters
delivKbn

配送温度区分

integer
<= 999999999
restoreInventoryFlag

在庫戻し設定

  • 0: 注文キャンセル時に在庫を戻さない
  • 1: 注文キャンセル時に在庫を戻す(増やす)
integer
Allowed values: 0 1
backorderFlag

在庫切れ時の注文

  • 0: 在庫切れになったら注文を受け付けない
  • 1: 在庫切れになっても注文を受け付ける
integer
Allowed values: 0 1
normalDelvdateId

在庫あり時の納期

integer
<= 999999999
backorderDelvdateId

在庫切れ時の納期

integer
<= 999999999
productsClass

商品規格配列

Array<object>
>= 1 items
ProductDetailsPatchProductsClassItemRequest

productClassId で指定した商品規格について、指定した項目のみを更新し、省略した項目は変更しません。
productClassId のみの指定も許容します。その場合、商品規格は変更されません。

object
productClassId
required

商品規格ID

integer
>= 1 <= 999999999
productCode

商品コード
空文字を指定した場合は空文字で更新します。
半角・全角スペース、タブ、改行のみの値は指定できません。 product.commonProductCode と同時に指定した場合は、商品コードの自動生成値が優先されます。

string
0 <= 200 characters /^$|[^  \t\r\n]/
price02

販売価格

integer
<= 99999999
productTypeId

商品種別

  • 1: 通常商品
  • 3: 予約商品
integer
Allowed values: 1 3
stockUpdateFlg

在庫連携指定

  • 0: 連携しない
  • 1: 在庫連携対象
  • 2: 在庫指定値を使用する
  • 3: 在庫指定値を加算する
integer
Allowed values: 0 1 2 3
stockUpdateValue

在庫指定値
※在庫連携指定に2または3を設定している場合は必須

integer
<= 99999999
rcatalogId

JANコード

string
0 <= 50 characters
delvdateChk

在庫納期情報個別設定

  • 0: 個別設定しない
  • 1: 個別設定する
integer
Allowed values: 0 1
restoreInventoryFlag

在庫戻し設定

  • 0: 注文キャンセル時に在庫を戻さない
  • 1: 注文キャンセル時に在庫を戻す(増やす)
integer
Allowed values: 0 1
backorderFlag

在庫切れ時の注文

  • 0: 在庫切れになったら注文を受け付けない
  • 1: 在庫切れになっても注文を受け付ける
integer
Allowed values: 0 1
normalDelvdateId

在庫あり時の納期管理番号

integer
<= 999999999
backorderDelvdateId

在庫切れ時の納期管理番号

integer
<= 999999999
posProductId

スマレジ商品ID

integer
<= 999999999
Examples
Exampledefault
{
"product": {
"commonCode": "ABC-001",
"name": "サンプル商品",
"zaikoType": 2,
"inventoryType": 3,
"inventoryDisp": 5
},
"productsClass": [
{
"productClassId": 2001,
"productCode": "ABC-001-01",
"price02": 1980,
"productTypeId": 1,
"stockUpdateFlg": 2,
"stockUpdateValue": 30,
"rcatalogId": "4900000000099",
"delvdateChk": 1,
"restoreInventoryFlag": 1,
"backorderFlag": 0,
"normalDelvdateId": 3,
"backorderDelvdateId": 5
}
]
}

更新成功

Media typeapplication/json
ProductDetailsPatchResponse
object
product

更新時のみ返却される商品本体

object
productId

商品ID

string
commonCode

商品管理番号

string
commonProductCode

商品番号

string
name

商品名

string
taxFlag

消費税

string
taxFlagJa

消費税(和名)

string
status

倉庫指定

string
zaikoType

在庫タイプ

string
zaikoTypeJa

在庫タイプ(和名)

string
nokori

在庫表示設定(通常在庫)

string
nokoriDisp

残り表示閾値(通常在庫)

string
nullable
inventoryType

在庫表示設定(項目選択肢別在庫)

string
inventoryDisp

残り表示閾値(項目選択肢別在庫)

string
taxRate

消費税率

string
rcatalogId

JANコード

string
name1

商品略称(内部用)

string
name2

商品略称(お客様用)

string
delivKbn

配送温度区分

string
delivKbnJa

配送温度区分(和名)

string
restoreInventoryFlag

在庫戻し設定

string
backorderFlag

在庫切れ時の注文

string
normalDelvdateId

在庫あり時の納期

string
normalDelvdateIdJa

在庫あり時の納期(和名)

string
backorderDelvdateId

在庫切れ時の納期

string
backorderDelvdateIdJa

在庫切れ時の納期(和名)

string
productsClass

更新時のみ返却される商品規格配列

Array<object>
object
productClassId

商品クラスID

string
>= 1 characters <= 9 characters
productId

商品ID

string
>= 1 characters <= 9 characters
classcategoryId1

商品規格ID(横軸)

string
nullable <= 9 characters
classcategoryId2

商品規格ID(縦軸)

string
nullable <= 9 characters
productCode

商品番号

string
0 <= 200 characters
price02

販売価格

string
>= 1 characters <= 9 characters
productTypeId

商品種別

string
>= 1 characters <= 1 characters
stockUpdateFlg

在庫連携指定

string
>= 1 characters <= 1 characters
stockUpdateValue

在庫指定値

string
nullable <= 9 characters
rcatalogId

JANコード

string
nullable <= 50 characters
delvdateChk

在庫納期情報個別設定

string
nullable <= 1 characters
restoreInventoryFlag

在庫戻し設定

string
nullable <= 1 characters
backorderFlag

在庫切れ時の注文

string
nullable <= 1 characters
normalDelvdateId

在庫あり時の納期管理番号

string
nullable >= 1 characters <= 9 characters
normalDelvdateIdJa

在庫あり時の納期管理番号(和名)

string
nullable >= 1 characters <= 50 characters
backorderDelvdateId

在庫切れ時の納期管理番号

string
nullable >= 1 characters <= 9 characters
backorderDelvdateIdJa

在庫切れ時の納期管理番号(和名)

string
nullable >= 1 characters <= 50 characters
Examples
Exampledefault
{
"product": {
"productId": "1001",
"commonCode": "ABC-001",
"commonProductCode": "ITEM-001",
"name": "サンプル商品",
"taxFlag": "1",
"taxFlagJa": "消費税込",
"status": "1",
"zaikoType": "2",
"zaikoTypeJa": "項目選択肢別在庫",
"nokori": "0",
"nokoriDisp": null,
"inventoryType": "3",
"inventoryDisp": "5",
"taxRate": "10",
"rcatalogId": "4900000000012",
"name1": "社内略称",
"name2": "表示略称",
"delivKbn": "1",
"delivKbnJa": "普通",
"restoreInventoryFlag": "1",
"backorderFlag": "0",
"normalDelvdateId": "3",
"normalDelvdateIdJa": "3営業日",
"backorderDelvdateId": "5",
"backorderDelvdateIdJa": "入荷次第"
},
"productsClass": [
{
"productClassId": "2001",
"productId": "1001",
"classcategoryId1": "10",
"classcategoryId2": "20",
"productCode": "ABC-001-01",
"price02": "1980",
"productTypeId": "1",
"stockUpdateFlg": "2",
"stockUpdateValue": "30",
"rcatalogId": "4900000000099",
"delvdateChk": "1",
"restoreInventoryFlag": "1",
"backorderFlag": "0",
"normalDelvdateId": "3",
"normalDelvdateIdJa": "3営業日",
"backorderDelvdateId": "5",
"backorderDelvdateIdJa": "入荷次第"
}
]
}
  • product または productsClass が指定されていない場合
  • 指定された項目が不正な場合
  • 商品IDと商品規格IDの整合性が取れない場合
  • 指定された消費税が存在しない場合
  • 指定された在庫タイプが存在しない場合
  • 指定された配送温度区分が存在しない場合
  • 指定された在庫あり時の納期が存在しない場合
  • 指定された在庫切れ時の納期が存在しない場合
Media typeapplication/json
object
type
required
string
title
required
string
detail
One of:
string
status
integer
Examples
{
"type": "about:blank",
"title": "BadRequest",
"detail": "product または productsClassは必須です",
"status": 400
}
  • 指定された商品が存在しない場合
  • 指定された商品規格が存在しない場合
Media typeapplication/json
object
type
required
string
title
required
string
detail
One of:
string
status
integer
Examples
{
"type": "about:blank",
"title": "NotFound",
"detail": "該当する商品IDが見つかりませんでした",
"status": 404
}
  • 指定された商品管理番号が重複している場合
  • リクエスト内で商品規格IDが重複している場合
Media typeapplication/json
object
type
required
string
title
required
string
detail
One of:
string
status
integer
Examples
{
"type": "about:blank",
"title": "Conflict",
"detail": "商品管理番号が重複しています",
"status": 409
}

サーバー内部エラー

Media typeapplication/json
object
type
required
string
title
required
string
detail
One of:
string
status
integer
Examples
Exampledefault
{
"type": "about:blank",
"title": "InternalServerError",
"status": 500
}