PC & コンソール - API エンドポイント リファレンス

ドキュメント

PC & コンソール API エンドポイントリファレンス

PCおよびコンソール向けサーバー間エンドポイントの完全なAPIリファレンス。 セッション追跡 およびイベントレポートに関する詳細なパラメータ仕様と実装例を提供します。

エンタープライズ機能:PCおよびコンソールゲームの属性追跡は エンタープライズ機能です。詳細については、 PCおよびコンソールゲーム属性追跡FAQ を参照するか、カスタマーサクセスマネージャーにお問い合わせください。

統合ガイド:完全な実装手順とベストプラクティスについては、 PC & コンソール S2S 統合ガイドを参照してください。


セッション通知エンドポイント

ゲームの起動とセッションをSingularに報告し、 インストールアトリビューション、 再エンゲージメント追跡、 ユーザーリテンション分析を実現します。

エンドポイント仕様

メソッド URL
GET https://s2s.singular.net/api/v1/launch

目的

セッション通知エンドポイントを使用し、すべてのゲーム起動(初回 およびリピート セッション)をほぼリアルタイムで報告します。SingularデバイスIDで識別された初回ゲーム起動がSingularに受信されると、アトリビューションプロセスが開始されます。

アトリビューションワークフロー:

  • 初回セッション:インストールアトリビューションをトリガー ウェブキャンペーンクリックとの マッチングを実施
  • 以降のセッション:ユーザー活動、 継続率、 再エンゲージメント分析を追跡
  • リアルタイムレポート: 実際のゲーム起動に可能な限り近いタイミングで セッション通知を送信

セッションパラメータ

必須パラメータ

パラメータ 説明 制約
a

API認証用のSingular SDKキー。

場所:ダッシュボード → 開発者ツール → SDK 統合 → SDK キー

重要:SDKキーを使用し、レポート用APIキーは使用しないでください

必須

文字列

your_org_name_sh868sdjv
p

ユーザーがゲームをプレイするプラットフォーム。

サポート値:

  • pc
  • xbox
  • playstation
  • nintendo
  • metaquest

必須

文字列

大文字小文字を区別

pc
i

ゲーム固有の識別子。

重要:アトリビューションを機能させるには、Web SDKのProduct IDと完全に一致させる必要があります。同一ゲームでは全プラットフォームで同一の値を使用してください。

必須

逆DNS表記が推奨されます

大文字小文字を区別

com.singular.game
sdid

単数形ゲームインストールとユーザーアクティビティを一意に識別するデバイスID。

生成:ゲーム/サーバーが初回起動時に生成し、 ゲームインストール期間中持続。

必須

UUID バージョン 4 形式推奨

49c2d3a6-326e-4ec5-a16b-0a47e34ed953
os

オペレーティングシステムまたはゲームシステム。

カスタム値もサポートされますが、プラットフォームごとの推奨値は以下の通りです:

PC:windows, linux, macos, steamos

Xbox:xbox_one, xbox_360, xbox_series_s, xbox_series_x

PlayStation:playstation_3, playstation_4, playstation_5

Nintendo:nintendo_switch

Meta Quest:metaquest, metaquest_2, metaquest_pro

必須

カスタム値をサポート

windows
install_source

ゲームストアまたは配布方法。

推奨値:

  • steam
  • epicgamestore
  • microsoftstore
  • gog
  • humblestore
  • xbox
  • playstation
  • nintendo
  • metaquest
  • selfdistributed

カスタム値をサポート

必須

カスタム値をサポート

steam
ip

ゲーム起動時のデバイスのIPアドレス。

代替案: use_ip=trueを使用し、 明示的に渡す代わりに HTTPリクエストヘッダーからIPを抽出する。

必須

IPv4またはIPv6形式

use_ip=true を使用する場合は不要

172.58.29.235

オプションパラメータ

パラメータ 説明 制約
install_ref

JSON URLエンコードされたGoogleインストールリファラー情報。Google Play Gamesストア経由で配信されるネイティブPCゲームに対して最も正確なアトリビューションを提供します。

要件:

  • Play Games PC SDKの実装が必要 初回起動時に送信される
  • 初回ゲーム起動時のみ送信必須

実装の詳細については、 Google Play for Native PC Install Referrer のドキュメント を参照してください。

オプション

文字列

初回起動時のみ

%7B%22install_time_epoch_seconds%22%3A%221568939453%22
%2C%22install_referrer%22%3A%22utm_source%3Dgoogle-play%26utm_medium%3Dorganic%22%7D
match_id

ウェブクリックとゲームインストールを 決定論的に紐付ける識別子

要件:

  • 初回ゲーム起動時のみ送信必須
  • Web SDK実装からの値と一致すること
  • 個人識別情報(PII)の場合はSHA-256でハッシュ化必須

