Passar para o conteúdo principal

Como integrar o WiFeed ao Salesforce Data 360

Aprenda a enviar os leads captados no Wi-Fi para o Salesforce Data 360 (Data Cloud): da criação do conector e do Data Stream até a configuração do app de autorização e o cadastro da integração no WiFeed.

Escrito por Gustavo Oliveira

A integração do WiFeed com o Salesforce Data 360 (Data Cloud) permite que os provedores capturem leads automaticamente pelo Wi-Fi e os enviem direto para o Data Cloud da Salesforce. Isso centraliza os contatos captados nas redes Wi-Fi junto aos demais dados da empresa, reduz o trabalho manual e deixa os leads disponíveis para segmentação e ações de marketing.
​

Com essa funcionalidade, sempre que um usuário se conectar ao Wi-Fi e preencher os dados solicitados na campanha, essas informações serão registradas no WiFeed e enviadas para a Ingestion API do Data Cloud. Leads com o mesmo e-mail são tratados como o mesmo perfil, então o registro é atualizado em vez de duplicado.

Antes de começar

⚠️ Atenção

Este guia parte do princípio de que a sua org Salesforce já tem o Data Cloud (Data 360) provisionado e habilitado. Se o Data Cloud ainda não estiver disponível na conta, peça a ativação ao administrador da org ou ao executivo de contas da Salesforce antes de seguir os passos abaixo.

Este guia, você vai reunir quatro informações que serão usadas no final, na configuração do WiFeed. Recomendamos guardá-las em um bloco de notas (no caso das credenciais, em um gerenciador de senhas):

Você também vai precisar do arquivo de schema do WiFeed, disponível para download na Parte 1, passo 3.

Parte 1 - Criando a Ingestion API no Data Cloud

Para darmos início a essa integração, antes é necessário criar dentro do Data Cloud o conector que vai receber os leads enviados pelo WiFeed. Siga as etapas abaixo:


Passo 1 - Abra o Data Cloud Setup

No canto superior direito da tela, clique no ícone de engrenagem (Setup) e selecione Data Cloud Setup. A configuração do Data Cloud abre em uma nova aba.
​

Menu Setup com a opção Data Cloud Setup em destaque

Passo 2 - Crie um conector na Ingestion API

  1. No menu lateral do Data Cloud Setup, em External Integrations, clique em Ingestion API e depois em New.
    ​

  2. Na janela Connect an Ingestion API Source, preencha:

    1. Connector Name (obrigatório): nome do conector, por exemplo WiFeed.

    2. Alias (opcional): apelido do conector, por exemplo WFL. Recomendamos preenchê-lo, porque ele é usado para compor o nome do Data Stream na Parte 2 (por exemplo, WFL-Lead).
      ​

  3. Clique em Save. O conector aparece na lista da Ingestion API.
    ​

    Tela da Ingestion API com o modal Connect an Ingestion API Source

Passo 3 - Faça o upload do schema

Depois de salvo, o conector abre com o status Schema Required.

  1. Baixe o arquivo de schema do WiFeed: ​lead_schema.yaml

  2. Na seção Schema, clique em Upload Files (ou arraste o arquivo) e envie o lead_schema.yaml.
    ​

    Detalhes do conector WiFeed com status Schema Required e a área de upload do schema

  3. Clique em Save.

​​
Conteúdo do arquivo lead_schema.yaml:
​

openapi: 3.0.3
components:
schemas:
Lead:
type: object
properties:
City:
type: string
Company:
type: string
Country:
type: string
Description:
type: string
Email:
type: string
FirstName:
type: string
LastName:
type: string
Phone:
type: string
State:
type: string

Cada entrada em components.schemas vira um objeto do conector (aqui, Lead), e cada propriedade vira um campo que pode ser mapeado no Data Stream.

Importante: o objeto Lead será ingerido com a categoria Profile, usando o campo Email como chave primária. Por isso, todo lead enviado precisa ter o e-mail preenchido. Registros com o mesmo e-mail são tratados como o mesmo perfil e atualizam o registro existente em vez de criar um novo.

