BlurixBlurix
FAQPreciosAPI
BlurixBlurix
FAQPreciosAPI
Inicio
Descripcion general
Endpoints
POST/blurPOST/blur/urlPOST/blur/batchGET/result/{id}GET/usageGET/statsGET/users/me/history
Blurix API
API Reference

Detecta y difumina automaticamente telefonos, emails y URLs visibles en cualquier imagen usando OCR avanzado.

Base URL

Como funciona

01
Sube imagen
Envia un archivo o una URL publica de imagen
02
Blurix analiza
Extrae todo el texto visible
03
Detecta datos
Identifica telefonos, emails, URLs y codigos QR
04
Difumina
Aplica blur gaussiano sobre las regiones
05
Retorna
Imagen protegida + metadatos de deteccion

Categorias detectadas

Telefonos
phone
+57 300 123 4567, (601) 234-5678
Emails
email
contacto@empresa.com
URLs
url
www.empresa.com, https://tienda.co
Codigos QR
qr
Decodifica el contenido del QR
Regex
regex
Patron personalizado definido por el usuario
POST/v1/blur

Difuminar imagen subida

Recibe una imagen como archivo multipart, detecta datos de contacto visibles mediante OCR y los difumina. La imagen procesada se almacena en S3 automaticamente.

Parametrosmultipart/form-data
fileFilerequerido
Imagen a procesar en formato PNG, JPG o WEBP. Maximo 10 MB.
blur_strengthintegeropcional
Intensidad del difuminado. Valor impar >= 1.
Default: 71
categoriesstringopcional
Categorias separadas por coma: phone, email, url, qr, regex. Si se omite, se activan phone, email, url y qr.
regex_patternstringopcional
Expresion regular personalizada. Solo se usa si regex esta en categories.
Respuestas
200Imagen procesada exitosamente
400Formato no soportado o archivo corrupto
413Imagen supera el limite de 10 MB
422Error de validacion en parametros
Ejemplo de respuesta
{
  "url": "https://api.blurix.io/v1/result/a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "status": "blurred",
  "processing_time_ms": 1200,
  "regions_detected": 2,
  "detections": [
    {
      "category": "phone",
      "matched_value": "+57 300 123 4567",
      "box": [[10,20],[200,20],[200,50],[10,50]]
    },
    {
      "category": "email",
      "matched_value": "contacto@empresa.com",
      "box": [[10,60],[250,60],[250,90],[10,90]]
    }
  ],
  "ocr_texts": ["Telefono: +57 300 123 4567", "Contacto: contacto@empresa.com"]
}
POST/v1/blur/url

Difuminar imagen desde URL

Recibe la URL de una imagen publica, la descarga, detecta datos de contacto visibles y los difumina automaticamente.

Bodyapplication/json
image_urlstring (url)requerido
URL publica de la imagen a procesar.
blur_strengthintegeropcional
Intensidad del difuminado. Valor impar >= 1.
Default: 71
categoriesstring[]opcional
Categorias a detectar: ["phone","email","url","qr","regex"]. Si se omite, se activan phone, email, url y qr.
regex_patternstringopcional
Expresion regular personalizada. Solo se usa si "regex" esta en categories.
asinstringopcional
ASIN del producto. Organiza la ruta S3 y se guarda en historial.
Respuestas
200Imagen procesada exitosamente
400URL inaccesible o formato no soportado
422URL invalida
Ejemplo de request
// Headers
X-API-Key: blx_xxx

// Body
{
  "image_url": "https://ejemplo.com/imagen.jpg",
  "blur_strength": 71,
  "categories": ["phone", "email", "url", "qr"],
  "asin": "B0G11CFR4H"
}

// Con regex personalizada
{
  "image_url": "https://ejemplo.com/imagen.jpg",
  "categories": ["email", "regex"],
  "regex_pattern": "\\b[A-Z]{2}\\d{6}\\b"
}
POST/v1/blur/batch

Difuminar multiples imagenes (batch)

Procesa multiples imagenes de un producto en paralelo. Cada imagen se analiza de forma independiente para maximo rendimiento. Devuelve la URL original para imagenes sin datos de contacto.

Bodyapplication/json
imagesstring[]requerido
Lista de URLs publicas de las imagenes a procesar.
blur_strengthintegeropcional
Intensidad del difuminado. Valor impar >= 1.
Default: 71
categoriesstring[]opcional
Categorias a detectar: ["phone","email","url","qr","regex"]. Si se omite, se activan phone, email, url y qr.
regex_patternstringopcional
Expresion regular personalizada. Se aplica a todas las imagenes del batch.
asinstringopcional
ASIN del producto. Organiza S3 y se guarda en historial.
id_melistringopcional
ID del producto en MercadoLibre. Solo para trazabilidad.
Respuestas
200Imagenes procesadas exitosamente
400URL inaccesible o formato no soportado
422Body invalido o campos faltantes
500Error interno del servidor
Ejemplo de request / respuesta
// Request
// Headers
X-API-Key: blx_xxx

// Body
{
  "asin": "B0G11CFR4H",
  "id_meli": "MCO24316784",
  "images": [
    "https://ejemplo.com/img1.jpg",
    "https://ejemplo.com/img2.jpg"
  ],
  "blur_strength": 71,
  "categories": ["phone", "email", "url", "qr"]
}

// Response
{
  "batch_id": "550e8400-e29b-41d4-a716-446655440000",
  "asin": "B0G11CFR4H",
  "id_meli": "MCO24316784",
  "images": [
    "https://api.blurix.io/v1/result/uuid1",
    "https://ejemplo.com/img2.jpg"
  ],
  "summary": {
    "total_images": 2,
    "images_with_contact_data": 1,
    "images_without_contact_data": 1,
    "images_failed": 0,
    "processing_time_ms": 1487
  },
  "results": [
    {
      "index": 0,
      "url": "https://api.blurix.io/v1/result/uuid1",
      "status": "blurred",
      "regions_detected": 1,
      "detections": [
        {
          "category": "phone",
          "matched_value": "+57 300 123 4567",
          "box": [[10,20],[200,20],[200,50],[10,50]]
        }
      ],
      "ocr_texts": ["Telefono: +57 300 123 4567"]
    },
    {
      "index": 1,
      "url": "https://ejemplo.com/img2.jpg",
      "status": "clean",
      "regions_detected": 0,
      "detections": [],
      "ocr_texts": []
    }
  ]
}
GET/v1/usage

Consultar uso actual

Devuelve el uso actual de la API key: imagenes consumidas, limite del plan, imagenes restantes y concurrencia activa.

Headers
X-API-Keystringrequerido
Clave de API del usuario.
Respuestas
200Informacion de uso obtenida exitosamente
401API key invalida o ausente
Ejemplo de respuesta
// Request
curl https://api.blurix.io/v1/usage \
  -H "X-API-Key: blx_xxx"

// Response
{
  "plan": "basic",
  "usage": 45,
  "limit": 100,
  "remaining": 55,
  "reset_date": "2026-05-01",
  "active_processing": 2,
  "concurrency_limit": 5
}
GET/v1/stats

Estadisticas de uso

Estadisticas de uso por periodo. Soporta consulta por API key o por usuario.

Query params
periodstringopcional
Periodo de consulta: today, 7d, 30d o 90d.
Default: today
Respuestas
200Estadisticas obtenidas exitosamente
401API key o token invalido
Ejemplo de uso
// Por API key
curl "https://api.blurix.io/v1/stats?period=7d" \
  -H "X-API-Key: blx_xxx"