Java Booking API 用戶端

您可以下載 Java Realtime 更新 API 用戶端,開始導入即時更新。

必備條件:

建立服務帳戶,並下載私密金鑰。

開始使用:

  1. 下載 Java 用戶端程式庫來解壓縮檔案,以取得「mapsbooking」套件。
  2. 在 IDE 中建立 Java 專案,並下載存放區中的程式碼範例 InventoryUpdate.javaBookingNotification.java

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

    並匯入 src 目錄下的 Java 專案。

  3. 將私密金鑰 (JSON 檔案) 複製到 src 目錄。
  4. 將 Java 用戶端程式庫新增至專案的依附元件 (將 jar 檔案加入 mapsbooking 和 libs-sources 目錄下)。
  5. 在兩個 Java 檔案中,按照 TODO 完成實作

如要進一步瞭解 REST API,請參閱這篇文章

疑難排解:

  1. 嘗試使用現有的 merchantId 或 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. 使用無效的 businessId 或 serviceId 進行取代可用性呼叫時,呼叫不會擲回錯誤訊息。這是因為透過 RTU 變更可用性運算單元時,可支援順序有誤的執行功能,因此並未與 businessId 或 serviceId 建立關聯。不過,由於 merchantId 或 serviceId 無效,因此要求中的運算單元不會顯示於實際工作環境中。如果要提供運算單元,請透過 RTU 或動態饋給新增缺少的商家或服務。
  3. 在所有更新函式中,「update 遮罩」參數必須採用 FieldMask 格式,才能指定要更新的欄位。此 API 只需要變更遮罩中指定的欄位值,其他值則不受影響。如果您傳遞的 update 遮罩 字串有誤,更新就不會生效。更新時,如果欄位遮罩不存在,作業就會套用到所有欄位,就像所有欄位的欄位遮罩一樣。因此,如要更新所有欄位,請將 update 遮罩 設為空白,
  4. 回應中不會顯示任何值為任何欄位。