---
title: "Enviar contato vCard pelo WhatsApp via API"
description: "Como enviar um ou vários contatos (vCard) pela API não oficial do WhatsApp, responder com cartão de contato e pedir o telefone do cliente."
url: "https://api-wa.me/blog/enviar-contato-vcard-whatsapp-api"
language: "pt-BR"
og:type: "article"
og:site_name: "WAME API"
---

[Início](https://api-wa.me/)/[Blog da API do WhatsApp](https://api-wa.me/blog)/Enviar contato (vCard) pelo WhatsApp via API: cartão do vendedor, especialista e filiais

Raphael Serafim· Publicado em 28 de setembro de 2026· 8 min de leitura

Compartilhar

# Enviar contato (vCard) pelo WhatsApp via API: cartão do vendedor, especialista e filiais

Como enviar um ou vários contatos (vCard) pela API não oficial do WhatsApp, responder com cartão de contato e pedir o telefone do cliente.

Copiar para LLM[Ver como Markdown](https://api-wa.me/blog/enviar-contato-vcard-whatsapp-api.md)

**Pela API não oficial do WhatsApp você envia um cartão de contato nativo com `POST /message/contact`, vários de uma vez com `POST /message/contacts`, responde a uma mensagem específica com um cartão via `POST /message/{id}/contact` e ainda pede o telefone do cliente com `POST /message/request-phone`.** O cliente recebe o vCard do jeito que conhece: com botão para conversar e para salvar na agenda.

Parece um recurso pequeno, mas resolve um momento que aparece em quase todo atendimento: "fala com o fulano". Em vez de copiar e colar um número no meio do texto — que o cliente precisa selecionar, copiar e salvar à mão —, o bot ou o atendente manda um cartão, e o próximo passo fica a um toque.

> A camada não oficial não é afiliada, endossada ou suportada pelo WhatsApp ou pela Meta. O uso é de responsabilidade de quem envia.

## Enviar um contato

O corpo é direto: quem recebe e os dados do cartão.

bash

Copiar

```
curl -X POST "https://us.api-wa.me/SUA_KEY/message/contact" \
  -H "Content-Type: application/json" \
  -d '{
    "to": "5511999999999",
    "contact": {
      "fullName": "Mariana Souza — Financeiro",
      "organization": "Loja Exemplo",
      "phoneNumber": "5511988887777"
    }
  }'
```

- `fullName` e `phoneNumber` são obrigatórios.
- `organization` é opcional e aparece no cartão — ótimo para deixar claro de onde é o contato.
- `phoneNumber` vai no formato internacional, só dígitos (país + DDD + número).

Uma dica de nome: coloque o **papel** junto do nome ("Mariana Souza — Financeiro"). Quando o cliente salvar, vai lembrar por que salvou.

## Enviar vários contatos de uma vez

Para listas curtas de contatos relacionados — filiais, plantão, equipe de uma obra —, um envio só:

bash

Copiar

```
curl -X POST "https://us.api-wa.me/SUA_KEY/message/contacts" \
  -H "Content-Type: application/json" \
  -d '{
    "to": "5511999999999",
    "displayName": "Nossas lojas",
    "contacts": [
      { "fullName": "Loja Centro", "phoneNumber": "5511977776666", "organization": "Loja Exemplo" },
      { "fullName": "Loja Zona Sul", "phoneNumber": "5511966665555", "organization": "Loja Exemplo" },
      { "fullName": "Loja Guarulhos", "phoneNumber": "5511955554444", "organization": "Loja Exemplo" }
    ]
  }'
```

O `displayName` é o título do conjunto que o cliente vê na conversa. Mantenha a lista curta: três a cinco cartões são úteis; vinte viram uma lista telefônica que ninguém abre.

## Responder com um contato, citando a pergunta

No atendimento, o contato quase sempre é resposta a uma pergunta ("quem cuida de nota fiscal?"). Enviar como **resposta citada** deixa isso claro no chat:

bash

Copiar

```
curl -X POST "https://us.api-wa.me/SUA_KEY/message/ID_DA_MENSAGEM/contact" \
  -H "Content-Type: application/json" \
  -d '{
    "to": "5511999999999",
    "contact": {
      "fullName": "Carlos Lima — Notas fiscais",
      "organization": "Loja Exemplo",
      "phoneNumber": "5511944443333"
    }
  }'
```

O `ID_DA_MENSAGEM` é o `id` da mensagem do cliente que chegou no webhook. Os outros tipos de resposta citada estão em [responder mensagem citada pela API](https://api-wa.me/blog/tutorial-responder-mensagem-citada-whatsapp-api).

## Pedir o telefone do cliente

O caminho inverso também existe. Às vezes a conversa chega por um identificador que não é o telefone — o WhatsApp usa cada vez mais identificadores internos, os LIDs — e você precisa do número para cadastrar, emitir nota ou combinar entrega:

bash

Copiar

```
curl -X POST "https://us.api-wa.me/SUA_KEY/message/request-phone" \
  -H "Content-Type: application/json" \
  -d '{ "to": "5511999999999" }'
```

O contato recebe um pedido nativo para compartilhar o número. É consentido por definição: ele decide se compartilha. Se o que você tem é um LID e quer o telefone sem incomodar o cliente, há também a resolução em lote pela API — o assunto completo está em [LID no WhatsApp: o que é e como resolver o número](https://api-wa.me/blog/lid-whatsapp-o-que-e-resolver-numero-api).

## Três fluxos que funcionam

### 1\. Bot que encaminha para o especialista

O [bot](https://api-wa.me/blog/criar-bot-whatsapp-api-nao-oficial) resolve o básico, mas certas perguntas precisam de um humano específico. Em vez de "aguarde que alguém vai te chamar", o bot entrega o contato certo:

javascript

Copiar

```
const BASE = 'https://us.api-wa.me/SUA_KEY';

const ESPECIALISTAS = {
  financeiro: { fullName: 'Mariana Souza — Financeiro', phoneNumber: '5511988887777' },
  tecnico:    { fullName: 'Paulo Reis — Suporte técnico', phoneNumber: '5511933332222' },
};

async function post(path, body) {
  const res = await fetch(`${BASE}${path}`, {
    method: 'POST',
    headers: { 'Content-Type': 'application/json' },
    body: JSON.stringify(body),
  });
  if (!res.ok) throw new Error(`${path} → ${res.status}`);
  return res.json();
}

async function encaminhar(cliente, area, idMensagem) {
  const esp = ESPECIALISTAS[area];
  if (!esp) return;

  await post('/message/text', {
    to: cliente,
    text: 'Esse assunto quem resolve é a nossa especialista. Pode chamar direto por aqui:',
  });

  await post(`/message/${idMensagem}/contact`, {
    to: cliente,
    contact: { ...esp, organization: 'Loja Exemplo' },
  });
}
```

Funciona bem quando o especialista atende pelo próprio WhatsApp. Se toda a equipe atende no mesmo número, o caminho é outro: [vários atendentes no mesmo número](https://api-wa.me/blog/multiatendimento-mesmo-numero-whatsapp).

### 2\. Cartão do vendedor depois da compra

Cliente fechou pelo site? Mande o cartão do consultor responsável junto da confirmação do pedido. O cliente salva, e a próxima compra já começa numa conversa com nome e rosto. Combina com [notificações de pedido](https://api-wa.me/blog/notificacoes-pedido-whatsapp-api).

### 3\. "Qual a loja mais perto?"

O cliente pergunta, o bot responde com os cartões das filiais da região via `/message/contacts` — ou, melhor ainda, pede a localização dele e manda só a mais próxima. O pedido de localização está em [localização pela API do WhatsApp](https://api-wa.me/blog/localizacao-whatsapp-api-enviar-pedir-tempo-real).

## Contatos em grupo

O campo `to` também aceita um grupo, no formato `[[email protected]](https://api-wa.me/cdn-cgi/l/email-protection)`. Isso ajuda em grupos de trabalho e de clientes: o grupo de uma obra recebe o cartão do engenheiro responsável, o grupo de uma turma recebe o contato da secretaria, o grupo de suporte de um cliente corporativo recebe o plantão da semana. Como fica fixo no histórico do grupo, todo mundo encontra depois — e, se o grupo tem muita troca, vale [fixar a mensagem](https://api-wa.me/blog/fixar-mensagem-whatsapp-api) com o cartão para ela não se perder.

## Boas práticas

- **Contato é resposta, não campanha.** Envie quando o cliente precisa daquele contato, dentro de uma conversa. Cartão disparado para uma lista de desconhecidos é spam, e **a WAME não apoia spam**.
- **Confira o número do cartão.** Um cartão com número errado manda o cliente para um estranho. Mantenha os contatos da equipe num cadastro único, não espalhados pelo código. Se quiser garantir, valide antes com [verificar se o número tem WhatsApp](https://api-wa.me/blog/verificar-numero-tem-whatsapp-api).
- **Avise antes.** Um texto curto ("quem resolve isso é a Mariana, segue o contato") antes do cartão contextualiza. Lembre também que, para contato que nunca conversou com você, abrir com texto é o caminho natural antes de qualquer formato mais rico.
- **Respeite quem está no cartão.** Compartilhar o número de um funcionário exige que ele saiba e concorde — é dado pessoal dele.

## E o risco de bloqueio?

Cartão de contato é um tipo de mensagem que as pessoas usam o tempo todo no app, e dentro de uma conversa em andamento não chama atenção de ninguém. Os envios já saem com "digitando..." e tempo humano, e a instância tem identidade de dispositivo própria. Para esse uso, a taxa de bloqueio é muito baixa quando o uso é o certo. O que derruba número é outra coisa — o panorama está em [o que realmente derruba um número](https://api-wa.me/blog/api-whatsapp-nao-oficial-bane-o-que-derruba-numero).

## Conclusão

Enviar contato pela API não oficial do WhatsApp é trocar o "anota aí o número" por um cartão nativo que o cliente salva com um toque. `/message/contact` para um cartão, `/message/contacts` para um conjunto, `/message/{id}/contact` para responder citando a pergunta e `/message/request-phone` para pedir o número do cliente. Use dentro da conversa, no momento em que o contato resolve o problema, e o recurso vira atalho em vez de ruído. Os parâmetros completos estão na [documentação](https://api-wa.me/docs), e os outros recursos da camada não oficial estão em [vantagens da API não oficial](https://api-wa.me/blog/api-whatsapp-nao-oficial-vantagens).

### Pronto para automatizar seu WhatsApp?

Crie sua conta gratuita e comece a enviar mensagens pela API em minutos.

[Começar grátis](https://portal.api-wa.me/sign-up)

## Perguntas frequentes

Como enviar um contato pela API do WhatsApp?+

Faça um POST em /{key}/message/contact com o destinatário em 'to' e o objeto 'contact' com fullName, phoneNumber e, opcionalmente, organization. O cliente recebe um cartão de contato nativo, com botões para conversar e salvar na agenda.

Dá para enviar vários contatos numa mensagem só?+

Sim. Use POST /{key}/message/contacts com 'to', um 'displayName' para o grupo de cartões (como 'Nossas filiais') e o array 'contacts', cada um com fullName, phoneNumber e organization opcional.

Como responder uma mensagem citando-a e enviando um contato?+

Use POST /{key}/message/{id}/contact, onde {id} é o id da mensagem do cliente recebida no webhook. O cartão chega como resposta àquela mensagem, o que deixa claro no chat a qual pergunta ele responde.

Como pedir o número de telefone do cliente pela API?+

Com POST /{key}/message/request-phone informando 'to', a API envia ao contato um pedido para compartilhar o número de telefone. É útil quando a conversa chegou por um identificador que não é o telefone e você precisa dele para cadastro ou entrega.

Enviar contatos pela API pode bloquear o número?+

Não pelo formato: cartão de contato é um tipo de mensagem comum do app. O que gera bloqueio é comportamento, como mandar cartões para listas de desconhecidos. Dentro de uma conversa em andamento, o risco é muito baixo quando o uso é o certo.

## Continue lendo

[### Agente de voz no WhatsApp: latência, interrupção (barge-in) e silêncio

Como deixar um agente de voz no WhatsApp natural: latência, streaming, detecção de fala, interrupção (barge-in), silêncio e eco, com exemplos em Node.js.](https://api-wa.me/blog/agente-voz-whatsapp-latencia-interrupcao)[### Anti-detecção na API não oficial do WhatsApp: como a WAME protege seu número

Como funciona a camada de anti-detecção da API não oficial da WAME: identidade de dispositivo, tempo humano, ritmo de envio, reconexão e monitor de saúde.](https://api-wa.me/blog/anti-deteccao-api-whatsapp-nao-oficial)[### API do WhatsApp em C# (.NET): enviar mensagens e receber webhook

Tutorial de API do WhatsApp em C# e .NET: HttpClient tipado, envio de texto, imagem e lista, webhook em ASP.NET Core com fila em background e tratamento de 429.](https://api-wa.me/blog/api-whatsapp-csharp-dotnet)

[Voltar ao blog](https://api-wa.me/blog)

## Structured data

```json
{
  "@context": "https://schema.org",
  "@type": "WebSite",
  "name": "WAME API",
  "alternateName": "API Oficial e Não Oficial de WhatsApp, Instagram, Messenger e Telegram",
  "url": "https://api-wa.me",
  "inLanguage": "pt-BR",
  "publisher": {
    "@id": "https://api-wa.me/#organization",
    "@type": "Organization",
    "name": "WAME API",
    "url": "https://api-wa.me"
  }
}
{
  "@context": "https://schema.org",
  "@type": "Organization",
  "@id": "https://api-wa.me/#organization",
  "name": "WAME API",
  "alternateName": [
    "WAME",
    "Wame API",
    "wame.api.br",
    "api-wa.me"
  ],
  "url": "https://api-wa.me",
  "logo": {
    "@type": "ImageObject",
    "url": "https://api-wa.me/images/web-app-manifest-512x512.png",
    "width": 512,
    "height": 512
  },
  "disambiguatingDescription": "WAME API é uma empresa brasileira de software, fundada em 2017 e parceira oficial da Meta (Meta Business Partner), que fornece APIs de WhatsApp, Instagram Direct e Messenger. Não tem relação com o wa.me, que é o encurtador de links operado pela WhatsApp LLC.",
  "identifier": {
    "@type": "PropertyValue",
    "propertyID": "INPI-BR",
    "name": "Pedido de registro de marca (INPI, classe NCL 42)",
    "value": "944724159"
  },
  "foundingDate": "2017",
  "slogan": "Parceira Oficial da Meta — WhatsApp, Instagram, Messenger e Telegram numa instância só. Desde 2017.",
  "description": "Plataforma brasileira e Parceira Oficial da Meta (Meta Business Partner) para as APIs oficiais de WhatsApp (Cloud API), Instagram Direct e Messenger — os três numa única instância, com os mesmos endpoints e um único formato de webhook. Também oferece a API não oficial via QR Code e o Telegram, na mesma plataforma. No mercado desde 2017, com mais de 50 mil instâncias criadas, 99,9% de uptime e suporte humano 24/7 em português. SDKs oficiais para Node.js/TypeScript e PHP.",
  "knowsAbout": [
    "WhatsApp Cloud API oficial (Meta)",
    "API oficial de Instagram (Direct)",
    "API oficial de Messenger",
    "API multicanal Meta",
    "Meta Business Partner",
    "WhatsApp API",
    "API não oficial de WhatsApp",
    "automação de WhatsApp",
    "números virtuais",
    "webhooks"
  ],
  "sameAs": [
    "https://github.com/wame-api",
    "https://www.linkedin.com/company/wameapi",
    "https://www.instagram.com/wame.api/",
    "https://www.youtube.com/@wameapi"
  ],
  "contactPoint": {
    "@type": "ContactPoint",
    "contactType": "customer support",
    "url": "https://api-wa.me/contact",
    "availableLanguage": [
      "Portuguese"
    ]
  }
}
{
  "@context": "https://schema.org",
  "@type": "BlogPosting",
  "headline": "Enviar contato (vCard) pelo WhatsApp via API: cartão do vendedor, especialista e filiais",
  "description": "Como enviar um ou vários contatos (vCard) pela API não oficial do WhatsApp, responder com cartão de contato e pedir o telefone do cliente.",
  "image": "https://api-wa.me/blog/enviar-contato-vcard-whatsapp-api/opengraph-image",
  "datePublished": "2026-09-28",
  "dateModified": "2026-09-28",
  "author": {
    "@type": "Person",
    "name": "Raphael Serafim",
    "url": "https://github.com/raphaelvserafim",
    "sameAs": [
      "https://github.com/raphaelvserafim"
    ]
  },
  "publisher": {
    "@type": "Organization",
    "name": "api-wa.me",
    "logo": {
      "@type": "ImageObject",
      "url": "https://api-wa.me/images/screenshot.png"
    }
  },
  "mainEntityOfPage": {
    "@type": "WebPage",
    "@id": "https://api-wa.me/blog/enviar-contato-vcard-whatsapp-api"
  },
  "keywords": "api whatsapp não oficial, api não oficial whatsapp, enviar contato whatsapp api, vcard whatsapp api, compartilhar contato whatsapp automático, cartão de contato whatsapp, pedir telefone whatsapp api",
  "inLanguage": "pt-BR"
}
{
  "@context": "https://schema.org",
  "@type": "BreadcrumbList",
  "itemListElement": [
    {
      "@type": "ListItem",
      "position": 1,
      "name": "Home",
      "item": "https://api-wa.me"
    },
    {
      "@type": "ListItem",
      "position": 2,
      "name": "Blog da API do WhatsApp",
      "item": "https://api-wa.me/blog"
    },
    {
      "@type": "ListItem",
      "position": 3,
      "name": "Enviar contato (vCard) pelo WhatsApp via API: cartão do vendedor, especialista e filiais",
      "item": "https://api-wa.me/blog/enviar-contato-vcard-whatsapp-api"
    }
  ]
}
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "Como enviar um contato pela API do WhatsApp?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Faça um POST em /{key}/message/contact com o destinatário em 'to' e o objeto 'contact' com fullName, phoneNumber e, opcionalmente, organization. O cliente recebe um cartão de contato nativo, com botões para conversar e salvar na agenda."
      }
    },
    {
      "@type": "Question",
      "name": "Dá para enviar vários contatos numa mensagem só?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Sim. Use POST /{key}/message/contacts com 'to', um 'displayName' para o grupo de cartões (como 'Nossas filiais') e o array 'contacts', cada um com fullName, phoneNumber e organization opcional."
      }
    },
    {
      "@type": "Question",
      "name": "Como responder uma mensagem citando-a e enviando um contato?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Use POST /{key}/message/{id}/contact, onde {id} é o id da mensagem do cliente recebida no webhook. O cartão chega como resposta àquela mensagem, o que deixa claro no chat a qual pergunta ele responde."
      }
    },
    {
      "@type": "Question",
      "name": "Como pedir o número de telefone do cliente pela API?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Com POST /{key}/message/request-phone informando 'to', a API envia ao contato um pedido para compartilhar o número de telefone. É útil quando a conversa chegou por um identificador que não é o telefone e você precisa dele para cadastro ou entrega."
      }
    },
    {
      "@type": "Question",
      "name": "Enviar contatos pela API pode bloquear o número?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Não pelo formato: cartão de contato é um tipo de mensagem comum do app. O que gera bloqueio é comportamento, como mandar cartões para listas de desconhecidos. Dentro de uma conversa em andamento, o risco é muito baixo quando o uso é o certo."
      }
    }
  ]
}
```
