Authentifizierung
Alle Daten werden als Geschäftsobjekt oderRessource gespeichertund jede Ressource hat eineRessourcen-URL, genau wie eine Webseite, wo jede Ressource im Formular enthalten ist./api/{resource_name}.
Stellen Sie sicher, dass Sie auf die URL zugreifen,https://
anstatt http://
wenn Sie die Coupa-API verwenden. Jeder Coupa-Kunde hat seine eigene URL des Formulars {instance_name}.coupahost.com
. Beispiel: https://companyname.coupahost.com/api/users
.
Coupa empfiehlt die Authentifizierung von API-Anforderungen mit OpenID Connect.
Vor der Unterstützung für OpenID Connect wurden API-Anforderungen in der Vergangenheit durch einenin Coupa generierten eindeutigen API-Schlüsselauthentifiziert. Diese Methode wird weiterhin unterstützt, ist aber in R35 vollständig veraltet. 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 übergeben, der application/xml
für XML-Antworten oder für JSON-Antworten auf application/json
festgelegt ist. Ein Administratorbenutzer kann einen Schlüssel im Abschnitt API-Schlüsselder Registerkarte Konfiguration erstellen. Der Schlüssel ist ein 40-stelliger alphanumerischer Code mit Berücksichtigung der Groß-/Kleinschreibung und ist einem API-Benutzer zugeordnet, der einem Administratorbenutzer auf Coupa entspricht. Alle Änderungen an Ressourcen über die API werden dem API-Benutzer zugewiesen.
API-Schlüsselsicherheit kann beispielsweise konfiguriertwerden, indem Ablaufdaten festgelegt, ein Schlüssel widerrufen und konfiguriert wird, auf welche Objekte und Methoden ein Schlüssel Zugriff hat.
API-Schlüssel-Verfall
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
Überprüfen Sie immer das Vorhandensein von Elementen in XML/JSON, bevor Sie den Wert abrufen, da sich die Coupa-Payloadstruktur in Zukunft ändern kann, sodass bestimmte Felder, die keine oder Nullwerte haben, nicht angezeigt werden.
Welche Methoden werden von der API unterstützt?
GET (Daten lesen) - 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 ab ID 1 auf. Verwenden Sie diese Argumente, um die Abfrage zu optimieren.
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 Payload 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 (Daten erstellen) - Eine HTTP-POST-Anforderung an den Ressourcenstamm mit einer JSON- oder XML-Payload versucht, eine neue Ressource zu erstellen. Wenn erfolgreich, wird die Ressource mit der neuen ID zurückgegeben, die von Coupa generiert wird.
Das Löschen von Datenwird für keine Ressource über die API unterstützt. Benutzer können eine Teilmenge von Ressourcen mithilfe einer PUT-Anforderung deaktivieren.
Wann sollte ich die API verwenden?
Die Coupa-API ermöglicht Ihnen das Erstellen, Aktualisieren und Abfragen einzelner Einträge und wird hauptsächlich zur Verwaltung von Objekten in Coupa verwendet. Mit Standard-RESTful-Aktionen und endgültigen Ein- und Ausgängen ist es die einfache Tagesoption für Nicht-Massenaktionen. Auf diese Methoden kann jederzeit zugegriffen werden, und integrierte Tools ermöglichen es Ihnen, einfach zu überprüfen, ob ein Aufruf erfolgreich durchlaufen wird, oder die Antwortausgabe zu minimieren. Dies wird hauptsächlich verwendet, um einfache individuelle Aktualisierungen vorzunehmen oder Daten abzufragen.
XML vs. JSON
Coupa unterstützt sowohl XML als auch JSON. Im Folgenden finden Sie einige grundlegende Informationen zu jedem:
Extensible Markup Language (XML) ist ein Satz von Regeln zum Codieren von Dokumenten in maschinenlesbarer Form. XMLs Design-Ziele heben Einfachheit, Allgemeinheit und Benutzerfreundlichkeit über das Internet hervor.
JavaScript Object Notation (JSON) ist ein leichter, textbasierter offener Standard für den lesbaren Datenaustausch. Sie wird von der Programmiersprache JavaScript abgeleitet, um einfache Datenstrukturen und assoziative Arrays, so genannte Objekte, darzustellen. Trotz seiner Beziehung zu JavaScript ist es sprachunabhängig, mit Parsern für die meisten Programmiersprachen.
JSON ist weniger ausführlich als XML, da XML öffnende und schließende Tags (oder in einigen Fällen weniger ausführliche selbstschließende Tags) erfordert, und JSON verwendet Name/Wert-Paare, die durch "{" und "}" für Objekte, "[" und "]" für Arrays, "," für getrennte Paare und ":" für die Trennung von Name und Wert kurz definiert sind.
Unterschiede zwischen XML und JSON in Coupa
Beispielanforderungen/Antworten - XML vs. JSON
Unabhängig davon, welche Methode Sie wählen, müssen Sie für die Coupa-API sowohl Ihren Inhaltstyp als auch Ihre Inhaltsakzeptor-Kopfzeilen auf denselben Typ festlegen. Nicht mischen und abgleichen.
Verwenden von GraphQL
GraphQL ist eine offene Spezifikation für eine API-Abfragesprache (also die "QL"-Referenz), mit der Sie Ihre Integrationen reaktiver machen können als je zuvor, indem Sie die Möglichkeit haben, die benötigten Daten anzufordern und nichts mehr. GraphQL kann auch die Anzahl der Anrufe und der zugehörigen Hin- und Rückfahrten reduzieren, indem Sie alle benötigten Ressourcen in einer einzigen oder wenigen Anrufen abrufen.
Weitere Informationen finden Sie unter Einführung in GraphQL .
Wann sollte ich SFTP-Flatfiles verwenden?
Mit Flat Files können Sie viele Datensätze über eine einzige Transaktion laden. Sobald eine Integration eingerichtet ist, wird sie basierend auf den festgelegten Parametern automatisch ausgeführt. Integrationsläufe und Fehler werden in der App verwaltet und geben Einblick in die Anzahl der hinzugefügten Einträge, die Fehlerdetails und die Person, die automatisch über den Fehler kontaktiert wurde. Dies wird hauptsächlich verwendet, um Massenaktualisierungen oder Ergänzungen zu wichtigen Komponenten des Produkts wie Benutzern oder Lieferanten vorzunehmen.
Zusätzliche Informationen
wiki.tree(page.path)
Coupa unterstützt eine Reihe von Operatoren, damit Sie präzise Abfragen durchführen können.
Verwenden Sie das flache API-Format von Coupa, um die Datenmenge zu reduzieren, die Sie während einer Abfrage erhalten.
Verbesserte API-Schlüsselsicherheit mit Ablauf von API-Schlüsseln und vom Administrator festgelegten Berechtigungen für APIs.
Namespace des benutzerdefinierten Felds
Alle neuen benutzerdefinierten Felder werden einem Namespace für benutzerdefinierte Felder hinzugefügt, um Namenskonflikte zu vermeiden und vom Kunden hinzugefügte Felder leichter identifizierbar zu machen.
Erfahren Sie mehr über die Argumenttypen, die Coupa in Verbindung mit Operatoren unterstützt.
Erfahren Sie, wie Sie mithilfe von Abfragen die benötigten Daten schnell identifizieren und abrufen können.
Besondere Aktionen und API-Hinweise
Zusätzliche Informationen zur Verwendung der Coupa-API.
Hinweis: Einige Inhalte wurden maschinell übersetzt.
- Inhaltsverzeichnis
-
Die Coupa Core-API
-
Erste Schritte mit der API
- API-Schlüsselsicherheit
- API-Operatoren
- API-Rückgabeformate
- Argumente
- Namespace des benutzerdefinierten Felds
- Unterschiede zwischen XML und JSON in Coupa
- Ausnahmebehandlung und Fehlercodes
- Einführung in GraphQL
- Abfrageoptionen
- Beispielanforderungen/Antworten - XML vs. JSON
- Besondere Aktionen und API-Hinweise
- Übergang zu OAuth 2.0 und OIDC
- Orchestration Documents
-
Ressourcen
-
Referenzdatenressourcen
- Konten-API (/accounts)
- Kontotypen-API (/account_types)
- API für Kontovalidierungsregeln (/account_validation_rules)
- Adress-API (/address)
- Ankündigungs-API (/Durchsagen)
- Budgetzeilen-API (/budget lines)
- API für Geschäftseinheiten (/business_entities)
- Inhaltsgruppen-API (/business_groups)
- Währungen API (/currency)
- Datendateiquellen-API (/data_file_sources)
- Abteilungen-API (/departments)
- Wechselkurs-API (/exchange_rates)
- API für finanzielle Gegenparteien (/financial_counterparties)
- Artikel-API (/items)
- API für juristische Dokumente (/legal_documents)
- Suchwerte-API (/lookup_values)
- API für übereinstimmende Zuordnungen (/matching_allocations)
- Zahlungsbedingungen API (/payment_terms)
- Projekte-API (/projects)
- Preiskarten-API
- Zahlungsempfängeradressen-API (/suppliers/address)
- Versandbedingungen API (/shipping_terms)
-
Lieferanten-API (/suppliers)
- Kontakt-API des Kundendiensts
- API für Diversitätszuordnung
- APIs für Diversitätskategorien und Unterkategorien
- API der Zertifizierungsstelle für Diversität
- Proxy-Lieferanten-API
- Punchout-Site-API
- Lieferanten-API-Beispielaufrufe
- Lieferantenartikel-API (/supplier_items)
- Beispielaufrufe für Lieferantenartikel
- Zahlungsempfänger-API des Lieferanten
- Lieferanten-Sites-API (/supplier_sites)
- Lieferanten-Benutzer-API
- Lieferanteninformation API (/supplier_information)
- API für Lieferanteninformations-Sites (/supplier_information_sites)
- API für Steuerregistrierungen von Lieferanteninformationen (/supplier_information_tax_registrations)
- Aufgaben-API (/tasks)
- API für Steuerregistrierungen (/tax_registrations)
- Benutzer-API (/users)
-
Gemeinsame Ressourcen
- Kontogruppen-API
- Alternative API
- Betragsbestandteil-API
- Bestandskennzeichen-API
- Anlagen-API
- Anhangsdatei-API
- Großmengenpreis-API
- Kommentar-API
- Warengruppen-API
- Chargen-API für permanente Inventur
- Anbieterkonto-API entwerfen
- Formular-API
- Mitgliedschafts-API für Gruppenkauf
- Zahlungs-API
- Budgetzeitraum-API
- Zweck-API
- RA CLMA Vertrags-API
- RA-Risikoanfrage API
- API für RA-Risikoanforderungsbeziehung
- API für RA-Risikoanforderungsbewertung
- API für Änderung der Bestellkopfzeile des Lieferanten
- Tagging-API
- Tag-API
- Maßeinheit-API
-
Transaktionsressourcen
- Genehmigungs-API (/approvals)
- Versandvorabmitteilungen API (/asn)
- API für Gebühren (/invoices)
-
Vertrags-API (/contracts)
- Vertrags-API - Beispielaufrufe
- Vertragsklassifizierungs-API
- Vertragsklauseln-API
- Referenz-API für Vertragsklauseln
- Vertragsdetail-API
- API für Vertragsstreitigkeiten
- Vertragspartei API
- Kontakt-API der Vertragspartei
- Vertragsvorlage API (/contracts/templates)
- Vertragsbedingungen API
- Vertragstypen-API
- API für Länderunterteilung
- API für geistiges Eigentum und Daten
- API für Reason Insights
- Ereignis-API für Reason Insights
- Zahlungs-API (/coupa_pay/payments)
- Coupa Pay-Kontoauszüge API (/coupa_pay/statements)
- API für benutzerdefinierte Objekte (/custom_objects/id)
- API für Zeilen der permanenten Inventur (/cycle_count_lines)
- Datendateiquellen-API (/data_file_sources)
- Standard-API für Empfängerstandorte (/default_receive_locations)
- Standard-Empfängerstandort-API (/Standard-Empfängerstandort)
- API für einfache Formularantworten (/easy_form_responses)
-
Ausgaben-API (/expense_reports)
- Auditstatus-API
- Ausgaben-API-Beispielaufrufe
- Ausgaben-Artefakt-API
- API für Ausgabenteilnehmer
- Typ API für Ausgabenteilnehmer
- API für Ausgabenbarvorschuss
- Ausgabenkategorie-API
- API für Übersetzung der Ausgabenkategorie
- Ausgabenzeilen-API
- API für die Zuweisung von Ausgabenpositionen
- Teilnehmer-API der Ausgabenzeile
- Ausgabenposition Barvorschuss API
- Importierte Daten der Ausgabenzeile - API
- Ausgabenposition Kilometerleistung API
- API für die Zuweisung von Kilometerständen in der Ausgabenzeile
- Tagessatz-API der Ausgabenzeile
- API für Steuern der Ausgabenzeile
- API für virtuelle Karte der Ausgabenzeile
- API für Vorabgenehmigung von Ausgaben
- API für Ausgabenvorabgenehmigungszeile
- API für Ausgabenberichte
- Vorabgenehmigungs-API für Ausgabenberichte
- Reise-API für Ausgaben
- Ausgabenreisesegment-API
- API für Ausgabenverletzung
- Virtual Card-API für Ausgaben
- Aufgegliederte Ausgabenzeilen-API
- API für juristische Person
- Integrations-API (/integrations)
-
Rechnungs-API (/invoices)
- Grund-API für Anfechtungen
- API für fehlgeschlagene Toleranzen
- API für eingehende Rechnung
- API-Beispielaufrufe für Rechnungen
- API für Rechnungsgebühren
- API für Rechnungsgebührenzuordnung
- Rechnungsposition-API
- API-Beispielaufrufe für Rechnungszahlungen
- API des registrierten Unternehmens
- Steuerzeilen-API
- Quellensteuerposition API
- Objektübersetzungs-API (/uoms/uom_id/translations)
- Bestelllisten-API (/order_pads)
- Kreditoren-API (/payables/)
- Auswahllisten/Erfüllungsreservierungs-API (/Auswahllisten)
- Bestellungs-API (/purchase_orders)
-
Empfangs-API
- Anpassungscode-API
- API für Bestandsanpassungen (/inventory_adjustments)
- API für Bestandsverbrauch (/inventory_consumption)
- Chargen-API für Bestandstransaktion
- API für Bestandsübertragungen (/inventory_transfers)
- Empfangstransaktionen API (/receive_transactions)
- API-Beispielaufrufe für Wareneingänge
- API für Rückgabe an Lieferantentransaktionen (/return_to_supplier_transactions)
- Beleganforderungs-API (/receipt_requests)
- Anforderungs-API (/requisitions)
- Sourcing-API (/quote_requests)
- Lieferantenrisiko-Feed-API (/supplier_risk_aware_feed)
-
Referenzdatenressourcen
-
Erste Schritte mit der API
- Bauen Sie auf der Coupa-Plattform auf
- CCW Flat Files (CSV)
-
Coupa Core Flat Files (CSV)
-
Flat File (CSV)-Export
-
Standard CSV Exports
- Kontotyp Export
- Versandvorabmitteilungen exportieren
- Rohstoffexport
- Vertragsexport
- Export von Coupa Pay-Gebühren
- Coupa Pay-Zahlungsexport
- Datendateiquellen-Export
- Delegationsexport
- Easy Form-Widget-Antwortexport
- Wechselkursexport
- Export der Vorabgenehmigung von Ausgaben
- Export von Ausgabenberichten
- Integrationsfehlerexport
- Integrationsverlaufsdatensatzexport
- Export der Bestandsbilanz
- Bestandstransaktionen (Belege) exportieren
- Export von Rechnungen
- Artikelexport
- Suchwerte exportieren
- Objektübersetzungsexport
- Änderungsexport der Bestellung
- Zuweisungsexport für Bestellpositionsänderung
- Export der Bestellpositionsänderung
- Verbindlichkeiten: Zuweisung
- Verbindlichkeiten :: Ausgaben
- Verbindlichkeiten :: Vorabgenehmigung von Ausgaben Export
- Kreditorenrechnungsexport
- Export des Beschaffungsmeilensteins
- Projektexport
- Projekt-Link-Export
- Export von Bestellungen
- Export von Zahlungsempfängeradressen
- Anforderungsexport
- Sourcing-Export
- Sourcing-Angebotsanforderungsexport
- Sourcing-Angebotsantwortexport
- Export von Coupa Pay-Kontoauszügen
- Direkter Ausgabenexport für Lieferanten-Diversitätsbericht
- Export indirekter Ausgaben für Lieferanten-Diversitätsbericht
- Export von Zusammenfassungen des Lieferanten-Diversitätsberichts
- Export von Lieferanteninformationen
- Seite „Lieferanteninformationen“
- Lieferant-Site
- Steuercode-Export
- Steuercoderegel-Export
- Steuerregistrierungsexport
- TCS-Steuerzeilenexport
- Benutzergruppen-Export
- Export Arbeitsbestätigung/Kopfzeile (Service-/Stundennachweisheader)
- Export von Arbeitsbestätigung/Position (Service-/Stundennachweisposition)
-
Standard CSV Exports
- Erste Schritte
-
Flat File (CSV)-Import
- Kontoimport
- Kontoart (CoA) Import
- Import von Kontovalidierungsregeln
- Import der Genehmigungskette
- Versandvorabmitteilung Import
- Budgetzeilenimport
- Budgetzeilenanpassungsimport
- Import Geschäftseinheit
- Rohstoffimport
- Import von Warengruppenübersetzungen
- Adressimport
- Inhaltsgruppen-Import
- Vertragsimport
- Abteilungsimport
- Unternehmensimport
- Wechselkurs-Import
- Import von Ausgabenkilometern
- Import der dynamischen Kategoriegrenze für Ausgabenaktion
- Import der Ausgabenkategorie
- Import von Steuersätzen der Ausgabenkategorie
- Import der Übersetzung der Ausgabenkategorie
- Import der Ausgabenimport-Kategoriezuordnung
- Import Transaktionsfiltertyp für Ausgabenimport Zuordnung
- Import der Benutzerzuordnung für Ausgabenimport
- Import der Ausgabenzahlung
- Import externer Bestellungen
- Externe Zahlungen
- Formulare (einfache Formulare) importieren
- Import von Integrationskontakten
- Integrationsimport
- Chargenimport Bestandsbilanz
- Import von Rechnungen
- Import der Rechnungszahlung
- Artikelimport
- Lader für rechtsgültige Zahlungsbelege
- Import von Suchwerten
- Objektinstanzimport
- Import von Objektübersetzungen
- Verbindlichkeiten :: Extern :: Kreditorenimport
- Import der Zahlungsbedingungen
- Projektimport
- Import von Bestelländerungen
- Angebotsanforderungszeilenimport
- Bestandstransaktionen (Belege) Import
- Import von Zahlungsempfängeradressen
- Anforderungsimport
- Import der lieferbaren Verfolgung
- Lieferantenimport
- Lieferantenrisiko-Feed-Import
- Lieferanten-Site-Import
- Steuercode-Import
- Steuercoderegel-Import
- Steuersatzimport
- Steuerreferenz-Import
- Steuerregistrierungsimport
- Import von Treasury-Cashflow-Dateien
- Benutzerimport
- Import von Benutzergruppen
- Lagerortimport
- Import von Service-/Stundennachweisen
-
Flat File (CSV)-Export
- Coupa Core-Anwendung - IP-Adressen
- Alte Formate
- Risk Assess Quick Integration
- Coupa Core User Authentication (SSO)
- The CCW API
- The CSO API