Skip to main content
A contact message sends one or more contact cards to a recipient. Each card contains a person’s name, phone numbers, email addresses, and other vCard fields. The recipient can save the contact directly from the message.

Sending a contact card

{
  "messaging_product": "whatsapp",
  "to": "919959623255",
  "type": "contacts",
  "contacts": [
    {
      "name": {
        "formatted_name": "Rahul Reddy",
        "first_name": "Rahul",
        "last_name": "Reddy"
      },
      "phones": [
        {
          "phone": "+919959623255",
          "type": "MOBILE",
          "wa_id": "919959623255"
        }
      ],
      "emails": [
        {
          "email": "rahul@example.com",
          "type": "WORK"
        }
      ],
      "org": {
        "company": "Acme Corp",
        "department": "Sales"
      }
    }
  ]
}

Key fields

FieldRequiredDescription
contactsyesArray of contact objects (can send multiple at once)
name.formatted_nameyesFull display name
phonesnoArray of phone objects with phone, type, wa_id
emailsnoArray of email objects with email and type
orgnoCompany and department
Only name.formatted_name is required. All other fields are optional.

Reference images

Contact card parts
Contact card rendered
Contact card invite

Frequently asked

Set type to "contacts" and provide an array of contact objects. Each contact needs at minimum name.formatted_name. Add phones and emails as needed.
Yes. The contacts field is an array — add multiple objects to send several contact cards in one message.
CELL, MAIN, IPHONE, HOME, WORK. Use MOBILE for a standard mobile number.

Gotchas & common mistakes

  • type is "contacts" (plural) — not "contact". The singular form causes an error.
  • formatted_name is required — all other name fields are optional, but formatted_name must always be present.
  • wa_id in phones — include this if you know the WhatsApp ID so the recipient can message the contact directly from the card.