Erste Schritte mit der API

Allgemeine Informationen zur Verwendung der Coupa-API und wann Sie die Verwendung von CSV in Betracht ziehen sollten.

Authentifizierung

Alle Daten werden als Geschäftsobjekt oder Ressource gespeichert, und jede Ressource hat eine Ressourcen-URL, genau wie eine Webseite, wobei jede Ressource die Form/api/{resource_name} hat. Stellen Sie sicher, dass Sie auf die URL mit https://anstelle von http://zugreifen, wenn Sie die Coupa-API verwenden. Jeder Coupa-Kunde verfügt über eine eigene URL in der Form {instance_name}.coupahost.com. Beispiel: https://companyname.coupahost.com/api/users.

Coupa empfiehlt, API-Anfragen mit OpenID Connect zu authentifizieren.

In der Vergangenheit wurden API-Anfragen vor der Unterstützung von OpenID Connect durch einen eindeutigen API-Schlüssel authentifiziert, der in Coupa generiert wurde. Diese Methode wird weiterhin unterstützt, wird jedoch in R35 vollständig veraltet sein. Alle API-Anforderungen, die diese Authentifizierungsmethode verwenden, müssen einen X-COUPA-API-KEY " -Header, einen API-Schlüssel und den  ACCEPT-HEADER mit dem Wert application/xml für XML-Antworten oder application/json für JSON-Antworten übergeben.  Ein Schlüssel kann von einem Admin-Benutzer aus dem Abschnitt API-Schlüssel der Registerkarte Setup erstellt werden. Der Schlüssel ist ein 40 Zeichen langer alphanumerischer Code mit Groß-/Kleinschreibung und ist einem API-Benutzer zugeordnet, der einem Admin-Benutzer auf Coupa entspricht. Alle Änderungen an Ressourcen über die API werden dem API-Benutzer zugeordnet.

Die API-Schlüsselsicherheit kann beispielsweise konfiguriert werden, indem Ablaufdaten festgelegt, ein Schlüssel widerrufen und konfiguriert werden, auf welche Objekte und Methoden ein Schlüssel Zugriff hat.

Hinweis

Verfall von API-Schlüsseln
          R32 - OAuth2.0 ist die einzige verfügbare Option für Neukunden
          R34 - neue API-Schlüssel können nicht mehr an bestehende Kunden ausgegeben werden
          R35 - API-Schlüssel werden nicht mehr unterstützt
          Weitere Details

Hinweis

Überprüfen Sie immer das Vorhandensein von Elementen in XML/JSON, bevor Sie den Wert abrufen, da sich die Coupa-Nutzlaststruktur in Zukunft ändern kann, sodass bestimmte Felder, die keine oder Nullwerte aufweisen, nicht angezeigt werden.

Welche Methoden werden von der API unterstützt?

GET (Read Data) - Eine HTTP-GET-Anforderung fragt Coupa ab und gibt Informationen im JSON- oder XML-Format zurück.  Eine Anforderung am Ressourcenstamm listet die ersten 50 Objekte beginnend mit ID 1 auf. Verwenden Sie diese Argumente, um die Abfrage zu verfeinern.

PUT (Daten aktualisieren) - Eine HTTP-PUT-Anforderung an/api/{resource}/{id} versucht, eine Ressource zu aktualisieren. Pro Anforderung kann nur eine Ressource aktualisiert werden und die Nutzlast sollte ein JSON- oder XML-Dokument mit den zu aktualisierenden Elementen sein. Nicht alle Felder sind über die API verfügbar und alle referenzierten Daten müssen bereits vorhanden sein, oder der Wert wird nicht geändert.

POST (Create Data) - Eine HTTP-POST-Anforderung an den Ressourcenstamm mit einer json - oder XML-Nutzlast versucht, eine neue Ressource zu erstellen. Bei Erfolg wird die Ressource mit der neuen ID zurückgegeben, die von Coupa generiert wird.

Hinweis

Das Löschen von Daten wird für keine Ressource über die API unterstützt. Benutzer können eine Teilmenge von Ressourcen mithilfe einer PUT-ANFRAGE deaktivieren.

Wann sollte ich die API verwenden?

Die Coupa-API ermöglicht das Erstellen, Aktualisieren und Abfragen einzelner Einträge und wird hauptsächlich zum Verwalten von Objekten in Coupa verwendet. Mit Standard-RESTful-Aktionen und definitiven Inputs und Outputs ist es die einfache tägliche Option für Non-Bulk-Aktionen. Auf diese Methoden kann jederzeit zugegriffen werden, und es sind Tools integriert, mit denen Sie einfach überprüfen können, ob ein Anruf erfolgreich durchlaufen wird, oder die Ausgabe von Antworten minimieren können. Dies dient in erster Linie dazu, einfache Einzelaktualisierungen vorzunehmen oder Daten abzufragen.

