Zum Inhalt springen

Mehrere Katalogartikel erstellen

post

/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"
    }
  ]
}'

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.
New Stuff!