Contatos
Identifique o contato com external_id, document ou phone (pelo menos um). Ordem de busca: external_id → document → phone (telefone normalizado BR).
Na criação, name e phone são obrigatórios.
Não envie peti9_id numérico (400). Use external_id como texto opaco do seu ERP.
Veja também a política de sincronização (flow vs erp).
Scope: contacts:write
Campos
Códigos HTTP
Warnings
Resposta 2xx significa que o contato foi gravado. Se houver warnings, nome ou telefone do payload podem não ter sido aplicados (política Flow):
name_not_applied_user_edited_in_flow
phone_not_applied_user_edited_in_flow
cURL completo
Consultar e apagar
Scope: contacts:read — devolve uma projeção limitada do contato (sem pets, peti9_id, etc.).
Scope: contacts:delete — soft-delete; responde 204 mesmo se o contato já estiver apagado (idempotente).
Auditoria
Cada PUT/DELETE externo bem-sucedido gera auditoria (contact_external_api_audit_logs, retenção 90 dias). Admins veem o histórico no modal do contato no CRM.