コンテンツへスキップ

Shop Builder API (2.0.0)

Overview

  • Version: 2.0.0
  • Servers: https://store.xsolla.com/api
  • Contact Us by Email
  • Contact URL: https://xsolla.com/
  • Required TLS version: 1.2

Shop Builder API provides a third-party solution for implementing the server side for your store interface. Use the endpoints to manage in-game items, in-game currencies, cart, player inventory, promotions, game library, etc.

OpenAPI記述をダウンロード
言語
サーバー
Mock server
https://xsolla.redocly.app/_mock/ja/api/shop-builder/
https://store.xsolla.com/api/
操作

個人用カタログ

ユーザー属性に応じたルールを指定することができるAPIです。 ユーザーが具体的なルールの条件をすべて満たした場合、パーソナライズされたアイテムが表示されます。

パーソナライズされたプロモーションについては、プロモーションセクションを参照してください。

購入前に属性を渡すには、Xsolla Login APIを使うか、Pay Station APIを使ってトークンを生成する際にそれをuser.attributesプロパティに渡します。

操作
操作
操作

カート(クライアント側)

操作

カート(サーバー側)

操作

決済(クライアント側)

操作

決済(サーバー側)

操作
操作

無料アイテム

操作

ウェブフック

操作
操作

マーチャント

操作

カタログ

このAPIは販売可能なアイテムや特定のアイテムを取得することができます。

操作
操作
操作
操作
操作
操作

クーポン

このAPIを使用すると、クーポンを管理できます。

操作

プロモーションコード

このAPI を使用すると、プロモーションコードを管理できます。

操作

ユニークなカタログオファー

このAPIを使用すると、ユニークなカタログオファーを管理することができます。

操作

ディスカウント

このAPIを使用すると、割引キャンペーンを管理することができます。

操作

ボーナス

このAPIを使用すると、ボーナスプロモーションを管理できます。

操作
操作

仮想通貨パッケージを作成Server-sideAdmin

リクエスト

仮想通貨パッケージを作成します。

セキュリティ
basicAuth
パス
project_idinteger必須

プロジェクトID。このパラメータは、パブリッシャーアカウントのプロジェクト名の横にあります。

例: 44056
ボディapplication/json
Any of:
attributesArray of objects(Virtual-Items-Currency_admin-post-put-attributes)<= 20 items

属性のリスト。

注意。アイテムの属性は20個以上指定することはできません。制限を超えようとすると、エラーが発生します。
contentArray of objects= 1 characters必須

仮想通貨パッケージには、1ポジションの仮想通貨のみが含まれている必要があります。

content[].​quantityinteger
content[].​skustring(Virtual-Items-Currency_sku)[ 1 .. 255 ] characters^[a-zA-Z0-9_\-–.]*$

一意のアイテムID。SKUには、小文字と大文字のラテン英数字、ピリオド、ダッシュ、およびアンダースコアのみが含まれます。

例: "booster_mega_1"
custom_attributesobject(json)(item-custom-attributes)<= 500 characters

アイテムの属性と値を含むJSONオブジェクト。属性により、アイテムを使用するために必要なプレイヤーのレベルなど、より詳細な情報をアイテムに追加することができます。属性はゲームの内部ロジックを豊かにし、専用の「取得」メソッドやウェブフックからアクセスできます。

description(two-letter (object or null)) or (five-letter (object or null))(description-localization-object)必須

アイテムの説明に関するローカライズ用オブジェクト。2文字の小文字の言語コード(例:en)または5文字のロケールコード(例:en-US)のいずれかの形式で値を受け入れます。どちらの形式も入力として受け入れられますが、応答は2文字の小文字の言語コードを返します。同じ言語に対して両方のオプションが提供された場合(例:enen-US)、最後に提供された値が保存されます。サポートされている言語の完全なリストは、ドキュメントで確認できます。

One of:

アイテムの説明に関するローカライズ用オブジェクト。2文字の小文字の言語コード(例:en)または5文字のロケールコード(例:en-US)のいずれかの形式で値を受け入れます。どちらの形式も入力として受け入れられますが、応答は2文字の小文字の言語コードを返します。同じ言語に対して両方のオプションが提供された場合(例:enen-US)、最後に提供された値が保存されます。サポートされている言語の完全なリストは、ドキュメントで確認できます。

