クイックコマンド登録
const url = 'https://api.smaregi.dev/TARGET-CONTRACT-ID/pos/quick_command_settings';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"storeScope":"1","name":"string","stores":[{"storeId":1}],"totalCommands":[{"buttonName":"string","command":"1","discountAmount":1234567890,"discountDivisionId":1234567890,"color":"#0084CF","isDisplay":false,"displaySequence":1}],"unitCommands":[{"buttonName":"string","command":"1","discountAmount":1234567890,"discountDivisionId":1234567890,"color":"#0084CF","isDisplay":false,"displaySequence":1}]}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://api.smaregi.dev/TARGET-CONTRACT-ID/pos/quick_command_settings \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "storeScope": "1", "name": "string", "stores": [ { "storeId": 1 } ], "totalCommands": [ { "buttonName": "string", "command": "1", "discountAmount": 1234567890, "discountDivisionId": 1234567890, "color": "#0084CF", "isDisplay": false, "displaySequence": 1 } ], "unitCommands": [ { "buttonName": "string", "command": "1", "discountAmount": 1234567890, "discountDivisionId": 1234567890, "color": "#0084CF", "isDisplay": false, "displaySequence": 1 } ] }'クイックコマンド設定を登録します。
クイックコマンド設定IDは自動採番されます。
本APIでは 99: 複数コマンド実行 は指定できません。複数コマンド実行を含むクイックコマンド設定を作成する場合は、先に本APIで対象となる通常のクイックコマンドを登録し、更新APIで登録済みのクイックコマンドIDを指定してください。
対象プラン
- スタンダード
- プレミアム
- プレミアムプラス
- フードビジネス
- リテールビジネス
Authorizations
Section titled “Authorizations”Request Bodyrequired
Section titled “Request Bodyrequired”object
1: 全店2: 店舗指定
1: 全店 のクイックコマンド設定は1件のみ登録できます。
既に 1: 全店 のクイックコマンド設定が登録されている場合は指定できません。
StoreScopeが 2: 店舗指定 の場合に設定できます。
storeScopeが 1: 全店 の場合は指定できません。指定した場合はエラーになります。
storeScopeが 2: 店舗指定 の場合でも、省略、または空配列の指定が可能です。
通常店舗のみ指定できます。倉庫、受注店舗、削除済み店舗は指定できません。
既に他のクイックコマンド設定に紐づいている店舗は指定できません。
object
通常店舗のみ指定できます。
倉庫、受注店舗、削除済み店舗、既に他のクイックコマンド設定に紐づいている店舗IDは指定できません。
省略、または空配列の指定が可能です。
最大99件まで指定できます。
commandに応じた項目のみ設定してください。該当しない項目を設定した場合はエラーになります。
登録APIでは 99: 複数コマンド実行 は指定できません。複数コマンド実行を設定する場合は、先に本APIで対象となる通常のクイックコマンドを登録し、更新APIで登録済みのクイックコマンドIDを指定してください。
object
1: 値引2: 割引6: 価格リセット9: 取引タグ
登録APIでは 99: 複数コマンド実行 は指定できません。複数コマンド実行を設定する場合は、先に本APIで対象となる通常のクイックコマンドを登録し、更新APIで登録済みのクイックコマンドIDを指定してください。
1〜9999999999
管理画面の[設定]→[販売設定]→[値引区分]で確認できる「ID」。未指定または null の場合は未選択として登録します。
#から始まる1〜6桁の16進数を指定してください。
省略時は false として登録します。false の場合、レジ端末に表示されません。
IsDisplayが true の場合は必須です。isDisplayが true のクイックコマンド間で重複する値は指定できません。
object
1: 値引2: 割引6: 価格リセット9: 取引タグ
登録APIでは 99: 複数コマンド実行 は指定できません。複数コマンド実行を設定する場合は、先に本APIで対象となる通常のクイックコマンドを登録し、更新APIで登録済みのクイックコマンドIDを指定してください。
1〜100
管理画面の[設定]→[販売設定]→[割引区分]で確認できる「ID」。未指定または null の場合は未選択として登録します。
#から始まる1〜6桁の16進数を指定してください。
省略時は false として登録します。false の場合、レジ端末に表示されません。
IsDisplayが true の場合は必須です。isDisplayが true のクイックコマンド間で重複する値は指定できません。
object
1: 値引2: 割引6: 価格リセット9: 取引タグ
登録APIでは 99: 複数コマンド実行 は指定できません。複数コマンド実行を設定する場合は、先に本APIで対象となる通常のクイックコマンドを登録し、更新APIで登録済みのクイックコマンドIDを指定してください。
#から始まる1〜6桁の16進数を指定してください。
省略時は false として登録します。false の場合、レジ端末に表示されません。
IsDisplayが true の場合は必須です。isDisplayが true のクイックコマンド間で重複する値は指定できません。
object
1: 値引2: 割引6: 価格リセット9: 取引タグ
登録APIでは 99: 複数コマンド実行 は指定できません。複数コマンド実行を設定する場合は、先に本APIで対象となる通常のクイックコマンドを登録し、更新APIで登録済みのクイックコマンドIDを指定してください。
管理画面の[設定]→[販売設定]→[取引タグ]で確認できる「ID」
#から始まる1〜6桁の16進数を指定してください。
省略時は false として登録します。false の場合、レジ端末に表示されません。
IsDisplayが true の場合は必須です。isDisplayが true のクイックコマンド間で重複する値は指定できません。
省略、または空配列の指定が可能です。
最大99件まで指定できます。
commandに応じた項目のみ設定してください。該当しない項目を設定した場合はエラーになります。
登録APIでは 99: 複数コマンド実行 は指定できません。複数コマンド実行を設定する場合は、先に本APIで対象となる通常のクイックコマンドを登録し、更新APIで登録済みのクイックコマンドIDを指定してください。
object
1: 値引2: 割引5: 0円販売6: 価格リセット7: 数量乗算10: ポイント対象外区分変更
登録APIでは 99: 複数コマンド実行 は指定できません。複数コマンド実行を設定する場合は、先に本APIで対象となる通常のクイックコマンドを登録し、更新APIで登録済みのクイックコマンドIDを指定してください。
1〜9999999999
管理画面の[設定]→[販売設定]→[値引区分]で確認できる「ID」。未指定または null の場合は未選択として登録します。
#から始まる1〜6桁の16進数を指定してください。
省略時は false として登録します。false の場合、レジ端末に表示されません。
IsDisplayが true の場合は必須です。isDisplayが true のクイックコマンド間で重複する値は指定できません。
object
1: 値引2: 割引5: 0円販売6: 価格リセット7: 数量乗算10: ポイント対象外区分変更
登録APIでは 99: 複数コマンド実行 は指定できません。複数コマンド実行を設定する場合は、先に本APIで対象となる通常のクイックコマンドを登録し、更新APIで登録済みのクイックコマンドIDを指定してください。
1〜100
管理画面の[設定]→[販売設定]→[割引区分]で確認できる「ID」。未指定または null の場合は未選択として登録します。
#から始まる1〜6桁の16進数を指定してください。
省略時は false として登録します。false の場合、レジ端末に表示されません。
IsDisplayが true の場合は必須です。isDisplayが true のクイックコマンド間で重複する値は指定できません。
object
1: 値引2: 割引5: 0円販売6: 価格リセット7: 数量乗算10: ポイント対象外区分変更
登録APIでは 99: 複数コマンド実行 は指定できません。複数コマンド実行を設定する場合は、先に本APIで対象となる通常のクイックコマンドを登録し、更新APIで登録済みのクイックコマンドIDを指定してください。
#から始まる1〜6桁の16進数を指定してください。
省略時は false として登録します。false の場合、レジ端末に表示されません。
IsDisplayが true の場合は必須です。isDisplayが true のクイックコマンド間で重複する値は指定できません。
object
1: 値引2: 割引5: 0円販売6: 価格リセット7: 数量乗算10: ポイント対象外区分変更
登録APIでは 99: 複数コマンド実行 は指定できません。複数コマンド実行を設定する場合は、先に本APIで対象となる通常のクイックコマンドを登録し、更新APIで登録済みのクイックコマンドIDを指定してください。
#から始まる1〜6桁の16進数を指定してください。
省略時は false として登録します。false の場合、レジ端末に表示されません。
IsDisplayが true の場合は必須です。isDisplayが true のクイックコマンド間で重複する値は指定できません。
object
1: 値引2: 割引5: 0円販売6: 価格リセット7: 数量乗算10: ポイント対象外区分変更
登録APIでは 99: 複数コマンド実行 は指定できません。複数コマンド実行を設定する場合は、先に本APIで対象となる通常のクイックコマンドを登録し、更新APIで登録済みのクイックコマンドIDを指定してください。
1〜9999999999
#から始まる1〜6桁の16進数を指定してください。
省略時は false として登録します。false の場合、レジ端末に表示されません。
IsDisplayが true の場合は必須です。isDisplayが true のクイックコマンド間で重複する値は指定できません。
object
1: 値引2: 割引5: 0円販売6: 価格リセット7: 数量乗算10: ポイント対象外区分変更
登録APIでは 99: 複数コマンド実行 は指定できません。複数コマンド実行を設定する場合は、先に本APIで対象となる通常のクイックコマンドを登録し、更新APIで登録済みのクイックコマンドIDを指定してください。
0: ポイント対象1: ポイント対象外
#から始まる1〜6桁の16進数を指定してください。
省略時は false として登録します。false の場合、レジ端末に表示されません。
IsDisplayが true の場合は必須です。isDisplayが true のクイックコマンド間で重複する値は指定できません。
Example
{ "storeScope": "1", "name": "string", "stores": [ { "storeId": 1 } ], "totalCommands": [ { "buttonName": "string", "command": "1", "discountAmount": 1234567890, "discountDivisionId": 1234567890, "color": "#0084CF", "isDisplay": false, "displaySequence": 1 } ], "unitCommands": [ { "buttonName": "string", "command": "1", "discountAmount": 1234567890, "discountDivisionId": 1234567890, "color": "#0084CF", "isDisplay": false, "displaySequence": 1 } ]}Responses
Section titled “Responses”登録成功
object
クイックコマンド設定ID
対象店舗範囲
1: 全店2: 店舗指定
名称
対象店舗一覧。storeScopeが 2: 店舗指定 の場合は、対象店舗の一覧を返します。
storeScopeが 1: 全店 の場合は、全店舗が対象のため空配列を返します。
object
店舗ID
合計コマンド一覧。
commandに応じた項目のみ返却されます。該当しない項目は返却されません。
object
クイックコマンドID
ボタン名
コマンド。
1: 値引2: 割引6: 価格リセット9: 取引タグ
値引金額
管理画面の[設定]→[販売設定]→[値引区分]で確認できる「ID」。未選択の場合は null。
表示カラーコード(16進数)。#から始まる1〜6桁の16進数。
表示有無
表示順
object
クイックコマンドID
ボタン名
コマンド。
1: 値引2: 割引6: 価格リセット9: 取引タグ
割引率(1〜100)
管理画面の[設定]→[販売設定]→[割引区分]で確認できる「ID」。未選択の場合は null。
表示カラーコード(16進数)。#から始まる1〜6桁の16進数。
表示有無
表示順
object
クイックコマンドID
ボタン名
コマンド。
1: 値引2: 割引6: 価格リセット9: 取引タグ
表示カラーコード(16進数)。#から始まる1〜6桁の16進数。
表示有無
表示順
object
クイックコマンドID
ボタン名
コマンド。
1: 値引2: 割引6: 価格リセット9: 取引タグ
管理画面の[設定]→[販売設定]→[取引タグ]で確認できる「ID」
表示カラーコード(16進数)。#から始まる1〜6桁の16進数。
表示有無
表示順
単品コマンド一覧。
commandに応じた項目のみ返却されます。該当しない項目は返却されません。
object
クイックコマンドID
ボタン名
コマンド。
1: 値引2: 割引5: 0円販売6: 価格リセット7: 数量乗算10: ポイント対象外区分変更
値引金額
管理画面の[設定]→[販売設定]→[値引区分]で確認できる「ID」。未選択の場合は null。
表示カラーコード(16進数)。#から始まる1〜6桁の16進数。
表示有無
表示順
object
クイックコマンドID
ボタン名
コマンド。
1: 値引2: 割引5: 0円販売6: 価格リセット7: 数量乗算10: ポイント対象外区分変更
割引率(1〜100)
管理画面の[設定]→[販売設定]→[割引区分]で確認できる「ID」。未選択の場合は null。
表示カラーコード(16進数)。#から始まる1〜6桁の16進数。
表示有無
表示順
object
クイックコマンドID
ボタン名
コマンド。
1: 値引2: 割引5: 0円販売6: 価格リセット7: 数量乗算10: ポイント対象外区分変更
0固定
表示カラーコード(16進数)。#から始まる1〜6桁の16進数。
表示有無
表示順
object
クイックコマンドID
ボタン名
コマンド。
1: 値引2: 割引5: 0円販売6: 価格リセット7: 数量乗算10: ポイント対象外区分変更
表示カラーコード(16進数)。#から始まる1〜6桁の16進数。
表示有無
表示順
object
クイックコマンドID
ボタン名
コマンド。
1: 値引2: 割引5: 0円販売6: 価格リセット7: 数量乗算10: ポイント対象外区分変更
数量
表示カラーコード(16進数)。#から始まる1〜6桁の16進数。
表示有無
表示順
object
クイックコマンドID
ボタン名
コマンド。
1: 値引2: 割引5: 0円販売6: 価格リセット7: 数量乗算10: ポイント対象外区分変更
ポイント対象外区分
0: ポイント対象1: ポイント対象外
表示カラーコード(16進数)。#から始まる1〜6桁の16進数。
表示有無
表示順
作成日時:登録時の日時。[YYYY-MM-DDThh:mm:ssTZD]
更新日時:登録時・更新時の日時。[YYYY-MM-DDThh:mm:ssTZD]
Example
{ "quickCommandSettingId": 1, "storeScope": "1", "name": "string", "stores": [ { "storeId": 1 } ], "totalCommands": [ { "quickCommandId": 1, "buttonName": "string", "command": "1", "discountAmount": 1234567890, "discountDivisionId": 1234567890, "color": "#0084CF", "isDisplay": false, "displaySequence": 1 } ], "unitCommands": [ { "quickCommandId": 1, "buttonName": "string", "command": "1", "discountAmount": 1234567890, "discountDivisionId": 1234567890, "color": "#0084CF", "isDisplay": false, "displaySequence": 1 } ], "insDateTime": "2000-01-23T01:23:45+09:00", "updDateTime": "2000-01-23T01:23:45+09:00"}- リクエスト内容が不正な場合
- totalCommands、unitCommands内で指定できないcommandを指定した場合
- totalCommands、unitCommandsに100件以上指定した場合
- totalCommands、unitCommands内でisDisplayにtrueを指定し、displaySequenceを指定していない場合
- totalCommands、unitCommands内で表示対象のdisplaySequenceが重複している場合
- totalCommands、unitCommands内で
99: 複数コマンド実行 を指定した場合 - commandに応じた必須項目が未指定の場合
- commandに応じた項目以外を指定した場合
- 既に全店のクイックコマンド設定が登録されている状態でstoreScopeに
1: 全店 を指定した場合 - storeScopeに
1: 全店 を指定し、storesを指定した場合 - storesに通常店舗以外、または削除済み店舗の店舗IDを指定した場合
- storesに既に他のクイックコマンド設定に紐づいている店舗IDを指定した場合
object
Examples
{ "type": "about:blank", "title": "Bad Request", "detail": "[totalCommands.command] は[1,2,6,9]の中から指定して下さい。", "status": 400}{ "type": "about:blank", "title": "Bad Request", "detail": "[unitCommands.command] は[1,2,5,6,7,10]の中から指定して下さい。", "status": 400}{ "type": "about:blank", "title": "Bad Request", "detail": "[totalCommands] 99件以内で入力してください。", "status": 400}{ "type": "about:blank", "title": "Bad Request", "detail": "[unitCommands] 99件以内で入力してください。", "status": 400}{ "type": "about:blank", "title": "Bad Request", "detail": "[totalCommands.displaySequence] isDisplayがtrueの場合、表示順は必須です。", "status": 400}{ "type": "about:blank", "title": "Bad Request", "detail": "[unitCommands.displaySequence] isDisplayがtrueの場合、表示順は必須です。", "status": 400}{ "type": "about:blank", "title": "Bad Request", "detail": "[totalCommands.displaySequence] 表示対象のクイックコマンド間で表示順は重複できません。", "status": 400}{ "type": "about:blank", "title": "Bad Request", "detail": "[unitCommands.displaySequence] 表示対象のクイックコマンド間で表示順は重複できません。", "status": 400}{ "type": "about:blank", "title": "Bad Request", "detail": "commandが 1:値引 の場合、discountAmountは必須です。", "status": 400}{ "type": "about:blank", "title": "Bad Request", "detail": "commandが 2:割引 の場合、discountRateは必須です。", "status": 400}{ "type": "about:blank", "title": "Bad Request", "detail": "commandが 9:取引タグ の場合、transactionTagIdは必須です。", "status": 400}{ "type": "about:blank", "title": "Bad Request", "detail": "commandが 7:数量乗算 の場合、quantityMultiplierは必須です。", "status": 400}{ "type": "about:blank", "title": "Bad Request", "detail": "commandが 10:ポイント対象外区分変更 の場合、pointNotApplicableは必須です。", "status": 400}{ "type": "about:blank", "title": "Bad Request", "detail": "登録APIでは 99:複数コマンド実行 は指定できません。複数コマンド実行を設定する場合は、先に通常のクイックコマンドを登録し、更新APIで登録済みのクイックコマンドIDを指定してください。", "status": 400}{ "type": "about:blank", "title": "Bad Request", "detail": "commandが 1:値引 の場合、discountRateは指定できません。", "status": 400}{ "type": "about:blank", "title": "Bad Request", "detail": "commandが 6:価格リセット の場合、discountAmountは指定できません。", "status": 400}{ "type": "about:blank", "title": "Bad Request", "detail": "既に全店のクイックコマンド設定が登録されています。", "status": 400}{ "type": "about:blank", "title": "Bad Request", "detail": "storeScopeが 1:全店 の場合、storesは指定できません。", "status": 400}{ "type": "about:blank", "title": "Bad Request", "detail": "対象店舗には通常店舗のみ指定できます。", "status": 400}{ "type": "about:blank", "title": "Bad Request", "detail": "既に他のクイックコマンド設定に紐づいている店舗は指定できません。", "status": 400}