Java Booking API クライアント

Google の Java リアルタイム アップデート API クライアント: 実装を開始するために役立ちます。 リアルタイムで更新されます

前提条件:

サービス アカウントを作成したら、秘密鍵をダウンロードします。

使ってみる:

  1. ダウンロード: Java クライアント ライブラリ: ファイルを解凍して「mapsbooking」を取得する パッケージ化されています。
  2. IDE で Java プロジェクトを作成し、サンプルコードをダウンロードする InventoryUpdate.java と 次のリポジトリの BookingNotification.java を使用します。

    git clone https://maps-booking.googlesource.com/java-maps-booking-api-example
    

    src ディレクトリにある Java プロジェクトにインポートします。

  3. 秘密鍵(JSON ファイル)を src ディレクトリにコピーします。
  4. Java クライアント ライブラリをプロジェクトの依存関係に追加する (mapsbooking ディレクトリと libs-sources ディレクトリにある jar ファイルを含めます)。
  5. 両方の Java ファイルで、TODO に沿って実装を完了します。

REST API の詳細は こちらをご覧ください。

トラブルシューティング:

  1. 既存の販売者 ID を使用して新しい販売者/サービスを作成する場合、または serviceId を削除すると、次のエラー メッセージが表示されます。

    409 Conflict
    {
      “code” : 409,
      “errors” :
        [{
            “domain” : “global”,
            “message” : “Requested entity already exists”,
            “reason” : “alreadyExists”,
            “debugInfo” : “detail: "[ORIGINAL ERROR] generic::already_exists: ...”\n"
        }],
      “message” : “Requested entity already exists”,
      “status” : “ALREADY_EXISTS”
    }
    
  2. 無効な MerchantId または無効な販売者 ID で、交換の在庫状況の呼び出しを行う場合。 serviceId を使用している場合、この呼び出しではエラー メッセージはスローされません。その理由は、 RTU を介した予約枠に対する変更は、順不同実行と MerchantId や serviceId には関連付けられません。ただしスロットには リクエストに含まれるものは、無効なため、本番環境で MerchantId または serviceId を使用してリクエストできます。スロットを配信可能にするには、 RTU またはフィードを介して販売者またはサービスが提供されていない。
  3. すべての更新関数で、パラメータ「updateMask」は FieldMask 形式。更新するフィールドを指定します。API は マスクで指定されたフィールドの値のみを変更する必要がある 他はそのままにします間違った updateMask 文字列を渡した場合、 更新は有効になりません更新時にフィールド マスクが存在しない場合、 オペレーションはすべてのフィールドに適用されます(すべてのフィールドのフィールド マスクに 指定されています)。すべてのフィールドを更新する場合は、 updateMask が空です。
  4. 値が 0 のフィールドはレスポンスに表示されません。