Bug im REST API /phonebook

Hallo zusammen,

ich möchte das Telefonbuch per REST API aus unserem CRM befüllen. Dabei erhalte ich allerdings einen Fehler, der sich folgendermaßen im Service API nachstellen lässt:

  1. Anlegen eines Testeintrages mit /phonebook/ (POST):
    {
    “type”: “028phonebook”,
    “id”: “Holger Test”,
    “displayname”: “Holger - Testeintrag”,
    “firstname”: “Holger”,
    “surname”: “Test”,
    “phone”: “4902659548”,
    “email”: "holger.test@training.com",
    “fax”: “49015489”,
    “mobile”: null,
    “homephone”: null,
    “organisation”: “Testorga”
    }
    –> liefert RC 200, der Eintrag ist vorhanden

  2. Nun möchte ich diesen Eintrag mit /phonebook/{id} (GET) lesen, wobei ich im ersten Versuch “Holger Test” als ID verwende
    –> liefert RC204, nicht gefunden

  3. Versuche ich jedoch mit ID “Holger - Testeintrag” zu lesen, liefert das API RC 200 und findet den Datensatz:

{
“type”: “028phonebook”,
“id”: “Holger - Testeintrag”,
“displayname”: “Holger - Testeintrag”,
“firstname”: “Holger”,
“surname”: “Test”,
“phone”: “4902659548”,
“email”: "holger.test@training.com",
“fax”: “49015489”,
“mobile”: null,
“homephone”: null,
“organisation”: “Testorga”
}

Man sieht, dass aus der ursprünglichen ID “Holger Test” beim Anlegen des Eintrages ID “Holger - Testeintrag” wurde.

Unsere MD Version ist MobyDick 7.04.02.

Danke und Grüße,
Kernig

Hallo Kernig,

das Feld “id” wird automatisch aus dem Feld “displayname” generiert, das kann nicht manuell vom benutzer gesetzt werden. Bei beiden deinen Beispielen ist der displayname auf “Holger - Testeintrag” gesetzt.

Insofern verhält sich die API an dieser Stelle korrekt und das beschriebene Verhalten ist kein Bug.

Grüße,
Jan

Hallo Jan,

Danke, so hab ich es zum Laufen gebracht.

Etwas verwirrend finde ich es trotzdem: entweder braucht man dann das Attribut ID nicht wirklich oder zumindest sollte die Dokumentation dann etwas ausführlicher sein an diesem Punkt;-) Trotzdem vielen Dank!

Grüße,
Kernig