Contactos
Métodos para gestionar contactos de WhatsApp. WhatsApp Web no permite añadir contactos, por lo que la API tampoco lo admite.
@lid y @c.us
WhatsApp asigna un LID (Local Identifier) único a cada usuario para ocultar su número de teléfono en grupos y otros lugares. Puedes mensajear a cualquiera usando su LID o su PN (número de teléfono, @c.us).
Tip
Obtener todos los contactos
http
GET /api/contacts/all?session=S0001jsonResponse
[
{
"id": "5215551234567@c.us",
"number": "5215551234567",
"name": "Juan Pérez",
"pushname": "Juan",
"shortName": "Juan",
"isMe": false,
"isGroup": false,
"isWAContact": true,
"isMyContact": true,
"isBlocked": false
}
]Parámetros de consulta:
http
GET /api/contacts/all?session=S0001&limit=100&offset=0&sortBy=id&sortOrder=asclimit/offset— paginación.sortBy—idoname.sortOrder—descoasc.
Obtener contacto
http
GET /api/contacts?contactId=5215551234567&session=S0001El contactId puede ser un número de teléfono (5215551234567) o un chat id (5215551234567@c.us o 5215551234567@lid).
Actualizar contacto
Actualiza el contacto en tu agenda telefónica y en WhatsApp:
http
PUT /api/{session}/contacts/{chatId}jsonBody
{
"firstName": "Juan",
"lastName": "Pérez"
}Verificar si el número existe
http
GET /api/contacts/check-exists?phone=5215551234567&session=S0001jsonResponse
{
"numberExists": true,
"chatId": "5215551234567@c.us",
"pn": "5215551234567@c.us"
}Números de Brasil
Usa
check-exists antes de enviar a un número nuevo para obtener el chatId correcto (por el dígito 9 añadido tras 2012).Obtener "about" del contacto
http
GET /api/contacts/about?contactId=5215551234567&session=S0001jsonResponse
{ "about": "¡Hola, uso WhatsApp!" }Obtener foto de perfil
http
GET /api/contacts/profile-picture?contactId=5215551234567&session=S0001&refresh=truejsonResponse
{ "profilePictureURL": "https://ejemplo.com/perfil.jpg" }Bloquear / desbloquear contacto
http
POST /api/contacts/blockhttp
POST /api/contacts/unblockjsonBody
{
"contactId": "5215551234567",
"session": "S0001"
}API de LIDs
Mapea un identificador vinculado (@lid) a un número de teléfono (@c.us) en ambas direcciones.
Obtener todos los LIDs conocidos
http
GET /api/{session}/lids?limit=100&offset=0jsonResponse
[
{
"lid": "5215551234567@lid",
"pn": "5215551234567@c.us"
}
]Obtener número de LIDs
http
GET /api/{session}/lids/countjsonResponse
{ "count": 123 }Obtener número por LID
http
GET /api/{session}/lids/{lid}Recuerda escapar @ con %40 o usa solo el número.
jsonResponse
{
"lid": "5215551234567@lid",
"pn": "5215551234567@c.us"
}Obtener LID por número de teléfono
http
GET /api/{session}/lids/pn/{phoneNumber}jsonResponse
{
"lid": "5215551234567@lid",
"pn": "5215551234567@c.us"
}Lids FAQ
Si no encuentras un número por LID, no tienes ese número en tu lista de contactos o no eres administrador del grupo. Para grupos, intenta refrescar grupos.