Felder-API
Verwenden Sie die Feld-API, um die Felder und zugehörigen (Zeilen) Daten zu erstellen, zu aktualisieren oder abzufragen.
Faktenfelder sind die Spalten im Faktenblatt und haben, wie jedes andere Feld im Ereignis, einen Namen, einen Formelnamen und einen Datentyp, um die zu haltenden Werte anzugeben.
Faktenfelder definieren die zu beinhaltenden Daten, genau wie Positionsfelder oder Spalten in einem Excel-Arbeitsblatt. Jede Faktenzeile sollte nur einen Wert für jedes Faktenfeld enthalten, um die Daten effizient nutzen zu können.
Verwenden Sie die Feld-APIs, um die Felddaten zu erstellen, zu aktualisieren oder abzufragen. Dazu gehören bestimmte zu ergreifende Endpunkte (Erstellen/Aktualisieren/Löschen) sowie zeilenbezogene Daten.
Die URL für den Zugriff auf die APIs lautet : https://<instance>.cso.coupahost.com/api/events/{event-id}/fact-sheets/{fact-sheet-id}/fields
Weitere Informationen finden Sie unter Integrations-Best Practices.
Aktionen
Verb | Pfad | Aktion | Beschreibung |
---|---|---|---|
ABFRAGEN |
|
index | Führt eine Abfrageaktion aus, um alle Felder abzurufen, die zu einem Faktenblatt gehören. |
BEITRAG |
|
erstellen | Erstellt ein oder mehrere Felder für ein Faktenblatt. |
PUT |
|
aktualisieren | Aktualisiert ein oder mehrere Felder auf einem Faktenblatt . Kann Massenaktualisierungen durchführen. |
LÖSCHEN |
|
löschen | Löscht ein weiteres Feld in einem Faktenblatt. Kann Massenlöschungen durchführen. |
ABFRAGEN |
|
anzeigen | Einzelne Felddaten für die Faktenblatt-ID anzeigen. |
PUT |
|
aktualisierung | Individuelles Feld für eine Faktenblatt-ID mithilfe der Feld-ID aktualisieren. |
LÖSCHEN |
|
löschen | Einzelne Felder für eine Faktenblatt-ID mithilfe der Feld-ID löschen. |
Elemente
Dies sind die Elemente, die für die Fields-API verfügbar sind
Feldname | Feldbeschreibung | Anf. | Eindeutig? | Zulässige Werte | In | Out * | Typ |
---|---|---|---|---|---|---|---|
iD |
ID des Feldes |
Ja | ja | ganze Zahl | |||
ordnungszahl | Der Ordnungswert für das Feld. | ja | ganze Zahl | ||||
typ | Der Typ des Feldes. | ja | ja | zeichenfolge | |||
name | Name des Feldes. | ja | ja | ja | zeichenfolge | ||
formula-name | Name der Formel des Felds. | ja | ja | zeichenfolge | |||
beschreibung | Eine Kurzbeschreibung des Feldes. | ja | ja | zeichenfolge | |||
erforderlich | Das erforderliche Flag des Feldes. | ja | ja | zeichenfolge | |||
dezimalen | Anzahl von Dezimalstellen für numerisches Feld | ja | ja | zeichenfolge | |||
bieter-Eingang | Dies gibt an, ob dieses Feld von einem Bieter ausgefüllt werden soll oder nicht. | ja | ja | zeichenfolge | |||
optionen | Die Optionen des Felds, wenn es sich um ein Multiple-Choice-Feld handelt. | ja | ja | zeichenfolge | |||
unterscheidungsmerkmal | Wenn dieses Feld in der Unterscheidungszeile enthalten sein soll. | ja | ja | zeichenfolge | |||
formel | formel für das Feld Formelart | ja | ja | zeichenfolge | |||
min-Wert | Der Mindestwert von numerischen Feldern | ja | ja | zahl | |||
max-value | Der maximale Wert von numerischen Feldern und die zulässige Länge von Textfeldern. | ja | ja | nummer | |||
exclude-limits | Ob Höchst- und Mindestgrenzen eingeschlossen oder ausgeschlossen werden. | ja | ja | zeichenfolge |
Die Antwortnutzlast zeigt keine Nullwerte an.
Beispiele
In diesem Beispiel haben wir nach einer Fields-API gefragt.
https://<instance>.cso.coupacloud.com/api/events/{event-id}/fact-sheets/{fact-sheet-id}/fields
https://<instance>.cso.coupacloud.com/api/events/{event-id}/fact-sheets?name[enthält]=factsheetname
Wir haben die unten stehende URL für ein Beispiel für Event-id = 9219593444837772101
und Factsheet id = 9220538753431210838 aufgerufen
:
https://<instance>.cso.coupacloud.com/api/events/9220538753252871154/fact-sheets/9220538753431210838/fields
Felder ERHALTEN ANTWORT
{
"total": 6.
"fields": [
{
"id": "9220538753431213703",
"Ordnungszahl": 1.
"type": "Text",
"name": "name-fld",
"formula-name": "name_fld",
"description": "Namensfeld für API",
"unterscheiden": wahr
},
{
"id": "9220538753431215951",
"Ordnungszahl": 2.
"type": "Numerisch",
"name": "num-fld",
"formula-name": "num_fld",
"description": "Zahlenfeld",
"Dezimalstellen": 2.
"unterscheiden": falsch,
"exclude-limits": falsch
},
{
"id": "9220538753431226586",
"Ordnungszahl": 3,
"type": "Binär",
"name": "Kontrollkästchen-Demo",
"formula-name": "Kontrollkästchen_Demo",
"description": "Kontrollkästchen Demo-Feld",
"unterscheiden": wahr
},
{
"id": "9220538753431234950",
"Ordnungszahl": 4.
"type": "Option",
"name": "demo-multi-fld",
"formula-name": "demo_multi_fld",
"description": "Demo-Multifelder",
"options": {
"Standard": 0,
"values": [
{
"name": "erster",
"value": 1.0
},
{
"name": "Zweiter",
"value": 2.0
},
{
"name": "andere",
"value": 0.0
}
]
},
"unterscheiden": wahr
},
{
"id": "9220538753431237952",
"Ordnungszahl": 5.
"type": "Formel",
"name": "Demo-Formel",
"formula-name": "demo_formula",
"description": "Demo-Formel",
"required": false,
"unterscheiden": falsch,
"formula": "demo_factsheet.num_fld"
},
{
"id": "9220538753431240094",
"Ordnungszahl": 6.
"type": "StringFormula",
"name": "Demo-Text-Formel",
"formula-name": "demo_txt_formula",
"description": "Demo-Text-Formelfeld",
"unterscheiden": falsch,
"formula": "demo_factsheet.name_fld"
}
]
}
Erstellen/Aktualisieren/Löschen
Im Folgenden wird beschrieben, wie Sie die Coupa-API zum Ausführen von Aktionen auf Feldern verwenden können
Erstellen
/api/events/{event-id}/fact-sheets/{fact-sheet-id}/fields
Die folgende Nutzlast erstellt neue Felder für ein Ereignis(
9219593444837772101
und Factsheet-ID = 9220538753431210838
:
Nutzdaten
{
"fields": [
{
"type": "Text",
"name": "name-fld-api",
"formula-name": "name_fld-api",
"description": "Namensfeld für API",
"unterscheiden": wahr
}
{
"type": "StringFormula",
"name": "demo-txt-formula-api",
"formula-name": "demo_txt_formula_api",
"description": "Demo-Text-Formelfeld",
"unterscheiden": falsch,
"formula": "demo_factsheet.name_fld_api"
}
]
}
Antwort: 201
{
"result": [
{
"type": "api.post.added",
"Beschreibung": "2 Objekte erstellt."
}
],
"hinzugefügt": 2.
"fields": [
{
"id": "9220538753532394472"
}
{
"id": "9220538753530117686"
}
]
}
Hinweis: Formelfeld braucht nur "_".
Aktualisieren
/api/events/{event-id}/fact-sheets/{fact-sheet-id}/fields
Die folgende Nutzlast aktualisiert ein Feld/Felder.
So aktualisieren Sie jeweils ein oder mehrere Felder:
Nutzdaten:
{
"fields": [
{
"id": "9220538753530117686",
"type": "Text",
"name": "name-fld-api-upd",
"formula-name": "name_fld_api-upd",
"description": "Namensfeld für API",
„unterscheiden“: falsch
},
{
"id": "9220538753532394472",
"type": "StringFormula",
"name": "demo-txt-formula-api-upd",
"formula-name": "demo_txt_formula_api_upd",
"description": "Feldaktualisierung der Demo-Textformel",
"Distincting": wahr,
"formula": "demo_factsheet.name_fld_api_upd"
}
]
}
Antwort: 200 OK
{
"result": [
{
"type": "api.put.updated",
"Beschreibung": "2 Objekte aktualisiert."
}
],
"aktualisiert": 2
}
Löschen
/api/events/{event-id}/fact-sheets/{fact-sheet-id}/fields
Die obige API kann verwendet werden, um mehr als ein Feld gleichzeitig zu löschen.
Nutzdaten:
{
"fields": [
{
"id": "9220538753530117686"
},
{
"id": "9220538753532394472"
}
]
}
Antwort: 200 OK
{
"result": [
{
"type": "fieldDeletionCompleted",
"Beschreibung": "Die folgenden Felder wurden gelöscht: demo-txt-formula-api-upd, name-fld-api-upd.
Im Ganzen wurden 0 Werte bei diesen Feldern entfernt."
}
],
"gelöscht": 2
}
Aktualisierungen werden auf nachsichtige Weise durchgeführt, d. h. wenn die Aktualisierung einer Ressource fehlschlägt, können die anderen erfolgreich sein. Die Nutzlast löschte zwei Felder. Zum Löschen oder Aktualisieren ist die Ereignis-ID erforderlich.
Erfolgreiche Anfragen geben die HTTP-200-Antwort zurück
. Der Text der Antwort enthält die erstellte Anforderung. Bei nicht erfolgreichen Anfragen wird http 400 Bad Request zurückgegeben
. Der Text der Antwort enthält Validierungsfehler, die als XML formatiert sind.