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 |
Há itens que não têm IDs de item. Verifique se cada item tem um ID de item. |
item-array-invalid |
items deve 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. |