Vorbereitung von Datenquellen: ServiceNow API

Überblick

Im Folgenden findest du eine konsolidierte Referenz der am häufigsten verwendeten REST API-Endpunkte von ServiceNow. Diese integrierten APIs ermöglichen CRUD-Operationen auf Tabellen, statistische Auswertungen, das Verwalten von Anhängen, die Verarbeitung externer Daten über Import Sets sowie benutzerdefinierte Schnittstellen via Scripted REST APIs.

Nutze den REST API Explorer in deiner Instanz (System Web Services ▶ Inbound ▶ REST API Explorer), um Anfragen zu testen und verfügbare Parameter zu prüfen.

Kernschnittstellen von ServiceNow

API-TypEndpunkt-FormatBeschreibung
Table API/api/now/table/{tableName}Standard-CRUD für jede Tabelle
Aggregate API/api/now/stats/{tableName}Zählungen und statistische Auswertungen
Attachment API/api/now/attachment/*Anhänge hoch-/runterladen und auflisten
Import Set API/api/now/import/{stagingTableName}Massenimport externer Daten mit Transformation
Scripted REST API/api/{namespace}/{api_id}/…Benutzerdefinierte Endpunkte mit serverseitiger Logik

Table API

Ermöglicht Create, Read, Update und Delete auf jeder ServiceNow-Tabelle.

Basis-URI:

https://<instance>.service-now.com/api/now/table/{tableName} 
``` :contentReference[oaicite:5]{index=5} 

Unterstützte Methoden:

  • GET – Datensätze abrufen
  • POST – Neuen Datensatz erstellen
  • PUT / PATCH – Datensatz aktualisieren
  • DELETE – Datensatz löschen

Typische Parameter:

  • sysparm_query – Query-String (z. B. active=true^priority=1)
  • sysparm_limit / sysparm_offset – Paginierung
  • sysparm_fields – Nur bestimmte Felder abrufen
  • sysparm_display_value – Anzeige- statt Rohwert (true/false)

Beispiel: Top 10 Incidents mit Priorität 1 abrufen:

GET https://<instance>.service-now.com/api/now/table/incident
     ?sysparm_limit=10
     &sysparm_query=priority=1
     &sysparm_fields=number,short_description,priority
``` :contentReference[oaicite:6]{index=6}  

Aggregate API

Gibt zusammengefasste Statistiken (z. B. Zählungen, Summen) zurück, ohne vollständige Datensätze zu laden.

Basis-URI:

https://<instance>.service-now.com/api/now/stats/{tableName} 
``` :contentReference[oaicite:7]{index=7}  

Unterstützte Methode:

  • Nur GET

Typische Parameter:

  • sysparm_count=true – Gibt die Gesamtanzahl zurück
  • sysparm_sum_fields – Felder zur Summenbildung
  • sysparm_group_by – Gruppierung nach Feldern
  • sysparm_query – Gefilterte Teilmenge

Beispiel: Zähle Incidents mit Priorität 1:

GET https://<instance>.service-now.com/api/now/stats/incident
     ?sysparm_count=true
     &sysparm_query=priority=1 
``` :contentReference[oaicite:8]{index=8}  

Attachment API

Ermöglicht das Hochladen, Abrufen, Auflisten und Löschen von Dateianhängen für beliebige Tabellen.

Datei hochladen:

POST https://<instance>.service-now.com/api/now/attachment/file
     ?table_name={tableName}
     &table_sys_id={recordSysId}
     &file_name={filename}

Content-Type: multipart/form-data oder binär servicenow.com

Datei herunterladen:

GET https://<instance>.service-now.com/api/now/attachment/{attachmentSysId}/file 

Anhänge zu einem Datensatz auflisten:

GET https://<instance>.service-now.com/api/now/attachment
     ?sysparm_query=table_name={tableName}^table_sys_id={recordSysId}

Anhang löschen:

DELETE https://<instance>.service-now.com/api/now/attachment/{attachmentSysId} 

Import Set API

Dient zur Zwischenspeicherung und Verarbeitung externer Daten vor dem Laden in Zieltabellen.

Einzeldatensatz einfügen:

POST https://<instance>.service-now.com/api/now/import/{stagingTableName} 

Body: JSON-Objekt, das einen einzelnen Datensatz repräsentiert servicenow.com

Mehrere Datensätze einfügen:

POST https://<instance>.service-now.com/api/now/import/{stagingTableName}/insertMultiple

Body: {  "records": [    { ... },    { ... }  ] }  ahmeddrar.me

Wichtige Query-Parameter

Keine – das Mapping und die Transformation erfolgen vollständig nach dem Staging innerhalb von ServiceNow.

Scripted REST API

Erlaubt die Erstellung vollständig benutzerdefinierter REST-Endpunkte mit serverseitigem Script-Handling.

Ort der Definition:
Navigiere in der Instanz unter System Web Services ▶ Scripted REST APIs. servicenow.com

URI-Muster:

https://<instance>.service-now.com/api/{namespace}/{api_id}/{resourcePath}

Typische Methoden:

  • GET, POST, PUT, DELETE – gemäß deiner Skriptdefinition
  • Benutzerdefiniertes Request-/Response-Scripting in der Scripted REST-Ressource

Typische Anwendungsfälle:

  • Komplexe Geschäftslogik
  • Datenformate oder Workflows außerhalb der Standard-APIs
  • Versionierte und abgesicherte benutzerdefinierte Schnittstellen

Endpunkte entdecken und testen

REST API Explorer

  • In deiner ServiceNow-Instanz findest du den REST API Explorer unter: System Web Services ▶ REST API Explorer
  • Dort kannst du: integrierte APIs durchsuchen, Beispielanfragen dynamisch zusammenstellen und verfügbare Parameter und Antwortstrukturen einsehen

Versionierung

  • Viele REST-Endpunkte unterstützen Versionierung, z. B.: /api/now/v1/... oder/api/now/v2/...
  • Wenn keine Version angegeben wird, verwendet ServiceNow automatisch die aktuell empfohlene und stabile API-Version.

Authentifizierung & Sicherheit

Unterstützte Authentifizierungsverfahren:

  • Basic Authentication (Benutzername/Passwort)
  • OAuth 2.0 (empfohlen für produktive Integrationen)
  • Mutual TLS (Zertifikatsbasierte Authentifizierung auf Instanzebene)

Rate Limits & Best Practices

  • Nutze sysparm_limit und sysparm_offset, um große oder blockierende Anfragen zu vermeiden. blog.josephvelliah.com
  • Verwende indexfreundliche Filter in sysparm_query, um die Performance zu optimieren.

Durch den Einsatz der integrierten REST-Schnittstellen von ServiceNow kannst du die Anbindung und Kommunikation mit einem Tool wie Noreja nahtlos und sicher gestalten. Die APIs bieten standardisierte, leistungsfähige Zugänge zum Datenmodell – flexibel erweiterbar durch benutzerdefinierte Endpunkte, starke Authentifizierungsmechanismen und moderne Abfrageoptionen.

Was this article helpful?