Termin-API
Die Termin -API bietet Endpunkte für die Interaktion mit der Terminbuchungsanwendung. Verwenden Sie diese API, um Termine zu buchen und zu verschieben, verfügbare Terminfenster zu überprüfen und Konfigurationsdetails für die Terminbuchung abzurufen.
Vor der Verwendung dieser API müssen die Konfiguration für Terminbuchungen und die Servicekonfiguration eingerichtet werden. Darüber hinaus muss bereits eine Aufgabe vorhanden sein, für die der Termin gebucht wird. Weitere Informationen finden Sie unter Configuring Appointment Booking.
Die Termin -API erfordert das Plugin „Terminbuchung“ (com.snc.appointment_booking) und wird im Namespace sn_apptmnt_booking bereitgestellt. Für den Zugriff auf diese API benötigen Sie die Rolle snc_internal.
Termin: GET /sn_apptmnt_booking/appointment/calendar
Gibt den Zeitbereich zurück, für den Sie Termine buchen können. Die zurückgegebenen Ergebnisse berücksichtigen die Vorlaufzeit und die maximalen buchbaren Daten in der Zukunft, die in der Konfiguration des Terminbuchungsservice konfiguriert sind.
Weitere Informationen zur Konfiguration von Vorlaufzeit und maximalen zukünftigen buchbaren Daten finden Sie unter Create or modify an appointment booking application configuration.
Um auf diesen Endpunkt zuzugreifen, müssen Sie entweder über die Rolle „snc_internal“ oder „snc_external“ verfügen.
URL-Format
URL mit Versionsnummer: /api/sn_apptmnt_booking/{api_version}/appointment/calendar
Standard-URL: /api/sn_apptmnt_booking/appointment/calendar
Unterstützte Anforderungsparameter
| Name | Beschreibung |
|---|---|
| api_version | Optional. Version des Endpunkts, auf den zugegriffen werden soll. Zum Beispiel v1 oder v2. Geben Sie diesen Wert nur an, um eine andere Endpunktversion als die neueste zu verwenden. Datentyp: Zeichenfolge |
| Name | Beschreibung |
|---|---|
| catalog_id | Erforderlich. Sys_id des Datensatzerstellers, der mit einer Konfiguration für einen Terminbuchungsservice konfiguriert ist. Befindet sich in der Tabelle „Datensatzersteller“ [sc_cat_item_producer]. Datentyp: Zeichenfolge |
| location | Erforderlich. Sys_id des Standorts (cmn_location) des Termins. Befindet sich in der Standorttabelle [cmn_location]. Datentyp: Zeichenfolge |
| opened_for | Erforderlich. Sys_id des Anwenders, für den der Termin gebucht wird. Befindet sich in der Tabelle „Benutzer“ [sys_user]. Datentyp: Zeichenfolge |
| Name | Beschreibung |
|---|---|
| Keine |
Kopfzeilen
Die folgenden Anforderungs- und Antwortkopfzeilen gelten nur für diese HTTP-Aktion oder für diese Aktion auf eine bestimmte Weise. Eine Liste der allgemeinen Header, die in der REST API verwendet werden, finden Sie unter Unterstützte REST API-Header.
| Kopfzeile | Beschreibung |
|---|---|
| Akzeptieren | Datenformat des Antworttexts. Unterstützt nur application/json. |
| Kopfzeile | Beschreibung |
|---|---|
| Keine |
Statuscodes
Die folgenden Statuscodes gelten für diese HTTP-Aktion. Eine Liste der möglichen Statuscodes, die in der REST API verwendet werden, finden Sie unter HTTP-Antwortcodesder REST-API.
| Statuscode | Beschreibung |
|---|---|
| 200 | Erfolgreich. Die Anforderung wurde erfolgreich verarbeitet. |
| 400 | Fehlerhafte Anforderung. Ein fehlerhafter Anforderungstyp oder eine falsch formatierte Anforderung wurde erkannt. |
| 500 | Interner Serverfehler. Beim Verarbeiten der Anforderung ist ein unerwarteter Fehler aufgetreten. Der Antworttext enthält Informationen zum Fehler. |
Parameter des Antwort-Haupttexts
| Name | Beschreibung |
|---|---|
| Ergebnis | Informationen zu den Ergebnissen der Endpunktanforderung. Datentyp: Objekt |
| result.range_end | Ende des Bereichs, in dem die Termine gebucht werden können.
Datentyp: Zeichenfolge Format: Zeitzone des Termins im internen Datums-/Uhrzeitformat. |
| result.range_start | Beginn des Bereichs, in dem die Termine gebucht werden können.
Datentyp: Zeichenfolge Format: Zeitzone des Termins im internen Datums-/Uhrzeitformat. |
cURL-Anforderung
Das folgende Codebeispiel zeigt, wie dieser Endpunkt aufgerufen wird.
curl "http://instance.servicenow.com/api/sn_apptmnt_booking/v1/appointment/calendar?catalog_id=e4c1116b3b810300ce8a4d72f3efc40f&location=32e8499cdb2d2200d75270f5bf9619d6&opened_for=6816f79cc0a8016401c5a33be04be441" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'
Ergebnis:
{
"result": {
"range_start": "2023-02-08 03:52:27",
"range_end": "2023-02-21 23:52:27"
}
}
Termin: GET /sn_apptmnt_booking/appointment/configuration
Gibt die Konfiguration zurück, die in einer angegebenen Konfiguration für einen Terminbuchungsservice definiert ist.
Darüber hinaus werden die Übersetzungen sowie die Einstellungen für Datum und Uhrzeit zurückgegeben, die zum Rendern der Zeitfenster in den Terminbuchungs-Widgets erforderlich sind.
Um auf diesen Endpunkt zuzugreifen, müssen Sie entweder über die Rolle „snc_internal“ oder „snc_external“ verfügen.
URL-Format
URL mit Versionsnummer: /api/sn_apptmnt_booking/{api_version}/appointment/configuration
Standard-URL: /api/sn_apptmnt_booking/appointment/configuration
Unterstützte Anforderungsparameter
| Name | Beschreibung |
|---|---|
| api_version | Optional. Version des Endpunkts, auf den zugegriffen werden soll. Zum Beispiel v1 oder v2. Geben Sie diesen Wert nur an, um eine andere Endpunktversion als die neueste zu verwenden. Datentyp: Zeichenfolge |
| Name | Beschreibung |
|---|---|
| catalog_id | Erforderlich. Sys_id des Datensatzerstellers, der mit der Konfiguration des Terminbuchungsservice konfiguriert wurde. Befindet sich in der Tabelle „Datensatzersteller“ [sc_cat_item_producer]. Datentyp: Zeichenfolge |
| Name | Beschreibung |
|---|---|
| Keine |
Kopfzeilen
Die folgenden Anforderungs- und Antwortkopfzeilen gelten nur für diese HTTP-Aktion oder für diese Aktion auf eine bestimmte Weise. Eine Liste der allgemeinen Header, die in der REST API verwendet werden, finden Sie unter Unterstützte REST API-Header.
| Kopfzeile | Beschreibung |
|---|---|
| Akzeptieren | Datenformat des Antworttexts. Unterstützt nur application/json. |
| Kopfzeile | Beschreibung |
|---|---|
| Keine |
Statuscodes
Die folgenden Statuscodes gelten für diese HTTP-Aktion. Eine Liste der möglichen Statuscodes, die in der REST API verwendet werden, finden Sie unter HTTP-Antwortcodesder REST-API.
| Statuscode | Beschreibung |
|---|---|
| 200 | Erfolgreich. Die Anforderung wurde erfolgreich verarbeitet. |
| 400 | Fehlerhafte Anforderung. Ein fehlerhafter Anforderungstyp oder eine falsch formatierte Anforderung wurde erkannt. |
| 500 | Interner Serverfehler. Beim Verarbeiten der Anforderung ist ein unerwarteter Fehler aufgetreten. Der Antworttext enthält Informationen zum Fehler. |
Parameter des Antwort-Haupttexts
| Name | Beschreibung |
|---|---|
| Ergebnis | Ergebnisse der Endpunktanforderung. Datentyp: Objekt |
| result.active | Kennzeichnung, die angibt, ob das Servicekonfigurations-Setup für die zugeordnete Katalog-ID aktiv ist. Mögliche Werte:
Datentyp: Boolesch |
| result.active_string | Textdarstellung des Status des Servicekonfigurations-Setups für die zugehörige Katalog-ID. Datentyp: Zeichenfolge |
| result.advanced_calendar_view_portal | Kennzeichnung, die angibt, ob die erweiterte Kalenderansicht im Portal oder die Basisansicht angezeigt wird. Weitere Informationen zur erweiterten Kalenderansicht finden Sie unter Create or modify an appointment booking application configuration. Mögliche Werte:
Datentyp: Boolesch |
| result.auto_acceptance | Kennzeichnung, die angibt, ob der Termin automatisch in den Status „Akzeptiert“ versetzt wird. Mögliche Werte:
Datentyp: Boolesch |
| result.locale_language | Spracheinstellung des Anwenders. Datentyp: Zeichenfolge Format: ISO 639.1-Sprachcode |
| result.service_config | Details zur Servicekonfiguration. Datentyp: Objekt |
| result.service_config.active | Kennzeichnung, die den aktiven Status der Konfiguration des Terminbuchungsservice angibt. Mögliche Werte:
Datentyp: Boolesch |
| result.service_config.active_string | Textdarstellung des Status der Konfiguration des Terminbuchungsservice. Datentyp: Zeichenfolge |
| result.service_config.appointment_booking_config | Sys_id des Setups der Konfiguration des Terminbuchungsservice für die zugehörige Katalog-ID. Befindet sich in der Tabelle „Konfigurationen für Terminbuchungsservice“ [sn_apptmnt_booking_service_config]. Datentyp: Zeichenfolge |
| result.service_config.appointment_duration | Dauer des Termins Datentyp: Zeichenfolge Einheit: Minuten |
| result.service_config.appointments_per_bookable_slot | Anzahl der Termine, die für das zugeordnete Zeitfenster gebucht werden können. Datentyp: Zeichenfolge |
| result.service_config.bookable_days | Kommagetrennte Werte, die die Tage darstellen, an denen Termine gebucht werden können. Tage werden als Ganzzahlen dargestellt, wobei Montag = 1 und Sonntag = 7 ist. Datentyp: Zeichenfolge |
| result.service_config.cancel_by_time | Mindestzeitraum vor Beginn eines Termins, über den ein Anwender den Termin absagen kann Wenn Sie beispielsweise einen Termin für 13:00 Uhr gebucht haben und eine Stornierungsfrist von 2 Stunden vorliegt, müssen Sie den Termin bis spätestens 10:59 Uhr stornieren. Format: Dieser Wert ist die Datums- und Uhrzeitdifferenz von „1970-01-01 00:00:00“. Wenn der zurückgegebene Wert also „1970-01-01 04:00:00“ lautet, bedeutet dies, dass der Raum vier Stunden vor Beginn der Besprechung storniert werden muss. Datentyp: Zeichenfolge |
| result.service_config.default_timezone | Zeitzonenkonfiguration, in der Termine gebucht werden. Mögliche Werte:
Datentyp: Zeichenfolge |
| result.service_config.enable_advanced_config | Kennzeichnung, die angibt, ob Terminbuchungskonfigurationen und Terminbuchungsregeln bei der Buchung von Terminen berücksichtigt werden. Weitere Informationen finden Sie unter Create appointment booking advanced configuration. Mögliche Werte:
Datentyp: Boolesch |
| result.service_config.field_mapping | Details zu den Katalogvariablen, die den Standort- und Kontaktwerten zugeordnet sind, die für die Buchung des Termins verwendet werden. Datentyp: Objekt |
| result.service_config.field_mapping.contact | Name der Katalogvariablen, die den Kontaktwert enthält. Datentyp: Zeichenfolge |
| result.service_config.field_mapping.contactRPVariable | Details zu den Variablendaten des Standortkatalogs. Datentyp: Objekt |
| result.service_config.field_mapping.contactRPVariable.displayName | Anzeigename der Kontaktkatalogvariablen. Datentyp: Zeichenfolge |
| result.service_config.field_mapping.contactRPVariable.label | Bezeichnung der Kontaktkatalogvariablen. Datentyp: Zeichenfolge |
| result.service_config.field_mapping.contactRPVariable.name | Name der Kontaktkatalogvariablen. Datentyp: Zeichenfolge |
| result.service_config.field_mapping.location | Name der Katalogvariablen, die den Standortwert enthält. Datentyp: Zeichenfolge |
| result.service_config.field_mapping.locationRPVariable | Details zu den Variablendaten des Standortkatalogs. Datentyp: Objekt |
| result.service_config.field_mapping.locationRPVariable.displayName | Anzeigename der Standortkatalogvariablen. Datentyp: Zeichenfolge |
| result.service_config.field_mapping.locationRPVariable.label | Bezeichnung der Standortkatalogvariablen. Datentyp: Zeichenfolge |
| result.service_config.field_mapping.locationRPVariable.name | Name der Standortkatalogvariablen. Datentyp: Zeichenfolge |
| result.service_config. future_bookable_max_days | Maximale Anzahl von Tagen in der Zukunft, die ein Termin gebucht werden kann. Datentyp: Zeichenfolge |
| result.service_config.lead_time | Minimale Zeit vor Beginn eines Termins, die ein Anwender den Termin buchen kann. Wenn Sie beispielsweise einen Termin um 13:00 Uhr buchen möchten und die Vorlaufzeit zwei Stunden beträgt, müssen Sie den Termin bis spätestens 10:59 Uhr buchen. Format: Dieser Wert ist die Datums- und Uhrzeitdifferenz von „1970-01-01 00:00:00“. Wenn der zurückgegebene Wert also „1970-01-01 04:00:00“ lautet, bedeutet dies, dass der Raum vier Stunden vor Beginn der Besprechung gebucht werden muss. Datentyp: Zeichenfolge |
| result.service_config.obligatorisch | Indikator, der angibt, ob der Termin obligatorisch ist. Mögliche Werte:
Datentyp: Zeichenfolge |
| result.service_config.use_slot_end_time_as | Indikator, der angibt, wann ein Service Desk-Mitarbeiter ankommt oder die für den zugehörigen Termin geplante Arbeit abschließt. Mögliche Werte:
Datentyp: Zeichenfolge |
| result.service_config.work_duration | Zeit, die für die Bearbeitung des Termins benötigt wird. Die Arbeitsdauer wird in der Konfiguration des Terminbuchungsservice konfiguriert. Weitere Informationen finden Sie unter Create or modify an appointment booking service configuration. Datentyp: Zeichenfolge Einheit: Minuten |
| result.task_table | Name der Tabelle, für die der Termin gebucht werden kann. Wird in der Konfiguration des Terminbuchungsservice konfiguriert. Datentyp: Zeichenfolge |
| result.translations | Name-Wert-Paare von Textübersetzungen, die vom Terminbuchungs-Widget verwendet werden. Enthält übersetzte Werte für Aktionen, Nachrichten, Tage und Monate. Datentyp: Objekt |
| result.userDateFormatOptions | Beschreibt die Datumsformatoptionen, die zum Rendern von JS-Datumsobjekten erforderlich sind. Diese Werte werden in Terminbuchungskonstanten festgelegt, die nicht geändert werden können. Datentyp: Objekt |
| result.userDateFormatOptions.day | Format für Tag/Datum. Datentyp: Zeichenfolge Format: Numerisch (Werte oder 1–31) |
| Ergebnis.AnwenderDatumFormatOptionen.Monat | Monatsdatumsformat. Datentyp: Zeichenfolge Format: Kurz (Werte: Januar, Februar, März usw.) |
| Ergebnis.AnwenderDatumFormatOptionen.Woche | Wochendatumsformat. Datentyp: Zeichenfolge Format: Numerisch (Werte von 1–5) |
| Ergebnis.AnwenderDatumFormatOptionen.Wochentag | Datumsformat für Wochentage. Datentyp: Zeichenfolge Format: Kurz (Werte: Mon, Di, Mi usw.) |
| result.useRR | Wert der Eigenschaft sn_apptmnt_booking.use_read_replica_from_ui. Dieser Wert definiert, ob die Lesereplikatdatenbank zum Abrufen von Terminfenstern verwendet werden soll, wenn die Abfrage über die Anwenderoberfläche ausgeführt wird. Mögliche Werte:
Datentyp: Boolesch |
| result.userTimeFormat | Beschreibt das Zeitformat des Anwenders. Der Benutzer ist die Person, die die Endpunktanforderung stellt. Wenn dies über die Plattform erfolgt, handelt es sich um einen Agent. Wenn dies über das Portal erfolgt, ist dies ein Kunde. Datentyp: Objekt |
| result.userTimeFormat.type | Zeitformattyp. Mögliche Werte:
Datentyp: Zeichenfolge |
| result.userTimeFormat.value | Bevorzugtes Zeitformat, z. B. „HH:mm:ss“. Datentyp: Zeichenfolge |
| result.userTimeFormatOptions | Beschreibt die Zeitformatoptionen, die zum Rendern von JS-Zeitobjekten erforderlich sind. Diese Werte werden in den Terminbuchungskonstanten festgelegt, die nicht geändert werden können. Datentyp: Objekt |
| Ergebnis.AnwenderZeitFormatOptionen.Stunden | Formatieren Sie für Stunden. Format: numerisch (Werte 1–12) |
| result.userTimeFormatOptions.hourCycle | Format für Stundenzyklus. Der einzig mögliche Wert ist „h23“. |
| Ergebnis.AnwenderZeitFormatOptionen.Minute | Formatieren Sie für Minuten. Format: numerisch (Werte von 1–60) |
| result.view_scale | Die in der Servicekonfiguration konfigurierte Ansicht Mögliche Werte:
Datentyp: Zeichenfolge |
cURL-Anforderung
Das folgende Codebeispiel zeigt, wie dieser Endpunkt aufgerufen wird.
curl "http://instance.servicenow.com/api/sn_apptmnt_booking/v1/appointment/configuration?catalog_id=e4c1116b3b810300ce8a4d72f3efc40f" \
--request GET \
--header "Accept:application/json" \
--user ‘username':'password'
Antwort:
{
"result": {
"active": true,
"activeString": "true"
"view_scale": "day",
"auto_acceptance": true,
"task_table": "wm_order",
"advanced_calendar_view_portal": false,
"service_config": {
"appointment_booking_config": "deb1d2fd3b033200ce8a4d72f3efc4c2",
"future_bookable_max_days": "14",
"appointments_per_bookable_slot": "20",
"bookable_days": "1,2,3,4,5",
"active": true,
"activeString": "true",
"mandatory": "1",
"lead_time": "1970-01-01 04:00:00",
"cancel_by_time": "1970-01-01 04:00:00",
"appointment_duration": "120",
"default_timezone": "location",
"work_duration": "60",
"enable_advanced_config": true,
"field_mapping": {
"location": "location"
"opened_for": "contact",
"locationRPVariable": {
"name": "location",
"label": "Location",
"displayName": "location"
},
"contactRPVariable": {
"name": "contact",
"label": "Contact",
"displayName": "contact"
}
},
"use_slot_end_time_as": ""
},
"translations": {
"submit_btn_text": "Select",
"cancel_btn_text": "Cancel",
"calendar_prev_text": "Previous",
"select_appointment_calendar_text": "Select Appointment Calendar",
"calendar_next_text": "Next",
"previous_btn_text": "Previous day",
"next_btn_text": "Next day",
"date_input_placeholder_text": "Pick a date",
"show_calendar_btn_text": "Show Calendar",
"app_window_btn_text_start_time": "Start time",
"app_window_btn_text_end_time": "End time",
"appointment_window_aria_label_start_text": "Available appointment window ",
"no_appointment": "No appointments",
"time_zone": "Time zone",
"selected_window": "The window which has been selected is ",
"day_names": {
"1": "Monday",
"2": "Tuesday",
"3": "Wednesday",
"4": "Thursday",
"5": "Friday",
"6": "Saturday",
"7": "Sunday"
},
"days": [
"Sunday",
"Monday",
"Tuesday",
"Wednesday",
"Thursday",
"Friday",
"Saturday"
],
"daysShort": [
"Sun",
"Mon",
"Tue",
"Wed",
"Thu",
"Fri",
"Sat"
],
"daysMin": [
"Su",
"Mo",
"Tu",
"We",
"Th",
"Fr",
"Sa"
],
"months": [
"January",
"February",
"March",
"April",
"May",
"June",
"July",
"August",
"September",
"October",
"November",
"December"
],
"monthsShort": [
"Jan",
"Feb",
"Mar",
"Apr",
"May",
"Jun",
"Jul",
"Aug",
"Sep",
"Oct",
"Nov",
"Dec"
],
"today": "Today",
"clear": "Clear",
"language": "en",
"arrive_by_msg": "The agent will arrive within the selected slot."
},
"useRR": true,
"locale_language": "en",
"userTimeFormat": {
"value": "HH:mm:ss",
"type": "24hr"
},
"userDateFormatOptions": {
"weekday": "short",
"year": "numeric",
"month": "short",
"day": "numeric"
},
"userTimeFormatOptions": {
"hour": "numeric",
"minute": "numeric",
"hourCycle": "h23"
}
}
}
Termin: GET /sn_apptmnt_booking/appointment/execute_rule_conditions
Gibt die sys_id der Konfigurationsregel für den Terminbuchungsservice zurück, die einer angegebenen Aufgaben-sys_id oder einem Satz angegebener Katalogelementdaten entspricht.
Die übergebene Aufgaben-ID oder die Katalogelementdaten werden anhand der für eine Servicekonfiguration definierten Regeln ausgewertet. Die sys_id für die erste Regel, für die diese Bedingungen gelten, wird zurückgegeben. Anschließend müssen Sie diese Regel-sys_id an nachfolgende Verfügbarkeitsanfragen übergeben, um die richtigen, in der Regel definierten Zeitfenster abzurufen.
Um auf diesen Endpunkt zuzugreifen, müssen Sie entweder über die Rolle „snc_internal“ oder „snc_external“ verfügen.
URL-Format
URL mit Versionsnummer: /api/sn_apptmnt_booking/{api_version}/appointment/execute_rule_conditions
Standard-URL: /api/sn_apptmnt_booking/appointment/execute_rule_conditions
Unterstützte Anforderungsparameter
| Name | Beschreibung |
|---|---|
| api_version | Optional. Version des Endpunkts, auf den zugegriffen werden soll. Zum Beispiel v1 oder v2. Geben Sie diesen Wert nur an, um eine andere Endpunktversion als die neueste zu verwenden. Datentyp: Zeichenfolge |
| Name | Beschreibung |
|---|---|
| Keine |
| Name | Beschreibung |
|---|---|
| catalogId | Erforderlich. Sys_id des Datensatzerstellers, der mit der Konfiguration des Terminbuchungsservice konfiguriert wurde. Befindet sich in der Tabelle „Datensatzersteller“ [sc_cat_item_producer]. Datentyp: Zeichenfolge |
| SonstigeEingaben | Erforderlich, wenn der Parameter taskId nicht angegeben ist. Name-Wert-Paare von Katalogelementvariablen für den Vergleich mit den für eine Servicekonfiguration definierten Regeln. Beispiel: Datentyp: Objekt |
| Aufgaben-ID | Erforderlich, wenn der Parameter otherInputs nicht angegeben ist. Sys_id des Aufgabendatensatzes, für den der Termin gebucht wird. Befindet sich in der Aufgabentabelle, für die der Termin gebucht wird. catalogId entspricht einer bestimmten Terminbuchungskonfiguration, und jede Konfiguration verfügt über eine Aufgabentabelle, in der der Termin gebucht wird. Datentyp: Zeichenfolge |
Header
Die folgenden Anforderungs- und Antwortkopfzeilen gelten nur für diese HTTP-Aktion oder für diese Aktion auf eine bestimmte Weise. Eine Liste der allgemeinen Header, die in der REST API verwendet werden, finden Sie unter Unterstützte REST API-Header.
| Kopfzeile | Beschreibung |
|---|---|
| Akzeptieren | Datenformat des Antworttexts. Unterstützt nur application/json. |
| Content-Type | Datenformat des Anforderungstexts. Unterstützt nur application/json. |
| Kopfzeile | Beschreibung |
|---|---|
| Keine |
Statuscodes
Die folgenden Statuscodes gelten für diese HTTP-Aktion. Eine Liste der möglichen Statuscodes, die in der REST API verwendet werden, finden Sie unter HTTP-Antwortcodesder REST-API.
| Statuscode | Beschreibung |
|---|---|
| 200 | Erfolgreich. Die Anforderung wurde erfolgreich verarbeitet. |
| 400 | Fehlerhafte Anforderung. Ein fehlerhafter Anforderungstyp oder eine falsch formatierte Anforderung wurde erkannt. |
| 500 | Interner Serverfehler. Beim Verarbeiten der Anforderung ist ein unerwarteter Fehler aufgetreten. Der Antworttext enthält Informationen zum Fehler. |
Parameter des Antwort-Haupttexts
| Name | Beschreibung |
|---|---|
| Ergebnis | Beschreibung der vom Endpunkt zurückgegebenen Informationen. Datentyp: Objekt |
| result.dedicatedCapacity | Kennzeichnung, die angibt, ob die zugeordnete Regel über dedizierte Kapazität verfügt. Weitere Informationen zur dedizierten Kapazität finden Sie unter Create appointment booking service configuration rules. Mögliche Werte:
Datentyp: Boolesch |
| Ergebnis.ZukunftMaxBuchbareTage | Maximale Anzahl von Tagen in der Zukunft, für die ein Termin mit der Übereinstimmungsregel gebucht werden kann. Datentyp: Zeichenfolge |
| result.ruleId | Sys_id der Konfigurationsregel für den Terminbuchungsservice, die den in der Anforderung übergebenen Parametern taskId oder otherInputs entspricht. Befindet sich in der Tabelle „Servicekonfigurationsregel“ [sn_apptmnt_booking_config_rule]. Datentyp: Zeichenfolge |
| result.ruleName | Name der Regel, die den übergebenen Parametern entsprach. Datentyp: Zeichenfolge |
cURL-Anforderung
Das folgende Codebeispiel zeigt, wie der Parameter taskId verwendet wird, um den Regelvergleich anzufordern.
curl "http://instance.servicenow.com/api/sn_apptmnt_booking/v1/appointment/execute_rule_conditions" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
\"catalogId\": \"e4c1116b3b810300ce8a4d72f3efc40f\",
\"taskId\": \"ce1f397c43b861105e0dbcba6ab8f298\"}" \
--user 'username':'password'
Antwort:
{
"result": {
"ruleId": "f7d5d98f437c21105e0dbcba6ab8f2fc",
"ruleName": "Priority 1 rule",
"dedicatedCapacity": true,
"futureMaxBookableDays": "14"
}
}
cURL-Anforderung
Das folgende Codebeispiel zeigt, wie der Parameter otherInputs verwendet wird, um den Regelvergleich anzufordern.
curl "http://instance.servicenow.com/api/sn_apptmnt_booking/v1/appointment/execute_rule_conditions" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
\"catalogId\": \"e4c1116b3b810300ce8a4d72f3efc40f\",
\"otherInputs\": {
\"u_sn_point_of_sale_variable_set\": \"true\",
\"short_description\": \"Point-of-Sale Installation\",
\"contact\": \"6816f79cc0a8016401c5a33be04be441\",
\"description\": \"Install new point-of-sale system with cash tray\",
\"location\": \"32e8499cdb2d2200d75270f5bf9619d6\"
}
}" \
--user 'username':'password'
Antwort:
{
"result": {
"ruleId": " 1d1bb72b4334a1105e0dbcba6ab8f275",
"ruleName": "Lake View SC rule",
"dedicatedCapacity": false,
"futureMaxBookableDays": "21"
}
}
Termin: POST /sn_apptmnt_booking/appointment/appointment
Ermöglicht das Buchen und Verschieben von Terminen für eine Außendienst-Management -Aufgabe.
Weitere Informationen zu Außendienst-Management -Aufgaben finden Sie unter Configuring Appointment Booking.
URL-Format
URL mit Versionsnummer: /api/sn_apptmnt_booking/{api_version}/appointment/appointment
Standard-URL: /api/sn_apptmnt_booking/appointment/appointment
Unterstützte Anforderungsparameter
| Name | Beschreibung |
|---|---|
| api_version | Optional. Version des Endpunkts, auf den zugegriffen werden soll. Zum Beispiel v1 oder v2. Geben Sie diesen Wert nur an, um eine andere Endpunktversion als die neueste zu verwenden. Datentyp: Zeichenfolge |
| Name | Beschreibung |
|---|---|
| Keine |
| Name | Beschreibung |
|---|---|
| currentEndDate | Erforderlich. Enddatum und -uhrzeit für das Terminfenster in der Zeitzone des Termins. Datumstyp: Zeichenfolge Format: JJJJ-MM-TT HH:mm:ss |
| currentStartDate | Erforderlich. Startdatum und -uhrzeit für das Terminfenster in der Zeitzone des Termins. Datumstyp: Zeichenfolge Format: JJJJ-MM-TT HH:mm:ss |
| catalogId | Erforderlich. Sys_id des Datensatzerstellers, der für die Konfiguration des Terminbuchungsservice konfiguriert ist. Der Datensatzersteller ist im Feld Katalogelement in der zugehörigen Tabelle mit der Konfiguration des Terminbuchungsservice – Konfiguration des Terminbuchungsservice [sn_apptmnt_booking_service_config] definiert. Datumstyp: Zeichenfolge |
| endDateUTC | Erforderlich. Enddatum und -uhrzeit für das Terminfenster in UTC-Zeitzone Datumstyp: Zeichenfolge Format: JJJJ-MM-TT HH:mm:ss |
| location | Erforderlich. Sys_id des Standortdatensatzes, der sich auf den Termin bezieht. Befindet sich in der Standorttabelle [cmn_location]. Datumstyp: Zeichenfolge |
| openedFor | Erforderlich. Sys_id des Anwenders, für den der Termin gebucht wird. Befindet sich in der Tabelle „Benutzer“ [sys_user]. Datumstyp: Zeichenfolge |
| neu planen | Erforderlich. Kennzeichnung, die angibt, ob der Termin neu geplant wird. Gültige Werte:
Datentyp: Boolesch |
| service_cofig_rule | Wenn der Termin gemäß einer Regel gebucht wird, die sys_id der Servicekonfigurationsregel. Befindet sich in der Tabelle „Servicekonfigurationsregel“ [sn_apptmnt_booking_config_rule]. Datumstyp: Zeichenfolge |
| startDateUTC | Erforderlich. Startdatum und -uhrzeit für das Terminfenster in UTC-Zeitzone Datumstyp: Zeichenfolge Format: JJJJ-MM-TT HH:mm:ss in UTC-Zeitzone |
| Aufgaben-ID | Erforderlich. Sys_id des Aufgabendatensatzes, für den der Termin gebucht wird. Die Tabelle mit dieser sys_id ist im Parameter taskTable definiert. Datumstyp: Zeichenfolge |
| taskTable | Erforderlich. Name der Tabelle, die den Aufgabendatensatz enthält, für den der Termin gebucht wird. Datumstyp: Zeichenfolge |
| Feld | Erforderlich. Zeitzone, die beim Buchen oder Aktualisieren des angegebenen Terminfensters verwendet werden soll. Format: Länder-/Stadt- oder Gebietsformat, z. B. USA/Ost Datumstyp: Zeichenfolge |
Header
Die folgenden Anforderungs- und Antwortkopfzeilen gelten nur für diese HTTP-Aktion oder für diese Aktion auf eine bestimmte Weise. Eine Liste der allgemeinen Header, die in der REST API verwendet werden, finden Sie unter Unterstützte REST API-Header.
| Kopfzeile | Beschreibung |
|---|---|
| Akzeptieren | Datenformat des Antworttexts. Unterstützt nur application/json. |
| Content-Type | Datenformat des Anforderungstexts. Unterstützt nur application/json. |
| Kopfzeile | Beschreibung |
|---|---|
| Keine |
Statuscodes
Die folgenden Statuscodes gelten für diese HTTP-Aktion. Eine Liste der möglichen Statuscodes, die in der REST API verwendet werden, finden Sie unter HTTP-Antwortcodesder REST-API.
| Statuscode | Beschreibung |
|---|---|
| 200 | Erfolgreich. Die Anforderung wurde erfolgreich verarbeitet. |
| 500 | Interner Serverfehler. Beim Verarbeiten der Anforderung ist ein unerwarteter Fehler aufgetreten. Der Antworttext enthält Informationen zum Fehler. |
Parameter des Antwort-Haupttexts
| Name | Beschreibung |
|---|---|
| Ergebnis | Informationen zu den Ergebnissen der Endpunktanforderung. Datentyp: Objekt |
| result.data | Sys_id des Termindatensatzes, der erstellt oder neu geplant wurde. Datentyp: Zeichenfolge |
| result.message | Meldung, die erklärt, ob die Terminanforderung geplant wurde oder fehlgeschlagen ist. Fehlerantworten können beispielsweise Folgendes umfassen:
Datentyp: Zeichenfolge |
| result.reason | Zusätzliche Informationen zu den Ergebnissen der Terminanforderung. Datentyp: Zeichenfolge |
| Ergebnis.Erfolg | Kennzeichnung, die angibt, ob die Anforderung erfolgreich war. Mögliche Werte:
Datentyp: Boolesch |
cURL-Anforderung
Das folgende Beispiel zeigt, wie Sie eine neue Terminbuchung für eine Aufgabe in der Tabelle „Arbeitsauftrag“ [wm_order] erstellen.
curl "https://instance.servicenow.com/api/sn_apptmnt_booking/appointment/appointment" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
\"startDateUTC\": \"2023-02-01 20:00:00\",
\"endDateUTC\": \"2023-02-01 22:00:00\",
\"actualStartDate\": \"2023-02-01 15:00:00\",
\"actualEndDate\": \"2023-02-01 17:00:00\",
\"taskTable\": \"wm_order\",
\"location\": \"32e8499cdb2d2200d75270f5bf9619d6\",
\"catalogId\": \"e4c1116b3b810300ce8a4d72f3efc40f\",
\"openedFor\": \"ddce70866f9331003b3c498f5d3ee417\"
\"taskId\": \"ce1f397c43b861105e0dbcba6ab8f298\",
\"reschedule\": false,
\"service_configuration_rule\": \"\",
\"timezone\": \"US/Eastern\"
}" \
--user 'username':'password'
Antwort:
{
"result": {
"success": true,
"message": "Your appointment has been scheduled successfully.",
"reason": "Appointment created!",
"data": "7a5f393c43b861105e0dbcba6ab8f29f"
}
}
Termin: POST /sn_apptmnt_booking/appointment/availability
Gibt die Zeitfenster zurück, die in der Konfiguration des Terminbuchungsservice konfiguriert wurden, zusammen mit ihrer Verfügbarkeit.
Wenn erweiterte Konfigurationen für die Servicekonfiguration aktiviert sind, berücksichtigt der Endpunkt diese Konfigurationen und gibt die Daten gemäß den Regeln und der erweiterten Konfiguration zurück. Sie können diesen Endpunkt auch verwenden, um den ersten verfügbaren Slot zu finden, indem Sie den Parameter [ get_next_available_slot oder den Parameter get_next_available_day_data im Anforderungstext als trueübergeben.
Um auf diesen Endpunkt zuzugreifen, müssen Sie entweder über die Rolle „snc_internal“ oder „snc_external“ verfügen.
URL-Format
URL mit Versionsnummer: /api/sn_apptmnt_booking/{api_version}/appointment/availability
Standard-URL: /api/sn_apptmnt_booking/appointment/availability
Unterstützte Anforderungsparameter
| Name | Beschreibung |
|---|---|
| api_version | Optional. Version des Endpunkts, auf den zugegriffen werden soll. Zum Beispiel v1 oder v2. Geben Sie diesen Wert nur an, um eine andere Endpunktversion als die neueste zu verwenden. Datentyp: Zeichenfolge |
| Name | Beschreibung |
|---|---|
| Keine |
| Name | Beschreibung |
|---|---|
| catalog_id | Erforderlich. Sys_id des Datensatzerstellers, der für die Konfiguration des Terminbuchungsservice konfiguriert ist. Der Datensatzersteller ist im Feld Katalogelement in der zugehörigen Tabelle mit der Konfiguration des Terminbuchungsservice – Konfiguration des Terminbuchungsservice [sn_apptmnt_booking_service_config] definiert. Datentyp: Zeichenfolge |
| end_date | Erforderlich. Enddatum und -uhrzeit, für die Termine abgerufen werden sollen. Datentyp: Zeichenfolge Format: UTC-Zeitzone und im internen Datums-/Uhrzeitformat JJJJ-MM-TT HH:mm:ss |
| full_day | Erforderlich. Kennzeichnung, die angibt, ob alle Termine für den angegebenen Datumsbereich zurückgegeben werden sollen, unabhängig von den Zeitwerten im Start- und Enddatum. Mögliche Werte:
Datentyp: Boolesch |
| get_next_available_slot | Kennzeichnung, die angibt, ob das erste verfügbare Terminfenster mit der Antwort zurückgegeben werden soll, auch wenn es nicht Teil der übergebenen Parameter start_date und end_date ist. Mögliche Werte:
Datentyp: Boolesch Standardwert: false |
| limit | Maximale Anzahl der zurückzugebenden Termine. Datentyp: Zahl Standard: Wert, der in der zurückgegebenen Eigenschaft „sn_apptmnt_booking .max_appointments_“ angegeben ist, oder 1000, wenn die Eigenschaft leer ist. |
| location | Erforderlich. Sys_id des Standortdatensatzes, der dem Termin zugeordnet ist. Befindet sich in der Standorttabelle [cmn_location]. Datentyp: Zeichenfolge |
| opened_for | Erforderlich. Sys_id des Anwenders, für den der Termin gebucht wird. Befindet sich in der Tabelle „Benutzer“ [sys_user]. Datentyp: Zeichenfolge |
| SonstigeEingaben | Name-Wert-Paare beliebiger anderer Werte, die zur Berechnung der Verfügbarkeit in der geskripteten Methode erforderlich sind. Normalerweise sind diese Werte Katalogelementvariablen. Wenn Sie jedoch Ihre Buchungsanwendung anpassen, können Sie alle Werte übergeben, die für Ihre Implementierung erforderlich sind. Beispiel: Datentyp: Objekt |
| service_config_rule | Sys_id der Servicekonfigurationsregel, die zur Berechnung der Terminfenster und der Verfügbarkeit verwendet werden soll. Befindet sich in der Tabelle „Servicekonfigurationsregel“ [sn_apptmnt_booking_config_rule]. Datentyp: Zeichenfolge |
| start_date | Erforderlich. Startdatum und -uhrzeit, für die Termine abgerufen werden sollen. Datentyp: Zeichenfolge Format: UTC-Zeitzone und im internen Datums-/Uhrzeitformat JJJJ-MM-TT HH:mm:ss |
| task_table | Erforderlich. Name der Tabelle, die den Aufgabendatensatz enthält, für den der Termin gebucht wird. Datentyp: Zeichenfolge |
| use_read_replica | Kennzeichnung, die angibt, ob beim Abrufen der Terminfenster und ihrer Verfügbarkeit das Lesereplikat der Datenbank verwendet werden soll. Gültige Werte:
Standardwert: false |
| Ansicht | Erforderlich. Ursprungspunkt der Anforderung. Gültige Werte: (Groß-/Kleinschreibung beachten)
Datentyp: Zeichenfolge |
Header
Die folgenden Anforderungs- und Antwortkopfzeilen gelten nur für diese HTTP-Aktion oder für diese Aktion auf eine bestimmte Weise. Eine Liste der allgemeinen Header, die in der REST API verwendet werden, finden Sie unter Unterstützte REST API-Header.
| Kopfzeile | Beschreibung |
|---|---|
| Akzeptieren | Datenformat des Antworttexts. Unterstützt nur application/json. |
| Content-Type | Datenformat des Anforderungstexts. Unterstützt nur application/json. |
| Kopfzeile | Beschreibung |
|---|---|
| Keine |
Statuscodes
Die folgenden Statuscodes gelten für diese HTTP-Aktion. Eine Liste der möglichen Statuscodes, die in der REST API verwendet werden, finden Sie unter HTTP-Antwortcodesder REST-API.
| Statuscode | Beschreibung |
|---|---|
| 200 | Erfolgreich. Die Anforderung wurde erfolgreich verarbeitet. |
| 400 | Fehlerhafte Anforderung. Ein fehlerhafter Anforderungstyp oder eine falsch formatierte Anforderung wurde erkannt. |
| 500 | Interner Serverfehler. Beim Verarbeiten der Anforderung ist ein unerwarteter Fehler aufgetreten. Der Antworttext enthält Informationen zum Fehler. |
Parameter des Antwort-Haupttexts
| Name | Beschreibung |
|---|---|
| Ergebnis | Details zu den Terminen, die der Anforderung entsprechen. Datentyp: Objekt |
| result.availability | Liste der Terminfenster, die die angegebene Anforderung erfüllen Datentyp: Objekt |
| Ergebnis.Verfügbarkeit.verfügbar | Kennzeichnung, die angibt, ob das zugeordnete Zeitfenster verfügbar ist. Mögliche Werte:
Datentyp: Boolesch |
| result.availability.end_date | Enddatum und -uhrzeit des zugeordneten Termins. Die Zeitzone basiert auf dem Wert im Parameter time_zone. Datentyp: Zeichenfolge Format: JJJJ-MM-TT hh:mm:ss |
| result.availability.end_date_display | Zeigt Enddatum und -uhrzeit des zugeordneten Termins an. Die Zeitzone basiert auf dem Wert im Parameter time_zone_display_value. Datentyp: Zeichenfolge Format: Datums-/Uhrzeitformat des anfordernden Anwenders. |
| result.availability.end_dateUTC | Enddatum und -uhrzeit des zugeordneten Termins in UTC-Zeit. Datentyp: Zeichenfolge Format: JJJJ-MM-TT hh:mm:ss |
| Ergebnis.Verfügbarkeit.Startdatum | Startdatum und -uhrzeit des zugeordneten Termins. Die Zeitzone basiert auf dem Wert im Parameter time_zone. Datentyp: Zeichenfolge Format: JJJJ-MM-TT hh:mm:ss |
| result.availability.start_date_display | Zeigt Startdatum und -uhrzeit des zugeordneten Termins an. Die Zeitzone basiert auf dem Wert im Parameter time_zone_display_value. Datentyp: Zeichenfolge Format: Datums-/Uhrzeitformat des anfordernden Anwenders. |
| result.availability.start_dateUTC | Startdatum und -uhrzeit des zugeordneten Termins in UTC-Zeit. Datentyp: Zeichenfolge Format: JJJJ-MM-TT hh:mm:ss |
| result.has_more | Kennzeichnung, die angibt, ob nach der Rückgabe des Grenzwerts weitere Terminfenster zum Abrufen vorhanden sind. Mögliche Werte:
Datentyp: Boolesch |
| result.next_available_slot | Wenn der Parameter get_next_available_slot als „wahr“ übergeben wurde, erhalten Sie Details zum ersten verfügbaren Zeitfenster, unabhängig vom übergebenen Start- und Enddatum. Datentyp: Objekt |
| result.next_available_slot.available | Kennzeichnung, die angibt, ob das zugeordnete Zeitfenster verfügbar ist. Mögliche Werte:
Datentyp: Boolesch |
| result.next_available_slot.end_date | Enddatum und -uhrzeit des zugeordneten Termins. Die Zeitzone basiert auf dem Wert im Parameter time_zone. Datentyp: Zeichenfolge Format: JJJJ-MM-TT hh:mm:ss |
| result.next_available_slot.end_date_display | Zeigt Enddatum und -uhrzeit des zugeordneten Termins an. Die Zeitzone basiert auf dem Wert im Parameter time_zone_display_value. Datentyp: Zeichenfolge Format: |
| result.next_available_slot.end_dateUTC | Enddatum und -uhrzeit des zugeordneten Termins in UTC-Zeit. Datentyp: Zeichenfolge Format: JJJJ-MM-TT hh:mm:ss |
| result.next_available_slot.start_date | Startdatum und -uhrzeit des zugeordneten Termins. Die Zeitzone basiert auf dem Wert im Parameter time_zone. Datentyp: Zeichenfolge Format: JJJJ-MM-TT hh:mm:ss |
| result.next_available_slot.start_date_display | Zeigt Startdatum und -uhrzeit des zugeordneten Termins an. Die Zeitzone basiert auf dem Wert im Parameter time_zone_display_value. Datentyp: Zeichenfolge Format: |
| result.next_available_slot.start_dateUTC | Startdatum und -uhrzeit des zugeordneten Termins in UTC-Zeit. Datentyp: Zeichenfolge Format: JJJJ-MM-TT hh:mm:ss |
| result.no_appt_available | Kennzeichnung, die angibt, ob für das angegebene Datum und die angegebene Uhrzeit weitere Terminfenster verfügbar sind. Mögliche Werte:
Datentyp: Boolesch |
| Ergebnis.Erfolg | Kennzeichnung, die angibt, ob der Endpunktaufruf erfolgreich war. Mögliche Werte:
Datentyp: Boolesch |
| Ergebnis.Zeitzone | Zeitzone, in der die Terminfenster gerendert wurden. Basierend auf den Werten in der Konfiguration des Terminbuchungsservice. Datentyp: Zeichenfolge |
| result.time_zone_display_value | Zeitzone anzeigen, in der die Terminfenster gerendert wurden. Basierend auf den Werten in der Konfiguration des Terminbuchungsservice. Datentyp: Zeichenfolge |
cURL-Anforderung
Das folgende Codebeispiel zeigt, wie dieser Endpunkt aufgerufen wird.
curl "http://instance.servicenow.com/api/sn_apptmnt_booking/v1/appointment/availability" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
\"start_date\": \"2023-02-05 05:00:00\",
\"end_date\": \"2023-02-07 04:59:59\",
\"location\": \"32e8499cdb2d2200d75270f5bf9619d6\",
\"catalog_id\": \"e4c1116b3b810300ce8a4d72f3efc40f\",
\"opened_for\": \"6816f79cc0a8016401c5a33be04be441\",
\"full_day\": false,
\"task_table\": \"wm_order\",
\"view\": \"portal\",
\"get_next_available_slot\": true,
\"use_read_replica\": true,
\"service_config_rule\": \"f7d5d98f437c21105e0dbcba6ab8f2fc\"
}" \
--user 'username':'password
Antwort:
{
"result": {
"success": true,
"availability": [
{
"start_date": "2023-02-06 09:00:00",
"end_date": "2023-02-06 11:00:00",
"start_date_display": "09:00",
"end_date_display": "11:00",
"start_dateUTC": "2023-02-06 14:00:00",
"end_dateUTC": "2023-02-06 16:00:00",
"available": false
},
{
"start_date": "2023-02-06 13:00:00",
"end_date": "2023-02-06 15:00:00",
"start_date_display": "13:00",
"end_date_display": "15:00",
"start_dateUTC": "2023-02-06 18:00:00",
"end_dateUTC": "2023-02-06 20:00:00",
"available": false
},
{
"start_date": "2023-02-06 15:00:00",
"end_date": "2023-02-06 17:00:00",
"start_date_display": "15:00",
"end_date_display": "17:00",
"start_dateUTC": "2023-02-06 20:00:00",
"end_dateUTC": "2023-02-06 22:00:00",
"available": false
}
],
"has_more": false,
"no_appt_available": true,
"time_zone": "US/Eastern",
"time_zone_display_value": "US/Eastern",
"next_available_slot": {
"start_date": "2023-02-10 13:00:00",
"end_date": "2023-02-10 15:00:00",
"start_date_display": "13:00",
"end_date_display": "15:00",
"start_dateUTC": "2023-02-10 18:00:00",
"end_dateUTC": "2023-02-10 20:00:00",
"available": true
}