概要
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
Google Wallet Passes API には、パートナーがローテーション バーコードを Google ウォレットに保存する機能があります。これらのバーコードの有効期間は短時間であり、バーコードのスクリーンショットが取得された場合のリスクを軽減するようにセキュリティが強化されています。バーコードは RFC 6238 に基づいてデバイス上で生成されます。秘密鍵はパートナーが提供します。ただし、パートナーが自身でバーコードを生成する場合は、Google が提供する API でバーコードを Google に一括アップロードできます。続いて、これらのバーコードがユーザーのスマートフォンに渡され、ローテーション バーコードとまったく同じように機能します(短時間表示されます)。Google はこのソリューションを「パートナーが生成したローテーション バーコード」と呼んでいます。
パートナーが生成したローテーション バーコードの API
パートナーが生成したローテーション バーコードの作成には、同じ RotatingBarcode オブジェクトを使用します。必須であるのはタイプのみですが、バーコードの小規模なスターター セット(最長 10 分有効)を作成して、initialRotatingBarcodeValues
で送信することもおすすめします。ユーザー用の有効なバーコードを常に準備しておくことはパートナーの役割であり、initialRotatingBarcodeValues
を使用して後続の一括アップロードの呼び出しを非同期に行うことができます。
rotatingBarcode {
initialRotatingBarcodeValues: object (RotatingBarcodeValues),
type: enum (BarcodeType),
}
フィールド |
説明 |
initialRotatingBarcodeValues |
object (RotatingBarcodeValues)
バーコード内でエンコードする値です。値を少なくとも 1 つ指定してください。これらの初期バーコードは、ユーザーが最初にパスを取得してから後続の一括アップロード呼び出しが行われるまでのギャップを埋めることを目的としています。
|
type |
enum (BarcodeType)
必須。このバーコードのタイプです。
有効な値は次のとおりです。
|
RotatingBarcodeValues
フィールド |
説明 |
startDateTime |
string
最初のバーコードが有効になる日付/時刻です。バーコードは periodMillis を使用してローテーションされます。
これは ISO 8601 拡張形式の日付/時刻で、オフセットありです。
|
values[] |
string
バーコード内でエンコードする値です。値を少なくとも 1 つ指定してください。
値に最大値はありませんが、リクエスト本文のサイズは 5 MB 以下にする必要があります。
|
periodMillis |
number
各バーコードが有効である時間の長さ。
|
バーコードの値の一括更新
RotatingBarcode オブジェクトを作成したら、ユーザーのパスの有効期限が切れるまで、1 日分のバーコードを毎日アップロードすることをおすすめします。これは、次の REST API エンドポイントを使用して行うことができます。
メソッド: transitobject.uploadrotatingbarcodevalues
指定されたオブジェクト ID の交通機関オブジェクトに、ローテーション バーコードの値をアップロードします。
HTTP リクエスト
POST
https://walletobjects.googleapis.com/upload/walletobjects/v1/transitObject/{resourc
eId}/uploadRotatingBarcodeValues
パスパラメータ
パラメータ |
説明 |
resourceId |
string
オブジェクトの一意識別子。
|
リクエスト本文
リクエスト本文(5 MB 以下)には RotatingBarcodeValues のインスタンスが含まれます。
メソッド: transitobject.downloadrotatingbarcodevalues
指定されたオブジェクト ID の交通機関オブジェクトのローテーション バーコードの値をダウンロードします。これは、パートナーが最新のバッチを確認する場合に便利です。
HTTP リクエスト
GET
https://walletobjects.googleapis.com/walletobjects/v1/transitObject/{resourceId}/do
wnloadRotatingBarcodeValues?alt=media
パスパラメータ
パラメータ |
説明 |
resourceId |
string
オブジェクトの一意識別子。
|
フォールバックの仕組み
RotatingBarcode 自体は有効であるが、表示する有効なバーコードが存在しない場合(バーコードがまだアップロードされていない場合、または現在のバーコードがすべて使用された場合)、ユーザーに対してエラー メッセージが表示されます。
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2024-11-30 UTC。
[[["わかりやすい","easyToUnderstand","thumb-up"],["問題の解決に役立った","solvedMyProblem","thumb-up"],["その他","otherUp","thumb-up"]],[["必要な情報がない","missingTheInformationINeed","thumb-down"],["複雑すぎる / 手順が多すぎる","tooComplicatedTooManySteps","thumb-down"],["最新ではない","outOfDate","thumb-down"],["翻訳に関する問題","translationIssue","thumb-down"],["サンプル / コードに問題がある","samplesCodeIssue","thumb-down"],["その他","otherDown","thumb-down"]],["最終更新日 2024-11-30 UTC。"],[[["Google Wallet now supports Partner-Generated Rotating Barcodes for enhanced security, allowing partners to generate and upload time-limited barcodes directly."],["Partners can integrate Rotating Barcodes using the `rotatingBarcode` object within the Google Wallet Passes API, specifying the barcode type and initial values."],["The API provides methods for batch uploading (`transitobject.uploadrotatingbarcodevalues`) and downloading (`transitobject.downloadrotatingbarcodevalues`) barcode values for ongoing updates."],["To ensure continuous barcode availability, it is recommended to upload a day's worth of barcodes daily until a user's pass expires, utilizing the `initialRotatingBarcodeValues` for a smooth initial experience."],["If a Rotating Barcode lacks valid values, an error message will be displayed to the user, highlighting the importance of timely barcode updates."]]],["The Google Wallet Passes API enables partners to use Partner-Generated Rotating Barcodes, enhancing security by having barcodes valid for a short time. Partners can define a `RotatingBarcode` object specifying the barcode `type` and `initialRotatingBarcodeValues`. They then batch upload barcode values using the `transitobject.uploadrotatingbarcodevalues` API endpoint and should upload a day's worth of barcodes each day. Barcode values can be downloaded via `transitobject.downloadrotatingbarcodevalues` for verification. If no valid barcodes are available, an error message is shown.\n"]]