Documentación

API de Restauración de Fotos

Restaurar fotos antiguas usando tecnología de IA

La API de Restauración de Fotos te permite restaurar fotos antiguas y dañadas usando tecnología de IA avanzada. Este endpoint procesa imágenes y devuelve una versión restaurada. Experimenta la poderosa función de restauración de fotos con IA de Restore Old Photos.

Endpoint

POST /api/api-call/photo-restore

Autenticación

Requiere una clave de API válida en el encabezado Authorization:

Authorization: Bearer YOUR_API_KEY

Solicitud

Encabezados

EncabezadoRequeridoDescripción
Content-TypeDebe ser application/json
AuthorizationTu clave de API en formato Bearer YOUR_API_KEY

Parámetros del Cuerpo

ParámetroTipoRequeridoDescripción
imageUrlstringURL de la imagen a restaurar (debe ser públicamente accesible)

Ejemplo de Solicitud

{
  "imageUrl": "https://example.com/old-photo.jpg"
}

Respuesta

Respuesta de Éxito (200)

La API devuelve la URL o cadena base64 de la imagen restaurada. La plataforma maneja automáticamente todos los tipos de stream, y el campo output es siempre una URL o cadena base64.

{
  "output": "https://replicate.delivery/pbxt/xxx.png"
}

o:

{
  "output": "data:image/png;base64,iVBORw0KGgoAAAANS..."
}

Descripción:

  • La salida es la URL de la imagen (recomendado) o cadena base64 (para imágenes parciales/archivos grandes)
  • No se devuelve ningún objeto de stream, los usuarios pueden usarlo directamente para etiquetas img o descarga

Respuestas de Error

400 Bad Request

{
  "message": "Entrada inválida"
}

401 Unauthorized

{
  "message": "Clave de API inválida o expirada"
}

402 Payment Required

{
  "message": "Créditos insuficientes"
}

500 Internal Server Error

{
  "message": "Error de servicio"
}

429 Too Many Requests

{
  "message": "Límite de tasa excedido. Inténtalo de nuevo más tarde."
}

Límites de Tasa

  • Límite: 100 solicitudes por hora por clave de API
  • Ventana: 60 minutos
  • Respuesta: 429 Too Many Requests cuando se excede

Ejemplos de Uso

JavaScript/Node.js

async function restorePhoto(imageUrl, apiKey) {
  try {
    const response = await fetch('https://restoreoldphotos.online/api/api-call/photo-restore', {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json',
        'Authorization': `Bearer ${apiKey}`
      },
      body: JSON.stringify({
        imageUrl: imageUrl
      })
    });
 
    if (!response.ok) {
      const error = await response.text();
      throw new Error(`Error de API: ${response.status} - ${error}`);
    }
 
    const result = await response.json();
    
    // La salida es siempre una cadena (URL o base64)
    if (result.output.startsWith('data:image')) {
      // Datos de imagen base64
      return result.output;
    } else if (result.output.startsWith('http')) {
      // URL de imagen
      return result.output;
    } else {
      throw new Error('Formato de salida inválido');
    }
  } catch (error) {
    console.error('Error al restaurar foto:', error);
    throw error;
  }
}
 
// Uso
const restoredImage = await restorePhoto(
  'https://example.com/old-photo.jpg',
  'your-api-key-here'
);
console.log('Imagen restaurada:', restoredImage);

cURL

curl -X POST https://restoreoldphotos.online/api/api-call/photo-restore \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "imageUrl": "https://example.com/old-photo.jpg"
  }'

Requisitos de Imagen

  • Formato: JPG, PNG, WebP
  • Tamaño: Máximo 5MB
  • Accesibilidad: La URL de la imagen debe ser públicamente accesible
  • Contenido: Debe ser un archivo de imagen válido

Tiempo de Procesamiento

  • Típico: 10-30 segundos
  • Imágenes grandes: Puede tomar hasta 60 segundos

Créditos

  • Costo: 1 crédito por restauración
  • Deducción: Los créditos se deducen después del procesamiento exitoso

Mejores Prácticas

  1. Calidad de imagen: Usa imágenes de alta calidad para mejores resultados
  2. Manejo de errores: Siempre implementa manejo de errores apropiado
  3. Gestión de créditos: Monitorea regularmente tu saldo de créditos
  4. Procesamiento de salida: La salida es siempre una cadena, no se necesita procesamiento de stream

Solución de Problemas

Problemas Comunes

401 Unauthorized

  • Verifica que tu clave de API sea correcta
  • Asegúrate de que la clave de API esté activa y no haya expirado

402 Payment Required

  • Agrega créditos a tu cuenta
  • Verifica tu saldo de créditos actual

400 Bad Request

  • Verifica que la imageUrl sea una URL válida y accesible
  • Asegúrate de que el formato de imagen sea compatible

Formato de Salida Inválido

  • La salida debe ser siempre una cadena (URL o base64)
  • Verifica si la respuesta de la API contiene el campo de salida esperado

429 Too Many Requests

  • Has excedido el límite de tasa de 100 solicitudes por hora
  • Espera a que se reinicie la ventana de límite de tasa antes de hacer más solicitudes

Soporte

Si encuentras problemas no cubiertos aquí, contacta a nuestro equipo de soporte.