Limpiar metadatos de un PDF
Todo PDF carga un pasajero silencioso de información que nunca escribió en la página: el nombre real del autor, el software que lo generó, la cuenta de la empresa bajo la que se guardó, a veces hasta la zona horaria del equipo que lo tocó por última vez. Esta API para limpiar metadatos de PDF borra ese rastro antes de que el archivo salga de sus manos, convirtiendo una filtración involuntaria en un no-problema.
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.
La filtración que nadie nota
Un PDF exportado desde un procesador de texto o una herramienta de diseño no solo contiene páginas: incrusta un diccionario de información del documento y, con frecuencia, metadatos XMP: nombre del autor, organización, la versión exacta del software, marcas de tiempo de creación y modificación, a veces un título personalizado que alguien escribió hace años y olvidó. Un equipo legal tacha un párrafo y aun así envía un archivo cuyas propiedades revelan el nombre del abogado que lo redactó; un freelancer manda una propuesta que acredita silenciosamente a la empresa de un cliente anterior como origen del documento. Nada de esto es malicioso, así han funcionado los formatos de documento durante treinta años, y es exactamente lo que este endpoint borra.
Qué toca realmente la limpieza
Llama a POST /pdf/metadata-clean con su archivo y recibe un task_id de inmediato, ya que el procesamiento es asíncrono. El motor borra los campos estándar del diccionario Info — Autor, Título, Asunto, Palabras clave, Creador, Productor — y elimina los paquetes XMP incrustados que duplican o extienden esos mismos datos identificativos. El contenido de las páginas, el texto, las imágenes, los campos de formulario y el diseño quedan completamente intactos; solo se reescribe la capa invisible de propiedades, así que el documento se lee e imprime exactamente igual que antes.
De dónde se cuelan los metadatos
La mayoría de los metadatos no se agregan a propósito. Vienen de la herramienta que construyó el archivo: los procesadores de texto sellan al usuario con la sesión iniciada como autor, las impresoras virtuales de PDF incrustan el software y la versión del productor, los escáneres registran números de serie del dispositivo en algunos flujos, y cada operación de guardar-como-PDF puede sumar una nueva marca de modificación mientras deja intacta la fecha de creación original debajo. A lo largo de la vida de un documento que pasó por varias manos, ese historial se va acumulando en silencio, y por eso un solo paso de limpieza al final de un flujo importa más que intentar configurar cada herramienta anterior.
Quién lo usa y cuándo
Encaja de forma natural justo antes de enviar un archivo hacia afuera: adjunto a una licitación pública, subido a un data room, publicado como recurso descargable, o entregado a la contraparte legal. También pertenece a cualquier flujo que genere PDF de forma programática, ya que los archivos generados suelen llevar el nombre de la cuenta de servicio o la librería interna que los construyó. Ejecutarlo como último paso de una automatización, justo después de la generación o antes de la entrega, evita que el metadato viaje más allá de lo previsto.
Entrega y precio
El archivo limpio llega por un webhook firmado, recomendado para flujos automatizados, o un enlace firmado válido durante 24 horas; tanto el origen como la salida se eliminan tras la ventana de retención y nunca se usan para entrenar nada. El precio es un fijo de $0.002 por solicitud, y una tarea que falla después de sus reintentos nunca se cobra. Este endpoint está activo ahora mismo y listo para tráfico de producción.
Qué puede hacer con ella
Depurar un expediente legal antes de la divulgación pública
Borre el nombre del abogado que redactó el documento y los datos del software del despacho de un PDF tachado antes de que pase a formar parte del expediente público.
Preparar documentos de licitación para su publicación
Elimine nombres de autores internos e identificadores de la empresa de una propuesta antes de enviarla a competidores u a un portal público.
Sanear reportes generados a gran escala
Pase por el endpoint cada PDF que produce un servicio interno de reportes para que ninguno revele la cuenta de servicio o la librería que lo construyó.
Limpiar entregables de una agencia o freelancer
Borre el nombre de un cliente anterior de las propiedades del documento antes de reutilizar una plantilla, para que el próximo cliente nunca vea para quién se hizo originalmente el archivo.
Preguntas frecuentes
¿Cómo elimino los metadatos de un PDF con una API?
Envíe el archivo a POST /pdf/metadata-clean, que devuelve un task_id de inmediato. El PDF limpio, sin autor, título, productor ni otros campos identificativos, llega por webhook o enlace firmado cuando termina el procesamiento.
¿La API para limpiar metadatos de 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.
¿Limpiar los metadatos cambia el contenido o el diseño del PDF?
No. Solo se elimina el diccionario Info invisible y los metadatos XMP incrustados; el texto, las imágenes, los campos de formulario y el diseño de página quedan exactamente igual.
¿Esto elimina datos de GPS o ubicación de un PDF?
Limpia los campos estándar de metadatos del documento y los paquetes XMP incrustados, que es donde normalmente viven los datos de ubicación y dispositivo en un PDF; no existe una capa de ubicación visible aparte que eliminar.
¿Puedo limpiar metadatos de muchos PDF por lote?
Sí. Cada llamada es una tarea asíncrona independiente, así que puede enviar lotes grandes en paralelo y recoger cada archivo limpio por webhook a medida que termina.
¿El PDF limpio se sigue abriendo con normalidad en cualquier lector?
Sí. La estructura del archivo, los flujos de contenido y las fuentes no se tocan, así que se abre, imprime y busca exactamente igual que el original en cualquier lector estándar.
¿Es lo mismo que tachar o aplanar un PDF?
No. Tachar elimina contenido visible y aplanar fusiona campos de formulario en contenido estático; este endpoint solo borra la capa oculta de metadatos, dejando todo lo visible en la página sin cambios.
¿El endpoint de limpieza de metadatos está activo ahora mismo?
Sí, está activo y acepta tráfico de producción hoy mismo.
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/metadata-clean \
-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/metadata-clean", {
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/metadata-clean",
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/metadata-clean", 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/metadata-clean", 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.metadata_clean",
"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. |