Registro de Aplicación en MAGIIS

Es necesario tener una cuenta activa MAGIIS:

  • De Compañía de Traslados.
  • O de Empresas (deben tener asociadas, al menos una Compañía de Traslados).

Paso a Paso:

  1. Ingresar con un usuario con privilegios de Supervisor.
  2. Ingresar desde el menú a Integraciones -> MAGIIS APIs y hacer clic en Administrar.
  3. Hacer clic en Agregar Aplicación y el asistente te guiará en el proceso.
    1. Ingresar Nombre y descripción de la aplicación a registrar.
    2. Ingresar Nombre de Usuario y generar un Password.
      Nota: Guardar el Password generado ya que no será posible volver a acceder al mismo una vez terminado el proceso de registro.
    3. Seleccionar el rol que le permitirá acceder a los servicios publicados y finalizar.

Servicio: Autenticación

Después de registrar tu aplicación, Autenticar con el Usuario y Password generados. Esto devolverá el token necesario para utilizar los servicios de MAGIIS.


Recurso
POST https://api.public.magiis.com/auth/login

Parámetros Solicitud

Header

RoleToAttempt = <Vacío>

Input [body]

{
"password": "<El Password generado en proceso de registro de Aplicación>",
"username": "<El Usuario generado en proceso de registro de Aplicación>"
}
Parámetros Respuesta

Output

{
"token": "Bearer eyJhbGciOiJIUzUxMiJ……"
}

Servicio: Nuevo Viaje

Recurso
POST https://api.public.magiis.com/trip/create

Parámetros Solicitud

Header

Authorization= <Token generado servicio de Autenticación>
ApplicationName= <El Usuario generado en proceso de registro de Aplicación>

Input [Body]

{"origin": {
   "latitude": "-38.045754",
   "longitude": "-57.3422546",
   "shortName": "<Nombre descriptivo de la dirección solicitada>"
},
"destination": {
   "latitude": "-38.0243244",
   "longitue": "-57.572348",
   "shortName": "<Nombre descriptivo de la dirección solicitada>"
},
"passengerUserId": <ID Pasajero>,
"guestPassengerName": "<Nombre del Pasajero Invitado>", (Opcional)
"serviceType": <ID Tipo de Servicio Disponible por la Compañía de Traslados>,
"generatedTravel": <0: Presupuestar Viaje | 1: Generar el viaje>
}
Parámetros Respuesta

Output
Presupuesto Viaje: Lista de cotizaciones del viaje por Tipo de Servicio

[
{
"distance": 1.76,
"pricePointToPoint": 100.00,
"duration": "4 min",
"origin": {
   "latitude": "-38.0237654",
   "longitude": "-57.5745646",
   "shortName": "<Dirección> <Altura>, <Ciudad>, <Provincia>, <País>"
},
"destination": {
   "latitude": "-38.524914",
   "longitude": "-57.877348",
   "shortName": "<Dirección> <Altura>, <Ciudad>, <Provincia>, <País>"
},
"serviceType": 1,
"serviceName": "Standard"
},
{
"distance": 1.76,
"pricePointToPoint": 200.00,
"duration": "4 min",
"origin": {
   "latitude": "-38.0237654",
   "longitude": "-57.5745646",
   "shortName": "<Dirección> <Altura>, <Ciudad>, <Provincia>, <País>"
},
"destination": {
   "latitude": "-38.524914",
   "longitude": "-57.877348",
   "shortName": "<Dirección> <Altura>, <Ciudad>, <Provincia>, <País>"
},
"serviceType": 2,
"serviceName": "Ejecutivo"
}
]

Generar Viaje: Lista siempre con un solo elemento

[
{
"travelIdForCarrier": 1399,
"passengerFirstName": "<Nombre Pasajero>",
"passengerLastName": "<Apellido Pasajero>",
"origin": "<Dirección> <Altura>, <Ciudad>, <Provincia>, <País>",
"destination": "<Dirección> <Altura>, <Ciudad>, <Provincia>, <País>",
"originPlatform": "Web",
"creationDate": "2020-11-12T13:16:02.038Z",
"paymentMethod": "CASH",
"simulatePrice": 100.00,
"serviceType": "Standard",
"avoidTolls": false,
"avoidHighways": false
}
]

