Skip to main content

Crear o actualizar información del día

🔒
Sistema de seguridad externo requerido

Este endpoint está diseñado para ingestar información de otros sistemas de seguridad. En caso de no contar con un sistema externo, recomendamos no utilizar esta sección.

[ POST ]

Esta ruta permite crear un documento donde se recopile la cantidad de eventos de seguridad ocurridos por día. También es posible guardar el Score de tu plataforma y la distancia que registró el conductor en este día.

https://sync.airbagtech.io/provider-data

Campos

NombreTipoRequeridoDescripción
driverIdStringID del conductor en el sistema. Este debe corresponder al ID que se utilizó al crear el conductor.
distanceNumberDistancia recorrida por el conductor en el día (en kilómetros). Puede incluir decimales.
scoreNumberPuntuación de seguridad del conductor según tu sistema externo (generalmente de 0 a 100).
dateStringFecha del registro en formato ISO 8601 (YYYY-MM-DD). Ejemplo: "2025-10-19"
securityEventsArrayLista de eventos de seguridad registrados en el día. Cada evento debe incluir el tipo de evento y la cantidad de ocurrencias.
eventStringTipo de evento de seguridad. Debe ser uno de los valores válidos listados en la sección Eventos.
countNumberCantidad de veces que ocurrió este evento en el día.

Tipos de eventos válidos

Consulta la lista completa de eventos de seguridad soportados en la página de Eventos. Algunos ejemplos comunes:

  • braking - Frenado brusco
  • speeding - Exceso de velocidad
  • acceleration - Aceleración brusca
  • mobile_usage - Distracción por teléfono
  • drowsy - Somnolencia
  • no_seatbelt - Sin cinturón de seguridad

Headers

Content-TypeAutorization
application/jsonapikey {{API_KEY}}

Body

[
{
"driverId": "5678",
"distance": 150.5,
"score": 95,
"date": "2025-10-19",
"securityEvents": [
{
"event": "braking",
"count": 11
},
{
"event": "speeding",
"count": 2
}
]
},
{
"driverId": "1234",
"distance": 200,
"score": 97,
"date": "2025-10-19",
"securityEvents": [
{
"event": "braking",
"count": 1
},
{
"event": "speeding",
"count": 2
}
]
}
]

Ejemplo

curl --location 'https://sync.airbagtech.io/provider-data' \
--header 'Content-Type: application/json' \
--header 'Authorization: apikey {{API_KEY}}' \
--data '[
{
"driverId": "1234",
"distance": 150.5,
"score": 95,
"date": "2025-10-19",
"securityEvents": [
{
"event": "braking",
"count": 11
},
{
"event": "speeding",
"count": 2
}
]
},
{
"driverId": "ff40212a_10d7_4dc3_bf2d_f8685494836c",
"distance": 200,
"score": 97,
"date": "2025-10-19",
"securityEvents": [
{
"event": "braking",
"count": 1
},
{
"event": "speeding",
"count": 2
}
]
}
]'

Respuesta exitosa

{
"status": true,
"message": "Data received and processed successfully.",
"recordsCreated": 2
}

Respuesta con error

{
"status": false,
"error": "You are not authorized to perform this action",
"errorId": "-1"
}

Notas importantes

  • El endpoint acepta un array de registros, lo que permite enviar información de múltiples conductores en una sola petición. Pero como mínimo necesitas mandar 1.
  • Los eventos de seguridad deben corresponder a las llaves válidas listadas en la documentación de Eventos.
  • Si un conductor no tiene eventos de seguridad en el día, puedes enviar un array vacío en securityEvents.
  • La fecha debe estar en formato ISO 8601 (YYYY-MM-DD).
  • Los campos distance y score son opcionales, pero se recomienda enviarlos cuando estén disponibles para un mejor seguimiento.
  • Si la información ya existe para el día donde se esta mandando la información nuestro sistema remplazará la información con la nueva.
  • Se pueden agregar o modificar hasta 50 registros por llamada, de lo contrario, si se mandan más de 50 entonces se mostrará un error.