XML vs. json

Coupa unterstützt sowohl XML als auch json.  Nachfolgend finden Sie einige grundlegende Informationen zu den einzelnen:

Die Extensible Markup Language (XML) ist ein Regelwerk zur Kodierung von Dokumenten in maschinenlesbarer Form. XMLs Designziele betonen Einfachheit, Allgemeingültigkeit und Benutzerfreundlichkeit über das Internet.

JavaScript Object Notation (json) ist ein leichter, textbasierter offener Standard, der für den Austausch von vom Menschen lesbaren Daten entwickelt wurde. Es leitet sich von der Programmiersprache JavaScript ab, um einfache Datenstrukturen und assoziative Arrays, sogenannte Objekte, darzustellen. Trotz seiner Beziehung zu JavaScript ist es sprachunabhängig, wobei Parser für die meisten Programmiersprachen verfügbar sind.

Json ist weniger ausführlich als XML, da XML das Öffnen und Schließen von Tags (oder in einigen Fällen weniger ausführliche selbstschließende Tags) erfordert, und json verwendet Name/Wert-Paare, die prägnant durch "{" und "}" für Objekte, "[" und "]" für Arrays, "," zur Trennung von Paaren und ":" zur Trennung von Name und Wert abgegrenzt werden.

Unterschiede zwischen XML und json in Coupa

Beispielanfragen/-antworten - XML vs. json

Hinweis

Unabhängig davon, für welche Methode Sie sich entscheiden, erfordert die Coupa-API, dass Sie sowohl Ihre Content-Typ- als auch Ihre Content-Accept-Header auf denselben Typ setzen. Nicht kombinieren.

Benutzung von GraphQL

GraphQL ist eine offene Spezifikation für eine API-Abfragesprache (daher die "QL" -Referenz), mit der Sie Ihre Integrationen reaktionsfähiger als je zuvor machen können, indem Sie die Möglichkeit haben, die benötigten Daten anzufordern und nicht mehr. GraphQL kann auch die Anzahl der Anrufe und der damit verbundenen Hin- und Rückfahrten reduzieren, indem alle benötigten Ressourcen in einer einzigen oder wenigen Anrufen abgerufen werden.

Weitere Informationen finden Sie unter Einführung von GraphQL.

Wann sollte ich SFTP Flat Files verwenden?

Mit flachen Dateien können Sie viele Datensätze über eine einzige Transaktion laden. Sobald eine Integration eingerichtet ist, wird sie basierend auf den eingestellten Parametern automatisch ausgeführt. Integrationsläufe und Fehler werden in der App verwaltet und geben Aufschluss über die Anzahl der hinzugefügten Teilnehmer, Fehlerdetails und darüber, wer automatisch wegen des Fehlers kontaktiert wurde. Dies wird in erster Linie verwendet, um Massenaktualisierungen oder -ergänzungen zu wichtigen Komponenten des Produkts wie Benutzern oder Lieferanten vorzunehmen.

Zusätzliche Informationen

wiki.tree(page.path)

API-Operatoren

16 August 2022

Coupa unterstützt eine Reihe von Operatoren, mit denen Sie präzise Abfragen durchführen können.

API Rückgabeformate

03 February 2022

Verwenden Sie das flache API-Format von Coupa, um die Datenmenge zu reduzieren, die Sie während einer Abfrage erhalten.

API-Schlüsselsicherheit

14 January 2022

Verbesserte API-Schlüsselsicherheit mit Ablauf des API-Schlüssels und vom Administrator angegebenen Berechtigungen für APIs.

Kundenspezifischer Feld-Namespace

18 April 2019

Alle neuen benutzerdefinierten Felder werden zu einem benutzerdefinierten Feld-Namespace hinzugefügt, um Namenskonflikte zu vermeiden und vom Kunden hinzugefügte Felder leichter identifizierbar zu machen.

Argumente

24 April 2017

Erfahren Sie mehr über die Arten von Argumenten, die Coupa in Verbindung mit Operatoren unterstützt.

Optionen für die Abfrage

21 October 2016

Erfahren Sie, wie Sie Abfragen verwenden können, um die benötigten Daten schnell zu identifizieren und abzurufen.

Spezielle Aktionen und API-Notizen

21 October 2016

Weitere Informationen zur Verwendung der Coupa-API.