SyntheticsAsyncBulkCreate API
Die SyntheticsAsyncMassenErstellen Die API stellt Endpunkte zur Verwaltung der asynchronen Synthetic-Monitorerstellung bereit.
Verwenden Sie diese API, um bis zu 5.000 Überwachungen pro Anforderung zu erstellen. Verwenden Sie für kleinere Batch-Vorgänge, bei denen eine sofortige Validierung und Ergebnisse erforderlich sind, oder um Überwachungen mit Incidents zu verknüpfen SyntheticsMassenErstellen API, die die Erstellung von bis zu 50 Überwachungen pro Anforderung unterstützt.
Überwachungen können mit Daten im JSON- oder CSV-Format erstellt werden. Weitere Informationen zur Verwendung von JSON- oder CSV-Dateien mit Postman oder Terminal finden Sie unter Entwicklerleitfaden Für Synthetic-Überwachung.
Diese API erfordert Synthetic monitoring Anwendung (com.snc.uib.SOW_Synthetics), die auf verfügbar ist ServiceNow Store. Bevor Sie diese API aufrufen, mindestens eine MID-Server Der Standort muss für die Synthetic-Überwachung konfiguriert werden. Anweisungen dazu finden Sie unter Create synthetic monitoring locations. Darüber hinaus müssen Konfigurationselemente (CIs) für die überwachten Endpunkte in vorhanden sein Configuration Management Database (CMDB).
SyntheticsAsyncBulkCreate – GET /sn_SOW_Synthetics/synthetics_async_bulk_create/{Job_ID} AB
Überprüft den Fortschritt eines Massenüberwachungs-Erstellungsauftrags.
Um diesen Endpunkt aufzurufen, muss der Anwender über die Rolle x_snc_sow_synthetics.synthetics_viewer verfügen.
URL-Format
Versionierte URL: /api/sn_SOW_Synthetics/{api_Version}/synthetics_async_bulk_create/{Job_ID}
Standard-URL: /api/sn_SOW_Synthetics/synthetics_async_bulk_create/{Job_ID}
Unterstützte Anforderungsparameter
| Name | Beschreibung |
|---|---|
| api_version | Optional. Version des Endpunkts, auf den zugegriffen werden soll. Beispiel: v1 Oder v2 . Geben Sie diesen Wert nur an, um eine andere Endpunktversion als die neueste zu verwenden. Datentyp: Zeichenfolge |
| job_id | ID des Überwachungserstellungsauftrags. Tabelle: Synthetics-Massenauftrag [sn_sow_synthetics_bulk_job] Spalte: Auftrags-ID Datentyp: Zeichenfolge |
| Name | Beschreibung |
|---|---|
| Keine |
| Name | Beschreibung |
|---|---|
| Keine |
Header
Die folgenden Anforderungs- und Antwort-Header gelten nur für diese HTTP-Aktion oder werden auf diese Aktion in einer bestimmten Weise angewendet. Eine Liste der allgemeinen Header, die in der REST-API verwendet werden, finden Sie unter Unterstützte REST-API-Header .
| Header | Beschreibung |
|---|---|
| Akzeptieren | Datenformat des Antworttexts. Unterstützt nur application/json. |
| Autorisierung | HTTP-Standardauthentifizierung oder OAuth-Bearer-Token. Standardauthentifizierungsformat: OAuth-Format: |
| Header | 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 REST-API-HTTP-Antwortcodes .
| Statuscode | Beschreibung |
|---|---|
| 202 | Akzeptiert. Auftragsstatus erfolgreich abgerufen. |
| 401 | Nicht autorisiert Die Anwenderanmeldeinformationen sind falsch oder wurden nicht übergeben. |
| 403 | Unzulässig. Der Anwender muss über die Rolle x_snc_sow_synthetics.synthetics_viewer verfügen, um den Auftragsstatus zu überprüfen. |
| 404 | Nicht gefunden. Ein Auftrag mit der angegebenen ID wurde in der Tabelle „Synthetics-Massenauftrag [sn_sow_synthetics_bulk_job]“ nicht gefunden. |
| 500 | Interner Serverfehler. Beim Verarbeiten der Anforderung ist ein unerwarteter Fehler aufgetreten. Die Antwort enthält zusätzliche Informationen zum Fehler. |
Parameter des Antwort-Haupttexts (JSON)
| Name | Beschreibung |
|---|---|
| Fehler | Objekt, das zurückgegeben wird, wenn die API-Anforderung fehlgeschlagen ist. Datentyp: Objekt |
| Fehler.Code | Fehlercode. Mögliche Werte:
Datentyp: Zeichenfolge |
| error.details | Zusätzliche Details zum Fehler. Die in diesem Objekt enthaltenen Elemente variieren je nach Fehlertyp. Datentyp: Objekt |
| Fehler.Nachricht | Fehlermeldung. Datentyp: Zeichenfolge |
| Ergebnis | Objekt mit Informationen zum Status des Überwachungserstellungsauftrags. Datentyp: Objekt |
| Ergebnis.Auftrags_ID | ID des Überwachungserstellungsauftrags. Tabelle: Synthetics-Massenauftrag [sn_sow_synthetics_bulk_job] Spalte: Auftrags-ID Datentyp: Zeichenfolge |
| Ergebnis.Nachricht | Nachricht zum Status des Überwachungserstellungsauftrags. Datentyp: Zeichenfolge |
| Ergebnis.Status | Status des Überwachungserstellungsauftrags. Mögliche Werte:
Datentyp: Zeichenfolge |
| Ergebnis.Zusammenfassung | Aktuelle Zusammenfassungsdaten für den Überwachungserstellungsauftrag. Datentyp: Objekt |
| Ergebnis.Zusammenfassung.erstellt | Anzahl der erfolgreich erstellten Monitore. Datentyp: Zahl |
| Ergebnis.Zusammenfassung.fehlgeschlagen | Anzahl der Überwachungen, die nicht erstellt oder aktualisiert werden konnten. Datentyp: Zahl |
| result.summary.processed | Anzahl der vom Auftrag verarbeiteten Monitore. Datentyp: Zahl |
| Ergebnis.Zusammenfassung.erfolgreich | Anzahl der erfolgreich erstellten oder aktualisierten Monitore. Datentyp: Zahl |
| result.summary.total | Gesamtzahl der im Auftrag enthaltenen Überwachungen. Datentyp: Zahl |
| Ergebnis.Zusammenfassung.aktualisiert | Anzahl der erfolgreich aktualisierten Monitore. Datentyp: Zahl |
| Ergebnis.Fehler | Fehlerinformationen für fehlgeschlagene Überwachungen. Datentyp: Array |
| result.errors.check_number | Reihenfolge des Monitors in checksArray, das im Anforderungstext für bereitgestellt wird VERÖFFENTLICHEN SIE /sn_SOW_Synthetics/synthetics_async_bulk_create . Datentyp: Zahl |
| Ergebnis.Fehler.Fehlercode | Fehlercode. Mögliche Werte:
Datentyp: Zeichenfolge |
| Ergebnis.Fehler.Fehler_Nachricht | Fehlermeldung. Datentyp: Zeichenfolge |
| result.errors.name | Name des Monitors. Datentyp: Zeichenfolge |
cURL-Anforderung
Dieses Beispiel überprüft den Status eines Überwachungserstellungsauftrags.
curl "https://instance.service-now.com/api/sn_sow_synthetics/v1/synthetics_async_bulk_create/BCJ-1776889518281-0baf339f" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'
Antworttext: Auftragsverarbeitung.
{
"result": {
"job_id": "BCJ-1776889518281-0baf339f",
"status": "processing",
"message": "Processing in progress: 150/500 (30%)",
"summary": {
"total": 500,
"processed": 150,
"successful": 148,
"created": 145,
"updated": 3,
"failed": 2
}
}
}
Antworttext: Auftrag erfolgreich abgeschlossen.
{
"result": {
"job_id": "BCJ-1776889518281-0baf339f",
"status": "completed",
"message": "Job completed successfully. 497 monitors created, 3 updated, 0 failed out of 500 total.",
"summary": {
"total": 500,
"processed": 500,
"successful": 500,
"created": 497,
"updated": 3,
"failed": 0
}
}
}
Antworttext: Auftrag mit Fehlern abgeschlossen.
{
"result": {
"job_id": "BCJ-1776889518281-0baf339f",
"status": "completed",
"message": "Job completed. 98 monitors created, 0 updated, 2 failed out of 100 total.",
"summary": {
"total": 100,
"processed": 100,
"successful": 98,
"created": 98,
"updated": 0,
"failed": 2
},
"errors": [
{
"check_number": 23,
"name": "Invalid Monitor",
"error_code": "CREATE_FAILED",
"error_message": "cmdb_ci is required"
},
{
"check_number": 45,
"name": "Bad Location Monitor",
"error_code": "CREATE_FAILED",
"error_message": "Location not found: invalid_sys_id"
}
]
}
}
SyntheticsAsyncBulkCreate – POST /sn_SOW_Synthetics/synthetics_async_bulk_create
Erstellt mehrere Synthetic-Monitore in einem einzelnen asynchronen Vorgang.
Dieser Endpunkt unterstützt die Erstellung von bis zu 5.000 Überwachungen pro Anforderung mit einer maximalen Nutzlastgröße von 10 MB. Durch das Aufrufen dieses Endpunkts wird ein Auftrag übermittelt, um die Überwachungen asynchron in Batches von 500 zu erstellen. Überprüfen Sie den Auftragsstatus, indem Sie den Endpunkt aufrufen RUFEN SIE /sn_SOW_Synthetics/v1/synthetics_async_bulk_create/{Job_ID} AB .
Um diesen Endpunkt aufzurufen, muss der Anwender über die Rolle x_snc_sow_synthetics.synthetics_editor verfügen.
URL-Format
Versionierte URL: /api/sn_SOW_Synthetics/{api_Version}/synthetics_async_bulk_create
Standard-URL: /api/sn_SOW_Synthetics/synthetics_async_bulk_create
Unterstützte Anforderungsparameter
| Name | Beschreibung |
|---|---|
| api_version | Optional. Version des Endpunkts, auf den zugegriffen werden soll. 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 |
|---|---|
| Prüfungen | Erforderlich. Array von Endpunktkonfigurationsobjekten, für die Überwachungen erstellt werden sollen. Dieses Array kann maximal 5.000 Objekte pro API-Anforderung enthalten. Datentyp: Array |
| Checks.Alert_severity | Schweregrad der Warnungen, die für fehlgeschlagene Überwachungstests erstellt wurden. Verwenden Sie diesen Parameter nur, wenn checks.should_create_alertIst auf festgelegt Wahr .Gültige Werte:
Standard: 1 Datentyp: Zahl |
| Checks.Alert_Tags | Anwenderdefinierte Tags, die für Warnungen verwendet werden sollen, die für fehlgeschlagene Überwachungstests erstellt wurden. Verwenden Sie diesen Parameter nur, wenn checks.should_create_alertIst auf festgelegt Wahr .Die in diesem Objekt enthaltenen Elemente variieren je nach verwendeten Tags. Beispielsweise können Tags für die Umgebung oder das Team verwendet werden, wie unten gezeigt. Standard: Leeres Objekt Datentyp: Objekt |
| Prüfungen.Text | Anforderungstext für POST-, PUT- oder PATCH-Endpunkte. Muss je nach eine gültige JSON- oder XML-Zeichenfolge sein Inhaltstyp Header. Die maximale Größe beträgt 10 KB.Standard: Null Datentyp: Zeichenfolge |
| Checks.body_condition | Validierung des Antworttexts. Datentyp: Objekt |
| Checks.body_condition.Expression | Ausdruck, mit dem der Antworttext überprüft werden soll. Der Ausdruck kann ein beliebiger Zeichenfolgenwert sein, einschließlich Unterstützung für reguläre Ausdrücke, JSONPath und XPath. Standard: Null Datentyp: Zeichenfolge |
| Checks.body_condition.type | Typ der Validierung, mit der der Antworttext ausgewertet wird checks.body_condition.expression. Gültige Werte (Groß-/Kleinschreibung beachten):
Standard: Null Datentyp: Zeichenfolge |
| Checks.cmdb_ci | Erforderlich. SYS_ID von CMDB Endpunkt-Konfigurationselement (CI). Tabelle: HTTP-Endpunkt [cmdb_ci_endpoint_http] Datentyp: Zeichenfolge |
| Checks.Anmeldeinformationen | SYS_ID der Anmeldeinformationen für die Überwachung, die in die Endpunktanforderung aufgenommen werden soll. Tabelle: Standard: Null Datentyp: Zeichenfolge |
| checks.description | Beschreibung der Überwachung. Datentyp: Zeichenfolge |
| Prüfungen.aktiviert | Kennzeichnung, die angibt, ob die Ausführung der Überwachung unmittelbar nach der Erstellung beginnt. Gültige Werte:
Standardwert: wahr Datentyp: Boolesch |
| Prüfungen.Header | Array von HTTP-Headern für die Überwachung, die in die Endpunktanforderung aufgenommen werden sollen. Datentyp: Array Standard: Leeres Array (keine Header) |
| checks.headers.name | Name des HTTP-Headers, z. B. Autorisierung Oder Inhaltstyp .Datentyp: Zeichenfolge |
| Prüft.Header.Wert | Wert des HTTP-Headers, z. B. Bearer-Token Oder Anwendung/JSON .Datentyp: Zeichenfolge |
| checks.interval | Erforderlich. Häufigkeit der Überwachungsausführung in Minuten. ServiceNow Gehostete Standorte sind auf 6 Tests pro Minute pro Monitor beschränkt. Gültige Werte: 1-60 Beispiel: Ein Wert von Datentyp: Zahl |
| Prüfungen.Standorte | Erforderlich. Liste der sys_IDs von MID-Server Standorte, die für den Monitor verwendet werden sollen. Tabelle: Synthetic-Standort [sn_sow_synthetics_location] Datentyp: Zeichenfolge |
| Checks.max_latency_ms | Maximal zulässige Antwortzeit in Millisekunden. Die allgemeine Leitlinie beträgt je nach Endpunkttyp 500 bis 5000 ms. Die Überwachung überprüft beim Testen anhand dieses Werts, und der Test schlägt fehl, wenn die Antwortzeit diesen Wert überschreitet. Standard: Null (kein Latenzschwellenwert) Datentyp: Zahl |
| Checks.method | Erforderlich. Zu verwendende HTTP-Methode. Gültige Werte (ohne Berücksichtigung der Groß-/Kleinschreibung):
Datentyp: Zeichenfolge |
| checks.name | Erforderlich. Anzeigename für den Monitor. Maximale Länge: 100 Zeichen Datentyp: Zeichenfolge |
| checks.parent_service_sys_id | Erforderlich. SYS_ID des Business-Service, den dieser Endpunkt unterstützt. Wird für Servicelevel-Berichte und Auswirkungsanalysen verwendet. Tabelle: Business-Service [cmdb_ci_Service] Datentyp: Zeichenfolge |
| Checks.query_string | Abfrageparameter für die Überwachung, die in die Endpunktanforderung aufgenommen werden sollen. Standard: Null Datentyp: Zeichenfolge |
| Checks.should_create_Alert | Kennzeichnung, die angibt, ob die Überwachung eine Warnung erstellt, wenn ein Test fehlschlägt. Gültige Werte:
Standardwert: false Datentyp: Boolesch |
| checks.single_api_check_sys_id | SYS_ID der Überwachung für den Endpunkt. Verwenden Sie diesen Parameter, um eine vorhandene Überwachung zu aktualisieren. Tabelle: Einzelne API [sn_sow_synthetics_check_single_api] Standard: Null Datentyp: Zeichenfolge |
| checks.support_group_sys_id | Erforderlich. SYS_ID der Supportgruppe, die für diesen Endpunkt verantwortlich ist. Wird für die Weiterleitung und Zuweisung von Warnungen verwendet. Tabelle: Gruppe [sys_user_group] Datentyp: Zeichenfolge |
| Checks.valid_http_Code | Erwartete HTTP-Statuscodes für eine erfolgreiche Antwort. Gültige Formate:
Die Überwachung überprüft beim Testen anhand dieser Werte, und der Test schlägt fehl, wenn der tatsächliche Statuscode nicht mit einem Wert in der Liste übereinstimmt. Standard: Null Datentyp: Zeichenfolge |
| checks.valid_http_code_type | Typ der Validierung, die zum Überprüfen des HTTP-Statuscodes aus einer Antwort verwendet wird. Gültige Werte (Groß-/Kleinschreibung beachten):
Standard: Null Datentyp: Zeichenfolge |
Header
Die folgenden Anforderungs- und Antwort-Header gelten nur für diese HTTP-Aktion oder werden auf diese Aktion in einer bestimmten Weise angewendet. Eine Liste der allgemeinen Header, die in der REST-API verwendet werden, finden Sie unter Unterstützte REST-API-Header .
| Header | Beschreibung |
|---|---|
| Akzeptieren | Datenformat des Antworttexts. Unterstützt nur application/json. |
| Autorisierung | HTTP-Standardauthentifizierung oder OAuth-Bearer-Token. Standardauthentifizierungsformat: OAuth-Format: |
| Inhaltstyp | Datenformat des Anforderungstexts. Unterstützte Typen: application/jsonOder text/csv. Standard: application/json |
| Header | 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 REST-API-HTTP-Antwortcodes .
| Statuscode | Beschreibung |
|---|---|
| 202 | Akzeptiert. Ein Massenüberwachungserstellungsauftrag wurde übermittelt. |
| 400 | Ungültige Anforderung. Anforderungsvalidierung fehlgeschlagen. Überprüfen error.codeUnd error.messageIm Antworttext für Fehlerdetails. Häufige Ursachen:
|
| 401 | Nicht autorisiert Die Anwenderanmeldeinformationen sind falsch oder wurden nicht übergeben. |
| 403 | Unzulässig. Der Anwender muss über die Rolle x_snc_sow_synthetics.synthetics_editor verfügen, um Überwachungen zu erstellen. |
| 413 | Nutzlast zu groß. Anforderungstext überschreitet das Limit von 10 MB. |
| 415 | Nicht unterstützter Medientyp. Die Nutzlast muss als JSON oder CSV formatiert sein. |
| 429 | Zu viele Anforderungen oder zu viele aktive Überwachungserstellungsaufträge. Warten Sie, und versuchen Sie es erneut. Überprüfen error.codeUnd error.messageIm Antworttext für weitere Informationen. Quotenlimits:
|
| 500 | Interner Serverfehler. Beim Verarbeiten der Anforderung ist ein unerwarteter Fehler aufgetreten. Die Antwort enthält zusätzliche Informationen zum Fehler. |
Parameter des Antwort-Haupttexts (JSON)
| Name | Beschreibung |
|---|---|
| Fehler | Objekt, das zurückgegeben wird, wenn die API-Anforderung fehlgeschlagen ist. Datentyp: Objekt |
| Fehler.Code | Fehlercode. Mögliche Werte:
Datentyp: Zeichenfolge |
| error.details | Zusätzliche Details zum Fehler. Die in diesem Objekt enthaltenen Elemente variieren je nach Fehlertyp. Datentyp: Objekt |
| Fehler.Nachricht | Fehlermeldung. Datentyp: Zeichenfolge |
| Ergebnis | Objekt mit Informationen zum Überwachungserstellungsauftrag. Datentyp: Objekt |
| Ergebnis.Auftrags_ID | ID des Überwachungserstellungsauftrags. Tabelle: Synthetics-Massenauftrag [sn_sow_synthetics_bulk_job] Spalte: Auftrags-ID Datentyp: Zeichenfolge |
| Ergebnis.Auftrag_sys_ID | SYS_ID des Überwachungserstellungsauftrags. Tabelle: Synthetics-Massenauftrag [sn_sow_synthetics_bulk_job] Datentyp: Zeichenfolge |
| Ergebnis.Nachricht | Nachricht zum Status des Überwachungserstellungsauftrags. Datentyp: Zeichenfolge |
| Ergebnis.Status | Status des Überwachungserstellungsauftrags. Für eine erfolgreiche API-Anforderung (Statuscode Datentyp: Zeichenfolge |
| Result.Status_Check_url | Endpunkt zur Nachverfolgung des aktuellen Status des Überwachungserstellungsauftrags. Weitere Informationen finden Sie unter RUFEN SIE /sn_SOW_Synthetics/v1/synthetics_async_bulk_create/{Job_ID} AB . Datentyp: Zeichenfolge |
cURL-Anforderung
Dieses Beispiel übermittelt einen Auftrag zum Erstellen von Überwachungen für zwei API-Endpunkte.
curl "https://instance.service-now.com/api/sn_sow_synthetics/v1/synthetics_async_bulk_create" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
"checks": [
{
"name": "Production API Health Check",
"method": "GET",
"description": "Monitors the main API health endpoint",
"interval": 5,
"cmdb_ci": "21d4073087807610f13cbbf7cebb3500",
"enabled": true,
"should_create_alert": true,
"alert_severity": 1,
"locations": [
"0fd0279b87003210f13cbbf7cebb3552",
"2244a48d87cc7610f13cbbf7cebb3554"
],
"headers": [
{
"name": "Accept",
"value": "application/json"
}
],
"query_string": null,
"credential": "",
"body": null,
"parent_service_sys_id": "6731133c87c07610f13cbbf7cebb35d8",
"support_group_sys_id": "019ad92ec7230010393d265c95c260dd",
"alert_tags": {
"environment": "production",
"team": "platform"
},
"valid_http_code_type": "equals",
"valid_http_code": "200",
"max_latency_ms": 5000,
"body_condition": {
"type": "jsonpath",
"expression": "$.status == 'ok'"
}
},
{
"name": "User Service POST Test",
"method": "POST",
"description": "Tests user creation endpoint",
"interval": 10,
"cmdb_ci": "21d4073087807610f13cbbf7cebb3503",
"enabled": true,
"should_create_alert": true,
"alert_severity": 2,
"locations": [
"2244a48d87cc7610f13cbbf7cebb3554"
],
"headers": [
{
"name": "Content-Type",
"value": "application/json"
}
],
"body": "{\"test\": true}",
"parent_service_sys_id": "6731133c87c07610f13cbbf7cebb35e1",
"support_group_sys_id": "0762d92db72422103a858bbb4e11a928",
"valid_http_code_type": "in_range",
"valid_http_code": "200-201",
"max_latency_ms": 3000
}
]
}" \
--user 'username':'password'
Antworttext: Auftrag erfolgreich erstellt.
{
"result": {
"job_id": "BCJ-1706789123456-a1b2c3d4",
"job_sys_id": "abc123def456abc123def456",
"status": "pending",
"message": "Job created successfully. File uploaded. Processing will begin shortly.",
"status_check_url": "/api/sn_sow_synthetics/v1/synthetics_async_bulk_create/BCJ-1706789123456-a1b2c3d4"
}
}
Antworttext: Fehler beim Erstellen des Auftrags für die gleichzeitige Überwachung.
{
"error": {
"code": "CONCURRENT_JOB_LIMIT",
"message": "Maximum concurrent jobs exceeded. Please wait for existing jobs to complete."
}
}
Antworttext: Fehler beim Quotenlimit.
{
"error": {
"code": "RATE_LIMIT_EXCEEDED",
"message": "Rate limit exceeded. Please try again later.",
"details": {
"remaining_per_minute": 0,
"remaining_per_hour": 5,
"remaining_per_day": 100
}
}
}