¿Cómo hacer filtros por fecha en el API Skipo?
Para ciertos endpoints se permite seleccionar un filtro por fecha, el cual está definido por los campos startDate
y endDate
. Estos siguen el estándar ISO8601 y seguirán la zona horaria correspondiente a UTC (Coordinated Universal Time), esto deberá considerarse tanto para especificar el formato de la consulta como para la recepción de la respuesta.
ISO8601
El formato ISO 8601 es un estándar internacional para representar fechas y horas de manera clara y consistente. Utiliza el formato "YYYY-MM-DD" para fechas y "HH:MM:SS" para horas, asegurando precisión y evitando ambigüedades en diferentes contextos y regiones.
Funcionamiento
En caso de que sólo se especifique la fecha (YYYY-MM-DD) el comportamiento esperado es el siguiente:
- Para el caso de
startDate
se considera el inicio del día consultado - Para el caso de
endDate
se considera el final del día consultado
Ejemplo
GET https://api.skipo.com/v1/ledger_movements/CLP?startDate=2024-01-01&endDate=2024-04-01
Respuesta:
{
"startDate": "2024-01-01T00:00:00.000Z",
"endDate": "2024-04-01T23:59:59.999Z",
"currency": "CLP",
"data": [{ ... }],
"meta": { ... }
}
En caso de que además se incluya una hora específica (HH:MM:SS), entonces se considera el rango exacto dadas las horas entregadas.
Ejemplo
GET https://api.skipo.com/v1/ledger_movements/CLP?startDate=2024-01-01T04:45:50&endDate=2024-04-01T14:30:20
Respuesta:
{
"startDate": "2024-01-01T04:45:50.000Z",
"endDate": "2024-04-01T14:30:20.000Z",
"currency": "CLP",
"data": [{ ... }],
"meta": { ... }
}
Valores por defecto
También está la opción de no especificar los parámetros startDate
o endDate
, en dicho caso el comportamiento es el siguiente:
Parámetro | Default |
---|---|
startDate | Fecha del primer movimiento del usuario |
endDate | Fecha actual al final del día |