メニュー
GMOペパボ株式会社
API ドキュメント

カラーミーショップ API インターフェイス v1

各 API インターフェイスです。HTTP メソッドと https://api.shop-pro.jp 以下のパスを記載しています。



GET /v1/shop.json

ショップの基本情報を取得

レスポンス

{
    "shop": {
        "id": "PAXXXXXXXX",                         // ショップアカウントid
        "domain_plan": "cmsp_sub_domain",           // ドメインプラン。"cmsp_sub_domain" = shop-pro.jpサブドメイン。 "own_domain" = 独自ドメイン。 "own_sub_domain" = 持ち込みサブドメイン
        "contract_plan": "large",                   // 契約中のプラン
        "contract_start_date": 1509462000,          // 契約開始日。(契約中のプランがfor heteml, for ロリポップ!, for グーペの場合はnull)
        "contract_end_date": 1511967600,            // 契約終了日。(契約中のプランがfor heteml, for ロリポップ!, for グーペの場合はnull)
        "contract_term": 1,                         // 契約期間(月単位)
        "state": "enabled",                         // アカウント状態。"enabled" = 有効。"suspended" = 停止。"unsigned" = お試し期間中。
        "last_login_date": 1362390061,              // 管理画面への最終ログイン日時
        "setup_date": 1353922083,                   // 申し込み完了の日時
        "make_date": 1353922070,                    // アカウントが作成された日時
        "url": "http://XXX.shop-pro.jp",            // ショップURL
        "login_id": "fkubotar",                     // ログインID
        "name1": "山田",                             // 登録者氏名(姓)
        "name2": "太郎",                             // 登録者氏名(名)
        "name1_kana": "ヤマダ",                      // 登録者氏名カナ(性)
        "name2_kana": "タロウ",                       // 登録者氏名カナ(名)
        "hojin": "",                                // 法人名
        "hojin_kana": "",                           // 法人名カナ
        "user_mail": "tarou@example.com",           // 登録者メールアドレス
        "tel": "111-1111-1111",                     // 登録者電話番号
        "fax": null,                                // 登録者FAX番号
        "postal": "1710014",                        // 郵便番号
        "pref_id": 13,                              // 都道府県id
        "pref_name": "東京都",                       // 都道府県名     
        "address1": "◯×区△町1-1-1",                 // 住所1
        "address2": "",                             // 住所2
        "title": "○×商店",                           // ショップタイトル
        "title_short": "○×商店",                    // ショップタイトル省略(メール用)
        "shop_mail_1": "shop@example.com",         // ショップメールアドレス
        "shop_mail_2": "",
        "open_state": "opened",                     // 開店状態 "opened" = 開店。"closed" = 閉店。 "prepare" = 準備中。
        "mobile_open_state": "opened"               // モバイルショップ開店状態
    }
}

リクエストパラメータ

パラメータ名 有効な値 説明
fields カンマ区切り文字列 JSONのキー名を指定