description.​arstring or null

アラビア語

description.​bgstring or null

ブルガリア語

description.​cnstring or null

中国語(簡体字)

description.​csstring or null

チェコ語

description.​destring or null

ドイツ語

description.​enstring or null

英語

description.​esstring or null

スペイン語(スペイン)

description.​frstring or null

フランス語

description.​hestring or null

ヘブライ語

description.​idstring or null

インドネシア語

description.​itstring or null

イタリア語

description.​jastring or null

日本語

description.​kmstring or null

クメール語

description.​kostring or null

韓国語

description.​lostring or null

ラオス語

description.​mystring or null

ビルマ語

description.​nestring or null

ネパール語

description.​phstring or null

フィリピン語

description.​plstring or null

ポーランド語

description.​ptstring or null

ポルトガル語

description.​rostring or null

ルーマニア語

description.​rustring or null

ロシア語

description.​thstring or null

タイ語

description.​trstring or null

トルコ語

description.​twstring or null

中国語(繁体字)

description.​vistring or null

ベトナム語

groupsArray of strings(Virtual-Items-Currency_admin-groups-create)

アイテムが属するグループ。

注。文字列の値はグループ `external_id`を指します。
image_urlstring(Virtual-Items-Currency_admin-image_url)
is_deletedboolean(Virtual-Items-Currency_is_deleted)
is_enabledboolean(Virtual-Items-Currency_is_enabled)
is_freeboolean(value-is_free)

trueの場合で、アイテムは無料です。

デフォルト false
例: false
is_show_in_storeboolean(Virtual-Items-Currency_is_show_in_store)
limitsobject(Virtual-Currency-Package-item-limit)

アイテム制限。

long_description(two-letter (object or null)) or (five-letter (object or null))(long-description-localization-object)

アイテムの長文説明のローカライズを含むオブジェクト。2文字の小文字の言語コード(例:en)または5文字のロケールコード(例:en-US)のいずれかの形式で値を受け入れます。どちらの形式も入力として受け入れられますが、応答は2文字の小文字の言語コードを返します。同じ言語に対して両方のバリアント(例:enen-US)が提供された場合、最後に提供された値が保存されます。サポートされている言語の完全なリストは、ドキュメントで確認できます。

Any of:

アイテムの長文説明のローカライズを含むオブジェクト。2文字の小文字の言語コード(例:en)または5文字のロケールコード(例:en-US)のいずれかの形式で値を受け入れます。どちらの形式も入力として受け入れられますが、応答は2文字の小文字の言語コードを返します。同じ言語に対して両方のバリアント(例:enen-US)が提供された場合、最後に提供された値が保存されます。サポートされている言語の完全なリストは、ドキュメントで確認できます。

media_listArray of objects(Virtual-Items-Currency_admin-media_list)

スクリーンショット、ゲームプレイ動画などのアイテム追加アセット。

例: [{"type":"image","url":"https://cdn3.xsolla.com/img/misc/images/71ab1e12126f2103e1868076f0acb21a.jpg"}]
name(two-letter (object or null)) or (five-letter (object or null))(name-localization-object)必須

アイテム名に関するローカライズ用オブジェクト。2文字の小文字の言語コード(例:en)または5文字の言語コード(例:en-US)のいずれかの形式で値を受け入れます。どちらの形式も入力として受け入れられますが、応答は2文字の小文字の言語コードを返します。同じ言語に対して両方のオプションが提供された場合(例:enen-US)、最後に提供された値が保存されます。サポートされている言語の完全なリストは、ドキュメントで確認できます。

One of:

アイテム名に関するローカライズ用オブジェクト。2文字の小文字の言語コード(例:en)または5文字の言語コード(例:en-US)のいずれかの形式で値を受け入れます。どちらの形式も入力として受け入れられますが、応答は2文字の小文字の言語コードを返します。同じ言語に対して両方のオプションが提供された場合(例:enen-US)、最後に提供された値が保存されます。サポートされている言語の完全なリストは、ドキュメントで確認できます。

name.​arstring or null

アラビア語

name.​bgstring or null

ブルガリア語

name.​cnstring or null

中国語(簡体字)

name.​csstring or null

チェコ語

name.​destring or null

ドイツ語

name.​enstring or null

英語

name.​esstring or null

スペイン語(スペイン)

name.​frstring or null

