Saltar al contenido principal

POST /v1/inspections/visual

Envio de imagenes del vehiculo para inspeccion visual completa con IA de vision por computadora. Detecta rayones, abolladuras, danos de pintura, danos en vidrio y mas con 94% de precision.

Request

curl -X POST "https://api.steerai.autos/v1/inspections/visual" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "vehicle_id": "veh_1234567890abcdef",
    "images": [
      {
        "url": "https://storage.example.com/front.jpg",
        "angle": "front",
        "type": "exterior"
      },
      {
        "url": "https://storage.example.com/rear.jpg",
        "angle": "rear",
        "type": "exterior"
      },
      {
        "url": "https://storage.example.com/left-side.jpg",
        "angle": "left_side",
        "type": "exterior"
      },
      {
        "url": "https://storage.example.com/right-side.jpg",
        "angle": "right_side",
        "type": "exterior"
      }
    ],
    "options": {
      "detailed_analysis": true,
      "generate_report": true,
      "detect_hidden_damage": false
    }
  }'

Request Body

FieldTypeRequiredDescription
vehicle_idstringYesIdentificador del vehiculo
imagesarrayYesArreglo de imagenes (min 4, max 50)
images[].urlstringYesURL publica de la imagen
images[].anglestringYesfront, rear, left_side, right_side, front_left, front_right, rear_left, rear_right, top, interior, dashboard, engine, trunk, undercarriage
images[].typestringYesexterior, interior, mechanical
options.detailed_analysisbooleanNoIncluye mediciones detalladas (default: false)
options.generate_reportbooleanNoGenera reporte PDF (default: true)
options.detect_hidden_damagebooleanNoAnalisis avanzado de danos ocultos (default: false)

Response

{
  "status": "success",
  "data": {
    "inspection_id": "vis_1234567890abcdef",
    "vehicle_id": "veh_1234567890abcdef",
    "status": "completed",
    "created_at": "2024-01-15T10:30:00Z",
    "completed_at": "2024-01-15T10:30:45Z",
    "processing_time": 45.2,
    "results": {
      "overall_condition": "fair",
      "condition_score": 7.2,
      "confidence": 0.94,
      "damages": [
        {
          "damage_id": "dmg_front_bumper_001",
          "type": "scratch",
          "severity": "minor",
          "location": {
            "part": "front_bumper",
            "side": "front",
            "coordinates": {
              "x": 245,
              "y": 180,
              "width": 85,
              "height": 12
            }
          },
          "measurements": {
            "length": 8.5,
            "width": 1.2,
            "depth": 0.3,
            "unit": "cm"
          },
          "confidence": 0.96,
          "image_url": "https://storage.example.com/front.jpg",
          "annotated_url": "https://results.steerai.autos/dmg_front_bumper_001_annotated.jpg",
          "estimated_repair": {
            "min": 150,
            "max": 300,
            "currency": "USD",
            "repair_type": "paint_touch_up"
          }
        },
        {
          "damage_id": "dmg_rear_door_left_002",
          "type": "dent",
          "severity": "moderate",
          "location": {
            "part": "rear_door_left",
            "side": "left",
            "coordinates": {
              "x": 320,
              "y": 240,
              "width": 120,
              "height": 95
            }
          },
          "measurements": {
            "diameter": 11.5,
            "depth": 2.8,
            "unit": "cm"
          },
          "confidence": 0.89,
          "image_url": "https://storage.example.com/left-side.jpg",
          "annotated_url": "https://results.steerai.autos/dmg_rear_door_left_002_annotated.jpg",
          "estimated_repair": {
            "min": 500,
            "max": 850,
            "currency": "USD",
            "repair_type": "pdr_and_paint"
          }
        }
      ],
      "damage_summary": {
        "total_damages": 2,
        "by_severity": {
          "minor": 1,
          "moderate": 1,
          "severe": 0,
          "critical": 0
        },
        "by_type": {
          "scratch": 1,
          "dent": 1,
          "rust": 0,
          "crack": 0,
          "paint_damage": 0
        },
        "total_estimated_repair": {
          "min": 650,
          "max": 1150,
          "currency": "USD"
        }
      },
      "parts_affected": [
        {
          "part": "front_bumper",
          "condition": "good",
          "damage_count": 1
        },
        {
          "part": "rear_door_left",
          "condition": "fair",
          "damage_count": 1
        }
      ]
    },
    "reports": {
      "pdf_url": "https://reports.steerai.autos/vis_1234567890abcdef.pdf",
      "json_url": "https://api.steerai.autos/v1/inspections/visual/vis_1234567890abcdef/report"
    }
  },
  "meta": {
    "request_id": "req_visual_abc123",
    "processing_time": 45.234,
    "images_processed": 4,
    "ai_model_version": "v3.2.1"
  }
}

