コンテンツへスキップ

Catalog 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

Catalog APIは、ゲーム内ストアカタログを管理し、購入を処理するためのエンドポイントを提供します。エンドポイントを使用して、仮想アイテム、仮想通貨、ゲームキー、バンドル、カートと決済フロー、アイテムアトリビュート、および外部ソースからのアイテムのインポートを設定できます。

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

仮想通貨リストを取得するClient-side

リクエスト

カタログ構築のために、仮想通貨のリストを取得します。

注意

すべてのプロジェクトには、応答で得られるアイテムの数に制限があります。初期値および最大値は、1応答50アイテムです。ページごとに多くのデータを取得するには、制限オフセットフィールドを使用します。

注意事項

アイテムカタログAPIコールの利用は、認証なしで可能ですが、パーソナライズされたカタログを取得するには、「認証」ヘッダーにユーザーのJWTを渡す必要があります。
セキュリティ
XsollaLoginUserJWT
パス
project_idinteger必須

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

例: 44056
クエリ
limitinteger>= 1

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

例: limit=50
offsetinteger>= 0

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

例: offset=0
localestring

応答言語。ISO 639-1に基づく小文字の2文字言語コード。

デフォルト "en"
additional_fields[]Array of strings

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

アイテム 列挙型"media_list""order""long_description""custom_attributes""item_order_in_group"
countrystring

ISO 3166-1 alpha-2に従った2文字の大文字の国名コード。エクソーラがサポートする国国を決定するプロセスに関する詳細情報については、ドキュメントを確認してください。

例: country=US
promo_codestring[ 1 .. 128 ] characters

大文字と小文字を区別する一意のコードです。文字と数字が含まれます。

例: promo_code=WINTER2021
show_inactive_time_limited_itemsinteger

ユーザーに利用可能でない、期限付きアイテムを表示します。このようなアイテムの有効期間はまだ開始されていないか、すでに期限切れです。

デフォルト 0
例: show_inactive_time_limited_items=1
curl -i -X GET \
  'https://xsolla.redocly.app/_mock/ja/api/catalog/v2/project/44056/items/virtual_currency?limit=50&offset=0&locale=en&additional_fields%5B%5D=media_list&country=US&promo_code=WINTER2021&show_inactive_time_limited_items=1' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

レスポンス

仮想通貨リストは正常に受信されました。

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

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

例: true
itemsArray of objects(Virtual-Items-Currency_virtual-currency)
レスポンス
application/json
{ "has_more": false, "items": [ {}, {}, {} ] }

仮想通貨パッケージリストを取得Client-side

リクエスト

カタログ構築のために、仮想通貨パッケージを取得します。

注意

すべてのプロジェクトには、応答で得られるアイテムの数に制限があります。初期値および最大値は、1応答50アイテムです。ページごとに多くのデータを取得するには、制限オフセットフィールドを使用します。

注意事項

アイテムカタログAPIコールの利用は、認証なしで可能ですが、パーソナライズされたカタログを取得するには、「認証」ヘッダーにユーザーのJWTを渡す必要があります。
セキュリティ
XsollaLoginUserJWT
パス
project_idinteger必須

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

例: 44056
クエリ
limitinteger>= 1

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

例: limit=50
offsetinteger>= 0

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

例: offset=0
localestring

応答言語。ISO 639-1に基づく小文字の2文字言語コード。

デフォルト "en"
additional_fields[]Array of strings

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

アイテム 列挙型"media_list""order""long_description""custom_attributes""item_order_in_group"
countrystring

ISO 3166-1 alpha-2に従った2文字の大文字の国名コード。エクソーラがサポートする国国を決定するプロセスに関する詳細情報については、ドキュメントを確認してください。

例: country=US
promo_codestring[ 1 .. 128 ] characters

大文字と小文字を区別する一意のコードです。文字と数字が含まれます。

例: promo_code=WINTER2021
show_inactive_time_limited_itemsinteger

ユーザーに利用可能でない、期限付きアイテムを表示します。このようなアイテムの有効期間はまだ開始されていないか、すでに期限切れです。

デフォルト 0
例: show_inactive_time_limited_items=1
curl -i -X GET \
  'https://xsolla.redocly.app/_mock/ja/api/catalog/v2/project/44056/items/virtual_currency/package?limit=50&offset=0&locale=en&additional_fields%5B%5D=media_list&country=US&promo_code=WINTER2021&show_inactive_time_limited_items=1' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

レスポンス

仮想通貨パッケージのリストは正常に受信されました。

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

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

例: true
itemsArray of objects(Virtual-Items-Currency_virtual-currency-package)
レスポンス
application/json
{ "has_more": false, "items": [ {}, {} ] }

SKUによる販売可能なアイテムを取得するClient-side

リクエスト

カタログを作成するためにSKUによる仮想通貨パッケージを取得します。



