Brief de contenido SEO
La página en blanco es la parte más cara de producir contenido. Este endpoint toma un tema junto con una lista de palabras clave objetivo y devuelve un esquema estructurado —encabezados, subtemas y la intención de búsqueda detrás de cada uno— para que el redactor empiece con un mapa y no con una corazonada.
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.
A quién le sirve de verdad
Los equipos de contenido que publican más de un puñado de artículos al mes chocan siempre con lo mismo: preparar un buen brief toma casi tanto tiempo como escribir el texto. Los redactores freelance que trabajan para agencias necesitan una estructura defendible antes de escribir la primera frase, y quien heredó el 'SEO' como tarea adicional dentro de marketing necesita algo más confiable que una intuición sobre qué encabezados usar. Este endpoint existe para ese momento justo antes de escribir, cuando alguien tiene que decidir qué va a cubrir realmente la página.
Qué envía y qué recibe
Envía un tema de trabajo y un arreglo con las palabras clave que quiere que la página aborde. La respuesta agrupa esas palabras en un orden lógico de secciones, propone un encabezado de trabajo tipo h2/h3 para cada una y anota la intención probable —informativa, comparativa, transaccional— detrás del grupo al que pertenece. Es un esqueleto, no prosa: no se escriben párrafos por usted, porque la función del esquema es que no se le escape nada importante, no reemplazar al redactor.
Por qué la estructura sigue siendo la palanca que importa
Los resultados de búsqueda siempre han premiado a las páginas que responden el alcance completo de una consulta, no solo el término del título. Esbozar antes de escribir es un hábito editorial antiguo —las salas de redacción lo usan desde hace un siglo— y encaja perfectamente con cómo se construye hoy una página de resultados: un grupo de subtemas relacionados, cada uno con su propio encabezado, su propia evidencia, su propio párrafo. Saltarse este paso es lo que produce un artículo de 2.000 palabras que aun así deja sin responder las tres preguntas que el lector realmente tenía.
Cómo encaja en un flujo de trabajo
Como la llamada es asíncrona, puede encolar un esquema para cada palabra clave del calendario editorial durante la noche y despertar con una pila de briefs listos para asignar. Conecte la respuesta directo a una plantilla de CMS, a un generador de briefs o a un documento para redactores: el formato JSON es deliberadamente simple para adaptarse al flujo que ya existe en vez de imponer uno nuevo.
Lo que no hace
No escribe su artículo, no adivina la voz de su marca ni inventa datos para rellenar una sección: propone estructura, y la investigación y la redacción siguen siendo responsabilidad humana. Los resultados llegan por webhook firmado o por enlace firmado válido por 24 horas, y las palabras clave enviadas se eliminan al terminar el período de retención; nada de lo que envía se usa para entrenar nada.
Qué puede hacer con ella
Briefing de agencia a escala
Una agencia que gestiona doce clientes genera en un solo lote los esquemas para la lista de palabras clave del mes y entrega los briefs terminados a los redactores freelance el lunes por la mañana.
Calendario de contenido interno
Un especialista de marketing en solitario convierte una hoja de cálculo con 40 palabras clave objetivo en 40 briefs estructurados durante la noche, en vez de pasar una semana esbozando cada uno a mano.
Control de calidad editorial antes de publicar
Un editor compara un borrador entregado contra el esquema generado para detectar subtemas faltantes antes de que la nota salga publicada.
Actualización programática de contenido
Un equipo vuelve a generar el esquema de un artículo antiguo con su conjunto de palabras clave actual para ver qué secciones necesitan reescritura y cuáles siguen completas.
Preguntas frecuentes
¿Qué devuelve exactamente la API de brief de contenido SEO?
Un esquema estructurado: una lista ordenada de secciones, una propuesta de encabezado para cada una, las palabras clave asignadas y la intención de búsqueda probable de esa sección.
¿Tiene 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.
¿Cómo se cobra?
$0.003 por solicitud más $0.0135 por cada palabra clave que envíe, así que un esquema de 10 palabras clave cuesta $0.003 + $0.13.
¿Cómo recibo el resultado?
De forma asíncrona: la llamada devuelve un task_id de inmediato y el esquema terminado llega por webhook firmado o por enlace firmado válido durante 24 horas.
¿Escribe los párrafos por mí?
No, produce estructura —encabezados, palabras clave agrupadas e intención—, no prosa terminada; escribir el contenido queda en manos de su equipo.
¿Puedo enviar palabras clave en lote?
Sí, envía un arreglo de palabras clave en una sola solicitud; el precio escala por palabra clave, así que un brief más grande cuesta proporcionalmente más.
¿Qué pasa si la tarea falla?
Las tareas fallidas se reintentan automáticamente hasta tres veces y, esto es clave, nunca se cobran si no llegan a completarse.
¿Se guardan mis datos de entrada o se usan para entrenar modelos?
No. Los datos se eliminan al terminar el período de retención y nunca se usan para entrenar ningún modelo.
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/seo/content-outline \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"input":"…"}'const res = await fetch("https://api.kit.forhosting.com/seo/content-outline", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"input": "…"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/seo/content-outline",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"input": "…"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/seo/content-outline", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"input":"…"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"input":"…"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/seo/content-outline", 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
{
"input": "…"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "seo.content_outline",
"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.
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. |