Skip to content

Katalog erstellen

post

/catalogs

Verwenden Sie diesen Endpunkt, um einen Katalog zu erstellen.

Voraussetzungen

Um diesen Endpunkt zu verwenden, benötigen Sie einen API-Schlüssel mit der Berechtigung catalogs.create.

Rate-Limit

Für diesen Endpunkt gilt ein gemeinsames Rate-Limit von 50 Anfragen pro Minute für alle synchronen Katalog-Endpunkte, wie in API-Rate-Limits dokumentiert.

Anfrageparameter

Parameter Erforderlich Datentyp Beschreibung
catalogs Erforderlich Array Ein Array, das Katalogobjekte enthält. Für diese Anfrage ist nur ein Katalogobjekt zulässig.

Katalogobjekt-Parameter

Parameter Erforderlich Datentyp Beschreibung
name Erforderlich String Der Name des Katalogs, den Sie erstellen möchten.
description Erforderlich String Die Beschreibung des Katalogs, den Sie erstellen möchten.
fields Erforderlich Array Ein Array von Objekten, wobei das Objekt die Schlüssel name und type enthält.

Beispielanfrage

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
curl --location --request POST 'https://rest.iad-03.braze.com/catalogs' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR-REST-API-KEY' \
--data-raw '{
  "catalogs": [
    {
      "name": "restaurants",
      "description": "My Restaurants",
      "fields": [
        {
          "name": "id",
          "type": "string"
        },
        {
          "name": "Name",
          "type": "string"
        },
        {
          "name": "City",
          "type": "string"
        },
        {
          "name": "Cuisine",
          "type": "string"
        },
        {
          "name": "Rating",
          "type": "number"
        },
        {
          "name": "Loyalty_Program",
          "type": "boolean"
        },
        {
          "name": "Location",
          "type": "geo"
        },
        {
          "name": "Preferences",
          "type": "object"
        },
        {
          "name": "Top_Dishes",
          "type": "array"
        },
        {
          "name": "Created_At",
          "type": "time"
        }
      ]
    }
  ]
}'

Antwort

Für diesen Endpunkt gibt es zwei Statuscode-Antworten: 201 und 400.

Beispiel für eine erfolgreiche Antwort

Der Statuscode 201 könnte den folgenden Antworttext zurückgeben.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
{
  "catalogs": [
    {
      "description": "My Restaurants",
      "fields": [
        {
          "name": "id",
          "type": "string"
        },
        {
          "name": "Name",
          "type": "string"
        },
        {
          "name": "City",
          "type": "string"
        },
        {
          "name": "Cuisine",
          "type": "string"
        },
        {
          "name": "Rating",
          "type": "number"
        },
        {
          "name": "Loyalty_Program",
          "type": "boolean"
        },
        {
          "name": "Location",
          "type": "geo"
        },
        {
          "name": "Preferences",
          "type": "object"
        },
        {
          "name": "Top_Dishes",
          "type": "array"
        },
        {
          "name": "Created_At",
          "type": "time"
        }
      ],
      "name": "restaurants",
      "num_items": 0,
      "updated_at": "2022-11-02T20:04:06.879+00:00"
    }
  ],
  "message": "success"
}

Beispiel einer Fehlerantwort

Der Statuscode 400 könnte den folgenden Antworttext zurückgeben. Unter Fehlerbehebung finden Sie weitere Informationen zu Fehlern, die auftreten können.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{
  "errors": [
    {
      "id": "catalog-name-already-exists",
      "message": "A catalog with that name already exists",
      "parameters": [
        "name"
      ],
      "parameter_values": [
        "restaurants"
      ]
    }
  ],
  "message": "Invalid Request"
}

Fehlerbehebung

In der folgenden Tabelle finden Sie eine Liste möglicher zurückgegebener Fehler und die entsprechenden Schritte zur Fehlerbehebung.

Fehler Fehlerbehebung
catalog-array-invalid catalogs muss ein Array von Objekten sein.
catalog-name-already-exists Ein Katalog mit diesem Namen existiert bereits.
catalog-name-too-large Das Zeichenlimit für einen Katalognamen beträgt 250.
description-too-long Das Zeichenlimit für die Beschreibung beträgt 250.
field-names-not-unique Derselbe Feldname wird zweimal referenziert.
field-names-too-large Das Zeichenlimit für einen Feldnamen beträgt 250.
id-not-first-column Die id muss das erste Feld im Array sein. Prüfen Sie, ob der Typ ein String ist.
invalid-catalog-name Der Katalogname darf nur Buchstaben, Zahlen, Bindestriche und Unterstriche enthalten.
invalid-field-names Felder dürfen nur Buchstaben, Zahlen, Bindestriche und Unterstriche enthalten.
invalid-field-types Stellen Sie sicher, dass die Feldtypen gültig sind.
invalid-fields fields ist nicht korrekt formatiert.
too-many-catalog-atoms Sie können nur einen Katalog pro Anfrage erstellen.
too-many-fields Die Anzahl der Felder ist auf 500 begrenzt.
New Stuff!