OpenAPI YAMLOpenAPI JSON問題 YAMLAPI の概要
このグループには 12 件のオペレーションがあり、api/openapi.yaml から生成されています。パス、アクション、認証で絞り込めます。各エンドポイントには入力が一覧され、展開するとリクエストテンプレートとレスポンスコードを確認できます。テンプレートには、ご自身の値とスキーマに適合する本文が必要です。
大文字のプレースホルダーをあなたの値に置き換えます。JSONリクエストの場合、request.jsonのスキーマに合うボディを保存します。Cookie例は認証済みセッションのローカルCookieジャーを使用します。
Player のペアリングとセッション
ペアリングセッション開始
1つのフリートグローバル有効期限付きペアリングセッションを作成し、一時的なHttpOnly Secure SameSite=StrictペアリングCookieを設定します。信頼されていないOriginまたはクロスサイトブラウザーリクエストは、レート制限やペアリング状態が作成される前にforbiddenで拒否されます。
リクエストテンプレートとレスポンス
curl --request POST 'https://play.screenrig.ai/screen/pairing-sessions'レスポンス
| ステータス | 意味 | 本文とヘッダー |
|---|---|---|
| 201 | 正確な6文字のペアリングコードと有効期限。 | PairingSession(application/json);ヘッダー:Cache-Control、RateLimit-Policy、RateLimit |
| 403 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 429 | Player 対応のランタイムまたはコンテンツルートでの安定した rate_limited 問題応答。ランタイムドキュメント形式(RuntimeProblem)。権威ある Retry-After 間隔後にのみリトライしてください。固定ウィンドウ拒否は適用される RateLimit-Policy と RateLimit メンバーも含みます。並行性とバイト予算拒否はこれらの開示を省略します。 | ランタイム問題(application/problem+json);ヘッダー:Retry-After、RateLimit-Policy、RateLimit |
| 500 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| デフォルト | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
ストリームペアリングイベント
リクエストテンプレートとレスポンス
curl --request GET --cookie cookies.txt --cookie-jar cookies.txt 'https://play.screenrig.ai/stream/pairing-events'レスポンス
| ステータス | 意味 | 本文とヘッダー |
|---|---|---|
| 200 | 認証済み一時ペアリング SSE。終端 pairing.claimed データは PairingClaimedEvent で、秘密でない完了ノンスのみ含む。 | string (text/event-stream); ヘッダー: Cache-Control, X-Accel-Buffering |
| 401 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| デフォルト | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
ペアリングセッションを完了
リクエスト本文フィールド
| フィールド | 説明 |
|---|---|
| completion_nonce(必須、文字列) | パターン: "^[A-Za-z0-9_-]{43}$" |
リクエストテンプレートとレスポンス
curl --request POST --cookie cookies.txt --cookie-jar cookies.txt --header 'Content-Type: application/json' --data '@request.json' 'https://play.screenrig.ai/screen/pairing-sessions/complete'レスポンス
| ステータス | 意味 | 本文とヘッダー |
|---|---|---|
| 200 | ペアリングデバイスクッキーが発行されました;プレーヤーは通常のペアリング済みランタイムセッションを次に作成します。 | PairingCompletion(application/json);ヘッダー:Cache-Control、RateLimit-Policy、RateLimit |
| 400 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 401 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 403 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 404 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 429 | Player 対応のランタイムまたはコンテンツルートでの安定した rate_limited 問題応答。ランタイムドキュメント形式(RuntimeProblem)。権威ある Retry-After 間隔後にのみリトライしてください。固定ウィンドウ拒否は適用される RateLimit-Policy と RateLimit メンバーも含みます。並行性とバイト予算拒否はこれらの開示を省略します。 | ランタイム問題(application/problem+json);ヘッダー:Retry-After、RateLimit-Policy、RateLimit |
| 500 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| デフォルト | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
匿名ランタイムセッションを作成
リクエスト本文フィールド
| フィールド | 説明 |
|---|---|
| public_id(必須、文字列) | |
| 再生(任意、PlaybackHandshake) | オプションの再生ハンドシェイク。Playerがmintで宣言します。これは動作を選択するヒントであり、認可ではありません。未知のメンバーや型の違うエントリーは無視され、オブジェクトでない値は何も交渉しません。mint応答はPlaybackGrantとしてサポートされる交差を反映します。adslot-v1はペアリング済みセッションにのみ付与されます。 |
| プレーヤー(任意、PlayerIdentity) | Player の自己識別は、3つのミントルートでのみ送信されます(docs/player-compatibility.md §3.1)。これはヒントであり認証ではなく、ネイティブ証明には含まれません。寛容に読み取られます:不明なメンバーは無視され、無効なオプションメンバーは単独で破棄され、オブジェクトでないか有効な種類がない Player は何も宣言しません。 400は決して返しません。ペアリング済みのミントはスクリーンに保存し、運営者のフリートヒストグラム用です。 |
リクエストテンプレートとレスポンス
curl --request POST --header 'Content-Type: application/json' --data '@request.json' 'https://play.screenrig.ai/screen/sessions'レスポンス
| ステータス | 意味 | 本文とヘッダー |
|---|---|---|
| 201 | 読み取り専用のランタイムセッションクッキー。 | ランタイムセッション(application/json);ヘッダー:RateLimit-Policy、RateLimit |
| 404 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| デフォルト | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
デバイスランタイムセッションを作成
リクエスト本文フィールド
| フィールド | 説明 |
|---|---|
| public_id(任意、文字列) | minLength: 1 |
| 再生(任意、PlaybackHandshake) | オプションの再生ハンドシェイク。Playerがmintで宣言します。これは動作を選択するヒントであり、認可ではありません。未知のメンバーや型の違うエントリーは無視され、オブジェクトでない値は何も交渉しません。mint応答はPlaybackGrantとしてサポートされる交差を反映します。adslot-v1はペアリング済みセッションにのみ付与されます。 |
| プレーヤー(任意、PlayerIdentity) | Player の自己識別は、3つのミントルートでのみ送信されます(docs/player-compatibility.md §3.1)。これはヒントであり認証ではなく、ネイティブ証明には含まれません。寛容に読み取られます:不明なメンバーは無視され、無効なオプションメンバーは単独で破棄され、オブジェクトでないか有効な種類がない Player は何も宣言しません。 400は決して返しません。ペアリング済みのミントはスクリーンに保存し、運営者のフリートヒストグラム用です。 |
リクエストテンプレートとレスポンス
curl --request POST --cookie cookies.txt --cookie-jar cookies.txt --header 'Content-Type: application/json' --data '@request.json' 'https://play.screenrig.ai/screen/device-sessions'レスポンス
| ステータス | 意味 | 本文とヘッダー |
|---|---|---|
| 201 | ペアリング済みランタイムセッション | ランタイムセッション(application/json) |
| 409 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| デフォルト | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
ネイティブペアリングセッション開始
プレーヤーのEd25519公開鍵からネイティブ専用ペアリングセッションを作成します。未請求のネイティブペアリングは72時間持続します。成功した請求はスクリーンを予約し、ロケーターの有効期限に関係なく耐久性のある暗号化配信を保存します。署名完了まで公開鍵は特定のペアリング認証情報とノンスに対してプロジェクトにバインドされません。
Cookie、クエリ認証情報、クロスサイト起点、認証は拒否されます。正確な Idempotency-Key の再生が新しい悪用の受け入れに先行します。レスポンスは決して Cookie を設定しません。すでにバインド済みか明示的にリタイアされた公開鍵は enrollment_bound を返します。
パラメーター
| 名前 | 送信する | 必須? | 説明 |
|---|---|---|---|
| Idempotency-Key | ヘッダー | 必須 |
リクエスト本文フィールド
| フィールド | 説明 |
|---|---|
| kid(必須、文字列) | パターン: "^[A-Za-z0-9_-]{43}$" |
| public_key(必須、PlayerPublicKey) | |
| 署名(必須、文字列) | minLength: 80 maxLength: 4096 |
| ホスト(任意、RuntimeHostHint) | ペアリング開始、完了、アイデンティティセッション発行時のオプションのネイティブホストヒント。デバイス名を示し、認可には使われません。 寛容に読み取ります(docs/player-compatibility.md §1.1.1):不明なメンバーは無視、誤ったフィールドや機能エントリは破棄、最大32機能を保持、オブジェクトでない値やパターン外プラットフォームはヒント全体を破棄。これらはリクエスト拒否しません。 Player は登録済みのプラットフォーム値と以下のメンバーのみを送信します。事前契約のないバックエンドは他の値を拒否するためです。 |
| fleet_link(任意、文字列) | プレーヤー URL のフラグメント(#fleet=)から取得する、任意のフリートリンクのシークレットです。正しく、有効化されていて、期限切れでないリンクは、このペアリングセッションを直ちにそのプロジェクトに紐付けるか、デバイスの以前のスクリーンを復元します。どちらが行われたかは、応答の fleet_link に示されます。 host と同様に、寛容に読み取られます。形式が正しくない値や不明な値でも、開始が拒否されることはありません。pattern: "^srfl_[A-Za-z0-9_-]{43}$" |
リクエストテンプレートとレスポンス
curl --request POST --header 'Idempotency-Key: REQUEST_ID' --header 'Content-Type: application/json' --data '@request.json' 'https://play.screenrig.ai/screen/native/pairing-sessions'レスポンス
| ステータス | 意味 | 本文とヘッダー |
|---|---|---|
| 201 | ネイティブのペアリングコードと一時的なScreenRig-Pairing認証情報;Set-Cookieはありません。 | NativePairingSession(application/json);ヘッダー:Cache-Control、RateLimit-Policy、RateLimit |
| 400 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 403 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 409 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 429 | Player 対応のランタイムまたはコンテンツルートでの安定した rate_limited 問題応答。ランタイムドキュメント形式(RuntimeProblem)。権威ある Retry-After 間隔後にのみリトライしてください。固定ウィンドウ拒否は適用される RateLimit-Policy と RateLimit メンバーも含みます。並行性とバイト予算拒否はこれらの開示を省略します。 | ランタイム問題(application/problem+json);ヘッダー:Retry-After、RateLimit-Policy、RateLimit |
| 500 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| デフォルト | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
ストリームネイティブペアリングイベント
ネイティブ専用ペアリングSSEは正確に1つのScreenRig-Pairing認証ヘッダーで認証されます。クッキーやクエリ認証情報は拒否されます。終端イベントには秘密でない完了ノンスのみが含まれます。
リクエストテンプレートとレスポンス
curl --request GET --header 'Authorization: ScreenRig-Pairing PAIRING' 'https://play.screenrig.ai/stream/native/pairing-events'レスポンス
| ステータス | 意味 | 本文とヘッダー |
|---|---|---|
| 200 | 認証済みネイティブペアリング SSE。終端データは PairingClaimedEvent。 | string (text/event-stream); ヘッダー: Cache-Control, X-Accel-Buffering |
| 401 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 403 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 404 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 429 | Player 対応のランタイムまたはコンテンツルートでの安定した rate_limited 問題応答。ランタイムドキュメント形式(RuntimeProblem)。権威ある Retry-After 間隔後にのみリトライしてください。固定ウィンドウ拒否は適用される RateLimit-Policy と RateLimit メンバーも含みます。並行性とバイト予算拒否はこれらの開示を省略します。 | ランタイム問題(application/problem+json);ヘッダー:Retry-After、RateLimit-Policy、RateLimit |
| 500 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| デフォルト | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
ネイティブペアリングセッションを完了
完了ノンスと op=pairing.complete のEdDSAコンパクトJWSでネイティブペアリングを完了。request_hashは正確なペアリング認証情報と完了ノンスを結びつけます。クッキーは受け入れず設定もしません。ScreenRig-Device認証情報は発行されません。Playerは次に保有証明からScreenRig-Sessionを発行します。
リクエスト本文フィールド
| フィールド | 説明 |
|---|---|
| kid(任意、文字列) | パターン: "^[A-Za-z0-9_-]{43}$" |
| completion_nonce(必須、文字列) | パターン: "^[A-Za-z0-9_-]{43}$" |
| public_key(必須、PlayerPublicKey) | |
| 署名(必須、文字列) | op=pairing.complete と request_hash で正確なペアリング認証情報と完了ノンスを結びつけたコンパクトEdDSA JWS。minLength: 80 maxLength: 4096 |
| ホスト(任意、RuntimeHostHint) | ペアリング開始、完了、アイデンティティセッション発行時のオプションのネイティブホストヒント。デバイス名を示し、認可には使われません。 寛容に読み取ります(docs/player-compatibility.md §1.1.1):不明なメンバーは無視、誤ったフィールドや機能エントリは破棄、最大32機能を保持、オブジェクトでない値やパターン外プラットフォームはヒント全体を破棄。これらはリクエスト拒否しません。 Player は登録済みのプラットフォーム値と以下のメンバーのみを送信します。事前契約のないバックエンドは他の値を拒否するためです。 |
リクエストテンプレートとレスポンス
curl --request POST --header 'Authorization: ScreenRig-Pairing PAIRING' --header 'Content-Type: application/json' --data '@request.json' 'https://play.screenrig.ai/screen/native/pairing-sessions/complete'レスポンス
| ステータス | 意味 | 本文とヘッダー |
|---|---|---|
| 200 | ネイティブのペアリング完了;Set-Cookieもデバイス認証情報もありません。 | NativePairingCompletion(application/json);ヘッダー:Cache-Control、RateLimit-Policy、RateLimit |
| 400 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 401 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 403 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 404 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 409 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 429 | Player 対応のランタイムまたはコンテンツルートでの安定した rate_limited 問題応答。ランタイムドキュメント形式(RuntimeProblem)。権威ある Retry-After 間隔後にのみリトライしてください。固定ウィンドウ拒否は適用される RateLimit-Policy と RateLimit メンバーも含みます。並行性とバイト予算拒否はこれらの開示を省略します。 | ランタイム問題(application/problem+json);ヘッダー:Retry-After、RateLimit-Policy、RateLimit |
| 500 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| デフォルト | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
ネイティブIDチャレンジを作成
1つのプレーヤー公開鍵サムプリントに結びついた短命のノンスを発行します。クッキー、クエリ認証情報、Authorizationは拒否されます。
リクエスト本文フィールド
| フィールド | 説明 |
|---|---|
| kid(必須、文字列) | RFC 7638 SHA-256 JWK サムプリント。パターン:「^[A-Za-z0-9_-]{43}$」 |
| public_key(任意、PlayerPublicKey) | |
| op(必須、文字列) | 許可されている値: "pairing.start"、"pairing.complete"、"session.mint"、"identity.reset"。 |
| request_hash(必須、文字列) | パターン: "^[0-9a-f]{64}$" |
リクエストテンプレートとレスポンス
curl --request POST --header 'Content-Type: application/json' --data '@request.json' 'https://play.screenrig.ai/screen/native/identity/challenges'レスポンス
| ステータス | 意味 | 本文とヘッダー |
|---|---|---|
| 201 | EdDSAコンパクトJWS証明のチャレンジノンス;Set-Cookieなし。 | NativeIdentityChallenge(application/json);ヘッダー:Cache-Control、RateLimit-Policy、RateLimit |
| 400 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 404 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 429 | Player 対応のランタイムまたはコンテンツルートでの安定した rate_limited 問題応答。ランタイムドキュメント形式(RuntimeProblem)。権威ある Retry-After 間隔後にのみリトライしてください。固定ウィンドウ拒否は適用される RateLimit-Policy と RateLimit メンバーも含みます。並行性とバイト予算拒否はこれらの開示を省略します。 | ランタイム問題(application/problem+json);ヘッダー:Retry-After、RateLimit-Policy、RateLimit |
| 500 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| デフォルト | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
ネイティブIDランタイムセッションを作成
登録済み公開鍵に対してEdDSAコンパクトJWS(op=session.mint)を検証し、署名済み7日間ScreenRig-Sessionを返します。ペアリングされたプレーヤーは1日後にジッター付きで同じ署名ミントを使って更新します。更新は既存のランタイムストリームを閉じずに認証情報を置き換えます。更新メタデータは読み取り側に任意で、プレーヤーの更新は不要です。
Cookie は受け入れも設定もしません。正確な Idempotency-Key の再生が新しい悪用の受け入れに先行します。アーカイブ済みスクリーンはセッションをミントし、プレーヤーはアーカイブ済みグラスを表示できます。セッションミントには署名完了で確立された正確な耐久プロジェクトとスクリーンバインドが必要で、保留中のクレームオファーにはセッション権限がありません。
正確なリプレイはバインディングを再確認し、廃止されたIDを拒否します。
パラメーター
| 名前 | 送信する | 必須? | 説明 |
|---|---|---|---|
| Idempotency-Key | ヘッダー | 必須 |
リクエスト本文フィールド
| フィールド | 説明 |
|---|---|
| kid(必須、文字列) | パターン: "^[A-Za-z0-9_-]{43}$" |
| public_key(必須、PlayerPublicKey) | |
| 署名(必須、文字列) | op=session.mint のコンパクトEdDSA JWS。minLength: 80 maxLength: 4096 |
| ホスト(任意、RuntimeHostHint) | ペアリング開始、完了、アイデンティティセッション発行時のオプションのネイティブホストヒント。デバイス名を示し、認可には使われません。 寛容に読み取ります(docs/player-compatibility.md §1.1.1):不明なメンバーは無視、誤ったフィールドや機能エントリは破棄、最大32機能を保持、オブジェクトでない値やパターン外プラットフォームはヒント全体を破棄。これらはリクエスト拒否しません。 Player は登録済みのプラットフォーム値と以下のメンバーのみを送信します。事前契約のないバックエンドは他の値を拒否するためです。 |
| 再生(任意、PlaybackHandshake) | オプションの再生ハンドシェイク。Playerがmintで宣言します。これは動作を選択するヒントであり、認可ではありません。未知のメンバーや型の違うエントリーは無視され、オブジェクトでない値は何も交渉しません。mint応答はPlaybackGrantとしてサポートされる交差を反映します。adslot-v1はペアリング済みセッションにのみ付与されます。 |
| プレーヤー(任意、PlayerIdentity) | Player の自己識別は、3つのミントルートでのみ送信されます(docs/player-compatibility.md §3.1)。これはヒントであり認証ではなく、ネイティブ証明には含まれません。寛容に読み取られます:不明なメンバーは無視され、無効なオプションメンバーは単独で破棄され、オブジェクトでないか有効な種類がない Player は何も宣言しません。 400は決して返しません。ペアリング済みのミントはスクリーンに保存し、運営者のフリートヒストグラム用です。 |
リクエストテンプレートとレスポンス
curl --request POST --header 'Idempotency-Key: REQUEST_ID' --header 'Content-Type: application/json' --data '@request.json' 'https://play.screenrig.ai/screen/native/identity/sessions'レスポンス
| ステータス | 意味 | 本文とヘッダー |
|---|---|---|
| 201 | ペアリング済みネイティブランタイムセッション;Set-Cookieなし。 | NativeRuntimeSession(application/json);ヘッダー:Cache-Control、RateLimit-Policy、RateLimit |
| 400 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 401 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 403 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 404 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 409 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 429 | Player 対応のランタイムまたはコンテンツルートでの安定した rate_limited 問題応答。ランタイムドキュメント形式(RuntimeProblem)。権威ある Retry-After 間隔後にのみリトライしてください。固定ウィンドウ拒否は適用される RateLimit-Policy と RateLimit メンバーも含みます。並行性とバイト予算拒否はこれらの開示を省略します。 | ランタイム問題(application/problem+json);ヘッダー:Retry-After、RateLimit-Policy、RateLimit |
| 500 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| デフォルト | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
画面リンクのランタイムセッションを作成
Player のアドレス内の画面リンクのシークレット(https://play.<domain>/player/#screen=… の #screen= 以降の srsl_ の値)から、ストレージを保持しないブラウザー向けに7日間の ScreenRig-Session を発行します。Player は読み込みのたびに、また更新のためにもう一度シークレットを送ります。キーもペアリングも保持しません。
セッションのデバイスキークレームにリンクの id が入るため、リンクを置き換えまたは削除すると、API とエッジの両方で直ちにセッションが終了します。Cookie は受け付けず、設定もしません。Idempotency-Key の完全一致の再実行は、新たな不正対策の受け入れ審査に先行します。アーカイブ済みのスクリーンでもセッションは発行されるため、Player はアーカイブ済みの状態を表示できます。
置き換え済み、削除済み、または未知のリンクは screen_link_invalid(401、アクション clear_lkg)になります。host があれば保存済みのホストヒントを置き換え、player があれば保存済みの player を置き換えます。
パラメーター
| 名前 | 送信する | 必須? | 説明 |
|---|---|---|---|
| Idempotency-Key | ヘッダー | 必須 |
リクエスト本文フィールド
| フィールド | 説明 |
|---|---|
| screen_link(必須、文字列) | パターン: "^srsl_[A-Za-z0-9_-]{43}$" |
| ホスト(任意、RuntimeHostHint) | ペアリング開始、完了、アイデンティティセッション発行時のオプションのネイティブホストヒント。デバイス名を示し、認可には使われません。 寛容に読み取ります(docs/player-compatibility.md §1.1.1):不明なメンバーは無視、誤ったフィールドや機能エントリは破棄、最大32機能を保持、オブジェクトでない値やパターン外プラットフォームはヒント全体を破棄。これらはリクエスト拒否しません。 Player は登録済みのプラットフォーム値と以下のメンバーのみを送信します。事前契約のないバックエンドは他の値を拒否するためです。 |
| 再生(任意、PlaybackHandshake) | オプションの再生ハンドシェイク。Playerがmintで宣言します。これは動作を選択するヒントであり、認可ではありません。未知のメンバーや型の違うエントリーは無視され、オブジェクトでない値は何も交渉しません。mint応答はPlaybackGrantとしてサポートされる交差を反映します。adslot-v1はペアリング済みセッションにのみ付与されます。 |
| プレーヤー(任意、PlayerIdentity) | Player の自己識別は、3つのミントルートでのみ送信されます(docs/player-compatibility.md §3.1)。これはヒントであり認証ではなく、ネイティブ証明には含まれません。寛容に読み取られます:不明なメンバーは無視され、無効なオプションメンバーは単独で破棄され、オブジェクトでないか有効な種類がない Player は何も宣言しません。 400は決して返しません。ペアリング済みのミントはスクリーンに保存し、運営者のフリートヒストグラム用です。 |
リクエストテンプレートとレスポンス
curl --request POST --header 'Idempotency-Key: REQUEST_ID' --header 'Content-Type: application/json' --data '@request.json' 'https://play.screenrig.ai/screen/link-sessions'レスポンス
| ステータス | 意味 | 本文とヘッダー |
|---|---|---|
| 201 | ペアリング済みネイティブランタイムセッション;Set-Cookieなし。 | NativeRuntimeSession(application/json);ヘッダー:Cache-Control、RateLimit-Policy、RateLimit |
| 400 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 401 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 403 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 409 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 429 | Player 対応のランタイムまたはコンテンツルートでの安定した rate_limited 問題応答。ランタイムドキュメント形式(RuntimeProblem)。権威ある Retry-After 間隔後にのみリトライしてください。固定ウィンドウ拒否は適用される RateLimit-Policy と RateLimit メンバーも含みます。並行性とバイト予算拒否はこれらの開示を省略します。 | ランタイム問題(application/problem+json);ヘッダー:Retry-After、RateLimit-Policy、RateLimit |
| 500 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| デフォルト | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
ネイティブIDをリセット
オンプレイヤーリセットは、デバイス上で明示的に確認されたオペレーター操作によってのみ呼び出されます。ペアリング失敗、セッション発行、ネットワークアクセスはこの操作を自動的に呼び出したり、プレイヤーのローカルキーをクリアしたりしません。エンドポイントはEdDSAコンパクトJWS(op=identity.reset)を検証します。
この鍵に紐付くスクリーンは archive_reason device_reset でアーカイブされ(すでにアーカイブ済み:変更なし)、鍵は紐付いたままです。鍵を保持するデバイスはアーカイブ済みセッション(ダークグラス)を作成し、アンアーカイブ時に再ペアリングなしで再開し、新しいペアリングを開始できません(enrollment_bound)。
キーの保留中ネイティブクレームオファーは撤回されます。スクリーンにバインドされなかったキー、またはスクリーン回復で既に退役したキーは代わりに終端となります:再ペアリングやセッション発行はできず、退役キーのリセットは後継キーが所有するスクリーンに影響を与えません。
登録済みプロジェクトが削除された場合、署名付きリセットは孤立したキーを端末にし、別のスクリーンをアーカイブせずにデバイスを再ペアリング可能にします。応答を失った後もPlayerはローカルキーを保持し、新しいチャレンジと新鮮な署名証明で再試行できます。
ネットワークエラーだけではリセットの確認やそのキーのクリアの許可にはなりません(docs/player-compatibility.md §5.1)。プロジェクトベアラーはありません。クッキーは受け入れも設定もしません。
リクエスト本文フィールド
| フィールド | 説明 |
|---|---|
| kid(必須、文字列) | パターン: "^[A-Za-z0-9_-]{43}$" |
| public_key(必須、PlayerPublicKey) | |
| 署名(必須、文字列) | コンパクトEdDSA JWS。minLength: 80 maxLength: 4096 |
リクエストテンプレートとレスポンス
curl --request POST --header 'Content-Type: application/json' --data '@request.json' 'https://play.screenrig.ai/screen/native/identity/reset'レスポンス
| ステータス | 意味 | 本文とヘッダー |
|---|---|---|
| 204 | リセット記録:ライブプロジェクトに紐づくスクリーンはキーを保持してアーカイブされます。削除済みプロジェクト、紐づかない、または廃止されたキーは端末になります。不明なキーは何もアーカイブしない冪等な no-op として応答します。これらの認証済みリトライも成功します。Set-Cookie はありません。 | 本文なし;ヘッダー:Cache-Control、RateLimit-Policy、RateLimit |
| 400 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 401 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 404 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| 429 | Player 対応のランタイムまたはコンテンツルートでの安定した rate_limited 問題応答。ランタイムドキュメント形式(RuntimeProblem)。権威ある Retry-After 間隔後にのみリトライしてください。固定ウィンドウ拒否は適用される RateLimit-Policy と RateLimit メンバーも含みます。並行性とバイト予算拒否はこれらの開示を省略します。 | ランタイム問題(application/problem+json);ヘッダー:Retry-After、RateLimit-Policy、RateLimit |
| 500 | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |
| デフォルト | Player 対応のランタイム、コンテンツ、またはプローブルートでの安定した RFC 9457 問題応答。ランタイムドキュメント形式(RuntimeProblem)。421 server_draining は Retry-After 1秒、500 not_ready または dependency_unavailable は 5秒、500 manifest_degraded は 60秒を持ちます。ハンドラーがより具体的な値を設定していない場合。 | ランタイム問題(application/problem+json) |