Servicio: Cancelación de Viaje

Recurso
POST https://api.public.magiis.com/trip/cancel

Parámetros Solicitud

Header

Authorization= <Token generado servicio de Autenticación>
ApplicationName= <El Usuario generado en proceso de registro de Aplicación>

Input [Body]

{
"travelIdForCarrier": <ID del viaje a Cancelar>,
"cancelReason": "<Descripción del motivo de la cancelación>"
}
Parámetros Respuesta

Output

{
"status": "SUCCESS",
"cancelCost": 0,
"currencyCode": "ARS",
"message": "Trip <ID del Viaje> canceled."
}

Servicio: Listado de Viajes

Recurso
POST https://api.public.magiis.com/trip/query/list

Parámetros Solicitud

Header

Authorization= <Token generado servicio de Autenticación>
ApplicationName= <El Usuario generado en proceso de registro de Aplicación>

Input [Body]

{
"dateFrom": "2020-11-12",
"dateTo": "2020-11-12",
"page": 1
}
Parámetros Respuesta

Output

{
"page": {
"content": [
{
"travelIdForCarrier": 1393,
"state": "CANCELLED",
"passengerFirstName": "<Nombre del Pasajero>",
"passengerLastName": "<Apellido del Pasajero>",
"driverFirstName": null,
"driverLastName": null,
"vehicleMark": null,
"vehicleModel": null,
"vehicleDomain": null,
"carPlate": null,
"origin": "<Dirección> <Altura>, <Ciudad>, <Provincia>, <País>",
"destination": "<Dirección> <Altura>, <Ciudad>, <Provincia>, <País>",
"creationDate": "2020-11-12T10:55:47.785Z",
"finalPrice": null,
"isProgrammed": false,
"paymentMethod": "CASH",
"simulatePrice": 166.29,
"waypoints": null,
"serviceType": "Standard",
"avoidTolls": false,
"avoidHighways": false,
"delivery": false
},
{
"travelIdForCarrier": 1394,
"state": "DONE",
"passengerFirstName": "<Nombre del Pasajero>",
"passengerLastName": "<Apellido del Pasajero>",
"driverFirstName": "<Nombre del Chofer>",
"driverLastName": "<Apellido del Chofer>",
"vehicleMark": "Renault",
"vehicleModel": "Laguna",
"vehicleDomain": "AD696KS",
"carPlate": "AD696KS",
"origin": "<Dirección> <Altura>, <Ciudad>, <Provincia>, <País>",
"destination": "<Dirección> <Altura>, <Ciudad>, <Provincia>, <País>",
"creationDate": "2020-11-12T11:41:32.310Z",
"finalPrice": 166,
"isProgrammed": false,
"paymentMethod": "CASH",
"simulatePrice": 166.29,
"waypoints": null,
"serviceType": "Blindado",
"avoidTolls": false,
"avoidHighways": false,
"delivery": false
}, …
],
"currentElementsQty": 8,
"totalElements": 8,
"currentPage": 1,
"totalPages": 1
}
}

Servicio: Ver Detalles de un Viaje

Recurso
POST https://api.public.magiis.com/trip/query/details

Parámetros Solicitud

Header

Authorization= <Token generado servicio de Autenticación>
ApplicationName= <El Usuario generado en proceso de registro de Aplicación>

Input [Body]

{
"travelIdForCarrier": <ID del Viaje>
}
Parámetros Respuesta

Output

