Termin-API
Die Termin -API bietet Endpunkte für die Interaktion mit der Terminbuchungsanwendung. Verwenden Sie diese API, um Termine zu buchen und neu zu planen, verfügbare Terminfenster zu überprüfen und Konfigurationsdetails für die Terminbuchung abzurufen.
Vor der Verwendung dieser API müssen die Terminbuchungskonfiguration 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 Appointment -API erfordert das Plugin „Appointment Booking“ (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 zukünftigen buchbaren Daten, die in der Konfiguration des Terminbuchungsservice konfiguriert sind.
Weitere Informationen zur Konfiguration von Vorlaufzeiten und maximal in der Zukunft buchbaren Daten finden Sie unter Create or modify an appointment booking application configuration.
Sie müssen entweder über die Rolle snc_internal oder snc_external verfügen, um auf diesen Endpunkt zugreifen zu können.
URL-Format
Versionierte URL: /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 Terminbuchungsservice-Konfiguration konfiguriert wurde. 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 Tabelle „Standort“ [cmn_location]. Datentyp: Zeichenfolge |
| opened_for | Erforderlich. Sys_id des Benutzers, für den der Termin gebucht wird. Befindet sich in der Benutzertabelle [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 Terminbuchungsservice definiert ist.
Darüber hinaus werden die Übersetzungen sowie die Datums- und Uhrzeiteinstellungen des Benutzers zurückgegeben, die zum Rendern der Zeitfenster in den Terminbuchungs-Widgets erforderlich sind.
Sie müssen entweder über die Rolle snc_internal oder snc_external verfügen, um auf diesen Endpunkt zugreifen zu können.
URL-Format
Versionierte URL: /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 die Servicekonfiguration für die zugeordnete Katalog-ID aktiv ist. Mögliche Werte:
Datentyp: Boolesch |
| result.active_string | Textdarstellung des Status der Servicekonfiguration 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 „Angenommen“ übergeht. 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 Konfigurationssetups 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 zugehörige 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, in dem ein Benutzer den Termin absagen kann. Beispiel: Wenn Sie 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 absagen. Format: Dieser Wert entspricht der Differenz zwischen Datum und Uhrzeit zu „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 zur 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, für die ein Termin gebucht werden kann. Datentyp: Zeichenfolge |
| result.service_config.lead_time | Mindestzeitraum vor Beginn eines Termins, in dem ein Benutzer den Termin buchen kann. Beispiel: Wenn Sie 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 entspricht der Differenz zwischen Datum und Uhrzeit zu „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.mandatory | 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 | Zeitdauer, die für die Arbeit am Termin benötigt wird. Die Arbeitszeit 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 | Datumsformat für Tag. Datentyp: Zeichenfolge Format: Numerisch (Werte oder 1–31) |
| result.userDateFormatOptions.month | Monatsdatumsformat. Datentyp: Zeichenfolge Format: Kurz (Werte am „Jan“, „Februar“, „März“ usw.) |
| result.userDateFormatOptions.week | Wochendatumsformat. Datentyp: Zeichenfolge Format: Numerisch (Werte 1 bis 5) |
| result.userDateFormatOptions.weekday | Wochentag-Datumsformat. Datentyp: Zeichenfolge Format: Kurz (Werte von Mo, 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 Benutzeroberfläche ausgeführt wird. Mögliche Werte:
Datentyp: Boolesch |
| result.userTimeFormat | Beschreibt das Zeitformat des Benutzers. Der Benutzer ist die Person, die die Endpunktanforderung sendet. Wenn sie über die Plattform erfolgt, handelt es sich um einen Service Desk-Mitarbeiter. Wenn sie über das Portal erfolgt, handelt es sich um einen Kunden. Datentyp: Objekt |
| result.userTimeFormat.type | Typ des Zeitformats. 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 |
| result.userTimeFormatOptions.hour | Format für Stunden. Format: numerisch (Werte 1–12) |
| result.userTimeFormatOptions.hourCycle | Format für Stundenzyklus. Einzig möglicher Wert ist h23. |
| result.userTimeFormatOptions.minute | Format für Minuten. Format: numerisch (Werte von 1 bis 60) |
| result.view_scale | 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"
}
}
}
Appointment – 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 übergebenen Aufgaben-ID- oder Katalogelementdaten werden anhand der für eine Servicekonfiguration definierten Regeln ausgewertet. Die sys_id für die erste Regel, für die diese Bedingungen erfüllt sind, wird zurückgegeben. Sie müssen diese Regel-sys_id dann an nachfolgende Verfügbarkeitsanforderungen übergeben, um die richtigen Zeitfenster abzurufen, die in der Regel definiert sind.
Sie müssen entweder über die Rolle snc_internal oder snc_external verfügen, um auf diesen Endpunkt zugreifen zu können.
URL-Format
Versionierte URL: /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 |
| andereEingaben | Erforderlich, wenn der Parameter taskId nicht angegeben ist. Name-Wert-Paare von Katalogelementvariablen, die mit den für eine Servicekonfiguration definierten Regeln verglichen werden sollen. 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.dedizierteKapazität | 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 entspricht. Datentyp: Zeichenfolge |
cURL-Anforderung
Das folgende Codebeispiel zeigt, wie der Parameter taskId verwendet wird, um die Regelvergleichsanforderung zu erstellen.
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 die Regelvergleichsanforderung zu erstellen.
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
Versionierte URL: /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 |
|---|---|
| tatsächliches Enddatum | Erforderlich. Enddatum und -uhrzeit für das Terminfenster in der Zeitzone des Termins. Datumstyp: Zeichenfolge Format: JJJJ-MM-tt HH:mm:ss |
| tatsächlichesStartdatum | 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 wurde. Der Datensatzersteller wird im Feld Katalogelement in der zugehörigen Tabelle „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 Tabelle „Standort“ [cmn_location]. Datumstyp: Zeichenfolge |
| geöffnetFür | Erforderlich. Sys_id des Benutzers, für den der Termin gebucht wird. Befindet sich in der Benutzertabelle [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 unter 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: Land-/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 | Nachricht, 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 eine neue Terminbuchung für eine Aufgabe in der Tabelle „Arbeitsauftrag“ [wm_order] erstellt wird.
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 deren 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 das erste verfügbare Slot zu finden, indem Sie den Parameter [ get_next_available_slot oder den Parameter get_next_available_day_data im Anforderungstext als trueübergeben.
Sie müssen entweder über die Rolle snc_internal oder snc_external verfügen, um auf diesen Endpunkt zugreifen zu können.
URL-Format
Versionierte URL: /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 wurde. Der Datensatzersteller wird im Feld Katalogelement in der zugehörigen Tabelle „Konfiguration des Terminbuchungsservice – Konfiguration des Terminbuchungsservice“ [sn_apptmnt_booking_service_config] definiert. Datumstyp: Zeichenfolge |
| end_date | Erforderlich. Enddatum und -uhrzeit, für die Termine abgerufen werden sollen. Datumstyp: Zeichenfolge Format: UTC-Zeitzone und im internen Datums- und Zeitformat 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. Datumstyp: 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 Tabelle „Standort“ [cmn_location]. Datumstyp: Zeichenfolge |
| opened_for | Erforderlich. Sys_id des Benutzers, für den der Termin gebucht wird. Befindet sich in der Benutzertabelle [sys_user]. Datumstyp: Zeichenfolge |
| andereEingaben | Name-Wert-Paare von anderen Werten, 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 für Ihre Implementierung erforderlichen Werte übergeben. Beispiel: Datentyp: Objekt |
| service_config_rule | Sys_id der Servicekonfigurationsregel, die zum Berechnen der Zeitfenster für Termine und der Verfügbarkeit verwendet werden soll. Befindet sich in der Tabelle „Servicekonfigurationsregel“ [sn_apptmnt_booking_config_rule]. Datumstyp: Zeichenfolge |
| start_date | Erforderlich. Startdatum und -uhrzeit, für die Termine abgerufen werden sollen. Datumstyp: Zeichenfolge Format: UTC-Zeitzone und im internen Datums- und Zeitformat JJJJ-MM-TT HH:mm:ss |
| task_table | Erforderlich. Name der Tabelle, die den Aufgabendatensatz enthält, für den der Termin gebucht wird. Datumstyp: Zeichenfolge |
| use_read_replica | Kennzeichnung, die angibt, ob das Lesereplikat der Datenbank beim Abrufen der Terminfenster und ihrer Verfügbarkeit verwendet werden soll. Gültige Werte:
Standardwert: false |
| Ansicht | Erforderlich. Ursprungspunkt der Anforderung. Gültige Werte: (Groß-/Kleinschreibung beachten)
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. |
| 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 |
| result.availability.available | 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 | Zeigen Sie das Enddatum und die Endzeit des zugehörigen Termins an. Die Zeitzone basiert auf dem Wert im Parameter time_zone_display_value. Datentyp: Zeichenfolge Format: Datums-/Uhrzeitformat des anfordernden Benutzers. |
| result.availability.end_dateUTC | Enddatum und -uhrzeit des zugeordneten Termins in UTC-Zeit. Datentyp: Zeichenfolge Format: JJJJ-MM-TT hh:mm:ss |
| result.availability.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.availability.start_date_display | Zeigen Sie das Startdatum und die Startzeit des zugehörigen Termins an. Die Zeitzone basiert auf dem Wert im Parameter time_zone_display_value. Datentyp: Zeichenfolge Format: Datums-/Uhrzeitformat des anfordernden Benutzers. |
| 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 Rückgabe des Grenzwerts weitere Terminfenster abzurufen sind. Mögliche Werte:
Datentyp: Boolesch |
| result.next_available_slot | Wenn der Parameter get_next_available_slot als „true“ übergeben wurde, Details zum ersten verfügbaren Slot, 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 | Zeigen Sie das Enddatum und die Endzeit des zugehörigen 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 | Zeigen Sie das Startdatum und die Startzeit des zugehörigen 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 |
| result.time_zone | 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
}