コンテンツへスキップ

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は販売可能なアイテムや特定のアイテムを取得することができます。

操作
操作
操作
操作

資格の取り消し(管理者)Server-sideAdmin

リクエスト

ユーザーの権利を取り消します。

注意

ゲームコードやDRMフリープラットフォームのゲームのみ取り消すことができます。
セキュリティ
basicAuth
パス
project_idinteger必須

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

例: 44056
ボディapplication/json必須
drmobject必須

DRMプロパティを持つオブジェクト。

例: {"sku":"com.xsolla.key_1"}
drm.​skustring(Game-Keys_drm_sku)必須

一意のDRM ID。

列挙型"steam""playstation""xbox""uplay""origin""drmfree""gog""epicgames""nintendo_eshop""discord_game_store"
例: "steam"
gameobject必須

ゲームプロパティを持つオブジェクト。

例: {"sku":"com.xsolla.game_1"}
game.​skustring(Game-Keys_game_sku)[ 1 .. 255 ] characters^[a-zA-Z0-9_\-–.]*$必須

一意のキーパッケージID。

例: "theGreatestGameSku"
modestring必須

どのような種類の資格を取り消すかを指定します。このパラメータがsandboxに設定されている場合、サンドボックスモードのユーザーにエンタイトルメントが取り消されます。パラメータにdefaultが設定されている場合、エンタイトルメントはライブモードでユーザーに取り消されます。

列挙型"default""sandbox"
例: "default"
user_external_idstring必須

一意のユーザー識別子。

例: "user-external-id"
curl -i -X POST \
  -u <username>:<password> \
  https://xsolla.redocly.app/_mock/ja/api/shop-builder/v2/project/44056/admin/entitlement/revoke \
  -H 'Content-Type: application/json' \
  -d '{
    "drm": {
      "sku": "com.xsolla.key_1"
    },
    "game": {
      "sku": "com.xsolla.game_1"
    },
    "mode": "default",
    "user_external_id": "user-external-id"
  }'

レスポンス

取り消しが成功しました。

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

ユーザーが所有しているゲームソフトのリストを取得Client-side

リクエスト

ユーザーが所有しているゲームソフトのリストを取得します。レスポンスには特定のユーザーが所有するゲームの配列が含まれます。

注意

すべてのプロジェクトには、応答で得られるアイテムの数に制限があります。初期値および最大値は、1応答あたり50アイテムです。ページごとにより多くのデータを取得するには、LIMITOFFSETフィールドを使用してください。
セキュリティ
XsollaLoginUserJWT
パス
project_idinteger必須

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

例: 44056
クエリ
limitinteger>= 1

ページでの要素数の制限。

例: limit=50
offsetinteger>= 0

リストが生成される要素番号(カウントは0から始まります)。

例: offset=0
sandboxinteger

どのような種類の資格が返されるべきか。このパラメータが1に設定された場合、サンドボックスモードでユーザーによって受信された資格のみが返されます。パラメータが渡されないまたは0に設定されている場合、ライブモードでのみユーザーによって受信された資格が返されます。

デフォルト 0
additional_fields[]Array of strings

追加フィールドのリスト。これらのフィールドは、リクエストの中で送信すると、応答に含まれます。利用可能なフィールドはattributes

curl -i -X GET \
  'https://xsolla.redocly.app/_mock/ja/api/shop-builder/v2/project/44056/entitlement?limit=50&offset=0&sandbox=0&additional_fields%5B%5D=string' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

レスポンス

ユーザーが所有するゲームキーのリストが正常に受信しました。

ボディapplication/json
has_moreboolean(Pagination_has-more)

ページ数がもっとあることを示す指標として使用されます。

例: true
itemsArray of objects(Game-Keys_entitlement_item)
total_items_countinteger(Pagination_total-items-count)

システムでのアイテムの合計数。

例: 10
レスポンス
application/json
{ "has_more": false, "items": [ {} ], "total_items_count": 1 }

クライアントによるゲームコードを引き換えるClient-side

リクエスト

提供されたゲームコードで権利を付与します。

注意

DRM-freeプラットフォームでのみコードの引き換えが可能です。
セキュリティ
XsollaLoginUserJWT
パス
project_idinteger必須

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

例: 44056
ボディapplication/json必須
codestring必須

ゲームコード。

例: "AAAA-BBBB-CCCC-DDDD"
sandboxboolean

サンドボックスモードでゲームコードを引き換えます。このオプションは、企業ユーザーのリストに指定されているユーザーに対して有効です。

デフォルト false
例: false
curl -i -X POST \
  https://xsolla.redocly.app/_mock/ja/api/shop-builder/v2/project/44056/entitlement/redeem \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "code": "AAAA-BBBB-CCCC-DDDD",
    "sandbox": false
  }'

レスポンス

引き換えに成功しました。

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

クーポン

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

操作

プロモーションコード

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

操作

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

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

操作

ディスカウント

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

操作

ボーナス

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

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

クライアント

操作

クランクライアント

操作
操作

クライアント

操作
操作

クライアント

操作
操作

クライアント

操作
操作