/office/api/changeSlotServicer?token=IHR_TOKEN&internalid=51078854&slot=0&servicerId=136
Weist einem einzelnen Slot eines bereits bestehenden Termins einen anderen Mitarbeiter zu. Ein Termin besteht aus einem oder mehreren Slots – den einzelnen Positionen des Termins –, und jeder Slot hat seinen eigenen Mitarbeiter. Diese Schnittstelle ändert genau einen davon; Uhrzeiten, Leistungen und alle übrigen Slots des Termins bleiben unverändert.
Der Termin wird über internalid angesprochen, der Slot über seine Position slot. Beide Werte liefert Daten für einen einzelnen Termin abfragen: Die Antwort enthält je Slot einen Eintrag mit der internalid, der Position appointment_slots_idx (0 für den ersten Slot) und dem bisher zugeordneten Mitarbeiter servicer_id. Die ID des neuen Mitarbeiters stammt aus Mitarbeiter; angegeben werden darf auch die ID einer Ressource, also zum Beispiel eines Geräts oder eines Raums.
Übergabe der Werte
Die vier Felder können als URL-Parameter angehängt oder – mit dem Header Content-Type: application/json – als JSON-Body geschickt werden:
{
"token": "IHR_TOKEN",
"internalid": 51078854,
"slot": 0,
"servicerId": 136
}
Beide Wege führen zum selben Ergebnis, lassen sich aber nicht mischen: Sobald der Aufruf als JSON ausgezeichnet ist, werden internalid, slot und servicerId ausschließlich aus dem Body gelesen – dieselben Werte in der URL bleiben dann unbeachtet. Einzige Ausnahme ist der token: Fehlt er im Body, wird er weiterhin aus der URL genommen.
Was geprüft wird
Vor der Änderung prüft die Schnittstelle der Reihe nach, ob alle Angaben vollständig sind, ob es den Termin gibt, ob die Position innerhalb des Termins existiert und ob es den Mitarbeiter gibt. Termin und Mitarbeiter müssen dabei zu dem Standort gehören, für den der verwendete API-Zugang gilt – sonst antwortet die Schnittstelle so, als gäbe es sie nicht.
| Status | Meldung | Ursache |
|---|---|---|
400 |
missing or invalid internalid |
internalid fehlt oder ist keine ganze Zahl. |
missing or invalid slot |
slot fehlt oder ist keine ganze Zahl. |
|
missing or invalid employeeId |
servicerId fehlt oder ist keine ganze Zahl. Die Meldung nennt das Feld abweichend employeeId – mitgeschickt werden muss servicerId. |
|
slot index out of range |
Der Termin hat keinen Slot an dieser Position. Gezählt wird ab 0, ein Termin mit drei Slots kennt also 0, 1 und 2. | |
404 |
appointment not found |
Zu dieser internalid gibt es keinen Termin, oder der Termin gehört zu einem anderen Standort als der verwendete API-Zugang. |
servicer not found |
Zu dieser servicerId gibt es weder einen Mitarbeiter noch eine Ressource, oder sie gehören zu einem anderen Standort als der verwendete API-Zugang. |
|
500 |
could not change servicer of slot |
Die Änderung selbst ist fehlgeschlagen. Die Einzelheiten stehen im Serverprotokoll – melden Sie sich in diesem Fall beim Support. |
Antwort
Bei Erfolg antwortet die Schnittstelle mit 200 OK und dem Ergebnis der Änderung als JSON-Objekt.
Jeder Aufruf wird beim API-Zugang mitgezählt: erfolgreiche als Nutzung, fehlgeschlagene als Fehler. Weil an einer Schnittstelle niemand angemeldet ist, wird als Urheber der Änderung der Benutzer eingetragen, der den API-Zugang angelegt hat – unter diesem Namen erscheint die Änderung anschließend auch im Kalender.
Parameter
| Name | Übergabe |
|---|---|
token |
URL-Parameter Pflicht |
BeispielIHR_TOKEN
API-Schlüssel des Zugangs. Er entscheidet zugleich, welcher Standort erreichbar ist: Termin und Mitarbeiter müssen zu diesem Standort gehören.
|
|
internalid |
URL-Parameter Pflicht |
Beispiel51078854
Nummer des Termins, der geändert werden soll – ganze Zahl, wie sie die Terminabfragen der Geschützten API im Feld "internalid" liefern.
|
|
slot |
URL-Parameter Pflicht |
Beispiel0
Position des Slots innerhalb des Termins, gezählt ab 0 – entspricht dem Feld "appointment_slots_idx" der Terminabfrage.
|
|
servicerId |
URL-Parameter Pflicht |
Beispiel136
ID des Mitarbeiters oder der Ressource, der oder die diesen Slot künftig übernimmt.
|
|