Contentful
O Contentful é um sistema de gerenciamento de conteúdo headless que permite que equipes criem, gerenciem e distribuam conteúdo estruturado para qualquer canal. O app da Braze para o Contentful conecta esse conteúdo diretamente ao seu envio de mensagens na Braze: você pode trazer entradas do Contentful para as mensagens de forma dinâmica no momento do envio com o Conteúdo Conectado, ou sincronizar campos selecionados em Content Blocks da Braze para reutilização em Campaigns e Canvas.
Essa integração é mantida pelo Contentful.
Sobre esta integração
Esta página explica como configurar o app da Braze no Contentful e como usar ativos do Contentful na Braze. Com esta integração, você pode:
- Gerar uma chamada de Connected Content da Braze pronta para colar em uma entrada publicada, junto com as Liquid tags necessárias para referenciar cada campo em uma mensagem da Braze.
- Sincronizar campos selecionados de uma entrada em um Content Block da Braze, com um local escolhido, para que o conteúdo fique disponível nativamente no dashboard da Braze.
O resultado é uma única fonte de verdade para o conteúdo. Editores de conteúdo continuam trabalhando no Contentful com seus fluxos de trabalho de revisão e localização existentes, e profissionais de marketing constroem Campaigns na Braze usando conteúdo que já foi aprovado e está atualizado.
Pré-requisitos
Antes de começar, você precisará do seguinte:
| Requisito | Descrição |
|---|---|
| Uma conta Contentful | Uma conta Contentful com acesso de Space Admin ao espaço onde você instala o app. |
| Uma chave de API do Contentful | Uma chave da Content Delivery API (CDA) do Contentful com acesso de leitura. Crie essa chave no Contentful em Settings > API keys. |
| Uma chave da API REST da Braze | Uma chave da API REST da Braze com as permissões content_blocks.create, content_blocks.update, content_blocks.info e content_blocks.list. Crie essa chave no dashboard da Braze em Configurações > Chaves de API. Necessária apenas para sincronização de Content Blocks. |
| Um endpoint REST da Braze | A URL do seu endpoint REST da Braze. Seu endpoint depende da URL da Braze para a sua instância. Necessário apenas para sincronização de Content Blocks. |
Integração
Etapa 1: Instalar o app da Braze no Contentful
- Faça login no app web do Contentful.
- Selecione Apps > Marketplace.
- Localize o app da Braze e selecione-o.
- Selecione Install. A janela Manage app access será exibida.
- Em Environments, selecione os ambientes nos quais você deseja instalar o app.
- Selecione Authorize access. A tela de configuração do app será exibida.
- Em Contentful API key, insira sua chave de API do Content Delivery.
- Para ativar a sincronização de Content Blocks, insira sua chave da API REST da Braze e selecione seu endpoint REST da Braze.
- Selecione Install to selected environments.

