Reportes
Reportes de envíos SMS
Generar Reporte de Envíos
POST /reports/generate
Detalle de Reporte
POST /reports/details
The Reporte object
Returned by the reportes endpoints.
Attributes
successboolean
—
messagestring
Mensaje de estado
statusinteger
—
codestring
Código de respuesta
reportarray<object>
—
The Reporte object
{ "success": true, "message": "report_generated", "status": 200, "code": "report_04", "report": [] }
Generar Reporte de Envíos
POST https://api.smsmasivos.com.mx/reports/generate
Genera un reporte de envíos SMS con filtros por fecha, referencia, o número. Rate-limited a 3 solicitudes simultáneas.
Parameters
date_fromstringoptional
Fecha de inicio (YYYY-MM-DD)
date_tostringoptional
Fecha de fin (YYYY-MM-DD)
referencestringoptional
Filtrar por referencia de mensaje
numberstringoptional
Filtrar por número de destinatario
statusstringoptional
Filtrar por estatus de entrega (0-12)
curl -X POST https://api.smsmasivos.com.mx/reports/generate \
-H "Content-Type: application/json" \
-H "apikey: TU_API_KEY" \
-d '{
"date_from": "2026-07-01",
"date_to": "2026-07-15"
}'
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://api.smsmasivos.com.mx/reports/generate');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Content-Type: application/json',
'apikey: ' . getenv('SMSMASIVOS_API_KEY')
]);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode([
'date_from' => '2026-07-01',
'date_to' => '2026-07-15'
]));
$response = curl_exec($ch);
curl_close($ch);
echo $response;
import requests
response = requests.post(
'https://api.smsmasivos.com.mx/reports/generate',
headers={
'Content-Type': 'application/json',
'apikey': 'TU_API_KEY'
},
json={
'date_from': '2026-07-01',
'date_to': '2026-07-15'
}
)
print(response.json())
const response = await fetch('https://api.smsmasivos.com.mx/reports/generate', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'apikey': process.env.SMSMASIVOS_API_KEY
},
body: JSON.stringify({
date_from: '2026-07-01',
date_to: '2026-07-15'
})
});
const data = await response.json();
console.log(data);
const axios = require('axios');
const { data } = await axios.post(
'https://api.smsmasivos.com.mx/reports/generate',
{
date_from: '2026-07-01',
date_to: '2026-07-15'
},
{
headers: {
'Content-Type': 'application/json',
'apikey': process.env.SMSMASIVOS_API_KEY
}
}
);
console.log(data);
require 'net/http'
require 'json'
uri = URI('https://api.smsmasivos.com.mx/reports/generate')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Post.new(uri.path, {
'Content-Type' => 'application/json',
'apikey' => ENV['SMSMASIVOS_API_KEY']
})
request.body = {
date_from: '2026-07-01',
date_to: '2026-07-15'
}.to_json
response = http.request(request)
puts JSON.parse(response.body)
using var client = new HttpClient();
client.DefaultRequestHeaders.Add("apikey", "TU_API_KEY");
var payload = new
{
date_from = "2026-07-01",
date_to = "2026-07-15"
};
var response = await client.PostAsJsonAsync(
"https://api.smsmasivos.com.mx/reports/generate",
payload
);
var result = await response.Content.ReadFromJsonAsync<JsonElement>();
Console.WriteLine(result);
OkHttpClient client = new OkHttpClient();
String json = "{"
+ "\"date_from\":\"2026-07-01\","
+ "\"date_to\":\"2026-07-15\""
+ "}";
Request request = new Request.Builder()
.url("https://api.smsmasivos.com.mx/reports/generate")
.post(RequestBody.create(json, MediaType.parse("application/json")))
.addHeader("apikey", "TU_API_KEY")
.build();
Response response = client.newCall(request).execute();
System.out.println(response.body().string());
Response
{ "success": true, "message": "report_generated", "status": 200, "code": "report_04", "report": [ { "name": "Campaña Black Friday", "created_date": "2026-07-15 09:00:00", "reference": "abc123def456ghi789jkl", "number": "525512345678", "message": "Aprovecha nuestras ofertas de Black Friday!", "sent_date": "2026-07-15 09:00:01", "status": "Entregado", "operator": "Telcel", "type": "SMS" } ] }
{ "success": false, "message": "API Key inválida o no existe.", "status": 401, "code": "<string>" }
{ "success": false, "message": "API Key inválida o no existe.", "status": 401, "code": "auth_05" }
{ "success": false, "message": "La dirección IP no está autorizada para acceder.", "status": 403, "code": "auth_04" }
{ "success": false, "message": "Demasiadas solicitudes. Límite: 100 mensajes/segundo (producción) o 100/día (sandbox).", "status": 429, "code": "rate_01" }
{ "success": false, "message": "Error interno del servidor. Contacta a soporte con el request_id.", "status": 500, "code": "server_01", "request_id": "550e8400-e29b-41d4-a716-446655440000" }
Detalle de Reporte
POST https://api.smsmasivos.com.mx/reports/details
Obtiene el desglose detallado de un reporte de campaña específico
Parameters
campaign_idintegerrequired
Campaign ID
sandboxintegeroptional
1=sandbox mode
curl https://api.smsmasivos.com.mx/reports/details \ -d campaign_id=100 \ -d sandbox=100
const Reporte = await sms.reportes.create({ campaign_id: 100, sandbox: 100, })
Reporte = sms.reportes.create( campaign_id=100, sandbox=100, )
Reporte, err := client.Reportes.Create(ctx, &sms.ReporteParams{ CampaignId: sms.Int(100), Sandbox: sms.Int(100), })
Response
{ "success": true, "message": "report_generated", "status": 200, "code": "details_01", "details": { "effectiveness": 95.5, "totals": 1000, "delivered": 955, "failed": 30, "pending": 10, "not_charged": 5 } }
{ "success": false, "message": "API Key inválida o no existe.", "status": 401, "code": "<string>" }
{ "success": false, "message": "API Key inválida o no existe.", "status": 401, "code": "auth_05" }
{ "success": false, "message": "La dirección IP no está autorizada para acceder.", "status": 403, "code": "auth_04" }
{ "success": false, "message": "Demasiadas solicitudes. Límite: 100 mensajes/segundo (producción) o 100/día (sandbox).", "status": 429, "code": "rate_01" }
{ "success": false, "message": "Error interno del servidor. Contacta a soporte con el request_id.", "status": 500, "code": "server_01", "request_id": "550e8400-e29b-41d4-a716-446655440000" }