Saltar al contenido principal

Consultar los movimientos de monedas de un conductor

[ GET ]

Consulta los movimientos (abonos y cargos) de monedas registrados para un conductor específico dentro de un rango de fechas.

https://sync.airbagtech.io/coins/driver

Valores de datos

type

Filtra los movimientos por razón. Los valores aceptados son los listados como canónicos en Monedas › Razones de ajuste de monedas (trip, daily-bonus, prizes, referral, challenges, etc.).

Campos

NombreTipoRequeridoDescripción
driverIdStringID del conductor a consultar.
startDateStringFecha de inicio de la consulta (inclusive).
Formato ISO 8601.
endDateStringFecha de fin de la consulta (inclusive).
Formato ISO 8601.
typeStringNoFiltra los movimientos por razón. Valores soportados: los listados en la tabla anterior.
limitNumberNoNúmero máximo de registros a regresar. Valor por defecto: 30.

Headers

Content-TypeAutorization
application/jsonapikey {{API_KEY}}

Ejemplo

curl --location 'https://sync.airbagtech.io/coins/driver' \
--header 'Content-Type: application/json' \
--header 'Authorization: apikey {{API_KEY}}' \
--data 'driverId=EMP-1042&type=trip&startDate=2025-02-01&endDate=2025-02-28&limit=30'

Respuestas

✅ Respuesta exitosa (200 OK)

Devuelve el número total de movimientos devueltos (count) y un arreglo data con cada movimiento del conductor, ordenado del más reciente al más antiguo. Cada movimiento incluye el saldo antes (oldCoins) y después (newCoins) del ajuste, permitiendo reconstruir el histórico de balance.

{
"status": true,
"count": 7,
"data": [
{
"internalId": "EMP-1042",
"driverName": "Juan Pérez Ramírez",
"created": "2025-02-15T13:26:54.246Z",
"oldCoins": 524,
"newCoins": 525,
"type": "daily-bonus",
"value": 1
},
{
"internalId": "EMP-1042",
"driverName": "Juan Pérez Ramírez",
"created": "2025-02-14T16:13:15.807Z",
"oldCoins": 523,
"newCoins": 524,
"type": "trip",
"value": 1
},
{
"internalId": "EMP-1042",
"driverName": "Juan Pérez Ramírez",
"created": "2025-02-13T13:19:15.480Z",
"oldCoins": 522,
"newCoins": 523,
"type": "daily-bonus",
"value": 1
},
{
"internalId": "EMP-1042",
"driverName": "Juan Pérez Ramírez",
"created": "2025-02-12T17:37:31.906Z",
"oldCoins": 521,
"newCoins": 522,
"type": "trip",
"value": 1
},
{
"internalId": "EMP-1042",
"driverName": "Juan Pérez Ramírez",
"created": "2025-02-10T13:16:14.252Z",
"oldCoins": 519,
"newCoins": 521,
"type": "daily-bonus",
"value": 2
},
{
"internalId": "EMP-1042",
"driverName": "Juan Pérez Ramírez",
"created": "2025-02-09T19:05:22.981Z",
"oldCoins": 19,
"newCoins": 519,
"type": "referral",
"value": 500
},
{
"internalId": "EMP-1042",
"driverName": "Juan Pérez Ramírez",
"created": "2025-02-08T14:22:11.042Z",
"oldCoins": 250,
"newCoins": 19,
"type": "prizes",
"value": 231
}
]
}
nota
  • data contiene hasta limit elementos (por defecto 30). Si no hay coincidencias, data es un arreglo vacío ([]).
  • Los movimientos de tipo prizes reducen el balance del conductor (newCoins < oldCoins). El resto de tipos lo incrementan (newCoins > oldCoins).
  • Como todos los movimientos pertenecen al mismo conductor, los campos driverName e internalId se repiten en cada elemento.

Descripción de campos de respuesta

CampoTipoDescripción
statusBooleanIndica si la operación fue exitosa.
countNumberNúmero total de movimientos devueltos en data.
dataArray<Object>Movimientos de monedas del conductor ordenados del más reciente al más antiguo. Ver tabla abajo.

Campos dentro de cada elemento de data

CampoTipoDescripción
driverNameStringNombre completo del conductor. Se repite en cada movimiento.
internalIdString | nullID del conductor proporcionado por la empresa al crearlo. Es null cuando el conductor no tiene un internalId asignado.
createdStringFecha y hora del movimiento en formato ISO 8601 (UTC).
typeStringRazón del movimiento. Consulta la lista completa de valores en Monedas › Razones de ajuste de monedas.
valueNumberCantidad absoluta de monedas involucradas en el movimiento. No lleva signo; usa oldCoins y newCoins para determinar la dirección (abono o cargo).
oldCoinsNumberBalance del conductor antes del movimiento.
newCoinsNumberBalance del conductor después del movimiento.

❌ Respuesta con error (400 Bad Request)

Se devuelve cuando el driverId no corresponde a ningún conductor registrado o cuando las fechas tienen un formato inválido.

{
"status": false,
"message": "Error: Driver not found",
"errorId": "sentry_error_id_123"
}