Se você vir um erro informando que é necessária uma chave de API válida do Contentful, verifique se a chave tem acesso de leitura à Content Delivery API (CDA).
Etapa 2: Adicionar o app da Braze a um tipo de conteúdo
- No app web do Contentful, acesse a guia Content model.
- Selecione um tipo de conteúdo existente ou crie um novo.
- Role até a seção Sidebar.
- Adicione Braze da lista de itens disponíveis.
- Selecione Save.
Repita esse processo para cada tipo de conteúdo que você deseja disponibilizar para a Braze.
Etapa 3: Conectar uma entrada à Braze
- Acesse a guia Content e selecione Add entry, escolhendo um tipo de conteúdo que tenha o app da Braze em sua barra lateral. Você também pode abrir uma entrada existente.
- Preencha os campos da entrada e publique a entrada. A Braze só pode recuperar conteúdo publicado.
- Na barra lateral da entrada, selecione Generate Braze Connected Content para gerar uma chamada de Connected Content e Liquid tags para colar em uma mensagem da Braze, ou Create Content Block para enviar os campos selecionados para a Braze como um Content Block.
Sincronizar Content Blocks
Etapa 1: Sincronizar uma entrada com um Content Block da Braze
- Abra uma entrada publicada que tenha o app da Braze na barra lateral.
- Na barra lateral, selecione Create Content Block.
- Selecione o locale a ser usado. Um Content Block é criado por locale selecionado.
- Selecione os campos a serem incluídos no Content Block.
- Selecione Send to Braze. O Content Block é criado no seu espaço de trabalho da Braze e fica disponível em Content > Content Block.
Etapa 2: Manter o conteúdo sincronizado atualizado
Escolha o método que melhor se adequa à frequência com que o conteúdo muda:
- A sincronização de Content Blocks é ideal para conteúdos que estão estáveis no momento do envio e são reutilizados em várias mensagens. O conteúdo é renderizado sem uma chamada externa.
- O Connected Content é ideal para conteúdos que podem mudar entre o momento em que uma Campaign é criada e o momento em que é entregue, porque o conteúdo é buscado no momento da entrega.
Para saber mais sobre como o app da Braze no Contentful funciona, consulte a documentação do app Braze do Contentful.
Usar Connected Content
Etapa 1: Adicionar a chamada de Connected Content a uma mensagem da Braze
- No Contentful, abra uma entrada publicada e selecione Generate Braze Connected Content na barra lateral.
- Selecione os campos a incluir e, em seguida, selecione Next.
- Se a entrada tiver vários locales, selecione os locales a incluir e, em seguida, selecione Next.
- Copie a chamada de Connected Content gerada.
- Na Braze, crie ou abra uma Campaign ou mensagem de Canvas.
- Cole a chamada de Connected Content no início do corpo da mensagem.
- Cole as Liquid tags onde o conteúdo deve aparecer.
Etapa 2: Referenciar campos com Liquid
A notação de ponto JSON permite especificar qual parte do corpo da resposta do Contentful incluir na sua mensagem. Isso varia de acordo com o seu caso de uso. O app gera a Liquid tag correta para cada campo. As tags são organizadas por namespace de locale quando a entrada é localizada, e por tipo de conteúdo quando não é.
| Cenário | Exemplo de Liquid tag |
|---|---|
| Entrada localizada (en-US) | {{response.data.enUS.body}} |
| Entrada localizada (es-AR) | {{response.data.esAR.body}} |
| Entrada não localizada | {{response.data.blogPost.body}} |
| Lista de texto curto, concatenada | {{response.data.recipe.ingredients | join: ', '}} |
| Lista de texto curto, item único | {{response.data.recipe.ingredients[0]}} |
| Campo de localização | {{response.data.venue.address.lat}} e {{response.data.venue.address.lon}} |
| Arquivo de mídia único | {{response.data.blogPost.image.url}} |
| Coleção de ativos, item único | {{response.data.blogPost.imagesCollection.items[0].url}} |
| Múltiplas referências, item único | {{response.data.event.contactList[0].name}} |
| Múltiplas referências, em loop | {% for contact in response.data.event.contactList %} {{contact.name}} {% endfor %} |
Os campos de mídia também expõem title, description, contentType, fileName, size, width e height, além de url.
Etapa 3: Pré-visualizar e enviar
- Use a guia Preview & Test da Braze para confirmar que a chamada de Connected Content é resolvida e que as Liquid tags renderizam os valores esperados.
- Envie uma mensagem de teste para você ou para um usuário teste.
- Lance a Campaign ou o Canvas depois que o conteúdo for renderizado corretamente.
Considerações
- As entradas devem estar publicadas. A Braze recupera conteúdo por meio da Content Delivery API, que retorna apenas entradas publicadas. Rascunhos ou entradas alteradas mas não publicadas não são renderizados.
- O Connected Content adiciona uma requisição no momento do envio. O conteúdo é buscado quando cada mensagem é entregue. Siga as orientações em Connected Content sobre cache, timeouts e interrupção de mensagens caso a requisição falhe, e certifique-se de que os limites de frequência de API do seu plano Contentful possam absorver seu volume de envio. Para os limites de frequência do Contentful, consulte Limites técnicos do Contentful.
- Content Blocks são específicos do espaço de trabalho. Os Content Blocks sincronizados do Contentful são criados no espaço de trabalho da Braze vinculado à chave da API REST que você configurou. Para usar o mesmo conteúdo em outro espaço de trabalho, configure o app para esse espaço de trabalho também.
- Locais criam saídas separadas. Selecionar múltiplos locais gera Liquid tags separadas (Connected Content) ou Content Blocks separados (sincronização), um por local.
Solução de problemas
| Problema | Resolução |
|---|---|
| “A valid Contentful API key is required” durante a instalação | Confirme se a chave é uma chave da Content Delivery API (CDA) com acesso de leitura e se ela pertence ao espaço no qual você está fazendo a instalação. |
| Liquid tags aparecem em branco na prévia da Braze | Verifique se a entrada está publicada, se o campo possui conteúdo e se o local na tag corresponde a um local configurado na entrada. |
| A chamada de Connected Content retorna um erro na Braze | Verifique o Space ID, o environment e o access token na chamada gerada e teste o endpoint diretamente. A Braze registra erros de Connected Content no log de atividade de mensagens. |
| O Content Block não aparece na Braze | Confirme se a chave da API REST da Braze possui as permissões necessárias de Content Block e se o endpoint REST corresponde à sua instância da Braze. |
| Campos em uma lista de referência retornam valores vazios | Verifique se a lista contém múltiplos tipos de conteúdo; percorra a lista em loop em vez de acessar por índice. |