フランス語

name.​hestring or null

ヘブライ語

name.​idstring or null

インドネシア語

name.​itstring or null

イタリア語

name.​jastring or null

日本語

name.​kmstring or null

クメール語

name.​kostring or null

韓国語

name.​lostring or null

ラオス語

name.​mystring or null

ビルマ語

name.​nestring or null

ネパール語

name.​phstring or null

フィリピン語

name.​plstring or null

ポーランド語

name.​ptstring or null

ポルトガル語

name.​rostring or null

ルーマニア語

name.​rustring or null

ロシア語

name.​thstring or null

タイ語

name.​trstring or null

トルコ語

name.​twstring or null

中国語(繁体字)

name.​vistring or null

ベトナム語

orderinteger(Virtual-Items-Currency_order)

配列順序を定義します。

例: 1
periodsArray of objects or null(item-periods)

アイテム販売期間。

pre_orderobject(Virtual-Items-Currency_admin-pre_order)
pricesArray of objects(Virtual-Items-Currency_admin-prices)必須
例: [{"amount":10.5,"country_iso":"US","currency":"USD","is_default":true,"is_enabled":true}]
prices[].​amountnumber> 0必須

金額。

例: 10.5
prices[].​country_isostring or null

この価格が利用可能な国。ISO 3166-1 alpha 2に基づく2文字コード。

例: "US"
prices[].​currencystring必須

商品価格の通貨。3文字のコードISO4217 規格詳細については、ドキュメントを参照してください。エクソーラでサポートされている通貨

例: "USD"
prices[].​is_defaultboolean
デフォルト false
例: true
prices[].​is_enabledboolean
デフォルト true
例: true
regionsArray of objects(Virtual-Items-Currency_admin-regions)
skustring(Virtual-Items-Currency_sku)[ 1 .. 255 ] characters^[a-zA-Z0-9_\-–.]*$必須

一意のアイテムID。SKUには、小文字と大文字のラテン英数字、ピリオド、ダッシュ、およびアンダースコアのみが含まれます。

例: "booster_mega_1"
vc_pricesArray of objects(Virtual-Items-Currency_admin-create-vc_prices)
例: [{"amount":10,"is_default":true,"is_enabled":true,"sku":"com.xsolla.gold_1"}]
curl -i -X POST \
  -u <username>:<password> \
  https://xsolla.redocly.app/_mock/ja/api/shop-builder/v2/project/44056/admin/items/virtual_currency/package \
  -H 'Content-Type: application/json' \
  -d '{
    "attributes": [
      {
        "external_id": "event",
        "name": {
          "en-US": "Event"
        },
        "values": [
          {
            "external_id": "10-anniversary",
            "value": {
              "en-US": "10th anniversary"
            }
          },
          {
            "external_id": "christmas",
            "value": {
              "en-US": "Christmas"
            }
          }
        ]
      }
    ],
    "content": [
      {
        "quantity": 500,
        "sku": "com.xsolla.novigrad_crown"
      }
    ],
    "custom_attributes": {
      "attr": "value",
      "purchased": 0
    },
    "description": {
      "en-US": "The Crown (also known as the Novigradian crown) is a monetary unit which is used in some Northern Kingdoms",
      "ru-RU": "Крона (Также известна как Новиградская крона) - платежная единица, используемая в северных королевствах"
    },
    "groups": [
      "witcher"
    ],
    "image_url": "https://vignette.wikia.nocookie.net/witcher/images/7/7c/Items_Orens.png/revision/latest?cb=20081113120917",
    "is_enabled": true,
    "is_free": false,
    "limits": {
      "per_item": null,
      "per_user": null
    },
    "long_description": {
      "en-US": "Long Test new",
      "ru-RU": "Длинное описание"
    },
    "media_list": [
      {
        "type": "image",
        "url": "https://test.com/image0"
      },
      {
        "type": "image",
        "url": "https://test.com/image1"
      }
    ],
    "name": {
      "en-US": "500x Novigradian crown",
      "ru-RU": "500x Новиградских крон"
    },
    "order": 1,
    "periods": [
      {
        "date_from": "2020-08-11T10:00:00+03:00",
        "date_until": "2020-08-11T20:00:00+03:00"
      }
    ],
    "prices": [
      {
        "amount": 99.99,
        "currency": "USD",
        "is_default": true
      },
      {
        "amount": 80.03,
        "currency": "EUR",
        "is_enabled": false
      }
    ],
    "sku": "com.xsolla.novigrad_crown_500",
    "vc_prices": null
  }'