実装の詳細については Match IDAttribution を参照。

オプション

文字列

初回起動時のみ

matchid_12345
ve

オペレーティングシステムのバージョン。

オプション

文字列

22H2
av

アプリケーションのバージョンまたはゲームのビルド識別子。

オプション

文字列

1.1.5.581823a
use_ip

明示的な ip パラメータを要求する代わりに、 HTTPリクエストヘッダーからIPアドレスを抽出します。

true に設定されている場合、ipパラメータを指定しないでください。

オプション

ブール値

デフォルト: false

true
ua

デバイスのユーザーエージェント文字列。

オプション

文字列

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36
global_properties

ユーザー用に保存され、すべての 後続のリクエストで永続化されるキーと値のペア。

以前に設定された値を送信しない場合は、その値は設定解除されます。

形式:URLエンコードされたJSONオブジェクト

オプション

最大5つのプロパティ

各プロパティ最大200文字

URLエンコードされたJSON

%7B%22key1%22%3A%22value1%22%7D
data_sharing_options

プライバシーコンプライアンスのための情報共有に関するユーザーの同意。

設定済みの場合、永続化され、以降のリクエストで渡される必要がある 。

値:

  • "limit_data_sharing":false - ユーザーがオプトイン(同意)
  • "limit_data_sharing":true - ユーザーが オプトアウト(拒否)

実装ガイダンスについては ユーザープライバシー を参照のこと。

オプション

URLエンコードされたJSON

%7B%22limit_data_sharing%22%3Atrue%7D
install

ゲームインストール後の初回セッションを示すインストールフラグ。

再インストール追跡機能に必須。

オプション

ブール値

true
utime

ゲーム起動のタイムスタンプ(UNIX タイム(秒))。

オプション

整数(UNIX タイムスタンプ)

1483228800
umilisec

ゲーム起動の UNIX タイムスタンプ (ミリ秒)。

オプション

整数(UNIXタイムスタンプ(ミリ秒))

1483228800000
custom_user_id

システムからのカスタムユーザー識別子。

オプション

文字列

123456789abcd

リクエストの例

実装例

CURLPYTHONJAVASCRIPT

基本セッションリクエスト

curl -G "https://s2s.singular.net/api/v1/launch" \
  --data-urlencode "a=your_sdk_key" \
  --data-urlencode "i=com.singular.game" \
  --data-urlencode "sdid=49c2d3a6-326e-4ec5-a16b-0a47e34ed953" \
  --data-urlencode "p=pc" \
  --data-urlencode "os=windows" \
  --data-urlencode "install_source=steam" \
  --data-urlencode "ip=172.58.29.235"

マッチID付き初回起動

curl -G "https://s2s.singular.net/api/v1/launch" \
  --data-urlencode "a=your_sdk_key" \
  --data-urlencode "i=com.singular.game" \
  --data-urlencode "sdid=49c2d3a6-326e-4ec5-a16b-0a47e34ed953" \
  --data-urlencode "p=pc" \
  --data-urlencode "os=windows" \
  --data-urlencode "install_source=steam" \
  --data-urlencode "ip=172.58.29.235" \
  --data-urlencode "match_id=abc123def456" \
  --data-urlencode "install=true"

イベント通知エンドポイント

ゲーム内イベントをSingularに報告し、分析、キャンペーン最適化、 および パートナー転送を実現します。

エンドポイント仕様

メソッド URL
GET https://s2s.singular.net/api/v1/evt

目的

イベント通知エンドポイントを使用して、必要なすべてのゲーム内イベントを ほぼ リアルタイムで報告します。イベントデータは、分析、レポート作成、パートナー最適化、 およびキャンペーンパフォーマンス測定に使用されます。

イベントのベストプラクティス:

  • 標準イベント:自動パートナーマッピングのため 単一の標準イベント名を使用
  • リアルタイムレポート:イベントは可能な限り 発生直後に送信 してください
  • 収益イベント:購入追跡とROI分析のため、収益パラメータを含める

イベントパラメータ

必須パラメータ

パラメータ 説明 制約
a

API認証用のSingular SDKキー。

場所:ダッシュボード → 開発者ツール → SDK 統合 → SDK キー

必須

文字列

your_org_name_sh868sdjv
p

ユーザーがゲームをプレイするプラットフォーム。

サポート値:pc, xbox, playstation, nintendo, metaquest

必須

文字列

大文字小文字を区別

pc
i

ゲーム固有の識別子。

セッション通知およびWeb SDKプロダクトIDで使用される値と一致する必要があります。

必須

逆引きDNS表記が推奨されます

大文字小文字を区別

com.singular.game
sdid

ゲームインストールを一意に識別する単数形のデバイスID。

セッション通知で使用されるSDIDと一致する必要があります。

必須

UUID 形式

