POST Enviar documento (URL publica)
/api/mensaje_enviar_documento.php
Envia un documento PDF, Word, Excel, ZIP, etc. WhatsApp detecta el tipo y muestra el icono apropiado.
Ejemplos de uso
13 lenguajes
cURL
curl -X POST 'https://panel.multimensajes.com/api/mensaje_enviar_documento.php' \
-H 'Authorization: Bearer WA_TU_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"destinatario": "521000000000",
"documentUrl": "https://example.com/doc.pdf",
"fileName": "factura.pdf",
"caption": "Pie de imagen",
"directo": 1
}'
PHP (cURL)
<?php
$ch = curl_init('https://panel.multimensajes.com/api/mensaje_enviar_documento.php');
$payload = [
'destinatario' => '521000000000',
'documentUrl' => 'https://example.com/doc.pdf',
'fileName' => 'factura.pdf',
'caption' => 'Pie de imagen',
'directo' => 1,
];
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => json_encode($payload),
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer WA_TU_API_KEY',
'Content-Type: application/json',
],
CURLOPT_TIMEOUT => 30,
]);
$response = curl_exec($ch);
$http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
$data = json_decode($response, true);
echo "HTTP $http_code
";
print_r($data);
Python (requests)
import requests
response = requests.post(
'https://panel.multimensajes.com/api/mensaje_enviar_documento.php',
headers={
'Authorization': 'Bearer WA_TU_API_KEY',
'Content-Type': 'application/json',
},
json={
'destinatario': '521000000000',
# ... otros parametros segun el endpoint
},
timeout=30,
)
print(f"Status: {response.status_code}")
print(response.json())
Node.js (fetch)
// Node 18+ tiene fetch nativo
const response = await fetch('https://panel.multimensajes.com/api/mensaje_enviar_documento.php', {
method: 'POST',
headers: {
'Authorization': 'Bearer WA_TU_API_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({
destinatario: '521000000000',
// ... otros parametros segun el endpoint
}),
});
console.log('Status:', response.status);
console.log('Body:', await response.json());
Java (OkHttp)
import okhttp3.*;
public class SendMessage {
public static void main(String[] args) throws Exception {
OkHttpClient client = new OkHttpClient();
String json = "{\"destinatario\":\"521000000000\"}";
RequestBody body = RequestBody.create(json, MediaType.parse("application/json"));
Request request = new Request.Builder()
.url("https://panel.multimensajes.com/api/mensaje_enviar_documento.php")
.addHeader("Authorization", "Bearer WA_TU_API_KEY")
.addHeader("Content-Type", "application/json")
.post(body)
.build();
Response response = client.newCall(request).execute();
System.out.println("Status: " + response.code());
System.out.println("Body: " + response.body().string());
response.close();
}
}
Go
package main
import (
"fmt"
"io"
"net/http"
"strings"
)
func main() {
payload := strings.NewReader(`{"destinatario":"521000000000"}`)
req, _ := http.NewRequest("POST",
"https://panel.multimensajes.com/api/mensaje_enviar_documento.php",
payload)
req.Header.Set("Authorization", "Bearer WA_TU_API_KEY")
req.Header.Set("Content-Type", "application/json")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Printf("Status: %d
", resp.StatusCode)
fmt.Printf("Body: %s
", string(body))
}
Ruby
require 'net/http'
require 'uri'
require 'json'
uri = URI('https://panel.multimensajes.com/api/mensaje_enviar_documento.php')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
req = Net::HTTP::Post.new(uri)
req['Authorization'] = 'Bearer WA_TU_API_KEY'
req['Content-Type'] = 'application/json'
req.body = JSON.dump({
'destinatario' => '521000000000',
# ... otros parametros segun el endpoint
})
res = http.request(req)
puts "Status: #{res.code}"
puts "Body: #{res.body}"
C#
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
class Program {
static async Task Main() {
var client = new HttpClient();
var json = "{\"destinatario\":\"521000000000\"}";
var content = new StringContent(json, Encoding.UTF8, "application/json");
client.DefaultRequestHeaders.Add("Authorization", "Bearer WA_TU_API_KEY");
var response = await client.PostAsync(
"https://panel.multimensajes.com/api/mensaje_enviar_documento.php", content);
var body = await response.Content.ReadAsStringAsync();
System.Console.WriteLine($"Status: {{(int)response.StatusCode}}");
System.Console.WriteLine($"Body: {{body}}");
}
}
Postman (JSON)
{
"info": {
"name": "Enviar documento (URL publica)",
"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
},
"item": [
{
"name": "Enviar documento (URL publica)",
"request": {
"method": "POST",
"header": [
{
"key": "Authorization",
"value": "Bearer {{WA_API_KEY}}"
},
{
"key": "Content-Type",
"value": "application/json"
}
],
"url": {
"raw": "https://panel.multimensajes.com/api/mensaje_enviar_documento.php",
"protocol": "https",
"host": ["panel", "multimensajes", "com"],
"path": "/api/mensaje_enviar_documento.php"
},
"body": {
"mode": "raw",
"raw": {
"destinatario": "521000000000",
"mensaje": "Hola desde Postman"
}
}
}
}
]
}
RapidAPI (PHP)
// RapidAPI / API Gateway compatible
// Endpoint: /api/mensaje_enviar_documento.php
$response = Unirest\Request::post(
"https://panel.multimensajes.com/api/mensaje_enviar_documento.php",
[
"Content-Type" => "application/json",
"Accept" => "application/json",
"X-RapidAPI-Proxy-Secret" => "TU_PROXY_SECRET"
],
[
"destinatario" => "521000000000 // string",
"documentUrl" => "https://example.com/doc.pdf // string",
"fileName" => "factura.pdf // string",
"caption" => "Pie de imagen // string",
"directo" => "1 // int"
]
);
$response->code; // HTTP status
$response->body; // parsed JSON / string
Python (http.client)
import http.client
import json
conn = http.client.HTTPSConnection('panel.multimensajes.com')
payload = json.dumps({
'destinatario': '521000000000',
# ... otros parametros segun el endpoint
})
conn.request(
'POST',
'/api/mensaje_enviar_documento.php',
body=payload,
headers={
'Authorization': 'Bearer WA_TU_API_KEY',
'Content-Type': 'application/json',
},
)
response = conn.getresponse()
print(f"Status: {response.status}")
print(json.loads(response.read().decode()))
conn.close()
Node.js (axios)
import axios from 'axios';
const response = await axios.post(
'https://panel.multimensajes.com/api/mensaje_enviar_documento.php',
{
destinatario: '521000000000',
// ... otros parametros segun el endpoint
},
{
headers: {
'Authorization': 'Bearer WA_TU_API_KEY',
'Content-Type': 'application/json',
},
},
);
console.log('Status:', response.status);
console.log('Body:', response.data);
PHP (Guzzle)
<?php
require 'vendor/autoload.php';
use GuzzleHttp\Client;
$client = new Client(['base_uri' => 'https://panel.multimensajes.com', 'timeout' => 30]);
$response = $client->post('/api/mensaje_enviar_documento.php', [
'headers' => [
'Authorization' => 'Bearer WA_TU_API_KEY',
'Content-Type' => 'application/json',
],
'json' => [
'destinatario' => '521000000000',
// ... otros parametros segun el endpoint
],
]);
echo "Status: " . $response->getStatusCode() . "
";
$body = json_decode($response->getBody(), true);
print_r($body);
Notas
- Tamano max: 50 MB.
- Formatos: PDF, DOC, DOCX, XLS, XLSX, PPT, ZIP, RAR.