Joinotify

Criar ou atualizar contatos em lote

POSThttps://api.joinotify.com/contacts/batch

Até 500 contatos por chamada, cada um criado ou atualizado pelo telefone ou BSUID. A resposta é 200 mesmo quando linhas falham: o resultado de cada uma vem em results, na ordem do envio.

Numa atualização, só valores preenchidos sobrescrevem e as tags são somadas. Com options.optIn, contatos novos nascem com consentimento e existentes só o ganham se ainda estavam em unknown — um opt-out nunca é desfeito. O lote não dispara webhooks.

Uma API key restrita a alguns números recebe 403: esta operação é da base inteira.

Body Paramsapplication/json

1 obrigatório(s)1 opcional(is)

array of objectsobrigatório

Os contatos, de 1 a 500. Cada um precisa de phone ou bsuid.

até 500 itens

Item 1
stringcondicional

Obrigatório quando a linha não traz `bsuid` válido — sem nenhum dos dois, a linha volta com status `failed`.

Telefone em formato internacional. Sem código de país, use options.defaultCountry.

máx. 40 caracteres

stringcondicional

Obrigatório quando a linha não traz `phone`.

Id do usuário na Meta para a empresa (BSUID), no formato BR.abc123. Usado quando não há telefone.

máx. 160 caracteres

stringopcional

Nome, até 80 caracteres.

máx. 80 caracteres

stringopcional

Sobrenome, até 80 caracteres.

máx. 80 caracteres

stringopcional

Nome completo, quando a planilha não separa: a primeira palavra vira o nome e o resto, o sobrenome. Ignorado se firstName vier.

máx. 160 caracteres

stringopcional

E-mail. Um endereço inválido recusa a linha.

máx. 254 caracteres

stringopcional

Idioma, como pt-BR. Num formato inválido é ignorado, e o contato novo fica com o idioma sugerido pelo telefone.

máx. 10 caracteres

stringopcional

Fuso horário IANA. Um fuso desconhecido é ignorado, sem recusar a linha.

máx. 64 caracteres

objectopcional

Valores dos campos personalizados, pela key de cada campo. O formato é validado pelo tipo do campo.

array of stringsopcional

Nomes de tags. As que não existem são criadas.

até 20 itens

objectopcional

Regras que valem para o lote inteiro.

Respostas