49c2d3a6-326e-4ec5-a16b-0a47e34ed953
n

ゲーム内アクションやマイルストーンを識別するイベント名。

推奨:自動パートナー統合には Singular標準イベント名 を使用してください。

必須

文字列

最大32文字のASCII文字

sng_achievement_unlocked
os

オペレーティングシステムまたはゲームシステム。

セッション通知で使用される値と一致させる必要があります。

必須

カスタム値をサポート

windows
install_source

ゲームストアまたは配布方法。

セッション通知で使用される値と一致する必要があります。

必須

カスタム値をサポート

steam
ip

イベント発生時のデバイスのIPアドレス。

必須

IPv4 または IPv6 形式

use_ip=true の場合は不要

172.58.29.235

オプションパラメータ

パラメータ 説明 制約
e

イベントに関する豊富な情報を提供するカスタムイベント属性。

推奨:パートナー互換性のため 単数形の標準属性名を使用 。

オプション

URLエンコードされたJSON

属性ごとに最大500 ASCII文字

%7B%22sng_attr_content_id%22%3A5581%7D
is_revenue_event

イベントを収益イベントとしてマークします。

イベント名が__iap__または非ゼロのamtが指定されている場合は省略可。

収益イベントでは必須

ブール値

true
amt

収益イベントの通貨金額。

cur パラメータと併用。

収益イベントに必須

小数点以下の桁数

2.51
cur

収益イベントのISO-4217 3文字通貨コード。

amt パラメータと併用。

参照: ISO-4217 通貨コード

収益イベントに必須

ISO-4217コード

EUR
ve

オペレーティングシステムのバージョン。

オプション

文字列

22H2
av

アプリケーションのバージョンまたはゲームのビルド識別子。

オプション

文字列

1.1.5.581823a
use_ip

HTTP リクエストヘッダーから IP アドレスを抽出します。

オプション

ブール

デフォルト: false

true
ua

デバイスのユーザーエージェント文字列。

オプション

文字列

Mozilla/5.0 (Windows NT 10.0; Win64; x64)
global_properties

ユーザー用に保存されるキーと値のペア。

設定された場合、その後すべてのリクエストで永続化される必要がある。

オプション

最大5つのプロパティ

各プロパティ最大200文字

URLエンコードされたJSON

%7B%22key1%22%3A%22value1%22%7D
data_sharing_options

情報の共有に関するユーザーの同意。

設定した場合、その後すべてのリクエストで永続化される必要がある。

オプション

URLエンコードされたJSON

%7B%22limit_data_sharing%22%3Atrue%7D
utime

イベントの UNIX タイムスタンプ (秒単位)。

オプション

整数(UNIX タイムスタンプ)

1483228800
umilisec

イベントの UNIX タイムスタンプ (ミリ秒)。

オプション

整数(UNIXタイムスタンプ(ミリ秒))

1483228800000
custom_user_id

システムからのカスタムユーザー識別子。

オプション

文字列

123456789abcd

リクエストの例

実装例

CURLPYTHONJAVASCRIPT

標準イベント

curl -G "https://s2s.singular.net/api/v1/evt" \
  --data-urlencode "a=your_sdk_key" \
  --data-urlencode "i=com.singular.game" \
  --data-urlencode "sdid=49c2d3a6-326e-4ec5-a16b-0a47e34ed953" \
  --data-urlencode "p=pc" \
  --data-urlencode "os=windows" \
  --data-urlencode "install_source=steam" \
  --data-urlencode "n=sng_level_achieved" \
  --data-urlencode 'e={"sng_attr_level":"5","sng_attr_score":"1250"}' \
  --data-urlencode "ip=172.58.29.235"

収益イベント

curl -G "https://s2s.singular.net/api/v1/evt" \
  --data-urlencode "a=your_sdk_key" \
  --data-urlencode "i=com.singular.game" \
  --data-urlencode "sdid=49c2d3a6-326e-4ec5-a16b-0a47e34ed953" \
  --data-urlencode "p=pc" \
  --data-urlencode "os=windows" \
  --data-urlencode "install_source=steam" \
  --data-urlencode "n=__iap__" \
  --data-urlencode "is_revenue_event=true" \
  --data-urlencode "amt=9.99" \
  --data-urlencode "cur=USD" \
  --data-urlencode "ip=172.58.29.235"

レスポンス処理

両エンドポイントは、成功またはエラー判定のためにステータス フィールドの検証を必要とする一貫したJSON応答を返す。

レスポンス形式

重要:すべてのレスポンスはHTTP 200ステータスコードを返します。 レスポンス本体のstatus フィールドを常に検証し、 成功(ok) または失敗(error)を判定してください。

完全なレスポンスコードのドキュメントとエラー処理戦略については、 S2Sレスポンスコードとエラー処理 を参照してください。


追加リソース