Colorear fotos
Una foto en blanco y negro no guarda ningún registro de cómo era realmente el color de nada; este endpoint hace una estimación informada y verosímil, y la repinta: tono de piel, cielo, tela, follaje. Envía una imagen monocromática y recibe una versión a color, pensada para archivos familiares, digitalización de museos y proyectos de medios históricos.
Esta tarea no está disponible ahora mismo, así que no se puede contratar. No se cobra nada por ella.
Cómo funciona y APIEl archivo que nunca tuvo color
Millones de fotografías existen solo en blanco y negro, no porque alguien eligiera el monocromo como estilo sino porque la película a color era cara, poco confiable o directamente no había llegado al uso común cuando se tomaron. Los archivos familiares, los archivos de diarios y los registros municipales están llenos de estas imágenes, y durante décadas la única forma de agregarles color fue el coloreado manual a mano, una foto y una pincelada a la vez. Este endpoint hace el trabajo equivalente de forma automática, al ritmo que un archivo realmente necesita.
Cómo se construye la estimación
La tarea lee la imagen en escala de grises e infiere el color a partir del contexto: la piel se lee como tono de piel, el cielo se lee como azul de cielo, el follaje se lee como verde, el mismo tipo de razonamiento visual que usa un colorista experto, aplicado de forma consistente y rápida. Envía la foto en blanco y negro, la tarea devuelve una versión a color, y como es una reconstrucción verosímil y no un registro de los colores reales originales, conviene tratar el resultado como una mejora para ver y compartir, no como prueba histórica de cómo era algo realmente.
Un siglo intentando resolverlo a mano
El coloreado a mano de fotografías en blanco y negro se remonta a los primeros días de la fotografía misma, mucho antes de que existiera la película a color, y colorear fotos y filmes antiguos siguió siendo un oficio reconocible desde entonces, practicado por especialistas en restauración histórica, remasterización de filmes y archivos personales. Automatizar ese criterio es lo que convierte una destreza lenta y especializada en algo que un archivo de cualquier tamaño puede aplicar de forma consistente.
Dónde se usa realmente
Las plataformas de genealogía lo usan para que los retratos familiares de hace un siglo se sientan presentes en lugar de lejanos. Los museos y proyectos de historia local lo usan para que la fotografía de archivo resulte más accesible a un público general. Los medios y editoriales lo usan para renovar fotografía de archivo en notas retrospectivas sin encargar un nuevo coloreado manual para cada imagen.
Cómo insertarlo en un flujo de digitalización
El endpoint corre de forma asíncrona: envía la foto escaneada o digitalizada, recibe un task_id, y el resultado a color llega por un webhook firmado en el momento en que está listo, o por un enlace firmado si eso encaja mejor con su flujo. Combina bien con un paso previo de escaneo o de escalado, y con un paso posterior de exportación, para que una foto física pase de escaneo a imagen nítida, a color y lista para publicar, sin manipulación manual en el medio.
Qué puede hacer con ella
Digitalización de archivo familiar
Un servicio de genealogía colorea retratos familiares escaneados de principios del siglo veinte como parte de construir un árbol familiar interactivo.
Exhibiciones de museos e historia local
Una sociedad histórica colorea fotografía callejera de archivo para que una exhibición se sienta inmediata para visitantes que no vivieron esa época.
Retrospectivas editoriales
Una editorial colorea fotos de prensa de archivo para una nota de aniversario, dándole nueva vida visual a imágenes de redacción antiguas sin repetir la sesión.
Flujo de estudio de restauración
Un estudio de restauración de fotos colorea un lote de fotos familiares heredadas enviadas por clientes como una etapa dentro de un trabajo completo de restauración y reimpresión.
Preguntas frecuentes
¿Cómo coloreo una foto en blanco y negro con la api?
Haga un POST a /image/colorize con la imagen en escala de grises; recibe un task_id y la versión coloreada llega por webhook o enlace firmado.
¿El color agregado es históricamente exacto?
Es una reconstrucción verosímil basada en contexto, no un registro de los colores reales originales, así que conviene tratar el resultado como una mejora visual y no como prueba histórica.
¿Qué formatos de foto acepta?
Se aceptan los formatos rasterizados comunes como entrada, y elige el formato de salida para el resultado coloreado.
¿Puede colorear escaneos de película antigua, no solo fotografías?
Sí, cualquier imagen digitalizada en escala de grises funciona igual, incluidos fotogramas de película escaneados, siempre que se envíe como archivo de imagen.
¿Hay un plan gratuito para la api de colorear fotos?
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 colorear una foto?
$0.062 por solicitud más $0.004 por imagen, y solo se cobra por las tareas que se completan con éxito.
¿Está disponible ya la api de colorear fotos?
Está en despliegue y todavía no acepta trabajos; el endpoint y el precio descritos aquí son definitivos y estarán activos en breve.
¿Puedo colorear un lote grande de fotos de archivo a la vez?
Sí, combine este endpoint con la API de Procesamiento en Lote para colorear un archivo completo en una sola llamada, cada foto cotizada y medida por separado.
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/image/colorize \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"image":"https://ejemplo.com/imagen.jpg"}'const res = await fetch("https://api.kit.forhosting.com/image/colorize", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"image": "https://ejemplo.com/imagen.jpg"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/image/colorize",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"image": "https://ejemplo.com/imagen.jpg"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/image/colorize", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"image":"https://ejemplo.com/imagen.jpg"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"image":"https://ejemplo.com/imagen.jpg"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/image/colorize", 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
{
"image": "https://ejemplo.com/imagen.jpg"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "image.colorize",
"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 | 15 |
max_megapixels | 12 |
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. |
501 | coming_soon | Capacidad en despliegue (Fase 1b). Su landing existe; aún no acepta ejecuciones. |