Mehrere Katalogartikel erstellen
/catalogs/{catalog_name}/items
Verwenden Sie diesen Endpunkt, um mehrere Artikel in Ihrem Katalog zu erstellen.
Jede Anfrage kann bis zu 50 Artikel enthalten. Dieser Endpunkt ist asynchron.
Voraussetzungen
Um diesen Endpunkt zu verwenden, benötigen Sie einen API-Schlüssel mit der Berechtigung catalogs.add_items.
Rate-Limit
Für diesen Endpunkt gilt ein gemeinsames Rate-Limit von 16.000 Anfragen pro Minute für alle asynchronen Katalogeintrags-Endpunkte, wie in API-Rate-Limits dokumentiert.
Pfad-Parameter
| Parameter | Erforderlich | Datentyp | Beschreibung |
|---|---|---|---|
catalog_name |
Erforderlich | String | Name des Katalogs. |
Anfrage-Parameter
| Parameter | Erforderlich | Datentyp | Beschreibung |
|---|---|---|---|
items |
Erforderlich | Array | Ein Array, das Artikel-Objekte enthält. Die Artikel-Objekte sollten alle Felder des Katalogs enthalten. Es sind bis zu 50 Artikel-Objekte pro Anfrage zulässig. |
Beispielanfrage
curl --location --request POST 'https://rest.iad-03.braze.com/catalogs/restaurants/items' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR-REST-API-KEY' \
--data-raw '{
"items": [
{
"id": "restaurant1",
"Name": "Restaurant1",
"City": "New York",
"Cuisine": "American",
"Rating": 5,
"Loyalty_Program": true,
"Location": [-73.988103, 40.779109],
"Preferences": {
"favorite_brand": "Nike",
"shirt_size": "L"
},
"Top_Dishes": [
"Hamburger",
"Deluxe Cheeseburger"
],
"Created_At": "2022-11-01T09:03:19.967+00:00"
},
{
"id": "restaurant2",
"Name": "Restaurant2",
"City": "New York",
"Cuisine": "American",
"Rating": 10,
"Loyalty_Program": true,
"Location": [-73.988103, 40.779109],
"Preferences": {
"favorite_brand": "Nike",
"shirt_size": "L"
},
"Top_Dishes": [
"Hot Dog",
"French Fries"
],
"Created_At": "2022-11-02T09:03:19.967+00:00"
},
{
"id": "restaurant3",
"Name": "Restaurant3",
"City": "New York",
"Cuisine": "American",
"Rating": 3,
"Loyalty_Program": false,
"Location": [-73.988103, 40.779109],
"Preferences": {
"favorite_brand": "Nike",
"shirt_size": "L"
},
"Top_Dishes": [
"Buffalo Wings",
"Philly Cheesesteak"
],
"Created_At": "2022-11-03T09:03:19.967+00:00"
}
]
}'

Das Feld Location verwendet den Datentyp geo, der ein Array im Format [Längengrad, Breitengrad] erwartet.
Antwort
Für diesen Endpunkt gibt es drei Statuscode-Antworten: 202, 400 und 404.
Beispiel für eine erfolgreiche Antwort
Der Statuscode 202 könnte den folgenden Antworttext zurückgeben.
{
"message": "success"
}
Beispiel für eine Fehlerantwort
Der Statuscode 400 könnte den folgenden Antworttext zurückgeben. Unter Fehlerbehebung finden Sie weitere Informationen zu Fehlern, die auftreten können.
{
"errors": [
{
"id": "invalid-fields",
"message": "Some of the fields given do not exist in the catalog",
"parameters": [
"id"
],
"parameter_values": [
"restaurant1"
]
}
],
"message": "Invalid Request"
}
Fehlerbehebung
In der folgenden Tabelle finden Sie mögliche zurückgegebene Fehler und die entsprechenden Schritte zur Fehlerbehebung.
| Fehler | Fehlerbehebung |
|---|---|
catalog-not-found |
Prüfen Sie, ob der Katalogname gültig ist. |
ids-not-strings |
Artikel-IDs müssen vom Typ String sein. |
ids-not-unique |
Artikel-IDs müssen in der Anfrage eindeutig sein. |
ids-too-large |
Artikel-IDs dürfen nicht mehr als 250 Zeichen lang sein. |
invalid-ids |
Artikel-IDs dürfen nur Buchstaben, Zahlen, Bindestriche und Unterstriche enthalten. |
invalid-fields |
Stellen Sie sicher, dass alle Felder, die Sie in der API-Anfrage senden, bereits im Katalog vorhanden sind. Dies hat nichts mit dem in der Fehlermeldung erwähnten ID-Feld zu tun. |
invalid-keys-in-value-object |
Artikel-Objektschlüssel dürfen nicht . oder $ enthalten. |
item-array-invalid |
items muss ein Array von Objekten sein. |
items-missing-ids |
Einige Artikel haben keine Artikel-IDs. Prüfen Sie, ob jeder Artikel eine Artikel-ID hat. |
items-too-large |
Artikelwerte dürfen nicht mehr als 5.000 Zeichen umfassen. |
request-includes-too-many-items |
Ihre Anfrage enthält zu viele Artikel. Das Limit pro Anfrage beträgt 50 Artikel. |
too-deep-nesting-in-value-object |
Artikel-Objekte dürfen nicht mehr als 50 Verschachtelungsebenen haben. |
unable-to-coerce-value |
Artikeltypen können nicht konvertiert werden. |