Mensajes
Enviar status
Publica un status (historia de 24h) de texto, imagen, video o audio en el perfil
POST
Enviar status
Auth:
Envoltorio de error:
TokenAccount o TokenInstance • Rate-limit: Global (100/min) • Idempotente: no
Descripción
Publica un status (historia) con duración de 24 horas en el perfil de la instancia. Soporta cuatro tipos:text (texto plano con color de fondo y fuente), image, video y audio. A diferencia de los demás endpoints, no hay campo number, el status se publica en status@broadcast y es visible para todos los contactos que tengan permiso (configurado en la app). Las menciones no son soportadas en este endpoint.
Ejemplos
Status de texto con color y fuente
Publica un status puramente textual con color de fondo y fuente personalizados. No se necesitamediaUrl.
Status de imagen
Publica una imagen como status.mediaUrl es requerido para tipos no-texto. message se muestra como subtítulo.
Status de video
Publica un video corto como status. WhatsApp limita las historias de video a 30 segundos, los más largos se recortan.Status de audio (mensaje de voz)
Publica audio como status. Por defecto se trata como PTT (voz). UsaisVoice: false para manejarlo como un archivo de audio regular.
Respuesta exitosa
ElmessageType refleja el type que enviaste (text, image, video o audio) y chat.jid siempre es status@broadcast. El messageId retornado puede usarse para eliminar la publicación antes de la ventana de 24 horas vía el endpoint de eliminar mensaje.
200 OK
Parámetros de ruta
Nombre de la instancia (p. ej.,
$Instance_Name).Cabeceras
TokenAccount o TokenInstance.application/jsonCuerpo de la solicitud
Tipo de status. Valores aceptados:
text, image, video, audio.Contenido textual del status. Para
type=text, este es el texto efectivamente mostrado. Para media (image, video, audio), funciona como subtítulo.URL pública del archivo de media. Requerido cuando
type es image, video o audio. Ignorado cuando type=text.Tipo MIME de la media (p. ej.,
image/jpeg, video/mp4, audio/ogg; codecs=opus). Opcional, autodetectado cuando se omite.Nombre del archivo. Opcional, raramente relevante para historias.
Solo para
type=text. Color de fondo del status en hex (p. ej., #FF0000, #00AAFF). Cuando se omite, WhatsApp usa el color default del tema.Solo para
type=text. Fuente del texto. Valores comunes: system, serif, sans-serif.Solo para
type=audio. Cuando es true (default), el audio se publica como PTT (mensaje de voz). Cuando es false, se vuelve un audio regular con el reproductor estándar.Solo para
type=audio. Duración en segundos. Opcional, autodetectada por la herramienta de transcoding.Solo para
type=audio. Waveform personalizada (array de bytes). Opcional, autogenerada si se omite.Identificador de origen para trazabilidad (p. ej.,
crm, marketing-bot, n8n).Notas
- No hay campo
number, las historias siempre van astatus@broadcasty se vuelven visibles según las reglas de privacidad configuradas en la app (Configuración → Privacidad → Status). - Las menciones no son soportadas en este endpoint,
mentionymentionAllno existen aquí (las historias no soportan menciones en la API). - El audio en formatos no-Opus (mp3, m4a, wav) es convertido automáticamente por el servidor a través de FFmpeg a
audio/ogg; codecs=opusantes de publicar. El proceso puede aumentar el tiempo de respuesta de la solicitud. - Para
type=video, WhatsApp limita las historias a ~30 segundos. Los videos más largos pueden ser recortados o rechazados por el servidor de WhatsApp. - Los status duran 24 horas y se eliminan automáticamente. Para eliminarlos antes, usa el endpoint de eliminar mensaje con el
messageIdretornado. backgroundColoryfontsolo tienen efecto entype=text. En status de media, son ignorados silenciosamente.
Errores
| HTTP | Status interno | Mensaje |
|---|---|---|
| 400 | , | Instance name is required |
| 400 | , | Invalid request body: <detail> |
| 400 | , | Type must be one of: text, image, video, audio |
| 400 | , | Message is required |
| 400 | , | MediaURL is required for type: <type> |
| 400 | media_download_failed | Failed to download media from URL |
| 400 | media_validation_failed | (validación del archivo de media) |
| 400 | unsupported_media_type | (formato de media no soportado) |
| 500 | media_upload_failed | Failed to upload media to WhatsApp |
| 500 | audio_conversion_failed | (fallo al convertir audio a Opus) |
| 404 | , | Instance not found |
| 500 | send_failed | Failed to send status: <reason> |
| 503 | disconnected | Instance is not connected to WhatsApp |