Skip to content

Criar vários itens de catálogo

post

/catalogs/{catalog_name}/items

Use esse endpoint para criar vários itens no seu catálogo.

Cada solicitação pode suportar até 50 itens. Esse endpoint é assíncrono.

Pré-requisitos

Para usar esse endpoint, você precisará de uma chave de API com a permissão catalogs.add_items.

Limite de taxa

Esse endpoint tem um limite de taxa compartilhado de 16.000 solicitações por minuto entre todos os endpoints assíncronos de itens de catálogo, conforme documentado em Limites de taxa da API.

Parâmetros de 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 Um vetor que contém objetos de item. Os objetos de item devem conter todos os campos do catálogo. São permitidos até 50 objetos de item 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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
curl --location --request POST '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": "Restaurant1",
      "City": "New York",
      "Cuisine": "American",
      "Rating": 5,
      "Loyalty_Program": true,
      "Location": [-73.988103, 40.779109],
      "Preferences": {
        "favorite_brand": "Nike",
        "shirt_size": "L"
      },
      "Top_Dishes": [
        "Hamburger",
        "Deluxe Cheeseburger"
      ],
      "Created_At": "2022-11-01T09:03:19.967+00:00"
    },
    {
      "id": "restaurant2",
      "Name": "Restaurant2",
      "City": "New York",
      "Cuisine": "American",
      "Rating": 10,
      "Loyalty_Program": true,
      "Location": [-73.988103, 40.779109],
      "Preferences": {
        "favorite_brand": "Nike",
        "shirt_size": "L"
      },
      "Top_Dishes": [
        "Hot Dog",
        "French Fries"
      ],
      "Created_At": "2022-11-02T09:03:19.967+00:00"
    },
    {
      "id": "restaurant3",
      "Name": "Restaurant3",
      "City": "New York",
      "Cuisine": "American",
      "Rating": 3,
      "Loyalty_Program": false,
      "Location": [-73.988103, 40.779109],
      "Preferences": {
        "favorite_brand": "Nike",
        "shirt_size": "L"
      },
      "Top_Dishes": [
        "Buffalo Wings",
        "Philly Cheesesteak"
      ],
      "Created_At": "2022-11-03T09:03:19.967+00:00"
    }
  ]
}'

Resposta

Existem 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 saber mais 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-not-strings Os IDs de item devem ser do tipo string.
ids-not-unique Os IDs de item devem ser exclusivos na solicitação.
ids-too-large Os IDs de item não podem ter mais de 250 caracteres.
invalid-ids Os IDs de item só podem conter letras, números, hifens e underscores.
invalid-fields Confirme se todos os campos que você 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 $.
item-array-invalid items deve ser um vetor de objetos.
items-missing-ids Alguns itens não têm IDs de item. Verifique se cada item tem um ID de item.
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 item não podem ser convertidos.
New Stuff!