このエンドポイントは認証なしでアクセスでき、一般的なデータを返します。しかし、認証は、利用可能なユーザー制限やプロモーションのような、パーソナライズされた結果のためのユーザー固有の詳細で応答の質を高めます。
セキュリティ
XsollaLoginUserJWT
パス
project_idinteger必須

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

例: 44056
virtual_currency_package_skustring必須

仮想通貨パッケージ SKU。

例: crystal-pack
クエリ
localestring

応答言語。ISO 639-1に基づく小文字の2文字言語コード。

デフォルト "en"
countrystring

ISO 3166-1 alpha-2に従った2文字の大文字の国名コード。エクソーラがサポートする国国を決定するプロセスに関する詳細情報については、ドキュメントを確認してください。

例: country=US
show_inactive_time_limited_itemsinteger

ユーザーに利用可能でない、期限付きアイテムを表示します。このようなアイテムの有効期間はまだ開始されていないか、すでに期限切れです。

デフォルト 0
例: show_inactive_time_limited_items=1
additional_fields[]Array of strings

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

アイテム 列挙型"media_list""order""long_description""custom_attributes""item_order_in_group"
curl -i -X GET \
  'https://xsolla.redocly.app/_mock/ja/api/catalog/v2/project/44056/items/virtual_currency/package/sku/crystal-pack?locale=en&country=US&show_inactive_time_limited_items=1&additional_fields%5B%5D=media_list' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

レスポンス

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

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

アイテムに対応する属性と値のリスト。カタログのフィルタリングに使用できます。

デフォルト []
例: {"value":{"external_id":"genre","name":"Жанр","values":[{"external_id":"genre_e3364991f92e751689a68b96598a5a5a84010b85","value":"Casual"},{"external_id":"genre_eba07bfd0f982940773cba3744d97264dd58acd7","value":"Strategy"},{"external_id":"genre_b8d0c6d8f0524c2b2d79ebb93aa3cd0e8b5199a8","value":"Mobile"}]}}
bundle_typestring

バンドルタイプ:standard/virtual_currency_package

例: "virtual_currency_package"
can_be_boughtboolean(Can_be_bought)

trueの場合、ユーザーはアイテムを購入することができます。

例: true
contentArray of objects

仮想通貨パッケージの内容。

例: [{"description":"Crystal Pack - short description","image_url":"https://popmedia.blob.core.windows.net/popyourself/male/outfit/male_armor_white_a-01.png","name":"Crystal Pack","quantity":100,"sku":"com.xsolla.crystal_pack_1","type":"virtual_currency"}]
custom_attributesobject(json)(item-custom-attributes-response)

アイテムの属性と値を含むJSONオブジェクト。

descriptionstring

アイテムの説明。

例: "Crystal Pack Description"
groupsArray of objects(items_client_groups_response)

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

デフォルト []
例: [{"external_id":"exclusive","name":"Exclusive"}]
image_urlstring

画像URL。

例: "https://popmedia.blob.core.windows.net/popyourself/male/outfit/male_armor_white_a-01.png"
is_freeboolean(value-is_free)

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

デフォルト false
例: false
item_idinteger
limitsobject or null(Catalog_item_limits)

アイテム制限。

namestring

アイテム名。

例: "Crystal Pack"
periodsArray of objects(item-periods-response)

アイテム販売期間。

priceobject

アイテム価格。

promotionsArray of objects(Catalog_item_promotions)

カート内の特定アイテムに適用されるプロモーション。この配列は、以下のケースで返されます:

  • 特定のアイテムに対して、割引キャンペーンが構成されている場合。

  • 選択されたアイテムの割引設定を持つプロモーションコードが適用された場合。

アイテムレベルのプロモーションが適用されない場合は、空の配列が返されます。

skustring

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

例: "crystal-pack"
typestring

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

例: "bundle"
virtual_pricesArray of objects

仮想価格。

vp_rewardsArray of arrays
レスポンス
application/json
{ "attributes": [], "bundle_type": "virtual_currency_package", "can_be_bought": true, "content": [ {} ], "custom_attributes": { "attr": "value", "purchased": 0 }, "description": "Crystal Pack Short Description", "groups": [], "image_url": "http://vc_package_image.png", "is_free": false, "item_id": 488832, "limits": { "per_item": null, "per_user": {} }, "name": "Crystal Pack", "periods": [ {} ], "price": { "amount": "100", "amount_without_discount": "100", "currency": "USD" }, "promotions": [], "sku": "com.xsolla.crystal_pack_1", "type": "bundle", "virtual_prices": [], "vp_rewards": [] }
操作
操作
操作
操作
操作
操作

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

操作

カート(サーバー側)

操作

決済(クライアント側)

操作

決済(サーバー側)

操作
操作

無料アイテム

操作
操作
操作

ウェブフック

操作
操作

マーチャント

操作

カタログ

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

操作
操作
操作