Passo 4 - Baixe os endpoints e anote a URL de ingestão

Role até a seção Integration Guide, no fim da página do conector. Lá você encontra o botão Download All Object Endpoints, que baixa um arquivo com os endpoints de ingestão de cada objeto do schema (aqui, Lead).

  1. Clique em Download All Object Endpoints e guarde o arquivo.
    ​

    Seção Integration Guide com o botão Download All Object Endpoints

  2. Abra o arquivo baixado (um YAML no formato OpenAPI) e copie a URL que aparece em servers → url.

  3. ​Guarde essa URL: ela será usada na Parte 4, na configuração do WiFeed.
    ​

    Arquivo de endpoints baixado, com a URL de ingestão em servers.url e o caminho /Lead

A URL segue o formato:

https://<tenant-specific-endpoint>/api/v1/ingest/sources/<Source API Name>

Referência técnica: o arquivo também lista um caminho para cada objeto do schema (aqui, /Lead). O WiFeed envia os leads com POST para a URL de ingestão seguida desse caminho, com um corpo JSON no formato {"data": [ ... ]}. Você não precisa configurar essa chamada: o WiFeed a monta automaticamente.

Parte 2 - Configurando o Data Stream

Com o conector criado, o próximo passo é criar o Data Stream, responsável por gravar no Data Cloud os leads recebidos pela Ingestion API.

Passo 1 - Crie um novo Data Stream

Volte para a aba do app Data Cloud (a mesma de onde você abriu o Data Cloud Setup), abra a aba Data Streams no menu superior e clique em New, no canto superior direito.
​

Lista de Data Streams no Data Cloud com o botão New

Passo 2 - Selecione a fonte e o conector

Em Connected Sources, selecione Ingestion API e avance.
​

Seleção da fonte de dados com Ingestion API marcada em Connected Sources

Na tela New Data Stream, escolha no campo Ingestion API o conector criado na Parte 1 (aqui, WiFeed). Os objetos do schema aparecem na lista. Confira se o objeto Lead está marcado, com 9 atributos e status Available, e avance.
​

Tela New Data Stream com o conector WiFeed selecionado e o objeto Lead marcado


Passo 3 - Defina a categoria e a chave primária

Em Lead Details, preencha:

  1. Category: Profile

  2. Primary Key: Email

  3. Record Modified Field: deixe em branco.

Logo abaixo, a lista Fields (9) mostra os campos do schema com o sufixo __c (por exemplo, Email__c) e o tipo Text. Não é preciso alterar nada; basta avançar.

Lead Details com Category Profile e Primary Key Email, e a lista dos 9 campos do schema

⚠️ Atenção: a categoria não pode ser alterada depois de salva e impacta o faturamento e o funcionamento do Data Cloud. Confira antes de avançar.

Passo 4 - Conclua a criação do Data Stream

Na última etapa, Data Streams to be Deployed, confira:

  • Data Space: default

  • Na aba Profile (1), o Data Stream gerado (aqui, WFL-Lead, formado pelo alias do conector e pelo nome do objeto), com o objeto Lead e o Refresh Mode em Upsert.

Clique em Deploy para criar o Data Stream.

Etapa final do New Data Stream com o Data Space default, o stream WFL-Lead em modo Upsert e o botão Deploy

Parte 3 - Configurando o app de autorização

Com o Data Stream criado, falta configurar na org o app que autoriza o WiFeed a enviar leads para a Ingestion API. É nesta etapa que você vai obter a Consumer Key, o Consumer Secret e o domínio da org.

Passo 1 - Abra o Setup

No canto superior direito, clique no ícone de engrenagem e selecione Setup (não o Data Cloud Setup). O Setup abre em uma nova aba.
​

Menu Setup com a opção Setup em destaque

Passo 2 - Abra o External Client App Manager

No campo Quick Find, no topo do menu lateral, digite app. Na lista filtrada, em Apps → External Client Apps, clique em External Client App Manager.

