Saltar al contenido

Documentación de la API de WhatsApp

POST o GET con tu API key. Responde JSON.

URL basehttps://api.kontacto.pro
Ver documentación completa
POST GET /send-message

Enviar texto

Envía un mensaje de texto.

Ver más detalles
api_key
Tu API key.
sender
Tu número conectado, ej. 51987654321.
number
Destino con código de país, id de grupo (…@g.us) o de canal (…@newsletter). Hasta 10 separados por |.
message
Texto del mensaje.
{
    "api_key": "TU_API_KEY",
    "sender": "51987654321",
    "number": "51912345678",
    "message": "Hola desde Kontacto"
}
curl -X POST https://api.kontacto.pro/send-message \
  -H 'Content-Type: application/json' \
  -d '{"api_key":"TU_API_KEY","sender":"51987654321","number":"51912345678","message":"Hola desde Kontacto"}'
POST GET /send-media

Enviar archivo

Imagen, video, audio o documento desde una URL pública.

Ver más detalles
api_key
Tu API key.
sender
Tu número conectado, ej. 51987654321.
number
Destino con código de país, id de grupo (…@g.us) o de canal (…@newsletter). Hasta 10 separados por |.
media_type
image, video, audio, pdf, xls, xlsx, doc, docx, zip, mp3 o xml.
url
Enlace directo al archivo.
caption
Opcional. Texto o nombre del archivo.
ptt
Opcional. "vn" envía el audio como nota de voz.
{
    "api_key": "TU_API_KEY",
    "sender": "51987654321",
    "number": "51912345678",
    "media_type": "pdf",
    "url": "https://tusitio.com/boleta.pdf",
    "caption": "Tu boleta"
}
curl -X POST https://api.kontacto.pro/send-media \
  -H 'Content-Type: application/json' \
  -d '{"api_key":"TU_API_KEY","sender":"51987654321","number":"51912345678","media_type":"pdf","url":"https://tusitio.com/boleta.pdf","caption":"Tu boleta"}'
POST GET /send-poll

Enviar encuesta

De 2 a 5 opciones. También en grupos y canales.

Ver más detalles
api_key
Tu API key.
sender
Tu número conectado, ej. 51987654321.
number
Destino con código de país, id de grupo (…@g.us) o de canal (…@newsletter). Hasta 10 separados por |.
name
La pregunta.
option
Arreglo de opciones.
countable
Opcional. "1" = una sola respuesta.
{
    "api_key": "TU_API_KEY",
    "sender": "51987654321",
    "number": "51912345678",
    "name": "¿Qué prefieres?",
    "option": [
        "Café",
        "Té"
    ],
    "countable": "1"
}
curl -X POST https://api.kontacto.pro/send-poll \
  -H 'Content-Type: application/json' \
  -d '{"api_key":"TU_API_KEY","sender":"51987654321","number":"51912345678","name":"¿Qué prefieres?","option":["Café","Té"],"countable":"1"}'
POST GET /groups

Listar grupos

Grupos donde participa tu número. Usa su id como number.

Ver más detalles
api_key
Tu API key.
sender
Tu número conectado, ej. 51987654321.
refresh
Opcional. "1" vuelve a consultar WhatsApp.
{
    "api_key": "TU_API_KEY",
    "sender": "51987654321"
}
curl -X POST https://api.kontacto.pro/groups \
  -H 'Content-Type: application/json' \
  -d '{"api_key":"TU_API_KEY","sender":"51987654321"}'
POST GET /channel-add

Registrar canal

Registra un canal una vez; luego aparece en /channels.

Ver más detalles
api_key
Tu API key.
sender
Tu número conectado, ej. 51987654321.
channel
Enlace de invitación o id …@newsletter.
{
    "api_key": "TU_API_KEY",
    "sender": "51987654321",
    "channel": "https://whatsapp.com/channel/XXXXXXXX"
}
curl -X POST https://api.kontacto.pro/channel-add \
  -H 'Content-Type: application/json' \
  -d '{"api_key":"TU_API_KEY","sender":"51987654321","channel":"https://whatsapp.com/channel/XXXXXXXX"}'
POST GET /channels

Listar canales

Tus canales registrados. Usa su id como number para publicar.

Ver más detalles
api_key
Tu API key.
sender
Tu número conectado, ej. 51987654321.
refresh
Opcional. "1" actualiza nombre y seguidores.
{
    "api_key": "TU_API_KEY",
    "sender": "51987654321"
}
curl -X POST https://api.kontacto.pro/channels \
  -H 'Content-Type: application/json' \
  -d '{"api_key":"TU_API_KEY","sender":"51987654321"}'
POST GET /resolve-lid

Resolver LID

Devuelve el número real de un chat que llegó con LID.

Ver más detalles
api_key
Tu API key.
sender
Tu número conectado, ej. 51987654321.
lid
El LID (solo dígitos o con @lid).
{
    "api_key": "TU_API_KEY",
    "sender": "51987654321",
    "lid": "22858017280019"
}
curl -X POST https://api.kontacto.pro/resolve-lid \
  -H 'Content-Type: application/json' \
  -d '{"api_key":"TU_API_KEY","sender":"51987654321","lid":"22858017280019"}'
POST /generate-qr

Generar código QR

QR para conectar un número desde tu propio sistema (solo POST).

Ver más detalles
api_key
Tu API key.
device
Número a conectar.
{
    "api_key": "TU_API_KEY",
    "sender": "51987654321",
    "device": "51987654321"
}
curl -X POST https://api.kontacto.pro/generate-qr \
  -H 'Content-Type: application/json' \
  -d '{"api_key":"TU_API_KEY","sender":"51987654321","device":"51987654321"}'

Respuestas

Siempre JSON con status y msg.

200Enviado
{
    "status": true,
    "msg": "Mensaje enviado con éxito!"
}
400Datos inválidos
{
    "status": false,
    "msg": "Datos inválidos!",
    "errors": {
        "number": [
            "Máximo 10 números por envío."
        ]
    }
}
400API key o remitente incorrectos
{
    "status": false,
    "msg": "Invalid data!"
}
403Dispositivo vencido
{
    "status": false,
    "msg": "Dispositivo expirado!"
}

Webhook

Cada mensaje entrante llega por POST a tu URL. Para contestar, responde con un JSON de mensaje (opcional).

Lo que recibes
{
    "message": "hola, precio del plan",
    "text": "Hola, ¿precio del plan?",
    "from": "51912345678",
    "pushName": "Ana",
    "id": "3EB0C7…",
    "participant": null
}
Lo que puedes responder
{
    "text": "Hola {name}, ya te atendemos",
    "quoted": true
}

¿Listo para integrar?

Pide tu cuenta y tu API key por WhatsApp.