Este artigo irá demonstrar como você pode utilizar a API do 3C Plus para alimentar suas campanhas com listas de mailing de maneira automatizada. É muito interessante integrar com esta funcionalidade pois ela facilita o processo e evita erros operacionais.
Para começar, precisamos entender o conceito de campanhas e listas do 3C Plus. Nossa plataforma não permite que um operador conecte simultaneamente em 2 campanhas diferentes. Ao invés disso, as campanhas podem conter várias listas de mailing sendo discadas conforme o peso/prioridade definido.
Então, o primeiro passo para enviar mailing para o 3C Plus é descobrir o código da campanha que você deseja que receba a nova lista. Para isso basta realizar a chamada para a endpoint GET Campaigns e listar em sua tela as campanhas existentes, de forma que o usuário possa optar por uma delas.
Após selecionada a campanha, podemos já partir para o envio da lista. Nossa API permite que este envio seja feito de 2 formas: Envio de um arquivo CSV ou Envio dos contatos em formato JSON.
Aconselhamos que opte pelo formato CSV caso as listas que você envia sejam grandes, com mais de 10.000 linhas, por exemplo. Ou pelo formato JSON se você deseja enviar menos contatos com maior frequência.
Envio de um arquivo CSV
Para enviar uma lista usando o formato CSV, você poderá utilizar a endpoint POST /campaigns/{campaign-id}/lists/csv.
Por exemplo, se o seu arquivo CSV tiver as colunas na seguinte ordem:
Codigo_do_cliente,Nome,Cpf,Valor,Telefone1,Telefone2,Telefone3,Telefone4,...
curl 'https://{{DOMINIO_EMPRESA}}.3c.fluxoti.com/api/v1/campaigns/{{ID_CAMPANHA}}/lists/csv?api_token={{TOKEN_API}}' \
--form 'name="minha lista"' \
--form 'header[0]="identifier"' \
--form 'header[1]="Nome"' \
--form 'header[2]="Cpf"' \
--form 'header[3]="Valor"' \
--form 'header[4]="areacodephone"' \
--form 'header[5]="areacodephone"' \
--form 'header[6]="areacodephone"' \
--form 'header[7]="areacodephone"' \
--form 'header[8]="areacodephone"' \
--form 'header[...]="..."' \
--form 'mailing=@"/path/para/o/arquivo.csv"' \
--form 'delimiter="quotes"' \
--form 'separator=","' \
--form 'has_header="1"'
Na requisição, além do arquivo, será necessário informar corretamente o cabeçalho no parâmetro header
, informando ao sistema o que consta em cada uma das colunas e de que forma o arquivo deve ser lido.
Os campos especiais são:
identifier: Id único que identifica o cliente em seu sistema, em alguns casos pode ser o CPF. Este é o ID que o 3CPlus usa para saber que vários telefones pertencem ao mesmo cliente, caso sua lista CSV tenha um telefone por linha e o cliente replicado em mais de uma linha. Esta também é a informação que o 3C Plus usa para abrir a ficha do cliente na tela do agente.
areacodephone: O número de telefone com DDD, no formato
DDTELEFONE
, apenas números, sem caracteres de formatação como parênteses ou traços e espaços. Exemplo:1140637921
areacode: Somente o DDD caso sua lista CSV possua uma coluna separada para o DDD. Exemplo:
11
phone: Somente o telefone caso sua lista CSV possua uma coluna separada para o telefone. Exemplo:
40637921
As demais colunas são "livres" e o sistema mantém o nome delas conforme informado na chamada da API, por exemplo "Nome", "Dias de atraso", "Valor", "CPF", etc.
Explicando de outra forma, você pode informar a nomenclatura de cabeçalho da forma que achar melhor, a única regra é para as colunas abaixo, quando existirem:
areacodephone
>> Número de telefone com DDDareacode
>> Somente DDDphone
>> Somente o número de telefone:identifier
>> Identificador único da pessoa
Em outro exemplo, digamos que o seu arquivo CSV é composto por 5 colunas:
nome_completo, codigo_cliente, tel_celular, tel_comerc, tel_resid
Fulano , 1234567891234, 41999999999, 1140637921, 4110000000
Ciclano , 1234567891235, 41999999999, 1040637921, 4110000000
Neste caso os parâmetros header
poderiam ser enviados assim:
curl 'https://{{DOMINIO_EMPRESA}}.3c.fluxoti.com/api/v1/campaigns/{{ID_CAMPANHA}}/lists/csv?api_token={{TOKEN_API}}' \
--form 'name="minha lista"' \
--form 'header[0]="nome_completo"' \
--form 'header[1]="identifier"' \
--form 'header[2]="areacodephone"' \
--form 'header[3]="areacodephone"' \
--form 'header[4]="areacodephone"' \
--form 'mailing=@"/path/para/o/arquivo.csv"' \
--form 'delimiter="quotes"' \
--form 'separator=","' \
--form 'has_header="1"'
Assim, o 3C Plus criaria uma nova lista na campanha e importaria corretamente incluindo um campo Nome e identificando corretamente as informações de identificador do cliente e números de telefone.
Envio dos contatos em formato JSON
Para enviar uma lista usando o formato JSON, primeiramente você deverá criar uma nova lista em branco, ou selecionar uma já existente, em seguida enviar os registros de mailing para dentro dela:
Criar uma nova lista de mailing: POST Campaign List
Selecionar a lista de mailing existente: GET Campaign Lists
Enviar os registros de mailing à lista: POST Campaing List Mailing.JSON
Dica: Após alimentar uma lista, recomendamos que você também atualize o peso dela para um valor maior do que zero, para iniciar as discagens: PUT Campaign List UpdateWeight.
Concluindo
Prontinho! Agora você poderá verificar a dashboard da campanha se sua lista foi corretamente importada e acompanhar as discagens. Nossa documentação da API detalha como cada requisição pode ser realizada. Mas em caso de dúvidas, pode contar conosco!