ReCORE.co-api

属性

属性検索

概要

基本情報

query

key 説明 制約など
ids 属性ID 整数のみ、カンマ区切りで複数指定可能
subject 対象 -
has_options 選択肢の有無で絞り込み true または false
is_required 必須項目で絞り込み true または false
is_pinned 表示固定で絞り込み true または false
sc_category_id カテゴリIDで絞り込み 整数のみ (*1)
page ページ 整数のみ、デフォルト:1
limit 1ページあたりの件数 整数のみ、デフォルト:50、最大: 250

例

GET /attributes?subject=product&ids=1,2
[
  {
    "id": 1,
    "subject": "product",
    "key": "asin",
    "label": "ASIN",
    "description": "Amazon Standard Identification Number",
    "type": "single_text",
    "is_multiple": false,
    "has_options": false,
    "sort": 0,
    "is_required": false,
    "is_pinned": true,
    "scope": null,
    "mapping": { "leaves_key": "asin" },
    "constraints": [
      { "name": "regex", "value": "^[A-Z]{2}[0-9]{3}$" }
    ]
  }
]
key type 説明
* array<object> 属性
*.id int 属性ID
*.subject string 対象
*.key string 属性キー
*.label string 属性名
*.description string | null 属性の説明文
*.type string 属性タイプ
*.is_multiple boolean 複数値か
*.has_options boolean 選択肢を持つか (*1)
*.sort int 表示順
*.is_required boolean 必須か
*.is_pinned boolean 表示を固定するか
*.scope object | null 絞込条件
*.scope.category_ids ?array<int> | null 対象カテゴリID (*2)
*.mapping object | null 外部連携キー
*.mapping.leaves_key ?string | null 商品DB連携キー (*3)
*.constraints array<object> | null 値の制約
*.constraints.*.name string 種別
*.constraints.*.value ?any 制約値

属性作成

概要

基本情報

body

key type 説明 制約など
subject string 対象 必須。属性検索の対象(subject)一覧を参照
key string 属性キー 必須。custom_ で始まる半角英小文字・数字・アンダースコア、最大50文字。対象内で一意
label string 属性名 必須。最大50文字
description ?string | null 属性の説明文 -
type string 属性タイプ 必須。属性検索の属性タイプ(type)一覧を参照
is_multiple ?boolean 複数値か デフォルト: false
has_options ?boolean 選択肢を持つか デフォルト: false
sort ?int 表示順 -
is_required ?boolean 必須か デフォルト: false
is_pinned ?boolean 表示を固定するか デフォルト: false
scope ?object | null 絞込条件 product・item の属性のみ指定可能
scope.category_ids ?array<int> | null 対象カテゴリID 存在するカテゴリIDのみ
mapping ?object | null 外部連携キー product の属性のみ指定可能
mapping.leaves_key ?string | null 商品DB連携キー 最大50文字。product の属性内で一意
constraints ?array<object> | null 値の制約 -
constraints.*.name string 種別 jan、asin、in_options、regex のいずれか (*1)
constraints.*.value ?any 制約値 regex の場合は必須 (正規表現文字列)、それ以外は指定不可

例

POST /attributes
{
  "subject": "product",
  "key": "custom_color",
  "label": "カラー",
  "description": "商品の色",
  "type": "single_text",
  "is_multiple": false,
  "has_options": true,
  "sort": 10,
  "is_required": false,
  "is_pinned": true,
  "scope": { "category_ids": [1, 2] },
  "mapping": { "leaves_key": null },
  "constraints": [
    { "name": "in_options" }
  ]
}
{
  "id": 100,
  "subject": "product",
  "key": "custom_color",
  "label": "カラー",
  "description": "商品の色",
  "type": "single_text",
  "is_multiple": false,
  "has_options": true,
  "sort": 10,
  "is_required": false,
  "is_pinned": true,
  "scope": { "category_ids": [1, 2] },
  "mapping": { "leaves_key": null },
  "constraints": [
    { "name": "in_options" }
  ]
}

属性更新

概要

基本情報

path

key 説明 制約など
attribute_id 属性ID 整数のみ

body

key type 説明 制約など
label ?string 属性名 最大50文字 (*1)
description ?string | null 属性の説明文 -
has_options ?boolean 選択肢を持つか -
sort ?int 表示順 -
is_required ?boolean 必須か -
is_pinned ?boolean 表示を固定するか -
scope ?object | null 絞込条件 product・item の属性のみ指定可能 (*1)
scope.category_ids ?array<int> | null 対象カテゴリID 存在するカテゴリIDのみ
mapping ?object | null 外部連携キー product の属性のみ指定可能 (*1)
mapping.leaves_key ?string | null 商品DB連携キー 最大50文字。product の属性内で一意
constraints ?array<object> | null 値の制約 (*1)
constraints.*.name string 種別 jan、asin、in_options、regex のいずれか
constraints.*.value ?any 制約値 regex の場合は必須 (正規表現文字列)、それ以外は指定不可

例

PUT /attributes/100
{
  "label": "色",
  "is_pinned": false,
  "scope": { "category_ids": [1, 2, 3] }
}
{
  "id": 100,
  "subject": "product",
  "key": "custom_color",
  "label": "色",
  "description": "商品の色",
  "type": "single_text",
  "is_multiple": false,
  "has_options": true,
  "sort": 10,
  "is_required": false,
  "is_pinned": false,
  "scope": { "category_ids": [1, 2, 3] },
  "mapping": { "leaves_key": null },
  "constraints": [
    { "name": "in_options" }
  ]
}

属性削除

概要

基本情報

path

key 説明 制約など
attribute_id 属性ID 整数のみ

例

DELETE /attributes/100
(なし)

属性選択肢検索

概要

基本情報

path

key 説明 制約など
attribute_id 属性ID 整数のみ

query

key 説明 制約など
q 選択肢値の部分一致検索 -
page ページ 整数のみ、デフォルト:1
limit 1ページあたりの件数 整数のみ、デフォルト:50、最大: 250

例

GET /attributes/1/options?q=赤
[
  {
    "id": 10,
    "value": "赤",
    "sort": 0
  }
]
key type 説明
* array<object> 選択肢
*.id int 選択肢ID
*.value string 選択肢値
*.sort int 表示順

属性選択肢更新

概要

基本情報

path

key 説明 制約など
attribute_id 属性ID 整数のみ

body

key type 説明 制約など
* array<object> - 1件以上、最大1000件
*.action string CREATE、UPDATE、UPSERT、DELETE のいずれか (*1) 必須
*.id ?int 選択肢ID。UPDATE、DELETE 時は必須 整数のみ
*.value ?string 選択肢値。CREATE、UPSERT 時は必須 最大100文字。属性内で一意
*.sort ?int 表示順 整数のみ

例

PUT /attributes/100/options
[
  { "action": "CREATE", "value": "赤", "sort": 0 },
  { "action": "UPDATE", "id": 10, "value": "青", "sort": 1 },
  { "action": "UPSERT", "value": "緑", "sort": 2 },
  { "action": "DELETE", "id": 11 }
]