カタログ項目を更新
put
/catalogs/{catalog_name}/items/{item_id}
カタログのアイテムを更新するには、このエンドポイントを使用します。
item_id が見つからない場合は、このエンドポイントがカタログにアイテムを作成します。このエンドポイントは同期である。
前提条件
このエンドポイントを使用するには、catalogs.replace_item パーミッションを持つAPI キーが必要です。
レート制限
This endpoint has a shared rate limit of 50 requests per minute between all synchronous catalog item endpoints, as documented in API rate limits.
経路パラメータ
| パラメータ|必須|データ型|説明 | |||
|---|---|---|---|
catalog_name |必須|文字列|カタログ名。 | 
      |||
item_id | 
      必須 | String | カタログ項目のID。 | 
リクエストパラメータ
| パラメータ|必須|データ型|説明 | 
|---|
items |必須|配列|アイテム・オブジェクトを含む配列。アイテム・オブジェクトは、id フィールドを除き、カタログに存在するフィールドを含むべきである。1つのリクエストにつき1つのアイテムオブジェクトのみが許可される。 | 
    
リクエスト例
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
curl --location --request PUT 'https://rest.iad-03.braze.com/catalogs/restaurants/items/restaurant1' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR-REST-API-KEY' \
--data-raw '{
  "items": [
    {
      "Name": "Restaurant",
      "Loyalty_Program": false,
      "Location": {
        "Latitude": 33.6112,
        "Longitude": -117.8711
      },
      "Open_Time": "2021-09-03T09:03:19.967+00:00"
    }
  ]
}'
応答
このエンドポイントには、200 、400 、404 の3つのステータスコード・レスポンスがある。
成功応答例
ステータスコード200 、以下のレスポンスボディを返すことができる。
1
2
3
{
  "message": "success"
}
エラー応答例
ステータスコード400 、以下のレスポンスボディを返すことができる。遭遇する可能性のあるエラーの詳細については、「トラブルシューティング」を参照してください。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{
  "errors": [
    {
      "id": "invalid-fields",
      "message": "Some of the fields given do not exist in the catalog",
      "parameters": [
        "id"
      ],
      "parameter_values": [
        "restaurant1"
      ]
    }
  ],
  "message": "Invalid Request"
}
トラブルシューティング
次の表は、返される可能性のあるエラーと、それに関連するトラブルシューティングの手順を示したものです。
| トラブルシューティング | |
|---|---|
arbitrary-error |任意のエラーが発生しました。再度お試しいただくか、サポートまでお問い合わせください。 | 
      |
catalog-not-found | 
      カタログ名が有効であることを確認する。 | 
filtered-set-field-too-long |項目の文字数制限を超えるフィルタリングセットでフィールド値が使用されています。 | 
      |
id-in-body | 
      リクエストボディのアイテムIDを削除する。 | 
ids-too-large |各アイテムIDの文字数制限は250文字です。 | 
      |
invalid-ids |アイテムID名に使用できる文字は、アルファベット、数字、ハイフン、アンダースコアです。 | 
      |
invalid-fields |APIリクエストで送信するすべてのフィールドがカタログにすでに存在することを確認する。これはエラーにあるIDフィールドとは関係ない。 | 
      |
invalid-keys-in-value-object | 
      アイテム・オブジェクト・キーに. または$ を含めることはできない。 | 
    
item-already-exists | 
      そのアイテムはすでにカタログに存在します。 | 
item-array-invalid | 
      items はオブジェクトの配列でなければならない。 | 
    
items-too-large |各項目の文字数制限は5,000文字です。 | 
      |
request-includes-too-many-items |1つのリクエストにつき1つのカタログ項目しか作成できません。 | 
      |
too-deep-nesting-in-value-object | 
      アイテムオブジェクトは50レベル以上の入れ子を持つことができない。 | 
unable-to-coerce-value |アイテムタイプは変換できません。 | 
      
   Edit this page on GitHub