Java Booking API-Client

Sie können unseren Java Real Time Update API Client herunterladen, um die Implementierung der Echtzeitaktualisierungen zu erleichtern.

Voraussetzung:

Lassen Sie Ihr Dienstkonto erstellen. Laden Sie Ihren privaten Schlüssel herunter.

Einführung:

  1. Laden Sie die Java-Clientbibliothek herunter und entpacken Sie die Datei, um das „Mapsbooking“-Paket zu erhalten.
  2. Erstellen Sie in Ihrer IDE ein Java-Projekt und laden Sie die Beispielcodes InventoryUpdate.java und BookingNotification.java aus diesem Repository herunter:

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

    und importieren Sie sie in Ihr Java-Projekt im src-Verzeichnis.

  3. Erstellen Sie eine Kopie des privaten Schlüssels (JSON-Datei) im src-Verzeichnis.
  4. Fügen Sie den Abhängigkeiten Ihres Projekts die Java-Clientbibliothek hinzu (umschließen Sie JAR-Dateien im Verzeichnis „mapsbooking“ und „libs-sources“).
  5. Folgen Sie in beiden Java-Dateien den TODOs, um Ihre Implementierungen abzuschließen

Weitere Informationen zur REST API

Fehlerbehebung:

  1. Wenn Sie versuchen, einen neuen Händler oder Dienst mit einer vorhandenen Händler-ID oder Dienst-ID zu erstellen, wird die folgende Fehlermeldung angezeigt:

    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. Wird ein Avail-Aufruf zum Ersetzen mit einer ungültigen MerchantID oder ServiceId ausgeführt, gibt der Aufruf keine Fehlermeldung aus. Das liegt daran, dass Änderungen an Verfügbarkeits-Slots über RTUs die Out-of-Order-Ausführung unterstützen und somit nicht mit einer MerchantID oder serviceId verknüpft sind. Allerdings werden die Slots in der Anfrage aufgrund der ungültigen „merchantId“ oder „serviceId“ nicht in der Produktion bereitgestellt. Damit die Slots ausgeliefert werden können, fügen Sie den fehlenden Händler oder die fehlende Dienstleistung über RTUs oder Feeds hinzu.
  3. In allen Updatefunktionen muss der Parameter „updateMask“ im Format FieldMask angegeben werden, um die zu aktualisierenden Felder anzugeben. Die API muss nur die Werte der Felder ändern, die in der Maske angegeben sind. Die anderen Felder bleiben unverändert. Wenn Sie einen falschen updateMask-String übergeben, wird die Aktualisierung nicht wirksam. Wenn bei der Aktualisierung keine Feldmaske vorhanden ist, gilt der Vorgang für alle Felder (als ob eine Feldmaske aller Felder angegeben wurde). Wenn Sie also alle Felder aktualisieren möchten, lassen Sie die updateMask leer.
  4. Alle Felder mit einem Wert von null werden in der Antwort nicht aufgeführt.