Skip to content

Criar seleção de catálogo

post

/catalogs/{catalog_name}/selections

Use este endpoint para criar uma seleção em seu catálogo.

Pré-requisitos

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

Limite de taxa

Esse endpoint tem um limite de taxa compartilhado de 50 solicitações por minuto entre todos os endpoints assíncronos de campos e seleções 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
selection Obrigatória Objeto Um objeto que contém critérios de seleção. Consulte o objeto de seleção de catálogo para uma descrição completa do objeto e seus campos.

Parâmetros do objeto de seleção

Parâmetro Obrigatória Tipo de dados Descrição
name Obrigatória String O nome da seleção de catálogo.
description Opcional String Uma descrição da seleção de catálogo.
external_id Obrigatória String Um identificador único para a seleção.
source Opcional String A origem dos dados do catálogo. Para catálogos do Shopify, use "Shopify". Os valores aceitos são "Shopify" e "Braze".
filters Opcional Array Um array de objetos de filtro a serem aplicados aos itens do catálogo. Você pode especificar até quatro filtros por solicitação. Se nenhum filtro for fornecido, todos os itens do catálogo são incluídos.
results_limit Opcional Inteiro O número máximo de resultados a retornar. Deve ser um número entre 1 e 50.
sort_field Opcional String O campo para ordenar os resultados. Deve ser usado em conjunto com sort_order. Se sort_field e sort_order não estiverem presentes, os resultados são randomizados.
sort_order Opcional String A ordem para classificar os resultados. Os valores aceitos são "asc" (crescente) ou "desc" (decrescente). Deve ser usado em conjunto com sort_field. Se sort_field e sort_order não estiverem presentes, os resultados são randomizados.

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
curl --location --request POST 'https://rest.iad-03.braze.com/catalogs/restaurants/selections' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR-REST-API-KEY' \
--data-raw '{
  "selection": {
    "name": "favorite-restaurants",
    "description": "Favorite restaurants in NYC",
    "external_id": "favorite-nyc-restaurants",
    "filters": [
      {
        "field": "City",
        "operator": "equals",
        "value": "NYC"
      },
      {
        "field": "Rating",
        "operator": "greater than",
        "value": 7
      }
    ],
    "results_limit": 10,
    "sort_field": "Rating",
    "sort_order": "desc"
  }
}'

Operadores de filtro

Tipo de campo Operadores suportados
string equals, does not equal
number equals, does not equal, greater than, less than
boolean is
time before, after
array includes value, does not include value

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": "catalog-not-found",
      "message": "Could not find catalog",
      "parameters": [
        "catalog_name"
      ],
      "parameter_values": [
        "restaurants"
      ]
    }
  ],
  "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.
company-size-limit-already-reached O limite de tamanho do armazenamento do catálogo foi atingido.
selection-limit-reached O limite de seleções do catálogo foi atingido.
invalid-selection Verifique se a seleção é válida.
too-many-filters Verifique se a seleção tem muitos filtros.
selection-name-already-exists Verifique se o nome da seleção já existe no catálogo.
selection-has-invalid-filter Verifique se o filtro da seleção é válido.
selection-invalid-results-limit Verifique se o limite de resultados da seleção é válido.
invalid-sorting Verifique se a ordenação da seleção é válida.
invalid-sort-field Verifique se o campo de ordenação da seleção é válido.
invalid-sort-order Verifique se a ordem de classificação da seleção é válida.
selection-contains-too-many-arrays Verifique se a seleção contém mais de um campo com o tipo array. Apenas um é suportado.
New Stuff!