Atualizar contacto
PUT
https://app.sendapp.ai/api/contacts/{id}
Atualiza um ou mais campos de um contacto. Só as chaves enviadas são alteradas;
tags SUBSTITUI o conjunto completo (use os endpoints de etiquetas para acrescentar ou remover etiquetas individuais). Cada alteração fica registada no histórico do contacto. Também aceita PATCH. Os nomes dos campos personalizados, com o seu tipo e as opções permitidas, encontras com GET /api/contact-fields.
Valores por tipo: sim/não
true ou false (também 1/0, "yes"/"no"), guardado como 1/0 como na página Contactos; número um número (também "12,5"); data YYYY-MM-DD (de uma data e hora ISO 8601 é mantida a data); escolha única uma das opções; escolha múltipla um array de opções ou um texto com as opções separadas por vírgulas. Nas opções maiúsculas e minúsculas não contam: o valor é guardado com a grafia oficial. Um valor inválido devolve 422 com invalid_fields, o motivo de cada campo, e nada é alterado.Os campos do tipo IA são preenchidos pela IA do SendApp: não podem ser escritos (
422, em invalid_fields), mas lês-os no contacto, em custom_fields.Parâmetros
18 · 2 obrigatórios
apikey
obrigatório
A sua API Key (o cabeçalho
X-API-Key também funciona).
id
obrigatório
ID do contacto (inteiro, no path). Use
GET /api/contacts para o encontrar.
name
opcional
Nome do contacto.
first_name
opcional
Nome próprio: o nome completo é recomposto (tem prioridade sobre
name). Se o contato ainda não estava dividido, a outra metade é retirada do nome atual.
last_name
opcional
Sobrenome: o nome completo é recomposto.
phone
opcional
Telefone em formato internacional. 409 se já pertencer a outro contacto.
email
opcional
Endereço de email. 409 se já pertencer a outro contacto.
birthday
opcional
Data no formato
YYYY-MM-DD (null para apagar).
tags
opcional
Array ou texto separado por vírgulas — substitui todas as etiquetas.
custom_fields
opcional
Objeto cuja chave é o NOME do campo personalizado, p. ex.
{"Cidade": "Lisboa"}. Cada valor é verificado segundo o tipo do campo (ver as notas): nomes desconhecidos ou valores inválidos devolvem 422. Envia null ou "" para esvaziar um valor.
opted_out
opcional
true = excluir das campanhas, false = reativar.
requested_by
opcional
Com
opted_out=true: quem pediu o opt-out, contact (a pessoa, revogação do consentimento; é o valor se faltar) ou business (decisão sua, o consentimento mantém-se). Outro valor devolve 422.
opt_out_reason
opcional
Com
opted_out=true: motivo com as suas palavras (máximo 191 caracteres), guardado no histórico do contacto.
consent_ads
opcional
App «Conversioni pubblicitarie»: consenso del contatto alla misurazione degli annunci (comunicare a Meta il clic sull'annuncio e cosa ha fatto dopo).
true = consenso raccolto dal tuo sistema (serve consent_ads_method, altrimenti 422), false = ritiro, vale subito anche per le conversioni in coda. Non è il consenso marketing.
consent_ads_method
opcional
Obbligatorio con
consent_ads=true: come è stato raccolto il consenso, uno tra form, verbal, signature, email, other (con other serve anche consent_ads_text_ref).
consent_ads_text_ref
opcional
Versione o riferimento del testo che il contatto ha accettato (massimo 191 caratteri), per esempio
informativa v3, modulo sito 2026-10.
ads_excluded
opcional
true = escludi il contatto dalle conversioni pubblicitarie (opposizione); separato da
opted_out: i messaggi continuano.
lifecycle_stage
opcional
Um de
lead, qualified, customer, inactive, lost (null para apagar).
Precisa de ajuda com a integração? info@sendapp.live