レスポンス

仮想アイテムは正常に作成されました。

ボディapplication/json
skustring
例: "com.xsolla.item_1"
レスポンス
application/json
{ "sku": "com.xsolla.item_1" }

仮想通貨パッケージを削除Server-sideAdmin

リクエスト

仮想通貨パッケージを削除します。

セキュリティ
basicAuth
パス
project_idinteger必須

プロジェクトID。このパラメータは、パブリッシャーアカウントのプロジェクト名の横にあります。

例: 44056
item_skustring必須

アイテムSKU。

例: booster_mega_1
curl -i -X DELETE \
  -u <username>:<password> \
  https://xsolla.redocly.app/_mock/ja/api/shop-builder/v2/project/44056/admin/items/virtual_currency/package/sku/booster_mega_1

レスポンス

仮想通貨パッケージが正常に更新されました。

レスポンス
コンテンツなし

仮想通貨パッケージを取得Server-sideAdmin

リクエスト

管理用のプロジェクト内の仮想通貨パッケージを取得します。



このエンドポイントは、ストアカタログの構築に使用しないでください。
セキュリティ
basicAuth
パス
project_idinteger必須

プロジェクトID。このパラメータは、パブリッシャーアカウントのプロジェクト名の横にあります。

例: 44056
item_skustring必須

アイテムSKU。

例: booster_mega_1
curl -i -X GET \
  -u <username>:<password> \
  https://xsolla.redocly.app/_mock/ja/api/shop-builder/v2/project/44056/admin/items/virtual_currency/package/sku/booster_mega_1

レスポンス

指定された仮想通貨パッケージは正常に受信されました。

ボディapplication/json
attributesArray of objects(Virtual-Items-Currency_admin-attributes)

属性リスト。

例: [{"external_id":"attribute_external_id","name":{"de":"Attributname","en":"Attribute name"},"values":[{"external_id":"value_1","name":{"de":"wert 1","en":"value 1"}},{"external_id":"value_2","name":{"de":"wert 2","en":"value 2"}}]}]
bundle_typestring
デフォルト "virtual_currency_package"
例: "virtual_currency_package"
contentArray of objects
custom_attributesobject(json)(item-custom-attributes)<= 500 characters

アイテムの属性と値を含むJSONオブジェクト。属性により、アイテムを使用するために必要なプレイヤーのレベルなど、より詳細な情報をアイテムに追加することができます。属性はゲームの内部ロジックを豊かにし、専用の「取得」メソッドやウェブフックからアクセスできます。

description(two-letter (object or null)) or (five-letter (object or null))(description-localization-object)

アイテムの説明に関するローカライズ用オブジェクト。2文字の小文字の言語コード(例:en)または5文字のロケールコード(例:en-US)のいずれかの形式で値を受け入れます。どちらの形式も入力として受け入れられますが、応答は2文字の小文字の言語コードを返します。同じ言語に対して両方のオプションが提供された場合(例:enen-US)、最後に提供された値が保存されます。サポートされている言語の完全なリストは、ドキュメントで確認できます。

One of:

アイテムの説明に関するローカライズ用オブジェクト。2文字の小文字の言語コード(例:en)または5文字のロケールコード(例:en-US)のいずれかの形式で値を受け入れます。どちらの形式も入力として受け入れられますが、応答は2文字の小文字の言語コードを返します。同じ言語に対して両方のオプションが提供された場合(例:enen-US)、最後に提供された値が保存されます。サポートされている言語の完全なリストは、ドキュメントで確認できます。

groupsArray of objects(Virtual-Items-Currency_admin-groups-response)

アイテムが所属するグループ。

デフォルト []
例: [{"external_id":"horror","name":{"en":"Horror"}}]
image_urlstring(Virtual-Items-Currency_admin-image_url)
is_enabledboolean(Virtual-Items-Currency_is_enabled)
is_freeboolean(value-is_free)

trueの場合で、アイテムは無料です。

デフォルト false
例: false
is_show_in_storeboolean(Virtual-Items-Currency_is_show_in_store)
limitsobject or null(admin-item-limit-response)

アイテム制限。

