コンテンツへスキップ

LiveOps 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

LiveOps APIは、プレイヤーエンゲージメントを高めるためのエンドポイントを提供します。

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

クーポン

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

操作

プロモーションコード

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

操作

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

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

操作

ディスカウント

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

操作

ボーナス

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

操作

個人用カタログ

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

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

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

操作
操作
操作

アイテムのバリューポイントを設定するServer-sideAdmin

リクエスト

SKUによって1つまたは複数のアイテムにバリューポイントを割り当てます。ユーザーはこれらのアイテムを購入した後にバリューポイントを受け取ります。

このPUT要求は、プロジェクト内のアイテムの以前に設定されたすべてのバリューポイントを上書きすることに注意してください。

意図しないバリューポイントの削除を避けるため、各PUTリクエストにすべてのアイテムとそれぞれのバリューポイントを含めてください。

特定のアイテムのバリューポイントだけを更新し、他のアイテムのバリューポイントを保持したい場合は、GETリクエストを使って現在のバリューポイントセットを取得し、ご希望のアイテムのバリューポイントを修正し、修正したバリューポイントセットを特定のアイテムの更新されたバリューポイントと一緒に送り返す必要があります。

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

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

例: 44056
value_point_skustring必須

バリューポイントSKU。

例: value_point_3
ボディapplication/jsonArray [
amountinteger必須

バリューポイントの量。

skustring(sku)[ 1 .. 255 ] characters^[a-zA-Z0-9_\-–.]*$必須

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

例: "booster_mega_1"
]
curl -i -X PUT \
  -u <username>:<password> \
  https://xsolla.redocly.app/_mock/ja/api/liveops/v2/project/44056/admin/items/value_point_3/value_points/rewards \
  -H 'Content-Type: application/json' \
  -d '[
    {
      "amount": 100,
      "sku": "com.xsolla.booster_1"
    },
    {
      "amount": 200,
      "sku": "com.xsolla.booster_mega"
    }
  ]'

レスポンス

アイテムのバリューポイント報酬が正常に更新されました。

ボディ
レスポンス
コンテンツなし

報酬チェーンのリストを取得するServer-sideAdmin

リクエスト

報酬チェーンのリストを取得します。

注意

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

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

例: 44056
クエリ
limitinteger>= 1

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

例: limit=50
offsetinteger>= 0

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

例: offset=0
enabledinteger

is_enabledフラグで要素を絞り込みます。

curl -i -X GET \
  -u <username>:<password> \
  'https://xsolla.redocly.app/_mock/ja/api/liveops/v3/project/44056/admin/reward_chain?limit=50&offset=0&enabled=0'

レスポンス

報酬チェーンのリストが正常に受信されました。

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

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

例: true
itemsArray of admin-get-reward-chain-item-basic-model (object) or admin-get-reward-chain-item-clan-basic-model (object)
レスポンス
application/json
{ "has_more": true, "items": [ {}, {} ] }

報酬チェーンを作成するServer-sideAdmin

リクエスト

報酬チェーンを作成します。

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

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

例: 44056
ボディapplication/json
One of:

報酬チェーン。

attribute_conditionsArray of type = string (object) or type = number (object) or type = date (object)(chain_user-attribute_conditions_model-post)[ 1 .. 100 ] items

ユーザー属性を検証するための条件。 ユーザー属性が指定されたすべての条件に一致するかどうかに基づいて、オファーチェーンの可用性を決定します。

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)、最後に提供された値が保存されます。サポートされている言語の完全なリストは、ドキュメントで確認できます。

image_urlstring or null(image_url)

画像URL。

例: "https://image.example.com"
is_always_visibleboolean(chain_is_always_visible)

チェーンがすべてのユーザーに表示されるかどうか:

  • trueの場合、ユーザーの認証ステータスや属性に関係なく常にチェーンが表示されます。
  • falseの場合、個人用設定されたチェーンが見つからない場合にのみチェーンが表示されます。例えば、ユーザーが認証されていない場合や、その属性がパーソナライズされたチェーンと一致しない場合などです。

パーソナライズされたチェーンのコンテキストでのみ適用され、attribute_conditions配列が渡されない場合に使用されます。

デフォルト true
例: true
is_enabledboolean(is_enabled)必須
例: true
is_reset_after_endboolean(is_reset_after_end)

報酬チェーンの終了日以降に、報酬チェーン(バリューポイントおよび全ユーザーの進捗状況)をリセットするかどうか˙:

  • trueの場合、報酬チェーンはその終了日の後にリセットされます。
  • falseの場合、報酬チェーンはその終了日の後にリセットされません。

お知らせ

以下の場合、trueにすることはできません:
  • recurrent_scheduleでリセット期間が設定されません。
  • periods.date_untilnullの値が渡されます。
デフォルト false
例: false
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)が提供された場合、最後に提供された値が保存されます。サポートされている言語の完全なリストは、ドキュメントで確認できます。

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(order)

配列順序を定義します。

例: 1
periodsArray of objects(periods)必須

報酬チェーンの有効期間。複数の期間を指定する場合は、date_fromdate_untilの両方が必須となります。

periods[].​date_fromstring(date-time)必須

指定された報酬チェーンの開始日。

例: "2020-08-11T10:00:00+03:00"
periods[].​date_untilstring or null(date-time)

指定された報酬チェーンの終了日。 有効期間が1つだけ指定されている場合に限り、nullに設定可能です。

