Skip to content

カタログを作成する

post

/catalogs

このエンドポイントを使用してカタログを作成する。

前提条件

このエンドポイントを使用するには、API キーcatalogs.createの権限が必要です。

レート制限

リクエストパラメーター

パラメータ 必須 データ型 説明
catalogs 必須 配列 カタログ・オブジェクトを含む配列。このリクエストでは、カタログオブジェクトは 1 つのみ許可されます。

カタログ・オブジェクトのパラメータ

パラメータ 必須 データ型 説明
name 必須 文字列 作成したいカタログの名前。
description 必須 文字列 作成したいカタログの説明。
fields 必須 配列 オブジェクトにキー nametype が含まれるオブジェクト配列。

例のリクエスト

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
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": "object"
        },
        {
          "name": "Top_Dishes",
          "type": "array"
        },
        {
          "name": "Created_At",
          "type": "time"
        }
      ]
    }
  ]
}'

応答

このエンドポイントには2つのステータスコード応答があります: 201400

成功応答の例

ステータスコード 201 は、次の応答本文を返す可能性があります。

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
{
  "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": "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"
}

エラー応答例

ステータスコード 400 は、次の応答本文を返す可能性があります。遭遇する可能性のあるエラーの詳細については、「トラブルシューティング」を参照のこと。

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"
}

トラブルシューティング

以下の表は、返される可能性のあるエラーと、それに関連するトラブルシューティングの手順を示したものである。

エラー トラブルシューティング
catalog-array-invalid catalogs はオブジェクト配列でなければなりません。
catalog-name-already-exists その名前のカタログはすでに存在する。
catalog-name-too-large カタログ名の文字数制限は250文字である。
description-too-long 説明文の文字数制限は250文字である。
field-names-not-unique 同じフィールド名が2回参照されている。
field-names-too-large フィールド名の文字数制限は250文字である。
id-not-first-column id は、配列の最初のフィールドである必要があります。型が文字列であることを確認する。
invalid-catalog-name カタログ名にはアルファベット、数字、ハイフン、アンダースコアのみを含めることができる。
invalid-field-names フィールドに含めることができるのは、アルファベット、数字、ハイフン、アンダースコアのみである。
invalid-field-types フィールドタイプが有効であることを確認する。
invalid-fields fields が正しくフォーマットされていない。
too-many-catalog-atoms 1つのリクエストにつき1つのカタログしか作成できない。
too-many-fields フィールド数の上限は500である。
「このページはどの程度役に立ちましたか?」
New Stuff!