Dividir un PDF
La API Dividir PDF toma un solo PDF y lo corta en el conjunto exacto de archivos más pequeños que necesita: uno por página, uno por capítulo o unos pocos rangos a medida. Envía el documento y las reglas, y devolvemos cada parte como un PDF limpio con su árbol de páginas, sus enlaces y sus fuentes incrustadas intactos. Sin programa de escritorio, sin guardar archivo por archivo, sin scripts frágiles.
Ejecútela online
Ejecute esto en nuestros servidores con su cuenta. Las herramientas gratuitas corren en su navegador; esta cobra de su saldo del KIT según el precio de arriba.
El problema que de verdad resuelve
La mayoría de los PDF llegan como un único bloque largo cuando quien está más abajo en el proceso solo necesita una porción: una factura suelta dentro de un lote mensual, el capítulo tres de un manual o la hoja de firmas de un contrato. Separarlo a mano obliga a abrir un visor, adivinar números de página y exportar de a un archivo, algo que no aguanta el volumen. La api dividir pdf convierte esa tarea en una sola llamada, para que una plataforma de gestión documental, un equipo legal o una imprenta separen miles de archivos sin que nadie toque un rango de páginas.
Cómo funciona la división
Hace un POST a /pdf/split con el documento origen y una regla de corte: tamaño fijo (cada N páginas), rangos explícitos como 1-4, 5, 6-9, o un archivo por página. Como el trabajo es asíncrono, el endpoint devuelve de inmediato un task_id y le deja seguir. Al terminar, cada PDF resultante se entrega a su webhook firmado o queda disponible en un enlace firmado válido por 24 horas. Los objetos de página se copian en lugar de volver a renderizarse, así que el texto sigue siendo seleccionable, los vectores se mantienen nítidos y los archivos pesan más o menos lo que pesaban esas páginas en el original.
Por qué el PDF lo complica más de lo que parece
Un PDF no es una pila de páginas independientes, sino un grafo de objetos compartidos donde fuentes, imágenes y anotaciones se referencian a lo largo de todo el archivo. Copiar una página sin cuidado puede dejarla apuntando a recursos que quedaron en la parte que descartaste, generando archivos que abren en blanco o inflados. Desde que Adobe publicó el formato en 1993 y este se volvió el estándar ISO 32000, esa estructura interna solo se ha vuelto más rica con capas, formularios y etiquetado. Nuestro divisor recorre ese grafo y arrastra con cada salida sus dependencias reales, que es la diferencia entre un PDF autónomo válido y un fragmento roto.
Pensada para automatizar, no para hacer clic
Está diseñada para correr sola dentro de un flujo. Apunte una carpeta de entrada, un manejador de subidas o un proceso nocturno al endpoint y deje que los webhooks repartan los resultados hacia el almacenamiento, un correo o la siguiente tarea. Una división fallida nunca se cobra: reintentamos tres veces con espera progresiva y, si aun así no se completa, recibe un error claro en vez de un cobro misterioso. El acceso exige saldo prepago, y eso es a propósito: mantiene el servicio rápido, sin abuso y predecible.
Qué puede hacer con ella
Reventar lotes de estados de cuenta
Un sistema de facturación genera un PDF de 900 páginas con el estado de cuenta mensual de cada cliente. Divídalo en un archivo por estado para enviarlo por correo o depositarlo en el portal de la cuenta correcta de forma automática.
Aislar las hojas firmadas
Una plataforma de contratos solo necesita devolver a cumplimiento las páginas de firma y rúbricas ejecutadas. Divida el acuerdo por rangos explícitos para extraer justo esas hojas sin mover el documento completo de 60 páginas.
Material de curso por capítulos
Un equipo de e-learning recibe libros de texto como PDF enormes de un solo archivo. Divida cada uno en archivos por capítulo para que los estudiantes descarguen solo la lectura de la semana y no un ladrillo de 400 páginas.
Alimentar un flujo de impresión
Una imprenta toma una prueba combinada y la divide en archivos por trabajo, cada uno enviado a un perfil de prensa distinto, para que los operadores no reexporten rangos a mano contra el reloj.
Preguntas frecuentes
¿Cómo divido un PDF en varios archivos con una API?
Envíe un POST a /pdf/split con su documento y una regla de corte (cantidad fija de páginas, rangos explícitos o un archivo por página). La api dividir pdf devuelve un task_id de inmediato y entrega cada archivo resultante a su webhook o a un enlace firmado.
¿La API Dividir PDF es gratis?
No hay capa gratuita: las capas gratis se abusan y ralentizan a todos. El acceso funciona con un saldo prepago de ForHosting KIT: se recarga desde $10.00 (no caduca) y cada solicitud se cobra a su precio publicado, así que una llamada sin saldo devuelve HTTP 402. Sin suscripción, sin tokens ni créditos inventados, y una tarea fallida no se cobra.
¿Puedo dividir un PDF por rangos de páginas específicos?
Sí. Puede pasar rangos explícitos como 1-4, 5 y 6-9 para obtener exactamente esos archivos, dividir cada N páginas o generar un archivo por página.
¿Dividir el PDF baja la calidad del documento?
No. Las páginas se copian, no se vuelven a renderizar, así que el texto sigue siendo seleccionable y los gráficos vectoriales se mantienen nítidos. Cada salida lleva sus propias fuentes y recursos para abrir como un archivo autónomo válido.
¿Puedo dividir miles de PDF de forma masiva?
Sí. El endpoint es asíncrono y está hecho para automatizar, así que puede disparar muchas solicitudes desde un flujo y recibir cada resultado por webhook a medida que termina, sin bloquearse.
¿Cómo se entregan los archivos divididos?
Los resultados llegan por webhook firmado (recomendado) o por un enlace firmado válido por 24 horas. Pasada la ventana de retención los datos se eliminan, y nunca se usan para entrenar nada.
¿Qué pasa si una división falla?
Reintentamos tres veces con espera progresiva. Si aun así no se completa, recibe un error claro y no se le cobra esa solicitud.
¿La API conserva los marcadores y enlaces dentro de cada archivo?
Los objetos de página internos, las fuentes incrustadas y los enlaces que viven dentro de una porción se conservan. Las referencias que apuntaban a páginas descartadas se resuelven para que cada salida siga siendo un PDF limpio y válido.
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, y pronto desde nuestra app, el email y Telegram.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/pdf/split \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"pdf":"https://ejemplo.com/documento.pdf"}'const res = await fetch("https://api.kit.forhosting.com/pdf/split", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"pdf": "https://ejemplo.com/documento.pdf"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/pdf/split",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"pdf": "https://ejemplo.com/documento.pdf"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/pdf/split", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"pdf":"https://ejemplo.com/documento.pdf"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"pdf":"https://ejemplo.com/documento.pdf"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/pdf/split", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"pdf": "https://ejemplo.com/documento.pdf"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "pdf.split",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Límites
max_mb | 25 |
max_pages | 200 |
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
413 | input_too_large | El archivo supera el límite de tamaño. |