Setup com a busca por app e o External Client App Manager aberto

Passo 3 - Crie o app e preencha as informações básicas

No External Client App Manager, clique em New External Client App. Na seção Basic Information, preencha os campos obrigatórios:

  1. External Client App Name: nome do app (por exemplo, Integration WiFeed).

  2. API Name: preenchido automaticamente a partir do nome (por exemplo, Integration_WiFeed).

  3. Contact Email: e-mail do responsável pela integração.

  4. Distribution State: Local.

Os demais campos (telefone, URLs, logo e descrição) são opcionais.

Seção Basic Information do novo External Client App preenchida

Passo 4 - Habilite o OAuth

Logo abaixo, na seção API (Enable OAuth Settings):

  1. Marque Enable OAuth.

  2. Em Callback URL, informe:
    ​https://system.wifeed.com.br/new/estabelecimento/configuracoes/integracoes

  3. Em OAuth Scopes, mova da lista Available OAuth Scopes para Selected OAuth Scopes os escopos:

    1. Manage user data via APIs (api)

    2. Perform requests at any time (refresh_token, offline_access)

    3. Manage Data Cloud Ingestion API data (cdp_ingest_api)

Seção API com OAuth habilitado, a Callback URL do WiFeed e os três escopos selecionados

Referência técnica: O escopo cdp_ingest_api é o que permite enviar dados para a Ingestion API. O refresh_token, offline_access permite que o WiFeed renove o acesso sem pedir login de novo.

Passo 5 - Habilite o Client Credentials Flow e crie o app

Em Flow Enablement, marque Enable Client Credentials Flow. Mantenha as demais opções de fluxo e a seção Security como estão. Clique em Create para criar o app.

Flow Enablement com Enable Client Credentials Flow marcado e a seção Security com os valores padrão

Com o Client Credentials Flow, o WiFeed se autentica diretamente com as credenciais do app, sem que um usuário precise fazer login.

Passo 6 - Edite as políticas do app

Depois de criado, o app abre na tela Manage External Client Apps com o status Enabled. Na aba Policies, clique em Edit, no canto direito.

Tela do app Integration WiFeed com a aba Policies e o botão Edit

Passo 7 - Configure as OAuth Policies

Expanda a seção OAuth Policies e ajuste:

  • OAuth Flows and External Client App Enhancements: marque Enable Client Credentials Flow.

  • Run As (Username): informe o usuário da sua org em nome do qual o WiFeed vai enviar os leads (por exemplo, [email protected]).

  • App Authorization → IP Relaxation: selecione Relax IP restrictions.

Mantenha os demais campos com os valores padrão e clique em Save.

Recomendação: crie na Salesforce um usuário exclusivo para a integração e use-o no Run As. Assim, todos os leads enviados pelo WiFeed ficam registrados em nome desse usuário, separados das ações da sua equipe.

Passo 8 - Copie a Consumer Key e o Consumer Secret

Ainda na tela do app, abra a aba Settings. Na seção OAuth Settings, em App Settings, clique em Consumer Key and Secret. A página com as credenciais abre em uma nova aba.

Aba Settings do app Integration WiFeed com o botão Consumer Key and Secret em OAuth Settings

Copie a Consumer Key e o Consumer Secret e guarde-os em um local seguro, como um gerenciador de senhas. Eles serão usados na Parte 4, na configuração do WiFeed.

⚠️ Atenção: a Consumer Key e o Consumer Secret dão acesso à Ingestion API em nome do usuário definido no Run As. Não compartilhe essas credenciais.

Passo 9 - Consulte o domínio da org

Se você não souber o domínio da sua org na Salesforce, consulte-o no Setup. No campo Quick Find, digite domain e clique em Company Settings → My Domain. O domínio aparece em My Domain Details → Current My Domain URL, no formato <nome-da-org>.my.salesforce.com.
​

image: Tela My Domain no Setup com o Current My Domain URL em My Domain Details