Campos de respuesta

FieldTypeDescription
inspection_idstringIdentificador unico de inspeccion visual
statusstringprocessing, completed, failed
results.overall_conditionstringexcellent, good, fair, poor, critical
results.condition_scorefloatPuntaje de 0-10 (10 = condicion perfecta)
results.confidencefloatNivel de confianza de IA (0-1)
damages[].typestringscratch, dent, rust, crack, paint_damage, glass_damage, panel_damage
damages[].severitystringminor, moderate, severe, critical
damages[].measurementsobjectDimensiones fisicas del dano
damages[].annotated_urlstringImagen con dano resaltado

Tipos de dano

Scratch: Dano superficial de pintura • Paint Damage: Pintura descascarada, saltada o deslavada • Rust: Corrosion en superficies metalicas • Oxidation: Oxidacion y desgaste de superficie
Dent: Dano por impacto con hundimiento • Panel Damage: Paneles doblados o desalineados • Crack: Grietas en paneles • Frame Damage: Problemas en el chasis
Glass Damage: Grietas o chips en vidrios • Headlight Damage: Faros opacos, agrietados o rotos • Trim Damage: Molduras faltantes o danadas • Mirror Damage: Espejos rotos o agrietados

Respuestas de error

400 Bad Request

{
  "status": "error",
  "error": {
    "code": "INSUFFICIENT_IMAGES",
    "message": "Minimum 4 images required for visual inspection",
    "type": "validation_error",
    "field": "images"
  }
}

422 Unprocessable Entity

{
  "status": "error",
  "error": {
    "code": "IMAGE_QUALITY_TOO_LOW",
    "message": "Image quality insufficient for analysis. Please provide higher resolution images (min 1280x720)",
    "type": "validation_error",
    "field": "images[2].url",
    "details": {
      "image_index": 2,
      "current_resolution": "640x480",
      "minimum_resolution": "1280x720"
    }
  }
}

Requisitos de imagen

Estandares de calidad de imagen
  • Resolucion minima: 1280x720 pixeles
  • Resolucion recomendada: 1920x1080 pixeles o mas
  • Formato: JPG, PNG, HEIC
  • Tamano maximo: 10MB por imagen
  • Iluminacion: Buena luz natural o artificial
  • Enfoque: Imagenes nitidas sin desenfoque

Mejores practicas

Captura de imagen

Guia de fotos optimas• Captura todos los angulos requeridos • Usa buena iluminacion (evita sombras) • Mantén la camara a 2-3 metros del vehiculo • Asegura que el panel completo aparezca • Evita reflejos y brillos

Deteccion de danos

Maximiza la precision• Limpia el vehiculo antes de fotografiar • Toma fotos de cerca del dano • Varios angulos por cada dano • Incluye objetos de referencia de escala • Iluminacion consistente en todas las imagenes

Webhooks

Configura webhooks para recibir actualizaciones en tiempo real cuando termine la inspeccion:
{
  "event": "visual_inspection.completed",
  "timestamp": "2024-01-15T10:30:45Z",
  "data": {
    "inspection_id": "vis_1234567890abcdef",
    "vehicle_id": "veh_1234567890abcdef",
    "status": "completed",
    "damages_detected": 2,
    "overall_condition": "fair",
    "condition_score": 7.2,
    "report_url": "https://reports.steerai.autos/vis_1234567890abcdef.pdf"
  }
}

Ejemplo: obtener resultados de inspeccion visual

curl -X GET "https://api.steerai.autos/v1/inspections/visual/vis_1234567890abcdef" \
  -H "Authorization: Bearer YOUR_API_KEY"

Ejemplo: listar inspecciones de vehiculos

curl -X GET "https://api.steerai.autos/v1/inspections/visual?vehicle_id=veh_1234567890abcdef&limit=10" \
  -H "Authorization: Bearer YOUR_API_KEY"
Query Parameters:
  • vehicle_id (string): Filtra por vehiculo
  • status (string): Filtra por estado (processing, completed, failed)
  • created_after (string): Filtro de fecha ISO 8601
  • created_before (string): Filtro de fecha ISO 8601
  • limit (integer): Resultados por pagina (default: 20, max: 100)
  • offset (integer): Offset de paginacion
Tip de rendimiento: Para procesamiento mas rapido, redimensiona imagenes a 1920x1080 antes de subirlas. Imagenes mas grandes no mejoran precision y aumentan el tiempo de proceso.