Documentación de la API

Nota: Todas las fechas y horas documentadas se expresan en UTC usando formato ISO 8601.

Posición del Dispositivo por Nombre

GET /DataConnectAPI/api/Device/{plate}

Recupera la posición actual y la información adicional de un dispositivo usando su identificador de placa.

Parámetros:

plate
(cadena, requerido): El identificador de la placa del dispositivo.

Encabezados:

Authorization
(requerido): Bearer <token>
Client-ID
(requerido): <Código del cliente>

Ejemplo de Solicitud:

GET /DataConnectAPI/api/Device/ABC123
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR...
Client-ID: 12345

Ejemplo de Respuesta:

{
  "id": 1,
  "serial": "SN123456",
  "plate": "ABC123",
  "latitude": 34.052235,
  "longitude": -118.243683,
  "altitude": 89.0,
  "deviceDateTime": "2024-10-21T14:55:00Z",
  "speed": 50.5,
  "course": 90.0,
  "address": "123 Main St, Los Angeles, CA",
  "distanceToAddress": 0.3,
  "city": "Los Angeles",
  "state": "CA",
  "country": "USA",
  "ignition": true,
  "satellites": 12,
  "mileage": 12000.5,
  "hobbsMeter": 500.2,
  "temperature": 25.4
}

Posición del Dispositivo por ID

GET /DataConnectAPI/api/Device?id={id}

Recupera la posición actual y la información adicional de un dispositivo usando su ID único.

Parámetros:

id
(int, requerido): El ID único del dispositivo.

Encabezados:

Authorization
(requerido): Bearer <token>
Client-ID
(requerido): <Código del cliente>

Ejemplo de Solicitud:

GET /DataConnectAPI/api/Device?id=1
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR...
Client-ID: 12345

Ejemplo de Respuesta:

{
  "id": 1,
  "serial": "SN123456",
  "plate": "ABC123",
  "latitude": 34.052235,
  "longitude": -118.243683,
  "altitude": 89.0,
  "deviceDateTime": "2024-10-21T14:55:00Z",
  "speed": 50.5,
  "course": 90.0,
  "address": "123 Main St, Los Angeles, CA",
  "distanceToAddress": 0.3,
  "city": "Los Angeles",
  "state": "CA",
  "country": "USA",
  "ignition": true,
  "satellites": 12,
  "mileage": 12000.5,
  "hobbsMeter": 500.2,
  "temperature": 25.4
}

Posición de Múltiples Dispositivos

GET /DataConnectAPI/api/Devices?id=1&id=2&id=3,...

Recupera las posiciones actuales y detalles adicionales de múltiples dispositivos por sus IDs.

Parámetros:

IDs
(arreglo de enteros, requerido): Lista de IDs de dispositivos (ejemplo: ?id=1&id=2&id=3).

Encabezados:

Authorization
(requerido): Bearer <token>
Client-ID
(requerido): <Código del cliente>

Ejemplo de Solicitud:

GET /DataConnectAPI/api/Devices?id=1&id=2&id=3
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR...
Client-ID: 12345

Ejemplo de Respuesta:

[
  {
    "id": 1,
    "serial": "SN123456",
    "plate": "ABC123",
    "latitude": 34.052235,
    "longitude": -118.243683,
    "altitude": 89.0,
    "deviceDateTime": "2024-10-21T14:55:00Z",
    "speed": 50.5,
    "course": 90.0,
    "address": "123 Main St, Los Angeles, CA",
    "distanceToAddress": 0.3,
    "city": "Los Angeles",
    "state": "CA",
    "country": "USA",
    "ignition": true,
    "satellites": 12,
    "mileage": 12000.5,
    "hobbsMeter": 500.2,
    "temperature": 25.4
  },
  {
    "id": 2,
    "serial": "SN654321",
    "plate": "XYZ789",
    "latitude": 40.712776,
    "longitude": -74.005974,
    "altitude": 10.0,
    "deviceDateTime": "2024-10-21T14:56:00Z",
    "speed": 30.0,
    "course": 180.0,
    "address": "456 Broadway, New York, NY",
    "distanceToAddress": 0.1,
    "city": "New York",
    "state": "NY",
    "country": "USA",
    "ignition": true,
    "satellites": 14,
    "mileage": 8500.3,
    "hobbsMeter": 320.1,
    "temperature": 18.7
  }
]

Posición de Todos los Dispositivos

GET /DataConnectAPI/api/AllDevices

Recupera las posiciones actuales y detalles adicionales de todos los dispositivos.

Encabezados:

Authorization
(requerido): Bearer <token>
Client-ID
(requerido): <Código del cliente>

Ejemplo de Solicitud:

GET /DataConnectAPI/api/AllDevices
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR...
Client-ID: 12345

Ejemplo de Respuesta:

[
  {
    "id": 1,
    "serial": "SN123456",
    "plate": "ABC123",
    "latitude": 34.052235,
    "longitude": -118.243683,
    "altitude": 89.0,
    "deviceDateTime": "2024-10-21T14:55:00Z",
    "speed": 50.5,
    "course": 90.0,
    "address": "123 Main St, Los Angeles, CA",
    "distanceToAddress": 0.3,
    "city": "Los Angeles",
    "state": "CA",
    "country": "USA",
    "ignition": true,
    "satellites": 12,
    "mileage": 12000.5,
    "hobbsMeter": 500.2,
    "temperature": 25.4
  },
  {
    "id": 2,
    "serial": "SN654321",
    "plate": "XYZ789",
    "latitude": 40.712776,
    "longitude": -74.005974,
    "altitude": 10.0,
    "deviceDateTime": "2024-10-21T14:56:00Z",
    "speed": 30.0,
    "course": 180.0,
    "address": "456 Broadway, New York, NY",
    "distanceToAddress": 0.1,
    "city": "New York",
    "state": "NY",
    "country": "USA",
    "ignition": true,
    "satellites": 14,
    "mileage": 8500.3,
    "hobbsMeter": 320.1,
    "temperature": 18.7
  }
]

Historial de Posición del Dispositivo

GET /DataConnectAPI/api/Position/{plate}/{from}/{to}

Recupera las posiciones históricas de un dispositivo dentro de un rango de tiempo especificado.

Parámetros:

plate
(cadena, requerido): El identificador de la placa del dispositivo.
from
(fecha y hora ISO 8601 en UTC, requerido): Fecha y hora de inicio del rango.
to
(fecha y hora ISO 8601 en UTC, requerido): Fecha y hora de fin del rango.

Encabezados:

Authorization
(requerido): Bearer <token>
Client-ID
(requerido): <Código del cliente>

Ejemplo de Solicitud:

GET /DataConnectAPI/api/Position/ABC123/2024-01-01T00:00:00Z/2024-01-02T00:00:00Z
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR...
Client-ID: 12345

Ejemplo de Respuesta:

[
  {
    "positionId": 1001,
    "serial": "SN123456",
    "plate": "ABC123",
    "latitude": 34.052235,
    "longitude": -118.243683,
    "altitude": 89.0,
    "deviceDateTime": "2024-01-01T00:15:00Z",
    "serverDateTime": "2024-01-01T00:15:02Z",
    "speed": 48.0,
    "course": 90.0,
    "eventId": 2001,
    "address": "123 Main St, Los Angeles, CA",
    "distanceToAddress": 0.3,
    "city": "Los Angeles",
    "state": "CA",
    "country": "USA",
    "ignition": true,
    "satellites": 10,
    "mileage": 12005.5,
    "temperature": 22.5
  }
]

Agregar Posiciones

POST /DataConnectAPI/api/AddPositions

Registra una o más posiciones GPS. Este endpoint no requiere el encabezado Client-ID.

Cuerpo de la Solicitud:

Enviar un arreglo JSON de posiciones. Incluya únicamente los campos listados para este endpoint; los demás valores son calculados por el sistema o no aplican para el registro.

serial
(cadena, requerido): Serial del dispositivo.
plate
(cadena, requerido): Placa del dispositivo.
latitude
(número, requerido): Latitud de la posición.
longitude
(número, requerido): Longitud de la posición.
deviceDateTime
(fecha y hora ISO 8601 en UTC, requerido): Fecha y hora reportada por el dispositivo.
speed
(número, requerido): Velocidad reportada por el dispositivo en kilómetros por hora.
course
(número, requerido): Rumbo o dirección de desplazamiento.
satellites
(número, requerido): Cantidad de satélites.
ignition
(booleano, requerido): Estado de ignición.

Encabezados:

Authorization
(requerido): Bearer <token>
Content-Type
(requerido): application/json

Ejemplo de Solicitud:

POST /DataConnectAPI/api/AddPositions
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR...
Content-Type: application/json

[
  {
    "serial": "SN123456",
    "plate": "ABC123",
    "latitude": 34.052235,
    "longitude": -118.243683,
    "deviceDateTime": "2024-10-21T14:55:00Z",
    "speed": 50.5,
    "course": 90.0,
    "satellites": 12,
    "ignition": true
  },
  ...
]

Ejemplo de Respuesta:

1

Autenticación

POST /SecurityApi/auth/authenticate

Recupera un token de autenticación.

Parámetros:

Username
(cadena, requerido): Nombre de usuario.
Password
(cadena, requerido): Contraseña del usuario.
UniqueId
(guid, requerido): Autogenerado.

Ejemplo de Solicitud:

POST /SecurityApi/Auth/authenticate
Content-Type: application/json

{
  "Username": "user123",
  "Password": "pass123",
  "UniqueId": "unique-client-id"
}

Ejemplo de Respuesta:

{
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}

Soporte

Si encuentras algún problema o necesitas ayuda adicional, por favor, contáctanos via correo electrónico:

Correo electrónico: soporte@c2ls.co

Contacte con c2ls

Contáctenos en caso de tener alguna duda o estar interesado en alguno de nuestras soluciones

WhatsApp(+57) 318 409 43 05
UbicaciónCr 43A # 38A Sur - 15. Oficina 401.
Correocomercial@c2ls.co