long_description(two-letter (object or null)) or (five-letter (object or null))(long-description-localization-object)

アイテムの長文説明のローカライズを含むオブジェクト。2文字の小文字の言語コード(例:en)または5文字のロケールコード(例:en-US)のいずれかの形式で値を受け入れます。どちらの形式も入力として受け入れられますが、応答は2文字の小文字の言語コードを返します。同じ言語に対して両方のバリアント(例:enen-US)が提供された場合、最後に提供された値が保存されます。サポートされている言語の完全なリストは、ドキュメントで確認できます。

Any of:

アイテムの長文説明のローカライズを含むオブジェクト。2文字の小文字の言語コード(例:en)または5文字のロケールコード(例:en-US)のいずれかの形式で値を受け入れます。どちらの形式も入力として受け入れられますが、応答は2文字の小文字の言語コードを返します。同じ言語に対して両方のバリアント(例:enen-US)が提供された場合、最後に提供された値が保存されます。サポートされている言語の完全なリストは、ドキュメントで確認できます。

media_listArray of objects(Virtual-Items-Currency_admin-media_list)

スクリーンショット、ゲームプレイ動画などのアイテム追加アセット。

例: [{"type":"image","url":"https://cdn3.xsolla.com/img/misc/images/71ab1e12126f2103e1868076f0acb21a.jpg"}]
name(two-letter (object or null)) or (five-letter (object or null))(name-localization-object)

アイテム名に関するローカライズ用オブジェクト。2文字の小文字の言語コード(例:en)または5文字の言語コード(例:en-US)のいずれかの形式で値を受け入れます。どちらの形式も入力として受け入れられますが、応答は2文字の小文字の言語コードを返します。同じ言語に対して両方のオプションが提供された場合(例:enen-US)、最後に提供された値が保存されます。サポートされている言語の完全なリストは、ドキュメントで確認できます。

One of:

アイテム名に関するローカライズ用オブジェクト。2文字の小文字の言語コード(例:en)または5文字の言語コード(例:en-US)のいずれかの形式で値を受け入れます。どちらの形式も入力として受け入れられますが、応答は2文字の小文字の言語コードを返します。同じ言語に対して両方のオプションが提供された場合(例:enen-US)、最後に提供された値が保存されます。サポートされている言語の完全なリストは、ドキュメントで確認できます。

orderinteger(Virtual-Items-Currency_order)

配列順序を定義します。

例: 1
periodsArray of objects(item-periods-response)

アイテム販売期間。

pricesArray of objects(Virtual-Items-Currency_admin-prices)
例: [{"amount":10.5,"country_iso":"US","currency":"USD","is_default":true,"is_enabled":true}]
regionsArray of objects(Virtual-Items-Currency_admin-regions)
skustring(Virtual-Items-Currency_sku)[ 1 .. 255 ] characters^[a-zA-Z0-9_\-–.]*$

一意のアイテムID。SKUには、小文字と大文字のラテン英数字、ピリオド、ダッシュ、およびアンダースコアのみが含まれます。

例: "booster_mega_1"
typestring(Virtual-Items-Currency_type)

アイテムタイプ:virtual_good/virtual_currency/bundle/physical_good/unit

vc_pricesArray of objects(Virtual-Items-Currency_admin-get-vc_prices)
例: [{"amount":10,"is_default":true,"sku":"com.xsolla.gold_1"}]
レスポンス
application/json
{ "attributes": [ {} ], "bundle_type": "virtual_currency_package", "content": [ {} ], "custom_attributes": { "attr": "value", "purchased": 0 }, "description": { "en": "Crystals x100" }, "groups": [], "image_url": "https://cdn3.xsolla.com/img/misc/images/a8682cea328afda0bd127d59eb5b9077.png", "is_enabled": true, "is_free": false, "is_show_in_store": true, "limits": { "per_item": null, "per_user": null, "recurrent_schedule": null }, "long_description": null, "media_list": [], "name": { "en": "Small crystal pack" }, "order": 1, "periods": [], "prices": [ {} ], "regions": [], "sku": "com.xsolla.crystal_pack_1", "type": "bundle", "vc_prices": [] }
操作
操作
操作
操作

クライアント

操作

クランクライアント

操作
操作

クライアント

操作
操作

クライアント

操作
操作

クライアント

操作
操作