(例

https://api.shop-pro.jp/v1/shop.json?fields=id,title

[]


GET /v1/sales/stat.json

売上の件数・金額など集計した値を取得

レスポンス

{
    "sales_stat": {
        "account_id": "PAXXXXXXXX", // ショップアカウントID
        "date": 1363151732,         // 今日の日付 または 指定した日付
        "amount_today": 15000,          // 今日(または指定した日付)の売上金額
        "count_today":  10,          // 今日(または指定した日付)の売上件数
        "amount_this_month": 450000      // 今月(または指定した日付の月)の売上金額
        "count_this_month": 300       // 今月(または指定した日付の月)の売上件数
    }
}

リクエストパラメータ

パラメータ名 有効な値 説明
make_date 日付の文字列表現(例: 2016-06-14、2016/06/14 対象日付

[]


GET /v1/sales.json

受注データのリストを取得(日時が指定されていない場合は直近1週間分を取得します)

レスポンス

{
 "sales": [
    {
      "id": 139208,                          // 受注id
      "account_id": "PAXXXXXXXX",            // ショップアカウントID
      "make_date": 1363151732,               // 受注作成日時
      "update_date": 1363151732,             // 受注データ更新日時
      "mobile": false,                       // 携帯: true, PC・スマホ: false
      "paid": true,                          // 入金済みのときtrue
      "delivered": true,                     // 配送済みのときtrue
      "canceled": false,                     // キャンセルがあったときtrue
      "product_total_price": 525,            // 商品の合計金額
      "delivery_total_charge": 800,          // 配送料の合計金額
      "tax": 25,                             // 消費税 (商品の合計金額に対する)
      "fee": 315,                            // 決済手数料
      "noshi_total_charge": 200,             // 熨斗手数料小計
      "card_total_charge": 200,              // メッセージカード手数料小計
      "wrapping_total_charge": 200,          // ラッピング手数料小計
      "point_discount": 0,                   // ショップポイントによる割引金額
      "gmo_point_discount": 0,               // GMOポイントによる割引金額
      "other_discount": 0,                   // その他割引金額(GMO(infoQ)クーポンによる割引額、または受注編集画面で入力された金額)
      "other_discount_name": null,           // その他割引名称
      "total_price": 1350,                   // 総額

      "point_state": "fixed",                // ショップポイント付与状態 "assumed" = 仮。 "fixed" = 確定。"canceled" = キャンセル。
      "granted_points": 10,                  // 付与ショップポイント数
      "use_points": 0,                       // 決済時に使用したショップポイント数

      "gmo_point_state": "fixed",            // GMOポイント付与状態 "assumed" = 仮。 "fixed" = 確定。"canceled" = キャンセル。
      "granted_gmo_points": 10,              // 付与GMOポイント数
      "use_gmo_points": 0,                   //決済時に使用したGMOポイント数

      "yahoo_point_state": "fixed",          // Yahooポイント付与状態 "assumed" = 仮。 "fixed" = 確定。"canceled" = キャンセル。
      "granted_yahoo_points": 10,            // 付与Yahooポイント数
      "use_yahoo_points": 0,                 //決済時に使用したYahooポイント数

      "accepted_mail_state": "sent",         // 受注メール送信状態。"not_yet" = 未送信, "sent" = 送信済。"pass" = 送信しない。
      "accepted_mail_sent_date": 1363151732, // 受注メール送信日時

      "paid_mail_state": "sent",             // 入金メール送信状態。"not_yet" = 未送信, "sent" = 送信済。"pass" = 送信しない。
      "paid_mail_sent_date": 1363151732,      // 入金メール送信日時

      "delivered_mail_state": "sent",         // 配送メール送信状態。"not_yet" = 未送信, "sent" = 送信済。"pass" = 送信しない。
      "delivered_mail_sent_date": 1363151732, // 配送メール送信日時

      "payment_id": 19827,
      "customer": {
        "id": 1028030,                      // 購入者id (customer_id)
        "name": '山田太郎',                   // 購入者氏名
        "furigana": 'ヤマダタロウ',           // 購入者氏名カナ
        "hojin": '○×株式会社',               // 法人名
        "busho": '△部',                    // 部署名
        "postal": '171-0014',               // 郵便番号
        "pref_id": 13,                      // 都道府県id
        "pref_name": "東京都",               // 都道府県名
        "address1": '東京都○×市',            // 住所1
        "address2": '1-1-1 △△ 2F',        // 住所2
        "mail": 'xxx@example.com',          // 購入者メールアドレス
        "tel": '11-1111-1111',              // 購入者電話番号
        "fax": null,                        // 購入FAX番号
        "tel_mobile": '090-111-1111',       // 購入者携帯電話番号
        "memo": '備考の情報',               // 備考
        "sex": 'male',                      // 購入者性別。"mal" = 男性,。"femal" = 女性。
        "member": true,                     // ショップの会員か否か
        "sales_count": 2,                   // これまでの購入回数
        "points": 12                        // 所持ショップポイント数
      },
      "details": [                          // 受注明細
        {
          "id": 6698237,                    // 受注明細id
          "account_id": "PAXXXXXXXX",       // ショップアカウントID
          "product_id": 102893,
          "option1_value": "激辛",            // 商品オプション1の値。(オプション1がない場合はnull)
          "option2_value": null,             // 商品オプション2の値。(オプション2がない場合はnull)
          "sale_delivery_id": 1173289,       // 配送設定ID
          "product_model_number": 'CN-BX01', // 商品に設定されている型番
          "product_name": 'グリーンカレー',     // 商品名
          "product_cost": null,              // 商品原価
          "product_image_url": "http://img07.shop-pro.jp/XXX/XX/product/123.jpg?20130319164314", // 商品画像URL
          "product_thumbnail_image_url": "http://img07.shop-pro.jp/XXX/XX/product/123_th.jpg?20130319164314", // 商品画像URL(サムネイル)
          "product_mobile_image_url": "http://img07.shop-pro.jp/XXX/XX/product/123_mb.jpg?20130319164314", // 商品画像URL (モバイル用)
          "price": 500,                      // 販売価格
          "price_with_tax": 525,             // 販売価格(税込み)
          "product_num": 1,                  // 個数
          "unit": '個',                      // 個数の単位
          "subtotal_price": 500             // 小計(販売価格×購入数)
        },
      ],
      "sale_deliveries": [
        {
          "id": 1173289,                    // 配送ID
          "delivery_id": 8291,              // 配送設定ID
          "account_id": "PAXXXXXXXX",       // ショップアカウントID
          "detail_ids": [6698237],          // この配送に含まれる受注明細idの配列
          "name": '山田太郎',
          "furigana": 'ヤマダタロウ',
          "postal": '171-0013',
          "pref_id": 13,
          "pref_name": "東京都",
          "address1": '○×',
          "address2": '△△',
          "tel": '111-1111-1111',
          "memo": '',
          "preferred_date": '2013-03-12',
          "preferred_period": '午前中',
          "slip_number": '1674-9587-XXXX',
          "noshi_text": '熨斗の表示名',
          "noshi_charge": 200,                      // 熨斗の手数料
          "card_name": 'メッセージカード',              // メッセージカードの種類
          "card_text": '中林さんへ....',              // メッセージカードテキスト
          "card_charge": 200,                       // メッセージカード手数料
          "wrapping_name": 'ギフトラッピング(女の子)', // ラッピングの種類
          "wrapping_charge": 200,                   // ラッピング手数料
          "delivery_charge": 200,                   // 配送料
          "total_charge": 800,                      // 配送料・手数料の小計
          "delivered": true                        // 配送済みのときtrue
        }
      ]
    }
  ],
  "meta": {
    "total": 5000,   // トータル件数
    "limit": 10,     // 実行されたlimit数値
    "offset": 0      // 実行されたoffset数値
  }
}

リクエストパラメータ

パラメータ名 有効な値 説明
ids カンマ区切りidリスト (例: 101,102 受注idを検索
after 日時の文字列表現
(例: 2012-01-01 または 2012-01-01 15:00:00 など
指定した日時以後の受注を検索
before 指定した日時以前の受注を検索
make_date_min 指定した日時以後の受注を検索
make_date_max 指定した日時以前の受注を検索
update_date_min 指定した日時以後に更新された受注を検索
update_date_max 指定した日時以前に更新された受注を検索
customer_ids カンマ区切りidリスト 購入者idを検索。
see /v1/customers.json
customer_name 任意の文字列。日本語可。utf-8 購入者名で検索(部分一致)
customer_furigana 任意の文字列。カタカナ。utf-8 購入者フリガナで検索(部分一致)
customer_mail 任意の文字列 購入者メールアドレスを検索(部分一致)
accepted_mail_state 0: 未送信 または
1: 送信済 または
2: 送信しない
受注メール送信状態で検索
paid_mail_state 入金メール送信状態で検索
delivered_mail_state 配送メール送信状態で検索
mobile true または false true: 携帯からの受注のみ。
false: PC・スマホからの受注のみ。
それ以外: 両方
paid true または false true: 入金済みの受注を検索。
false: 未入金のみ。
それ以外: 両方
delivered true または false true: 全て配送済の受注を検索。
false: 未配送が残る受注を検索。
それ以外: 両方
payment_ids カンマ区切りidリスト 決済idを検索。
see /v1/payments.json
fields カンマ区切り文字列 JSONのキー名を指定
limit 数値 件数。指定なしの場合10。最大50。
offset 数値 指定した数値+1件目のデータを返す。

curlでの例

curl -X GET \
-H 'Authorization: Bearer xxxxx' \
-H 'Content-Type: application/json' \
https://api.shop-pro.jp/v1/sales.json \
-d \
'{
  "after": "2016-08-30",
  "mobile": false,
  "paid": true,
  "limit": 20
}'

[]


GET /v1/sales/#{id}.json

指定したidの受注データを取得

(例

https://api.shop-pro.jp/v1/sales/1001.json

レスポンスボディ

{
  "sale": {
    // プロパティは、sales.jsonの個々のデータと同一
  }
}

[]


PUT /v1/sales/#{id}.json

受注データを更新します。

  • Amazon Pay または楽天ペイ(オンライン決済)による受注の場合は、熨斗・メッセージカード・ラッピングの手数料を更新すると、決済金額が自動的に購入者に請求もしくは返金されます。

以下の形式でリクエストを送ってください。

  • HTTPメソッド : PUT
  • Content-Typeヘッダ : application/json
  • リクエストボディ : JSON
  • #{id}.json の形式で、受注idを指定

リクエストJSONパラメータ

パラメータ名 有効な値 説明
sale["paid"] true または false true = 入金済み
false = 未入金
対応する決済サービスとの連携は別途行う必要があります
sale["point_state"] "fixed", "assumed", "canceled" のうちいずれか "assumed" = ショップポイント仮発行状態
"fixed" = ショップポイント確定状態
"canceled" = ショップポイントキャンセル状態。

* "fixed"から別のステータスへ変更することはできません。
* "fixed"へ変更したとき、購入者へショップポイントが付与されます。
* ポイント付与のメール送信は必要であれば別途行って下さい。
sale["sale_deliveries"] 配送データの配列 下記を参照
sale["sale_deliveries"][0]["id"] 数値 配送idを指定
sale["sale_deliveries"][0]["slip_number"] 任意の文字列 配送伝票番号
sale["sale_deliveries"][0]["delivered"] true または false true = 配送済み
false = 未配送。
sale_deliveries配列の全てのdeliveredがtrueになると、自動的に、sale["delivered"] もtrueになります。
sale["sale_deliveries"][0]["name"] 任意の文字列 配送先の氏名
sale["sale_deliveries"][0]["furigana"] 任意の文字列 配送先の氏名フリガナ
sale["sale_deliveries"][0]["postal"] 数値のみ 配送先の郵便番号
sale["sale_deliveries"][0]["pref_id"] 数値 配送先の都道府県id (※1)
sale["sale_deliveries"][0]["address1"] 任意の文字列 配送先の住所1
sale["sale_deliveries"][0]["address2"] 任意の文字列 配送先の住所2
sale["sale_deliveries"][0]["tel"] 数字とハイフンの文字列 配送先の電話番号
sale["sale_deliveries"][0]["noshi_charge"] 数値 熨斗手数料
sale["sale_deliveries"][0]["noshi_text"] 任意の文字列 熨斗テキスト
sale["sale_deliveries"][0]["card_charge"] 数値 メッセージカード手数料
sale["sale_deliveries"][0]["card_name"] 任意の文字列 メッセージカード種類
sale["sale_deliveries"][0]["card_text"] 任意の文字列 メッセージカードのメッセージ
sale["sale_deliveries"][0]["wrapping_charge"] 数値 ラッピング手数料
sale["sale_deliveries"][0]["wrapping_name"] 任意の文字列 ラッピングの種類
sale["sale_deliveries"][0]["wrapping_text"] 任意の文字列 ラッピングのメッセージ
sale["sale_deliveries"][0]["preferred_date"] 日付の日時の文字列表現
(例: 2012-01-01、2012/01/01
配送希望日
sale["sale_deliveries"][0]["preferred_period"] 任意の文字列 配送希望時間帯
(例: 午前中、18時~20時 など
  • (例
    {
      "sale": {
        "point_state: "fixed",
        "sale_deliveries": [ // 配送データの配列
          { 
            "id": 1001, // 更新したい配送の配送id
            "slip_number": "AAAA-001-0001", // 配送伝票番号
            "delivered": true,
          }
        ]
      }
    }
    

レスポンス

  • 成功 - ステータスコード200 で、更新後の受注データがボディで返されます。 {"sale": { ... }}
  • JSONパースエラー - 400
  • 入力内容が不正 - 422
  • エラーの詳細はレスポンスボディにJSONで返されます

[]


PUT /v1/sales/#{id}/cancel.json

受注をキャンセルします。

  • キャンセルステータスがtrueになります。
  • 商品購入数が0になります。
  • 合計金額が0になります。
  • Amazon Pay または楽天ペイ(オンライン決済)による受注の場合は、決済金額が自動的に購入者に返金されます。
  • ショップポイントがキャンセルされます。
    • 購入者のポイント数が変更されます。
  • 販売手数料確定前

    • 販売手数料が0になります。
    • 付与したTポイントがキャンセルされます。
    • 付与したGMOポイントがキャンセルされます。
    • 購入者が使用したGMOポイントがキャンセルされます。
  • 現在、以下の機能はサポートしていません。

    • Tポイント使用があった受注のキャンセル

以下の形式でリクエストを送ってください。

  • HTTPメソッド : PUT
  • Content-Typeヘッダ : application/json
  • リクエストボディ : JSON
  • /v1/sales/#{id}/cancel.json の形式で、受注idを指定

リクエストJSONパラメータ

パラメータ名 有効な値 説明
restock true または false trueの場合、在庫管理している商品について、購入ぶんの在庫数を引当します。

レスポンス

  • 成功 - ステータスコード200 で、更新後の受注データがボディで返されます。 {"sale": { ... }}
  • エラーの詳細はレスポンスボディにJSONで返されます

POST /v1/sales/#{id}/mails.json

受注メール・入金確認メール・商品発送メールを送信する

以下の形式でリクエストを送ってください。

  • HTTP メソッド: POST
  • Content-Type ヘッダー : application/json
  • リクエストボディ: JSON
  • /v1/sales/#{id}/mails.json の形式で、受注 id を指定

(例

https://api.shop-pro.jp/v1/sales/1001/mails.json

リクエストパラメータ

パラメータ名 有効な値 説明
mail["type"] "accepted", "paid", "delivered" のうちいずれか "accepted" = 受注メールを送信する
"paid" = 入金確認メールを送信する
"delivered" = 商品発送メールを送信する

レスポンス

  • 成功 - ステータスコード 201
  • 入力内容が不正 - 422
  • エラーの詳細はレスポンスボディに JSON で返されます

GET /v1/customers.json

購入者データのリストを取得

{
  "customers": [
    {
      "id": 1028030,                      // 購入者id (customer_id)
      "name": '山田太郎',                   // 購入者氏名
      "furigana": 'ヤマダタロウ',           // 購入者氏名カナ
      "hojin": '○×株式会社',               // 法人名
      "busho": '△部',                    // 部署名
      "postal": '171-0014',               // 郵便番号
      "pref_id": 13,                      // 都道府県id
      "pref_name": "東京都",               // 都道府県名
      "address1": '東京都○×市',            // 住所1
      "address2": '1-1-1 △△ 2F',        // 住所2
      "mail": 'xxx@example.com',          // 購入者メールアドレス
      "tel": '11-1111-1111',              // 購入者電話番号
      "fax": null,                        // 購入FAX番号
      "tel_mobile": '090-111-1111',       // 購入者携帯電話番号
      "memo": '備考の情報',               // 備考
      "sex": 'male',                      // 購入者性別。"mal" = 男性,。"femal" = 女性。
      "member": true,                     // ショップの会員か否か
      "sales_count": 2,                   // これまでの購入回数
      "points": 12                        // 所持ショップポイント数
    }
  ],
  "meta": {
    "total": 5000,   // トータル件数
    "limit": 10,     // 実行されたlimit数値
    "offset": 0      // 実行されたoffset数値
  }
}

リクエストパラメータ

パラメータ名 有効な値 説明
ids カンマ区切りidリスト (例: 101,102 購入者idを検索
name 任意の文字列。日本語可。utf-8 購入者名で検索(部分一致)
furigana 任意の文字列。カタカナ。utf-8 購入者フリガナで検索(部分一致)
mail 任意の文字列 購入者メールアドレスを検索(部分一致)
postal 任意の文字列 郵便番号を検索(部分一致)
tel 任意の文字列 電話番号を検索(部分一致)
members true: 会員登録済み。
false: 未登録。
それ以外: 両方
make_date_min 日付の文字列表現。
(例 "2013-01-01 00:00:00"
指定した日時以後に登録された顧客を検索
make_date_max 指定した日時以前に登録された顧客を検索
update_date_min 指定した日時以後に更新された顧客を検索
make_date_max 指定した日時以前に更新された顧客を検索

[]


GET /v1/customers/#{id}.json

指定したidの顧客データを取得

(例

https://api.shop-pro.jp/v1/customers/1001.json

レスポンスボディ

{
  "customer": {
    // プロパティは、customers.jsonの個々のデータと同一
  }
}

[]


GET /v1/products.json

商品データ取得

レスポンス

{
    "products": [
        {
            "id": 25322798,                // 商品iD
            "model_number": "",            // ユーザが設定している商品の型番
            "name": "○×マグカップ",          // 商品名
            "category": {                  // カテゴリ (idのみ)
                "id_big": 842657,          // 大カテゴリid
                "id_small": 0              // 小カテゴリid
            },
            "sales_price": 800,            // 販売価格
            "price": null,                 // 定価
            "members_price": 800,          // 会員向け価格
            "cost": null,                  // 原価
            "cool_charge": null,           // クール便の追加料金 cool_price
            "delivery_charge": null,       // 個別送料 postage
            "stock_managed": false,        // 在庫管理している場合はtrue
            "stocks": 0,                   // 在庫管理している場合の在庫数。オプションごとに在庫が設定されている場合は、その合計値
            "min_num": null,               // 最小購入数量
            "max_num": null,               // 最大購入数量
            "sale_start_date": 1364363930, // 掲載開始日時 start_date, start_time
            "sale_end_date": 1364363930,   // 掲載終了日時 end_date, end_time
            "unit": "冊",                  // 個数の単位
            "weight": 350,                 // 重さ(単位:g)
            "soldout_display": false,      // 売り切れ時もショップに表示する場合はtrue
            "few_num": null,               // 在庫残りわずか状態になる個数
            "sort": 27,                    // 並び順。小さいほど前の順番で表示される
            "simple_expl": "",             // 商品説明(簡易)
            "expl": "<div class=86ee5f0e28338d062bfed4c4c49c5e6c0e150a2equot;product_intxt86ee5f0e28338d062bfed4c4c49c5e6c0e150a2equot;>B.L.T.では3年にわたって掲載をしてきた、新垣結衣カメラ散歩連載「ゆいです。」のモバイル写真集カードを発売!\r\n\r\n ... ", // 商品説明
            "smartphone_expl": "",         // 商品説明(スマホ表示用)
            "tb_received": false,          // 商品ページへのトラックバック機能を有効にする場合はtrue
            "display_state": "showing",    // "showing" : 掲載、 "hidden": 非掲載、"showing_for_members": 会員にのみ掲載、"sale_for_members": 会員にのみ販売
            "make_date": 1291969961,
            "update_date": 1355128361,
            "memo": "",                    // 備考
            "image_url": "http://img07.shop-pro.jp/PAXXX/XXX/product/123.jpg?20101222173449", // メイン画像url
            "mobile_image_url": "http://img07.shop-pro.jp/PAXXX/XXX/product/123_mb.jpg?20101222173449", // モバイル用メイン画像url。
            "thumbnail_image_url": "http://img07.shop-pro.jp/PAXXX/XXX/product/123_th.jpg?20101222173449", // サムネイル画像url
            "images": [ // その他の画像が設定されている場合
                {
                    "src": "http://img07.shop-pro.jp/PAXXX/XXX/product/123_o1.jpg?20101222173449", // 画像url
                    "position": 1,  // 番号。ショップではこの順番に表示される
                    "mobile": false // 携帯用の場合true
                },
                {
                    "src": "http://img07.shop-pro.jp/PAXXXX/XXX/product/123_o1_mb.jpg",
                    "position": 1,
                    "mobile": true
                }
            ],
            "options": [ // この商品に対して付与できる商品オプションの一覧
                {
                    "id": 5337190,               // オプションid
                    "product_id": 25322798,      // 商品id
                    "account_id": "PAXXXXXXXX",  // ショップアカウントID
                    "name": "色",
                    "make_date": 1292319916,
                    "update_date": 1292319916,
                    "values": ["赤", "青"],
                },
                {
                    "id": 5337191,
                    "product_id": 25322798,
                    "account_id": "PAXXXXXXXX",
                    "name": "サイズ",
                    "make_date": 1292319916,
                    "update_date": 1292319916,
                    "values": ["S", "M", "L"],
                }
            ],
            "variants": [ // 商品オプションを付与したバリエーションデータ
                {
                    "product_id": 25322798,       // 商品id
                    "option1_value": "赤",        // オプション1の値
                    "option2_value": "S",         // オプション2の値
                    "title": "赤 x S",            // オプション1、オプション2 を組み合わせたタイトル
                    "stocks": null,               // 在庫数
                    "model_number": "RED_S_0001", // 型番
                    "few_num": null,              // 残りわずか状態になる在庫数
                    "option_price": 800,          // 販売価格
                    "option_members_price": 800,  // 会員向け価格
                    "make_date": 1303715269,
                    "update_date": 1303715269
                },
                {
                    "product_id": 25322798,
                    "option1_value": "赤"
                    "option2_value": "M",
                    "title": "赤 × M",
                    "stocks": null,
                    "model_number": "RED_M_0002",
                    "few_num": null,
                    "option_price": 800,
                    "option_members_price": 800,
                    "make_date": 1303715269,
                    "update_date": 1303715269
                }
                // ... オプション1、オプション2 全ての組み合わせぶんのバリエーションが常に存在する
            ]
        }
    ],
    "meta": {
      "total": 5000,   // トータル件数
      "limit": 10,     // 実行されたlimit数値
      "offset": 0      // 実行されたoffset数値
    }
}

リクエストパラメータ

パラメータ名 有効な値 説明
ids カンマ区切りidリスト 商品idで検索
category_id_big 大カテゴリid 大カテゴリで検索
category_id_small 小カテゴリid 小カテゴリで検索
model_number 任意の文字列 型番で検索 (部分一致)
name 任意の文字列(UTF-8) 商品名で検索 (部分一致)
display_state 右記のいずれか showing または 0 : 掲載状態。
hidden または 1 : 非掲載状態。
showing_for_members または 2 : 会員にのみ掲載。
sale_for_members または 3 : 掲載状態。購入は会員のみ可能。
それ以外 : すべての状態。
stock_managed true または false true : 在庫管理している商品を検索。
false : 在庫管理していない商品を検索。
それ以外 : 両方。
stocks 0以上の数値 指定した数以下の在庫数の商品を検索。
在庫管理している商品のみ対象。オプションごとに在庫管理している商品は、オプションごとの在庫数で検索される。
recent_zero_stocks true true : 過去1週間以内に更新された、在庫数が0の商品を検索。
それ以外 : 指定なし
make_date_min 日時の文字列表現
(例: 2012-01-01 または 2012-01-01 15:00:00 など
指定した日付以降に作成された商品を検索
make_date_max 指定した日付以前に作成された商品を検索
update_date_min 指定した日付以降に更新された商品を検索
update_date_max 指定した日付以前に更新された商品を検索
fields カンマ区切り文字列 JSONのキー名を指定
limit 数値 件数。指定なしの場合10。最大50。
offset 数値 指定した数値+1件目のデータを返す。

[]


GET /v1/products/#{id}.json

指定したidの商品データを取得

(例

https://api.shop-pro.jp/v1/products/1001.json

レスポンスボディ

{
  "product": {
    // プロパティは、products.jsonの個々のデータと同一
  }
}

[]


PUT /v1/products/#{id}.json

商品データの更新

以下の形式でリクエストを送ってください。

  • HTTPメソッド : PUT
  • Content-Typeヘッダ : application/json
  • リクエストボディ : JSON
  • #{id}.json の形式で、商品idを指定

リクエストJSONパラメータ

パラメータ名 有効な値 説明
product["name"] 任意の文字列 (50文字以内) 商品名
product["model_number"] 任意の文字列 (50文字以内) 型番
product["price"] 0以上の数値 定価
product["category_id_big"] 0以上の数値 登録している大カテゴリid
product["category_id_small"] 0以上の数値 登録している小カテゴリid
0が指定された場合には大カテゴリを指す
product["cost"] 0以上の数値 原価
product["sales_price"] 0以上の数値 販売価格
product["members_price"] 0以上の数値 会員向け販売価格
product["display_state"] 右記のいずれか showing または 0 : 掲載状態。
hidden または 1 : 非掲載状態。
showing_for_members または 2 : 会員にのみ掲載。
sale_for_members または 3 : 掲載状態。購入は会員のみ可能
product["stocks"] 0以上の数値。または {"increment": 数値} 在庫数。もし、商品オプションごとに在庫管理している場合は無視される。
{increment: 数値} を指定した場合は、指定した値ぶん加算される。(負の値も指定可)
product["stock_managed"] true または false true : 在庫管理する。 false : 在庫管理しない。
product["simple_expl"] 文字列(255文字以内) 簡易説明
product["expl"] 文字列 説明
product["smartphone_expl"] 文字列 スマートフォンショップ用説明
product["variants"] 商品バリエーションデータの配列 下記を参照
※全商品バリエーション分のデータ配列を送る必要があります
product["variants"][0]["option1_value"] 文字列 更新対象の商品バリエーションに設定されているオプション1の値
product["variants"][0]["option2_value"] 文字列 更新対象の商品バリエーションに設定されているオプション2の値
product["variants"][0]["stocks"] 0上の数値。または {"increment": 数値} 商品バリエーションごとの在庫数。{increment: 数値} を指定した場合は、指定した値ぶん加算される。(負の値も指定可)
  • (例
    • 商品データの更新
      {
        "product": {
          "stocks": 3,
          "display_state": "showing"
        }
      }
      
    • 商品バリエーションごとのデータを更新する場合
      {
        "product": {
          "display_state": "showing",
          "variants": [ // オプション付与ごとの商品データの配列
            {
              "option1_value": "赤", // オプション1の値
              "option2_value": "S",  // オプション2の値。オプション2がない商品の場合はnull
              "stocks": 3
            },
            {
              "option1_value": "赤",
              "option2_value": "M",
              "stocks": {"increment": -1}
            }
          ]
        }
      }
      

レスポンス

  • 成功 - ステータスコード200 で、更新後の商品データがボディで返されます。 {"product": { ... }}
  • JSONパースエラー - 400
  • 入力内容が不正 - 422
  • エラーの詳細はレスポンスボディにJSONで返されます

[]


GET /v1/stocks.json

在庫を検索します。

{
    "stocks": [
        {
            "product_id": 298,          // 商品ID
            "account_id": "PAXXXXXXXX", // ショップアカウントID
            "name": "Tシャツ",
            "option1_value": "赤",
            "option2_value": "Sサイズ",
            "stocks": 98,
            "few_num": 30,
            "model_number": null,
            "category": {
                "id_big": 31,
                "id_small": 0
            },
            "display_state": "showing",
            "sales_price": 100,
            "price": null,
            "members_price": 100,
            "cost": null,
            "cool_charge": null,
            "delivery_charge": null,
            "min_num": null,
            "max_num": null,
            "sale_start_date": null,
            "sale_end_date": null,
            "unit": null,
            "weight": null,
            "soldout_display": false,
            "sort": null,
            "simple_expl": null,
            "expl": null,
            "mobile_expl": null,
            "smartphone_expl": null,
            "tb_received": false,
            "make_date": 1362451044,
            "update_date": 1362451044,
            "memo": "",
            "image_url": "http://example.com/298.jpg?20130108084540",
            "mobile_image_url": "http://example.com/298_mb.jpg?20130108084540",
            "thumbnail_image_url": "http://example.com/298_th.jpg?20130108084540",
            "images": [
                {
                    "src": "http://example.com/298_o1.jpg?20130108084540",
                    "position": 1,
                    "mobile": false
                },
                {
                    "src": "http://example.com/0_o1_mb.jpg",
                    "position": 1,
                    "mobile": true
                }
            ]
        }
    ],
    "meta": {
        "total": 5000,   // トータル件数
        "limit": 10,     // 実行されたlimit数値
        "offset": 0      // 実行されたoffset数値
    }
}

リクエストパラメータ

パラメータ名 有効な値 説明
ids カンマ区切りidリスト 商品idで検索
category_id_big 大カテゴリid 大カテゴリで検索
category_id_small 小カテゴリid 小カテゴリで検索
model_number 任意の文字列 型番で検索 (部分一致)
name 任意の文字列(UTF-8) 商品名で検索 (部分一致)
display_state 右記のいずれか showing または 0 : 掲載状態。
hidden または 1 : 非掲載状態。
showing_for_members または 2 : 会員にのみ掲載。
sale_for_members または 3 : 掲載状態。購入は会員のみ可能。
それ以外 : すべての状態。
stocks 0以上の数値 指定した数以下の在庫数の商品を検索。
在庫管理している商品のみ対象。
stock_manged=falseを指定した場合は無視される。
オプションごとに在庫管理している商品は、合計在庫数で検索される。
recent_zero_stocks true true : 過去1週間以内に更新された、在庫数が0の商品を検索。
それ以外 : 指定なし
fields カンマ区切り文字列 JSONのキー名を指定
limit 数値 件数。指定なしの場合10。最大50。
offset 数値 指定した数値+1件目のデータを返す。

[]


GET /v1/categories.json

カテゴリ一覧を取得

{
  "categories": [ // 大カテゴリのリスト
    {
      "id_big": 1084073,                   // 大カテゴリid
      "id_small": 0,                       // 小カテゴリid。0は、大カテゴリを表す
      "account_id": "PAXXXXXXXX",         // ショップアカウントID
      "name": "かわいい",                   // 大カテゴリ名
      "image_url": "http://img15.shop-pro.jp/PAXXX/XXX/category/1_0.jpg",   // カテゴリ画像url
      "expl": "",                         // 説明文
      "sort": 41,                         // ショップでの表示順。数字が小さいほど優先。
      "display_state": "showing",         // 掲載ステータス。"showing" : 掲載。 "hidden": 非掲載。 "members_only" : 会員にのみ掲載
      "make_date": 1315206850,
      "update_date": 1346829250
      "children": [ // この大カテゴリに属する小カテゴリのリスト
        { // プロパティは、大カテゴリと同一
          "id_big": 1084073,                   // 大カテゴリid
          "id_small": 1,                       // 小カテゴリid
          "account_id": "PAXXXXXXXX",         // ショップアカウントID
          "name": "RED",                       // 小カテゴリ名
          "image_url": "http://img15.shop-pro.jp/PAXXX/XXX/category/1_1.jpg",   // カテゴリ画像url
          "expl": "",                         // 説明文
          "sort": 41,                         // ショップでの表示順。数字が小さいほど優先。
          "display_state": "showing",         // 掲載ステータス。"showing" : 掲載。 "hidden": 非掲載。 "members_only" : 会員にのみ掲載
          "make_date": 1315206850,
          "update_date": 1346829250
        }
      ],
    }
  ]
}

[]


GET /v1/groups.json

商品グループ一覧を取得

レスポンス

{
  "groups": [
    {
      "id": 478729,
      "account_id": "PAXXXXXXXX",
      "name": "商品グループ名",
      "image_url": "https://...",
      "expl": "商品グループについての説明",
      "sort": 0,
      "display_state": "showing"
    }
  ]
}

[]


GET /v1/payments.json

決済設定一覧を取得

レスポンス

{
  "payments": [
    {
      "id": 49,                   // このデータのユニークid
      "account_id": "PAXXXXXXXX", // ショップアカウントID
      "name": "クレジット",         // ユーザが設定した名前
      "fee": null,               // 一律の手数料。(代引一律の場合等しか使ってない)
      "image_url": "http://img01.shop-pro.jp/PAXXX/XXX/payment/7.jpg?20121205164241",
      "ip_code": "11444900",    // Epsilon等との契約コード
      "make_date": 1358306248,
      "update_date": 1358306248,
      "order_end_note": null,   // 決済完了画面の注意コメント(タグ入力不可)
      "memo": null,             // 備考(特定商取引法の表示、決済選択画面にて使用)
      "memo_mobile": null,      // 備考(モバイル)
      "sort": 50,          // 表示順
      "type": 6, // 決済方法
        //    0:代引き
        //    1:銀行
        //    2:郵便
        //    3:クレジット[ZEUS]
        //    4:クロネコ@ペイメント
        //    5:NP後払い
        //    6:クレジット(Epsilon)
        //    7:コンビニ(Epsilon)
        //    8:カラーミークレジット
        //    9:その他
        //    10:ウェブマネー
        //    11:イーバンクデビット
        //    12:ネット銀行(Epsilon)
        //    13:電子マネー(Epsilon)
        //    14:ATM、コンビニ、ネット銀行決済(ペイジェント)
        //    15:Do-Link決済(Epsilon)
        //    16:ペイジー(Epsilon)
        //    17:後払い.com
        //    18:JNB送料無料キャンペーン
        //    19:クロネコWEBコレクト
        //    20:ペイパル(Epsilon)
        //    21:Yahoo!ウォレット(Epsilon)
        //    22:全額ポイント利用
      "display": false,         // 表示フラグ(有効フラグ)
      "use_mobile": false,      // モバイルからのアクセスに対しても表示するか
      // クレジットカード設定 (クレジットカードの場合のみ)
      "card": {
        "brands": [ // 使えるカードブランド
          {
            "id": 0,
            "name": "JCB"
          },
          {
            "id": 2,
            "name": "VISA"
          }
        ]
      }
    },
    // 代引のデータの例
    {
      "id": 77,
      "name": "代引",
      "fee": 200,
      "ip_code": null,
      "image_url": "http://img01.shop-pro.jp/PAXXX/XXX/payment/7.jpg?20121205164241",
      "make_date": 1363661211,
      "update_date": 1363661211,
      "order_end_note": null,
      "memo": null,
      "memo_mobile": null,
      "sort": 10,
      "type": 0,
      "display": false,
      "use_mobile": false,
      // 代引設定 (代引の場合のみ)
      "cod": {
        "changeable": true, // 金額によって手数料を変える場合にtrue
        "fees": [           // 金額によってかわる手数料
          [
            1000, // 1000円未満
            100   // 手数料100円
          ],
          [
            2000, // 2000円未満
            200   // 手数料200円
          ],
          [
            5000,
            500
          ]
        ],
        "fee_max": 600, // 上記金額以上の場合の手数料
        "changeable_by_total": true // 代引き手数料計算方法。false:商品金額 true:決済総額
      }
    },
    // 銀行振込のデータの例
    {
      "id": 79,
      "account_id": "PAXXXXXXXX",
      "name": "銀行振込",
      "fee": null,
      "ip_code": null,
      "image_url": "http://img01.shop-pro.jp/PAXXXX/XXX/payment/1.jpg?20121205164241",
      "make_date": 1363661998,
      "update_date": 1363661998,
      "order_end_note": null,
      "memo": "お振り込みを確認してからの発送となります",
      "memo_mobile": "お振り込みを確認してからの発送となります",
      "sort": null,
      "type": 1,
      "display": false,
      "use_mobile": false,
      // 金融期間設定(銀行などのみ)
      "financial": {
        "name": "○×銀行",
        "branch_number": null,
        "branch_name": "△△支店",
        "kouza_type": 0, // 0:普通、1:当座
        "kouza_number": 2092830,
        "kouza_name": "ヤマダタロウ"
      }
    }
  ]
}

[]


GET /v1/deliveries.json

配送設定一覧を取得

レスポンス

{
  "deliveries": [
    {
      "id": 169757,                   // 配送設定id
      "account_id": "PAXXXXXXXX",      // ショップアカウントID
      "name": "○×急便株式会社",         // ユーザが設定した名前(ショップ上での表示)
      "image_url": null,              // 画像url
      "charge_free_type": "not_free", // 配送料無料タイプ。"not_free" = 有料。"free" = 無料。"free_to_limit" = 商品金額一定額以上は無料
      "charge_free_limit": 5000,      // n円以上のお買い上げは無料。"charge_free_type"が、"free_to_limi"の場合に使用。
      "tax_included": false,          // trueの場合、内税。税込み価格で管理。
      "charge_type": "by_area",       // 配送料計算方法。"fixed" = 定額固定。"by_price" = 商品金額範囲ごとに設定。"by_area" = 都道府県ごとに設定。"by_weight" = 重さごとに設定。
      "slip_number_use": true,        // お問い合わせ伝票番号を管理する場合はtrue
      "slip_number_url": "http://example.com/okurijoinput.jsp", // お問い合わせ伝票番号確認url
      "memo": "<strong>配送会社:佐川急便\r\n送料:一律735円(税込)</strong>\r\n\r\n※1\r\n沖縄及び北海道のみ、送料は<strong>1,470円(税込)</strong>となります。\r\nご入金確認後、4週間以内の発送とさせて頂きます。\r\n\r\n※2\r\n申し訳ございませんが、商品の配送は日本国内のみとなります。\r\n何卒ご了承下さい。\r\n",
      "memo2": "■配送会社\r\n佐川急便\r\n■送料\r\n一律735円(税込)\r\n\r\n※1\r\n沖縄及び北海道のみ、送料は1,470円(税込)となります。\r\nご入金確認後、4週間以内の発送とさせて頂きます。\r\n\r\n※2\r\n申し訳ございませんが、商品の配送は日本国内のみとなります。\r\n何卒ご了承下さい。\r\n\r\nPlease note that We will not ship internationally.\r\nWe can't ship the item to oversea.\r\nSo, we'll recommend to use 6622faa51d57a1a638c351e3e928f1614dbbca91quot;tenso.com6622faa51d57a1a638c351e3e928f1614dbbca91quot;.\r\n6622faa51d57a1a638c351e3e928f1614dbbca91quot;Tenso.com6622faa51d57a1a638c351e3e928f1614dbbca91quot; is a forwarding service specializing in shipping Japanese products to the rest of the world.\r\n\r\n使在日本網購的商品和貨物,可以輕鬆運往海外的服務!!",
      "sort": 10,                     // ショップでの表示順。数値が小さいほど優先。
      "display_state": "showing",     // 表示状態。"showing" = 表示。"hidden" = 非表示。
      "preferred_date_use": true,     // 購入時の配達希望日の設定が有効の場合true
      "preferred_period_use": true,   // 購入時の配達希望時間帯の設定が有効の場合true
      "make_date": 1284541835,
      "update_date": 1379236235,
      "charge": {                       // 配送料の詳細設定
        "delivery_id": 169757,
        "charge_fixed": 700,            // 配送料固定の場合の料金。"charge_type"が"fixed"の場合に使われる。
        "charge_ranges_by_price": [     // 商品金額ごとの配送料。(未設定の場合は[])。"charge_type"が"by_price"の場合に使われる。
          [                     // (例
            1000,               // 1000円未満
            120                 // 120円
          ],
          [
            1500,               // 1500円未満
            200                 // 200円
          ],
          [
            3000,               // 3000円未満
            300                 // 3000円
          ]
        ],
        "charge_max_price": 0,  // 上記以上の商品金額の場合の配送料
        "charge_ranges_by_area": [ // 都道府県ごとの配送料 (未設定の場合は[])。未設定の都道府県は、0円として扱われる。"charge_type"が"by_area"の場合に使われる。
          // (例
          {
            "pref_id": 1,         // 都道府県id
            "pref_name": "北海道", // 都道府県
            "charge": 1400        // この都道府県の配送料
          },
          {
            "pref_id": 2,
            "pref_name": "青森県",
            "charge": 700
          },
          {
            "pref_id": 47,
            "pref_name": "沖縄県",
            "charge": 1400
          }
        ],
        "charge_ranges_by_weight": [   // 重量ごとの配送料設定 (未設定の場合は[])。"charge_type"が"by_weight"の場合に使われる。
          [                     // (例
            50,                 // 50g未満
            [                   // 50g未満の都道府県別配送料。未設定の都道府県は、0円として扱われる。
              {
                "pref_id": 1,          // 都道府県id
                "pref_name": "北海道",  // 都道府県名
                "charge": 120           // この都道府県の配送料
              },
              {
                "pref_id": 2,
                "pref_name": "青森県",
                "charge": 120
              },
              {
                "pref_id": 3,
                "pref_name": "岩手県",
                "charge": 120
              }
            ]
          ]
        ],
        "charge_ranges_max_weight": [ // 上記以上の重さの配送料設定(未設定の場合は[])
          // (例
          {                           // 上記以上の重さの、都道府県別配送料
            "pref_id": 1,          // 都道府県id
            "pref_name": "北海道",  // 都道府県名
            "charge": 200           // この都道府県の配送料
          },
          {
            "pref_id": 2,
            "pref_name": "青森県",
            "charge": 200
          },
          {
            "pref_id": 3,
            "pref_name": "岩手県",
            "charge": 200
          }
        ]
      }
    }
  ]
}

[]


GET /v1/deliveries/date.json

配送 日時 設定を取得

レスポンス

{

    "delivery_date": {
        "account_id": "PAXXXXXXX",
        "days": {                   // 配送希望日の設定
            "enabled": true,        // 配送希望日の選択が有効のときtrue
            "default": 0,           // デフォルトで選択される希望日。注文日からn日後の数値。
            "min": 0,               // 選択できる最早の配送日。注文日からn日後の数値。
            "max": 365,             // 選択できる最遅の配送日。注文日からn日後の数値。
            "comment": null
        },
        "times": {                  // 配送希望時間帯の設定
            "enabled": true,        // 配送希望時間帯の選択が有効のときtrue
            "periods": [            // 時間帯の選択肢 (注:フォーマットはユーザによる自由入力
              "午前中", "AM9:00~PM15:00", "PM15:00~PM20:00"
            ],
            "comment": null
        },
        "make_date": 1286257767,
        "update_date": 1286257767
    }

}

[]


GET /v1/gift.json

ギフト設定一覧を取得

レスポンス

{
    "gift": {
       "account_id": "PAXXXXXXXX",   // ショップアカウントID
        "enabled": true,             // ギフト有効のときtrue
        "noshi": {                   // 熨斗の設定
            "enabled": true,         // 熨斗が有効のときtrue
            "text_enabled": false,   // ショップでの熨斗の自由入力欄が有効のときtrue
            "text_charge": null,     // 自由入力闌の手数料
            "types": [               // 熨斗の種類ごとの手数料
              {
                "name": "御祝",
                "charge": 100,
              },
              {
                "name": "内祝",
                "charge": 100
              },
              {
                "name": "御中元",
                "charge": 100
              }
            ],
            "comment": "その他を選ばれたお客様は入力欄にご記入下さい" // 表示メッセージ
        },
        "card": {                    // メッセージカードの設定
            "enabled": true,         // メッセージカード有効のときtrue
            "text_enabled": false,   // ショップでのメッセージカードの自由入力欄が有効のときtrue
            "types": [               // メッセージカードの種類と手数料
              {
                "name": "母の日",
                "charge": 100
              },
              {
                "name": "父の日",
                "charge": 100
              }
            ],
            "comment": "メッセージをご記入いただければ、代筆でカードをご用意いたします。" // 表示メッセージ
        },
        "wrapping": {            // ラッピング設定
            "enabled": false,    // ラッピングが有効のときtrue
            "types": [           // ラッピングの種類と手数料
              {
                "name": "簡易ラッピング",
                "charge": 0
              },
              {
                "name": "有料ラッピング",
                "charge": 100
              }
            ],
            "comment": "簡易包装は無料となっております(袋入り・簡易BOX入り)"
        },
        "make_date": null,
        "update_date": null
    }
}

※1 都道府県id一覧

id 都道府県
1 北海道
2 青森県
3 岩手県
4 秋田県
5 宮城県
6 山形県
7 福島県
8 茨城県
9 栃木県
10 群馬県
11 埼玉県
12 千葉県
13 東京都
14 神奈川県
15 新潟県
16 福井県
17 石川県
18 富山県
19 静岡県
20 山梨県
21 長野県
22 愛知県
23 岐阜県
24 三重県
25 和歌山県
26 滋賀県
27 奈良県
28 京都府
29 大阪府
30 兵庫県
31 岡山県
32 広島県
33 鳥取県
34 島根県
35 山口県
36 香川県
37 徳島県
38 愛媛県
39 高知県
40 福岡県
41 佐賀県
42 長崎県
43 大分県
44 熊本県
45 宮崎県
46 鹿児島県
47 沖縄県
48 海外

GET /logout

APIログアウト

レスポンス

  • 成功 - ステータスコード200 で、更新後の受注データがボディで返されます。
  • JSONパースエラー - 400
  • 入力内容が不正 - 422
  • エラーの詳細はレスポンスボディにJSONで返されます

リクエストパラメータ

パラメータ名 有効な値 説明
redirect_url URL文字列 APIログアウト時にリダイレクトさせたいURLを指定

(例

https://api.shop-pro.jp/logout?redirect_url=http://shop-pro.jp

[]