{
"travelId": 9030,
"travelIdForCarrier": 1400,
"passengerFirstName": "<Nombre del Pasajero>",
"passengerLastName": "<Apellido del Pasajero>",
"passengerPhone": "<Teléfono Pasajero>",
"passengerEmail": "<Dirección de correo electrónico Pasajero>",
"hasGuestPassenger": false,
"guestPassengerName": null,
"requesterUser": "<Nombre Completo Solicitante>",
"travelDuration": null,
"driverFirstName": "<Nombre Chofer>",
"driverLastName": "Apellido Chofer",
"origin": {
"latitude": "-37.0695022",
"longitude": "-57.073078",
"shortName": "<Dirección> <Altura>, <Ciudad>, <Provincia>, <País>"
},
"destination": {
"latitude": "-38.9011986",
"longitude": "-57.9441034",
"shortName": "<Dirección> <Altura>, <Ciudad>, <Provincia>, <País>"
},
"vehicleDescription": "Ford - Focus",
"vehicleDomain": "PIK302",
"paymentMethod": "CASH",
"amount": 0,
"tourPrice": 0,
"roundTrip": false,
"waitTimePrice": null,
"isCorporate": false,
"delay": 0,
"parking": 0,
"roadToll": 0,
"state": "CANCELLED",
"reasonForCancellation": null,
"kilometers": 0,
"stops": 0,
"note": null,
"isDelivery": false,
"travelDate": "2020-11-12T13:18:08.642+0000",
"transportType": "Standard",
"isProgrammed": false,
"travelRating": null,
"simulationPrice": {
"distance": 5.58,
"pricePointToPoint": 171.06,
"duration": "13 min",
"origin": {
"latitude": "-37.0695022",
"longitude": "-57.073078",
"shortName": "<Dirección> <Altura>, <Ciudad>, <Provincia>, <País>"
},
"destination": {
"latitude": "-38.0011086",
"longitude": "-57.0441034",
"shortName": "<Dirección> <Altura>, <Ciudad>, <Provincia>, <País>"
},
"roundTrip": null,
"limit": null,
"rental": null,
"rentType": null,
"waypoints": null
},
"waitDetailList": null,
"waypoints": null,
"avoidHighways": false,
"avoidTolls": false,
"recurringTrip": false,
"originPlatform": "Android",
"isRental": false,
"rentType": null,
"tollList": null,
"parkingList": null
}

Servicio: Listado de Cuentas Corrientes y Saldo

Recurso
POST https://api.public.magiis.com/client/checking_account_balance/query/list

Parámetros Solicitud

Header

Authorization= <Token generado servicio de Autenticación>
ApplicationName= <El Usuario generado en proceso de registro de Aplicación>

Input [Body]

{
"page": 1
}
Parámetros Respuesta

Output

{
"currencyCode": "ARS",
"content": [
{
"checkingAccountId": 1241,
"name": "<Nombre de Compañía>",
"passengerClass": "COMPANY",
"balance": -1854,
"limit": 20000
},
{
"checkingAccountId": 1220,
"name": "<Apellido>, <Nombre>",
"passengerClass": "INDIVIDUAL",
"balance": 0,
"limit": 5000
},
{
"checkingAccountId": 1160,
"name": "<Apellido>, <Nombre>",
"passengerClass": "INDIVIDUAL",
"balance": 31,
"limit": 2000
},…
],
"currentElementsQty": 16,
"totalElements": 16,
"currentPage": 1,
"totalPages": 1
}

Servicio: Ver detalle de una Cuenta Corriente

Recurso
POST https://api.public.magiis.com/client/checking_account/query/detail

Parámetros Solicitud

Header

Authorization= <Token generado servicio de Autenticación>
ApplicationName= <El Usuario generado en proceso de registro de Aplicación>

Input [Body]

{
"checkingAccountId": 1241,
"dateFrom": "2020-10-01",
"dateTo": "2020-10-19",
"page": 1
}
Parámetros Respuesta

Output

{
"currencyCode": "ARS",
"content": [
{
"creationDate": "2020-10-15T13:34:20.541+0000",
"travelIdForCarrier": null,
"concept": "Pago",
"costCenter": null,
"passengerName": null,
"debit": 0,
"credit": 800,
"balance": -911
},
{
"creationDate": "2020-10-15T13:26:10.139+0000",
"travelIdForCarrier": null,
"concept": "Pago",
"costCenter": null,
"passengerName": null,
"debit": 0,
"credit": 111,
"balance": -111
}
],
"currentElementsQty": 2,
"totalElements": 2,
"currentPage": 1,
"totalPages": 1
}