Acortar texto
Un comunicado que debe caber en un tuit, una descripción de producto que pelea contra un límite de 160 caracteres, un párrafo que dice en cinco oraciones lo que podría decir en dos: la api acortar texto existe precisamente para esos aprietos. Recorta palabras sin recortar la idea.
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 resuelve
Todo equipo de contenido termina topándose con un límite de caracteres o palabras impuesto por otro sistema: un campo de un marketplace, una pasarela de SMS, una meta descripción, una columna impresa. Recortar un párrafo a mano manteniéndolo coherente es lento y fácil de arruinar; text.shorten automatiza ese recorte para que la oración siga leyéndose natural en la versión corta, en lugar de sonar mutilada.
Cómo fluye la solicitud
POST /text/shorten recibe su texto, lo encola y devuelve un task_id de inmediato porque el endpoint es completamente asíncrono. El motor identifica qué palabras y frases cargan el significado real y cuáles son relleno o redundancia, y luego produce una versión más ajustada que conserva las afirmaciones centrales en vez de simplemente cortar la cadena en un número de caracteres.
Comprimir es un oficio antiguo
Los editores llevan recortando textos para que quepan en una columna desde los primeros periódicos, y quienes escriben titulares siempre han trabajado con un presupuesto de palabras más estricto que el de la nota misma. Este endpoint automatiza ese mismo instinto editorial, para que no necesite a alguien de guardia cada vez que un campo en algún lugar impone un límite de caracteres, sin importar si ese límite viene de una pasarela de mensajería o de una plantilla de diseño heredada.
Cómo recibe el resultado
Cuando la tarea termina, recibe aviso mediante un webhook firmado, o puede recuperar la salida desde un enlace firmado que permanece válido por 24 horas. La respuesta es texto acortado en formato plano, listo para pegar directamente en el campo que exigía el recorte.
Cómo encaja en flujos automatizados
Como cada llamada devuelve un task_id en lugar de bloquear su hilo de solicitud, text.shorten funciona bien dentro de procesos por lotes: reducir un catálogo de quinientas descripciones de producto para que quepan en una nueva plantilla, o acortar el resumen de un artículo en el instante en que se publica. Combina de forma natural con los endpoints de ampliar o reescribir cuando el contenido necesita moverse entre formatos.
Qué puede hacer con ella
Límites de campos en marketplaces
Recorte una descripción de producto completa hasta el límite de caracteres que impone un campo de marketplace, sin perder los argumentos de venta clave.
Meta descripciones a escala
Acorte introducciones largas de artículos en meta descripciones que caben en los fragmentos de resultados de búsqueda en todo un archivo de contenido.
SMS y notificaciones push
Reduzca una actualización de párrafo completo a un mensaje suficientemente corto para el límite de caracteres de una pasarela de SMS o una notificación push.
Diseños impresos o con espacio limitado
Reduzca el texto para que quepa en un ancho de columna fijo de un boletín o una pieza impresa, sin que un diseñador tenga que reeditarlo a mano.
Preguntas frecuentes
¿Cuánto puede reducir la api acortar texto?
Elimina redundancia y relleno conservando el significado central; la reducción exacta depende de cuánto relleno tenga su texto original.
¿Hay un plan gratuito?
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.
¿Cuánto cuesta?
$0.003 por solicitud más $0.0135 por cada 1,000 palabras procesadas, y solo se cobran las tareas exitosas.
¿Se cobra por tareas fallidas?
No. Cada tarea recibe hasta tres reintentos automáticos y solo se cobra en caso de éxito; una falla persistente devuelve un error claro en lugar de un cargo.
¿Cómo recupero los resultados?
A través de un webhook firmado que se dispara al completarse la tarea, o de un enlace firmado válido por 24 horas si prefiere consultarlo usted mismo.
¿Puedo acortar un lote de textos a la vez?
Sí, envíe tantas llamadas a POST /text/shorten como necesite; cada una devuelve su propio task_id para procesar grandes volúmenes en paralelo.
¿Simplemente corta el texto en un número de palabras?
No, cortar a la mitad de una idea la deja incompleta; este endpoint reescribe para ajustar la extensión, manteniendo las oraciones completas y el significado intacto.
¿Mi texto enviado se guarda o se usa para entrenar modelos?
Se conserva solo durante el periodo de retención necesario para entregar su resultado y luego se elimina; nunca se usa para entrenamiento.
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/text/shorten \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"…"}'const res = await fetch("https://api.kit.forhosting.com/text/shorten", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "…"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/text/shorten",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "…"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/text/shorten", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"…"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"…"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/text/shorten", 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
{
"text": "…"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "text.shorten",
"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_tokens | 20000 |
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. |
422 | task_failed | La tarea falló tras 3 reintentos. No se cobra. |