Documentación API WhatsAppEnviar archivo
API WhatsApp API v1 · POST

Enviar archivo

Envía imágenes, documentos, videos o audio a través de una instancia de WhatsApp conectada.

Endpoint

POST/api/v1/message/sendmedia/{instancia}

URL base: https://apachiy.mytems.cloud

Autenticación

Envía tu token en el encabezado Authorization. El permiso messages:send debe estar habilitado para tu cuenta.

Authorization: Bearer myt_live_TU_TOKEN

Genera el token desde el panel. Guárdalo como secreto y no lo expongas en el navegador, repositorios ni aplicaciones móviles.

Parámetros de la solicitud

NombreTipoRequeridoDescripción
instanciastringSíNúmero de WhatsApp vinculado a tu cuenta, con código de país y solo dígitos.
numberstringSíNúmero de destino con código de país.
mediatypestringSíimage, document, video o audio.
mediastringSíArchivo codificado en Base64 o data URL Base64. Máximo 8 MB una vez decodificado.
filenamestringCondicionalObligatorio si mediatype es document; máximo 180 caracteres.
captionstringNoTexto opcional para imagen, documento o video. No se admite para audio.

Para documentos, filename es obligatorio. El audio no admite caption; el archivo completo debe enviarse en Base64.

Ejemplo de solicitud

Cambia el token y los datos de ejemplo por los de tu cuenta.

cURL
curl --request POST \
  --url "https://apachiy.mytems.cloud/api/v1/message/sendmedia/51987654321" \
  --header "Authorization: Bearer myt_live_TU_TOKEN" \
  --header "Accept: application/json"
  --header "Content-Type: application/json" \
  --data '{
    "number": "51999999999",
    "mediatype": "document",
    "media": "BASE64_DEL_ARCHIVO",
    "filename": "comprobante.pdf",
    "caption": "Adjuntamos tu comprobante"
}'

Respuesta

Estructura real de la respuesta HTTP 200; los valores entre llaves son marcadores de ejemplo.

200 · application/json
{
    "success": true,
    "message": "El mensaje se envió correctamente.",
    "data": {
        "instance": "51987654321",
        "number": "51999999999",
        "provider_id": "ID_DEL_MENSAJE"
    },
    "request_id": "UUID_DE_LA_SOLICITUD"
}

Los datos devueltos pueden variar según la información disponible. Conserva el request_id para consultar el registro de una solicitud.

Errores y límites

Los errores controlados siguen la estructura { "success": false, "error": { "code": "...", "message": "..." } }. Según el caso, puedes recibir 401 por token inválido, 403 por permiso o servicio inactivo, 422 por datos no válidos y 429 por límite alcanzado.

Las consultas se limitan por el cupo mensual de tu plan y por el límite temporal de solicitudes. Revisa el código de error antes de reintentar.

Si la respuesta es 502 provider_error, verifica el chat antes de reenviar: la confirmación del proveedor puede haberse interrumpido y un reintento podría duplicar el mensaje.