DOCS
Casos de usos

API + Autoinspector App + Webhooks

Crea inspecciones desde tu backend, delega la carga de datos a Autoinspector App y recibe eventos en tiempo real mediante webhooks.

Esta guía describe como un sistema backend puede crear, actualizar y procesar inspecciones. Esta es la manera canónica, segura y confiable de integrar Autoinspector en tu sistema.

API + Webhooks para crear y procesar inspecciones

1. Crear y publicar un template

En el Dashboard, ingresa a Studio y crea el template que vas a consumir por API.

Crea el template desde el Studio de inspecciones.

Agrega assets en distintas secciones (inputs, imágenes, archivos, etc.).

Habilita las validaciones de inteligencia provistas por Autoinspector para ese template.

Define reglas de resultado de inspección según tu lógica de negocio.

Publica el template para que sea consumible por Dashboard y API.

2. Obtener API Key

Usa tu cuenta de developer y copia la clave desde la sección API Keys.

Dentro de Autoinspector Dashboard, accede a configuración de empresa y luego ingresa en Developers.

Copia tu API key de producción desde la sección API Keys.

3. Crear webhook

Sigue los mismos pasos del flujo estándar de creación de webhooks.

Accede al panel de Administración de webhooks.

Haz click en el botón de crear webhook.

Ingresa el endpoint de tu sistema backend. Asegúrate de que sea accesible desde internet.

En la sección de eventos, suscríbete al evento inspection_completed.

Haz click sobre Crear Endpoint.

4. Manejar webhooks de forma segura

Una vez que hayas creado el webhook, debes manejar los eventos que Autoinspector te enviara cuando una inspección sea completada.

En el detalle del webhook creado, vas a ver que Autoinspector te proporciona un webhook signature. Esta signature es necesario para validar la firma del webhook.

De esta forma tu endpoint puede validar que la request que le esta llegando es efectivamente de Autoinspector.

Asegúrate de validar esta firma y payload cuando recibas el evento inspection_completed en tu endpoint.

Importante: usa el contenido crudo de la solicitud

La firma se calcula sobre el cuerpo crudo de la solicitud. Si transformas el cuerpo de la solicitud antes de validar la firma (ej: parser a JSON), el resultado no coincidirá.
import crypto from 'node:crypto'import express from 'express'const app = express()app.post(  '/webhooks/autoinspector',  express.raw({ type: 'application/json' }),  (req, res) => {    const signature = req.header('autoinspector-signature')    const secret = process.env.AUTOINSPECTOR_WEBHOOK_SECRET    if (!signature || !secret) return res.status(400).json({ error: 'Missing signature or secret' })    const rawBody = req.body    const expectedSignature = crypto      .createHmac('sha256', secret)      .update(rawBody)      .digest('hex')    const isValid =      signature.length === expectedSignature.length &&      crypto.timingSafeEqual(        Buffer.from(signature),        Buffer.from(expectedSignature),      )    if (!isValid) return res.status(400).json({ error: 'Invalid signature' })    const event = JSON.parse(rawBody.toString('utf8'))    if (event.event === 'inspection_completed') {      // Tu lógica de negocio    }    return res.status(200).json({ received: true })  },)

5. Obtener contrato para la creación de inspección

Para saber que valores debes enviar en la creacion de una inspección que utilizara la plantilla que acabaste de publicar, debes obtener el contrato de la plantilla.

El contrato de la plantilla es el que define los valores que se pueden enviar en la creación y actualización de una inspección.

Contrato basado en JSON Schema

El contrato de la plantilla sigue el estándar de JSON Schema. Puedes revisar la especificación oficial en json-schema.org/specification.

Puedes obtener este contrato consumiendo el endpoint de obtención de especificación de plantilla:

curl -X GET "https://insurama.api.autoinspector.ai/v2/template/$TEMPLATE_ID?stage=create" \  -H "x-api-key: $AUTOINSPECTOR_API_KEY" \  -H "Content-Type: application/json"

6. Crea una inspección

Crea la inspección con el templateId publicado, los assets requeridos para etapa de creación y una notificación para definir el canal y destinatario que recibirá el link de Autoinspector App.

El inicio de inspección, declaración de datos y finalización de la inspección deberá ser realizado por el cliente.

Para mas detalle sobre los parámetros de creación de inspección, puedes consultar la documentación de creación de inspección:.

curl -X POST "https://insurama.api.autoinspector.ai/v2/inspection" \  -H "x-api-key: $AUTOINSPECTOR_API_KEY" \  -H "Content-Type: application/json" \  -d '{    "templateId": "65f8f2c8a4a5b1c2d3e4f5a6",    "assets": [      {        "identifier": "input_528088f5-e28d-4c2c-adf9-f0f67c4bc28a",        "type": "text",        "value": "AB123CD"      }    ],    "notifications": [      {        "channel": "wsp",        "recipient": "+543812453820"      }    ],    "metadata": {      "policy_id": "POL-10021",      "external_claim_id": "CLM-92811"    }  }'

7. Verificar entrega de webhooks

Revisa el estado de entrega y los logs del endpoint para confirmar que recibiste y procesaste inspection_completed.

Accede al panel de Administración de webhooks.

Haz click sobre el webhook que creaste.

Revisa la tabla Historial y verifica que exista un registro de solicitud hacia tu endpoint con código de respuesta satisfactorio (2xx).

En esta página