• Zuletzt bearbeitet am: 03 February 2022

API Rückgabeformate

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

Hinweis

Coupa bietet jetzt erweiterte API-Filter, mit denen Sie eine bestimmte Ausgabe definieren können. Wir empfehlen, diese Filter anstelle des flachen Formats zu verwenden, das in zukünftigen Versionen nicht mehr verfügbar ist.

Übersicht

Die API von Coupa gibt standardmäßig viele Daten zurück (z. B. vollständige Objekte für zugehörige Objekte). Die API-Rückgabe-Nutzlasten können sehr groß und daher langsam sein. Dies kann ein Problem für Kunden sein, die die Fremddaten nicht benötigen, ganz zu schweigen vom unnötigen Ressourcenverbrauch.

Um die Dinge zu vereinfachen, hat Coupa ein Rückgabeformat return_object=shallow, das eine begrenzte JSON- oder XML-Antwort anstelle des gesamten Schemas und aller Zuordnungen für ein Objekt zurückgibt. Das Konzept, optional ein return_object anzugeben, ist nicht neu, nur das Konzept des „shallow“ -Formats. Wenn kein return_object angegeben ist, wird der vollständige Rückgabewert zurückgegeben.

So funktioniert es

Der optionale Abfrageparameter return_object unterstützt nun die folgenden 3 Werte:

  • keine : Es wird nichts zurückgegeben. Dies wird nur für PUT und POST unterstützt (keine Abfragen, wie GET, wo es keinen Sinn macht).
  • begrenzt : Es werden nur IDs zurückgegeben. Dies wird für alle Befehle unterstützt.
  • flach : Dieser Parameter gibt alle Attribute/Felder des aufgerufenen Objekts und nur die IDs und natürlichen Schlüssel der eintiefen Assoziationen zurück.

Der Parameter return_object=shallow wird für Folgendes unterstützt:

  • Befehle VERÖFFENTLICHEN
  • Put-Befehle
  • Befehle ABRUFEN

Mit dem Feldabfrageoperator können Sie die gewünschten Felder im Antworttext übergeben. Das Format des Feldwerts ist json. Bitte beachten Sie das folgende Beispiel:

?fields=["id","invoice_number",{"invoice_lines":["id","line_num"]}]

Rückgabeobjekt

Sie können den Parameter return_object verwenden, um das Antworttextformat für alle grundlegenden Erstellungs-, Aktualisierungs- oder Abfrageaufrufe zu steuern.

Beim Erstellen und Aktualisieren von return_object werden folgende Werte unterstützt: none, limited und shallow.

Bei Abfrageaufrufen werden folgende Werte unterstützt: begrenzt und flach.

Beispiel: Begrenzte Antwort auf Anfrage

Frage:  https://example.coupahost.com/api/expense_reports?return_object=limited

Antwortcode:  200

Hauptteil der Antwort:

{“id”:1}

Beispiel: Keine Antwort beim Erstellen

BEITRAG:  https://example.coupahost.com/api/ex...rn_object=none

Anforderungstext:

{

 "id":2,

 "currency":{

   "code":"USD"

 },

 "Expense-Lines":[

   {

     "description":"Flug nach Reno",

     "merchant":"American Airlines",

     "reason":"",

     "amount":"255,0",

     "Expense-Datum":"2010-02-05T00:00:00-08:00",

     "start-date":"2010-02-05T 00:00:00-08:00 Uhr",

     "expense-category":{

       "name":"Flugpreis",

     }

   },

 ],

}

Antwortcode:  200

Antworttext:

Beispiel: flache Antwort beim Erstellen

Abfrage:  https://example.coupahost.com/api/ex...object=shallow

Antwortcode:  200

Antworttext:

{

 "id":158,

 "created-at":"2010-09-22T20:42:57-07:00",

 "updated-at":"2014-04-24T14:56:49-07:00",

 "title":"",

 "status":"ausstehende_Genehmigung",

 "submitted-at":"2014-04-24T14:56:49-07:00",

 "auditor-note":null,

 "reject-reason":null,

 "Paid":falsch,

 "total":"567,07",

 "audit-score":26,

 "exported":false,

 "last-exported-at":Null,

 "external-src-ref":Null,

 "external-src-name":Null,

 "currency":{

   "id":1,

   "code":"USD"

 },

 "expensed-by":{

   "id":20,

   "login":"user_login",

   "email":"user_login@coupa.com"

 },

 "created-by":{

   "id":20,

   "login":"user_login",

   "email":"user_login@coupa.com"

 },

 "updated-by":{

   "id":20,

   "login":"user_login",

   "email":"user_login@coupa.com"

 },

 "Expense-Lines":[

   {

     "id":546,

     "external-src-ref":Null

   },

   {

     "id":547,

     "external-src-ref":Null

   },

   {

     "id":548,

     "external-src-ref":Null

   },

   {

     "id":549,

     "external-src-ref":Null

   }

 ],

 "comments":[ ]

}

Vergleichbare Artikel


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.

Beschaffungs-API (/quote_requests)

03 September 2021

Verwenden Sie die Coupa Sourcing API, um neue RFx-Ereignisse zu erstellen, Lieferantenantworten einzusehen und Lieferanten auf Positionsebene zu vergeben.

Projekte-API (/projects)

22 December 2021

Verwenden Sie die Projekt-API, um ein Projekt in Coupa zu erstellen oder zu aktualisieren.

Aufgaben-API (/tasks)

22 December 2021

Mit der Benutzer-API können Sie Benutzer erstellen, aktualisieren oder abfragen.

Hinweis: Einige Inhalte wurden maschinell übersetzt.