edita vários itens do catálogo
/catalogs/{catalog_name}/items
Use este endpoint para editar vários itens existentes em seu catálogo.
Cada solicitação pode suportar até 50 itens. Esse ponto de extremidade é assíncrono.
Pré-requisitos
Para usar esse endpoint, você precisará de uma chave de API com a permissão catalogs.update_items.
Limite de taxa
Parâmetros da jornada
| Parâmetro | Obrigatória | Tipo de dados | Descrição | 
|---|---|---|---|
| catalog_name | Obrigatória | String | Nome do catálogo. | 
Parâmetros de solicitação
| Parâmetro | Obrigatória | Tipo de dados | Descrição | 
|---|---|---|---|
| items | Obrigatória | Vetor | Uma matriz que contém objetos de item. Os objetos de item devem conter campos que existem no catálogo. Até 50 objetos de item são permitidos por solicitação. | 
Exemplo de solicitação
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
curl --location --request PATCH '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": "Restaurant",
      "Loyalty_Program": false,
      "Location": {
        "Latitude": 33.6112,
        "Longitude": -117.8711
      },
      "Top_Dishes": {
        "$add": [
          "Biscuits",
          "Coleslaw"
        ],
        "$remove": [
          "French Fries"
        ]
      },
      "Open_Time": "2021-09-03T09:03:19.967+00:00"
    },
    {
      "id": "restaurant3",
      "City": "San Francisco",
      "Rating": 2,
      "Top_Dishes": [
        "Buffalo Wings",
        "Philly Cheesesteak"
      ]
    }
  ]
}'
Os operadores $add e $remove são aplicáveis somente a campos do tipo matriz e são compatíveis apenas com os pontos de extremidade PATCH.
Resposta
Há três respostas de código de status para esse endpoint: 202, 400 e 404.
Exemplo de resposta bem-sucedida
O código de status 202 poderia retornar o seguinte corpo de resposta.
1
2
3
{
  "message": "success"
}
Exemplo de resposta de erro
O código de status 400 poderia retornar o seguinte corpo de resposta. Consulte Solução de problemas para obter mais informações sobre os erros que você pode encontrar.
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"
}
Solução de problemas
A tabela a seguir lista os possíveis erros retornados e as etapas de solução de problemas associadas.
| Erro | Solução de problemas | 
|---|---|
| catalog-not-found | Verifique se o nome do catálogo é válido. | 
| ids-too-large | Os IDs de item não podem ter mais de 250 caracteres. | 
| ids-not-strings | As IDs de item devem ser do tipo string. | 
| ids-not-unique | As IDs de item devem ser exclusivas na solicitação. | 
| invalid-ids | Os IDs de itens só podem conter letras, números, hifens e underscores. | 
| invalid-fields | Confirme se todos os campos que está enviando na solicitação de API já existem no catálogo. Isso não está relacionado ao campo ID mencionado no erro. | 
| invalid-keys-in-value-object | As chaves de objeto do item não podem incluir .ou$. | 
| items-missing-ids | Alguns itens não têm IDs de item. Verifique se cada item tem um ID de item. | 
| item-array-invalid | itemsdeve ser um vetor de objetos. | 
| items-too-large | Os valores dos itens não podem exceder 5.000 caracteres. | 
| request-includes-too-many-items | Sua solicitação tem muitos itens. O limite de itens por solicitação é de 50. | 
| too-deep-nesting-in-value-object | Os objetos de item não podem ter mais de 50 níveis de aninhamento. | 
| unable-to-coerce-value | Os tipos de itens não podem ser convertidos. | 
 Editar esta página no GitHub
   Editar esta página no GitHub