例: "2020-08-11T20:00:00+03:00"
recurrent_schedule(interval_type = 毎週 (object or null)) or (interval_type = 毎月 (object or null)) or (interval_type = 毎時間 (object or null))(recurrent_schedule_create_update)

報酬チェーンの定期リセット期間。

One of:

報酬チェーンの定期リセット期間。

stepsArray of objects(create_reward_step)必須
steps[].​image_urlstring or null(image_url)

画像URL。

例: "https://image.example.com"
steps[].​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)、最後に提供された値が保存されます。サポートされている言語の完全なリストは、ドキュメントで確認できます。

steps[].​name.​arstring or null

アラビア語

steps[].​name.​bgstring or null

ブルガリア語

steps[].​name.​cnstring or null

中国語(簡体字)

steps[].​name.​csstring or null

チェコ語

steps[].​name.​destring or null

ドイツ語

steps[].​name.​enstring or null

英語

steps[].​name.​esstring or null

スペイン語(スペイン)

steps[].​name.​frstring or null

フランス語

steps[].​name.​hestring or null

ヘブライ語

steps[].​name.​idstring or null

インドネシア語

steps[].​name.​itstring or null

イタリア語

steps[].​name.​jastring or null

日本語

steps[].​name.​kmstring or null

クメール語

steps[].​name.​kostring or null

韓国語

steps[].​name.​lostring or null

ラオス語

steps[].​name.​mystring or null

ビルマ語

steps[].​name.​nestring or null

ネパール語

steps[].​name.​phstring or null

フィリピン語

steps[].​name.​plstring or null

ポーランド語

steps[].​name.​ptstring or null

ポルトガル語

steps[].​name.​rostring or null

ルーマニア語

steps[].​name.​rustring or null

ロシア語

steps[].​name.​thstring or null

タイ語

steps[].​name.​trstring or null

トルコ語

steps[].​name.​twstring or null

中国語(繁体字)

steps[].​name.​vistring or null

ベトナム語

steps[].​priceobject(reward_step_price)必須
steps[].​price.​amountinteger(step_price_amount)必須

バリューポイントでのステップ価格。

例: 100
steps[].​rewardArray of objects必須
steps[].​reward[].​attribute_conditionsArray of type = string (object) or type = number (object) or type = date (object)(reward-chain-step-reward_user-attribute_conditions_model-post)[ 1 .. 100 ] items

ユーザー属性を検証するための条件。 ユーザー属性が指定されたすべての条件に一致するかどうかに基づいて、報酬チェーンの各ステップにおける報酬の可用性を決定します。

steps[].​reward[].​quantityinteger(reward_item_quantity)必須

アイテム数量。

例: 2
steps[].​reward[].​skustring(sku)[ 1 .. 255 ] characters^[a-zA-Z0-9_\-–.]*$必須

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

例: "booster_mega_1"
value_pointobject必須
value_point.​skustring(sku)[ 1 .. 255 ] characters^[a-zA-Z0-9_\-–.]*$必須

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

例: "booster_mega_1"
curl -i -X POST \
  -u <username>:<password> \
  https://xsolla.redocly.app/_mock/ja/api/liveops/v3/project/44056/admin/reward_chain \
  -H 'Content-Type: application/json' \
  -d '{
    "clan_type": "guild",
    "description": {
      "en": "Clan reward chain description."
    },
    "image_url": "https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png",
    "is_enabled": true,
    "long_description": {
      "en": "Clan reward chain long description."
    },
    "name": {
      "en": "Clan reward chain"
    },
    "order": 1,
    "periods": [
      {
        "date_from": "2026-01-01T01:00:00+05:00",
        "date_until": "2026-01-31T23:59:59+05:00"
      },
      {
        "date_from": "2026-02-01T01:00:00+05:00",
        "date_until": "2026-02-28T23:59:59+05:00"
      }
    ],
    "popup_header": {
      "en": "How to unlock rewards"
    },
    "popup_image_url": "https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png",
    "popup_instruction": {
      "en": "You must be a clan member to get clan rewards. You join a clan when a clan member invites you to the clan, and you accept the invite. You can also create your own clan."
    },
    "recurrent_schedule": {
      "day_of_week": 1,
      "interval_type": "weekly",
      "time": "01:00:00+08:00"
    },
    "steps": [
      {
        "image_url": "https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png",
        "name": {
          "en": "First step of the reward chain"
        },
        "price": {
          "amount": 10
        },
        "reward": [
          {
            "quantity": 5,
            "sku": "com.xsolla.item_1"
          },
          {
            "quantity": 1,
            "sku": "com.xsolla.item_2"
          }
        ]
      },
      {
        "image_url": "https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png",
        "name": {
          "en": "Second step of the reward chain"
        },
        "price": {
          "amount": 15
        },
        "reward": [
          {
            "quantity": 5,
            "sku": "com.xsolla.item_3"
          },
          {
            "quantity": 1,
            "sku": "com.xsolla.item_4"
          }
        ]
      }
    ],
    "value_point": {
      "sku": "com.xsolla.clan_value_point_1"
    }
  }'

レスポンス

報酬チェーンが正常に作成されました。

ボディapplication/json
reward_chain_idinteger
例: 10
レスポンス
application/json
{ "reward_chain_id": 10 }

クライアント

操作

クランクライアント

操作
操作

クライアント

操作
操作

クライアント

操作
操作

クライアント

操作