Guarde esse domínio junto com a Consumer Key e o Consumer Secret. Ele também será usado na Parte 4.

Parte 4 - Criando a integração no WiFeed

Com a configuração na Salesforce concluída, falta cadastrar a integração no WiFeed usando as informações que você guardou nas partes anteriores.

Passo 1 - Crie a integração

  1. Na sua conta do WiFeed, acesse Configurações → Integrações.
    ​

  2. Clique em Criar integração, dê o nome que preferir e clique em Salvar.
    ​

  3. Selecione o tipo Salesforce Data Cloud.
    ​

Passo 2 - Preencha as credenciais

Na última etapa do cadastro, preencha os campos abaixo:

Campo

O que informar

Onde encontrar

Domain

Domínio da org, com https:// (por exemplo, https://<nome-da-org>.my.salesforce.com)

Parte 3, passo 9

API url

URL de ingestão, exatamente como aparece em servers → url, sem o /Lead no final

Parte 1, passo 4

Consumer Key

Consumer Key do app

Parte 3, passo 8

Consumer Secret

Consumer Secret do app

Parte 3, passo 8

⚠️ Atenção

  • Domain: o campo precisa sempre começar com https://. Por exemplo, se o seu My Domain é provedor.my.salesforce.com, informe https://provedor.my.salesforce.com.

  • API URL: não acrescente o caminho do objeto (/Lead). O WiFeed adiciona esse caminho automaticamente.


​

Após preencher os campos, clique em Salvar.

Passo 3 - Faça um envio de teste e confira no Data Cloud

Com a integração salva, ela aparece na lista de Configurações → Integrações.

  1. Na linha da integração que você criou, clique no ícone Testar (↗), à direita, ao lado dos ícones de editar e excluir.
    ​

  2. O WiFeed envia um lead de teste para o Data Cloud.
    ​

  3. Para conferir se o lead chegou, abra o app Data Cloud, vá até a aba Data Explorer e selecione:

    • Data Space: default

    • Object: Data Lake Object e, ao lado, o objeto criado pela Ingestion API (aqui, WFL-Lead)

O lead de teste aparece na tabela com os campos do schema (City, Company, Country, Description, Email, FirstName etc.).”

⚠️ Atenção: o Data Cloud processa as requisições da Ingestion API de forma assíncrona. Por isso, o lead pode levar alguns minutos para aparecer. Se ele não aparecer logo, aguarde e atualize a consulta.


Dúvidas frequentes

  1. Fiz o teste, mas o lead não aparece no Data Explorer. O que fazer?
    O Data Cloud processa os envios de forma assíncrona, então o lead pode levar alguns minutos para aparecer. Aguarde e atualize a consulta. Se ele continuar sem aparecer, confira se o Data Stream foi criado corretamente (Parte 2) e se você selecionou o Data Space default e o objeto WFL-Lead no Data Explorer.
    ​

  2. Recebi um erro ao salvar ou testar a integração no WiFeed. O que pode ser?
    Na maioria dos casos, o problema está nas credenciais. Confira se o Domain começa com https:// e se a Consumer Key e o Consumer Secret foram copiados inteiros, sem espaços. Verifique também se o Enable Client Credentials Flow está marcado nos dois lugares em que aparece (Parte 3, passos 5 e 7).
    ​

  3. A integração foi salva, mas os leads não são enviados. Por quê?
    Confira se a API url foi informada sem o /Lead no final. Verifique também se o campo Run As está preenchido com um usuário ativo da sua org.
    ​

  4. O teste funciona, mas os leads reais não chegam. O que verificar?
    Confira se os formulários das campanhas pedem o e-mail do usuário. O e-mail é a chave primária da integração, e leads sem e-mail não são gravados no Data Cloud.

  5. Se a mesma pessoa se conectar mais de uma vez, o lead fica duplicado
    Não. Leads com o mesmo e-mail são tratados como o mesmo perfil, então o registro existente é atualizado em vez de duplicado.

Respondeu à sua pergunta?