NAV
cURL

--

API Tenant

API Tenant - Introducción

Bienvenido a nuestra API creada especialmente para su empresa. Puedes utilizar nuestra API para acceder a la información relacionada a sus servicios contenida en nuestra base de datos.

Puede ver ejemplos de código en el área oscura de la derecha.

API Tenant - Autorización y Autenticación

Para suministrar el token de acceso, lo puedes hacer de la siguiente manera:

curl "api_endpoint_here" \
  -H "Authorization: Bearer <token>"
  -

Asegurate de reemplazar <token> con el token de acceso generado a través del API de inicio de sesión.

Todas las peticiones que se realicen a la API deben contener en la cabecera la credencial Authorization, el cual debe contener la palabra Bearer seguido de un espacio en blanco y el token de acceso que es generado a través del API de inicio de sesión. Esto permite identificar quién es el que realiza la petición sobre el sistema.

Para poder generar un token de acceso, debe suministrar el API Key generado por Tutenlabs y su API Secret al API de inicio de sesión.

Las API Keys generadas por Tutenlabs están siempre asociadas a una empresa, por lo que todas las consultas realizadas a través de la API, estarán ligadas a las acciones del "dueño" de la empresa.

API Tenant - Limitaciones

Se debe tener en consideración los límites que ofrece la API para su implementación, actualmente se tiene un límite de peticiones por segundos y minutos que se pueden realizar:

Cuando se alcance alguno de estos límites el sistema responderá con un código HTTP de error 429.

Nota: En caso ApiHub o cargas masivas el Api Rate o Limitaciones seran ajustada segun el escenario y cliente.

Protocolo de Mensajería

Se define REST como protocolo de mensajería, utilizando las operaciones GET, POST, PUT y DELETE según los estándares internacionales de uso de estas operaciones.

Cada API que se llame deberá utilizar JSON como formato de intercambio de mensajes. Las respuestas corresponderán a códigos HTTP estándar (2XX, 3XX, 4XX, 5XX).

- Formato de mensaje de respuesta

Respuesta de procesamiento exitoso para métodos GET

Se define el código HTTP 200 como respuesta de procesamiento exitoso. Además se devolverá la información solicitada en un string con formato JSON.

Respuesta de procesamiento exitoso para métodos POST

Ejemplo de respuesta de procesamiento exitoso para métodos POST (Creación de un recurso):

{
  "href": "/service-provider/c047eed7-5568-44d7-a804-8ff67ec5a14d/customer/4546f2a4-09f4-11ec-9a03-0242ac130003?apiVersion=20201006"
}

Respuesta de procesamiento exitoso para métodos PUT

Se define el código HTTP 200 como respuesta de procesamiento exitoso. En la gran mayoría de los casos, no devolverá información (No content), sin embargo, en el caso que lo requiera, devolverá la información necesaria en un string con formato JSON.

Respuesta de procesamiento exitoso para métodos DELETE

Se define el código HTTP 200 como respuesta de procesamiento exitoso. En la gran mayoría de los casos, no devolverá información (No content), sin embargo, en el caso que lo requiera, devolverá la información necesaria en un string con formato JSON.

Respuesta de procesamiento no exitoso (Aplica para todos los métodos)

Ejemplo de respuesta de procesamiento no exitoso (Aplica para todos los métodos)

{
  "code": 400,
  "message": "Email is required"
}

Nuestra API de profesionales y contratistas utiliza los siguientes códigos de errores:

Código de error Significado
400 Bad Request El servidor no entendió la solicitud, generalmente debido a una sintaxis incorrecta o la ausencia de algún parámetro.
401 Unauthorized Las credenciales de autenticación necesarias no están presentes en la solicitud o son incorrectas..
403 Forbidden El servidor se niega a responder a la solicitud. Por lo general, esto se debe a que no posee el alcance adecuado para esta acción.
404 Not Found No se encontró el recurso solicitado.
429 Too Many Requests La solicitud no fue aceptada porque la solicitud superó los límites de consultas establecidos.
500 Internal Server Error Ocurrió un error interno en nuestra API.
503 Service Unavailable Estamos temporalmente fuera de línea por mantenimiento. Por favor, inténtelo de nuevo más tarde.

Independientemente del código del error, se devolverá la descripción del problema en un string con formato JSON.

Ambientes

Existen 3 ambientes para las integraciones:

API Tenant - Auth

- Inicio de sesión

Request:

curl "https://qa.tenant.api.tutenlabs.dev/auth/login?apiVersion=1" \
  -H "key: my-api-key" \
  -H "secret: my-api-secret" \
  -H "system: my-system-app" \

Response:

{
  "token": "eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk",
  "expirationDate": "2019-07-12T14:10:36.09"
}

Genera un nuevo token de acceso con duración finita que permitirá la autorización y autenticación en los distintos endpoints contenidos en este documento.

Solicitud HTTP

Header Params

Nombre Default Requerido Tipo Description
key string API Key generado por Tutenlabs para su empresa.
secret string API Secret generado por Tutenlabs para su API Key.
system string Identificador de Sistema que hace uso del token.

Query Params

Nombre Default Requerido Tipo Description
apiVersion string Versión del API a usar.

API Tenant - Precustomer

- Carga Masiva

Request:

{
  "mgsid": "12345678",
  "time": "2019-12-05T09:47:35.548-0300",
  "retry": "0",
  "system": "IkeApiHub",
  "method": "sendBulkCustomer",
  "data": {
    "loadUuid": "047e3b13-d872-4709-a8fa-d490685a5586",
    "businessExternalId": "SPONSOR1",
    "contractExternalId": "1",
    "planVersionExternalId": "CILINDRO",
    "overwrite": false,
    "precustomer": [
      {
        "overwrite": false,
        "identificationType": "BLT",
        "identificationNumber": "12345",
        "customer": {
          "externalId": "123",
          "identificationType": "DNI",
          "identificationNumber": "20756381",
          "name": "Marco Antonio",
          "lastName": "Da Silva Artigas",
          "fullName": "Marco Antonio Da Silva Artigas",
          "email": "[email protected]",
          "mobilePhone": "+56999999999",
          "category": "Particular",
          "address": "Av. Apoquindo 5158",
          "addressNormalized": "Av. Apoquindo 5158, Las Condes, Región Metropolitana",
          "locationLat": "-33.410465324768104",
          "locationLng": "-70.57471836429751"
        },
        "subscription": {
          "externalId": "1",
          "planVersionExternalId": "1",
          "planExternalId": "1",
          "contractorExternalId": "68557-3",
          "planExtraInfo": {
            "category": "VIP",
            "comment": "No cobrar Adicionales"
          },
          "startDate": "2021-01-01",
          "endDate": "2022-01-01",
          "registrationDate": "",
          "revocationDate": "",
          "status": 1,
          "accidentRate": [
            {
              "serviceId": null,
              "quantity": 2
            },
            {
              "serviceId": 10,
              "quantity": 3
            }
          ]
        },
        "materials": [{
          "plate": "",
          "brand": "",
          "model": "",
          "year": "",
          "color": "",
          "vin": "",
          "serialChasis": "",
          "serialMotor": "",
          "number": "",
          "numberHash": ""
        }],
        "extraInfo": {
          "category": "VIP",
          "comment": "No cobrar Adicionales"
        }
      }
    ]
  }
}

Carga Masiva de pre-clientes con un limite de 10.000 precustomer en su array por petición.

Para el caso de accidentRate tomar en cuenta las siguientes reglas:

Otras consideraciones:

Header Params

Nombre Default Requerido Tipo Descripción
Authorization string Credencial de Autorización y Autenticación. Bearer + token.

Query Params

Nombre Default Requerido Tipo Descripcion
apiVersion string Versión del API a usar.

Body Params

Nombre Default Requerido Tipo Descripcion
loadUuid UUID Identificador único de la carga masiva. A través de este identificador usted podrá posteriormente consultar el estatus de la carga masiva.
businessExternalId string Valor con la equivalencia, external_id en la entidad bu de tuten
contractExternalId string Valor con la equivalencia. Puede ser null únicamente con el objetivo de inactivación de precustomers.
planVersionExternalId string Valor con la equivalencia. Se usará únicamente con el objetivo de inactivación de precustomers.
overwrite false bool Si el valor es true, se inactivan todo los precliente cargados para businessExternalId y contractExternalId.
Precustomer
overwrite false bool En caso de que el precliente ya exista (Clave compuesta existente), permite indicar si se deben o no actualizar los datos del precliente con los nuevos datos suministrados a través de la carga masiva. Si el valor es true, se actualizan/reescriben los datos, en caso contrario, los datos suministrados son omitidos.
identificationType string Tipo de identificación del precliente.
identificationNumber string Número o código de identificación del precliente.
Customer
externalId string ID único del Customer, en caso de ser null, se guardará el valor "0".
identificationType string Tipo de identificación de la persona o empresa titular.
identificationNumber string Número o código de identificación de la persona o empresa titular.
category Particular string Categoría o clasificación del cliente.
name string Nombres.
lastName string Apellidos.
fullName string Nombre completo.
email string Correo electrónico.
mobilePhone string Teléfono celular.
address string La informacion enviada en este campo no será contrastada con servicio de geolocalización en la carga masiva por los costos que implica, pero si será verificada en el sistema al momento de agendar un servicio. Informativo.
addressNormalized string Input para proveedor de mapas.
locationLat string Coordenada X de geolocalización.
locationLng string Coordenada Y de geolocalización.
Subscription
planVersionExternalId string Valor que tiene el external id de la versión del plan.
planExternalId string Campo que tiene el external id del plan. Si viene vacío por default se asignará la última versión del conjunto de planes que tienen el mismo id de versión puesto en el campo "planVersionExternalId". Si viene lleno, se asignará al plan indicado en este campo.
contractorExternalId string Valor que tiene el id externo del contratante. Debe ser uno de los contratantes asociados al plan.
planExtraInfo json Tags, atributos adicionales en formato clave valor
startDate date Fecha inicio de vigencia
endDate date Fecha fin de vigencia. En caso de no pasar la propiedad o pasarse con valor null (sin comillas), la suscripción será creada con fecha fin indefinida
registrationDate NOW date Fecha de alta
revocationDate date Fecha de baja
externalId string Identificador de la póliza, suscripción o cuenta de un sistema externo de tuten
status 1 int Estatus del preregistro, 1 = Activo - 2 = Inactivo
Accident Rate
serviceId null int Identificador del tipo de servicio/definición del servicio
quantity 0 int Cantidad de eventos que se debe descontar de su cobertura
Materials
plate string Matrícula, patente o placa de vehículo. Este es un campo clave y debe ser único. Si se carga materia, es obligatorio definir Plate o VIN o serialMotor.
brand string Marca del vehículo o marca de tarjeta
model string Modelo de vehículo
year string Año del vehículo
color string Color del vehículo
vin string Número identificador del vehículo. Este es un campo clave y debe ser único. Si se carga materia, es obligatorio definir Plate o VIN o serialMotor.
serialChassis string Serial del chasis
serialMotor string Serial del motor. Este es un campo clave y debe ser único. Si se carga materia, es obligatorio definir Plate o VIN o serialMotor.
number string Últimos 4 número de la tarjeta de crédito, debito
numberHash string Producto de la tokenización de la tarjeta
extraInfo json Tags, atributos adicionales en formato clave valor

- Estatus de la Carga Masiva

Request:

curl "https://qa.tenant.api.tutenlabs.dev/precustomer/load/c047eed7-5568-44d7-a804-8ff67ec5a14d/status?businessExternalId=SPONSOR1&apiVersion=1" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"

Response:

{
    "ready": true,
    "load": 10000,
    "success": 9010,
    "fail": 890,
    "startAt": "2021-08-26T15:38:44.458Z",
    "finishAt": "2021-08-29T10:31:54.001Z",
    "extra": {
      "relLink": "https://qa.tenant.api.tutenlabs.dev/precustomer/load/c047eed7-5568-44d7-a804-8ff67ec5a14d/result?businessExternalId=SPONSOR1&apiVersion=1"
    },
}

Consulta el estatus de una carga masiva enviada previamente. Solo se visualizarán los registros ya procesados.

Header Params

Nombre Default Requerido Tipo Descripción
Authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Descripcion
apiVersion string Versión del API a usar.
businessExternalId string Valor con la equivalencia, external_id en la entidad bu de tuten

URL Params

Nombre Default Requerido Tipo Descripción
loadUuid UUID Identificador único de la carga masiva.

Body Params

Nombre Default Requerido Tipo Descripcion
ready string Carga completada
load string Cantidad de registro recibidos
success string Cantidad de registros procesados satisfactoriamente
fail string Cantidad de registros con error
startAt string Fecha de inicio de la carga
finishAt string Fecha de fin de la carga

- Resultado de la Carga Masiva

Request:

curl "https://uat.tenant.api.tutenlabs.dev/customer/load/c047eed7-5568-44d7-a804-8ff67ec5a14d/status?&businessExternalId=SPONSOR1&apiVersion=1" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"

Response:

{
    "msgid": "12345678",
    "system": "IkeApiHub",
    "time": "2021-10-27T09:47:35.920Z",
    "method": "sendBulkCustomer",
    "retry": "0",
    "data": {
      "extra": {
        "nextLink": "https://qa.tenant.api.tutenlabs.dev/precustomer/load/c047eed7-5568-44d7-a804-8ff67ec5a14d/status?businessExternalId=SPONSOR1&apiVersion=1&page=3",
        "prevLink": "https://qa.tenant.api.tutenlabs.dev/precustomer/load/c047eed7-5568-44d7-a804-8ff67ec5a14d/status?businessExternalId=SPONSOR1&apiVersion=1&page=1"
      },
      "loadUuid": "047e3b13-d872-4709-a8fa-d490685a5586",
      "businessExternalId": "SPONSOR1",
      "contractExternalId": "1",
      "planVersionExternalId": "CILINDRO",
      "precustomer": [
        {
          "overwrite": false,
          "identificationType": "BLT",
          "identificationNumber": "12345",
          "customer": {
            "externalId": "123",
            "identificationType": "DNI",
            "identificationNumber": "20756381",
            "name": "Marco Antonio",
            "lastName": "Da Silva Artigas",
            "fullName": "Marco Antonio Da Silva Artigas",
            "email": "[email protected]",
            "mobilePhone": "+56999999999",
            "category": "Particular",
            "address": "Av. Apoquindo 5158",
            "addressNormalized": "Av. Apoquindo 5158, Las Condes, Región Metropolitana",
            "locationLat": "-33.410465324768104",
            "locationLng": "-70.57471836429751"
          },
          "subscription": {
            "externalId": 1,
            "planVersionExternalId": "1",
            "planExternalId": "1",
            "planExtraInfo": {
              "category": "VIP",
              "comment": "No cobrar Adicionales"
            },
            "startDate": "2021-01-01",
            "endDate": "2022-01-01",
            "registrationDate": "2021-08-26T15:38:44.458Z",
            "revocationDate": "2021-08-28T15:38:44.458Z",
            "status": 0
          },
          "materials": [{
            "plate": "",
            "brand": "",
            "model": "",
            "year": "",
            "color": "",
            "vin": "",
            "serialChasis": "",
            "serialMotor": "",
            "number": "",
            "numberHash": ""
          }],
          "extraInfo": {
            "category": "VIP",
            "comment": "No cobrar Adicionales"
          },
          "status": {
            "result": 1,
            "message": "OK"
          }
        },
        {
          "overwrite": false,
          "identificationType": "BLT",
          "identificationNumber": "12346",
          "customer": {
            "externalId": "123",
            "identificationType": "DNI",
            "identificationNumber": "20756381",
            "name": "Marco Antonio",
            "lastName": "Da Silva Artigas",
            "fullName": "Marco Antonio Da Silva Artigas",
            "email": "[email protected]",
            "mobilePhone": "+56999999999",
            "category": "Particular",
            "address": "Av. Apoquindo 5158",
            "addressNormalized": "Av. Apoquindo 5158, Las Condes, Región Metropolitana",
            "locationLat": "-33.410465324768104",
            "locationLng": "-70.57471836429751"
          },
          "subscription": {
            "externalId": "12345",
            "planVersionExternalId": "1",
            "planExternalId": "1",
            "planExtraInfo": {
              "category": "VIP",
              "comment": "No cobrar Adicionales",
            },
            "startDate": "2021-01-01",
            "endDate": "2022-01-01",
            "registrationDate": "2021-08-26T15:38:44.458Z",
            "revocationDate": "",
            "status": 1
          },
          "materials": [{
            "plate": "",
            "brand": "",
            "model": "",
            "year": "",
            "color": "",
            "vin": "",
            "serialChasis": "",
            "serialMotor": "",
            "number": "",
            "numberHash": ""
          }],
          "extraInfo": {
            "category": "VIP",
            "comment": "No cobrar Adicionales"
          },
          "status": {
            "result": 1,
            "message": "OK"
          }
        },
        {
          "overwrite": false,
          "identificationType": "BLT",
          "identificationNumber": "12347",
          "customer": {
            "externalId": "123",
            "identificationType": "DNI",
            "identificationNumber": "20756381",
            "name": "Marco Antonio",
            "lastName": "Da Silva Artigas",
            "fullName": "Marco Antonio Da Silva Artigas",
            "email": "[email protected]",
            "mobilePhone": "+56999999999",
            "category": "Particular",
            "address": "Av. Apoquindo 5158",
            "addressNormalized": "Av. Apoquindo 5158, Las Condes, Región Metropolitana",
            "locationLat": "-33.410465324768104",
            "locationLng": "-70.57471836429751"
          },
          "subscription": {
            "externalId": "12345",
            "planVersionExternalId": "1",
            "planExternalId": "1",
            "planExtraInfo": {
              "category": "VIP",
              "comment": "No cobrar Adicionales"
            },
            "startDate": "2021-01-01",
            "endDate": "2022-01-01",
            "registrationDate": "2021-08-26T15:38:44.458Z",
            "revocationDate": "",
            "status": 1
          },
          "materials": [{
            "plate": "",
            "brand": "",
            "model": "",
            "year": "",
            "color": "",
            "vin": "",
            "serialChasis": "",
            "serialMotor": "",
            "number": "",
            "numberHash": ""
          }],
          "extraInfo": {
            "category": "VIP",
            "comment": "No cobrar Adicionales"
          },
          "status": {
            "result": 2,
            "message": "IdentificationType not found. PlanExternalId not found."
          }
        }
      ]
    }
}

Consulta el resultado de un carga enviada previamente.

Header Params

Nombre Default Requerido Tipo Descripción
Authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Descripcion
apiVersion string Versión del API a usar.
businessExternalId string Valor con la equivalencia, external_id en la entidad bu de tuten
status number Permite filtrar por el estatus de los registros cargados. 1-Exitosos 2-Fallidos.

URL Params

Nombre Default Requerido Tipo Descripción
loadUuid UUID Identificador único de la carga.

- Consulta Ultima Carga Sponsor

Request:

curl "https://qa.tenant.api.tutenlabs.dev/precustomer/sponsor/047e3b13-d872-4709-a8fa-d490685a5586/contractExternalId=1/lastload?apiVersion=1" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"

Response:

{
  "businessExternalId": "SPONSOR1",
  "contractExternalId": "1",
  "lastLoadUuid": "047e3b13-d872-4709-a8fa-d490685a5586",
  "lastUpdate": "2021-01-01 09:34:01",
  "status": {
    "active": 100,
    "inactive": 10
  }
}

Consulta el resultado de un carga enviada previamente.

Header Params

Nombre Default Requerido Tipo Descripción
Authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Descripcion
apiVersion string Versión del API a usar.
contractExternalId string Valor con la equivalencia. En caso de ser null, se tomará la ultima carga relacionada al businessExternalId.

URL Params

Nombre Default Requerido Tipo Descripción
businessExternalId UUID Valor con la equivalencia, external_id en la entidad bu de tuten

- Listado Precliente

Request:

curl "https://uat.tenant.api.tutenlabs.dev/precustomer/sponsor/c047eed7-5568-44d7-a804-8ff67ec5a14d/status?&contractExternalId=TEST-CONTRACT&apiVersion=1" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"

Response:

{
    "data": {
      "extra": {
        "nextLink": "https://qa.tenant.api.tutenlabs.dev/precustomer/sponsor/c047eed7-5568-44d7-a804-8ff67ec5a14d/status?contractExternalId=TEST-CONTRACT&apiVersion=1&page=3"
        "prevLink": "https://qa.tenant.api.tutenlabs.dev/precustomer/sponsor/c047eed7-5568-44d7-a804-8ff67ec5a14d/status?contractExternalId=TEST-CONTRACT&apiVersion=1&page=1"
      },
      "businessExternalId": "c047eed7-5568-44d7-a804-8ff67ec5a14d",
      "contractExternalId": "TEST-CONTRACT",
      "precustomer": [
        {
          "uuid": "835f53ba-1499-11ec-82a8-0242ac130003",
          "overwrite": false,
          "identificationType": "BLT",
          "identificationNumber": "12345",
          "customer": {
            "externalId": "123",
            "identificationType": "DNI",
            "identificationNumber": "20756381",
            "name": "Marco Antonio",
            "lastName": "Da Silva Artigas",
            "fullName": "Marco Antonio Da Silva Artigas",
            "email": "[email protected]",
            "mobilePhone": "+56999999999",
            "category": "Particular",
            "address": "Av. Apoquindo 5158",
            "addressNormalized": "Av. Apoquindo 5158, Las Condes, Región Metropolitana",
            "locationLat": "-33.410465324768104",
            "locationLng": "-70.57471836429751"
          },
          "subscription": {
            "externalId": 1,
            "planVersionExternalId": "1",
            "planExternalId": "1",
            "planExtraInfo": {
              "category": "VIP",
              "comment": "No cobrar Adicionales"
            },
            "startDate": "2021-01-01",
            "endDate": "2022-01-01",
            "registrationDate": "2021-08-26T15:38:44.458Z",
            "revocationDate": "2021-08-28T15:38:44.458Z",
            "status": 0
          },
          "materials": [{
            "plate": "",
            "brand": "",
            "model": "",
            "year": "",
            "color": "",
            "vin": "",
            "serialChasis": "",
            "serialMotor": "",
            "number": "",
            "numberHash": ""
          }],
          "extraInfo": {
            "category": "VIP",
            "comment": "No cobrar Adicionales"
          }
        },
        {
          "uuid": "a6f3962e-1499-11ec-82a8-0242ac130003",
          "overwrite": false,
          "identificationType": "BLT",
          "identificationNumber": "12346",
          "customer": {
            "externalId": "123",
            "identificationType": "DNI",
            "identificationNumber": "20756381",
            "name": "Marco Antonio",
            "lastName": "Da Silva Artigas",
            "fullName": "Marco Antonio Da Silva Artigas",
            "email": "[email protected]",
            "mobilePhone": "+56999999999",
            "category": "Particular",
            "address": "Av. Apoquindo 5158",
            "addressNormalized": "Av. Apoquindo 5158, Las Condes, Región Metropolitana",
            "locationLat": "-33.410465324768104",
            "locationLng": "-70.57471836429751"
          },
          "subscription": {
            "externalId": "12345",
            "planVersionExternalId": "1",
            "planExternalId": "1",
            "planExtraInfo": {
              "category": "VIP",
              "comment": "No cobrar Adicionales"
            },
            "startDate": "2021-01-01",
            "endDate": "2022-01-01",
            "registrationDate": "2021-08-26T15:38:44.458Z",
            "revocationDate": "",
            "status": 1
          },
          "materials": [{
            "plate": "",
            "brand": "",
            "model": "",
            "year": "",
            "color": "",
            "vin": "",
            "serialChasis": "",
            "serialMotor": "",
            "number": "",
            "numberHash": ""
          }],
          "extraInfo": {
            "category": "VIP",
            "comment": "No cobrar Adicionales"
          }
        },
        {
          "uuid": "c2028f74-1499-11ec-82a8-0242ac130003",
          "overwrite": false,
          "identificationType": "BLT",
          "identificationNumber": "12347",
          "customer": {
            "externalId": "123",
            "identificationType": "DNI",
            "identificationNumber": "20756381",
            "name": "Marco Antonio",
            "lastName": "Da Silva Artigas",
            "fullName": "Marco Antonio Da Silva Artigas",
            "email": "[email protected]",
            "mobilePhone": "+56999999999",
            "category": "Particular",
            "address": "Av. Apoquindo 5158",
            "addressNormalized": "Av. Apoquindo 5158, Las Condes, Región Metropolitana",
            "locationLat": "-33.410465324768104",
            "locationLng": "-70.57471836429751"
          },
          "subscription": {
            "externalId": "12345",
            "planVersionExternalId": "1",
            "planExternalId": "1",
            "planExtraInfo": {
              "category": "VIP",
              "comment": "No cobrar Adicionales"
            },
            "startDate": "2021-01-01",
            "endDate": "2022-01-01",
            "registrationDate": "2021-08-26T15:38:44.458Z",
            "revocationDate": "",
            "status": 1
          },
          "materials": [{
            "plate": "",
            "brand": "",
            "model": "",
            "year": "",
            "color": "",
            "vin": "",
            "serialChasis": "",
            "serialMotor": "",
            "number": "",
            "numberHash": ""
          }],
          "extraInfo": {
            "category": "VIP",
            "comment": "No cobrar Adicionales"
          },
        }
      ]
    }
}

Consulta los preclientes cargados en la plataforma.

Header Params

Nombre Default Requerido Tipo Descripción
Authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Descripcion
apiVersion string Versión del API a usar.
contractExternalId string Identificador del Contrato.

URL Params

Nombre Default Requerido Tipo Descripción
businessExternalId UUID Valor con la equivalencia, external_id en la entidad bu de tuten

- Consultar

Request:

curl "https://uat.tenant.api.tutenlabs.dev/precustomer/search?identificationType=DNI&identificationNumber=20756381&mobilePhone=+56999999999&sponserPhone=08001231234&apiVersion=1" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"

Response:

{
  "id": 10023,
  "name": "Marco Antonio",
  "lastName": "Da Silva Artigas",
  "email": "[email protected]",
  "mobilePhone": "+56999999999",
  "status": 0
}

Devuelve el detalle de un cliente de un contratista.

Solicitud HTTP

GET https://uat.tenant.api.tutenlabs.dev/precustomer/search?identificationType=DNI&identificationNumber=20756381&mobilePhone=+56999999999&sponsorPhone=08001231234

Header Params

Nombre Default Requerido Tipo Descripción
Authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Descripción
apiVersion string Versión del API a usar.
identificationType string Tipo de identificación.
identificationNumber string Número de identificación.
mobilePhone string Número de la persona que está realizando la llamada.
sponsorPhone string Número del sponsor.

API Tenant - Casos

Casos - Crear caso

Servicio web que facilita la creación de un caso a partir de un conjunto de información relacionada con el cliente y al caso.

Request:

{
  "businessExternalId": "1009222",
  "subscriptionExternalId": "IDENT001",
  "planVersionExternalId": "VEEX-1",
  "subscriptionStartDate": "2024-05-15",
  "subscriptionEndDate": "2025-04-01",
  "contractorExternalId": "CONT001",
  "customer": {
    "identificationType": "PASAPORTE",
    "identificationNumber": "20458132",
    "name": "Titular",
    "lastName": "Subscripcion",
    "email": "[email protected]",
    "mobilePhone": "+56999999999"
  },
  "applicant": {
    "identificationType": "DNI",
    "identificationNumber": "20987756",
    "name": "Solicitante",
    "lastName": "Caso",
    "email": "[email protected]",
    "mobilePhone": "+56999999999"
  },
  "beneficiaries": [{
    "identificationType": "DNI",
    "identificationNumber": "20207563",
    "name": "Primer",
    "lastName": "Beneficiario",
    "email": "[email protected]",
    "mobilePhone": "+56999999999",
    "isMaterial": true
  }, {
    "identificationType": "DNI",
    "identificationNumber": "20756382",
    "name": "Segundo",
    "lastName": "Beneficiario",
    "email": "[email protected]",
    "mobilePhone": "+56999999999",
    "isMaterial": false
  }],
  "case": {
    "date": "2025-02-01T10:00:00.0",
    "relatedDetail": "El vehículo sufrió una falla mecánica.",
    "observations": "El conductor no tuvo lesiones y no requiere paramédicos.",
    "externalCode": "146622-1.1"
  },
  "material": {
    "materialTypeId": 1,
    "engineNumber": "1214662112",
    "patentPlate": "AB596CD",
    "vin": "12AB596CD12",
    "brand": "Ford",
    "model": "Focus",
    "year": 2016,
    "color": "Verde",
    "chassisNumber": "1214662112",
    "address": "8 The Green st, 24-D, Miami Fl",
    "numeration": "24-D",
    "houseNumber": "14",
    "kindOfPet": "gato",
    "petBreed": "birmano",
    "petName": "Birmanin"
  }
}

Response:

{
    "status": 200,
    "message": "Operación realizada exitosamente",
    "caseNumber": "10000009116",
    "subscriptionExternalId": "IDENT001"
}

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Description
apiVersion string Versión del API a usar.

Body Params

Nombre Default Requerido Tipo Descripción
businessExternalId string ExternalId de la unidad de Negocio a la que estará asociado el servicio.
subscriptionExternalId string ExternalId de la suscripción asociado al cliente. En caso de ser null se creará una nueva suscripción.
planVersionExternalId string ExternalId del plan que será asociado al cliente.
subscriptionStartDate now() string Fecha de inicio de la suscripción a asociar al cliente en formato ISO8601.
subscriptionEndDate string Fecha de fin de la suscripción a asociar al cliente en formato ISO8601.
contractorExternalId string ExternalId del contratante que será asociado plan suscrito.
Customer object Será el titular de la suscripción
identificationType string Tipo de Identificación del cliente.
identificationNumber string Número de Identificación del cliente.
name string Nombres del cliente.
lastName string Apellidos del cliente.
email string Correo electrónico del cliente.
mobilePhone string Teléfono Celular del cliente.
Applicant object Si se indica un solicitantes los siguientes campos son requeridos. En caso de ser null, se tomará el customer como solicitante.
identificationType string Tipo de Identificación del solicitante.
identificationNumber string Número de Identificación del solicitante.
name string Nombres del solicitante.
lastName string Apellidos del solicitante.
email string Correo electrónico del solicitante.
mobilePhone string Teléfono Celular del solicitante.
Beneficiaries list Si se indica uno o varios beneficiarios, los siguientes campos son requeridos para cada uno de ellos. En caso de ser null, se tomará el customer como beneficiario.
identificationType string Tipo de Identificación del beneficiario.
identificationNumber string Número de Identificación del beneficiario.
name string Nombres del beneficiario.
lastName string Apellidos del beneficiario.
email string Correo electrónico del beneficiario.
mobilePhone string Teléfono Celular del beneficiario.
isMaterial bool Indica si es el beneficiario asociado a la solicitud, sólo 1 beneficiario puede estar en true.
Case object
relatedDetail string Detalle de lo ocurrido.
date now() string Fecha y hora en que ocurrió el evento en formato ISO8601 en UTC.
observations string Observaciones relacionadas.
externalCode string Código externo asociado al caso.
Material object Si la materia es un beneficiario o el titular, no es necesario enviar este objeto
materialTypeId int Identificador del tipo de materia [1 = Vehículo, 2 = Inmueble, 3 = Persona, 4 = Mascota ]
patentPlate string Placa del vehiculo.
*Obligatorio si la materia es tipo Vehículo
engineNumber string Número de motor del vehiculo.
*Obligatorio si la materia es tipo Vehículo
vin string Número de identificación del vehiculo.
*Obligatorio si la materia es tipo Vehículo
brand string Este campo indica la marca del vehículo.
model string Modelo del vehiculo
year int Año del vehiculo.
chassisNumber string Número de chasis del vehiculo.
address string Dirección del hogar.
*Obligatorio si la materia es tipo Inmueble
numeration string Numeración de calle o avenida.
*Obligatorio si la materia es tipo Inmueble
houseNumber string Numeración de casa o bloque.
kindOfPet string Este campo indica el tipo de mascota. Por ejemplo, perro o gato.
*Obligatorio si la materia es tipo Mascota
petBreed string Este campo indica la raza de la mascota.
*Obligatorio si la materia es tipo Mascota
petName string Este campo indica el nombre de la mascota.
*Obligatorio si la materia es tipo Mascota

API Tenant - Servicios

Cambio de estado de un servicio

Permite cambiar el estado de un servicio.

Request example

{
    "newState": 22,
    "reasonId": 2,
    "description": "Una razon de ejemplo"
}

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Description
apiVersion string Versión del API a usar.

URL Params

Nombre Default Requerido Tipo Description
id Long Id del booking.

Body Params

Nombre Default Requerido Tipo Descripción
newState int Id del nuevo estado del servicio.

Valores posibles:

0 = Creado/Agendado
1 = Aceptado
4 = Iniciado
5 = En camino
-5 = Concluido con Incidencias
3 = Concluido satisfactoriamente
-2 = Cancelado por el cliente
22 = Cancelado por el operador
15 = Cancelado por el técnico
-6 = Servicio cerrado
reasonId int Id de la razón de cancelación del servicio. Es obligatorio unicamente cuando el newState suministrado sea Concluido con Incidencias (-5), Cancelado por el cliente (-2), Cancelado por el operador (22) o Cancelado por el técnico (15).

Valores posibles:

1 = Requiere otra asistencia
2 = Se corta la llamada
3 = Ya no requiere el servicio/Ya solucionó
4 = Restitución
5 = Costo elevado
6 = Excedente
7 = Proveedor no acudió
8 = Requiere otra asistencia
9 = Servicio costo usuario
10 = No acepta cita/proveedor
11 = Otro
description string Es una descripción adicional del motivo de la cancelación del servicio. Se utiliza y es obligatorio solo para el caso en que el reasonId suminstrado sea Otro (11).

Actualización de presupuesto

Permite la actualización del presupuesto asociado a un servicio.

Request:

{
  "costConceptsToAdd": [
    {
      "amount": 1,
      "baseCost": 50,
      "basePrice": 70,
      "excessBaseCost": null,
      "excessBasePrice": null,
      "name": "Ejemplo de CC Dummy",
      "rateType": 3,
      "top": null
    }
  ],
  "costConceptsToDelete": [
    1337
  ],
  "costConceptsToUpdate": [
    {
      "amount": 7,
      "baseCost": 40,
      "basePrice": 60,
      "excessBaseCost": 80,
      "excessBasePrice": 120,
      "id": 1338,
      "name": "Ejemplo de CC de tipo exceso",
      "rateType": 2,
      "top": 5
    }
  ],
  "providerPayment": true
}

Header Params

Nombre Default Requerido Tipo Descripción
Authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Descripcion
apiVersion string Versión del API a usar.

URL Params

Nombre Default Requerido Tipo Description
id Long Id del booking.

Body Params

Nombre Default Requerido Tipo Descripcion
providerPayment false boolean Indica si aplica pago a proveedor.

Valores posibles:

true = Si aplica pago al proveedor
false = No aplica pago al proveedor
costConceptsToAdd Array Lista de conceptos de costo a agregar.
name string Nombre del concepto de costo.
amount int La cantidad de unidades a asociar al concepto de costo.
baseCost double El costo base (Generalmente relacionado a los costos del proveedor).
basePrice double El precio base (Generalmente relacionado al precio de venta)
rateType int Tipo de tarificación mediante el cual se calcuará el precio y costo total del concepto de costo.

Valores posibles:

1 = Fijo/por unidad
2 = Exceso
3 = Dummy
4 = Base
excessBaseCost double El costo de exceso base. Es obligatorio unicamente cuando el rateType suministrado sea Exceso (2).
excessBasePrice double El precio de exceso base. Es obligatorio unicamente cuando el rateType suministrado sea Exceso (2).
top int El tope a utilizar para el calculo costo/precio de exceso. Es obligatorio unicamente cuando el rateType suministrado sea Exceso (2).
costConceptsToUpdate Array Lista de conceptos de costo a eliminar
id Long Id del concepto de costo.
name string Nombre del concepto de costo.
amount int La cantidad de unidades a asociar al concepto de costo.
baseCost double El costo base (Generalmente relacionado a los costos del proveedor).
basePrice double El precio base (Generalmente relacionado al precio de venta)
rateType int Tipo de tarificación mediante el cual se calcuará el precio y costo total del concepto de costo.

Valores posibles:

1 = Fijo/por unidad
2 = Exceso
3 = Dummy
4 = Base
excessBaseCost double El costo de exceso base. Es obligatorio unicamente cuando el rateType suministrado sea Exceso (2).
excessBasePrice double El precio de exceso base. Es obligatorio unicamente cuando el rateType suministrado sea Exceso (2).
top int El tope a utilizar para el calculo costo/precio de exceso. Es obligatorio unicamente cuando el rateType suministrado sea Exceso (2).
costConceptsToDelete Array Lista de conceptos de costo a modificar
id Long Id del concepto de costo.

Cambio de estado del pago a proveedores de un servicio

Permite cambiar el estado del pago de un servicio dentro del flujo de pago a proveedores.

Request body:

{
  "description": "No se realizo el pago.",
  "paymentStatusId": 5
}

Header Params

Nombre Default Requerido Tipo Descripción
Authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Descripcion
apiVersion string Versión del API a usar.

URL Params

Nombre Default Requerido Tipo Description
id Long Id del booking.

Body Params

Nombre Default Requerido Tipo Descripcion
description string Razón por la cual se rechaza el pago al proveedor.
paymentStatusId int Nuevo estado del pago.

Valores posibles:

1 = En revisión proveedor
2 = En revisión cuentas por pagar
3 = En espera de pagos
4 = Pagado
5 = Pago rechazado
6 = Inactivo

Actualización de ubicación

Permite la actualización de la ubicación de origen y destino de un servicio.

Request:

{
    "origin": {
        "commune": {
            "externalId": "33",
            "cityName": "Guerrero",
            "communeName": "Cualac"
        },
        "latitude": 21.8852562,
        "longitude": -102.291567,
        "address": "Dr. Alvear Núñez 16, Doctores, Cuauhtémoc, 06720 Ciudad de México, CDMX, México"
    },
    "destination": {
        "latitude": 21.566356,
        "longitude": -102.242333,
        "address": "Morelos, 15270 Venustiano Carranza, CDMX, México"
    }
}

Header Params

Nombre Default Requerido Tipo Descripción
Authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Descripcion
apiVersion string Versión del API a usar.

URL Params

Nombre Default Requerido Tipo Description
id Long Id del booking.

Body Params

Nombre Default Requerido Tipo Descripcion
origin Información de origen del servicio.
address string Dirección de ubicación de origen del servicio.
latitude double Latitud de la ubicación de origen del servicio.
longitude double Longitud de la ubicación de origen del servicio.
commune object Información adicional sobre la comuna de origen.
externalId long Identificador externo de la comuna.
cityName string Nombre de la ciudad.
communeName string Nombre de la comuna.
destination Información de destino del servicio.
address string Dirección de destino del servicio.
latitude double Latitud del destino del servicio.
longitude double Longitud del destino del servicio.

- Servicios - Agregar comentario

Permite agregar un comentario a un servicio.

Request:

{
    "observation": "Es necesario revisar nuevamente este servicio"
}

Header Params

Nombre Default Requerido Tipo Descripción
Authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Descripcion
apiVersion string Versión del API a usar.

URL Params

Nombre Default Requerido Tipo Description
id Long Id del booking.

Body Params

Nombre Default Requerido Tipo Descripcion
observation string El comentario a agregar al servicio.

- Servicios - Obtener número telefónico del cliente

Permite obtener el número telefónico del cliente asociado a un servicio.

Request:

curl 'https://uat.tenant.api.tutenlabs.dev/booking/198586/phone-numbers?apiVersion=1' \
--header 'Authorization: Bearer {{my-access-token}}'

Response:

{
    "mobilePhone": "56999999999",
    "landlinePhone": null,
    "businessPhone": null
}

Header Params

Nombre Default Requerido Tipo Descripción
Authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Descripcion
apiVersion string Versión del API a usar.

URL Params

Nombre Default Requerido Tipo Description
id Long Id del booking.

- Servicios - Agregar historial de IVR

Permite agregar un registro al historial de un servicio asociado al estado de una llamada del IVR.

Request:

curl --request POST 'https://dev.tenant.api.tutenlabs.dev/booking/198586/ivr/history?apiVersion=1' \
--header 'Authorization: Bearer {{my-access-token}}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "code": 200
}'

Request Body:

{
    "code": 200
}

Response:

{
    "status": 200,
    "message": "Operación realizada exitosamente"
}

Header Params

Nombre Default Requerido Tipo Descripción
Authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Descripcion
apiVersion string Versión del API a usar.

URL Params

Nombre Default Requerido Tipo Description
id Long Id del booking.

Body Params

Nombre Default Requerido Tipo Descripcion
code string El código de estado de la llamada.

Valores posibles:

200 = Llamada exitosa
300 = Usuario no contesta
400 = Usuario ocupado

API Tenant - Notificación - Callcenter

- Notificar llamada entrante

Request:

curl "https://qa.tenant.api.tutenlabs.dev/notification/notify-call?apiVersion=1" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"
{
  "agentExternaId": "SIP/1001",
  "identificationType": "DNI",
  "identificationNumber": "20756381",
  "customerPhoneNumber": "+56999999999",
  "businessUnitPhoneNumber": "08001231234"
}

Response:

Notificar en la pantalla del agente/usuario autenticado de la plataforma los datos del cliente proveniente de la plataforma de la telefonia.

Solicitud HTTP

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Description
apiVersion string Versión del API a usar.

Body Params

Nombre Default Requerido Tipo Descripcion
agentExternalId string Código del agente vinculado a un usuario.
customerPhoneNumber string Número de teléfono de la persona que está realizando la llamada.
businessUnitPhoneNumber string Número de teléfono del sponsor.
identificationType string Tipo de Identificación de la persona que está realizando la llamada.
identificationNumber string Número de Identificación de la persona que está realizando la llamada.

API Tenant - Orden

- Confirmar Pago

Request:

{
  "orderId": 12345678,
  "amount": 10000,
  "status": "AUTHORIZED",
  "cardNumber": "6623",
  "transactionDate": "2019-05-22T16:41:21.063Z",
  "authorizationCode": "1213",
  "responseCode": 0
}

Header Params

Nombre Default Requerido Tipo Descripción
Authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Descripcion
apiVersion string Versión del API a usar.

Body Params

Nombre Default Requerido Tipo Descripcion
orderId int Identificador de la intención de compra o servicio
amount decimal Monto de la orden
status string(20) Referencia en texto del resultado aprobado o rechazado
cardNumber string(4) Últimos 4 digitos de las tarjeta
transactionDate now() datetime Fecha en formato UTC & ISO 8601
authorizationCode string(12) Código de la autorización
responseCode 0 int Codigo de la respuesta, 0 = Success, 1 = Error

API Tenant - Proveedores

Confirmar Pago Proveedor

Request:

{
  "serviceId": 73973,
  "amount": 80000.00,
  "paymentDate": "2019-05-22T16:41:21.063 -07:00",
  "status": "1",
  "comments": "Pago procesado",
  "transactionNumber": "C-0001236"
}

Header Params

Nombre Default Requerido Tipo Descripción
Authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Descripcion
apiVersion string Versión del API a usar.

Body Params

Nombre Default Requerido Tipo Descripcion
serviceId int Número del servicio o asistencia
amount decimal Monto pagado al proveedor
paymentDate now() datetime Fecha en formato UTC & ISO 8601
status string(1) 1 = Pagado, 0 = Rechazado/Pendiente
comments string(200) Comentarios adicionales sobre el pago
transactionNumber string(12) Número de trasacción o soporte del pago

Confirmar Pago Proveedor SAP

Request:

{
  "purchaseOrder": 73973,
  "paymentDate": "2019-05-22",
  "status": "1",
  "transactionNumber": "C-0001236"
}

Header Params

Nombre Default Requerido Tipo Descripción
Authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Descripcion
apiVersion string Versión del API a usar.

Body Params

Nombre Default Requerido Tipo Descripcion
purchaseOrder int Número enviado por ike en cada orden de pago generada
paymentDate now() datetime Fecha en formato yyyy-MM-dd
status string(1) 1 = Pagado, 0 = Rechazado/Pendiente
transactionNumber string(12) Número de trasacción o soporte del pago

- Crear Nuevo Proveedor

Request Header:

curl "https://qa.tenant.api.tutenlabs.dev/provider/create?apiVersion=1" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"

Request Body:

{
  "externalId": "SAP00",
  "direction": "Direction",
  "companyName": "Company",
  "commercialName": "Comercial name",
  "titularName": "Titular name",
  "identificationNumber": "5270700945",
  "legalName": "Legal name",
  "identificationType": 1,
  "businessUnits": [
    {
      "businessUnit": "542927b6-72f5-11ea-bec0-000d3a06cedd"
    }
  ]
}

Permite la creación de proveedores con las siguientes características:

Ambientes Solicitud HTTP

Header Params

Nombre Default Requerido Tipo Descripción
Authorization string Credencial de Autorización y Autenticación. Bearer + token.

Query Params

Nombre Default Requerido Tipo Descripción
apiVersion string Versión del API a usar.

Body Params

Nombre Default Requerido Tipo Descripción
externalId string Código SAP del cliente.
direction string Direccion de la empresa.
companyName string Nombre de la empresa.
commercialName string Nombre comercial.
titularName string Nombre del titular.
identificationNumber int Número de identificación.
legalName string Nombre jurídico de la empresa.
businessUnits lista de unidades de negocio.
businessUnit UUID Código de unidad de negocio.

- Cambio de estado pago a proveedores

Request body:

{
  "description": "No se realizo el pago.",
  "ids": [
    196286
  ],
  "paymentStatus": 5
}

Header Params

Nombre Default Requerido Tipo Descripción
Authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Descripcion
apiVersion string Versión del API a usar.

Body Params

Nombre Default Requerido Tipo Descripcion
description string Razón por la cual se rechaza el pago a proveedor.
ids List Id de los servicio
paymentStatus int Nuevo estado del servicio.
1=En revisión proveedor
2=En revisión cuentas por pagar
3=En espera de pagos
4=Pagado
5=Pago rechazado
6=Inactivo

- Actualización del presupuesto/concepto de costo

Request:

{
  "bookingId":196286,
  "costConceptList":[
    {
      "amount": 1,
      "id": 2
    }
  ],
  "providerPayment":false
}

Header Params

Nombre Default Requerido Tipo Descripción
Authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Descripcion
apiVersion string Versión del API a usar.

Body Params

Nombre Default Requerido Tipo Descripcion
bookingId int Id del servicio
costConceptList List Lista de conceptos de costo de presupuesto
amount double Cantidad.
id int Id del concepto de costo.
providerPayment string(12) Indica si aplica pago a proveedor
true=si
false=no
default=false

API Tenant - Profesional

Actualización De Documento Del Profesional

Request:

{
  "name": "prueba",
}

Header Params

Nombre Default Requerido Tipo Descripción
Authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Descripcion
documentId Long Id del documento a modificar.
apiVersion string Versión del API a usar.

Body Params

Nombre Default Requerido Tipo Descripcion
name string Nombre del documento

API Tenant - Subcripciones

- Carga Masiva

Request:

{
  "mgsid": "12345678",
  "time": "2019-12-05T09:47:35.548-0300",
  "retry": "0",
  "system": "AcchETL",
  "method": "sendBulkCustomer",
  "data": {
    "loadUuid": "8d9b2453-1c2b-40df-9793-019c90aedd33",
    "businessExternalId": "ACCH",
    "subscription": [
      {
        "customer": {
          "email": "[email protected]",
          "extraInfo": {
            "genero": "male",
            "edad": "38"
          },
          "identificationNumber": "235060101",
          "identificationType": "PASAPORTE",
          "lastName": "Bolivar",
          "mobilePhone": "+56999999994",
          "name": "Naelly",
          "address": "Avenida Libertador 123, Santiago, Chile",
          "customerCondition": "Estandar",
          "nationality": 32,
          "dateOfBirth": "15/12/1987",
          "landlinePhone": "+56223456789",
          "commercialPhone": "+56287654321",
          "clientType": "VIP"
        },
        "beneficiaries": [
          {
            "identificationNumber": "235060101",
            "identificationType": "PASAPORTE",
            "lastName": "Molina Editado",
            "mobilePhone": "+566855768558",
            "name": "Auracelina I",
            "email": "[email protected]",
            "address": "Avenida Libertador 123, Santiago, Chile",
            "customerCondition": "Estandar",
            "nationality": 32,
            "dateOfBirth": "15/12/1987",
            "landlinePhone": "+56223456789",
            "commercialPhone": "+56287654321",
            "clientType": "VIP"
          }
        ],
        "materialAuto": [
          {
            "brand": "Renault",
            "color": "Gris estrella",
            "model": "Sandero",
            "modifications": "Vidrios reforzados XXXXXX",
            "plate": "sp12-test-load-01",
            "serialMotor": "900011111101",
            "vehicleTypeId": 1,
            "vehicleUseId": 1,
            "vin": "77766661111333",
            "year": 2022,
            "active": true
          }
        ],
        "materialProperty": [
          {
            "homeTypeId": "1",
            "direction": "Laureles centro - Medellin",
            "numeration": "20201",
            "cityId": "127",
            "communeId": "493"
          }
        ],
        "overwrite": false,
        "subscription": {
          "accidentRate": [
            {
              "quantity": 2,
              "serviceId": null
            }
          ],
          "endDate": "2022-12-12",
          "externalId": "load-test-sp12-1",
          "contractorExternalId": "lXC-1",
          "extraInfo": {
            "alias": "sp12-alias-1"
          },
          "planVersionId": "sp21-rcu",
          "registrationDate": "2022-02-24",
          "revocationDate": "2023-12-03",
          "startDate": "2021-03-11",
          "status": 1
        }
      }
    ]
  }
}

Carga Masiva de clientes con un limite de 10.000 subscription en su array por petición.

El proceso es asincrono, se requiere la creación de cliente y materia para crear la subscripción.

Para el caso de accidentRate tomar en cuenta las siguientes reglas:

Header Params

Nombre Default Requerido Tipo Descripción
Authorization string Credencial de Autorización y Autenticación. Bearer + token.

Query Params

Nombre Default Requerido Tipo Descripción
apiVersion string Versión del API a usar.

Body Params

Nombre Default Requerido Tipo Descripción
loadUuid UUID Identificador único de la carga masiva. A través de este identificador usted podrá posteriormente consultar el estatus/resultado de la carga masiva.
businessExternalId string Valor con la equivalencia, external_id en la entidad bu de tuten
Subscription list
overwrite false bool Si el valor es true, se actualizan/reescriben los datos, en caso contrario, los datos suministrados son omitidos.
Customer object
identificationType string Tipo de Identificación de la persona o empresa titular
identificationNumber string Numero o Código de Identificación de la persona o empresa titular
name string Nombres
lastName string Apellidos
email string Correo electronico
mobilePhone string Telefono Celular
extraInfo json Tags, atributos adicionales en formato clave valor
address string Direccion del cliente
customerCondition string Condición del cliente
nationality int Nacionalidad del cliente
dateOfBirth Date Fecha de nacimiento del cliente
landlinePhone string Teléfono fijo del cliente
commercialPhone string Teléfono comercial del cliente
clientType string Tipo de cliente
Beneficiaries list
identificationType string Tipo de Identificación del beneficiario
identificationNumber string Numero o Código de Identificación del beneficiario.
name string Nombres del beneficiario.
lastName string Apellidos del beneficiario.
email string Correo electrónico del beneficiario.
mobilePhone string Teléfono celular del beneficiario.
address string Direccion del beneficiario.
customerCondition string Condición del beneficiario
nationality int Nacionalidad del beneficiario
dateOfBirth Date Fecha de nacimiento del beneficiario
landlinePhone string Teléfono fijo del beneficiario
commercialPhone string Teléfono comercial del beneficiario
clientType string Tipo de cliente del beneficiario
Subscription object
externalId string Identificador de la poliza, suscripción o cuenta de un sistema externo de tuten
planVersionId string Este campo corresponde a la versión del plan y se utiliza para conectar planes que tienen la misma base pero versiones distintas. Por ejemplo, si tenemos el plan A que cubre 4 grúas al año y la nueva versión de plan A (plan A versión 2.0) cubre 8 grúas al año, entonces ambos planes tienen el mismo planVersionId. Es importante decir que en caso de que el plan no pertenezca a una versión, por default el id de la versión será el mismo que el PlanExternalID
startDate date Fecha inicio de vigencia
endDate date Fecha fin de vigencia. En caso de no pasar la propiedad o pasarse con valor null (sin comillas), la suscripción será creada con fecha fin indefinida.
registrationDate NOW date Fecha de alta
revocationDate date Fecha de baja
status 1 int Estatus del preregistro, 1 = Activo - 2 = Inactivo
extraInfo json Tags, atributos adicionales en formato clave valor
contractorExternalId string Contratante asociado a la suscripción del cliente
Accident Rate object
serviceId null int Identificador del tipo de servicio/definición del servicio
quantity 0 int Cantidad de eventos que se debe descontar de su cobertura
Material Auto list
plate string Matrícula, patente o placa de vehículo
brand string Marca del vehículo o marca de tarjeta
model string Modelo de vehículo
year string Año del vehículo
color string Color del vehículo
vin string Número identificador del vehículo
serialChassis string Serial del chasis
serialMotor string Serial del motor
vehicleUseId int Identificador del tipo de uso del vehículo: [ 1 = Particular, 2 = Comercial ].
vehicleTypeId int Identificador del tipo de vehículo: [ 1 = Automóvil, 2 = Moto, 3 = Camión ]
modifications string Modificaciones del vehículo
active boolean Materia activa.
Material Property list
homeTypeId string Tipo de inmueble
direction string Dirección
numeration string Numero de Calle
cityId string Identificador de la Ciudad/Región
communeId string Identificador de la Comuna

- Estatus de la Carga Masiva

Request:

curl "https://qa.tenant.api.tutenlabs.dev/subscription/load/c047eed7-5568-44d7-a804-8ff67ec5a14d/status?businessExternalId=SPONSOR1&apiVersion=1" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"

Response:

{
    "ready": true,
    "load": 10000,
    "success": 9010,
    "fail": 890,
    "startAt": "2021-08-26T15:38:44.458Z",
    "finishAt": "2021-08-29T10:31:54.001Z",
    "extra": {
      "relLink": "https://qa.tenant.api.tutenlabs.dev/subscription/load/c047eed7-5568-44d7-a804-8ff67ec5a14d/result?businessExternalId=SPONSOR1&apiVersion=1"
    },
}

Consulta el estatus de una carga masiva enviada previamente. Solo se visualizarán los registros ya procesados.

Header Params

Nombre Default Requerido Tipo Descripción
Authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Descripcion
apiVersion string Versión del API a usar.
businessExternalId string Valor con la equivalencia, external_id en la entidad bu de tuten

URL Params

Nombre Default Requerido Tipo Descripción
loadUuid UUID Identificador único de la carga masiva.

Body Params

Nombre Default Requerido Tipo Descripcion
ready string Carga completada
load string Cantidad de registro recibidos
success string Cantidad de registros procesados satisfactoriamente
fail string Cantidad de registros con error
startAt string Fecha de inicio de la carga
finishAt string Fecha de fin de la carga

- Resultado de la Carga Masiva

Request:

curl "https://uat.tenant.api.tutenlabs.dev/subscription/load/c047eed7-5568-44d7-a804-8ff67ec5a14d/status?&businessExternalId=SPONSOR1&apiVersion=1" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"

Response:

{
    "msgid": "12345678",
    "system": "AcchETL",
    "time": "2021-10-27T09:47:35.920Z",
    "method": "sendBulkCustomer",
    "retry": "0",
    "data": {
      "loadUuid": "8d9b2453-1c2b-40df-9793-019c90aedd33",
      "extra": {
          "prevLink": "",
          "nextLink": ""
      },
      "businessExternalId": "ACCH",
      "customer": [
        {
          "subscription": {
            "createdAt": "2024-07-31T18:35:55.957",
            "endDate": "2022-12-12",
            "registrationDate": "2022-02-24",
            "revocationDate": "2023-12-03",
            "externalId": "load-test-sp12-1",
            "contractorExternalId": "lXC-1",
            "planVersionId": "sp21-rcu",
            "accidentRate": {
              "empty": false
            },
            "startDate": "2021-03-11",
            "extraInfo": {},
            "status": "1",
            "updatedAt": "2024-07-31T18:36:03.267"
          },
          "materialAuto": "[{\"vehicleUseId\":1,\"serialMotor\":\"900011451101\",\"vehicleTypeId\":1,\"color\":\"Gris estrella\",\"year\":2022,\"plate\":\"ABC765\",\"vin\":\"77766661111333\",\"model\":\"Sandero\",\"brand\":\"Renault\",\"modifications\":\"Vidrios reforzados XXXXXX\"}]",
          "overwrite": false,
          "status": {
            "result": 1,
            "message": "OK"
          },
          "extraInfo": {
            "edad": "38",
            "genero": "male"
          },
          "customer": {
            "name": "Naelly",
            "lastName": "Bolivar",
            "identificationNumber": "235060101",
            "identificationType": "PASAPORTE",
            "mobilePhone": "+56999999994",
            "email": "[email protected]"
          },
          "materialProperty": "[]"
        }
      ]
    }
}

Consulta el resultado de un carga enviada previamente.

Header Params

Nombre Default Requerido Tipo Descripción
Authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Descripcion
apiVersion string Versión del API a usar.
businessExternalId string Valor con la equivalencia, external_id en la entidad bu de tuten
status number Permite filtrar por el estatus de los registros cargados. 1-Exitosos 2-Fallidos.

URL Params

Nombre Default Requerido Tipo Descripción
loadUuid UUID Identificador único de la carga.

API Tenant - Suscripciones de clientes

Consulta consolidada de planes suscritos por cliente.

Request headers:

{
    "Authorization": "Bearer eyJhbGciOiJIUzI1N...EAE",
    "businessUnitUUID": "4568882c-783d-11eb-9439-0242ac130002"
}

URL Params

{
    "apiVersion": 1
}

Request full body:

{
    "identificationType": "PASAPORTE",
    "identificationNumber": "20250410-1",
    "subscriptionExternalId": "e87ed0f4-aefb-46d5-828c-b31f6dd9f25f",
    "planExternalId": "145641-2",
    "materialExternalId": "a20250410b",
    "status": 0,
    "page": 1,
    "limit": 100,
    "orderBy": "planExternalId",
    "order": 1
}

Request minimal body:

{
    "identificationNumber": "20250410-1",
}

Response

[
    {
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "engineNumber": "a20250410b",
        "materialBusinessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "subscriptionExternalId": "e87ed0f4-aefb-46d5-828c-b31f6dd9f25f",
        "beneficiaryIds": "92594",
        "patentPlate": "a20250410b",
        "model": "arauca",
        "vin": "a20250410b",
        "planExternalId": "145641-2",
        "status": 0,
        "identificationNumber": "20250410-1",
        "businessUnitName": "Automóvil Club"
    },
    {
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "endDate": "2031-10-23",
        "engineNumber": "ENGINE123",
        "materialBusinessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "subscriptionExternalId": "PR20251006",
        "beneficiaryIds": "1310135",
        "patentPlate": "RDWH99",
        "model": "LOYALE",
        "vin": "VIN",
        "planExternalId": "Prueba pago",
        "status": 0,
        "identificationNumber": "20250410-1",
        "businessUnitName": "Automóvil Club"
    }
]

URL de la solicitud HTTP:

Header Params

Nombre Default Requerido Tipo Descripción
Authorization string Credencial de Autorización y Autenticación. Bearer + token.
businessUnitUUID uuid UUID de la Unidad de Negocios.

Query Params

Nombre Default Requerido Tipo Descripción
apiVersion int Versión del API a usar.

Body Params

Nombre Default Requerido Tipo Descripción
identificationNumber string Número de Identificación del titular o beneficiario.
identificationType string Tipo de Identificación del titular o beneficiario.
subscriptionExternalId string ID Externo de la Suscripción.
planExternalId string ID Externo del Plan.
materialExternalId string ID Externo de la Materia. Puede ser una placa patente, un número de vin o número de motor.
status 0 int Estado de la suscripción. 0 = Activo . 1 = Inactivo .
page 1 int Número de página a consultar.
limit 50 int Número de registros a mostrar por página consultada.
orderBy createdAt string Campo mediante el cuál se ordenan los resultados. Puede ser cualquiera de los antes mencionados, excluyendo a los de paginación.
order -1 int Campo de cardinalidad del ordenamiento. -1 = Descendiente . 1 = Ascendente .

API Tenant - Unidad de Negocio

- Crear Unidad de negocio

Request:

curl --location --request POST 'https://qa.tenant.api.tutenlabs.dev/business-unit' \
--header 'Content-Type: multipart/form-data' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiIyMDAzIiwiaWF0IjoxNjYxMjg0NjM3LCJJTlRFR1JBVElPTl9LRVWfSUQiOjIwMDMsIlJPTEVfSUQiOjEzMDIsIlNDT1BFX0lEIjo5LCJleHAiOjE2NjEyOTE4MzcsIlRFTkFOVF9VVUlEIjoiZGRhYTYxNGUtNjUxNC0xMWVhLTQ0MjEtMDI0MmFjMTM5OTk3In0.5vh-dRM4oWWX4jHARahcZ5WNqYWEcNBqDEYWqlBaCbU' \
--form 'name="newName"' \
--form 'code="NoDuplicatedCode"' \
--form 'shortName="NDC"' \
--form 'ivrPhoneNumbers="12345,1234"' \
--form 'hasNotDaysAvailable="false"' \
--form 'logoCustomerPortalCover=@"/url/to/file.png' \
--form 'countryId="1"' \
--form 'currencyId="2"' \
--form 'dateFormatId="3"' \
--form 'languageId="4"' \
--form 'timeFormatId="5"' \
--form 'timezoneId="6"'

Esta api permite crear una Unidad de Negocio inactiva.

Endpoints de acceso:

Header Params

Nombre Default Requerido Tipo Descripción
Authorization string Credencial de Autorización y Autenticación. Bearer + token.

Body Params

Nombre Default Requerido Tipo Descripción
name string Nombre de la unidad de negocio. Máximo 127 caractéres.
code string Código de la unidad de negocio. Máximo 63 caractéres.
shortName string Nombre corto de la unidad de negocio. Máximo 63 caractéres.
ivrPhoneNumbers string[] Números telefónicos de centro de llamadas.
hasNotDaysAvailable boolean Se les configura o no días no disponibles de la unidad de negocio.
logoCustomerPortalCover File Imágen de portal de clientes.
countryId string Id del país de la unidad de negocio.
currencyId string Id de la moneda de la unidad de negocio.
dateFormatId string Id del formato de fecha de la unidad de negocio.
languageId string Id del lenguage de la unidad de negocio.
timeFormatId string Id del formato de hora de la unidad de negocio.
timezoneId string Id de la zona horaria de la unidad de negocio.
backofficeName string Nombre del backoffice (el mismo valor de shortName).
categoryId 1 string Id de la categoría de la unidad de negocio.
clientPortalName string Nombre del portal de cliente.
colorId 35 string Id del color primario de la unidad de negocio.
contactAppointment Integración string Cita del contacto.
contactChannelPhone +5699999999 string Número del canal de contacto.
contactEmail [email protected] string Email del contacto.
contactName Integración string Nombre del contacto.
favicon File Icono de la unidad de negocio.
fileUrl string Url de archivo adjuntado en unidad de negocio.
fileUrlCustomerPortalCover string Url de la portada de cliente.
fileUrlFavicon string Url del ícono de la unidad de negocio.
fileUrlLogoBo string Url del logo de la unidad de negocio.
hasPaymentGateway False Boolean Tiene formas de pago.
hasPlanPortal False Boolean Tiene portal de planes.
hasPreCustomer False Boolean Tiene pre-clientes.
identificationNumber 1 string Número de identificación de la unidad de negocio.
identificationTypeId 4 string Tipo de identificación de la unidad de negocio.
logotype string Logotipo de la unidad de negocio.
logotypeBo string Logotipo del backoffice.
paymentMethodIds string Id de los métodos de pago.
paymentValidationTime string Tiempo de validación de pago (minutos).
phoneNumber +5699999999 string Número telefónico de la unidad de negocio.
portalColorId string Id del color del portal.

Recursos

- Crear Nueva Herramienta para un Proveedor

Permite la creación de una herramienta para un proveedor:

Request:

curl --location 'https://qa.tenant.api.tutenlabs.dev/tool?apiVersion=1' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiI0IiwiaWF0IjoxNzE4Mzc1MjkzLCJJTlRFR1JBVElPTl9LRVlfSUQiOjQsIlJPTEVfSUQiOjQxLCJTQ09QRV9JRCI6OSwiZXhwIjoxNzE4MzgyNDkzLCJURU5BTlRfVVVJRCI6ImFkZmY3ZjZhLWU5N2QtMTFlYi05YTAzLTAyNDJhYzEzMDAwMyJ9.lzijl6v_3ZolU1tiD-Occbancef_LQ2MWpv0tv1wzh0' \
--header 'Content-Type: application/json' \
--data '{
    "externalProviderId": "PROV 3143",
    "toolTypeId": 1,
    "plate": "123ABCPB1",
    "description": "PRUEBA PB12",
    "toolModelTypeId": 3,
    "toolCapacityNames": ["A - 3500 kg", "D - 12001 a 25000 kg"],
    "brandDescription": "HONDA",
    "modelDescription": "CiViC"
}'

Request Body:

{
    "providerId": 3143,
    "externalProviderId": "PROV 3143",
    "toolTypeId": 1,
    "plate": "123ABCPB1",
    "description": "Unidad basica",
    "toolModelTypeId": 3,
    "toolModelTypeName": "Doble Equipo",
    "toolCapacityIds" : [13, 9],
    "toolCapacityNames": ["A - 3500 kg", "D - 12001 a 25000 kg"],
    "brandId": 487,
    "brandDescription": "Honda",
    "modelId": 17907,
    "modelDescription": "Civic"
}

Response:

{
    "id": 301
}

Ambientes Solicitud HTTP

Header Params

Nombre Default Requerido Tipo Descripción
Authorization string Credencial de Autorización y Autenticación. Bearer + token.

Query Params

Nombre Default Requerido Tipo Descripción
apiVersion string Versión del API a usar.

Body Params

Nombre Default Requerido Tipo Descripción
providerId x string Identificador del proveedor. El parámetro es OBLIGATORIO cuando el externalProviderId es nulo.
externalProviderId x string Código identificador del proveedor. El parámetro es OBLIGATORIO cuando el providerId es nulo.
toolTypeId string Identificador del tipo de herramienta.
toolModelTypeId x int Identificador del modelo del tipo de herramienta. El parámetro es OBLIGATORIO cuando el toolModelTypeName es nulo.
toolModelTypeName x string Nombre del modelo del tipo de herramienta. El parámetro es OBLIGATORIO cuando el toolModelTypeId es nulo.
description x string Descripción de la herramienta.
toolCapacityIds x long[] Array de Ids de las capacidades de la herramienta.
toolCapacityNames x string[] Array de nombres de las capacidades de la herramienta.
plate string Patente/placa.
brandId x int Identificador de la marca. El parámetro es OBLIGATORIO cuando el brandDescription es nulo.
brandDescription x string Descripcion de la marca. El parámetro es OBLIGATORIO cuando el brandId es nulo.
modelId x int Identificador del modelo. El parámetro es OBLIGATORIO cuando el modelDescription es nulo.
modelDescription x string Descripción del modelo. El parámetro es OBLIGATORIO cuando el modelId es nulo.

- Actualizar Herramienta de Proveedor

Permite la actualización de la herramienta de un proveedor:

Request:

curl --location --request PUT 'https://qa.tenant.api.tutenlabs.dev/tool/323/?apiVersion=1' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiI0IiwiaWF0IjoxNzE4Mzc1MjkzLCJJTlRFR1JBVElPTl9LRVlfSUQiOjQsIlJPTEVfSUQiOjQxLCJTQ09QRV9JRCI6OSwiZXhwIjoxNzE4MzgyNDkzLCJURU5BTlRfVVVJRCI6ImFkZmY3ZjZhLWU5N2QtMTFlYi05YTAzLTAyNDJhYzEzMDAwMyJ9.lzijl6v_3ZolU1tiD-Occbancef_LQ2MWpv0tv1wzh0' \
--header 'Content-Type: application/json' \
--data '{
    "providerId": 3143,
    "externalProviderId": "PROV 3143",
    "toolTypeId": 1,
    "plate": "1234ABCD",
    "description": "PRUEBA",
    "toolModelTypeId": 3,
    "toolCapacityIds": [12],
    "brandId": 487,
    "modelDescription": "CIVIC"
}'

Request Body:

{
    "providerId": 3143,
    "externalProviderId": "PROV 3143",
    "toolTypeId": 1,
    "plate": "123ABCPB1",
    "description": "Unidad basica",
    "toolModelTypeId": 3,
    "toolModelTypeName": "Doble Equipo",
    "toolCapacityIds" : [13, 9],
    "toolCapacityNames": ["A - 3500 kg", "D - 12001 a 25000 kg"],
    "brandId": 487,
    "brandDescription": "Honda",
    "modelId": 17907,
    "modelDescription": "Civic"
}

Response:

{
    "id": 31
}

Ambientes Solicitud HTTP

Path Params

Nombre Default Requerido Tipo Descripción
toolId number Id de la herramienta.

Header Params

Nombre Default Requerido Tipo Descripción
Authorization string Credencial de Autorización y Autenticación. Bearer + token.

Query Params

Nombre Default Requerido Tipo Descripción
apiVersion string Versión del API a usar.

Body Params

Nombre Default Requerido Tipo Descripción
providerId x string Identificador del proveedor. El parámetro es OBLIGATORIO cuando el externalProviderId es nulo.
externalProviderId x string Código identificador del proveedor. El parámetro es OBLIGATORIO cuando el providerId es nulo.
toolTypeId string Identificador del tipo de herramienta.
toolModelTypeId x int Identificador del modelo del tipo de herramienta. El parámetro es OBLIGATORIO cuando el toolModelTypeName es nulo.
toolModelTypeName x string Nombre del modelo del tipo de herramienta. El parámetro es OBLIGATORIO cuando el toolModelTypeId es nulo.
description x string Descripción de la herramienta.
toolCapacityIds x long[] Array de Ids de las capacidades de la herramienta.
toolCapacityNames x string[] Array de nombres de las capacidades de la herramienta.
plate string Patente/placa.
brandId x int Identificador de la marca. El parámetro es OBLIGATORIO cuando el brandDescription es nulo.
brandDescription x string Descripcion de la marca. El parámetro es OBLIGATORIO cuando el brandId es nulo.
modelId x int Identificador del modelo. El parámetro es OBLIGATORIO cuando el modelDescription es nulo.
modelDescription x string Descripción del modelo. El parámetro es OBLIGATORIO cuando el modelId es nulo.

- Cargar documento a una herramienta

Request:

curl --location 'https://qa.tenant.api.tutenlabs.dev/provider/document/tool/195?documentCategoryId=3&expirationDate=2024-04-30&apiVersion=1' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiI0IiwiaWF0IjoxNzEzNzk3OTY4LCJJTlRFR1JBVElPTl9LRVlfSUQiOjQsIlJPTEVfSUQiOjQxLCJTQ09QRV9JRCI6OSwiZXhwIjoxNzEzODA1MTY4LCJURU5BTlRfVVVJRCI6ImFkZmY3ZjZhLWU5N2QtMTFlYi05YTAzLTAyNDJhYzEzMDAwMyJ9.6Tfml8W_iy3hnwFrzjdZ7B0fsnQD4j1_3JMIwanoFq8' \
--form 'file=@"/C:/Users/username/documents/document.png"'

Permite asociar un documento a un recurso.

Ambientes Solicitud HTTP

Path Params

Nombre Default Requerido Tipo Descripción
toolId number Id del recurso.

Header Params

Nombre Default Requerido Tipo Descripción
Authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Descripcion
apiVersion string Versión del API a usar.
documentCategoryId string Id de la categoría del documento. .

Valores posibles:

1 = Imagen
2 = Permiso para transitar
3 = Seguro
4 = Verificación técnica
expirationDate string Fecha de vencimiento del documento, en formato UTC & ISO 8601.

Body Params

Nombre Default Requerido Tipo Descripcion
file File Documento que se asociará al recurso.

- Actualizar el documento de una herramienta

Request:

curl --location --request PUT 'https://qa.tenant.api.tutenlabs.dev/provider/document/tool/241?apiVersion=1&name=prueba-update2.jpg' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiI0IiwiaWF0IjoxNzEzODE3NDI5LCJJTlRFR1JBVElPTl9LRVlfSUQiOjQsIlJPTEVfSUQiOjQxLCJTQ09QRV9JRCI6OSwiZXhwIjoxNzEzODI0NjI5LCJURU5BTlRfVVVJRCI6ImFkZmY3ZjZhLWU5N2QtMTFlYi05YTAzLTAyNDJhYzEzMDAwMyJ9.EYvwux3INVWtBhRi_cB9KkVs0giKGUV-JW9RWASJSzI'

Permite actualizar el documento de un recurso.

Ambientes Solicitud HTTP

Path Params

Nombre Default Requerido Tipo Descripción
toolId number Id del recurso asociado al documento.
documentId number Id del documento que se quiere actualizar.

Header Params

Nombre Default Requerido Tipo Descripción
Authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Descripcion
apiVersion string Versión del API a usar.
name string Nuevo nombre para el documento.

API Report

API Report - Introducción

Bienvenido a nuestra API creada especialmente para su empresa. Puedes utilizar nuestra API para acceder a la información relacionada a la reporteria de la plataforma.

Esta es un API GraphQL desde donde podrá consultar información de los Casos, Materias, Clientes, Preclientes, Servicios, Planes y Unidades de negocio. GraphQL permite a los clientes pedir los datos exactos que necesitan. Ni más ni menos. También permite a los clientes pedir recursos anidados en la misma operación, evitando la necesidad de peticiones en cascada al estilo REST, ya que tiende a empujar la complejidad a clientes de la API. Para mas información visite la pagina oficial del proyecto GraphQL.

Diagrama sobre el proceso de sincronización de datos:

alt text

Puede ver ejemplos de código en el área oscura de la derecha.

API Report - Autorización y Autenticación

Para poder generar un token de acceso, debe suministrar el API Key generado por Tutenlabs y su API Secret al API de inicio de sesión.

Todas las peticiones que se realicen a la API de reportería deben contener la cabecera token con el JWT de acceso que es generado a través del API de Autenticación. Esto permite identificar quién es el que realiza la petición sobre el sistema y que información puede ver.

API Report - Explorer

Para visualizar de manera grafica las entidades y operaciones disponibles por cada entidad GraphQL

1 - Ingresar a la URL:

https://graphiql.tutenlabs.dev/

alt text

2 - En la página inicial ingresar la URL segun el ambiente que se requiera explorar

alt text

3 - Obtener un token segun key/secret asignado y explorar las entidades y operaciones disponibles

alt text

API Report - Diagrama ER

En el siguiente enlace se encuentra el diagrama de las entidades y relaciones:

Visualizar Diagrama

Para la visualización de dicho contenido, ingrese en el siguiente link https://dbdiagram.io/d.

API Report - Changelog

A continuación, se detalla los cambios realizados sobre las entidades:

WIP - Cambios en validación sin version definida

Changed

Campo Tipo PK Descripción
channelType string Canal de respuesta de la encuesta

v33 - Published 2025-10-01

Changed

Campo Tipo PK Descripción
usernameCreation int ID de usuario que crea el servicio
typeServices string Tipo de servicio (programado, inmediato)
eventTimestamp timestamp Fecha de ocurrencia del evento

v32 - Published 2025-07-03

Changed

Campo Tipo PK Descripción
fantasyName string Nombre de fantasía
businessActivity string Giro o actividad
employees int Número de trabajadores
legalRepresentativeEmail string Correo electrónico representante legal
legalRepresentativePhoneContact string Teléfono contacto representante legal
administrationName string Nombres contacto administración
administrationLastname string Apellidos contacto administración
administrationPhone string Teléfono canal contacto administración
administrationPhoneContact string Teléfono contacto administración
whatsappNotification boolean Activar notificaciones por whatsapp
earlyPayment boolean Pronto pago
paymentMethod int Modalidad de pago
accountHolderName string Nombre de titular
accountHolderEmail string Correo electrónico de los datos financieros del proveedor
paymentIdentificationTypeId int Tipo de identificación
paymentIdentificationNumber string Número de identificación de los datos financieros
bank int Banco
paymentAccountType int Tipo de cuenta
accountNumber string Número de cuenta
activeDiscounts boolean Descuentos activos
typeOfDiscount int Tipo de descuento
discountValue string Valor del descuento
guaranteeAmount string Monto a constituir
guaranteeAmountAccumulated string Monto acumulado
observations string Observaciones sobre el proveedor
commune int Comuna
province int Provincia
longitude decimal Longitud
latitude decimal Latitud
countryName string Nombre de país
country int ID de país

Add

Campo Tipo PK Descripción
active boolean Materia activa.
vehicleType int Tipo de vehículo (1 = Automóvil, 2 = Motocicleta, 3 = Camión).
vehicleUsage int Tipo de uso del vehículo (1 = Particular, 2 = Comercial).
vin string Número de vin del vehículo.
color string Color del vehículo.
modifications string Modificaciones del vehículo.

Add

Campo Tipo PK Descripción
address string Direccion del cliente
customerCondition string Condición del cliente
nationality int Nacionalidad del cliente
dateOfBirth Date Fecha de nacimiento del cliente
landlinePhone string Teléfono fijo del cliente
commercialPhone string Teléfono comercial del cliente
clientType string Tipo de cliente

Add

Campo Tipo PK Descripción
customerCondition string Condición del cliente
nationality int Nacionalidad del cliente
dateOfBirth Date Fecha de nacimiento del cliente
landlinePhone string Teléfono fijo del cliente
commercialPhone string Teléfono comercial del cliente
clientType string Tipo de cliente

v29 - Published: 2024-11-12

Add

Puede consultar los aliados en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador único del aliado.
active boolean Estado.
name string Nombre del aliado.
fancyName string Nombre comercial.
reasonName string Nombre operacional o razón social.
region string Nombre de la región donde se encuentra.
commune string Nombre de la comuna donde se encuentra.
province string Nombre de la provincia donde se encuentra.
hasPromptPayment boolean Indica si el aliado tiene pronto pago habilitado.
paymentMethod string Método de pago utilizado por el taller o sucursal.
paymentEmail string Correo electrónico de pago asociado al aliado.
accountOwnerName string Nombre del titular de la cuenta bancaria asociada.
bankName string Nombre del banco asociado a la cuenta del aliado.
accountType string Tipo de cuenta bancaria.
accountNumber string Número de cuenta.
accountOwnerRut string RUT del titular de la cuenta bancaria.
numberOfBranches int Número de sucursales asociadas al aliado.
businessUnit UUID Identificador de la Unidad de negocio.

Puede consultar las sucursales en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador único de la sucursal.
active boolean Estado.
branchType string Tipo de sucursal.
name string Nombre.
fancyName string Nombre comercial.
rut string RUT.
region string Nombre de la región donde se encuentra la sucursal.
commune string Nombre de la comuna donde se encuentra la sucursal.
bankName string Nombre del banco asociado a la cuenta.
accountType string Tipo de cuenta bancaria.
accountNumber string Número de cuenta bancaria.
allyId int Identificador del aliado principal al que está asociada la sucursal.
businessUnit UUID Identificador de la Unidad de negocio.

Puede consultar las bitacora de acciones del casos en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador único del registro en bitácora.
caseNumber string Número del caso asociado.
action string Nombre de la acción ejecutada.
createdAt string Fecha y hora de su creación.
createdBy string Nombre del usuario que ejecutó la acción.
updatedAt string Fecha y hora de su actualización.
updatedBy string Nombre del usuario que actualizó la acción.
businessUnit UUID Identificador de la Unidad de negocio.

Add

Puede consultar los tiempos asociados al ETA en nuestra API de reportería, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador único.
serviceDefinitionId int Identificador de la Definición del Servicio.
timeOfBeforeAppointment int Minutos para calcular el ETA del profesional previo a la hora del servicio.
timeOfTolerance int Minutos extras para dar inicio al servicio.
timeBeforeBackofficeNotification int Minutos de inactividad del proveedor antes de notificar al backoffice de la inacción.
businessUnit UUID Identificador de la Unidad de negocio.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de última modificación.

Changed

Campo Tipo PK Descripción
bookingParentId int Servicio predecesor
Campo Tipo PK Descripción
responsible string Responsable: Cliente URL, Cliente en sitio, Sponsor/Unidad de negocio, Tenant
status string Estado de la orden: Pagado, Pendiente, Anulado, Caducado

Add

Puede consultar la configuración de conceptos de costo en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador único del concepto de costo.
businessUnit UUID Identificador único de la unidad de negocio a la que pertenece el concepto de costo.
name string Nombre del concepto de costo.
rateType string Tipo de tarificación

Valores posibles:

1. Fijo/por unidad
2. Exceso
3. Dummy
4. Base
unit string Unidad de medida.

Valores posibles:

1.Centímetro, cm
2.Metro: m
3.Kilometro: Km
4.Minuto, min
5.Hora, Hr.
6.Día, D
7.Gramo, gr
8.Kilogramo, Kg
9.Centímetro cuadrado, cm2
10.Metro cuadrado, m2
11.Litro: L
12.Cantidad (un)
unitType string Tipo de unidad de medida.

Valores posibles:

1.Longitud
2.Tiempo
3.Peso
4.Área
5.Unidad
6.Volumen
includeInServiceRequest boolean Si está activo (true), se mostrará el concepto de costo al crear el servicio y listado en el presupuesto.
includeAsCoverageValidator boolean Si está activo (true), se incluirá en la validación de cobertura al crear el servicio y en el presupuesto.
validationViaMapIntegration boolean Si está activo (true), los kilómetros se calcularán de manera automática a partir de la integración de mapas.
baseCost float Costo del concepto de costo.
baseSale float Precio venta del concepto de costo.
top int Cantidad máxima del concepto de costo a valor base. Valores superiores serán considerado a costo y valor exceso.
excessBaseCost float Costo del concepto de costo para aquellos considerados excesos.
excessBaseSale float Precio venta del concepto de costo para aquellos considerados excesos.
CreatedAt timestamp Fecha/hora de creación del concepto de costo.
UpdatedAt timestamp Fecha/hora de última actualización del concepto de costo.

Changed

Add

Puede consultar los comentarios del servicio en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int ID único del comentario.
businessUnit UUID Identificador de la Unidad de negocio.
bookingId int Identificador único del servicio.
comment string Contenido del comentario.
Createdby string Identificador único del usuario creador del comentario.
updatedAt timestamp Fecha de ultima modificación.
createdAt timestamp Fecha de creación.

Add

Puede consultar las reglas de una etapa en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
filteringUUID UUID Identificador único de la regla.
stageUUID UUID Identificador único de la etapa en la que está definida la regla.
tenantUUID UUID Identificador único del tenant.
order int Orden cardinal definido para la etapa en el motor.
applicationMode string Y/O/ null.
ruleType string Nombre del tipo de regla. Ejemplo Distance: Distancia.
condition string Menor que, Menor o igual que, Mayor que, Mayor o igual que, Incluir.
value string Valor definido para la regla.
symbol string km, min, null.
updatedAt timestamp Fecha de ultima modificación.
createdAt timestamp Fecha de creación.

Add

Campo Tipo PK Descripción
orderingUUID UUID Identificador único del ordenamiento.
stageUUID UUID Identificador único de la etapa en la que se definió el ordenamiento.
tenantUUID UUID Identificador único del tenant.
order int Orden cardinal definido para el ordenamiento en la etapa.
ruleType string Nombre del tipo de regla.
sortingType string Ascendente, Descendente.
updatedAt timestamp Fecha de ultima modificación.
createdAt timestamp Fecha de creación.

Changed

Campo Tipo PK Descripción
engineUUID UUID ID único del motor.
tenantUUID UUID Identificador único del tenant.
name string Nombre del Motor.
state boolean Activo: true / Inactivo: false.
operationalDays string Lunes, Martes...
operatingStartTime int 15:00...
operatingEndTime int 18:00...
alwaysAvailable boolean 24/7: true / Días y horarios definidos: false.
updatedAt timestamp Fecha de ultima modificación.
createdAt timestamp Fecha de creación.

Changed

Campo Tipo PK Descripción
id int Identificador único de la respuesta de la pregunta de la encuesta
Campo Tipo PK Descripción
pollResponseId int Identificador de respuesta
pollQuestionId int Identificador de Pregunta

Add

Campo Tipo PK Descripción
stageUUID UUID Identificador único de la etapa.
stageName string Nombre de la etapa.
engineUUID UUID Identificador único del motor al que pertenece la etapa.
tenantUUID UUID Identificador único del Tenant al que pertenece el motor.
createdAt timestamp Fecha de creación de la etapa.
updatedAt timestamp Fecha de última actualización de la etapa.
stageStatus Boolean 1: Activo. 0: Inactivo.
stageType Boolean 1: Subasta. 0: No subasta.
addressee string Destinatario de las ofertas (Sucursales, Profesionales, Sucursales/profesionales).
simultaneousOffers string Todos / Tamaño máximo del grupo.
stageTime int Duración máxima estimada de la etapa.
numberOfIterations int Cantidad de veces que correrá la configuración de la etapa.
shippingInterval int Minutos entre iteraciones.
numberOfAttemps int Cantidad de veces máxima que se le enviará notificación de la oferta al mismo ID destinatario.
offerExpirationTime int Tiempo que permanece vigente la oferta.
unlimitedAcceptanceTime Boolean 1: ilimitado; 0: limitado. Minutos durante los cuales la oferta estará vigente para su aceptación.

Changed

Campo Tipo PK Descripción
status string Estado de la pre-factura.
Campo Tipo PK Descripción
serviceDeleted boolean Un indicador que marca si el servicio está eliminado o no.
Campo Tipo PK Descripción
acceptedAt string Fecha y hora en la que fue aceptada la oferta (En caso de haber sido aceptada)
addressee int ID de quien recibió la oferta. eg: ID de un profesional
addresseeId int ID del tipo de entidad de quien recibió la oferta
addresseeType string Nombre del tipo de entidad de quien recibió la oferta. eg: Profesional
createdAt string Fecha y hora en la que la oferta fue generada
updatedAt string Fecha y hora de su actualización.
entityId int ID de la entidad sobre la cual se generó una oferta
warehouseEntityType string Nombre del tipo de entidad sobre la cual se generó una oferta. eg: "Booking"
motorUUID UUID Identificador del motor al que pertenece la oferta
offerUUID UUID Identificador de la oferta
rejectedAt string Fecha y hora en la que fue rechazada la oferta
state string Estado en el que se encuentra la oferta
tenant UUID Tenant de la oferta
validUntil string Fecha hasta la que es válida la oferta antes de que expire

Changed

Campo Tipo PK Descripción
email string Correo electrónico del contacto de administración
Campo Tipo PK Descripción
activePaymentGateway boolean Valor lógico sobre el indicador si el servicio posee pasarela de pago.

Add

Campo Tipo PK Descripción
id UUID Identificador del formulario.
businessUnit UUID Identificador de la Unidad de negocio.
description string Nombre del formulario.
category string Nombre de categoria del formulario.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.
Campo Tipo PK Descripción
id UUID Identificador del campo.
businessUnit UUID Identificador de la Unidad de negocio.
description string Nombre del campo.
fieldType string Nombre del tipo de campo.
formId UUID Identificador del formulario.
options json Opciones de los campos de tipo selector simple o selector múltiple.
updatedAt timestamp Fecha de ultima modificación.
createdAt timestamp Fecha de creación.

v22 - Published: 2024-02-08

Changed

Campo Tipo PK Descripción
planExternalId string Identificador externo del plan.
subscriptionExternalId string Identificador externo de la suscripción.

v21 - Published: 2024-01-24

Add

Campo Tipo PK Descripción
id int Identificador del plan suscrito.
businessUnit UUID Identificador de la Unidad de negocio.
planId int Identificador del plan.
subscriptionId int Identificador de la suscripción.
contractorId int Identificador del contratante.
abusiveCoverageStatus string Este campo indica el estado del plan suscrito, el cual se asigna a partir de la mayor jerarquía de los estados de las coberturas de sus planes. El orden de jerarquía es: En evaluación, Posible Abuso, Inactiva y Activa. De esta forma, si existe al menos una cobertura en estado "En evaluación", entonces el plan suscrito tendrá ese estado.
beneficiaryIds string lista de identificadores de los beneficiarios del plan suscrito.
materialIds string lista de identificadores de las materias (inmueble, vehículo o mascota) asociadas al plan suscrito.
startDate date Fecha de inicio del plan suscrito.
endDate date Fecha de fin del plan suscrito.
prime string Prima.
purchaseChannel string Este campo indica el canal por donde se adquirió el plan.
status boolean Activo: true / Inactivo: False.
validity boolean Vigencia del plan suscrito. "true" si la fecha actual está en el rango de fechas de vigencia del plan suscrito.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.

Changed

Campo Tipo PK Descripción
id int Identificador de la suscripción.
businessUnit UUID Identificador de la Unidad de negocio.
subscriptionExternalId string Identificador externo de la suscripción.
titularId int Identificador del titular de la suscripción.
status boolean Activo: true / Inactivo: False.
abusiveCoverageStatus string Este campo indica el estado de la suscripción, el cual se asigna a partir de la mayor jerarquía de los estados de las coberturas de sus planes suscritos. El orden de jerarquía es: En evaluación, Posible Abuso, Inactiva y Activa. De esta forma, si existe al menos una cobertura en estado "En evaluación", entonces la suscripción tendrá ese estado.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.

v20 - Published: 2024-01-10

Add

Campo Tipo PK Descripción
id int Identificador único para cada respuesta del formulario.
question varchar Pregunta asociada al registro en el formulario.
answer varchar Respuesta proporcionada a la pregunta en el formulario.
serviceFormId uuid Identificador de cada formulario de servicio.
formId uuid Identificador único del formulario.
bookingId int Identificador asociado a la reserva relacionada con el formulario de servicios.
versionId int Identificador que indica la versión del formulario.
createdAt timestamptz Fecha y hora de creación del registro en el formulario.
updatedAt timestamptz Fecha y hora de la última actualización del registro en el formulario.
businessUnit uuid Identificador único para la unidad de negocio a la que se relaciona el formulario.
tenant uuid Identificador único que asocia el formulario a un Tenant.

v19 - Published: 2024-01-04

Changed

Campo Tipo PK Descripción
creationChannel string Canal por el cual se creó el cliente.
gender string Género del cliente.
Campo Tipo PK Descripción
id int Identificador único de la respuesta de la pregunta de la encuesta

v18.1 - Published: 2023-12-05

Add

Campo Tipo PK Descripción
id int Número único que identifica cada registro.
serviceId int Número único que identifica a un servicio o producto.
sucursalId int Número único que identifica a la sucursal asociada.
costConceptId int Número único que identifica a un concepto de costo específico.
comuneId int Número único que identifica a una comuna.
baseCost float Representa el costo base para realizar un servicio.
sale float Indica el precio de venta del servicio al cliente.
top float Indica el límite máximo de uso permitido.
excessBaseCost float Describe costos adicionales o excedentes para realizar un servicio.
excessBaseSale float Indica costos adicionales relacionados con el precio de venta del servicio.
businessUnit UUID Define la unidad de negocio a la que pertenece el registro.
updatedAt timestamp Fecha y hora de la última actualización del registro.
createdAt timestamp Fecha y hora de creación del registro.

v18 - Published: 2023-11-29

Changed

Campo Tipo PK Descripción
caseId int ID de caso.
providerId int ID de proveedor.
branchId UUID ID de sucursal.
tax string Monto de impuesto.
retention string Monto de retención.
amountToPay int Monto a pagar.
accountingType string Tipo contable.
preInvoiceId int ID de pre-factura.
Campo Tipo PK Descripción
userId int ID del usuario que realizó la operación.
Campo Tipo PK Descripción
entryChannel string Indica la fuente u origen desde donde se agregó el servicio.

v17 - Published: 2023-11-15

Changed

Campo Tipo PK Descripción
createdAt timestamp Fecha de creación.
Campo Tipo PK Descripción
customerId int Identificador del cliente al cual está asociado el solicitante.
caseId int Identificador único del Caso bajo el que se creó el servicio.
sucursalId int Identificador de la sucursal responsable de proporcionar el servicio solicitado.
details string Atributos distintivos del servicio a realizar.
addressComplement string Datos adicionales que permiten ubicar la dirección del servicio de forma exacta.
executionTime int Tiempo de ejecucion del servicio.
transferStartDate timestamp Fecha de inicio de traslado.
Campo Tipo PK Descripción
payment float Importe que el cliente ha pagado.
subTotal float Suma de los costos individuales antes de aplicar cualquier descuento.
discount float Importe aplicado al monto total, que reduce el costo final del servicio.
magentoId int Identificador relacionado con una transacción realizada desde Magento.
paymentMethodType string Método de pago utilizado para la transacción.
authorizationCode int Código único que valida la transacción de pago.
cardNumber int Últimos 4 números de la tarjeta usados en la transacción.

v16 - Published: 2023-10-25

Add

Campo Tipo PK Descripción
id int Identificador de la observación.
caseNumber string Número del caso asociado
action string Nombre de la acción ejecutada
createdAt string Fecha y hora de su creación.
createdBy string Nombre del usuario que ejecutó la acción.
updatedAt string Fecha y hora de su actualización.
updatedBy string Nombre del usuario que actualizó la accioón.
businessUnit UUID Identificador de la Unidad de negocio.
Campo Tipo PK Descripción
id int Identificador del cambio de estatus.
claimId int Identificador del Reclamo.
businessUnit UUID Identificador de la Unidad de negocio.
previousState string Estatus antiguo.
newState string Estatus nuevo.
createdBy int Identificador del Usuario que creó el cambio de estatus.
createdAt string Fecha de creación.
updatedBy int Identificador del Usuario que actualizó el cambio de estatus.
updatedAt string Fecha de la ultima modificación.
Campo Tipo PK Descripción
id int Identificador del contratante.
businessUnit UUID Identificador de la Unidad de negocio.
contractorExternalId string ID externo del contratante.
tenant UUID Identificador del tenant.
contractorName string Nombre del contratante.
businessName string Nombre legal del contratante.
contractorType string Tipo de contratante.
branch string Negocio del contratante.
identificationType string Tipo de identificación del contratante.
identificationNumber string Número de identificación del contratante.
regionId int ID N2 configuración geográfica (región, estado).
communeId int ID N3 configuración geográfica (comuna, municipio).
contractorAddress string Dirección del contratante.
status boolean Activo: true / Inactivo: False.
createdAt timestamp Fecha de creación del contratante.
updatedAt timestamp Fecha de última actualización del contratante.

v15 - Published: 2023-10-11

Added

Campo Tipo PK Descripción
id int Identificador de la observación.
caseNumber string Número del caso asociado
observation string Descripción de la observación
createdAt string Fecha y hora de su creación.
createdBy int Identificador del usuario que creó la observación.
updatedAt string Fecha y hora de su actualización.
updatedBy int Identificador del usuario que actualizó la observación.
businessUnit UUID Identificador de la Unidad de negocio.
Campo Tipo PK Descripción
caseDescription string Detalle del caso.
informerId int Identificador del Informante.
closedAt timestamp Fecha de cierre del caso.

Changed

Campo Tipo PK Descripción
isBudget boolean Indica si el servicio es tipo presupuesto.

Removed

Campo Tipo PK Descripción
informerIdentificationNumber string Número de identificación del informador del caso.
informerName string Nombre del informador del caso.
informerLastName string Apellido del informador del caso.
informerPhone string Teléfono del informador del caso.

v14.1 - Published: 2023-10-03

Changed

Campo Tipo PK Descripción
isBudget boolean Indica si el servicio tiene presupuesto.

Add

Campo Tipo PK Descripción
id int Identificador del la relación entre la sucursal y los servicios.
serviceId int Identificador de la Definición de servicios.
sucursalId int Identificador de la Sucursal.
businessUnit UUID Identificador de la Unidad de negocio.
updatedAt timestamp Fecha de ultima modificación.
createdAt timestamp Fecha de creación.

v14 - Published: 2023-09-25

Add

Campo Tipo PK Descripción
id int ID de pre-factura.
provider string Nombre del proveedor.
providerRut string RUT del proveedor.
subTotal float Monto total.
accountingAmount float Gasto contable.
amountToPay float Monto a pagar.
accountingType string Tipo contable.
serviceId int ID unico del servicio.
serviceName string Nombre del servicio.
serviceCost float Costo del servicio.
serviceDate timestamp Fecha del servicio.
businessUnit UUID Unidad de negocio.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.
Campo Tipo PK Descripción
id int Identificador del horario de la sucursal.
name string Nombre del dia del horario.
startHour int Hora de inicio de agenda.
closingHour int Hora de cierre de agenda.
sucursalId int Identificador de la Sucursal.
businessUnit UUID Identificador de la Unidad de negocio.
updatedAt timestamp Fecha de ultima modificación.
createdAt timestamp Fecha de creación.
Campo Tipo PK Descripción
id int Identificador del la relación entre la sucursal y la comuna.
comuneId int Identificador de la Comuna.
cityId int Identificador de la Ciudad.
sucursalId int Identificador de la Sucursal.
businessUnit UUID Identificador de la Unidad de negocio.
updatedAt timestamp Fecha de ultima modificación.
createdAt timestamp Fecha de creación.

v13 - Published: 2023-09-06

Changed

Campo Tipo PK Descripción
punished boolean Valor lógico sobre el tipo de evaluación: Castigado
catalogNotUpdated boolean Valor lógico sobre el tipo de evaluación: catalogoNoActualizado
quotation boolean Valor lógico sobre el tipo de evaluación: cotizacion
onTime boolean Valor lógico sobre el tipo de evaluación: enTiempo
doesNotAnswer boolean Valor lógico sobre el tipo de evaluación: noContesta
doesNotGiveResponseTime boolean Valor lógico sobre el tipo de evaluación: noDaTiempoDeRespuesta
noCredit boolean Valor lógico sobre el tipo de evaluación: noTieneCredito
serviceByAppointment boolean Valor lógico sobre el tipo de evaluación: servicioConCita
withoutSpecializedTechnician boolean Valor lógico sobre el tipo de evaluación: sinTecnicoEspecializado
doesNotCoverArea boolean Valor lógico sobre el tipo de evaluación: noCubreZona
onlyUnderAuthorization boolean Valor lógico sobre el tipo de evaluación: soloBajoAutorizacion
Campo Tipo PK Descripción
id int Identificador de la sucursal.
name string Nombre de la sucursal.
providerId int Identificador del Proveedor.
contactEmail string Email del contacto.
contactName string Nombre del contacto.
contactLastName string Apellido del contacto.
contactPhone string Telefono del contacto.
canalPhone string Telefono del canal.
address string Dirección de la sucursal.
businessUnit UUID Identificador de la Unidad de negocio.
updatedAt timestamp Fecha de ultima modificación..
createdAt timestamp Fecha de creación.

v12.1 - Published: 2023-09-06

Add

Campo Tipo PK Descripción
id int Identificador del solicitante.
customerId int Identificador del cliente al cual está asociado el solicitante.
businessUnit UUID Identificador de la Unidad de negocio.
caseId long Identificador del caso al cual está asociado el solicitante.
applicantName string Nombre del solicitante.
applicantLastname string Apellido del solicitante.
identificationTypeApplicant string Tipo de identificación del solicitante.
identificationNumberApplicant string Número identificación del solicitante.
applicantEmail string Correo de contacto adicional.
applicantPhoneNumber string Número telefónico de contacto adicional.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de última modificación.

v12 - Published: 2023-08-23

Changed

Campo Tipo PK Descripción
email string Correo electrónico.
secondLastName string Segundo apellido.
businessUnits array Unidades de negocio a las que pertenece.
identificationNumber string Número de identificación.
identificationTypeId int ID del tipo de identificación.
identificationTypeName string Nombre del tipo de identificación.
address string Dirección del usuario.
active boolean Estatus del usuario.
roleId int ID de su rol.
roleName string Nombre de su rol.
Campo Tipo PK Descripción
copayAmount float Copago del servicio a cobrar al cliente.
excessAmount float Excedente a cobrar al cliente.

v11.10 - Published: 2023-08-17

Removed

Campo Tipo PK Descripción
userName string Nombre del usuario responsable del cambio generando el estado actual.

v11.9 - Published: 2023-07-27

Removed

Campo Tipo PK Descripción
discountAmount float Monto de descuento.
subtotal float Subtotal
paymentAmount float Monto pagado.

Add

Campo Tipo PK Descripción
id int Identificador del servicio.
discountAmount float Monto de descuento.
subtotal float Subtotal
paymentAmount float Monto pagado.
businessUnit string Identificador único de la Unidad de negocio.
createdAt timestamp Fecha de creación del servicio.
updatedAt timestamp Fecha de ultima modificación.

v11.8 - Published: 2023-06-18

Changed

Campo Tipo PK Descripción
typeMaterialId int Este campo indica el ID del material asociado a la cobertura.
Campo Tipo PK Descripción
contractorId string Id externo de contratante asociado a la suscripción
Campo Tipo PK Descripción
contractorIds string Id externo de contratantes asociados al plan
contractors string nombres de contratantes asociados al plan

v11.7 - Published: 2023-06-27

Campo Tipo PK Descripción
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.

v11.6 - Published: 2023-06-19

Changed

Campo Tipo PK Descripción
serviceCategoryId int Este campo incida el ID de la categoria de servicio asociado a la cobertura.
materialTypeId int Este campo incida el ID del material asociado a la cobertura.

Removed

Campo Tipo PK Descripción
serviceAggregatorId int Este campo incida el ID del agrupador de servicio asociado a la cobertura.

v11.5 - Published: 2023-06-13

Changed

Campo Tipo PK Descripción
options json Opciones de las variables de tipo opciones multiple.

Removed

Campo Tipo PK Descripción
unitCost string Costo asociado a opción míltiple del wizard.
data json Data de la variable.

v11.4 - Published: 2023-06-08

Removed

Campo Tipo PK Descripción
state string Estado del servicio.

Changed

Campo Tipo PK Descripción
previousState string Estado anterior del servicio.
newState string Estado nuevo del servicio.

Changed

Campo Tipo PK Descripción
planExternalVersionId string Indica el ID externo de la versión del plan.

Removed

Campo Tipo PK Descripción
planVersionId string Este campo indica el ID de la versión que está asociado este plan.

Changed

Campo Tipo PK Descripción
contractorIds string Este campo indica los IDs externos de los contratantes asociados al plan.
contractors string Este campo indica los nombres de los contratantes externos asociados al plan.

v11.3 - Published: 2023-06-01

Changed

Campo Tipo PK Descripción
contractorId int ID del contratante asociado a la suscripción.
Campo Tipo PK Descripción
id int Identificador del plan suscrito.

v11.2 - Published: 2023-05-11

Changed

Campo Antes Ahora
typeQuestionId int string
optional boolean string
checked boolean string
haveOption boolean string

Changed

Campo Tipo PK Descripción
createdAt timestamp Fecha de creación.

Changed

Campo Antes Ahora
paymentAmount string float
discountAmount string float
desiredDate string timestamp
acceptedDate string timestamp
cancellationDate string timestamp
realStartDate string timestamp
realFinishDate string timestamp
rejectedDate string timestamp
rescheduleDate string timestamp
transferDate string timestamp
bookingDate string timestamp
manualAssignmentDate string timestamp
assignmentDate string timestamp
conclusionDate string timestamp
creationDate string timestamp
professionalOnTheWayDate string timestamp
scheduleDate string timestamp
plannedStartDateTime string timestamp
plannedFinishDateTime string timestamp

v11.1 - Published: 2023-05-09

Changed

Campo Tipo PK Descripción
lack float Cantidad de días del periodo de carencia de los servicios de la cobertura.
deductible float Monto del copago.
currency string Moneda en la que se define el copago de los servicios de la cobertura.

v11 - Published: 2023-05-08

Changed

Campo Tipo PK Descripción
createdAt timestamp Fecha de asociación del servicio al reclamo.

v10.1 - Published: 2023-05-02

Changed

Campo Tipo PK Descripción
id int Identificador del cliente.
address string Dirección del cliente.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.
Campo Antes Ahora
acceptedAt string timestamp
rejectedAt string timestamp
validUntil string timestamp
updatedAt string timestamp
createdAt string timestamp
Campo Tipo PK Descripción
updatedAt timestamp Fecha de última modificación.
Campo Tipo PK Descripción
updatedAt timestamp Fecha de última modificación.
Campo Tipo PK Descripción
createdAt timestamp Fecha de creación.
Campo Tipo PK Descripción
createdAt timestamp Fecha de creación.
Campo Tipo PK Descripción
createdAt timestamp Fecha de creación.

v10 - Published: 2023-04-19

Changed

Campo Tipo PK Descripción
createdAt timestamp Fecha de creación.
Campo Tipo PK Descripción
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de última modificación.
Campo Tipo PK Descripción
createdAt timestamp Fecha de creación.
Campo Antes Ahora
checkDate string timestamp
updatedAt string timestamp
createdAt string timestamp
Campo Antes Ahora
hourFrom string int
hourTo string int
Campo Tipo PK Descripción
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.
Campo Antes Ahora
surgeAmount string float
surgePercent string float
surgeDayOfWeek string int
surgeDate string timestamp
updatedAt string timestamp
createdAt string timestamp
Campo Tipo PK Descripción
updatedAt timestamp Fecha de ultima modificación.
Campo Antes Ahora
createdAt string timestamp
Campo Antes Ahora
surcharge number float
systemSurcharge number float
updatedAt string timestamp
createdAt string timestamp
Campo Tipo PK Descripción
planStartDate date Este campo indica la fecha inicio de disponibilidad del plan como producto. Es decir, desde esta fecha se puede asociar este plan a una suscripción.
planEndDate date Este campo indica la fecha fin de disponibilidad del plan como producto. Es decir, hasta esta fecha se puede asociar este plan a una suscripción. Si este campo está vacío, quiere decir que la fecha fin es indefinida.
Campo Tipo PK Descripción
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.

v9.1 - Published: 2023-04-12

Added

Campo Tipo PK Descripción
id int Identificador del agrupador de servicios.
serviceAggregatorName string Nombre del agrupador de servicios.
businessUnit UUID Identificador de la Unidad de negocio.
serviceCategoryId int Identificador de la categoría de servicios del agrupador.
materialType string Tipo de materia definida para el agrupador.
serviceId int Identificador de los servicios asociados al agrupador.
createdAt timestamp Fecha de creación del agrupador de servicios.
updatedAt timestamp Fecha de última modificación del agrupador de servicios.
Campo Tipo PK Descripción
id int Identificador del tope.
businessUnit UUID Identificador de la Unidad de negocio.
planId int Identificador del plan.
coverageName string Este campo indica el nombre de la cobertura asociado al plan.
serviceAggregatorId int Este campo incida el ID del agrupador de servicio asociado a la cobertura.
serviceIds string Este campo indica los ID de los servicios asociado a la cobertura.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.

Removed

Campo Tipo PK Descripción
planId int Identificador del plan.
coverageName string Este campo indica el nombre de la cobertura asociado al plan.
serviceAggregatorId int Este campo incida el ID del agrupador de servicio asociado a la cobertura.
serviceIds string Este campo indica los ID de los servicios asociado a la cobertura.

v9 - Published: 2023-04-12

Changed

Campo Tipo PK Descripción
isAutomatic boolean Este campo indica si el servicio tiene pago automatizado a proveedor.
automaticConceptCost boolean Este campo indica si el modo del pago automatizado a proveedor es por concepto de costo (TRUE) o manual (FALSE).
topeMinSatisfactory int Este campo indica el valor mínimo del costo concluido satisfactoriamente.
topeMaxSatisfactory int Este campo indica el valor maximo del costo concluido satisfactoriamente.
topeMinUnsatisfactory int Este campo indica el valor mínimo del costo concluido insatisfactoriamente.
topeMaxUnsatisfactory int Este campo indica el valor maximo del costo concluido insatisfactoriamente.
Campo Tipo Pk Descripción
contractorId int Este campo indica el ID externo del contratante asociado al plan.
contractor string Este campo indica el contratante externo asociado al plan.
Campo Tipo PK Descripción
createdAt timestamp ID de pago del proveedor.
Campo antes ahora
baseServiceCost string float
baseProCost string float
expressProCost string float
wizardPercentage string float
updatedAt string timestamp
createdAt string timestamp
Campo antes ahora
updatedAt string timestamp
createdAt string timestamp
Campo antes ahora
serviceId int8 int
updatedAt string timestamp
createdAt string timestamp

Added

Campo Tipo PK Descripción
id int Identificar del registro
paymentId int ID de pago del proveedor.
businessUnit UUID Código unico de la unidad de negocio.
paymentStatus string Estado en el que se encuentra el pago.
serviceId int ID unico del servicio.
servicePrice float Precio del servicio.
serviceCost float Costo del servicio.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.
user string Usuario que realizó la operacioón

v8.2 - Published: 2023-04-04

Changed

Campo antes ahora
paidBy int string

Nota: la descripcion de paidBy se cambio a "Rol del usuario que asume el pago."

v8.1 - Published: 2023-03-27

Changed

Campo antes ahora
businessUnit Código de unidad de negocio Código unico de la unidad de negocio.
paymentStatus Título del estado de pago. Estado en el que se encuentra el pago.
serviceId ID del servicio ID unico del servicio.

v8 - Published: 2023-03-01

Removed

Campo Tipo PK Descripción
planName string Este campo indica el nombre del plan.
planExternalId string Este campo indica el ID externo digitado al momento de parametrizar el plan.
planActivate boolean Este campo refleja si el plan está activo o inactivo.Un plan inactivo no estará disponible al momento de asociar un plan a una suscripción. En este campo True significa Activo y False significa Inactivo.
validity boolean Este campo refleja si el plan está vigente o no vigente. Un plan está vigente si está en el rango de fecha inicio y fecha fin. Un plan No Vigente no estará disponible al momento de asociar un plan a una suscripción.En este campo True significa Vigente y False significa No Vigente.
definiteMatter boolean Este campo indica si este plan requiere materias específicas para poder pedir un servicio o el servicio puede ser realizado en cualquier materia. De esta forma, si la materia es definida solamente un cliente solo va a poder servicios asociados a este plan para las materias que tenga asociado a su suscripción. Por ejemplo, si un cliente tiene un plan con materia definida y tiene asociado en su suscripción los autos de patente GOFD34 y FA49QF, solamente va a poder pedir servicios para esos dos autos.
genericPlan boolean Este campo indica si esta plan es el plan genérico de la unidad de negocios o no. Solamente puede haber un plan genérico por unidad de negocio y éste es el plan que se asocia automáticamente a los clientes fuera base.
contract string Este campo indica el ID externo del contrato asociado al plan.
planStartDate string Este campo indica la fecha inicio de disponibilidad del plan como producto. Es decir, desde esta fecha se puede asociar este plan a una suscripción
planEndDate string Este campo indica la fecha fin de disponibilidad del plan como producto. Es decir, hasta esta fecha se puede asociar este plan a una suscripción. Si este campo está vacío, quiere decir que la fecha fin es indefinida.
planVersionId string Este campo indica el ID de la versión que está asociado este plan.
lastVersionPlan boolean Este campo binario es True si este plan es la última versión y false en caso contrario.

Added

Campo Tipo PK Descripción
id int Identificador del plan.
businessUnit UUID Identificador de la Unidad de negocio.
planName string Este campo indica el nombre del plan.
planExternalId string Este campo indica el ID externo digitado al momento de parametrizar el plan.
planActivate boolean Este campo refleja si el plan está activo o inactivo.Un plan inactivo no estará disponible al momento de asociar un plan a una suscripción. En este campo True significa Activo y False significa Inactivo.
validity boolean Este campo refleja si el plan está vigente o no vigente. Un plan está vigente si está en el rango de fecha inicio y fecha fin. Un plan No Vigente no estará disponible al momento de asociar un plan a una suscripción.En este campo True significa Vigente y False significa No Vigente.
definiteMatter boolean Este campo indica si este plan requiere materias específicas para poder pedir un servicio o el servicio puede ser realizado en cualquier materia. De esta forma, si la materia es definida solamente un cliente solo va a poder servicios asociados a este plan para las materias que tenga asociado a su suscripción. Por ejemplo, si un cliente tiene un plan con materia definida y tiene asociado en su suscripción los autos de patente GOFD34 y FA49QF, solamente va a poder pedir servicios para esos dos autos.
genericPlan boolean Este campo indica si esta plan es el plan genérico de la unidad de negocios o no. Solamente puede haber un plan genérico por unidad de negocio y éste es el plan que se asocia automáticamente a los clientes fuera base.
contract string Este campo indica el ID externo del contrato asociado al plan.
planStartDate string Este campo indica la fecha inicio de disponibilidad del plan como producto. Es decir, desde esta fecha se puede asociar este plan a una suscripción.
planEndDate string Este campo indica la fecha fin de disponibilidad del plan como producto. Es decir, hasta esta fecha se puede asociar este plan a una suscripción. Si este campo está vacío, quiere decir que la fecha fin es indefinida.
planVersionId string Este campo indica el ID de la versión que está asociado este plan.
lastVersionPlan boolean Este campo binario es True si este plan es la última versión y false en caso contrario.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.

Changed

Campo Tipo Pk Descripción
typeQuestionId int Identificador de la de pregunta.
typeQuestionName string Nombre del tipo de pregunta.

Nota: Se renombra el campo "typeQuestion" por "typeQuestionId"

v7 - Published: 2023-02-15

Added

Campo Tipo Pk Descripción
serviceId int Identificador del servicio.
serial int Serial del checklist
typeQuestion string Nombre del tipo de pregunta.
question string Pregunta realizada.
optional boolean Si es opcional o no su respuesta.
checked boolean Sí fue respondida.
dateResponse string Fecha en la cual se respondió la pregunta.
haveOption boolean Si tiene opciones.
option string las opciones de la respuesta.
fileName string Nombre del archivo.
fileNameAux string Nombre auxiliar del archivo.
fileUrl string URL del la respuesta.
fileCreationTime string Fecha de creación archivo.
placeholder string Descripción de la respuesta.
value string Valor de la respuesta.
businessUnit UUID Identificador de la Unidad de negocio.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de actualización.
Campo Tipo PK Descripción
id int Identificador del pago.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.
businessUnit UUID Identificador único de la Unidad de negocio.
paidBy int Id del usuario que realizo el pago.
budgetId int Id del presupuesto asociado.
amount float Monto a pagar
Campo Tipo PK Descripción
id int Identificador del historial.
serviceId int Identificador del ID del servicio.
initialDateAndTime timestamp Fecha y hora de inicio del estado.
state string Estado del servicio.
type string Clasificación del tipo del registro del historial del servicio.
userName string Nombre del usuario responsable del cambio generando el estado actual.
userId int ID del usuario responsable del cambio generando el estado actual.
businessUnit UUID Identificador de la Unidad de negocio.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.
Campo Tipo PK Descripción
id int Identificador de la siniestralidad.
businessUnit UUID Identificador de la Unidad de negocio.
subscriptionId int Este campo indica el ID de la suscripción.
planId int Este campo indica el ID del plan.
planSubscriptionId int Este campo indica el ID del plan suscrito.
maximumCoverageId int Este campo indica el ID del tope.
coverageId int Este campo indica el ID de la cobertura.
coverageName string Este campo indica el nombre de la cobertura.
coverageStatus string Este campo indica el estado del tope: En evaluación, Posible Abuso, Inactiva y Activa.
unitCode string Este campo indica el código de la unidad del tope.
consumed int Este campo indica la cantidad consumida del tope de todos los servicios que viven en ésta cobertura.
available int Este campo indica la cantidad disponible del tope de todos los servicios que viven en ésta cobertura.
limitAmount int Este campo indica la cantidad limite del tope.
restrictive boolean Este campo es True si el tope es restrictivo y False en caso de que no lo sea. Un tope restrictivo implica que cobrará excedente si se sobrepasa de dicho límite. Por el otro lado un tope no restrictivo, será solamente informativo para poder identificar suscripciones abusivas.
behavior string Este campo indica el comportamiento del tope si es que aplica. Sirve por ejemplo para saber si el monto se va a comportar como monto máximo o como monto diario. El primero compara el costo total del servicio mientras que el segundo divide el costo total del servicio por la cantidad de días que se está pidiendo.
periodicity string Este campo detalla la periodicidad de renovación del tope. Las opciones son: Por suscripción, Evento, Diario, Semanal, Mensual o Anual.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.
Campo Tipo PK Descripción
id int Identificador del tope.
planId int Identificador del plan.
businessUnit UUID Identificador de la Unidad de negocio.
planName string Este campo indica el nombre del plan.
planExternalId string Este campo indica el ID externo digitado al momento de parametrizar el plan.
planActivate boolean Este campo refleja si el plan está activo o inactivo.Un plan inactivo no estará disponible al momento de asociar un plan a una suscripción. En este campo True significa Activo y False significa Inactivo.
restrictive boolean Este campo es True si el tope es restrictivo y False en caso de que no lo sea. Un tope restrictivo implica que cobrará excedente si se sobrepasa de dicho límite. Por el otro lado un tope no restrictivo, será solamente informativo para poder identificar suscripciones abusivas.
validity boolean Este campo refleja si el plan está vigente o no vigente. Un plan está vigente si está en el rango de fecha inicio y fecha fin. Un plan No Vigente no estará disponible al momento de asociar un plan a una suscripción.En este campo True significa Vigente y False significa No Vigente.
definiteMatter boolean Este campo indica si este plan requiere materias específicas para poder pedir un servicio o el servicio puede ser realizado en cualquier materia. De esta forma, si la materia es definida solamente un cliente solo va a poder servicios asociados a este plan para las materias que tenga asociado a su suscripción. Por ejemplo, si un cliente tiene un plan con materia definida y tiene asociado en su suscripción los autos de patente GOFD34 y FA49QF, solamente va a poder pedir servicios para esos dos autos.
genericPlan boolean Este campo indica si esta plan es el plan genérico de la unidad de negocios o no. Solamente puede haber un plan genérico por unidad de negocio y éste es el plan que se asocia automáticamente a los clientes fuera base.
contract string Este campo indica el ID externo del contrato asociado al plan.
coverageId int Este campo indica el ID de la cobertura asociado al plan.
coverageName string Este campo indica el nombre de la cobertura asociado al plan.
serviceAggregatorId int Este campo incida el ID del agrupador de servicio asociado a la cobertura.
serviceIds string Este campo indica los ID de los servicios asociado a la cobertura.
unitCode string Este campo indica el código de la unidad del tope asociado a la cobertura.
behavior string Este campo indica el comportamiento del tope si es que aplica. Sirve por ejemplo para saber si el monto se va a comportar como monto máximo o como monto diario. El primero compara el costo total del servicio mientras que el segundo divide el costo total del servicio por la cantidad de días que se está pidiendo.
scope double Este campo indica el valor valor número del tope.
currency string Este campo indica el ID de la moneda del tope. Aplica solamente para los topes de unidad Monto.
periodicity string Este campo detalla la periodicidad de renovación del tope. Las opciones son: Por suscripción, Evento, Diario, Semanal, Mensual o Anual.
renovation string Este campo indica si la periodicidad mensual o anual es a calendario o a fecha suscripción. Por ejemplo, una periodicidad anual de calendario, sería que el tope se renueva el 1 de enero del siguiente año. Por el otro lado, una periodicidad anual de vigencia sería el tope se renueva un año después de la fecha inicio de vigencia.
planStartDate string Este campo indica la fecha inicio de disponibilidad del plan como producto. Es decir, desde esta fecha se puede asociar este plan a una suscripción
planEndDate string Este campo indica la fecha fin de disponibilidad del plan como producto. Es decir, hasta esta fecha se puede asociar este plan a una suscripción. Si este campo está vacío, quiere decir que la fecha fin es indefinida.
planVersionId string Este campo indica el ID de la versión que está asociado este plan.
lastVersionPlan boolean Este campo binario es True si este plan es la última versión y false en caso contrario.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.

Changed

Campo Tipo PK Descripción
start date Fecha de inicio del plan suscrito
end date Fecha de fin del plan suscrito
planSubscriptionCoverageStatus string Este campo indica el estado de la suscripción, el cual se asigna a partir de la mayor jerarquía de los estados de las coberturas de sus planes. El orden de jerarquía es: En evaluación, Posible Abuso, Inactiva y Activa. De esta forma, si existe al menos una cobertura en estado "En evaluación", entonces la suscripción tendrá ese estado.
Campo Tipo PK Descripción
serviceOrigin string Dirección de origen del servicio,
serviceOriginLatitude double Latitud del origen del servicio.
serviceOriginLongitude double Longitud del origen del servicio.
serviceDestination string Dirección de destino del servicio.
serviceDestinationLatitude double Latitud del destino del servicio.
serviceDestinationLongitude double Longitud del destino del servicio.
subscriptionPlanId int Identificador de la suscripción asociada al plan.
servicePurchased boolean Si se compro un plan o no.

Nota: Se renombran los campos purchasedService a servicePurchased, address a serviceOrigin, latitude a serviceOriginLatitude, longitude a serviceOriginLongitude y destinationAddress a serviceDestination.

Campo Tipo PK Descripción
sendsPublicLink boolean Valor lógico sobre el indicador de envío de enlace publico para visualizar información del servicio.

v6 - Published: 2023-01-31

Added

Campo Tipo PK Descripción
budgetId int Identificador
businessUnit UUID Identificador del Unidad de negocio
serviceId int Identificador del Servicio
totalAmount float Monto total
totalCost float Costo total
iva float Iva
totalAmountWithIva float Monto total con IVA
serviceDuration float Duracion del servicio
budgetMargin float Margen del budget
comments string Comentarios sobre el budget
createdAt timestamp Fecha de creacion
updatedAt timestamp Fecha de actualizacion
Campo Tipo Descripción
skuComuneId int Identificador de comuna del sku.
skuId int Identificador del sku.
skuName string Nombre del sku.
measureUnit string Unidad de medida del sku.
businessUnit UUID Identificador de la Unidad de negocio.
createdAt string Fecha de creación.
updatedAt string Fecha de actualización.
Campo Tipo PK Descripción
claimId int Identificador del Reclamo.
serviceId int Identificador del Servicio.
businessUnit UUID Unidad de negocio.
updatedAt timestamp Fecha de asociación del servicio al reclamo.

Changed

Campo Tipo PK Descripción
wizardId string ID de wizard.
Campo Tipo PK Descripción
subscriptionPlanId int Identificador de la suscripción asociada al plan.
purchasedService bool Si se compro un plan o no.
Campo Tipo PK Descripción
externalCode string Codigo externo asociado al caso

v5 - Published: 2023-01-17

Changed

Campo Tipo PK Descripción
email string Email del postulante.
phone string Telefono del postulante.
identificationNumber string Número de documento del postulante.
updatedAt timestamp Fecha de última modificación.
identificationType string Tipo de documento del postulante.(cambio de nombre)
Campo Tipo PK Descripción
materialType string Este campo indica el tipo de materia.
brand string Este campo indica la marca del vehículo.
kindOfPet string Este campo indica el tipo de mascota. Por ejemplo, perro o gato.
petBreed string Este campo indica la raza de la mascota.
petName string Este campo indica el nombre de la mascota.

Nota: El campo type fue renombrado a materialType

Campo Tipo PK Descripción
planSubscriptionStatus boolean Estatus del plan suscrito. "true" si el estatus del plan es "true".
purchaseChannel string Este campo indica el canal por donde se adquirió el plan.

v4 - Published: 2023-01-03

Changed

Campo Tipo PK Descripción
emergencyService boolean Si un servicio es de emergencia.
planId int Identificador del Plan asociados al servicio.
Campo Tipo PK Descripción
motorId string Identificador del motor de asignaciones.
Campo Tipo PK Descripción
unitCost string Costo asociado a opción míltiple del wizard.
intervals string Intervalo en el cual se aplica el wizard cuando son opciones múltiples.
optionName string Nombre asociado a opción del wizard.
optionTime string Tiempo en el que se aplica el wizard (Expresado en minutos).
optionPrice string Precio de opción del wizard cuando es campo sencillo.
Campo Tipo PK Descripción
wizardQuestion string Pregunta del Wizard.
wizardAnswer string Respuesta del Wizard.

El campo "answer" fue reemplazado por "wizardAnswer"

Campo Tipo PK Descripción
timezoneIdName string Identificador de Timezone (IANA Time Zone Database).
offset string Desviación positiva o negativa con respecto a la hora UTC.
active boolean Indica el estatus de la Unidad de Negocio (booleano).
code string Código de la unidad de negocio
hasCustomerPortal boolean Indica si la unidad de negocio tiene Portal de clientes.

Added

Campo Tipo PK Descripción
id int Identificador de la orden.
skuComuneId int Identificador de comuna del sku.
budgetId int Identificador presupuesto.
serviceId int Identificador del Servicio.
quantity int Cantidad.
cost float Costo.
subtotalCost float Costo subtotal.
sale float Venta.
subtotal float Subtotal.
discount float Descuento.
businessUnit UUID Identificador de la Unidad de negocio.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de actualización.
Campo Tipo PK Descripción
id int ID del motor match.
businessUnit UUID Identificador de la Unidad de negocio.
name string Nombre del Motor Match.
operationalDays string Días de funcionamiento del Motor Match.
operatingStartTime int Horario de inicio de funcionamiento.
operatingEndTime int Horario de fin de funcionamiento.
maxSearchTime int Tiempo máximo de búsqueda del Motor Match.
maxNumberOfTries int Cantidad máxima de tiempo entre intentos del Motor Match.
maxTimeOfferAcceptance int Tiempo máximo para que acepten la oferta.
timeBetweenOffers int Tiempo entre ofertas realizadas.
maxNumberOfOffers int Cantidad máxima de intentos de las ofertas por profesional / sucursal.
type string Cantidad de ofertas enviadas simultáneas.
updatedAt timestamp Fecha de ultima modificación.

v3.1 - Published: 2022-12-13

Changed

Campo Tipo Descripción
caseId int Identificador del caso.

v3 - Published: 2022-11-15

Changed

Campo Tipo Descripción
correlativeNumber string Número de correlativo del caso.
Campo Tipo Descripción
status string Estatus del profesional valores posibles ACTIVO/INACTIVO.
branchId int Id de la sucursal a la cual pertence el profesional.
providerId int Id del proveedor a la cual pertence la sucusal del profesional.
Campo Tipo Descripción
createdAt string Fecha de creación.
updatedAt string Fecha de actualización.
Campo Tipo Descripción
serviceId int serviceId del presupuesto.

Removed

Campo Tipo Descripción
caseId int Identificador del caso.
correlativeNumber string Correlativo del caso.

v2 - Published: 2022-11-08

Changed

Campo Tipo Descripción
bank string Nombre del banco usado por el profesional.
typeAccount string Tipo de cuenta.
numberAccount string Número de cuenta.
identificationTypeId string Tipo de identificación.
identificationTypeNumber string Número de identificación.
address string Dirección
approved string Valor lógico sobre aprobación del profesional.
approvalAt string Fecha de aprobación.
hourApproved string Hora de aprobación. Formato HH:MM:SS AM.
Campo Tipo Descripción
bookingDate string Fecha del servicio.
isAccepted string Valor lógico sobre aceptación del servicio.
isRejected string Valor lógico sobre el rechazo del servicio.
usernameManualAssignment string Nombre de usuario que hizo la asignación manual.
detailsIncidence string Detalles de la incidencia.
manualAssignmentDate string Fecha de asignación manual.
detailsCancellation string Otros detalles de la cancelación.
Campo Tipo Descripción
description string Descripción.
wizardId string Identificador del Wizard.
checklistId string Identificador de un checkList.
isExpress string Valor lógico sobre la condición de express.
active string Valor lógico sobre el estado de la definición.
minExpressBookingTime string Tiempo minimo para el servicio express.
maxExpressStartTime string Tiempo maximo para el inicio de servicio express.
avgExpressArrivalTime string Tiempo promedio de llegada para el servicio express.
Campo Tipo Descripción
identificationTypeId string Tipo de identificación.
identificationNumber string Número de identificación.
Campo Tipo Descripción
serviceDuration int Duración del servicio.

API Report - Limitaciones

Se debe tener en consideración los límites que ofrece la API para su implementación, actualmente se tiene un límite de peticiones por segundos y minutos que se pueden realizar:

Cuando se alcance alguno de estos límites el sistema responderá con un código HTTP de error 429.

Nota: Estos limites pueden variar segun la implementación y licenciamiento.

Ambientes

Existen 3 ambientes para las integraciones:

URL del API por ambientes.

Estas URL las necesitará cuando quiera probar la API. Puede utilizar este Cliente Graphql para consultar la información de los objetos asi como la estructura/campos disponibles.

Header Params

Nombre Requerido Tipo Descripción
token string Credencial de Autorización y Autenticación.

Body Params

Nombre Requerido Tipo Descripcion
query string GraphQL Query

Entidades

- Unidades de negocio

Request:

{
  "query": "{  
    business_units {
      name
      shortName
      category
      currency
      tenant
      businessUnit
      createdAt
      updatedAt
      timezoneIdName
      offset
      active
      code
      hasCustomerPortal
      }
  }"
}

Response:

{
  "data": {
    "business_units": [
      {
          "name": "NOMBRE PRUEBA",
          "shortName": "PRUEBA 00",
          "category": "Aseguradora",
          "currency": "Peso argentino",
          "tenant": "Prueba",
          "businessUnit": "84572164-bd92-4116-a965-abe845721643",
          "createdAt": "2021-09-24T15:23:09.200836+00:00",
          "updatedAt": "2022-11-30T02:07:29.775986+00:00",
          "timezoneIdName": "America/Argentina/Buenos_Aires",
          "offset": "-3:00",
          "active": true,
          "code": "CODIG",
          "hasCustomerPortal": false
      },
      {
          "name": "PRUEBA 01",
          "shortName": "PRUEBA 01",
          "category": "Club",
          "currency": "Peso chileno",
          "tenant": "Prueba",
          "businessUnit": "84572164-251c-11ef-9621-02845721643",
          "createdAt": "2021-10-14T12:22:52.963368+00:00",
          "updatedAt": "2022-11-30T02:07:29.775986+00:00",
          "timezoneIdName": "America/Mexico_City",
          "offset": "-6:00",
          "active": true,
          "code": "CODIGDOS",
          "hasCustomerPortal": false
      },
      {
          "name": "Prueba 02",
          "shortName": "PRUEBA 02",
          "category": "Club",
          "currency": "Peso chileno",
          "tenant": "Prueba",
          "businessUnit": "84572164-d2e9-4d91-898f-992845721643",
          "createdAt": "2021-11-30T17:33:41.500695+00:00",
          "updatedAt": "2022-11-30T02:07:29.775986+00:00",
          "timezoneIdName": "America/Mexico_City",
          "offset": "-6:00",
          "active": true,
          "code": "CODIGTRES",
          "hasCustomerPortal": false
      }]
}

Puede consultar las unidades de negocio en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
businessUnit UUID Indigo de unidad de negocio.
name string Nombre de la unidad de negocio.
shortName string Nombre corto de la unidad de negocio.
category string categoria de la unidad de negocio.
currency string Moneda utilizada en la unidad de negocio.
tenant string Nombre del tenant.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de última modificación.
timezoneIdName string Identificador de Timezone (IANA Time Zone Database).
offset string Desviación positiva o negativa con respecto a la hora UTC.
active boolean Indica el estatus de la Unidad de Negocio (booleano).
code string Código de la unidad de negocio
hasCustomerPortal boolean Indica si la unidad de negocio tiene Portal de clientes.

- Usuarios

Request:

{
  "query": "{  
    users {
      id
      username
      email
      firstName
      lastName
      secondLastName
      businessUnits
      businessUnit
      identificationNumber
      identificationTypeId
      identificationTypeName
      address
      phone
      active
      roleId
      roleName
      createdAt
      updatedAt
      }
    }"
}

Response:

{
  "data": {
    "users": [
      {
        "id": 101,
        "username": "username1",
        "email": "[email protected]",
        "firstName": "Pedro",
        "lastName": "Perez",
        "secondLastName": "Baez",
        "businessUnits": ["5a075f5a-ec09-4a79-a2a4-56703e150279", "16fc8411-cd34-4111-a965-fce38a2f7c15"],
        "businessUnit": "5a075f5a-ec09-4a79-a2a4-56703e150279",
        "identificationNumber": "234567890",
        "identificationTypeId": 6,
        "identificationTypeName": "RUT",
        "address": "Aguas Calientes, Gro., México",
        "phone": "+236456089045",
        "active": true,
        "roleId": 10103,
        "roleName": "Proveedor",
        "createdAt": "2021-11-25T18:22:36.93583+00:00",
        "updatedAt": "2021-11-29T19:57:11.79+00:00"
      },
      {
        "id": 102,
        "username": "jgomez",
        "email": "[email protected]",
        "firstName": "Juan",
        "lastName": "Gomez",
        "secondLastName": "Baez",
        "businessUnits": ["5a075f5a-ec09-4a79-a2a4-3f70c3150445", "86cc8411-cd92-4116-a965-cbe38a2f7f30"],
        "businessUnit": "5a075f5a-ec09-4a79-a2a4-3f70c3150445",
        "identificationNumber": "372567890",
        "identificationTypeId": 6,
        "identificationTypeName": "RUT",
        "address": "Av Corrientes 2974 P3",
        "phone": "+616499089406",
        "active": true,
        "roleId": 10103,
        "roleName": "Profesional",
        "createdAt": "2021-11-25T18:22:36.93583+00:00",
        "updatedAt": "2021-11-29T19:57:11.79+00:00"
      },
      {
        "id": 103,
        "username": "jvaldez",
        "email": "[email protected]",
        "firstName": "Juan",
        "lastName": "Valdez",
        "secondLastName": "Chavez",
        "businessUnits": ["60c075f5a-ec09-4a79-a2a4-41703e150222", "44cc8411-cd92-4116-a910-fce38a2f7f21"],
        "businessUnit": "60c075f5a-ec09-4a79-a2a4-41703e150222",
        "identificationNumber": "235069892",
        "identificationTypeId": 6,
        "identificationTypeName": "RUT",
        "address": "334 Northwest 24th Avenue",
        "phone": "+13645625497",
        "active": true,
        "roleId": 10103,
        "roleName": "Postulante",        
        "createdAt": "2021-11-25T18:22:36.93583+00:00",
        "updatedAt": "2021-11-29T19:57:11.79+00:00"
      }]
}

Puede consultar los usuarios en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador del usuario.
username string Usuario.
email string Correo electrónico.
firstName string Primer nombre.
lastName string Primer apellido.
secondLastName string Segundo apellido.
businessUnits array Unidades de negocio a las que pertenece.
businessUnit UUID Unidad de negocio principal.
identificationNumber string Número de identificación.
identificationTypeId int ID del tipo de identificación.
identificationTypeName string Nombre del tipo de identificación.
address string Dirección del usuario.
phone string Número de teléfono.
active boolean Estatus del usuario.
roleId int ID de su rol.
roleName string Nombre de su rol.
createdAt string Fecha de creación.
updatedAt string Fecha de ultima modificación.

- Clientes

Request:

{
  "query": "{
    customers {
      id
      name
      lastName
      businessUnit
      identificationNumber
      identificationType
      mobilePhone
      email
      address
      createdAt
      updatedAt
      creationChannel
      gender
      customerCondition
      nationality
      dateOfBirth
      landlinePhone
      commercialPhone
      clientType
    }
  }"
}

Response:

{
  "data": {
    "customers": [
      {
        "id": 1,
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "name": "Pablo",
        "lastName": "Perez",
        "identificationNumber": "1234567",
        "identificationType": "RUT",
        "email": "[email protected]",
        "mobilePhone": "+56340450046",
        "address": "3111 Menahan Street, Dyckesville, Pennsylvania, 3994",
        "createdAt": "2021-11-25T18:22:36.93583+00:00",
        "updatedAt": "2021-11-29T19:57:11.79+00:00",
        "creationChannel": "API precliente",
        "gender": "Hombre",
        "customerCondition": "Comercial",
        "nationality": 2,
        "dateOfBirth": "15/06/1985",
        "landlinePhone": "+5655746382",
        "commercialPhone": "+5693746382",
        "clientType": "Estándar"
      },
      {
        "id": 2,
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "name": "Maria",
        "lastName": "Perez",
        "identificationNumber": "1234567",
        "identificationType": "RUT",
        "email": "[email protected]",
        "mobilePhone": "+58340045323",
        "address": "3111 Menahan Street, Dyckesville, Pennsylvania, 3994",
        "createdAt": "2021-11-25T18:22:36.93583+00:00",
        "updatedAt": "2021-11-29T19:57:11.79+00:00",
        "creationChannel": "Mantenedor de clientes SaaS",
        "gender": "Mujer",
        "customerCondition": "Estandar",
        "nationality": 23,
        "dateOfBirth": "10/03/1988",
        "landlinePhone": "+5655746382",
        "commercialPhone": "+5693746382",
        "clientType": "Estándar"
      },
      {
        "id": 3,
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "name": "Luisa",
        "lastName": "Perez",
        "identificationNumber": "1234567",
        "identificationType": "RUT",
        "email": "[email protected]",
        "mobilePhone": "+54120450056",
        "address": "3111 Menahan Street, Dyckesville, Pennsylvania, 3994",
        "createdAt": "2021-11-25T18:22:36.93583+00:00",
        "updatedAt": "2021-11-29T19:57:11.79+00:00",
        "creationChannel": "Fuera de base",
        "gender": "Mujer",
        "customerCondition": "VIP",
        "nationality": 16,
        "dateOfBirth": "10/03/1988",
        "landlinePhone": "+5655746382",
        "commercialPhone": "+5693754387",
        "clientType": "VIP"
      }]
}

Puede consultar los clientes en nuestra API de reporteria, a continuación se describen los campos de salida.

Campo Tipo PK Descripción
id int Identificador del cliente.
businessUnit UUID Identificador de la Unidad de negocio.
identificationType string Tipo de identificación (Ejemplo: RUT).
identificationNumber string Número de identificación.
name string Nombre del cliente.
lastName string Apellido del cliente.
email string Correo electrónico del cliente.
mobilePhone string Teléfono del cliente.
address string Dirección del cliente.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.
creationChannel string Canal por el cual se creó el cliente.
gender string Género del cliente.
customerCondition string Condición del cliente
nationality int Nacionalidad del cliente
dateOfBirth Date Fecha de nacimiento del cliente
landlinePhone string Teléfono fijo del cliente
commercialPhone string Teléfono comercial del cliente
clientType string Tipo de cliente

- Clientes IKE México

Request:

{
  "query": "{
    customers_ike_mex {
      id
      name
      lastName
      businessUnit
      identificationNumber
      identificationType
      mobilePhone
      email
      address
      createdAt
      updatedAt
      creationChannel
      gender
    }
  }"
}

Response:

{
  "data": {
    "customers_ike_mex": [
      {
        "id": 1,
        "businessUnit": "22c2d28c-251c-11ef-9621-0242ac139997",
        "name": "Pablo",
        "lastName": "Perez",
        "identificationNumber": "1234567",
        "identificationType": "PASAPORTE",
        "email": "[email protected]",
        "mobilePhone": "+56340450046",
        "address": "3111 Menahan Street, Dyckesville, Pennsylvania, 3994",
        "createdAt": "2021-11-25T18:22:36.93583+00:00",
        "updatedAt": "2021-11-29T19:57:11.79+00:00",
        "creationChannel": "API precliente",
        "gender": "Hombre"
      },
      {
        "id": 2,
        "businessUnit": "22c2d28c-251c-11ef-9621-0242ac139997",
        "name": "Maria",
        "lastName": "Perez",
        "identificationNumber": "1234323",
        "identificationType": "PASAPORTE",
        "email": "[email protected]",
        "mobilePhone": "+58340045323",
        "address": "3111 Menahan Street, Dyckesville, Pennsylvania, 3994",
        "createdAt": "2021-11-25T18:22:36.93583+00:00",
        "updatedAt": "2021-11-29T19:57:11.79+00:00",
        "creationChannel": "Mantenedor de clientes SaaS",
        "gender": "Mujer"
      },
      {
        "id": 3,
        "businessUnit": "22c2d28c-251c-11ef-9621-0242ac139997",
        "name": "Luisa",
        "lastName": "Perez",
        "identificationNumber": "1234545",
        "identificationType": "PASAPORTE",
        "email": "[email protected]",
        "mobilePhone": "+54120450056",
        "address": "3111 Menahan Street, Dyckesville, Pennsylvania, 3994",
        "createdAt": "2021-11-25T18:22:36.93583+00:00",
        "updatedAt": "2021-11-29T19:57:11.79+00:00",
        "creationChannel": "Fuera de base",
        "gender": "Mujer"
      }]
}

Puede consultar los clientes de IKE México en nuestra API de reporteria, a continuación se describen los campos de salida.

Campo Tipo PK Descripción
id int Identificador del cliente.
businessUnit UUID Identificador de la Unidad de negocio.
identificationType string Tipo de identificación (Ejemplo: PASAPORTE).
identificationNumber string Número de identificación.
name string Nombre del cliente.
lastName string Apellido del cliente.
email string Correo electrónico del cliente.
mobilePhone string Teléfono del cliente.
address string Dirección del cliente.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.
creationChannel string Canal por el cual se creó el cliente.
gender string Género del cliente.

- Formularios

Request:

{
  "query": "{
    forms {
      businessUnit
      category
      createdAt
      description
      id
      updatedAt
    }
  }"
}

Response:

{
  "data": {
    "forms": [
      {
        "businessUnit": "c91bbe3d-c6e8-4d14-82fb-6df229666d30",
        "category": "custom-attributes.settings.form-category.poll",
        "createdAt": "2023-08-24T14:17:12.382451+00:00",
        "description": "test 3",
        "id": "9e756c50-67ae-4554-9425-2a320fe58855",
        "updatedAt": "2023-08-24T14:17:12.382451+00:00"
      },
      {
        "businessUnit": "ce70afda-0534-48dd-a9ae-c572478d3c36",
        "category": "custom-attributes.settings.form-category.service-questionnaire",
        "createdAt": "2023-08-24T16:19:31.790987+00:00",
        "description": "Test Pre DEMO",
        "id": "2d85ae44-6b66-4717-b5b3-bd3e07a90f76",
        "updatedAt": "2023-08-24T16:19:31.790987+00:00"
      },
      {
        "businessUnit": "22c2d28c-251c-11ef-9621-0242ac139998",
        "category": "custom-attributes.settings.form-category.service-questionnaire",
        "createdAt": "2023-08-24T16:19:31.790987+00:00",
        "description": "Test Pre DEMO",
        "id": "2d85ae44-6b66-4717-b5b3-bd3e07a90f76",
        "updatedAt": "2023-08-24T16:19:31.790987+00:00"
      }
    ]
  }
}

Puede consultar los formularios en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id UUID Identificador del formulario.
businessUnit UUID Identificador de la Unidad de negocio.
description string Nombre del formulario.
category string Nombre de categoria del formulario.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.

- Campos de formularios

Request:

{
  "query": "{
    forms_fields {
      id
      businessUnit
      description
      fieldType
      formId
      options
      createdAt
      updatedAt
    }
  }"
}

Response:

{
  "data": {
    "forms_fields": [
      {
        "id": "e38a1de6-e845-4061-829e-b739c890088c",
        "businessUnit": "b2aea475-8397-4b80-b148-564fef109dfb",
        "description": "test1",
        "fieldType": "Área de texto",
        "formId": "c98ea9e0-a564-437e-828b-71df359fce8b",
        "options": null,
        "updatedAt": "2023-08-23T16:59:19.033228",
        "createdAt": "2023-08-23T16:59:19.033228+00:00"
      },
      {
        "id": "e38a1de6-e845-4061-829e-b739c890088c",
        "businessUnit": "56c3a631-6d41-426b-ac20-f7d1818689a2",
        "description": "test1",
        "fieldType": "Área de texto",
        "formId": "c98ea9e0-a564-437e-828b-71df359fce8b",
        "options": null,
        "updatedAt": "2023-08-23T16:59:19.033228",
        "createdAt": "2023-08-23T16:59:19.033228+00:00"
      },
      {
        "id": "e38a1de6-e845-4061-829e-b739c890088c",
        "businessUnit": "439b307a-7141-4851-a816-71b79f02e80a",
        "description": "test1",
        "fieldType": "Área de texto",
        "formId": "c98ea9e0-a564-437e-828b-71df359fce8b",
        "options": null,
        "updatedAt": "2023-08-23T16:59:19.033228",
        "createdAt": "2023-08-23T16:59:19.033228+00:00"
      }
    ]
  }
}

Puede consultar los campos de formularios en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id UUID Identificador del campo.
businessUnit UUID Identificador de la Unidad de negocio.
description string Nombre del campo.
fieldType string Nombre del tipo de campo.
formId UUID Identificador del formulario.
options json Opciones de los campos de tipo selector simple o selector múltiple.
updatedAt timestamp Fecha de ultima modificación.
createdAt timestamp Fecha de creación.

- Materias

Request:

{
  "query": "{
    materials {
      id          
      businessUnit
      active
      typeMaterialId
      materialType
      vehicleType
      vehicleUsage
      chasisNumber
      model       
      engineNumber
      patentPlate 
      vin
      year        
      color
      modifications
      address     
      brand       
      kindOfPet   
      petBreed    
      petName     
      createdAt   
      updatedAt   
      }
  }"
}

Response:

{
  "data": {
    "materials": [
      {
        "id": 1,   
        "businessUnit": "84572164-bd92-4116-a965-abe845721643",
        "active": true,
        "typeMaterialId": 1,
        "materialType": "Vehículo",
        "vehicleType": 1,
        "vehicleUsage": 2,
        "chasisNumber": "232323-676777",
        "model": "Sandero",
        "engineNumber": "87873634853476543545",
        "patentPlate": "LPP609",
        "vin": "ABC123DE45",
        "year": "2022",
        "color": "Black",
        "modifications": "Antinieblas led",
        "address": null,
        "brand": "Renault",
        "kindOfPet": null,
        "petBreed": null,
        "petName": null,
        "createdAt": "2022-11-30 10:53:27.501688-05",
        "updatedAt": "2022-12-12 12:07:06.858828-05"
      },
      {
        "id": 2,   
        "businessUnit": "84572164-bd92-4116-a965-abe845721643",
        "active": true,
        "typeMaterialId": 4,
        "materialType": "Mascota",
        "vehicleType": null,
        "vehicleUsage": null,
        "chasisNumber": null,
        "model": null,
        "engineNumber": null,
        "patentPlate": null,
        "vin": null,
        "year": null,
        "color": null,
        "modifications": null,
        "address": null,
        "brand": null,
        "kindOfPet": "Perro",
        "petBreed": "Bernes de la montaña",
        "petName": "Jhava",
        "createdAt": "2022-11-30 10:53:27.501688-05",
        "updatedAt": "2022-12-12 12:07:06.858828-05"
      },
      {
        "id": 3,   
        "businessUnit": "84572164-bd92-4116-a965-abe845721643",
        "active": true,
        "typeMaterialId": 2,
        "materialType": "Inmueble",
        "vehicleType": null,
        "vehicleUsage": null,
        "chasisNumber": null,
        "model": null,
        "engineNumber": null,
        "patentPlate": null,
        "vin": null,
        "year": null,
        "color": null,
        "modifications": null,
        "address": "Ciudad de México, CDMX, México",
        "brand": null,
        "kindOfPet": null,
        "petBreed": null,
        "petName": null,
        "createdAt": "2022-11-30 10:53:27.501688-05",
        "updatedAt": "2022-12-12 12:07:06.858828-05"
      }
    ]
  }
}

Puede consultar las materias en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador de la materia.
businessUnit UUID Identificador de la Unidad de negocio.
active boolean Materia activa.
typeMaterialId int Este campo indica el id del tipo de materia.
materialType string Este campo indica el tipo de materia.
vehicleType int Tipo de vehículo (1 = Automóvil, 2 = Motocicleta, 3 = Camión).
vehicleUsage int Tipo de uso del vehículo (1 = Particular, 2 = Comercial).
chasisNumber string Número de chasis del vehiculo.
model string Modelo del vehiculo
engineNumber string Número de motor del vehiculo.
patentPlate string Placa del vehiculo.
vin string Número de vin del vehículo.
year string Año del vehiculo.
color string Color del vehículo.
modifications string Modificaciones del vehículo.
address string Dirección del hogar.
brand string Este campo indica la marca del vehículo.
kindOfPet string Este campo indica el tipo de mascota. Por ejemplo, perro o gato.
petBreed string Este campo indica la raza de la mascota.
petName string Este campo indica el nombre de la mascota.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.

- Casos

Request:

{
  "query": "{  
      cases {
        id
        externalCode
        customerId
        createdBy
        createdAt
        correlativeNumber
        closedAt
        casualtyAt
        businessUnit
        caseDescription
        caseNumber
        informerId
        materiaId
        statusName
        typeName
        updatedAt
      }
    }"
}

Response:

{
  "data": {
    "casos": [
      {
        "id": 1,
        "externalCode": null,
        "customerId": 1112,
        "createdBy": 1,
        "createdAt": "2023-09-19T18:11:37.683+00:00",
        "correlativeNumber": "1",
        "closedAt": "2023-09-19T18:11:29.421+00:00",
        "casualtyAt": "2023-03-21",
        "businessUnit": "4568882c-783d-11eb-9439-0242ac139999",
        "caseDescription": "que pasooooo",
        "caseNumber": "10000000008",
        "informerId": 1113,
        "materiaId": 55695,
        "statusName": "PENDIENTE",
        "typeName": "Caso generico",
        "updatedAt": "2023-09-19T18:11:37.683+00:00"
      },
      {
        "id": 2,
        "externalCode": null,
        "customerId": 1113,
        "createdBy": 1,
        "createdAt": "2023-09-19T18:11:29.421+00:00",
        "correlativeNumber": "1",
        "closedAt": "2023-09-19T18:11:29.421+00:00",
        "casualtyAt": "2023-09-19",
        "businessUnit": "4568882c-783d-11eb-9439-0242ac139999",
        "caseDescription": "Caso creado para el caso de emergencia: Grua prueba",
        "caseNumber": "10000000006",
        "informerId": 1113,
        "materiaId": 54364,
        "statusName": "PENDIENTE",
        "typeName": "Caso generico",
        "updatedAt": "2023-09-19T18:11:29.421+00:00"
      },
      {
        "id": 3,
        "externalCode": null,
        "customerId": 1114,
        "createdBy": 1,
        "createdAt": "2023-09-19T18:11:29.087+00:00",
        "correlativeNumber": "1",
        "closedAt": "2023-09-19T18:11:29.421+00:00",
        "casualtyAt": "2023-03-21",
        "businessUnit": "4568882c-783d-11eb-9439-0242ac139999",
        "caseDescription": "detalleeeeeeee",
        "caseNumber": "10000000005",
        "informerId": 1113,
        "materiaId": 261,
        "statusName": "PENDIENTE",
        "typeName": "Caso generico",
        "updatedAt": "2023-09-19T18:11:29.087+00:00"
      }]
}

Puede consultar los casos en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador del caso.
businessUnit UUID Identificador de la Unidad de negocio.
caseNumber string Número de caso.
correlativeNumber string Número de correlativo del caso.
materiaId int Identificador de la Materia.
customerId int Identificador del Cliente.
informerId int Identificador del Informante.
caseDescription string Detalle del caso.
statusName string Estado del caso. (Pendiente)
typeName string Tipo de caso.
casualtyAt string Fecha de cuando ocurrio el evento.
createdBy int Identificador del Usuario que creo el caso.
closedAt timestamp Fecha de cierre del caso.
createdAt timestamp Fecha de creación del caso.
updatedAt timestamp Fecha de creación del caso.
externalCode string Codigo externo asociado al caso

- Presupuestos de Servicios

Request:

{
  "query": "{  
    service_budgets {
        id
        name
      }
    }"
}

Response:

{
  "data": {
    "service_budgets": [
      {
        "id": 699,
        "createdAt": "2022-05-17T21:40:15.611",
        "businessUnit": "38s8c8d6d-251c-11ef-9621-0242ac139998",
        "bookingId": 151570,
        "totalCost": 1200000,
        "totalPrice": 1200000,
        "updatedAt": "2022-05-17T21:40:15.611"
      },
      {
        "id": 702,
        "createdAt": "2022-05-20T14:43:31.302",
        "businessUnit": "38s8c8d6d-72f5-11ea-bec0-000d3a06cedd",
        "bookingId": 153136,
        "totalCost": 50000000,
        "totalPrice": 50000000,
        "updatedAt": "2022-05-20T14:43:31.302"
      },
      {
        "id": 705,
        "createdAt": "2022-06-02T17:02:18.865",
        "businessUnit": "38s8c8d6d-72f5-11ea-bec0-000d3a06cedd",
        "bookingId": 155613,
        "totalCost": 19999900,
        "totalPrice": 10000000,
        "updatedAt": "2022-06-02T17:02:18.865"
      }
    ]
}

Puede consultar los presupuestos servicios en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador del presupuesto.
createdAt string Fecha de creación del presupuesto.
businessUnit UUID Identificador de la Unidad de negocio.
bookingId int Identificador del servicio del presupuesto.
totalCost int Precio total del servicio.
totalPrice int Costo total del servicio.
serviceDuration int Duración del servicio.
updatedAt string Fecha de ultima modificación del presupuesto.

- Categorias de Servicios

Request:

{
  "query": "{  
    service_categories {
        id
        name
        businessUnit
        updatedAt
        createdAt
      }
    }"
}

Response:

{
  "data": {
    "service_categories": [
      {
        "id": 1001,
        "name": "Prueba 1",
        "businessUnit": "4228882c-783d-11eb-9439-0242ac155002",
        "updatedAt": "2023-04-10T21:13:21.991674+00:00",
        "createdAt": "2022-05-09T10:37:09.033772+00:00"
      },
      {
        "id": 1002,
        "name": "Prueba 2",
        "businessUnit": "4228882c-783d-11eb-9439-0242ac155002",
        "updatedAt": "2023-04-10T21:13:21.991674+00:00",
        "createdAt": "2022-05-09T10:37:08.420817+00:00"
      },
      {
        "id": 1003,
        "name": "Prueba 3",
        "businessUnit": "4228882c-783d-11eb-9439-0242ac155002",
        "updatedAt": "2023-04-10T21:13:21.991674+00:00",
        "createdAt": "2022-05-09T10:37:08.522426+00:00"
      }
    ]
  }
}

Puede consultar las categorias servicios en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador de la categoria.
businessUnit UUID Identificador de la Unidad de negocio.
name string Nombre de la categoria.
updatedAt timestamp Fecha de última modificación.
createdAt timestamp Fecha de creación.

- Definición de servicios

Request:

{
  "query": "{  
    definition_services {
      id
      businessUnit
      name
      price
      cost
      categories
      duration
      createdAt
      updatedAt
      description
      wizardId
      checklistId
      isExpress
      active
      minExpressBookingTime
      maxExpressStartTime
      avgExpressArrivalTime
      motorId
      sendsPublicLink
      isAutomatic
      automaticConceptCost
      topeMinSatisfactory
      topeMaxSatisfactory
      topeMinUnsatisfactory
      topeMaxUnsatisfactory
      questionnaire
      activePaymentGateway
    }
  }"
}

Response:

{
  "data": {
    "definition_services": [
      {
        "active": true,
        "activePaymentGateway": true,
        "automaticConceptCost": null,
        "avgExpressArrivalTime": 0,
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "categories": "[15, 4]",
        "checklistId": 17,
        "cost": "70.0",
        "createdAt": "2019-09-12T01:39:36.073+00:00",
        "description": "Limpieza hogar 2",
        "duration": "180.0",
        "id": 1,
        "isAutomatic": false,
        "isExpress": false,
        "maxExpressStartTime": 0,
        "minExpressBookingTime": 0,
        "motorId": "16",
        "name": "Aseo hogar",
        "price": "17990.0",
        "questionnaire": null,
        "sendsPublicLink": false,
        "topeMaxSatisfactory": null,
        "topeMaxUnsatisfactory": null,
        "topeMinSatisfactory": null,
        "topeMinUnsatisfactory": null,
        "updatedAt": "2023-11-10T07:20:50.997848+00:00",
        "wizardId": 26
      },
      {
        "active": true,
        "activePaymentGateway": true,
        "automaticConceptCost": null,
        "avgExpressArrivalTime": 0,
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "categories": "[24997]",
        "checklistId": 8,
        "cost": "20.0",
        "createdAt": "2019-09-12T01:54:08.757+00:00",
        "description": "Instalación de puertas",
        "duration": "240.0",
        "id": 2,
        "isAutomatic": false,
        "isExpress": false,
        "maxExpressStartTime": 0,
        "minExpressBookingTime": 0,
        "motorId": "18",
        "name": "Instalación de puertas",
        "price": "100000.0",
        "questionnaire": null,
        "sendsPublicLink": false,
        "topeMaxSatisfactory": null,
        "topeMaxUnsatisfactory": null,
        "topeMinSatisfactory": null,
        "topeMinUnsatisfactory": null,
        "updatedAt": "2023-11-10T07:20:50.997848+00:00",
        "wizardId": 31
      },
      {
        "active": true,
        "activePaymentGateway": true,
        "automaticConceptCost": null,
        "avgExpressArrivalTime": 1,
        "businessUnit": "542927b6-72f5-11ea-bec0-000d3a06cedd",
        "categories": "[18728, 18070, 18071, 18073, 18077, 18075]",
        "checklistId": 20,
        "cost": "10.0",
        "createdAt": "2019-09-12T15:33:53.184+00:00",
        "description": "Reparación de goteras",
        "duration": "30.0",
        "id": 3,
        "isAutomatic": false,
        "isExpress": true,
        "maxExpressStartTime": 2880,
        "minExpressBookingTime": 60,
        "motorId": "2895",
        "name": "Reparación de goteras",
        "price": "52000.0",
        "questionnaire": null,
        "sendsPublicLink": false,
        "topeMaxSatisfactory": null,
        "topeMaxUnsatisfactory": null,
        "topeMinSatisfactory": null,
        "topeMinUnsatisfactory": null,
        "updatedAt": "2023-11-10T07:20:50.997848+00:00",
        "wizardId": 32
      }
    ]
  }
}

Puede consultar las definiciones de servicios en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador de la definición de servicio.
businessUnit UUID Identificador de la Unidad de negocio.
name string Nombre del servicio.
price string Precio del servicio.
cost string Costo del servicio.
categories array Array de identificadores de Categorias de Servicios.
duration string Duración del servicio.
description string Descripción.
wizardId int Identificador del Wizard.
checklistId int Identificador de un checkList.
motorId string Identificador del motor de asignaciones.
isExpress boolean Valor lógico sobre la condición de un servicio express o regular.
active boolean Valor lógico sobre el estatus de un servicio.
minExpressBookingTime int Tiempo minimo para el servicio express.
maxExpressStartTime int Tiempo maximo para el inicio de servicio express.
avgExpressArrivalTime int Tiempo promedio de llegada para el servicio express.
sendsPublicLink boolean Valor lógico sobre el indicador de envío de enlace publico para visualizar información del servicio.
isAutomatic boolean Valor lógico sobre el indicador de pago automatizado a proveedor
automaticConceptCost boolean Valor lógico sobre el indicador del modo del pago automatizado a proveedor (Manual o por concepto de costo).
topeMinSatisfactory int Valor mínimo del rango de costo concluido satisfactoriamente.
topeMaxSatisfactory int Valor maximo del rango de costo concluido satisfactoriamente.
topeMinUnsatisfactory int Valor mínimo del rango de costo concluido insatisfactoriamente.
topeMaxUnsatisfactory int Valor maximo del rango de costo concluido insatisfactoriamente.
questionnaire UUID Identificador del cuestionario asociado al servicio.
activePaymentGateway boolean Valor lógico sobre el indicador si el servicio posee pasarela de pago.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.

- Profesionales

Request:

{
  "query": "{
    professionals {
        id
        businessUnit
        name
        lastName
        email
        phoneNumber
        status
        bank
        typeAccount
        numberAccount
        identificationTypeId
        identificationTypeNumber
        address
        approved
        approvalAt
        branchId
        providerId
        hourApproved
        createdAt
        updatedAt
      }
    }"
}

Response:

{
    "data": {
        "professionals": [{
                "id": 2,
                "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
                "name": "Carlos",
                "lastName": "Vergara",
                "email": "[email protected]",
                "phoneNumber": "12341232132132",
                "status": "ACTIVO",
                "bank": "BANCO DE CHILE",
                "typeAccount": "VISTA",
                "numberAccount": "22222222222222",
                "identificationTypeId": "4",
                "identificationTypeNumber": "25440201k",
                "address": "piramide 1000",
                "approved": true,
                "approvalAt": "2022-04-22T15:16:48.428+00:00",
                "branchId": null,
                "providerId": null,
                "hourApproved": "03:16:48 PM",
                "createdAt": "2021-12-23T15:47:10.494416+00:00",
                "updatedAt": "2022-12-21T14:38:32.854178+00:00"
            },
            {
                "id": 3,
                "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
                "name": "Ruben",
                "lastName": "Vergara",
                "email": "[email protected]",
                "phoneNumber": "12341232132132",
                "status": "ACTIVO",
                "bank": "BANCO DE CHILE",
                "typeAccount": "VISTA",
                "numberAccount": "22222222222222",
                "identificationTypeId": "4",
                "identificationTypeNumber": "261225840",
                "address": "Avenida Apoquindo 3721, Las Condes",
                "approved": false,
                "approvalAt": null,
                "branchId": null,
                "providerId": null,
                "hourApproved": null,
                "createdAt": "2021-12-23T15:47:10.494416+00:00",
                "updatedAt": "2022-12-21T14:38:32.854178+00:00"
            }
        ]
    }
}

Puede consultar los profesionales en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo Pk Descripción
id int Identificador del profesional.
businessUnit UUID Identificador de la Unidad de negocio.
name string Nombre
lastName string Apellido
email string Correo electrónico.
phoneNumber string Número de teléfono.
status string Estatus del profesional valores posibles ACTIVO/INACTIVO.
bank string Nombre del banco usado por el profesional.
typeAccount string Tipo de cuenta.
numberAccount string Número de cuenta.
identificationTypeId string Tipo de identificación.
identificationTypeNumber string Número de identificación.
address string Dirección
approved string Valor lógico sobre aprobación del profesional.
approvalAt string Fecha de aprobación.
branchId int Id de la sucursal a la cual pertence el profesional.
providerId int Id del proveedor a la cual pertence la sucusal del profesional.
hourApproved string Hora de aprobación. Formato HH:MM:SS AM.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.

- Documentos de Profesionales

Request:

{
  "query": "{  
     professional_documents {
        id
        comment
        requiresCorroboration
        businessUnit
        professionalId
        fileId
        checkDate
        createdAt
        updatedAt
        documentType
      }
    }"
}

Response:

{
  "data": {
    "professional_documents": [
      {
        "id": 50,
        "comment": "pruebas",
        "requiresCorroboration": true,
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "professionalId": 80,
        "fileId": 296,
        "checkDate": "2021-06-25T15:46:02.61",
        "createdAt": "2020-09-11T16:11:21.819+00:00",
        "updatedAt": "2022-12-21T14:38:32.854178+00:00",
        "documentType": "Certificación técnica"
      },
      {
        "id": 51,
        "comment": null,
        "requiresCorroboration": false,
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "professionalId": 80,
        "fileId": 297,
        "checkDate": null,
        "createdAt": "2020-09-11T16:11:21.819+00:00",
        "updatedAt": "2022-12-21T14:38:32.854178+00:00",
        "documentType": "Seguros"
      }]
}

Puede consultar los documentos de profesionales en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador del documento.
comment string Comentarios
requiresCorroboration boolean Requiere corroboracion
businessUnit UUID Identificador de la Unidad de negocio.
professionalId int Identificador del Profesional.
fileId int Identificador del Documento.
checkDate timestamp Fecha de checkeo.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.

- Agenda de Profesionales

Request:

{
  "query": "{  
     professional_schedules {
        id
        businessUnit
        professionalId
        day
        hourFrom
        hourTo
        createdAt
        updateAt
      }
    }"
}

Response:

{
  "data": {
    "professional_schedules": [
       {
        "id": 5640,
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "professionalId": 5418,
        "day": "lunes",
        "hourFrom": 0,
        "hourTo": 23,
        "createdAt": "2023-03-30T21:16:53.802257",
        "updateAt": "2023-03-30T21:16:53.802257"
      },
      {
        "id": 5641,
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "professionalId": 5418,
        "day": "martes",
        "hourFrom": 0,
        "hourTo": 23,
        "createdAt": "2023-03-30T21:16:53.802257",
        "updateAt": "2023-03-30T21:16:53.802257"
      }]
}

Puede consultar la agenda de los profesionales en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador de la agenda.
businessUnit UUID Identificador de la Unidad de negocio.
professionalId int Identificador del Profesional.
day string Dia.
hourFrom int Hora de inicio.
hourTo int Hora de fin.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.

- Servicios de Profesionales

Request:

{
  "query": "{  
    professional_services {
        id
        serviceName
        businessUnit
        professionalId
        serviceId
        baseServiceCost
        baseProCost
        expressProCost
        wizardPercentage
        updatedAt
        createdAt
      }
    }"
}

Response:

{
  "data": {
    "professional_services": [
      {
        "id": 363,
        "serviceName": "Aseo hogar",
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "professionalId":88,
        "serviceId":1,
        "baseServiceCost":10582,
        "baseProCost":21001,
        "expressProCost":21500,
        "wizardPercentage":10,
        "updatedAt":"2022-05-30T19:27:10.746+00:00",
        "createdAt":"2022-05-30T19:27:10.746+00:00"
      },
      {
        "id": 364,
        "serviceName": "Demo",
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "professionalId":88,
        "serviceId":2,
        "baseServiceCost":10582,
        "baseProCost":21001,
        "expressProCost":21500,
        "wizardPercentage":10,
        "updatedAt":"2022-05-30T19:27:10.746+00:00",
        "createdAt":"2022-05-30T19:27:10.746+00:00"
      },
      {
       "id": 365,
        "serviceName": "Limpieza",
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "professionalId":88,
        "serviceId":3,
        "baseServiceCost":10582,
        "baseProCost":21001,
        "expressProCost":21500,
        "wizardPercentage":10,
        "updatedAt":"2022-05-30T19:27:10.746+00:00",
        "createdAt":"2022-05-30T19:27:10.746+00:00"
      }]
}

Puede consultar los servicios de los profesionales en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador del servicio del profesional.
serviceName string Nombre del servicio.
businessUnit UUID Identificador de la Unidad de negocio.
professionalId int Identificador del Profesional.
serviceId int Identificador del Servicio.
baseServiceCost float Costo base del servicio.
baseProCost float #######
expressProCost float #######
wizardPercentage float Porcentaje de asistencia.
updatedAt timestamp Fecha de ultima modificación.
createdAt timestamp Fecha de creación.

- Recargos de profesionales

Request:

{
  "query": "{  
    professional_surges {
        id
        description
        businessUnit
        professionalId
        surgeAmount
        surgePercent
        surgeDayOfWeek
        surgeDate
        updatedAt
        createdAt
      }
    }"
}

Response:

{
  "data": {
    "professional_surges": [
      {
        "id": 2,
        "description": "30%",
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "professionalId": 2,
        "surgeAmount": 3300,
        "surgePercent": 30,
        "surgeDayOfWeek": null,
        "surgeDate": "2021-05-02",
        "updatedAt": "2022-12-21T14:38:32.854178+00:00",
        "createdAt": "2021-12-23T15:47:10.494416+00:00"
      },
      {
        "id": 5,
        "description": "pruebas",
        "businessUnit": "542927b6-72f5-11ea-bec0-000d3a06cedd",
        "professionalId": 38,
        "surgeAmount": 2,
        "surgePercent": 1,
        "surgeDayOfWeek": null,
        "surgeDate": "2021-05-05",
        "updatedAt": "2022-12-21T14:38:32.854178+00:00",
        "createdAt": "2021-12-23T15:47:10.494416+00:00"
      }]
}

Puede consultar los recargos de profesionales en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador del recargo.
description string Descripción del recargo.
businessUnit UUID Identificador de la Unidad de negocio.
professionalId int Identificador del Profesional.
surgeAmount float Monto del recargo.
surgePercent float Porcentaje del recargo.
surgeDayOfWeek int Dia de la semana en la que se hizo el recargo.
surgeDate timestamp Fecha del recargo.
updatedAt timestamp Fecha de ultima modificación.
createdAt timestamp Fecha de creación.

- Capacitación de Profesionales

Request:

{
  "query": "{  
     professional_trainings {
        id
        trainingName
        businessUnit
        professionalId
        updatedAt
        createdAt
      }
    }"
}

Response:

{
  "data": {
    "professional_trainings": [
       {
        "id": 7,
        "trainingName": "Capacitación nro. 4",
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "professionalId": 75,
        "updatedAt": "2020-09-16T23:08:49.547",
        "createdAt": "2020-09-16T23:08:49.547+00:00"
      },
      {
        "id": 8,
        "trainingName": "Capacitación nro 9",
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "professionalId": 75,
        "updatedAt": "2020-09-17T00:20:41.977",
        "createdAt": "2020-09-17T00:20:41.977+00:00"
      }]
}

Puede consultar las capacitaciones de los profesionales en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador de la capacitación.
trainingName string Fecha de ultima modificación.
businessUnit UUID Identificador de la Unidad de negocio.
professionalId int Identificador del Profesional.
updatedAt timestamp Fecha de ultima modificación..
createdAt timestamp Fecha de creación.

- Recargos de Profesionales por Comunas

Request:

{
  "query": "{  
    professional_neighborhood_surcharges {
        id
        businessUnit
        professionalId
        comuneId
        comuneName
        surcharge
        systemSurcharge
        createdAt
        updatedAt
      }
    }"
}

Response:

{
  "data": {
    "professional_neighborhood_surcharges": [
       {
        "id": 2,
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "professionalId": 2,
        "comuneId": 9,
        "comuneName": "Viña del Mar",
        "surcharge": 555,
        "systemSurcharge": 0,
        "createdAt": "2023-03-30T21:16:53.802257",
        "updatedAt": "2023-03-30T21:16:53.802257"
      },
      {
        "id": 3,
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "professionalId": 2,
        "comuneId": 5,
        "comuneName": "Macúl",
        "surcharge": 1222,
        "systemSurcharge": 0,
        "createdAt": "2023-03-30T21:16:53.802257",
        "updatedAt": "2023-03-30T21:16:53.802257"
      }]
}

Puede consultar los recargos de profesionales por comuna en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador del recargo.
businessUnit UUID Identificador de la Unidad de negocio.
professionalId int Identificador del Profesional.
comuneId int Identificador de la Comuna.
comuneName string Nombre de la comuna.
surcharge float Recargo.
systemSurcharge float Recargo en sistema.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.

- Report Proveedores

Request:

{
  "query": "{
    providers(limit: 3, order_by: {id: desc}) {
      accountHolderEmail
      accountHolderName
      accountNumber
      activeDiscounts
      address
      administrationLastname
      administrationName
      administrationPhone
      administrationPhoneContact
      bank
      businessActivity
      businessName
      businessUnit
      catalogNotUpdated
      commune
      country
      countryName
      createdAt
      discountValue
      doesNotAnswer
      doesNotCoverArea
      doesNotGiveResponseTime
      earlyPayment
      email
      employees
      fantasyName
      guaranteeAmount
      guaranteeAmountAccumulated
      id
      identificationNumber
      identificationTypeId
      latitude
      legalRepresentativeEmail
      legalRepresentativeLastname
      legalRepresentativeName
      legalRepresentativePhone
      legalRepresentativePhoneContact
      longitude
      name
      noCredit
      observations
      onTime
      onlyUnderAuthorization
      paymentAccountType
      paymentIdentificationNumber
      paymentIdentificationTypeId
      paymentMethod
      province
      punished
      quotation
      serviceByAppointment
      status
      typeOfDiscount
      updatedAt
      whatsappNotification
      withoutSpecializedTechnician
    }
  }"
}

Response:

{
  "data": {
    "providers": [
      {
        "accountHolderEmail": "[email protected]",
        "accountHolderName": "Lisandro Prov Acch",
        "accountNumber": "14561211456121",
        "activeDiscounts": false,
        "address": "Arica, Chile",
        "administrationLastname": "Prov Acch",
        "administrationName": "Lisandro Prov",
        "administrationPhone": "561233219876",
        "administrationPhoneContact": "",
        "bank": 89,
        "businessActivity": "No",
        "businessName": "Lisandro Prov Acch",
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "catalogNotUpdated": false,
        "commune": 1879,
        "country": 50,
        "countryName": "Chile",
        "createdAt": "2025-01-21T00:00:00+00:00",
        "discountValue": 1,
        "doesNotAnswer": false,
        "doesNotCoverArea": false,
        "doesNotGiveResponseTime": false,
        "earlyPayment": false,
        "email": "[email protected]",
        "employees": 2,
        "fantasyName": "Lisandro Prov Acch",
        "guaranteeAmount": 100,
        "guaranteeAmountAccumulated": 1000,
        "id": 12877,
        "identificationNumber": "1456121",
        "identificationTypeId": 4,
        "latitude": "-18.4782534",
        "legalRepresentativeEmail": "[email protected]",
        "legalRepresentativeLastname": "Prov Acch",
        "legalRepresentativeName": "Lisandro Prov",
        "legalRepresentativePhone": "561233219876",
        "legalRepresentativePhoneContact": "",
        "longitude": "-70.3125988",
        "name": "Lisandro Prov Acch",
        "noCredit": false,
        "observations": null,
        "onTime": false,
        "onlyUnderAuthorization": false,
        "paymentAccountType": 13,
        "paymentIdentificationNumber": "1456121",
        "paymentIdentificationTypeId": 4,
        "paymentMethod": "2",
        "province": 109,
        "punished": false,
        "quotation": false,
        "serviceByAppointment": false,
        "status": "ACTIVO",
        "typeOfDiscount": "valor",
        "updatedAt": "2025-02-14T16:31:40.585139+00:00",
        "whatsappNotification": null,
        "withoutSpecializedTechnician": false
      },
      {
        "accountHolderEmail": "[email protected]",
        "accountHolderName": "LUCIANA TORRES",
        "accountNumber": "132456789126",
        "activeDiscounts": false,
        "address": "Antofagasta, Chile",
        "administrationLastname": "TORRES",
        "administrationName": "LUCIANA",
        "administrationPhone": "563214510704",
        "administrationPhoneContact": "563214510704",
        "bank": 345,
        "businessActivity": "1212",
        "businessName": "PROVEEDORHPVPC6",
        "businessUnit": "d13d5d57-138d-4b0d-8cb8-52f5a4c9c4da",
        "catalogNotUpdated": null,
        "commune": 85318,
        "country": 183,
        "countryName": "Chile",
        "createdAt": "2024-12-02T00:00:00+00:00",
        "discountValue": 0,
        "doesNotAnswer": null,
        "doesNotCoverArea": null,
        "doesNotGiveResponseTime": null,
        "earlyPayment": false,
        "email": "[email protected]",
        "employees": 12,
        "fantasyName": "PROVEEDORHPVPC6",
        "guaranteeAmount": 0,
        "guaranteeAmountAccumulated": 0,
        "id": 12876,
        "identificationNumber": "1072716121HPVPC6",
        "identificationTypeId": 4,
        "latitude": "-23.6509279",
        "legalRepresentativeEmail": "[email protected]",
        "legalRepresentativeLastname": "TORRES",
        "legalRepresentativeName": "LUCIANA",
        "legalRepresentativePhone": "563214510704",
        "legalRepresentativePhoneContact": "563214510704",
        "longitude": "-70.39750219999999",
        "name": "PROVEEDORHPVPC6",
        "noCredit": null,
        "observations": "DESCRIPCION DE PRUEBA",
        "onTime": null,
        "onlyUnderAuthorization": null,
        "paymentAccountType": 93,
        "paymentIdentificationNumber": "1072716121",
        "paymentIdentificationTypeId": 4,
        "paymentMethod": "10",
        "province": 841,
        "punished": null,
        "quotation": null,
        "serviceByAppointment": null,
        "status": "ACTIVO",
        "typeOfDiscount": null,
        "updatedAt": "2024-12-02T18:48:39.613712+00:00",
        "whatsappNotification": null,
        "withoutSpecializedTechnician": null
      },
      {
        "accountHolderEmail": "[email protected]",
        "accountHolderName": "PROVEEDOR HU143867",
        "accountNumber": "463413546132",
        "activeDiscounts": false,
        "address": "Bogotá, Colombia",
        "administrationLastname": "PROVEEDOR HU143867",
        "administrationName": "PROVEEDOR HU143867",
        "administrationPhone": "573214510704",
        "administrationPhoneContact": "",
        "bank": 213,
        "businessActivity": "PROVEEDOR HU143867",
        "businessName": "PROVEEDOR HU143867",
        "businessUnit": "ee8c0235-2e18-4d7d-8ceb-8ab84d67a47f",
        "catalogNotUpdated": null,
        "commune": 6668,
        "country": 79,
        "countryName": "Colombia",
        "createdAt": "2024-10-14T00:00:00+00:00",
        "discountValue": 0,
        "doesNotAnswer": null,
        "doesNotCoverArea": null,
        "doesNotGiveResponseTime": null,
        "earlyPayment": false,
        "email": "[email protected]",
        "employees": 12,
        "fantasyName": "PROVEEDOR HU143867",
        "guaranteeAmount": 0,
        "guaranteeAmountAccumulated": 0,
        "id": 12836,
        "identificationNumber": "PAS897238567285T63",
        "identificationTypeId": 4,
        "latitude": "4.710988599999999",
        "legalRepresentativeEmail": "[email protected]",
        "legalRepresentativeLastname": "PROVEEDOR HU143867",
        "legalRepresentativeName": "PROVEEDOR HU143867",
        "legalRepresentativePhone": "573214510704",
        "legalRepresentativePhoneContact": "",
        "longitude": "-74.072092",
        "name": "PROVEEDOR HU143867",
        "noCredit": null,
        "observations": null,
        "onTime": null,
        "onlyUnderAuthorization": null,
        "paymentAccountType": 24,
        "paymentIdentificationNumber": "PS9872385",
        "paymentIdentificationTypeId": 4,
        "paymentMethod": "5",
        "province": 146,
        "punished": null,
        "quotation": null,
        "serviceByAppointment": null,
        "status": "ACTIVO",
        "typeOfDiscount": null,
        "updatedAt": "2024-10-14T14:35:37.700218+00:00",
        "whatsappNotification": null,
        "withoutSpecializedTechnician": null
      }
    ]
  }
}

Puede consultar los proveedores en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador del proveedor.
businessUnit UUID Identificador de la Unidad de negocio.
name string Nombre
email string Correo electrónico del contacto de administración
businessName string Razón social
address string Dirección
legalRepresentativeName string Nombre del representante legal.
legalRepresentativeLastname string Apellido del representante legal.
legalRepresentativePhone string Teléfono del representante legal
status string ACTIVO / INACTIVO
identificationTypeId int Tipo de identificación.
identificationNumber string Número de identificación.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.
punished boolean Valor lógico sobre el tipo de evaluación: Castigado
catalogNotUpdated boolean Valor lógico sobre el tipo de evaluación: catalogoNoActualizado
quotation boolean Valor lógico sobre el tipo de evaluación: cotizacion
onTime boolean Valor lógico sobre el tipo de evaluación: enTiempo
doesNotAnswer boolean Valor lógico sobre el tipo de evaluación: noContesta
doesNotGiveResponseTime boolean Valor lógico sobre el tipo de evaluación: noDaTiempoDeRespuesta
noCredit boolean Valor lógico sobre el tipo de evaluación: noTieneCredito
serviceByAppointment boolean Valor lógico sobre el tipo de evaluación: servicioConCita
withoutSpecializedTechnician boolean Valor lógico sobre el tipo de evaluación: sinTecnicoEspecializado
doesNotCoverArea boolean Valor lógico sobre el tipo de evaluación: noCubreZona
onlyUnderAuthorization boolean Valor lógico sobre el tipo de evaluación: soloBajoAutorizacion
fantasyName string Nombre de fantasía
businessActivity string Giro o actividad
employees int Número de trabajadores
legalRepresentativeEmail string Correo electrónico representante legal
legalRepresentativePhoneContact string Teléfono contacto representante legal
administrationName string Nombres contacto administración
administrationLastname string Apellidos contacto administración
administrationPhone string Teléfono canal contacto administración
administrationPhoneContact string Teléfono contacto administración
whatsappNotification boolean Activar notificaciones por whatsapp
earlyPayment boolean Pronto pago
paymentMethod int Modalidad de pago
accountHolderName string Nombre de titular
accountHolderEmail string Correo electrónico de los datos financieros del proveedor
paymentIdentificationTypeId int Tipo de identificación
paymentIdentificationNumber string Número de identificación de los datos financieros
bank int Banco
paymentAccountType int Tipo de cuenta
accountNumber string Número de cuenta
activeDiscounts boolean Descuentos activos
typeOfDiscount int Tipo de descuento
discountValue string Valor del descuento
guaranteeAmount string Monto a constituir
guaranteeAmountAccumulated string Monto acumulado
observations string Observaciones sobre el proveedor
commune int Comuna
province int Provincia
longitude decimal Longitud
latitude decimal Latitud
countryName string Nombre de país
country int ID de país

- Sucursal de Proveedor

Request:

{
  "query": "{
     sucursals {
        id
        name
        providerId
        contactEmail
        contactName
        contactLastName
        contactPhone
        canalPhone
        address
        externalId
        businessUnit
        updatedAt
        createdAt
      }
    }"
}

Response:

{
  "data": {
    "sucursals": [
       {
        "id": 1,
        "name": "Sucursal",
        "providerId":5,
        "contactEmail":"[email protected]",
        "contactName":"Ejemplo",
        "contactLastName":"Ejemplo",
        "contactPhone":"3123212121",
        "canalPhone":"3123212121",
        "address":"ejemplo",
        "externalId":33,
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "updatedAt": "2020-09-16T23:08:49.547",
        "createdAt": "2020-09-16T23:08:49.547+00:00"
      },
      {
        "id": 2,
        "name": "Sucursal Segunda",
        "providerId":5,
        "contactEmail":"[email protected]",
        "contactName":"Ejemplo",
        "contactLastName":"Ejemplo",
        "contactPhone":"3123212121",
        "canalPhone":"3123212121",
        "address":"ejemplo",
        "externalId":33,
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "updatedAt": "2020-09-16T23:08:49.547",
        "createdAt": "2020-09-16T23:08:49.547+00:00"
      }]
}

Puede consultar las sucursales de los proveedores en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador de la sucursal.
name string Nombre de la sucursal.
providerId int Identificador del Proveedor.
contactEmail string Email del contacto.
contactName string Nombre del contacto.
contactLastName string Apellido del contacto.
contactPhone string Telefono del contacto.
canalPhone string Telefono del canal.
address string Dirección de la sucursal.
businessUnit UUID Identificador de la Unidad de negocio.
updatedAt timestamp Fecha de ultima modificación..
createdAt timestamp Fecha de creación.

- Horario de Sucursal

Request:

{
  "query": "{
     sucursals_schedules {
        id
        name
        startHour
        closingHour
        sucursalId
        businessUnit
        updatedAt
        createdAt
      }
    }"
}

Response:

{
  "data": {
    "sucursals_schedules": [
       {
        "id": 1,
        "name": "lunes",
        "startHour":0,
        "closingHour":24,
        "sucursalId":8,
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "updatedAt": "2020-09-16T23:08:49.547",
        "createdAt": "2020-09-16T23:08:49.547+00:00"
      },
      {
        "id": 2,
        "name": "martes",
        "startHour":0,
        "closingHour":24,
        "sucursalId":8,
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "updatedAt": "2020-09-16T23:08:49.547",
        "createdAt": "2020-09-16T23:08:49.547+00:00"
      }]
}

Puede consultar los horario de la sucursales de los proveedores en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador del horario de la sucursal.
name string Nombre del dia del horario.
startHour int Hora de inicio de agenda.
closingHour int Hora de cierre de agenda.
sucursalId int Identificador de la Sucursal.
businessUnit UUID Identificador de la Unidad de negocio.
updatedAt timestamp Fecha de ultima modificación.
createdAt timestamp Fecha de creación.

- Comunas de Sucursal

Request:

{
  "query": "{
     sucursals_neighborhoods {
        id
        comuneId
        cityId
        sucursalId
        businessUnit
        updatedAt
        createdAt
      }
    }"
}

Response:

{
  "data": {
    "sucursals_neighborhoods": [
       {
        "id": 1,
        "comuneId":22,
        "cityId":24,
        "sucursalId":8,
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "updatedAt": "2020-09-16T23:08:49.547",
        "createdAt": "2020-09-16T23:08:49.547+00:00"
      },
      {
        "id": 2,
        "comuneId":22,
        "cityId":24,
        "sucursalId":8,
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "updatedAt": "2020-09-16T23:08:49.547",
        "createdAt": "2020-09-16T23:08:49.547+00:00"
      }]
}

Puede consultar la relación entre comunas y sucursales de los proveedores en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador del la relación entre la sucursal y la comuna.
comuneId int Identificador de la Comuna.
cityId int Identificador de la Ciudad.
sucursalId int Identificador de la Sucursal.
businessUnit UUID Identificador de la Unidad de negocio.
updatedAt timestamp Fecha de ultima modificación.
createdAt timestamp Fecha de creación.

- Servicios de Sucursal

Request:

{
  "query": "{
     sucursals_services {
        id
        serviceId
        sucursalId
        businessUnit
        updatedAt
        createdAt
      }
    }"
}

Response:

{
  "data": {
    "sucursals_services": [
       {
        "id": 1,
        "serviceId":22,
        "sucursalId":8,
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "updatedAt": "2020-09-16T23:08:49.547",
        "createdAt": "2020-09-16T23:08:49.547+00:00"
      },
      {
        "id": 2,
        "serviceId":22,
        "sucursalId":8,
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "updatedAt": "2020-09-16T23:08:49.547",
        "createdAt": "2020-09-16T23:08:49.547+00:00"
      }]
}

Puede consultar la relación entre servicios y sucursales de los proveedores en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador del la relación entre la sucursal y los servicios.
serviceId int Identificador de la Definición de servicios.
sucursalId int Identificador de la Sucursal.
businessUnit UUID Identificador de la Unidad de negocio.
updatedAt timestamp Fecha de ultima modificación.
createdAt timestamp Fecha de creación.

- Países

Request:

{
  "query": "{  
    countries {
      id
      name
      tenantId
      createdAt
      updatedAt
    }
  }"
}

Response:

{
  "data": {
    "countries": [
      {
        "id": 32,
        "name": "Chile",
        "tenantId": "adsssfc8-6679-11eb-ae93-0242ac130002",
        "createdAt": "2022-04-07T21:19:35.982161+00:00",
        "updatedAt": "2023-04-17T15:56:58.784037+00:00"
      },
      {
        "id": 33,
        "name": "Colombia",
        "tenantId": "afdfggfc8-6679-11eb-ae93-0242ac130002",
        "createdAt": "2022-04-07T21:19:35.982161+00:00",
        "updatedAt": "2023-04-17T15:56:58.784037+00:00"
      },
      {
        "id": 34,
        "name": "Venezuela",
        "tenantId": "afe55c8-6679-11eb-ae93-0242ac130002",
        "createdAt": "2022-04-07T21:19:35.982161+00:00",
        "updatedAt": "2023-04-17T15:56:58.784037+00:00"
      }
    ]
  }
}

Puede consultar los países en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador del país.
name string Nombre del país.
tenantId UUID Identificador del Tenant.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de última modificación.

- Ciudades

Request:

{
  "query": "{  
    cities {
      id
      name
      countryId
      tenantId
      createdAt
      updatedAt
    }
  }"
}

Response:

{
  "data": {
    "cities": [
      {
        "id": 122,
        "name": "Region Metropolitana",
        "countryId": 1,
        "tenantId": "afe7fddc8-6679-11eb-ae93-0242ac130002",
        "createdAt": "2022-04-07T21:19:35.982161+00:00",
        "updatedAt": "2023-04-17T15:56:58.784037+00:00"
      },
      {
        "id": 123,
        "name": "Zona I",
        "countryId": 1,
        "tenantId": "afe7fddc8-6679-11eb-ae93-0242ac130002",
        "createdAt": "2022-04-07T21:19:35.982161+00:00",
        "updatedAt": "2023-04-17T15:56:58.784037+00:00"
      },
      {
        "id": 124,
        "name": "Valparaiso",
        "countryId": 1,
        "tenantId": "afe7fddc8-6679-11eb-ae93-0242ac130002",
        "createdAt": "2022-04-07T21:19:35.982161+00:00",
        "updatedAt": "2023-04-17T15:56:58.784037+00:00"
      }
    ]
  }
}

Puede consultar las ciudades en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador de la ciudad.
name string Nombre de la ciudad.
countryId int Identificador del País.
tenantId UUID Identificador del Tenant.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de última modificación.

- Comunas

Request:

{
  "query": "{  
    comunes {
      id
      name
      cityId
      tenantId
      createdAt
      updatedAt
    }
  }"
}

Response:

{
  "data": {
    "comunes": [
      {
        "id": 382,
        "name": "Cerro Navia",
        "cityId": 100,
        "tenantId": "afpacfc8-6679-11eb-ae93-0242ac132202",
        "createdAt": "2022-04-07T21:19:35.982161+00:00",
        "updatedAt": "2023-04-17T15:56:58.784037+00:00"
      },
      {
        "id": 383,
        "name": "Calera De Tango",
        "cityId": 100,
        "tenantId": "afpacfc8-6679-11eb-ae93-0242ac132202",
        "createdAt": "2022-04-07T21:19:35.982161+00:00",
        "updatedAt": "2023-04-17T15:56:58.784037+00:00"
      },
      {
        "id": 384,
        "name": "El Bosque",
        "cityId": 100,
        "tenantId": "afpacfc8-6679-11eb-ae93-0242ac132202",
        "createdAt": "2022-04-07T21:19:35.982161+00:00",
        "updatedAt": "2023-04-17T15:56:58.784037+00:00"
      }
    ]
  }
}

Puede consultar las comunas en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador de la comuna.
name string Nombre de la comuna.
cityId int Identificador de la Ciudad.
tenantId UUID Identificador del Tenant.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de última modificación.

- Servicios

Request:

{
  "query": "{  
    services {
      id
      businessUnit
      caseId
      comunaId
      comunaName
      costLines
      customerId
      initialPrice
      isExpress
      professionalId
      sucursalId
      providerId
      serviceTypeId
      assignmentManual
      serviceOrigin         
      serviceOriginLatitude 
      serviceOriginLongitude
      serviceDestination    
      serviceDestinationLatitude 
      serviceDestinationLongitude
      details
      addressComplement
      executionTime
      colorSLA
      incidence
      isBudget
      reasonCancellation
      reasonClosedService
      state
      timeSLA
      desiredDate
      acceptedDate
      cancellationDate
      realStartDate
      realFinishDate
      rejectedDate
      rescheduleDate
      usernameReschedule
      transferStartDate
      bookingDate
      isAccepted
      isRejected
      usernameManualAssignment
      detailsIncidence
      detailsCancellation
      manualAssignmentDate
      assignmentDate
      conclusionDate
      creationDate
      professionalOnTheWayDate
      scheduleDate
      serviceStatus
      startedDate
      plannedStartDateTime
      plannedFinishDateTime
      professionalCost
      createdAt
      updatedAt
      emergencyService
      planId
      subscriptionPlanId
      servicePurchased
      entryChannel
      serviceDeleted
      bookingParentId
      usernameCreation
      typeServices
      eventTimestamp
    }
  }"
}

Response:

{
  "data": {
    "services": [
      {
                "id": 123456,
                "businessUnit": "98541765-87e7-44c8-9598-89c536330bd4",
                "caseId": 1000000001,
                "comunaId": 1771,
                "comunaName": "Santiago Centro",
                "costLines": "Servicio",
                "customerId": 1234,
                "initialPrice": "0",
                "isExpress": "false",
                "professionalId": null,
                "providerId": null,
                "sucursalId": 91,
                "serviceTypeId": 291,
                "assignmentManual": false,
                "serviceOrigin": "Santiago, Región Metropolitana, Chile",         
                "serviceOriginLatitude": "-33.4452217", 
                "serviceOriginLongitude": "-70.6573657",
                "serviceDestination": "Calama, Antofagasta, Chile",    
                "serviceDestinationLatitude": "-22.4543923", 
                "serviceDestinationLongitude": "-68.9293819",
                "details":"Ingresa la cantidad: 2",
                "addressComplement":"calle 41A",
                "executionTime": 90,
                "colorSLA": null,
                "incidence": null,
                "isBudget": false,
                "reasonCancellation": null,
                "reasonClosedService": null,
                "state": "10",
                "timeSLA": null,
                "desiredDate": null,
                "acceptedDate": null,
                "cancellationDate": null,
                "realStartDate": null,
                "realFinishDate": null,
                "rejectedDate": null,
                "rescheduleDate": null,
                "usernameReschedule": null,
                "transferStartDate": null,
                "bookingDate": "2022-03-07 14:05",
                "isAccepted": false,
                "isRejected": false,
                "usernameManualAssignment": null,
                "detailsIncidence": null,
                "detailsCancellation": null,
                "manualAssignmentDate": null,
                "assignmentDate": null,
                "conclusionDate": null,
                "creationDate": "2022-03-07 17:10:01",
                "professionalOnTheWayDate": null,
                "scheduleDate": null,
                "serviceStatus": "SCHEDULED",
                "startedDate": null,
                "plannedStartDateTime": "2022-03-07 14:05",
                "plannedFinishDateTime": "2022-03-07 15:05",
                "professionalCost": 0,
                "createdAt": "2022-03-07T17:10:01.508+00:00",
                "updatedAt": "2022-09-15T20:29:22.862117+00:00",
                "planId": 695195,
                "emergencyService": false,
                "subscriptionPlanId": null,
                "servicePurchased": false,
                "entryChannel": "Magento",
                "serviceDeleted": false,
                "bookingParentId":11223 ,
                "usernameCreation":11980 ,
                "typeServices": "INMEDIATO" ,
                "eventTimestamp": "2025-09-29 11:24:00.000 -0300"
            },
            {
                "id": 12345,
                "businessUnit": "98541765-87e7-44c8-9598-89c536330bd4",
                "caseId": 10000000002,
                "comunaId": 1771,
                "comunaName": "Santiago Centro",
                "costLines": "Servicio",
                "customerId": 49924,
                "initialPrice": "0",
                "isExpress": "false",
                "professionalId": 567,
                "providerId": 51,
                "sucursalId": null,
                "serviceTypeId": 582,
                "assignmentManual": true,
                "serviceOrigin": "Santiago, Región Metropolitana, Chile",         
                "serviceOriginLatitude": "-33.4462658", 
                "serviceOriginLongitude": "-70.6606554",
                "serviceDestination": null,    
                "serviceDestinationLatitude": null, 
                "serviceDestinationLongitude": null,
                "details":"Ingresa la cantidad: 2 / Observaciones: Riesgo de ejecucion",
                "addressComplement":"22",
                "executionTime": 30,
                "colorSLA": null,
                "incidence": null,
                "isBudget": false,
                "reasonCancellation": null,
                "reasonClosedService": null,
                "state": "1",
                "timeSLA": null,
                "desiredDate": null,
                "acceptedDate": "2022-05-12 21:47:27",
                "cancellationDate": null,
                "realStartDate": null,
                "realFinishDate": null,
                "rejectedDate": null,
                "rescheduleDate": null,
                "usernameReschedule": null,
                "transferStartDate": null,
                "bookingDate": "2022-05-12 21:46:00",
                "isAccepted": true,
                "isRejected": false,
                "usernameManualAssignment": null,
                "detailsIncidence": null,
                "detailsCancellation": null,
                "manualAssignmentDate": "2022-05-12 21:47:27",
                "assignmentDate": "2022-05-12 21:47:27",
                "conclusionDate": null,
                "creationDate": "2022-05-12 21:46:48",
                "professionalOnTheWayDate": null,
                "scheduleDate": "2022-05-12 21:47:27",
                "serviceStatus": "ACCEPTED",
                "startedDate": null,
                "plannedStartDateTime": "2022-05-12 17:46",
                "plannedFinishDateTime": "2022-05-12 19:46",
                "professionalCost": 0,
                "createdAt": "2022-05-12T21:46:48.622+00:00",
                "updatedAt": "2022-09-15T20:29:22.869567+00:00",
                "emergencyService": false,
                "planId": 132164,
                "subscriptionPlanId": null,
                "servicePurchased": false,
                "entryChannel": "Backoffice",
                "serviceDeleted": false,
                "bookingParentId":11223 ,
                "usernameCreation":11980 ,
                "typeServices": "PROGRAMADO" ,
                "eventTimestamp": "2025-09-29 11:24:00.000 -0300"
            }
    ]
}

Puede consultar los servicios en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador del servicio.
businessUnit UUID Identificador único de la Unidad de negocio.
caseId int Identificador único del Caso bajo el que se creó el servicio.
comunaId int Identificador único de la Comuna (N3) en la que se solicitó el servicio.
comunaName string Nombre de la comuna (N3) en la que se solicitó el servicio.
costLines string Linea de costo.
customerId int Identificador único del Cliente bajo el cual se solicitó el servicio.
sucursalId int Identificador de la sucursal responsable de proporcionar el servicio solicitado.
initialPrice string Precio inicial
isExpress boolean Especifica si el servicio es express.
professionalId int Identificador único del Profesional.
providerId int Identificador único del Proveedor.
serviceTypeId int Identificador de la definición del servicio.
assignmentManual boolean Especifica si el servicio ha sido asignado manualmente.
serviceOrigin string Dirección de origen del servicio.
serviceOriginLatitude double Latitud del origen del servicio.
serviceOriginLongitude double Longitud del origen del servicio.
serviceDestination string Dirección de destino del servicio.
serviceDestinationLatitude double Latitud del destino del servicio.
serviceDestinationLongitude double Longitud del destino del servicio.
details string Atributos distintivos del servicio a realizar.
addressComplement string Datos adicionales que permiten ubicar la dirección del servicio de forma exacta.
executionTime int Tiempo de ejecucion del servicio.
colorSLA int Color sla
incidence string Incidencia.
isBudget boolean Indica si el servicio es tipo presupuesto.
reasonCancellation string Razón de cancelación del servicio.
reasonClosedService string Razón de cierre del servicio.
state int Estado actual del servicio.
timeSLA int Tiempo sla.
desiredDate timestamp Fecha deseada por el cliente para la realización del servicio.
acceptedDate timestamp Fecha de aceptación del servicio por el proveedor o profesional.
cancellationDate timestamp Fecha de cancelación del servicio.
realStartDate timestamp Fecha de inicio del servicio.
realFinishDate timestamp Fecha de conclusión del servicio.
rejectedDate timestamp Fecha de rechazo de la oferta.
rescheduleDate timestamp Fecha de creación del servicio.
usernameReschedule string Nombre de usuario que reprogramó.
transferStartDate timestamp Fecha de inicio de traslado.
bookingDate timestamp Fecha del servicio.
isAccepted string Valor lógico sobre aceptación del servicio.
isRejected string Valor lógico sobre el rechazo del servicio.
usernameManualAssignment string Nombre de usuario que hizo la asignación manual.
detailsIncidence string Detalles de la incidencia.
detailsCancellation string Otros detalles de la cancelación.
manualAssignmentDate timestamp Fecha de asignación manual.
assignmentDate timestamp Fecha de asignación.
conclusionDate timestamp Fecha real de termino.
creationDate timestamp Fecha de creación del servicio.
professionalOnTheWayDate timestamp Fecha de la marca del estado en camino.
scheduleDate timestamp Fecha en la que se agendó la realización del servicio.
serviceStatus string Estado del servicio.
startedDate timestamp Fecha real de inicio.
plannedStartDateTime timestamp Fecha planificada de inicio.
plannedFinishDateTime timestamp Fecha planificada de finalización.
professionalCost float Costo del profesional
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.
emergencyService boolean Si un servicio es de emergencia.
planId int Identificador del Plan asociados al servicio.
subscriptionPlanId int Identificador de la suscripción asociada al plan.
servicePurchased boolean Si se compro un plan o no.
entryChannel string Indica la fuente u origen desde donde se agregó el servicio.
serviceDeleted boolean Un indicador que marca si el servicio está eliminado o no.
bookingParentId int Servicio predecesor
usernameCreation int ID de usuario que crea el servicio
typeServices string Tipo de servicio (programado, inmediato)
eventTimestamp timestamp Fecha de ocurrencia del evento

- Total de ordenes de pago del servicio

Request:

{
  "query": "{  
      services_order {
        id
        discountAmount
        subtotal
        paymentAmount
        businessUnit
        createdAt
        updatedAt
      }
  }"
}

Response:

{
  "data": {
    "services_order": [
       {
        "id": 193483,
        "discountAmount": 0,
        "subtotal": 149997,
        "paymentAmount": 149997,
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "createdAt": "2022-12-26T14:00:27.449+00:00",
        "updatedAt": "2023-01-06T11:23:19.056007+00:00"
      },
      {
        "id": 194683,
        "discountAmount": 0,
        "subtotal": 0,
        "paymentAmount": 0,
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "createdAt": "2023-01-09T17:25:16.83+00:00",
        "updatedAt": "2023-01-09T17:25:16.965921+00:00"
      }
    ]
}

Puede consultar el total de ordenes de pago del servicio en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador del servicio.
discountAmount float Monto de descuento.
subtotal float Subtotal
paymentAmount float Monto pagado.
businessUnit UUID Identificador único de la Unidad de negocio.
createdAt timestamp Fecha de creación del servicio.
updatedAt timestamp Fecha de ultima modificación.

- Topes

Request:

{
  "query": "{
    maximum_coverages {
        id    
        businessUnit       
        coverageId   
        unitCode           
        behavior           
        scope      
        currency
        restrictive   
        periodicity
        renovation
        createdAt    
        updatedAt        
      }
    }"
}       

Response:

{
  "data": {
    "maximum_coverages": [
      {
        "id": 20,            
        "businessUnit": "84572164-bd92-4116-a965-abe845721643",
        "coverageId": 20,
        "unitCode": "unit-amount",   
        "behavior": "Monto máximo",
        "scope": 20,
        "currency": "4-currency",
        "restrictive": true,
        "periodicity": "Anual",
        "renovation": "Calendario",
        "createdAt": "2022-11-30 10:53:27.501688-05",
        "updatedAt": "2022-12-12 12:07:06.858828-05"
      },
      {
        "id": 22,
        "businessUnit": "84572164-bd92-4116-a965-abe845721643",
        "coverageId": 20,
        "unitCode": "distance-Km",   
        "behavior": "Monto máximo",
        "scope": 200,
        "currency": null,
        "restrictive": true,
        "periodicity": "Mensual",
        "renovation": "Fecha vigencia",
        "createdAt": "2022-11-30 10:53:27.501688-05",
        "updatedAt": "2022-12-12 12:07:06.858828-05"
      },
      {
        "id": 23,   
        "businessUnit": "bfda101c-67fc-459b-aa54-bfe94ed98ec4",
        "coverageId": 22,
        "unitCode": "unit-event",   
        "behavior": "Cantidad de Eventos",
        "scope": 10,
        "currency": null,
        "restrictive": false,
        "periodicity": "Mensual",
        "renovation": "Fecha vigencia",
        "createdAt": "2022-12-12 07:15:49.177069-05",
        "updatedAt": "2022-12-27 10:09:02.472-05"
      }]
}

Puede consultar los topes de los planes en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador del tope.
businessUnit UUID Identificador de la Unidad de negocio.
coverageId int Este campo indica el ID de la cobertura asociado al plan.
unitCode string Este campo indica el código de la unidad del tope asociado a la cobertura.
behavior string Este campo indica el comportamiento del tope si es que aplica. Sirve por ejemplo para saber si el monto se va a comportar como monto máximo o como monto diario. El primero compara el costo total del servicio mientras que el segundo divide el costo total del servicio por la cantidad de días que se está pidiendo.
scope double Este campo indica el valor valor número del tope.
currency string Este campo indica el ID de la moneda del tope. Aplica solamente para los topes de unidad Monto.
restrictive boolean Este campo es True si el tope es restrictivo y False en caso de que no lo sea. Un tope restrictivo implica que cobrará excedente si se sobrepasa de dicho límite. Por el otro lado un tope no restrictivo, será solamente informativo para poder identificar suscripciones abusivas.
periodicity string Este campo detalla la periodicidad de renovación del tope. Las opciones son: Por suscripción, Evento, Diario, Semanal, Mensual o Anual.
renovation string Este campo indica si la periodicidad mensual o anual es a calendario o a fecha suscripción. Por ejemplo, una periodicidad anual de calendario, sería que el tope se renueva el 1 de enero del siguiente año. Por el otro lado, una periodicidad anual de vigencia sería el tope se renueva un año después de la fecha inicio de vigencia.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.

- Planes

Request:

{
  "query": "{
    plans {
          id
          businessUnit
          planName
          planExternalId
          planActivate
          validity
          definiteMatter
          genericPlan
          contract
          contractorIds
          contractors
          planStartDate
          planEndDate
          planExternalVersionId
          lastVersionPlan
          createdAt
          updatedAt        
      }
    }"
}       

Response:

{
  "data": {
    "plans": [
      {
        "id": 12,
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "planName": "Plan 2511",
        "planExternalId": "2511112021",
        "planActivate": true,
        "validity": false,
        "definiteMatter": false,
        "genericPlan": false,
        "contract": "C-MESO0001",
        "contractorIds": "IKEMX111-8LBX,IKEMX111-F9TS",
        "contractors": "ContratanteIKEMXWYNQ,ContratanteIKEMXXWLG",
        "planStartDate": "2021-11-25",
        "planEndDate": "2021-12-11",
        "planExternalVersionId": "WS-2",
        "lastVersionPlan": true,
        "createdAt": "2021-11-25T18:08:12.210299+00:00",
        "updatedAt": "2021-11-25T18:10:49.336+00:00"
      },
      {
        "id": 13,
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "planName": "plan para editar",
        "planExternalId": "05122011",
        "planActivate": true,
        "validity": false,
        "definiteMatter": false,
        "genericPlan": false,
        "contract": "01PRUEBA SEP",
        "contractorIds": "IKEMX122-MIFZ",
        "contractors": "ContratanteIKEMXTOPM",
        "planStartDate": "2021-11-25",
        "planEndDate": "2021-12-11",
        "planExternalVersionId": "WS-2",
        "lastVersionPlan": true,
        "createdAt": "2021-11-25T18:22:36.93583+00:00",
        "updatedAt": "2021-11-29T19:57:11.79+00:00"
      },
      {
        "id": 15,
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "planName": "Plan prueba maya",
        "planExternalId": "53452",
        "planActivate": true,
        "validity": false,
        "definiteMatter": false,
        "genericPlan": false,
        "contract": "PRUEBA2 SEPTIEM",
        "contractorIds": "IKEMX122-ES93,IKEMX122-9DE6",
        "contractors": "ContratanteIKEMXYSXN,ContratanteIKEMXDNPU",
        "planStartDate": "2021-12-07",
        "planEndDate": "2021-12-08",
        "planExternalVersionId": "WS-2",
        "lastVersionPlan": true,
        "createdAt": "2021-12-07T21:01:48.154538+00:00",
        "updatedAt": "2021-12-13T14:46:10.282+00:00"
      }]
}

Puede consultar los topes de los planes en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador del plan.
businessUnit UUID Identificador de la Unidad de negocio.
planName string Este campo indica el nombre del plan.
planExternalId string Este campo indica el ID externo digitado al momento de parametrizar el plan.
planActivate boolean Este campo refleja si el plan está activo o inactivo.Un plan inactivo no estará disponible al momento de asociar un plan a una suscripción. En este campo True significa Activo y False significa Inactivo.
validity boolean Este campo refleja si el plan está vigente o no vigente. Un plan está vigente si está en el rango de fecha inicio y fecha fin. Un plan No Vigente no estará disponible al momento de asociar un plan a una suscripción.En este campo True significa Vigente y False significa No Vigente.
definiteMatter boolean Este campo indica si este plan requiere materias específicas para poder pedir un servicio o el servicio puede ser realizado en cualquier materia. De esta forma, si la materia es definida solamente un cliente solo va a poder servicios asociados a este plan para las materias que tenga asociado a su suscripción. Por ejemplo, si un cliente tiene un plan con materia definida y tiene asociado en su suscripción los autos de patente GOFD34 y FA49QF, solamente va a poder pedir servicios para esos dos autos.
genericPlan boolean Este campo indica si esta plan es el plan genérico de la unidad de negocios o no. Solamente puede haber un plan genérico por unidad de negocio y éste es el plan que se asocia automáticamente a los clientes fuera base.
contract string Este campo indica el ID externo del contrato asociado al plan.
contractorIds string Este campo indica los IDs externos de los contratantes asociados al plan.
contractors string Este campo indica los nombres de los contratantes externos asociados al plan.
planStartDate date Este campo indica la fecha inicio de disponibilidad del plan como producto. Es decir, desde esta fecha se puede asociar este plan a una suscripción.
planEndDate date Este campo indica la fecha fin de disponibilidad del plan como producto. Es decir, hasta esta fecha se puede asociar este plan a una suscripción. Si este campo está vacío, quiere decir que la fecha fin es indefinida.
planExternalVersionId string Indica el ID externo de la versión del plan.
lastVersionPlan boolean Este campo binario es True si este plan es la última versión y false en caso contrario.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima

- Contratantes

Request:

{
  "query": "{
    contractors {
          id
          businessUnit
          contractorExternalId
          tenant
          contractorName
          businessName
          contractorType
          branch
          identificationType
          identificationNumber
          regionId
          communeId
          contractorAddress
          status
          createdAt
          updatedAt
      }
    }"
}       

Response:

{
  "data": {
    "contractors": [
      {
        "id": 12,
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "contractorExternalId": "CT2322",
        "tenant": "6f3edb6c-5ed9-11ee-8c99-0242ac120002",
        "contractorName": "Jorge Malla",
        "businessName": "Amazon Inc",
        "contractorType": "Automotora",
        "branch": "Amazon",
        "identificationType": "PASAPORTE",
        "identificationNumber": "434343332",
        "regionId": 122,
        "communeId": 2323,
        "contractorAddress": "Texas, USA",
        "status": true,
        "createdAt": "2022-11-25T18:08:12.210299+00:00",
        "updatedAt": "2022-11-25T18:10:49.336+00:00"
      },
      {
        "id": 122,
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "contractorExternalId": "ADE2323",
        "tenant": "6f3edb6c-5ed9-11ee-8c99-0242ac120002",
        "contractorName": "Manuel Diaz",
        "businessName": "ABCDIN",
        "contractorType": "Automotora",
        "branch": "Distribuidora de Industrias Na",
        "identificationType": "PASAPORTE",
        "identificationNumber": "64546566",
        "regionId": 32,
        "communeId": 4343,
        "contractorAddress": "CERRO COLORADO 5240",
        "status": true,
        "createdAt": "2022-11-25T18:08:12.210299+00:00",
        "updatedAt": "2022-11-25T18:10:49.336+00:00"
      },
      {
        "id": 322,
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "contractorExternalId": "AQE423",
        "tenant": "6f3edb6c-5ed9-11ee-8c99-0242ac120002",
        "contractorName": "Orlando Reyes",
        "businessName": "ITAU DENTAL",
        "contractorType": "Automotora",
        "branch": "ITAU",
        "identificationType": "RUT",
        "identificationNumber": "11111111-1",
        "regionId": 656,
        "communeId": 45,
        "contractorAddress": "LOS CONQUISTADORES 1730",
        "status": true,
        "createdAt": "2022-11-25T18:08:12.210299+00:00",
        "updatedAt": "2022-11-25T18:10:49.336+00:00"
      },
    ]
}

Puede consultar los contratantes en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador del contratante.
businessUnit UUID Identificador de la Unidad de negocio.
contractorExternalId string ID externo del contratante.
tenant UUID Identificador del tenant.
contractorName string Nombre del contratante.
businessName string Nombre legal del contratante.
contractorType string Tipo de contratante.
branch string Negocio del contratante.
identificationType string Tipo de identificación del contratante.
identificationNumber string Número de identificación del contratante.
regionId int ID N2 configuración geográfica (región, estado).
communeId int ID N3 configuración geográfica (comuna, municipio).
contractorAddress string Dirección del contratante.
status boolean Activo: true / Inactivo: False.
createdAt timestamp Fecha de creación del contratante.
updatedAt timestamp Fecha de última actualización del contratante.

- Suscripciones

Request:

{
  "query": "{
    subscriptions {
      id
      businessUnit
      subscriptionExternalId
      titularId
      status
      abusiveCoverageStatus
      createdAt
      updatedAt
    }
  }"
}

Response:

{
  "data": {
    "subscriptions": [
      {
        "id": 23,
        "businessUnit": "84572164-bd92-4116-a965-abe845721643",
        "subscriptionExternalId": "OS-2",
        "titularId": 4,
        "status": true,
        "abusiveCoverageStatus": "Activa",
        "createdAt": "2022-11-30 10:53:27.501688-05",
        "updatedAt": "2022-12-12 12:07:06.858828-05"
      },
      {
        "id": 188,
        "businessUnit": "84572164-bd92-4116-a965-abe845721643",
        "subscriptionExternalId": "SDSD-10",
        "titularId": 4212,
        "status": true,
        "abusiveCoverageStatus": "Inactiva",
        "createdAt": "2022-11-30 10:53:27.501688-05",
        "updatedAt": "2022-12-12 12:07:06.858828-05"
      },
      {
        "id": 188,
        "businessUnit": "84572164-bd92-4116-a965-abe845721643",
        "subscriptionExternalId": "SODNDO",
        "titularId": 2323,
        "status": true,
        "abusiveCoverageStatus": "En evaluacion",
        "createdAt": "2022-11-30 10:53:27.501688-05",
        "updatedAt": "2022-12-12 12:07:06.858828-05"
      }]
}

Puede consultar las suscripciones en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador de la suscripción.
businessUnit UUID Identificador de la Unidad de negocio.
subscriptionExternalId string Identificador externo de la suscripción.
titularId int Identificador del titular de la suscripción.
status boolean Activo: true / Inactivo: False.
abusiveCoverageStatus string Este campo indica el estado de la suscripción, el cual se asigna a partir de la mayor jerarquía de los estados de las coberturas de sus planes suscritos. El orden de jerarquía es: En evaluación, Posible Abuso, Inactiva y Activa. De esta forma, si existe al menos una cobertura en estado "En evaluación", entonces la suscripción tendrá ese estado.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.

- Planes suscritos

Request:

{
  "query": "{
    plan_subscriptions {
      id
      businessUnit
      planExternalId
      subscriptionExternalId
      contractorId
      abusiveCoverageStatus
      beneficiaryIds
      materialIds
      startDate
      endDate
      prime
      purchaseChannel
      status
      validity
      createdAt
      updatedAt
    }
  }"
}

Response:

{
  "data": {
    "plan_subscriptions": [
      {
        "id": 23,
        "businessUnit": "84572164-bd92-4116-a965-abe845721643",
        "planExternalId": "DD-1",
        "subscriptionExternalId": "FLSD-212",
        "contractorId": 4545,
        "abusiveCoverageStatus": "Activa",
        "beneficiaryIds": "4",
        "materialIds": "165",
        "startDate": "2021-10-01",
        "endDate": "2022-10-01",
        "prime": 200,
        "purchaseChannel": "Cliente fuera de base",
        "status": true,
        "validity": true,
        "createdAt": "2022-11-30 10:53:27.501688-05",
        "updatedAt": "2022-12-12 12:07:06.858828-05"
      },
      {
        "id": 45,
        "businessUnit": "84572164-bd92-4116-a965-abe845721643",
        "planExternalId": "AWE-2",
        "subscriptionExternalId": "PO-233",
        "contractorId": 234,
        "abusiveCoverageStatus": "Inactiva",
        "beneficiaryIds": "423,34",
        "materialIds": "165,545",
        "startDate": "2021-10-01",
        "endDate": null,
        "prime": 343,
        "purchaseChannel": "Online",
        "status": true,
        "validity": true,
        "createdAt": "2022-11-30 10:53:27.501688-05",
        "updatedAt": "2022-12-12 12:07:06.858828-05"
      },
      {
        "id": 65,
        "businessUnit": "84572164-bd92-4116-a965-abe845721643",
        "planExternalId": "ROF-22",
        "subscriptionExternalId": "FWW1",
        "contractorId": 122,
        "abusiveCoverageStatus": "En evaluacion",
        "beneficiaryIds": "455",
        "materialIds": "545",
        "startDate": "2023-10-01",
        "endDate": null,
        "prime": 432,
        "purchaseChannel": "Portal Venta Planes",
        "status": true,
        "validity": true,
        "createdAt": "2022-11-30 10:53:27.501688-05",
        "updatedAt": "2022-12-12 12:07:06.858828-05"
      }]
}

Puede consultar los planes suscritos en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador del plan suscrito.
businessUnit UUID Identificador de la Unidad de negocio.
planExternalId string Identificador externo del plan.
subscriptionExternalId string Identificador externo de la suscripción.
contractorId int Identificador del contratante.
abusiveCoverageStatus string Este campo indica el estado del plan suscrito, el cual se asigna a partir de la mayor jerarquía de los estados de las coberturas de sus planes. El orden de jerarquía es: En evaluación, Posible Abuso, Inactiva y Activa. De esta forma, si existe al menos una cobertura en estado "En evaluación", entonces el plan suscrito tendrá ese estado.
beneficiaryIds string lista de identificadores de los beneficiarios del plan suscrito.
materialIds string lista de identificadores de las materias (inmueble, vehículo o mascota) asociadas al plan suscrito.
startDate date Fecha de inicio del plan suscrito.
endDate date Fecha de fin del plan suscrito.
prime string Prima.
purchaseChannel string Este campo indica el canal por donde se adquirió el plan.
status boolean Activo: true / Inactivo: False.
validity boolean Vigencia del plan suscrito. "true" si la fecha actual está en el rango de fechas de vigencia del plan suscrito.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.

- Siniestralidad

Request:

{
  "query": "{
    coverage_balances {
        id
        businessUnit
        subscriptionId
        planId
        planSubscriptionId
        maximumCoverageId
        coverageId
        coverageName
        coverageStatus
        unitCode
        consumed
        available
        limitAmount
        restrictive
        behavior
        periodicity
        createdAt
        updatedAt
      }
    }"
}

Response:

{
  "data": {
    "coverage_balances": [
      {
        "id": 23,
        "businessUnit": "84572164-bd92-4116-a965-abe845721643",
        "subscriptionId": 40,
        "planId": 399,
        "planSubscriptionId": 203,
        "maximumCoverageId": 323,
        "coverageId": 212,
        "coverageName": "Full 24/7",
        "coverageStatus": "Activa",
        "unitCode": "distance-Km",
        "consumed": 200,
        "available": 1000,
        "limitAmount": 1200,
        "restrictive": true,
        "behavior": "Monto máximo",
        "periodicity": "Mensual",
        "createdAt": "2022-11-30 10:53:27.501688-05",
        "updatedAt": "2022-12-12 12:07:06.858828-05"
      },
      {
        "id": 24,
        "businessUnit": "84572164-bd92-4116-a965-abe845721643",
        "subscriptionId": 43,
        "planId": 39,
        "planSubscriptionId": 20,
        "maximumCoverageId": 32,
        "coverageId": 21,
        "coverageName": "Full 24/7",
        "coverageStatus": "En evaluación",
        "unitCode": "unit-amount",
        "consumed": 0,
        "available": 30000,
        "limitAmount": 30000,
        "restrictive": true,
        "behavior": "Monto máximo",
        "periodicity": "Diario",
        "createdAt": "2022-11-30 10:53:27.501688-05",
        "updatedAt": "2022-12-12 12:07:06.858828-05"
      },
      {
        "id": 25,
        "businessUnit": "84572164-bd92-4116-a965-abe845721643",
        "subscriptionId": 436,
        "planId": 394,
        "planSubscriptionId": 203,
        "maximumCoverageId": 326,
        "coverageId": 216,
        "coverageName": "Full 24/7",
        "coverageStatus": "Inactiva",
        "unitCode": "unit-event",
        "consumed": 0,
        "available": 10,
        "limitAmount": 10,
        "restrictive": false,
        "behavior": "Cantidad de Eventos",
        "periodicity": "Anual",
        "createdAt": "2022-11-30 10:53:27.501688-05",
        "updatedAt": "2022-12-12 12:07:06.858828-05"
      }]
}

Puede consultar las siniestralidades en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador de la siniestralidad.
businessUnit UUID Identificador de la Unidad de negocio.
subscriptionId int Este campo indica el ID de la suscripción.
planId int Este campo indica el ID del plan.
planSubscriptionId int Este campo indica el ID del plan suscrito.
maximumCoverageId int Este campo indica el ID del tope.
coverageId int Este campo indica el ID de la cobertura.
coverageName string Este campo indica el nombre de la cobertura.
coverageStatus string Este campo indica el estado del tope: En evaluación, Posible Abuso, Inactiva y Activa.
unitCode string Este campo indica el código de la unidad del tope.
consumed int Este campo indica la cantidad consumida del tope de todos los servicios que viven en ésta cobertura.
available int Este campo indica la cantidad disponible del tope de todos los servicios que viven en ésta cobertura.
limitAmount int Este campo indica la cantidad limite del tope.
restrictive boolean Este campo es True si el tope es restrictivo y False en caso de que no lo sea. Un tope restrictivo implica que cobrará excedente si se sobrepasa de dicho límite. Por el otro lado un tope no restrictivo, será solamente informativo para poder identificar suscripciones abusivas.
behavior string Este campo indica el comportamiento del tope si es que aplica. Sirve por ejemplo para saber si el monto se va a comportar como monto máximo o como monto diario. El primero compara el costo total del servicio mientras que el segundo divide el costo total del servicio por la cantidad de días que se está pidiendo.
periodicity string Este campo detalla la periodicidad de renovación del tope. Las opciones son: Por suscripción, Evento, Diario, Semanal, Mensual o Anual.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.

- Consumos de Suscripciones

Request:

{
  "query": "{  
    subscriptions_consumed {
        id
        serviceId
        businessUnit        
        createdAt
        updatedAt
      }
    }"
}

Response:

{
  "data": {
    "subscriptions_consumed": [
      {
        "id": 337,
        "serviceId": 90644,
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "createdAt": "2022-03-10T15:28:24.223+00:00",
        "updatedAt": "2022-03-10T15:28:24.223+00:00"
      },
      {
        "id": 337,
        "serviceId": 91057,
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",        
        "createdAt": "2022-03-10T20:19:54.384+00:00",
        "updatedAt": "2022-03-10T20:19:54.384+00:00"
      },
      {
        "id": 337,
        "serviceId": 91199,
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "createdAt": "2022-03-10T21:50:45.378+00:00",
        "updatedAt": "2022-03-10T21:50:45.378+00:00"
      }]
}

Puede consultar los consumos de las suscripciones en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador de la Suscripción.
serviceId int Identificador del Servicio.
businessUnit UUID Identificador de la Unidad de negocio.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.

- Agrupador de Servicios

Request:

{
  "query": "{
    generic_coverages {
          id
          serviceAggregatorName
          businessUnit
          serviceCategoryId
          materialType
          serviceId
          createdAt
          updatedAt        
      }
    }"
}       

Response:

{
  "data": {
    "generic_coverages": [
       {
        "id": 11,
        "serviceAggregatorName": "Prueba creación",
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "serviceCategoryId": 11837,
        "materialType": "Inmueble",
        "serviceId": 19,
        "createdAt": "2021-07-01T15:14:34.296+00:00",
        "updatedAt": "2021-07-01T15:14:34.296+00:00"
      },
      {
        "id": 2,
        "serviceAggregatorName": "Traslado vehículo",
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "serviceCategoryId": 11837,
        "materialType": "Vehículo",
        "serviceId": 21,
        "createdAt": "2021-06-25T01:24:39.345+00:00",
        "updatedAt": "2021-07-02T01:11:12.757+00:00"
      },
      {
        "id": 6,
        "serviceAggregatorName": "Taxi - SOS",
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "serviceCategoryId": 11841,
        "materialType": "Vehículo",
        "serviceId": 25,
        "createdAt": "2021-06-25T13:34:32.978+00:00",
        "updatedAt": "2021-07-28T16:48:15.411+00:00"
      }]
}

Puede consultar el agrupador de servicios en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador del agrupador de servicios.
serviceAggregatorName string Nombre del agrupador de servicios.
businessUnit UUID Identificador de la Unidad de negocio.
serviceCategoryId int Identificador de la categoría de servicios del agrupador.
materialType string Tipo de materia definida para el agrupador.
serviceId int Identificador de los servicios asociados al agrupador.
createdAt timestamp Fecha de creación del agrupador de servicios.
updatedAt timestamp Fecha de última modificación del agrupador de servicios.

- Coberturas

Request:

{
  "query": "{
    coverages {
          id
          businessUnit
          planId
          coverageName
          serviceCategoryId
          materialTypeId
          serviceIds
          lack
          deductible
          currency
          createdAt
          updatedAt        
      }
    }"
}       

Response:

{
  "data": {
    "coverages": [
      {
        "id": 136,
        "businessUnit": "22c2d28c-251c-11ef-9621-0242ac139997",
        "planId": 118,
        "coverageName": "43214",
        "serviceCategoryId": 30929,
        "materialTypeId ": 2,
        "serviceIds": "187",
        "lack": 0,
        "deductible": 0,
        "currency": null,
        "createdAt": "2022-02-01T18:52:25.589032+00:00",
        "updatedAt": "2022-02-01T18:53:22.639+00:00"
      },
      {
        "id": 164,
        "businessUnit": "81cc8411-bd92-4116-a965-abe38a2b7f40",
        "planId": 144,
        "coverageName": "Cobertura",
        "serviceCategoryId": 27596,
        "materialTypeId ": 1,
        "serviceIds": "187,188",
        "lack": 0,
        "deductible": 0,
        "currency": null,
        "createdAt": "2022-01-18T20:13:42.406+00:00",
        "updatedAt": "2022-03-17T19:06:40+00:00"
      },
      {
        "id": 178,
        "businessUnit": "22c2d28c-251c-11ef-9621-0242ac139997",
        "planId": 156,
        "coverageName": "Cobertura ABC",
        "serviceCategoryId": 11837,
        "materialTypeId ": 3,
        "serviceIds": "187",
        "lack": 0,
        "deductible": 0,
        "currency": null,
        "createdAt": "2022-03-28T15:35:33.735044+00:00",
        "updatedAt": "2022-04-07T20:52:26.185+00:00"
      }]
}

Puede consultar los topes de los planes en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador del tope.
businessUnit UUID Identificador de la Unidad de negocio.
planId int Identificador del plan.
coverageName string Este campo indica el nombre de la cobertura asociado al plan.
serviceCategoryId int Este campo incida el ID de la categoria de servicio asociado a la cobertura.
materialTypeId int Este campo incida el ID del material asociado a la cobertura.
serviceIds string Este campo indica los ID de los servicios asociado a la cobertura.
lack float Cantidad de días del periodo de carencia de los servicios de la cobertura.
deductible float Monto del copago.
currency string Moneda en la que se define el copago de los servicios de la cobertura.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.

- Solicitantes

Request:

{
  "query": "{
    applicants {
          id
          customerId
          businessUnit
          caseId
          applicantName
          applicantLastname
          identificationTypeApplicant
          identificationNumberApplicant
          applicantEmail
          applicantPhoneNumber
          createdAt
          updatedAt
      }
    }"
}       

Response:

{
  "data": {
    "applicants": [
      {
        "id": 12,
        "customerId": 23,
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "caseId": 22,
        "applicantName": "Manuel",
        "applicantLastname": "Lopez",
        "identificationTypeApplicant": "PASAPORTE",
        "identificationNumberApplicant": "2345453232",
        "applicantEmail": "[email protected]",
        "applicantPhoneNumber": "5491124008709",
        "createdAt": "2021-11-25T18:08:12.210299+00:00",
        "updatedAt": "2021-12-13T14:46:10.282+00:00"
      },
      {
        "id": 14,
        "customerId": 24,
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "caseId": 22,
        "applicantName": "Ana",
        "applicantLastname": "Silva",
        "identificationTypeApplicant": "PASAPORTE",
        "identificationNumberApplicant": "53454545443",
        "applicantEmail": "[email protected]",
        "applicantPhoneNumber": "5491124003433", 
        "createdAt": "2021-11-25T18:08:12.210299+00:00",
        "updatedAt": "2021-12-13T14:46:10.282+00:00"
      },
      {
        "id": 12,
        "customerId": 23,
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "caseId": 22,
        "applicantName": "Juan",
        "applicantLastname": "Mendoza",
        "identificationTypeApplicant": "PASAPORTE",
        "identificationNumberApplicant": "86754545434",
        "applicantEmail": "[email protected]",
        "applicantPhoneNumber": "5493424003563", 
        "createdAt": "2021-11-25T18:08:12.210299+00:00",
        "updatedAt": "2021-12-13T14:46:10.282+00:00"
      }]
}

Puede consultar los solicitantes en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador del solicitante.
customerId int Identificador del cliente al cual está asociado el solicitante.
businessUnit UUID Identificador de la Unidad de negocio.
caseId long Identificador del caso al cual está asociado el solicitante.
applicantName string Nombre del solicitante.
applicantLastname string Apellido del solicitante.
identificationTypeApplicant string Tipo de identificación del solicitante.
identificationNumberApplicant string Número identificación del solicitante.
applicantEmail string Correo de contacto adicional.
applicantPhoneNumber string Número telefónico de contacto adicional.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de última modificación.

- Solicitantes IKE México

Request:

{
  "query": "{
    applicants_ike_mex {
          id
          customerId
          businessUnit
          caseId
          applicantName
          applicantLastname
          identificationTypeApplicant
          identificationNumberApplicant
          applicantEmail
          applicantPhoneNumber
          createdAt
          updatedAt
      }
    }"
}       

Response:

{
  "data": {
    "applicants_ike_mex": [
      {
        "id": 12,
        "customerId": 23,
        "businessUnit": "22c2d28c-251c-11ef-9621-0242ac139997",
        "caseId": 22,
        "applicantName": "Manuel",
        "applicantLastname": "Lopez",
        "identificationTypeApplicant": "PASAPORTE",
        "identificationNumberApplicant": "2345453232",
        "applicantEmail": "[email protected]",
        "applicantPhoneNumber": "5491124008709",
        "createdAt": "2021-11-25T18:08:12.210299+00:00",
        "updatedAt": "2021-12-13T14:46:10.282+00:00"
      },
      {
        "id": 14,
        "customerId": 24,
        "businessUnit": "22c2d28c-251c-11ef-9621-0242ac139997",
        "caseId": 22,
        "applicantName": "Ana",
        "applicantLastname": "Silva",
        "identificationTypeApplicant": "PASAPORTE",
        "identificationNumberApplicant": "53454545443",
        "applicantEmail": "[email protected]",
        "applicantPhoneNumber": "5491124003433", 
        "createdAt": "2021-11-25T18:08:12.210299+00:00",
        "updatedAt": "2021-12-13T14:46:10.282+00:00"
      },
      {
        "id": 12,
        "customerId": 23,
        "businessUnit": "22c2d28c-251c-11ef-9621-0242ac139997",
        "caseId": 22,
        "applicantName": "Juan",
        "applicantLastname": "Mendoza",
        "identificationTypeApplicant": "PASAPORTE",
        "identificationNumberApplicant": "86754545434",
        "applicantEmail": "[email protected]",
        "applicantPhoneNumber": "5493424003563", 
        "createdAt": "2021-11-25T18:08:12.210299+00:00",
        "updatedAt": "2021-12-13T14:46:10.282+00:00"
      }]
}

Puede consultar los solicitantes IKE México en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador del solicitante.
customerId int Identificador del cliente al cual está asociado el solicitante.
businessUnit UUID Identificador de la Unidad de negocio.
caseId long Identificador del caso al cual está asociado el solicitante.
applicantName string Nombre del solicitante.
applicantLastname string Apellido del solicitante.
identificationTypeApplicant string Tipo de identificación del solicitante.
identificationNumberApplicant string Número identificación del solicitante.
applicantEmail string Correo de contacto adicional.
applicantPhoneNumber string Número telefónico de contacto adicional.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de última modificación.

- Checklists

Request:

{
  "query": "{  
    checklists {
      id
      name
      businessUnit
      createdAt
      updatedAt
    }
  }"
}

Response:

{
  "data": {
    "checklists": [
      {
        "id": 30,
        "name": "EntrevistaTEST2",
        "businessUnit": "bffdfd01c-67fc-459b-aa54-bfe9ddd98ec4",
        "createdAt": "2020-07-30T04:57:33.808",
        "updatedAt": "2020-07-30T04:57:33.808"
      },
      {
        "id": 463,
        "name": "Checklist QOeUo",
        "businessUnit": "bffdfd01c-67fc-459b-aa54-bfe9ddd98ec4",
        "createdAt": "2022-06-14T19:22:25.309",
        "updatedAt": "2022-06-14T19:22:25.309"
      },
      {
        "id": 473,
        "name": "Sponsor K",
        "businessUnit": "bffdfd01c-67fc-459b-aa54-bfe9ddd98ec4",
        "createdAt": "2022-09-20T15:40:06.01",
        "updatedAt": "2022-09-20T15:40:06.01"
      }
    ]
  }
}

Puede consultar las checklists en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador del checklist.
businessUnit UUID Identificador de la Unidad de negocio.
name string Nombre del checklist.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de última modificación.

- Checklist Servicio

Request:

{
  "query": "{  
    checklist_services {
      serviceId
      serial
      typeQuestionId
      typeQuestionName
      question
      optional
      checked
      dateResponse
      haveOption
      option
      fileName
      fileNameAux
      fileUrl
      fileCreationTime
      placeholder
      value
      businessUnit
      createdAt
      updatedAt
      }
    }"
}

Response:

{
  "data": {
    "checklist_services": [
      {        
        "serviceId": 1,
        "serial":1,
        "typeQuestionId": "10",
        "typeQuestionName":"PHOTOS",
        "question": "Fotos de instalación y término de obra",
        "optional": "false"
        "checked": "false",
        "dateResponse": "2023-01-03T15:54:21.947Z",
        "haveOption": "true",
        "option": "Sponsor abona costo extra,Sin costo extra,Cliente abona el costo extra",
        "fileName": "file",
        "fileNameAux":"file name aux",
        "fileUrl": "https://devfsmdiag.blob.core.windows.net/uatfsm-booking-checklist-photo/9d99cced-7b46-4e7d-bd9a-8b8ce114deb3-1672762650473.png"
        "fileCreationTime": "1.672762651779E12",
        "placeholder": "Imagen",
        "value": "prueba app 03.01.2023",
        "businessUnit": "5bbccb01-d764-48d1-ae2e-d2bfd7200097"
        "createdAt": "2023-01-03 15:52:45.997",
        "updatedAt": "2023-01-03 15:52:45.997"
      }
      ]
}

Puede consultar los checklist en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo Pk Descripción
serviceId int Identificador del servicio.
serial int Serial del checklist
typeQuestionId string Identificador de la de pregunta.
typeQuestionName string Nombre del tipo de pregunta.
question string Pregunta realizada.
optional string Si es opcional o no su respuesta.
checked string Sí fue respondida.
dateResponse string Fecha en la cual se respondió la pregunta.
haveOption string Si tiene opciones.
option string las opciones de la respuesta.
fileName string Nombre del archivo.
fileNameAux string Nombre auxiliar del archivo.
fileUrl string URL del la respuesta.
fileCreationTime string Fecha de creación archivo.
placeholder string Descripción de la respuesta.
value string Valor de la respuesta.
businessUnit UUID Identificador de la Unidad de negocio.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de actualización.

- Checklists Items

Request:

{
  "query": "{  
    checklist_items {
      id
      description
      checklistId
      businessUnit
      formularyId
      createdAt
      updatedAt
    }
  }"
}

Response:

{
  "data": {
    "checklist_items": [
      {
        "id": 1218,
        "description": "Pregunta 1",
        "checklistId": 473,
        "businessUnit": "bfffdd01c-67fc-459b-aa54-bfe94ed98ec4",
        "formularyId": 0,
        "createdAt": "2018-08-21T17:57:11.945",
        "updatedAt": "2018-08-21T17:57:11.945"
      },
      {
        "id": 81,
        "description": "Pregunta 2",
        "checklistId": 30,
        "businessUnit": "bfffdd01c-67fc-459b-aa54-bfe94ed98ec4",
        "formularyId": 0,
        "createdAt": "2020-07-30T04:57:34.51",
        "updatedAt": "2020-07-30T04:57:34.51"
      },
      {
        "id": 79,
        "description": "Pregunta 3",
        "checklistId": 30,
        "businessUnit": "bfffdd01c-67fc-459b-aa54-bfe94ed98ec4",
        "formularyId": 0,
        "createdAt": "2020-07-30T04:57:34.512",
        "updatedAt": "2020-07-30T04:57:34.512"
      }
    ]
  }
}

Puede consultar los items de las checklists en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador del item.
businessUnit UUID Identificador de la Unidad de negocio.
checklistId int Identificador del Checklist.
formularyId int Identificador del Formulario.
description string Descripción.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de última modificación.

- Ofertas en Servicios

Request:

{
  "query": "{  
    bookings_offers {
        id
        validUntil
      }
    }"
}

Response:

{
  "data": {
    "bookings_offers": [
      {
        "id": 1,
        "validUntil": "2022-01-03",
      },
      {
        "id": 2,
        "validUntil": "2022-01-03",
      },
      {
        "id": 3,
        "validUntil": "2022-01-03",
      }]
}

Puede consultar las ofertas de servicios en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador de la oferta.
businessUnit UUID Identificador de la Unidad de negocio.
serviceId int Identificador del Servicio.
profesionalId int Identificador del Profesional.
customerId int Identificador del Cliente.
serviceDefinitionId int Identificador de la Definicion del Servicio.
state string Estado de la oferta.
validUntil string Fecha hasta donde es valida la oferta.
acceptedAt string Fecha de aceptación.
rejectedAt string Fecha de rechazo.
createdAt string Fecha de creación.

- Ordenes

Request:

{
  "query": "{
    orders {
      id
      paymentDate
      payment
      subTotal
      discount
      paymentDetails
      serviceId
      paymentMethod
      magentoId
      cardNumber
      paymentMethodType
      authorizationCode
      businessUnit
      copayAmount
      excessAmount
      responsible
      status
      createdAt
      updatedAt
    }
  }"
}

Response:

{
    "data": {
        "orders": [
            {
                "id": 6,
                "paymentDate": "2019-10-03T10:41:51.408+00:00",
                "payment": 123,
                "subTotal": 123,
                "discount": 0,
                "paymentDetails": "",
                "serviceId": "6",
                "paymentMethod": null,
                "magentoId": "1320",
                "cardNumber": "9870",
                "paymentMethodType": "VD",
                "authorizationCode": "4311",
                "businessUnit": "1234159a-72f5-11ea-bec0-000d3a061234",
                "copayAmount": 12.245,
                "excessAmount": 240.10,
                "responsible": "Cliente URL"
                "status": "Pagado"
                "createdAt": "2019-10-03T10:41:51.408+00:00",
                "updatedAt": "2022-10-07T21:25:28.987+00:00"
            },
            {
                "id": 7,
                "paymentDate": "2019-10-03T13:38:01.814+00:00",
                "payment": 110,
                "subTotal": 124,
                "discount": 14,
                "serviceId": "6",
                "paymentMethod": null,
                "magentoId": "1320",
                "cardNumber": "9870",
                "paymentMethodType": "VD",
                "authorizationCode": "4311",
                "businessUnit": "1234159a-72f5-11ea-bec0-000d3a061234",
                "copayAmount": 12.245,
                "excessAmount": 240.10,
                "responsible": "Cliente URL"
                "status": "Pagado"
                "createdAt": "2019-10-03T13:38:01.814+00:00",
                "updatedAt": "2022-10-07T21:25:28.987+00:00"
            },
            {
                "id": 8,
                "paymentDate": "2019-10-04T01:57:14.696+00:00",
                "payment": 110,
                "subTotal": 110,
                "discount": 0,
                "paymentDetails": "",
                "serviceId": "6",
                "paymentMethod": null,
                "magentoId": "1320",
                "cardNumber": "9870",
                "paymentMethodType": "VD",
                "authorizationCode": "4311",
                "businessUnit": "1234159a-72f5-11ea-bec0-000d3a061234",
                "copayAmount": 12.245,
                "excessAmount": 240.10,
                "responsible": "Cliente en sitio"
                "status": "Pendiente"
                "createdAt": "2019-10-04T01:57:14.696+00:00",
                "updatedAt": "2022-10-07T21:25:28.987+00:00"
            }
        ]
    }
}

Puede consultar las ordenes en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador de la orden.
businessUnit UUID Identificador de la Unidad de negocio.
serviceId string Identificador del Servicio.
payment int Importe que el cliente ha pagado.
subTotal float Suma de los costos individuales antes de aplicar cualquier descuento.
discount float Importe aplicado al monto total, que reduce el costo final del servicio.
paymentDate string Fecha de pago.
paymentMethod string Metodo de pago.
magentoId int Identificador relacionado con una transacción realizada desde Magento.
cardNumber int Últimos 4 números de la tarjeta usados en la transacción.
paymentMethodType string Método de pago utilizado para la transacción.
authorizationCode int Código único que valida la transacción de pago.
paymentDetails string Detalles de pago.
copayAmount float Copago del servicio a cobrar al cliente.
excessAmount float Excedente a cobrar al cliente.
responsible string Responsable: Cliente URL, Cliente en sitio, Sponsor/Unidad de negocio, Tenant
status string Estado de la orden: Pagado, Pendiente, Anulado, Caducado
createdAt string Fecha de creación.
updatedAt string Fecha de actualización.

- Observaciones de casos

Request:

{
  "query": "{
    case_observations {
      id
      caseNumber
      observation
      createdAt
      createdBy
      updatedAt
      updatedBy
      businessUnit
    }
  }"
}

Response:

{
    "data": {
        "case_observations": [
            {
                "id": 1,
                "caseNumber": "123456789",
                "observation": "observación de prueba desde nueva API.-",
                "createdAt": "2023-09-04T22:24:58.650956+00:00",
                "createdBy": 5101,
                "updatedAt": "2023-09-04T22:24:58.650956+00:00",
                "updatedBy": 5101,
                "businessUnit": "4568882c-783d-11eb-9439-0242ac138888"
            },
            {
                "id": 2,
                "caseNumber": "123456789",
                "observation": "observación 2",
                "createdAt": "2023-09-04T22:58:33.174509+00:00",
                "createdBy": 5101,
                "updatedAt": "2023-09-04T22:58:33.174509+00:00",
                "updatedBy": 5101,
                "businessUnit": "4568882c-783d-11eb-9439-0242ac138888"
            },
            {
                "id": 3,
                "caseNumber": "123456789",
                "observation": "prueba new api",
                "createdAt": "2023-09-05T12:29:28.2971+00:00",
                "createdBy": 5101,
                "updatedAt": "2023-09-05T12:29:28.2971+00:00",
                "updatedBy": 5101,
                "businessUnit": "4568882c-783d-11eb-9439-0242ac138888"
            }
        ]
    }
}

Puede consultar las observaciones de casos en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador de la observación.
caseNumber string Número del caso asociado
observation string Descripción de la observación
createdAt string Fecha y hora de su creación.
createdBy int Identificador del usuario que creó la observación.
updatedAt string Fecha y hora de su actualización.
updatedBy int Identificador del usuario que actualizó la observación.
businessUnit UUID Identificador de la Unidad de negocio.

- Evaluaciones

Request:

{
  "query": "{  
    satisfactions {
        id
        score
        secondScore
        businessUnit
        serviceId
        comments
        createdAt
        updatedAt
      }
    }"
}

Response:

{
  "data": {
    "satisfactions": [
      {
        "id": 1,
        "score": "76",
        "secondScore": "98",
        "businessUnit": "1234159a-72f5-11ea-bec0-000d3a061234",
        "serviceId": "6",
        "comments": "",
        "createdAt": "2019-10-03T10:41:51.408+00:00",
        "updatedAt": "2022-10-07T21:25:28.987+00:00"
      },
      {
        "id": 2,
        "score": "90",
        "secondScore": "100",
        "businessUnit": "1234159a-72f5-11ea-bec0-000d3a061234",
        "serviceId": "15",
        "comments": "",
        "createdAt": "2019-10-03T10:41:51.408+00:00",
        "updatedAt": "2022-10-07T21:25:28.987+00:00"
      },
      {
        "id": 3,
        "score": "80",
        "secondScore": "95",
        "businessUnit": "1234159a-72f5-11ea-bec0-000d3a061234",
        "serviceId": "10",
        "comments": "",
        "createdAt": "2019-10-03T10:41:51.408+00:00",
        "updatedAt": "2022-10-07T21:25:28.987+00:00"
      }]
}

Puede consultar las evaluaciones en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador de la evaluación.
businessUnit UUID Identificador de la Unidad de negocio.
serviceId int Identificador del Servicio.
score string Puntaje.
secondScore string Segundo puntaje.
comments string Comentarios.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.

- Wizards

Request:

{
  "query": "{  
    wizards {
        id
        description
        businessUnit
        updatedAt
        createdAt
      }
    }"
}

Response:

{
  "data": {
    "wizards": [
      {
        "id": 14,
        "description": "Prueba 1",
        "businessUnit": "4228882c-783d-11eb-9439-0242ac155002",
        "updatedAt": "2021-03-18T23:28:26.42+00:00",
        "createdAt": "2021-03-18T23:28:26.42+00:00"
      },
      {
        "id": 18,
        "description": "Prueba 2",
        "businessUnit": "4228882c-783d-11eb-9439-0242ac155002",
        "updatedAt": "2021-07-01T19:42:57.188+00:00",
        "createdAt": "2021-07-01T19:42:57.188+00:00"
      },
      {
        "id": 19,
        "description": "Prueba 3",
        "businessUnit": "4228882c-783d-11eb-9439-0242ac155002",
        "updatedAt": "2021-07-01T19:57:04.776+00:00",
        "createdAt": "2021-07-01T19:57:04.776+00:00"
      }
    ]
  }
}

Puede consultar los wizards en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador de la Wizard.
businessUnit UUID Identificador de la Unidad de negocio.
description string Descripción.
updatedAt timestamp Fecha de última modificación.
createdAt timestamp Fecha de creación.

- Variables del Wizards

Request:

{
  "query": "{  
    wizards_vars {
      id
      businessUnit
      wizardVersionId
      versionId
      intervals
      optionName
      optionTime
      optionPrice
      options
      updatedAt
      createdAt
      }
  }"
}

Response:

{
  "data": {
    "wizards_vars": [
      {
        "id": "1569259230547",
        "businessUnit": "542927b6-72f5-11ea-bec0-000d3a06cedd",
        "wizardVersionId": 27,
        "versionId": 6,
        "intervals": null,
        "optionName": "Titulo",
        "optionTime": null,
        "optionPrice": null,
        "options": null,
        "updatedAt": "2019-09-23T17:55:01.121",
        "createdAt": "2019-09-23T17:55:01.121"
      },
      {
        "id": "1569259125306",
        "businessUnit": "542927b6-72f5-11ea-bec0-000d3a06cedd",
        "wizardVersionId": 27,
        "versionId": 6,
        "intervals": null,
        "optionName": "Selector de cantidades",
        "optionTime": "5",
        "optionPrice": "0",
        "options": null,
        "updatedAt": "2019-09-23T17:55:01.121",
        "createdAt": "2019-09-23T17:55:01.121"
      }
    ]
  }
}

Puede consultar las variables del wizard en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador de la variable.
businessUnit UUID Identificador de la Unidad de negocio.
wizardVersionId int Identificador del Wizard.
versionId int Version.
intervals string Intervalo en el cual se aplica el wizard cuando son opciones múltiples.
optionName string Nombre asociado a opción del wizard.
optionTime string Tiempo en el que se aplica el wizard (Expresado en minutos).
optionPrice string Precio de opción del wizard cuando es campo sencillo.
options string Opciones de las variables de tipo selectores.
updatedAt timestamp Fecha de última modificación.
createdAt timestamp Fecha de creación.

- Configuración de conceptos de costo

Request:

{
  "query": "{  
    cost_concepts {
      id
      baseCost
      baseSale
      businessUnit
      createdAt
      excessBaseCost
      excessBaseSale
      includeAsCoverageValidator
      includeInServiceRequest
      name
      rateType
      top
      unit
      unitType
      updatedAt
      validationViaMapIntegration
      }
  }"
}

Response:

{
  "data": {
    "cost_concepts": [
      {
        "baseCost": 1.2,
        "baseSale": 1,
        "businessUnit": "22c2d28c-251c-11ef-9621-0242ac139998",
        "createdAt": "2022-06-14T17:27:34.932+00:00",
        "excessBaseCost": null,
        "excessBaseSale": null,
        "id": 363,
        "includeAsCoverageValidator": true,
        "includeInServiceRequest": true,
        "name": "Conceptovxsz",
        "rateType": "Dummy",
        "top": null,
        "unit": "Centímetro, cm",
        "unitType": "Longitud",
        "updatedAt": "2022-06-14T17:27:34.932+00:00",
        "validationViaMapIntegration": false
      }
    ]
  }
}

Puede consultar la configuración de conceptos de costo en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador único del concepto de costo.
businessUnit UUID Identificador único de la unidad de negocio a la que pertenece el concepto de costo.
name string Nombre del concepto de costo.
rateType string Tipo de tarificación

Valores posibles:

1. Fijo/por unidad
2. Exceso
3. Dummy
4. Base
unit string Unidad de medida.

Valores posibles:

1.Centímetro, cm
2.Metro: m
3.Kilometro: Km
4.Minuto, min
5.Hora, Hr.
6.Día, D
7.Gramo, gr
8.Kilogramo, Kg
9.Centímetro cuadrado, cm2
10.Metro cuadrado, m2
11.Litro: L
12.Cantidad (un)
unitType string Tipo de unidad de medida.

Valores posibles:

1.Longitud
2.Tiempo
3.Peso
4.Área
5.Unidad
6.Volumen
includeInServiceRequest boolean Si está activo (true), se mostrará el concepto de costo al crear el servicio y listado en el presupuesto.
includeAsCoverageValidator boolean Si está activo (true), se incluirá en la validación de cobertura al crear el servicio y en el presupuesto.
validationViaMapIntegration boolean Si está activo (true), los kilómetros se calcularán de manera automática a partir de la integración de mapas.
baseCost float Costo del concepto de costo.
baseSale float Precio venta del concepto de costo.
top int Cantidad máxima del concepto de costo a valor base. Valores superiores serán considerado a costo y valor exceso.
excessBaseCost float Costo del concepto de costo para aquellos considerados excesos.
excessBaseSale float Precio venta del concepto de costo para aquellos considerados excesos.
CreatedAt timestamp Fecha/hora de creación del concepto de costo.
UpdatedAt timestamp Fecha/hora de última actualización del concepto de costo.

- Conceptos de costos en presupuesto

Request: shell { "query": "{ costConcepts { active actualStatus baseCostProvider baseSale budgetCCAmount budgetCCBaseCost budgetCCExcessBaseCost budgetCCRateType budgetCCTop budgetCCTotal budgetMargin budgetTotalCostProvider business_unit_id calculateIva comments costConceptBaseCost costConceptCost costConceptId costConceptName costConceptRateType costConceptSale costConceptTop costConceptTotalCostProvider created creationDate excessBaseCost excessBaseSale idBudget idBudgetCc integrationMap isCovered isValidated iva margin ivaCost materialsCost providerPayment question runtimeMin saleDiscount serviceDuration state statusName subtotal subtotalCost totalBudget totalCost unitCode unitName validCoverage workforce }" } Response:

{
  "data": {
    "costConcepts": [
      {
        "active": true,
        "actualStatus": 8,
        "baseCostProvider": null,
        "baseSale": 10,
        "budgetCCAmount": 1,
        "budgetCCBaseCost": 40,
        "budgetCCExcessBaseCost": 0,
        "budgetCCRateType": 1,
        "budgetCCTop": 0,
        "budgetCCTotal": 40,
        "budgetMargin": 0,
        "budgetTotalCostProvider": null,
        "business_unit_id": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "calculateIva": false,
        "comments": "",
        "costConceptBaseCost": 10,
        "costConceptCost": 10,
        "costConceptId": 85,
        "costConceptName": "name",
        "costConceptRateType": 1,
        "costConceptSale": 10,
        "costConceptTop": 10,
        "costConceptTotalCostProvider": null,
        "created": "2021-10-01T01:13:05.654",
        "creationDate": "2022-03-07T14:05:31.978",
        "excessBaseCost": 10,
        "excessBaseSale": 10,
        "idBudget": 368,
        "idBudgetCc": 430,
        "integrationMap": false,
        "isCovered": null,
        "isValidated": null,
        "iva": 0,
        "margin": null,
        "ivaCost": 0,
        "materialsCost": 0,
        "providerPayment": true,
        "question": true,
        "runtimeMin": 0,
        "saleDiscount": 0,
        "serviceDuration": 0,
        "state": "ACTIVE",
        "statusName": null,
        "subtotal": 0,
        "subtotalCost": 0,
        "totalBudget": 0,
        "totalCost": 0,
        "unitCode": "distance-Km",
        "unitName": "Kilometro: Km",
        "validCoverage": true,
        "workforce": 0
      }

Puede consultar los Conceptos de costos en presupuesto en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
idBudget long Identificador de presupuesto.
idBudgetCc long Identificador de presupuesto de concepto de costos.
costConceptId long Identificador de concepto de costos.
active boolean Estatus activo.
actualStatus int Estado actual.
baseCostProvider double Costo base del proveedor.
baseSale double Venta base.
budgetCCAmount int Monto de concepto de costos presupuestado.
budgetCCBaseCost double Costo base de concepto de costos presupuestado.
budgetCCExcessBaseCost double Exceso de costo base del concepto de costo presupuestado.
budgetCCRateType int Tipo de cambio del presupuesto de conepto de costo.
budgetCCTop double Presupuesto tope de concepto de costos.
budgetCCTotal double Presupuesto total del concepto de costos.
budgetMargin float Margen del presupuesto.
budgetTotalCostProvider double Costo total del proveedor.
businessUnit UUID Identificador de unidad de negocio.
calculateIva boolean Cálculo de IVA.
comments string Comentarios.
costConceptBaseCost double Costo base de concepto de costos.
costConceptCost double Costo de concepto de costos.
costConceptName string Nombre de concepto de costos.
costConceptRateType int Tipo de cambio de concepto de costos.
costConceptSale double Ventas de concepto de costos.
costConceptTop double Tope de cocepto de costos.
costConceptTotalCostProvider double Costo total del proveedor en concepto de costos.
createdAt timestamp Fecha de creación del Concepto de Costo.
updatedAt timestamp Fecha de actualización del Concepto de Costo.
creationDate timestamp Fecha de creación presupuesto.
excessBaseCost double Excedente de costo base.
excessBaseSale double Excedente de venta base.
integrationMap boolean Mapa de integración.
isCovered boolean Está cubierto.
isValidated boolean Está validado.
iva double IVA.
margin double Margen.
ivaCost float Costo de IVA.
materialsCost double Costo de materiales.
providerPayment boolean Pago del proveedor.
question boolean Pregunta.
runtimeMin int Tiempo de ejecución en minutos.
saleDiscount double Descuento de venta.
serviceDuration int Duración del servicio.
state int Estado.
statusName string Nombre de estado.
subtotal double Subtotal.
subtotalCost float Costo subtotal.
totalBudget double Presupuesto total.
totalCost float Costo total.
unitCode string Código de unidad.
unitName string Nombre de unidad.
validCoverage boolean Validez de cobertura.
workforce double Personal.

- Devoluciones

Request:

{
  "query": "{  
    returns {
            amount
            businessUnit
            clientName
            devolutionType
            reason
            requestDateAndTime
            serviceId
            serviceName
            status
            user
        }
  }"
}

Response:

{
  "data": {
    "returns": [
            {
              "amount": 140000,
              "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
              "clientName": "Oscar David",
              "devolutionType": "COMPLETE",
              "reason": "Material Incorrecto",
              "requestDateAndTime": "2022-02-01T22:44:36.637",
              "serviceId": 61707,
              "serviceName": "Visita Técnica",
              "status": "EXECUTED",
              "user": "toderosodimac"
            },
            {
              "amount": 150197,
              "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
              "clientName": "prueba",
              "devolutionType": "COMPLETE",
              "reason": "Material Incorrecto",
              "requestDateAndTime": "2022-04-13T21:36:20.31",
              "serviceId": 102766,
              "serviceName": "Visita Técnica",
              "status": "REQUESTED",
              "user": "toderosodimac"
            },
            {
              "amount": 4,
              "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
              "clientName": "Oscar David",
              "devolutionType": "PARTIAL",
              "reason": "Material Incorrecto",
              "requestDateAndTime": "2022-02-16T15:01:35.309",
              "serviceId": 68227,
              "serviceName": "Visita Técnica",
              "status": "EXECUTED",
              "user": "toderosodimac"
            },]
}

Puede consultar los proveedores en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo Descripción
id int Identificador
amount string Monto de la devolución.
businessUnit string Unidades de negocio.
clientName string Nombre del client.
devolutionType string Tipo de devolución.
reason string Razón de la devolución.
requestDateAndTime string Fecha y hora de la petición.
serviceId int Id del servicio.
serviceName string Nombre del servicio.
status string Nombre del estado.
user string Usuario.
createdAt String Fecha de creación
updatedAt String Fecha de actualización

- Encuestas de Servicios

Request:

{
  "query": "{
    polls {
      pollQuestionId
      pollResponseId
      createdAt
      updatedAt
      serviceId
      questionId
      ask
      answer
      idTemplate
      businessUnit
      professionalId
      qualifyingSubjectName
      type
      channelType
    }
  }"
}

Response:

{
  "data": {
    "polls": [
      {
        "pollQuestionId": 2,
        "pollResponseId": 15,
        "createdAt": "2022-02-24T20:37:49.375",
        "updatedAt": "2022-02-24T20:37:49.375",
        "serviceId": 77620,
        "questionId": 2,
        "ask": "¿Cómo te pareció el Servicio en General?",
        "answer": "5",
        "idTemplate": 1,
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "professionalId": 152,
        "qualifyingSubjectName": "RIS - Apertura de vehículo",
        "type": "INTERVAL_1_TO_5",
        "channelType": "EMAIL"
      }
      {
        "pollQuestionId": 1,
        "pollResponseId": 15,
        "createdAt": "2022-02-24T20:37:49.375",
        "updatedAt": "2022-02-24T20:37:49.375",
        "serviceId": 77620,
        "questionId": 1,
        "ask": "¿Como califica nuestro servicio?",
        "answer": "Esto es una prueba final",
        "idTemplate": 1,
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "professionalId": 152,
        "qualifyingSubjectName": "RIS - Apertura de vehículo",
        "type": "TEXT",
        "channelType": "DEFAULT"
      },
      {
        "pollQuestionId": 2,
        "pollResponseId": 16,
        "createdAt": "2022-02-24T20:37:49.375",
        "updatedAt": "2022-02-24T20:37:49.375",
        "serviceId": 85522,
        "questionId": 2,
        "ask": "¿Cómo te pareció el Servicio en General?",
        "answer": "3",
        "idTemplate": 1,
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "professionalId": 152,
        "qualifyingSubjectName": "RIS - Apertura de vehículo",
        "type": "INTERVAL_1_TO_10",
        "channelType": "SMS"
      }
    ]
  }
}

Puede consultar las encuestas de servicio en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
pollResponseId int Identificador de respuesta
pollQuestionId int Identificador de Pregunta
createdAt String Fecha de creación de la respuesta
updatedAt String Fecha de actualización de la respuesta
serviceId int Identificador del servicio
questionId int Identificador de la pregunta
ask string Descripcion de la pregunta
answer string Descripcion de la respuesta
idTemplate int Identificador de la plantilla
businessUnit UUID Identificador de la Unidad de negocio.
professionalId int Identificador del profesional
qualifyingSubjectName string Nombre del calificador
type string Tipo de respuesta
channelType string Canal de respuesta de la encuesta

- Reclamos

Request:

{
    "query": "{
        claims {
            accountNumber
            beneficiaryDocumentNumber
            beneficiaryName
            businessUnit
            claimAccountTypeId
            caseNumber
            claimAccountTypeName
            claimActioTypeName
            claimActionTypeId
            claimBankId
            claimBankName
            claimBeneficiaryName
            claimCompensationTypeId
            claimCompensationTypeName
            claimDocumentTypeId
            claimPaymentTypeName
            claimPaymentTypeId
            claimDocumentTypeName
            claimPriorityId
            claimPriorityName
            claimResponseTypeId
            claimResponseTypeName
            claimResponsibleAreaId
            claimResponsibleAreaName
            claimStatusId
            claimStatusName
            claimSubTypificationId
            claimSubTypificationName
            claimTypeId
            claimTypeName
            claimTypificationId
            claimTypificationName
            createdAt
            description
            id
            monetaryAmount
            monetaryUnit
            updatedAt
            caseId
        }      
    }"
}

Response:

{
    "data": {
        "claims": [
            {
                "accountNumber": null,
                "beneficiaryDocumentNumber": "20881234",
                "beneficiaryName": null,
                "businessUnit": "22c2d28c-251c-11ef-9621-0242ac131234",
                "claimAccountTypeId": null,
                "caseNumber": "1000001234",
                "claimAccountTypeName": null,
                "claimActioTypeName": null,
                "claimActionTypeId": null,
                "claimBankId": null,
                "claimBankName": null,
                "claimBeneficiaryName": null,
                "claimCompensationTypeId": null,
                "claimCompensationTypeName": null,
                "claimDocumentTypeId": null,
                "claimPaymentTypeName": null,
                "claimPaymentTypeId": null,
                "claimDocumentTypeName": null,
                "claimPriorityId": 6,
                "claimPriorityName": "Normal",
                "claimResponseTypeId": null,
                "claimResponseTypeName": null,
                "claimResponsibleAreaId": 4,
                "claimResponsibleAreaName": "Proveedor",
                "claimStatusId": 6,
                "claimStatusName": "Cerrado",
                "claimSubTypificationId": 128,
                "claimSubTypificationName": "No aplica",
                "claimTypeId": 1,
                "claimTypeName": "Posible Queja Viva",
                "claimTypificationId": 4,
                "claimTypificationName": "Mala actitud",
                "createdAt": "2022-04-22T16:33:02.377",
                "description": "Descripcion I",
                "id": 1,
                "monetaryAmount": null,
                "monetaryUnit": null,
                "updatedAt": "2022-04-22T16:33:02.377",
                "caseId": 123
            },
            {
                "accountNumber": null,
                "beneficiaryDocumentNumber": "20881235",
                "beneficiaryName": null,
                "businessUnit": "22c2d28c-251c-11ef-9621-0242ac131235",
                "claimAccountTypeId": null,
                "caseNumber": "520111235",
                "claimAccountTypeName": null,
                "claimActioTypeName": null,
                "claimActionTypeId": null,
                "claimBankId": null,
                "claimBankName": null,
                "claimBeneficiaryName": null,
                "claimCompensationTypeId": null,
                "claimCompensationTypeName": null,
                "claimDocumentTypeId": null,
                "claimPaymentTypeName": null,
                "claimPaymentTypeId": null,
                "claimDocumentTypeName": null,
                "claimPriorityId": 5,
                "claimPriorityName": "Baja",
                "claimResponseTypeId": null,
                "claimResponseTypeName": null,
                "claimResponsibleAreaId": 2,
                "claimResponsibleAreaName": "Cabina del Cliente",
                "claimStatusId": 4,
                "claimStatusName": "Creado",
                "claimSubTypificationId": 128,
                "claimSubTypificationName": "No aplica",
                "claimTypeId": 2,
                "claimTypeName": "Posible Queja Muerta",
                "claimTypificationId": 8,
                "claimTypificationName": "Garantía",
                "createdAt": "2022-04-22T16:27:48.342",
                "description": "sssss",
                "id": 2,
                "monetaryAmount": null,
                "monetaryUnit": null,
                "updatedAt": "2022-04-22T16:27:48.342",
                "caseId": 123
            },
            {
                "accountNumber": null,
                "beneficiaryDocumentNumber": null,
                "beneficiaryName": null,
                "businessUnit": "22c2d28c-251c-11ef-9621-0242ac11235",
                "claimAccountTypeId": null,
                "caseNumber": "520111236",
                "claimAccountTypeName": null,
                "claimActioTypeName": null,
                "claimActionTypeId": null,
                "claimBankId": null,
                "claimBankName": null,
                "claimBeneficiaryName": null,
                "claimCompensationTypeId": null,
                "claimCompensationTypeName": null,
                "claimDocumentTypeId": null,
                "claimPaymentTypeName": null,
                "claimPaymentTypeId": null,
                "claimDocumentTypeName": null,
                "claimPriorityId": 5,
                "claimPriorityName": "Baja",
                "claimResponseTypeId": null,
                "claimResponseTypeName": null,
                "claimResponsibleAreaId": 2,
                "claimResponsibleAreaName": "Cabina del Cliente",
                "claimStatusId": 4,
                "claimStatusName": "Creado",
                "claimSubTypificationId": 128,
                "claimSubTypificationName": "No aplica",
                "claimTypeId": 2,
                "claimTypeName": "Posible Queja Muerta",
                "claimTypificationId": 7,
                "claimTypificationName": "Restitución",
                "createdAt": "2022-05-16T15:05:45.945",
                "description": "hkhkhkjhkjhkjhkhkjk",
                "id": 3,
                "monetaryAmount": null,
                "monetaryUnit": null,
                "updatedAt": "2022-05-16T15:05:45.945",
                "caseId": 123
            }
        ]
    }
}

Puede consultar los reclamos en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador del reclamo.
businessUnit string Unidad de negocio.
createdAt string Fecha de creación.
updatedAt string Fecha de la ultima modificación al estado del reclamo.
accountNumber string Número de la cuenta. (descontinuado)
claimAccountTypeId int Identificador del tipo de cuenta. (descontinuado)
claimAccountTypeName string Nombre del tipo de cuenta. (descontinuado)
claimActioTypeName string Nombre del tipo de acción de la compesación.
claimActionTypeId int Identificador del tipo de acción de la compesación.
claimBankId int Identificador de la entidad bancaria. (descontinuado)
claimBankName string Nombre de la entidad bancaria. (descontinuado)
claimBeneficiaryName int Beneficiaro(0) / Titular(1) a quien le pertenece la compensación.
claimCompensationTypeId int Identificador del tipo de compesación.
claimCompensationTypeName string Nombre de la compesación.
claimDocumentTypeId int Identificador del tipo de documento. (descontinuado)
claimDocumentTypeName string Nombre del tipo de documneto. (descontinuado)
claimPaymentTypeId int Identificador del medio de pago de la compesación.
claimPaymentTypeName string Nombre del medio de pago de la compesación.
claimPriorityId int Identificador de la prioridad del reclamo.
claimPriorityName string Nombre de la prioridad del reclamo.
claimResponseTypeId int Identificador de tipo de respuesta de la compesación.
claimResponseTypeName string Nombre del tipo de respuesta de la compesación.
claimStatusId int Identificador del estatus del reclamo.
claimStatusName string Nombre del estatus del reclamo.
claimSubTypificationId int Identificador de la sub tipificación.
claimSubTypificationName string Nombre de la sub tipificación.
claimTypeId int Identificador del tipo de reclamo.
claimTypeName string Nombre del tipo de reclamo.
claimTypificationId int Identificador de la tipificación.
claimTypificationName string Nombre de la tipificación.
beneficiaryDocumentNumber string Número de documento del beneficiario de la compesación.
beneficiaryName string Nombre del beneficiario de la compesación.
description string Descripción del reclamo.
monetaryAmount int Monto monetario de la compesación.
monetaryUnit string Unidad monetaria. (descontinuado)
claimResponsibleAreaId int Identificador del área responsable del reclamo.
claimResponsibleAreaName string Nombre del área responsable del reclamo.
caseNumber string Número del caso.
caseId int Identificador del Caso.

- Servicios asociados a reclamos

Request:

{
    "query": "{
        claim_associated_services {
            claimId
            serviceId
            updatedAt
            createdAt
            businessUnit
        }
    }"
}

Response:

{
  "data": {
    "claim_associated_services": [
      {
        "claimId": 1,
        "serviceId": 100,
        "updatedAt": "2021-10-25T13:49:49.229+00:00",
        "createdAt": "2021-10-25T13:49:49.229+00:00",
        "businessUnit": "4568882c-783d-11eb-9439-0242ac"
      },
      {
        "claimId": 2,
        "serviceId": 101,
        "updatedAt": "2021-10-25T13:49:49.229+00:00",
        "createdAt": "2021-10-25T13:49:49.229+00:00",
        "businessUnit": "4568882c-783d-11eb-9439-0242ac"
      },
      {
        "claimId": 3,
        "serviceId": 102,
        "updatedAt": "2021-10-25T13:49:49.229+00:00",
        "createdAt": "2021-10-25T13:49:49.229+00:00",
        "businessUnit": "4568882c-783d-11eb-9439-0242ac"
      }
  }
}

Puede consultar los servicios asociados a reclamos en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
claimId int Identificador del Reclamo.
serviceId int Identificador del Servicio.
businessUnit UUID Unidad de negocio.
updatedAt timestamp Fecha de actualización de la asociación del servicio al reclamo.
createdAt timestamp Fecha de asociación del servicio al reclamo.

- Historiales de estado de reclamos

Request:

{
    query "{
        claim_status_histories {
            businessUnit
            claimId
            createdAt
            createdBy
            id
            newState
            previousState
            updatedAt
            updatedBy
        }
    }"
}

Response:

{
    "data": {
        "claim_status_histories": [
            {
                "businessUnit": "4568882c-783d-11eb-9439-0242ac139999",
                "claimId": 1,
                "createdAt": "2023-09-07T17:21:44.002671+00:00",
                "createdBy": 1,
                "id": 1,
                "newState": "En Curso",
                "previousState": "Creado",
                "updatedAt": "2023-09-07T17:21:44.002671+00:00",
                "updatedBy": 1
            },
            {
                "businessUnit": "4568882c-783d-11eb-9439-0242ac139999",
                "claimId": 2,
                "createdAt": "2023-09-07T17:33:39.799024+00:00",
                "createdBy": 1,
                "id": 2,
                "newState": "Cerrado",
                "previousState": "Creado",
                "updatedAt": "2023-09-07T17:33:39.799024+00:00",
                "updatedBy": 1
            },
            {
                "businessUnit": "4568882c-783d-11eb-9439-0242ac139999",
                "claimId": 3,
                "createdAt": "2023-09-07T17:34:51.145497+00:00",
                "createdBy": 1,
                "id": 3,
                "newState": "Cerrado",
                "previousState": "En Curso",
                "updatedAt": "2023-09-07T17:34:51.145497+00:00",
                "updatedBy": 1
            }
      ]
    }
}

Puede consultar el historial de los estados de reclamos en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador del cambio de estatus.
claimId int Identificador del Reclamo.
businessUnit UUID Identificador de la Unidad de negocio.
previousState string Estatus antiguo.
newState string Estatus nuevo.
createdBy int Identificador del Usuario que creó el cambio de estatus.
createdAt string Fecha de creación.
updatedBy int Identificador del Usuario que actualizó el cambio de estatus.
updatedAt string Fecha de la ultima modificación.

- Pago del proveedor

Request:

{
  "query": "{
      provider_payments {
          businessUnit
          paymentId
          serviceId
          caseId
          providerId
          branchId
          serviceCost
          servicePrice
          tax
          retention
          amountToPay
          accountingType
          paymentStatus
          preInvoiceId
          updatedAt
          createdAt
    }
  }"
}

Response:

{
  "data": {
    "provider_payments": [
      {
          "businessUnit": "ab47ab38-bd92-4116-a965-abe38a2b7b987",
          "paymentId": 1,
          "serviceId": 123,
          "caseId": 1,
          "providerId": 10,
          "branchId": 100,
          "serviceCost": 100,
          "servicePrice": 110,
          "tax": 15,
          "retention": 15,
          "amountToPay": 125,
          "accountingType": "IVA",
          "paymentStatus": "PAGADO",
          "preInvoiceId": 1,
          "updatedAt": "2022-05-30T16:11:51.339+00:00",
          "createdAt": "2022-05-30T16:11:51.339+00:00"
      },
      {
          "businessUnit": "ab47ab38-bd92-4116-a965-abe38a2b7b987",
          "paymentId": 2,
          "serviceId": 123,
          "caseId": 2,
          "providerId": 10,
          "branchId": 100,
          "serviceCost": 100,
          "servicePrice": 110,
          "tax": 15,
          "retention": 15,
          "amountToPay": 125,
          "accountingType": "IVA",
          "paymentStatus": "PAGADO",
          "preInvoiceId": 1,
          "updatedAt": "2022-05-30T16:11:51.339+00:00",
          "createdAt": "2022-05-30T16:11:51.339+00:00"
      }
    ]
  }
}

Puede consultar los estados de pago de proveedor en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
businessUnit UUID Código unico de la unidad de negocio.
paymentId int ID de pago del proveedor.
serviceId int ID unico del servicio.
caseId int ID de caso.
providerId int ID de proveedor.
branchId int ID de sucursal.
serviceCost float Costo del servicio.
servicePrice float Precio del servicio.
tax float Monto de impuesto.
retention float Monto de retención.
amountToPay float Monto a pagar.
accountingType string Tipo contable.
paymentStatus string Estado en el que se encuentra el pago.
preInvoiceId int ID de pre-factura.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.

- Respuestas del Wizard

Request:

{
  "query": "{  
    wizard_responses {
      serviceId
      businessUnit
      wizardId
      questionId
      createdAt
      updatedAt
      wizardQuestion
      wizardAnswer
    }
  }"
}

Response:

{
  "data": {
    "wizard_responses": [
      {
          "serviceId": 193126,
          "businessUnit": "94613526-783d-11eb-9439-641397541846",
          "wizardId": null,
          "questionId": null,
          "createdAt": "2022-12-21T21:18:47.707",
          "updatedAt": "2022-12-21T21:18:47.707",
          "wizardQuestion": null,
          "wizardAnswer": null
      },
      {
          "serviceId": 193125,
          "businessUnit": "94613526-783d-11eb-9439-641397541846",
          "wizardId": null,
          "questionId": null,
          "createdAt": "2022-12-21T20:01:49.507",
          "updatedAt": "2022-12-21T20:01:49.507",
          "wizardQuestion": null,
          "wizardAnswer": null
      },
      {
          "serviceId": 193124,
          "businessUnit": "94613526-783d-11eb-9439-641397541846",
          "wizardId": null,
          "questionId": null,
          "createdAt": "2022-12-21T20:01:48.982",
          "updatedAt": "2022-12-21T20:01:48.982",
          "wizardQuestion": null,
          "wizardAnswer": null
      }
    ]
  }
}

Puede consultar las respuestas que se han dado en el wizard de los servicios.

Campo Tipo PK Descripción
businessUnit UUID Código de unidad de negocio.
wizardId string ID de wizard.
serviceId int Id de servicio.
questionId string ID de la pregunta.
wizardQuestion string Pregunta del Wizard.
wizardAnswer string Respuesta del Wizard.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.

- Ofertas a profesionales

Request:

{
  "query": "{
    professional_offers {
      id
      serviceId
      businessUnit
      professionalId
      name
      lastName
      acceptedAt
      rejectedAt
      validUntil
      createdAt
      updatedAt
    }
  }"
}

Response:

{
    "data": {
        "professional_offers": [
            {
                "id": 123,
                "serviceId": 234,
                "businessUnit": "00000000-0000-0000-0000-000000000000",
                "professionalId": 56,
                "name": "Daniela",
                "lastName": "Medina",
                "acceptedAt": null,
                "rejectedAt": null,
                "validUntil": "2022-05-30T16:33:05.666+00:00",
                "createdAt": "2022-05-30T16:03:05.666925+00:00",
                "updatedAt": "2022-05-30T16:03:05.666925+00:00"
            },
            {
                "id": 1234,
                "serviceId": 2345,
                "businessUnit": "00000000-0000-0000-0000-000000000000",
                "professionalId": 56,
                "name": "Daniela",
                "lastName": "Medina",
                "acceptedAt": null,
                "rejectedAt": null,
                "validUntil": "2022-06-28T14:12:19.858+00:00",
                "createdAt": "2022-06-28T14:10:19.858748+00:00",
                "updatedAt": "2022-06-28T14:10:19.858748+00:00"
            }
        ]
    }
}

Puede consultar las ofertas a profesionales en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador de la oferta.
serviceId int Identificador del servicio.
businessUnit UUID Identificador de la Unidad de negocio.
professionalId int Identificador del profesional asociado a la oferta.
name string Nombre del profesional.
lastName string Apellido del profesional.
acceptedAt timestamp Fecha de aceptación de la oferta por parte del profesional.
rejectedAt timestamp Fecha de rechazo de la oferta.
validUntil timestamp Fecha hasta que estará válida la oferta.
createdAt timestamp Fecha de creación de la oferta.
updatedAt timestamp Fecha de última modificación de la oferta.

- Estatus de presupuesto

Request:

{
  "query": "{
    budget_status {
      budgetId
      serviceId
      businessUnit
      createdAt
      status
      updatedAt
    }
  }"
}

Response:

{
    "data": {
        "budget_status": [
            {
              "budgetId": 1,
                  "serviceId":2223, 
              "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
              "createdAt": "2019-10-16T12:17:19.043",
              "status": "Espera de presupuesto",
              "updatedAt": "2019-10-16T12:17:19.043"
            },
            {
              "budgetId": 1,
                  "serviceId":2223, 
              "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
              "createdAt": "2019-10-22T16:05:26.22",
              "status": "Presupuesto en proveedores",
              "updatedAt": "2019-10-22T16:05:26.22"
            }
        ]
    }
}

Puede consultar las ofertas a profesionales en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
budgetId int Identificador del presupuesto.
serviceId int serviceId del presupuesto.
status string Estatus del presupuesto.
businessUnit UUID Identificador de la Unidad de negocio.
createdAt timestamp Fecha de creación del presupuesto.
updatedAt timestamp Fecha de última modificación del presupuesto.

- Motores

Request:

{
  "query": "{
    engines {
      engineUUID
      tenantUUID
      name
      state
      operatingEndTime
      operatingStartTime
      operationalDays
      alwaysAvailable
      createdAt
      updatedAt
    }
  }"
}

Response:

{
  "data": {
    "engines": [
            {
              "engineUUID": "fc8108ca-759a-4c02-ba03-215513a144c5",
              "tenantUUID": "adff7f6a-e97d-11eb-9a03-0242ac130003",
              "name": "MOTOR CHILE",
              "state": true,
              "operatingEndTime": "10:00",
              "operatingStartTime": "00:00",
              "operationalDays": "Jueves, Lunes, Martes, Miércoles, Viernes",
              "alwaysAvailable": false,
              "createdAt": "2024-01-12T16:57:14.444668+00:00",
              "updatedAt": "2024-01-12T16:57:14.444668+00:00"
            },
            {
              "engineUUID": "ef815f71-90d6-41c5-9a4d-8aece7193440",
              "tenantUUID": "adff7f6a-e97d-11eb-9a03-0242ac130003",
              "name": "MOTOR COLOMBIA",
              "state": true,
              "operatingEndTime": "10:00",
              "operatingStartTime": "00:00",
              "operationalDays": null,
              "alwaysAvailable": false,
              "createdAt": "2024-01-15T15:44:07.103679+00:00",
              "updatedAt": "2024-05-15T19:45:02.432+00:00"
            },
            {
              "engineUUID": "e005c9af-e3f5-45f9-921b-042facb7ff18",
              "tenantUUID": "adff7f6a-e97d-11eb-9a03-0242ac130003",
              "name": "MOTOR ARGENTINA",
              "state": true,
              "operatingEndTime": "10:00",
              "operatingStartTime": "00:00",
              "operationalDays": null,
              "alwaysAvailable": false,
              "createdAt": "2024-01-15T15:51:04.784302+00:00",
              "updatedAt": "2024-01-15T15:51:04.784302+00:00"
            }
        ]
} 

Puede consultar los motores de asignacion en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
engineUUID UUID ID único del motor.
tenantUUID UUID Identificador único del tenant.
name string Nombre del Motor.
state boolean Activo: true / Inactivo: false.
operationalDays string Lunes, Martes...
operatingStartTime int 15:00...
operatingEndTime int 18:00...
alwaysAvailable boolean 24/7: true / Días y horarios definidos: false.
updatedAt timestamp Fecha de ultima modificación.
createdAt timestamp Fecha de creación.

- Etapas del motor

Request:

{
  "query": "{
    stages(limit: 3, offset: 0) {
        stageUUID
        stageName
        engineUUID
        tenantUUID
        createdAt
        updatedAt
        stageStatus
        stageType
        addressee
        simultaneousOffers
        stageTime
        numberOfIterations
        shippingInterval
        numberOfAttemps
        offerExpirationTime
        unlimitedAcceptanceTime
      }
    }"
}       

Response:

{
    "data": {
          "stages": [
              {
                  "stageUUID": "08dfcbb7-9c2e-44ca-bde5-4d7354b57caf",
                  "stageName": "Stage 2",
                  "engineUUID": "cccc688b-1655-4775-b3ec-070ce4bf456a",
                  "tenantUUID": "adff7f6a-e97d-11eb-9a03-0242ac130003",
                  "createdAt": "2024-02-08T14:00:31.738+00:00",
                  "updatedAt": "2024-02-08T14:00:31.738+00:00",
                  "stageStatus": true,
                  "stageType": false,
                  "addressee": "Profesionales",
                  "simultaneousOffers": "Todos",
                  "stageTime": 10,
                  "numberOfIterations": 10,
                  "shippingInterval": 55,
                  "numberOfAttemps": 5,
                  "offerExpirationTime": 10,
                  "unlimitedAcceptanceTime": false
              },
              {
                  "stageUUID": "d5f84b0e-0732-4ee7-8d6e-3647034cd21b",
                  "stageName": "Stage 4",
                  "engineUUID": "cccc688b-1655-4775-b3ec-070ce4bf456a",
                  "tenantUUID": "adff7f6a-e97d-11eb-9a03-0242ac130003",
                  "createdAt": "2024-02-08T14:00:31.738+00:00",
                  "updatedAt": "2024-02-08T14:00:31.738+00:00",
                  "stageStatus": true,
                  "stageType": false,
                  "addressee": "Profesionales",
                  "simultaneousOffers": "Todos",
                  "stageTime": 10,
                  "numberOfIterations": 10,
                  "shippingInterval": 55,
                  "numberOfAttemps": 5,
                  "offerExpirationTime": 10,
                  "unlimitedAcceptanceTime": false
              },
              {
                  "stageUUID": "bb0ea8cf-6ff6-492d-ae4a-46adf6eb0658",
                  "stageName": "Stage 6",
                  "engineUUID": "cccc688b-1655-4775-b3ec-070ce4bf456a",
                  "tenantUUID": "adff7f6a-e97d-11eb-9a03-0242ac130003",
                  "createdAt": "2024-02-08T14:00:31.738+00:00",
                  "updatedAt": "2024-02-08T14:00:31.738+00:00",
                  "stageStatus": true,
                  "stageType": false,
                  "addressee": "Profesionales",
                  "simultaneousOffers": "Todos",
                  "stageTime": 10,
                  "numberOfIterations": 10,
                  "shippingInterval": 55,
                  "numberOfAttemps": 5,
                  "offerExpirationTime": 10,
                  "unlimitedAcceptanceTime": false
              }
          ]
    }
} 

Puede consultar las etapas de motor en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
stageUUID UUID Identificador único de la etapa.
stageName string Nombre de la etapa.
engineUUID UUID Identificador único del motor al que pertenece la etapa.
tenantUUID UUID Identificador único del Tenant al que pertenece el motor.
createdAt timestamp Fecha de creación de la etapa.
updatedAt timestamp Fecha de última actualización de la etapa.
stageStatus Boolean 1: Activo. 0: Inactivo.
stageType Boolean 1: Subasta. 0: No subasta.
addressee string Destinatario de las ofertas (Sucursales, Profesionales, Sucursales/profesionales).
simultaneousOffers string Todos / Tamaño máximo del grupo.
stageTime int Duración máxima estimada de la etapa.
numberOfIterations int Cantidad de veces que correrá la configuración de la etapa.
shippingInterval int Minutos entre iteraciones.
numberOfAttemps int Cantidad de veces máxima que se le enviará notificación de la oferta al mismo ID destinatario.
offerExpirationTime int Tiempo que permanece vigente la oferta.
unlimitedAcceptanceTime Boolean 1: ilimitado; 0: limitado. Minutos durante los cuales la oferta estará vigente para su aceptación.

- Ordenamiento etapa

Request:

{
  "query": "{
    ordering_rules {
      orderingUUID
      stageUUID
      tenantUUID
      createdAt
      updatedAt
      order
      ruleType
      sortingType
    }
  }"
}

Response:

{
  "data": {
    "ordering_rules": [
            {
              "orderingUUID": "0d8e30ea-82b7-4b95-a48c-154816a5f6a3",
              "stageUUID": "bc59c427-24ae-47e0-9382-920c63125924",
              "tenantUUID": "afe7afc8-6679-11eb-ae93-0242ac130002",
              "createdAt": "2024-03-18T13:41:58.685081+00:00",
              "updatedAt": "2024-03-18T13:41:58.685081+00:00",
              "order": 1,
              "ruleType": "distance",
              "sortingType": "ASC"
            },
            {
              "orderingUUID": "4924ef1d-4a38-4668-85af-052d08c8d3e9",
              "stageUUID": "ea915b60-0210-4158-af02-8e8a66950d02",
              "tenantUUID": "afe7afc8-6679-11eb-ae93-0242ac130002",
              "createdAt": "2024-04-08T13:24:50.895+00:00",
              "updatedAt": "2024-05-16T12:34:41.704+00:00",
              "order": 2,
              "ruleType": "priority",
              "sortingType": "ASC"
            },
            {
              "orderingUUID": "ebdd4d14-17b0-4963-86b3-433038d3ce89",
              "stageUUID": "3747f5db-0a1b-4f94-bd7a-3f7dbc627054",
              "tenantUUID": "afe7afc8-6679-11eb-ae93-0242ac130002",
              "createdAt": "2024-03-05T19:41:53.457286+00:00",
              "updatedAt": "2024-03-05T19:41:53.457286+00:00",
              "order": 2,
              "ruleType": "cost",
              "sortingType": "DESC"
            }
        ]
}

Puede consultar los ordenamientos de la etapa en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
orderingUUID UUID Identificador único del ordenamiento.
stageUUID UUID Identificador único de la etapa en la que se definió el ordenamiento.
tenantUUID UUID Identificador único del tenant.
order int Orden cardinal definido para el ordenamiento en la etapa.
ruleType string Nombre del tipo de regla.
sortingType string Ascendente, Descendente.
updatedAt timestamp Fecha de ultima modificación.
createdAt timestamp Fecha de creación.

- Reglas etapa

Request:

{
  "query": "{
    filtering_rules {
      filteringUUID
      stageUUID
      tenantUUID
      createdAt
      updatedAt
      order
      applicationMode
      ruleType
      condition
      value
      symbol
    }
  }"
}

Response:

{
  "data": {
    "filtering_rules": [
      {
        "filteringUUID": "9b7cec66-72e2-4139-b0f0-c058b4cfed46",
        "stageUUID": "8348027c-97e9-448b-8329-43795d8182cd",
        "tenantUUID": "afe7afc8-6679-11eb-ae93-0242ac130002",
        "createdAt": "2024-03-05T17:54:44.54009+00:00",
        "updatedAt": "2024-03-05T17:54:44.54009+00:00",
        "order": 1,
        "applicationMode": "Y",
        "ruleType": "distance",
        "condition": "Greater than",
        "value": "1",
        "symbol": "Km"
      },
      {
        "filteringUUID": "7f7835bd-ccd1-4a4f-9e25-e7acc8019874",
        "stageUUID": "8348027c-97e9-448b-8329-43795d8182cd",
        "tenantUUID": "afe7afc8-6679-11eb-ae93-0242ac130002",
        "createdAt": "2024-03-05T17:54:44.54009+00:00",
        "updatedAt": "2024-03-05T17:54:44.54009+00:00",
        "order": 2,
        "applicationMode": "O",
        "ruleType": "cost",
        "condition": "Greater than or equal",
        "value": "2",
        "symbol": "$"
      },
      {
        "filteringUUID": "e78add40-337c-43b5-9dc1-a5149e169849",
        "stageUUID": "8348027c-97e9-448b-8329-43795d8182cd",
        "tenantUUID": "afe7afc8-6679-11eb-ae93-0242ac130002",
        "createdAt": "2024-03-05T17:54:44.54009+00:00",
        "updatedAt": "2024-03-05T17:54:44.54009+00:00",
        "order": 3,
        "applicationMode": "Y",
        "ruleType": "priority",
        "condition": "Include",
        "value": "1,2,3,4",
        "symbol": null
      }
    ]
}

Puede consultar las reglas de una etapa en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
filteringUUID UUID Identificador único de la regla.
stageUUID UUID Identificador único de la etapa en la que está definida la regla.
tenantUUID UUID Identificador único del tenant.
order int Orden cardinal definido para la etapa en el motor.
applicationMode string Y/O/ null.
ruleType string Nombre del tipo de regla. Ejemplo Distance: Distancia.
condition string Menor que, Menor o igual que, Mayor que, Mayor o igual que, Incluir.
value string Valor definido para la regla.
symbol string km, min, null.
updatedAt timestamp Fecha de ultima modificación.
createdAt timestamp Fecha de creación.

- Comentarios del servicio

Request:

{
  "query": "{
    booking_comments {
      id
      bookingId
      businessUnit
      comment
      createdBy
      updatedAt
      createdAt
    }
  }"
}

Response:

{
  "data": {
    "booking_comments": [
      {
        "id": 1290,
        "bookingId": 198170,
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "comment": "<p style=\"font-size: 14px;color: rgba(0, 0, 0, 0.87);\">Prueba III</p><p style=\"font-size: 14px;color: rgba(0, 0, 0, 0.87);\">Texto III<br/>Comentario III</p>",
        "createdBy": 5101,
        "updatedAt": "2023-07-13T20:45:07.913",
        "createdAt": "2023-07-13T20:45:07.903"
      },
      {
        "id": 1294,
        "bookingId": 198170,
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "comment": "<p style=\"font-size: 14px;color: rgba(0, 0, 0, 0.87);\"><b>Prueba IV</b></p><p style=\"font-size: 14px;color: rgba(0, 0, 0, 0.87);\"><strike>Texto IV</strike><br/><b>Comentario IV</b></p><p><br/></p>",
        "createdBy": 5101,
        "updatedAt": "2023-07-13T20:45:31.87",
        "createdAt": "2023-07-13T20:45:31.86"
      },
      {
        "id": 1304,
        "bookingId": 198170,
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "comment": "<p style=\"font-size: 14px;color: rgba(0, 0, 0, 0.87);\"><strike>Prueba V</strike></p><p style=\"font-size: 14px;color: rgba(0, 0, 0, 0.87);\"><u>Texto V</u><br/><i>Comentario V</i></p>",
        "createdBy": 5101,
        "updatedAt": "2023-07-13T20:45:53.816",
        "createdAt": "2023-07-13T20:45:53.809"
      }
    ]
  }
}

Puede consultar los comentarios del servicio en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int ID único del comentario.
businessUnit UUID Identificador de la Unidad de negocio.
bookingId int Identificador único del servicio.
comment string Contenido del comentario.
Createdby string Identificador único del usuario creador del comentario.
updatedAt timestamp Fecha de ultima modificación.
createdAt timestamp Fecha de creación.

- Skus de presupuestos

Request:

{
  "query": "{
    budget_skus {
      id
      skuComuneId
      budgetId
      serviceId
      quantity
      cost
      subtotalCost
      sale
      subtotal
      discount
      businessUnit
      createdAt
      updatedAt
    }
  }"
}

Response:

{
    "data": {
        "budget_skus": [
            {
                "id": 6,
                "skuComuneId": 3,
                "budgetId": 3,
                "serviceId": 6,
                "quantity": 0,
                "cost": 0,
                "subtotalCost": 0,
                "sale": 0,
                "subtotal": 0,
                "discount": 0,
                "businessUnit": "1234159a-72f5-11ea-bec0-000d3a061234",
                "createdAt": "2019-10-03T10:41:51.408+00:00",
                "updatedAt": "2022-10-07T21:25:28.987+00:00"
            },
            {
                "id": 7,
                "skuComuneId": 4,
                "budgetId": 4,
                "serviceId": 7,
                "quantity": 0,
                "cost": 0,
                "subtotalCost": 0,
                "sale": 0,
                "subtotal": 0,
                "discount": 0,
                "businessUnit": "1234159a-72f5-11ea-bec0-000d3a061234",
                "createdAt": "2019-10-03T10:41:51.408+00:00",
                "updatedAt": "2022-10-07T21:25:28.987+00:00"
            },
            {
                "id": 8,
                "skuComuneId": 5,
                "budgetId": 5,
                "serviceId": 8,
                "quantity": 0,
                "cost": 0,
                "subtotalCost": 0,
                "sale": 0,
                "subtotal": 0,
                "discount": 0,
                "businessUnit": "1234159a-72f5-11ea-bec0-000d3a061234",
                "createdAt": "2019-10-03T10:41:51.408+00:00",
                "updatedAt": "2022-10-07T21:25:28.987+00:00"
            }
        ]
    }
}

Puede consultar los Skus de presupuestos en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador de la orden.
skuComuneId int Identificador de comuna del sku.
budgetId int Identificador presupuesto.
serviceId int Identificador del Servicio.
quantity int Cantidad.
cost float Costo.
subtotalCost float Costo subtotal.
sale float Venta.
subtotal float Subtotal.
discount float Descuento.
businessUnit UUID Identificador de la Unidad de negocio.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de actualización.

- Postulaciones

Request:

{
  "query": "{  
    postulations {
        id
      businessUnit
      professionalId
      firstName
        lastName
      identificationType
      isProfessional
      email
      phone
      identificationNumber
      createdAt
      updatedAt
      }
    }"
}

Response:

{
  "data": {
    "postulations": [
      {
        "id": 1,
        "businessUnit": "84572164-d2e9-4d91-898f-992845721643",
        "professionalId": 1,
        "firstName": "Pedro",
        "lastName": "Perez",
        "identificationType": "RUT",
        "isProfessional": false,
        "email": "[email protected]",
        "phone": "112233445566",
        "identificationNumber": "365876959",
        "createdAt": "2019-09-18 14:12:37.222 -0300",
        "updatedAt": "2019-09-18 14:12:37.222 -0300",
      },
      {
        "id": 2,
        "businessUnit": "84572164-d2e9-4d91-898f-992845721643",
        "professionalId": 1,
        "firstName": "Maria",
        "lastName": "Ortiz",
        "identificationType": "RUT",
        "isProfessional": false,
        "email": "[email protected]",
        "phone": "112233445566",
        "identificationNumber": "3658769592",
        "createdAt": "2019-09-18 14:12:37.222 -0300",
        "updatedAt": "2019-09-18 14:12:37.222 -0300",
      },
      {
        "id": 3,
        "businessUnit": "84572164-d2e9-4d91-898f-992845721643",
        "professionalId": 1,
        "firstName": "Frank",
        "lastName": "Torres",
        "identificationType": "RUT",
        "isProfessional": false,
        "email": "[email protected]",
        "phone": "112233445566",
        "identificationNumber": "3658769592",
        "createdAt": "2019-09-18 14:12:37.222 -0300",
        "updatedAt": "2019-09-18 14:12:37.222 -0300",
      }]
}

Puede consultar las postulaciones en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador de la postulación.
businessUnit UUID Identificador de la Unidad de negocio.
professionalId int Identificador del Profesional.
firstName string Nombre del postulante.
lastName string Apellido del postulante.
identificationType string Tipo de documento del postulante.
isProfessional boolean Boolean que define si es un profesional.
email string Email del postulante.
phone string Telefono del postulante.
identificationNumber string Número de documento del postulante.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de última modificación.

- Budget

Request:

{
    "query": "{
        budgets {
            budgetId
            businessUnit
            serviceId
            totalAmount
            totalCost
            iva
            totalAmountWithIva
            serviceDuration
            budgetMargin
            comments
            createdAt
            updatedAt
        }
    }"
}

Response:

{
    "data": {
        "budgets": [
            {
                "budgetId" : 1,
                "businessUnit" : "51e1159a-72f5-11ea-bec0-000d3a06cedd",
                "serviceId" : 1205,
                "totalAmount" : 6000.0,
                "totalCost" : 7140.0,
                "iva" : 1140.0,
                "totalAmountWithIva" : 7140.0,
                "serviceDuration" : 0.0,
                "budgetMargin" : 0.0,
                "comments" : "Comentario de prueba",
                "createdAt" : "2019-10-16T16:17:19.032Z",
                "updatedAt" : "2019-10-16T16:17:19.032Z"
            },
            {
                "budgetId" : 2,
                "businessUnit" : "51e1159a-72f5-11ea-bec0-000d3a06cedd",
                "serviceId" : 1490,
                "totalAmount" : 25000.0,
                "totalCost" : 0.0,
                "iva" : 4000.0,
                "totalAmountWithIva" : 29000.0,
                "serviceDuration" : 0.0,
                "budgetMargin" : 0.0,
                "comments" : "",
                "createdAt" : "2019-10-22T21:30:11.893Z",
                "updatedAt" : "2019-10-22T21:30:11.893Z"
            },
            {
                "budgetId" : 22,
                "businessUnit" : "51e1159a-72f5-11ea-bec0-000d3a06cedd",
                "serviceId" : 1491,
                "totalAmount" : 22500.0,
                "totalCost" : 0.0,
                "iva" : 4275.0,
                "totalAmountWithIva" : 26775.0,
                "serviceDuration" : 0.0,
                "budgetMargin" : 0.0,
                "comments" : "",
                "createdAt" : "2019-10-28T15:35:24.015Z",
                "updatedAt" : "2019-10-28T15:35:24.015Z"
            }
        ]
    }
}

A continuación se describen los campos del objeto.

Campo Tipo PK Descripción
budgetId int Identificador
businessUnit UUID Identificador del Unidad de negocio
serviceId int Identificador del Servicio
totalAmount float Monto total
totalCost float Costo total
iva float Iva
totalAmountWithIva float Monto total con IVA
serviceDuration float Duracion del servicio
budgetMargin float Margen del budget
comments string Comentarios sobre el budget
createdAt timestamp Fecha de creacion
updatedAt timestamp Fecha de actualizacion

- Nombre de comuna de Sku

Request:

{
  "query": "{
    sku_comune_names {
      skuComuneId
      skuId
      skuName
      measureUnit
      businessUnit
      createdAt
      updatedAt
    }
  }"
}

Response:

{
    "data": {
        "sku_comune_names": [
            {
                "skuComuneId": 1,
                "skuId": 1,
                "skuName": "Sku name",
                "measureUnit": "Unidad (U)",
                "businessUnit": "1234159a-72f5-11ea-bec0-000d3a061234",
                "createdAt": "2019-10-03T10:41:51.408+00:00",
                "updatedAt": "2022-10-07T21:25:28.987+00:00"
            },
            {
                "skuComuneId": 2,
                "skuId": 2,
                "skuName": "Sku name",
                "measureUnit": "Unidad (U)",
                "businessUnit": "1234159a-72f5-11ea-bec0-000d3a061234",
                "createdAt": "2019-10-03T10:41:51.408+00:00",
                "updatedAt": "2022-10-07T21:25:28.987+00:00"
            },
            {
                "skuComuneId": 3,
                "skuId": 3,
                "skuName": "Sku name",
                "measureUnit": "Unidad (U)",
                "businessUnit": "1234159a-72f5-11ea-bec0-000d3a061234",
                "createdAt": "2019-10-03T10:41:51.408+00:00",
                "updatedAt": "2022-10-07T21:25:28.987+00:00"
            }
        ]
    }
}

Puede consultar los nombres de comunas de Skus en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo Descripción
skuComuneId int Identificador de comuna del sku.
skuId int Identificador del sku.
skuName string Nombre del sku.
measureUnit string Unidad de medida del sku.
businessUnit UUID Identificador de la Unidad de negocio.
createdAt string Fecha de creación.
updatedAt string Fecha de actualización.

- Pagos de excedentes

Request:

{
"query" : "{
  service_excess_payments {
    amount
    budgetId
    businessUnit
    createdAt
    id
    paidBy
    updatedAt
  }
}"
}

Response:

{
  "data": {
    "service_excess_payments": [
      {
        "amount": 3000,
        "budgetId": 508,
        "businessUnit": "8c22b4cc-b9ef-4790-af26-4a9a995c630d",
        "createdAt": "2022-04-19T20:17:13.444",
        "id": 1,
        "paidBy": "Sponsor",
        "updatedAt": "2022-04-19T20:17:13.444"
      },
      {
        "amount": 40800000,
        "budgetId": 308,
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "createdAt": "2022-04-20T18:21:40.308",
        "id": 2,
        "paidBy": "Sponsor",
        "updatedAt": "2022-04-20T18:21:40.308"
      }
    ]
}

Puede consultar los pagos de excedentes en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador del pago.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.
businessUnit UUID Identificador único de la Unidad de negocio.
paidBy string Rol del usuario que asume el pago.
budgetId int Id del presupuesto asociado.
amount float Monto a pagar

- Historial de servicios

Request:

{
  "query": "{  
    service_status_change_history_logs {
      id
      serviceId
      initialDateAndTime
      previousState
      newState
      type
      userId
      businessUnit
      createdAt
      updatedAt
      }
  }"
}

Response:

{
  "data": {
    "service_status_change_history_logs": [
      {
        "id": 191,
        "serviceId": 189123,
        "initialDateAndTime": "2022-11-07T19:50:15.776089",
        "previousState": "ACEPTADO",
        "newState": "EN CAMINO",
        "type": "BookingEdit",
        "userId": 10379,
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "createdAt": "2022-11-07T19:50:15.776089+00:00",
        "updatedAt": "2022-11-07T19:50:15.776089+00:00"
      },
      {
        "id": 194,
        "serviceId": 189123,
        "initialDateAndTime": "2022-11-07T19:51:03.960323",
        "previousState": "ACEPTADO",
        "newState": "EN CAMINO",
        "type": "BookingEdit",
        "userId": 10379,
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "createdAt": "2022-11-07T19:51:03.960323+00:00",
        "updatedAt": "2022-11-07T19:51:03.960323+00:00"
      },
      {
        "id": 200,
        "serviceId": 189123,
        "initialDateAndTime": "2022-11-07T19:57:57.506663",
        "previousState": "EN CAMINO",
        "newState": "INICIADO",
        "type": "BookingEdit",
        "userId": 10379,
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "createdAt": "2022-11-07T19:57:57.506663+00:00",
        "updatedAt": "2022-11-07T19:57:57.506663+00:00"
      },
      {
        "id": 238,
        "serviceId": 189189,
        "initialDateAndTime": "2022-11-08T16:46:01.863696",
        "previousState": "SERVICIO PENDIENTE POR PAGO",
        "newState": "CREADO",
        "type": "BookingEdit",
        "userId": 5103,
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "createdAt": "2022-11-08T16:46:01.863696+00:00",
        "updatedAt": "2022-11-08T16:46:01.863696+00:00"
      }
    ]
  }
}

Puede consultar las variables del historial de un servicio en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador del historial.
serviceId int Identificador del ID del servicio.
initialDateAndTime timestamp Fecha y hora de inicio del estado.
previousState string Estado anterior del servicio.
newState string Estado nuevo del servicio.
type string Clasificación del tipo del registro del historial del servicio.
userId int ID del usuario responsable del cambio generando el estado actual.
businessUnit UUID Identificador de la Unidad de negocio.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.

- Historial de cambios de estatus de Pago del proveedor

Request:

{
  "query": "providers_payment_history {
    id
    businessUnit
    paymentId
    paymentStatus
    serviceId
    servicePrice
    serviceCost
    createdAt
    updatedAt
    userId
    user
  }
  }"
}

Response:

{
  "data": {
    "providers_payment_history": [
      {
        "id": 1,
        "businessUnit": "22c2d28c-251c-11ef-9621-0242ac139998",
        "createdAt": "2023-03-15T14:05:12.654978+00:00",
        "paymentId": 104,
        "paymentStatus": "PAGO RECHAZADO",
        "serviceCost": 0,
        "serviceId": 1,
        "servicePrice": 0,
        "updatedAt": "2023-03-15T14:05:12.654978+00:00",
        "userId": 10,
        "user": "admintenantikemexico"
      }
    ]
  }
}

Puede consultar historial de cambios de estatus de Pago del proveedor en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificar del registro.
paymentId int ID de pago del proveedor.
businessUnit UUID Código unico de la unidad de negocio.
paymentStatus string Estado en el que se encuentra el pago.
serviceId int ID unico del servicio.
servicePrice float Precio del servicio.
serviceCost float Costo del servicio.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.
userId int ID del usuario que realizó la operación.
user string Usuario que realizó la operación.

- Pre-facturas

Request:

{
  "query": "{
      pre_invoices {
          id
          provider
          providerRut
          subTotal
          accountingAmount
          amountToPay
          accountingType
          serviceId
          serviceName
          serviceCost
          serviceDate
          businessUnit
          status
          createdAt
          updatedAt
      }
  }"
}

Response:

{
  "data": {
    "pre_invoices": [
      {
        "id": 1,
        "provider": "Nombre del proveedor",
        "providerRut": "23456789-6",
        "subTotal": 35900,
        "accountingAmount": 100,
        "amountToPay": 36000,
        "accountingType": "IVA",
        "serviceId": 5,
        "serviceName": "Nombre del servicio",
        "serviceCost": 35900,
        "serviceDate": "2022-05-30T19:27:10.746+00:00",
        "businessUnit": "4568882c-873d-11eb-9439-0242ac130002",
        "status":"En espera de pago",
        "createdAt": "2022-05-30T19:27:10.746+00:00",
        "updatedAt": "2022-05-30T19:27:10.746+00:00"
      },
      {
        "id": 2,
        "provider": "Nombre del proveedor",
        "providerRut": "23456789-6",
        "subTotal": 35900,
        "accountingAmount": 100,
        "amountToPay": 36000,
        "accountingType": "IVA",
        "serviceId": 5,
        "serviceName": "Nombre del servicio",
        "serviceCost": 35900,
        "serviceDate": "2022-05-30T19:27:10.746+00:00",
        "businessUnit": "4568882c-873d-11eb-9439-0242ac130002",
        "status":"En espera de pago",
        "createdAt": "2022-05-30T19:27:10.746+00:00",
        "updatedAt": "2022-05-30T19:27:10.746+00:00"
      }
    ]
  }
}

Puede consultar las pre-facturas en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int ID de pre-factura.
provider string Nombre del proveedor.
providerRut string RUT del proveedor.
subTotal float Monto total.
accountingAmount float Gasto contable.
amountToPay float Monto a pagar.
accountingType string Tipo contable.
serviceId int ID unico del servicio.
serviceName string Nombre del servicio.
serviceCost float Costo del servicio.
serviceDate timestamp Fecha del servicio.
businessUnit UUID Unidad de negocio.
status string Estado de la pre-factura.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de ultima modificación.

- Bitacora de acciones de casos

Request:

{
  "query": "{
    action_logs_view(limit: 3) {
      id
      createdBy
      createdAt
      caseNumber
      businessUnit
      action
      updatedAt
      updatedBy
    }
  }"
}

Response:

{
  "data": {
    "action_logs_view": [
      {
        "id": 3796,
        "createdBy": "Usuario prueba",
        "createdAt": "2021-07-18T23:07:52.717",
        "caseNumber": "10000000008",
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "action": "Solicitar asistencia",
        "updatedAt": "2021-07-18T23:07:52.717",
        "updatedBy": "Usuario prueba"
      },
      {
        "id": 3829,
        "createdBy": "Usuario prueba",
        "createdAt": "2021-07-20T20:24:08.433",
        "caseNumber": "10000000008",
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "action": "Avanzar",
        "updatedAt": "2021-07-20T20:24:08.433",
        "updatedBy": "Usuario prueba"
      },
      {
        "id": 4549,
        "createdBy": "Usuario prueba",
        "createdAt": "2021-08-25T14:27:44.291",
        "caseNumber": "10000000008",
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "action": "Avanzar",
        "updatedAt": "2021-08-25T14:27:44.291",
        "updatedBy": "Usuario prueba"
      }
    ]
}

Puede consultar las bitacora de acciones del casos en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador único del registro en bitácora.
caseNumber string Número del caso asociado.
action string Nombre de la acción ejecutada.
createdAt string Fecha y hora de su creación.
createdBy string Nombre del usuario que ejecutó la acción.
updatedAt string Fecha y hora de su actualización.
updatedBy string Nombre del usuario que actualizó la acción.
businessUnit UUID Identificador de la Unidad de negocio.

- Conceptos de costo de sucursal

Request:

{
  "query": "{
     cost_concept_relationships {
        id
        costConceptId
        serviceDefinitionId
        sucursalId
        comuneId
        top
        baseCost
        sale
        excessBaseCost
        excessBaseSale
        businessUnit
        updatedAt
        createdAt
      }
    }"
}

Response:

{
  "data": {
    "cost_concept_relationships": [
       {
        "id": 1,
        "costConceptId": 31,
        "serviceDefinitionId": 22,
        "sucursalId": 8,
        "comuneId": 9,
        "top": 1000
        "baseCost": 500,
        "sale": 1200,
        "excessBaseCost": 650,
        "excessBaseSale": 780,
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "updatedAt": "2020-09-16T23:08:49.547",
        "createdAt": "2020-09-16T23:08:49.547"
      },
      {
        "id": 2,
        "serviceDefinitionId":22,
        "sucursalId":8,
        "costConceptId": 32,
        "comuneId": 9,
        "top": 1000
        "baseCost": 500,
        "sale": 1200,
        "excessBaseCost": 650,
        "excessBaseSale": 780,
        "businessUnit": "51e1159a-72f5-11ea-bec0-000d3a06cedd",
        "updatedAt": "2020-09-16T23:08:49.547",
        "createdAt": "2020-09-16T23:08:49.547"
      }]
}

Puede consultar la relación entre conceptos de costo y sucursales en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Número único que identifica cada registro.
serviceDefinitionId int Número único que identifica la definicion de un servicio
sucursalId int Número único que identifica a la sucursal asociada.
costConceptId int Número único que identifica a un concepto de costo específico.
comuneId int Número único que identifica a una comuna.
baseCost float Representa el costo base para realizar un servicio.
sale float Indica el precio de venta del servicio al cliente.
top float Indica el límite máximo de uso permitido.
excessBaseCost float Describe costos adicionales o excedentes para realizar un servicio.
excessBaseSale float Indica costos adicionales relacionados con el precio de venta del servicio.
businessUnit UUID Define la unidad de negocio a la que pertenece el registro.
updatedAt timestamp Fecha y hora de la última actualización del registro.
createdAt timestamp Fecha y hora de creación del registro.

- Respuestas del cuestionario del servicio

Request:

{
  "query": "{
    service_forms {
      id
      question
      answer
      serviceFormId
      formId
      bookingId
      versionId
      createdAt
      updatedAt
      businessUnit
      tenant
    }
  }"
}



Response:

{
  "data": {
    "service_forms": [
      {
        "id": 5123,
        "question": "Ejemplo de pregunta",
        "answer": "Ejemplo de respuesta"
        "serviceFormId": "4568882c-783d-11eb-9439-0242ac130002",
        "formId": "4568882c-783d-11eb-9439-0242ac130002",
        "bookingId": 1231,
        "versionId": 1,
        "createdAt": "2023-12-20T16:34:53 -0400",
        "updatedAt": "2023-12-20T16:34:53 -0400",
        "businessUnit": "4568882c-783d-11eb-9439-0242ac130002",
        "tenant": "4568882c-783d-11eb-9439-0242ac130002",
      }
    ]
  }
}



Campo Tipo PK Descripción
id int Identificador único para cada respuesta del formulario.
question varchar Pregunta asociada al registro en el formulario.
answer varchar Respuesta proporcionada a la pregunta en el formulario.
serviceFormId uuid Identificador de cada formulario de servicio.
formId uuid Identificador único del formulario.
bookingId int Identificador asociado a la reserva relacionada con el formulario de servicios.
versionId int Identificador que indica la versión del formulario.
createdAt timestamptz Fecha y hora de creación del registro en el formulario.
updatedAt timestamptz Fecha y hora de la última actualización del registro en el formulario.
businessUnit uuid Identificador único para la unidad de negocio a la que se relaciona el formulario.
tenant uuid Identificador único que asocia el formulario a un Tenant.

Ofertas de motor

Request

{
  "query": "{
    motor_offers {
      acceptedAt
      addressee
      addresseeId
      addresseeType
      createdAt
      entityId
      motorUUID
      offerUUID
      rejectedAt
      state
      tenant
      updatedAt
      validUntil
      warehouseEntityType
    }"
}

Response

{
  "data": {
    "motor_offers": [
      {
        "acceptedAt": "2024-04-02T21:17:50.545522+00:00",
        "addressee": 4494,
        "addresseeId": 5,
        "addresseeType": "Profesionales",
        "createdAt": "2024-04-02T21:17:50.545522+00:00",
        "entityId": 197883,
        "motorUUID": "d3bb06ee-88dd-488a-816a-adab11186ec6",
        "offerUUID": "e17d029d-714c-436e-a95e-2678b9387544",
        "rejectedAt": null,
        "state": "ACCEPTED",
        "tenant": "afe7afc8-6679-11eb-ae93-0242ac130002",
        "updatedAt": "2024-05-13T19:30:00.508485",
        "validUntil": "2024-04-02T21:17:50.545522+00:00",
        "warehouseEntityType": "booking"
      },
      {
        "acceptedAt": null,
        "addressee": 4920,
        "addresseeId": 5,
        "addresseeType": "Profesionales",
        "createdAt": "2024-04-02T21:17:50.545522+00:00",
        "entityId": 197883,
        "motorUUID": "d3bb06ee-88dd-488a-816a-adab11186ec6",
        "offerUUID": "dd6ab66f-aee6-467c-8bc2-f7bf3030627f",
        "rejectedAt": "2024-04-02T21:17:50.545522+00:00",
        "state": "REJECTED",
        "tenant": "afe7afc8-6679-11eb-ae93-0242ac130002",
        "updatedAt": "2024-05-13T19:30:00.508485",
        "validUntil": "2024-04-02T21:17:50.545522+00:00",
        "warehouseEntityType": "booking"
      },
      {
        "acceptedAt": "2024-04-02T21:17:50.545522+00:00",
        "addressee": 10242,
        "addresseeId": 6,
        "addresseeType": "Sucursales",
        "createdAt": "2024-04-02T21:17:50.545522+00:00",
        "entityId": 196548,
        "motorUUID": "d3bb06ee-88dd-488a-816a-adab11186ec6",
        "offerUUID": "d3da0032-c88d-4369-966d-e4ba6c3b4d1f",
        "rejectedAt": null,
        "state": "ACCEPTED",
        "tenant": "afe7afc8-6679-11eb-ae93-0242ac130002",
        "updatedAt": "2024-05-13T19:30:00.508485",
        "validUntil": "2024-04-02T21:17:50.545522+00:00",
        "warehouseEntityType": "booking"
      }
    ]
  }
}

Puede consultar la informacion de las ofertas de los distintos motores configurados para su tenant.

Campo Tipo PK Descripción
acceptedAt string Fecha y hora en la que fue aceptada la oferta (En caso de haber sido aceptada).
addressee int ID de quien recibió la oferta. ej: ID de un profesional.
addresseeId int ID del tipo de entidad de quien recibió la oferta.
addresseeType string Nombre del tipo de entidad de quien recibió la oferta. ej: Profesional.
createdAt timestamp Fecha y hora en la que la oferta fue generada.
updatedAt timestamp Fecha y hora de su actualización.
entityId int ID de la entidad sobre la cual se generó una oferta.
warehouseEntityType string Nombre del tipo de entidad sobre la cual se generó una oferta. ej: "Booking".
motorUUID UUID Identificador del motor al que pertenece la oferta.
offerUUID UUID Identificador de la oferta.
rejectedAt timestamp Fecha y hora en la que fue rechazada la oferta.
state string Estado en el que se encuentra la oferta.
tenant UUID Tenant de la oferta.
validUntil timestamp Fecha hasta la que es válida la oferta antes de que expire.

- Tiempos asociados al ETA

Request:

{
  "query": "{  
      associated_eta_times {
        id
        serviceDefinitionId
        timeOfBeforeAppointment
        timeOfTolerance
        timeBeforeBackofficeNotification
        businessUnit
        createdAt
        updatedAt
      }
    }"
}

Response:

{
  "data": {
    "associated_eta_times": [
      {
        "id": 1,
        "serviceDefinitionId":10,
        "timeOfBeforeAppointment":20,
        "timeOfTolerance":10,
        "timeBeforeBackofficeNotification":15,
        "businessUnit": "bfda101c-67fc-459b-aa54-bfe94ed98ec4",
        "createdAt": "2024-08-21T15:08:49.547",
        "updatedAt": "2024-08-21T15:08:49.547"
      },
      {
        "id": 2,
        "serviceDefinitionId":3,
        "timeOfBeforeAppointment":30,
        "timeOfTolerance":5,
        "timeBeforeBackofficeNotification":15,
        "businessUnit": "bfda101c-67fc-459b-aa54-bfe94ed98ec4",
        "createdAt": "2024-08-21T15:08:49.547",
        "updatedAt": "2024-08-21T15:08:49.547"
      },
      {
        "id": 3,
        "serviceDefinitionId":100,
        "timeOfBeforeAppointment":25,
        "timeOfTolerance":20,
        "timeBeforeBackofficeNotification":25,
        "businessUnit": "bfda101c-67fc-459b-aa54-bfe94ed98ec4",
        "createdAt": "2024-08-21T15:08:49.547",
        "updatedAt": "2024-08-21T15:08:49.547"
      }]
}

Puede consultar los tiempos asociados al ETA en nuestra API de reportería, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador único.
serviceDefinitionId int Identificador de la Definición del Servicio.
timeOfBeforeAppointment int Minutos para calcular el ETA del profesional previo a la hora del servicio.
timeOfTolerance int Minutos extras para dar inicio al servicio.
timeBeforeBackofficeNotification int Minutos de inactividad del proveedor antes de notificar al backoffice de la inacción.
businessUnit UUID Identificador de la Unidad de negocio.
createdAt timestamp Fecha de creación.
updatedAt timestamp Fecha de última modificación.

- Aliados

Request:

{
  "query": "{  
      allies {
        id
        active
        name
        fancyName
        reasonName
        region
        commune
        province
        hasPromptPayment
        paymentMethod
        paymentEmail
        accountOwnerName
        bankName
        accountType
        accountNumber
        accountOwnerRut
        numberOfBranches
        businessUnit
      }
    }"
}

Response:

{
  "data": {
    "allies": [
      {
        "id": 1,
        "active": true,
        "name": "Taller Terceros Santiago",
        "fancyName": "Taller Terceros Santiago",
        "reasonName": "Taller Terceros Santiago",
        "region": "Atacama",
        "commune": "Alto del Carmen",
        "province": "Provincia del Carmen",
        "hasPromptPayment": true,
        "paymentMethod": "Efectivo",
        "paymentEmail": "[email protected]",
        "accountOwnerName": "Santiago Mareco",
        "bankName": "Banco de Chile",
        "accountType": "Corriente",
        "accountNumber": "123456789",
        "accountOwnerRut": "123456-7",
        "numberOfBranches": 4
      },
      {
      "id": 2,
      "active": false,
      "name": "Taller Los Andes",
      "fancyName": "Andes Autoservice",
      "reasonName": "Los Andes Taller",
      "region": "Metropolitana",
      "commune": "Las Condes",
      "province": "Provincia de Santiago",
      "hasPromptPayment": false,
      "paymentMethod": "Transferencia",
      "paymentEmail": "[email protected]",
      "accountOwnerName": "Ana Pérez",
      "bankName": "Banco Estado",
      "accountType": "Vista",
      "accountNumber": "987654321",
      "accountOwnerRut": "765432-1",
      "numberOfBranches": 2
      }
      ,
      {
      "id": 3,
      "active": true,
      "name": "Servicio Automotriz Valparaíso",
      "fancyName": "Auto Valpo",
      "reasonName": "Automotriz Valparaíso Ltda.",
      "region": "Valparaíso",
      "commune": "Viña del Mar",
      "province": "Provincia de Valparaíso",
      "hasPromptPayment": true,
      "paymentMethod": "Cheque",
      "paymentEmail": "[email protected]",
      "accountOwnerName": "Carlos Araya",
      "bankName": "Scotiabank",
      "accountType": "Vista",
      "accountNumber": "456123789",
      "accountOwnerRut": "456123-0",
      "numberOfBranches": 5
    }]
}

Puede consultar los aliados en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador único del aliado.
active boolean Indica si el aliado está activo.
name string Nombre del aliado.
fancyName string Nombre comercial.
reasonName string Nombre operacional o razón social.
region string Nombre de la región donde se encuentra.
commune string Nombre de la comuna donde se encuentra.
province string Nombre de la provincia donde se encuentra.
hasPromptPayment boolean Indica si el aliado tiene pronto pago habilitado.
paymentMethod string Método de pago utilizado por el taller o sucursal.
paymentEmail string Correo electrónico de pago asociado al aliado.
accountOwnerName string Nombre del titular de la cuenta bancaria asociada.
bankName string Nombre del banco asociado a la cuenta del aliado.
accountType string Tipo de cuenta bancaria.
accountNumber string Número de cuenta.
accountOwnerRut string RUT del titular de la cuenta bancaria.
numberOfBranches int Número de sucursales asociadas al aliado.
businessUnit UUID Identificador de la Unidad de negocio.

- Sucursales

Request:

{
  "query": "{  
      branches {
        id
        active
        branchType
        name
        fancyName
        rut
        region
        commune
        bankName
        accountType
        accountNumber
        allyId
        businessUnit
      }
    }"
}

Response:

{
  "data": {
    "branches": [
      {
        "id": 1,
        "active": true,
        "branchType": "Multimarca",
        "name": "Taller Terceros Santiago",
        "fancyName": "Terceros Santiago",
        "rut": "12345678-9",
        "region": "Atacama",
        "commune": "Alto del Carmen",
        "bankName": "Banco de Chile",
        "accountType": "Corriente",
        "accountNumber": "123456789",
        "allyId": 10
      },
      {
        "id": 2,
        "active": false,
        "branchType": "Consesionario",
        "name": "Taller Los Andes",
        "fancyName": "Andes Autoservice",
        "rut": "87654321-0",
        "region": "Metropolitana",
        "commune": "Las Condes",
        "bankName": "Banco Estado",
        "accountType": "Vista",
        "accountNumber": "987654321",
        "allyId": 10
      },
      {
        "id": 3,
        "active": true,
        "branchType": "Consesionario",
        "name": "Servicio Automotriz Valparaíso",
        "fancyName": "Auto Valpo",
        "rut": "45612345-6",
        "region": "Valparaíso",
        "commune": "Viña del Mar",
        "bankName": "Scotiabank",
        "accountType": "Vista",
        "accountNumber": "456123789",
        "allyId": 11
      }
    ]
  }

Puede consultar las sucursales en nuestra API de reporteria, a continuación se describen los campos del objeto.

Campo Tipo PK Descripción
id int Identificador único de la sucursal.
active boolean Indica si la sucursale está activa.
branchType string Tipo de sucursal.
name string Nombre.
fancyName string Nombre comercial.
rut string RUT.
region string Nombre de la región donde se encuentra la sucursal.
commune string Nombre de la comuna donde se encuentra la sucursal.
bankName string Nombre del banco asociado a la cuenta.
accountType string Tipo de cuenta bancaria.
accountNumber string Número de cuenta bancaria.
allyId int Identificador del aliado principal al que está asociada la sucursal.
businessUnit UUID Identificador de la Unidad de negocio.

API Report - Sincronización de casos

Request:

{
  "query": "{  
    cases (where: {updatedAt: {_gt: '2022-01-01'}}) {
        id
        caseNumber
        materiaId
        customerId
        statusName
        typeName
        informerName
        informerLastName
        casualtyAt
      }
    }"
}

Cuando utiliza una conexión para recuperar una lista de casos, estos vienen ordenados de forma ascendente por la fecha de actualización (updatedAt), puede utilizar este campo para luego solicitar los nuevos casos utilizando el argumento where junto con el operador gt.

Puede ver el ejemplo de código en el área oscura de la derecha.

En este ejemplo se están consultando los casos donde la fecha de actualización sea mayor a 2022-01-01. Puede ver mas informacicón sobre los operadores en Consultas avanzadas.

API Report - Consultas avanzadas

Paginación

Request:

{
  "query": "{

    cases_aggregate {
        aggregate {
          total: count
        }
    }  
    cases (limit: 5, offset: 0){
        id
        caseNumber
        typeName
        statusName
        informerName
        informerLastName
      }
    }"
}

Cuando utiliza una conexión para recuperar una lista de recursos, puede utilizar argumentos para especificar la cantidad de resultados que desea recuperar.

Puede seleccionar qué conjunto de resultados recuperar de una conexión mediante la paginación utilizando los operadores limit y offset.

limit especifica el número de filas que devolverá del conjunto de resultados y el offset determina qué sector se devolverá.

Campo Tipo Descripción
limit int Cantidad maxima de resultados limit: 10
offset int Sector que devolverá. offset: 2

Si utilizas paginación y necesitas saber cuantas iteraciones debes hacer para obtener todos los datos, puedes agregar a la petición la solicitud del total de registros, como se muestra en el ejemplo de la derecha.

A continuación se muestra un ejemplo de una respuesta que incluye el total de registros.

{
  "data": {
        "cases_aggregate": {
          "aggregate": {
            "total": 25000
          }
        },
        "cases": [...]
    }
}

Tomando en cuenta que la API devuelve máximo 1000 registros por petición y que tenemos un total de 25.000 registros, entonces debemos hacer 25 solicitudes, para obtener toda la data disponible.

A continuación se muestra un ejemplo de una petición donde se consulta el segundo sector de los datos disponibles utilizando el operador offset.

{
  "query": "{

    cases_aggregate {
        aggregate {
          total: count
        }
    }  
    cases (offset: 1000){
        id
        caseNumber
        typeName
        statusName
        informerName
        informerLastName
      }
    }"
}

Filtrado

Request:

{
  "query": "{  
    materials (where: {id: {_eq: 1}}){
        id
        type
      }
    }"
}

Puede usar el argumento where en sus consultas para filtrar los resultados según los valores de algunos campos. Incluso puede usar múltiples filtros en la misma cláusula where usando los operadores _and u _or. A continuación se detalla la lista de operadores disponible para usar con el argumento where.

Campo Descripción
_eq Igual a where: {id: {_eq: 1}}
_neq Diferente a where: {id: {_neq: 1}}
_gt Mayor a where: {id: {_gt: 1}}
_lt Menor a where: {id: {_lt: 1}}
_gte Mayor o igual a where: {id: {_gte: 1}}
_lte Menor o igual a where: {id: {_lte: 1}}
_in Presente en where: {id: {_in: [1,2,3]}
_nin No presente en where: {id: {_nin: [1,2]}}
_is_null Es nulo where: {type: {_is_null: false}}
_like Que contenga where: {type: {_like: "Hogar"}}
_nlike Que no contenga where: {type: {_nlike: "Hogar"}}

También puede usar el argumento distinct_on en sus consultas para filtrar los resultados y solo traer aquellos que tengan el definido con valores distintos.

Ordenamiento

Request:

{
  "query": "{  
    materials (order_by: {type: asc}){
        id
        type
      }
    }"
}

Los resultados de su consulta se pueden ordenar usando el argumento order_by. El orden de clasificación (ascendente frente a descendente) se establece especificando el valor de enumeración asc o desc para el nombre de la columna en el objeto de entrada order_by, por ejemplo. {type: desc}.

De forma predeterminada, para el orden ascendente, los valores nulos se devuelven al final de los resultados y para el orden descendente, los valores nulos se devuelven al principio de los resultados.

El argumento order_by toma una matriz de objetos para permitir la clasificación por varias columnas.

Uso de multiples argumentos

Request:

{
  "query": "{  
    materials (where: {id: {_neq: 1}}, order_by: {id: desc}, limit: 2){
        id
        type
      }
    }"
}

Se pueden usar varios argumentos juntos en la misma consulta.

Por ejemplo, puede usar el argumento where para filtrar los resultados y luego usar el argumento order_by para ordenarlos, finalmente tambien podria paginarlos usando los argumentos limit y offset.

En la derecha puede ver un ejemplo donde se obtiene una lista de materias donde el campo id sea diferente a 1, ordenamo de forma descendente por el mismo campo id y finalmente limitando los resultados a solo 2.

API Ecommerce

API Ecommerce - Introducción

Bienvenido a nuestra API creada especialmente para su empresa. Puedes utilizar nuestra API para acceder a la información relacionada a la venta de servicios de la plataforma.

Puede ver ejemplos de código en el área oscura de la derecha.

API Ecommerce - Bookings

- Obtener el listado de servicios comprados

curl "https://uat.ecommerce.api.tutenlabs.dev/booking/confirm-customer-payment?apiVersion=1" \ -H " "authorization:  Bearer eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiI0MiIsImlhdCI6MTY0MTk5Mjg4NCwiSU5URUdSQVRJT05fS0VZX0lEIjo0MiwiUk9MRV9JRCI6NDIsIlNDT1BFX0lEIjoxMCwiZXhwIjoxNjQyMDAwMDg0LCJURU5BTlRfVVVJRCI6Ijg4NzhjMDkwLTk2MDMtMTFlYS1hNTIyLTAyNDJhYzEyMDAwMiJ9.s38SgpQ5CANX6XjYz6K-kc2sO8_wlHL77nK24zTcFFE"
-

El comando anterior devuelve un JSON estructurado de la siguiente manera:

[
    {
        "id": 14639,
        "servicio": "myDemoBoletaPro",
        "fecha": "2020-07-02 22:00:00",
        "direccion": "Rosario Norte 615, Las Condes, Chile",
        "rangoHorario": [
            "12:00",
            "15:00"
        ],
        "rangoHorarioReagendado": [
            "08:00",
            "22:00"
        ],
        "presupuesto": false,
        "estado": "Finalizado",
        "calificado": true,
        "estadoBudget": null,
        "viewClient": true
    },
    {
        "id": 14591,
        "servicio": "myDemoBoletaPro",
        "fecha": "2020-07-02 20:00:00",
        "direccion": "Rosario Norte 615, Las Condes, Chile",
        "rangoHorario": [
            "12:00",
            "15:00"
        ],
        "rangoHorarioReagendado": [
            "17:00",
            "20:00"
        ],
        "presupuesto": false,
        "estado": "Sin calificar",
        "calificado": false,
        "estadoBudget": 6,
        "viewClient": true
    },
    {
        "id": 14586,
        "servicio": "myDemoBoletaPro",
        "fecha": "2020-07-13 15:00",
        "direccion": "Rosario Norte 615, Las Condes, Chile",
        "rangoHorario": [
            "15:00",
            "18:00"
        ],
        "rangoHorarioReagendado": [
            null,
            null
        ],
        "presupuesto": false,
        "estado": "Activos",
        "calificado": false,
        "estadoBudget": null,
        "viewClient": true
    }
]

Devuelve el listado de servicios comprados por el cliente.

Solicitud HTTP

GET https://uat.ecommerce.api.tutenlabs.dev/booking/casoservicio/{idCliente}

Header Params

Nombre Default Requerido Tipo Description
authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Description
ApiVersion int Versión de la API.

URL Params

Nombre Default Requerido Tipo Description
idCliente Long ID del cliente.

- Confirmación pago cliente

curl "https://uat.ecommerce.api.tutenlabs.dev/booking/confirm-customer-payment?apiVersion=1" \ -H " "authorization:  Bearer eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiI0MiIsImlhdCI6MTY0MTk5Mjg4NCwiSU5URUdSQVRJT05fS0VZX0lEIjo0MiwiUk9MRV9JRCI6NDIsIlNDT1BFX0lEIjoxMCwiZXhwIjoxNjQyMDAwMDg0LCJURU5BTlRfVVVJRCI6Ijg4NzhjMDkwLTk2MDMtMTFlYS1hNTIyLTAyNDJhYzEyMDAwMiJ9.s38SgpQ5CANX6XjYz6K-kc2sO8_wlHL77nK24zTcFFE"

Request body:


{
   "order":{
      "idMagentoOrder":8023,
      "createdAt":"2021-09-09T14:45:00.000Z",
      "payment":10000,
      "discount":5000,
      "paymentDetails":"{\"accountingDate\":\"0803\",\"buyOrder\":\"1317\",\"cardDetail\":{\"cardNumber\":\"6623\",\"cardExpirationDate\":null},\"detailOutput\":{\"authorizationCode\":\"1213\",\"paymentTypeCode\":\"VN\",\"responseCode\":0,\"sharesNumber\":0,\"amount\":\"34990\",\"commerceCode\":\"597020000540\",\"buyOrder\":\"1317\"},\"sessionId\":\"1477\",\"transactionDate\":\"2021-08-03 16:14:30\",\"urlRedirection\":\"https:\\\/\\\/webpay3gint.transbank.cl\\\/webpayserver\\\/voucher.cgi\",\"VCI\":\"TSY\"}",
      "status":20
   },
   "id_cliente":20,
   "fecha":"2021-09-09",
   "rangoHorarioInicio":"08:00",
   "rangoHorarioFin":"11:00",
   "timezoneMin":-3,
   "id_servicio":78,
   "configuracionWizard":{
      "id_comuna":1,
      "id_wizard":26,
      "wizad_configuration":[
         {
            "id":"1568250117033",
            "value":"1"
         },
         {
            "id":"1568250147930",
            "value":"30"
         },
         {
            "id":"1568250175271",
            "value":0
         },
         {
            "id":"1568250282525",
            "value":""
         }
      ]
   },
   "detalle":"",
   "contacto":{
      "nombre":"Nicolas Peralta",
      "telefono":"98066915"
   },
   "direccion":{
      "principal":"Luz 2959, Las Condes, Chile",
      "lat":10,
      "lng":20,
      "secundaria":"adf",
      "extra":"sada"
   },
   "lineaDeCosto":"Visita",
   "businessUnitId":"51e1159a-72f5-11ea-bec0-000d3a06cedd",
   "professional_id":5
}


El comando anterior devuelve JSON estructurado de la siguiente manera:


{
    "idCaso": 123,
    "idServicio": 123,
    "clientId": 123
}

Confirma el pago de un cliente.

Solicitud HTTP

POST https://uat.ecommerce.api.tutenlabs.dev/booking/confirm-customer-payment

Header Params

Nombre Default Requerido Tipo Description
authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Description
ApiVersion int Versión de la API.

Body Params

Nombre Default Requerido Tipo Descripcion
id_cliente int Id del cliente
fecha string fecha de creación de confirmación.
rangoHorarioInicio string Inicio del rango horario.
rangoHorarioFin string Final del rango horario.
timezoneMin int Zona horaria.
idServicio int Id del servicio
detalle string Detalle del caso-servicio
lineaDeCosto string Linea de costo.
businessUnitId string Id del sponsor.
professionalId int Id del profesional.
order
idMagentoOrder int Id de la orden.
createdAt date Fecha de creación.
payment long Monto de la orden.
discount long Monto del descuento.
paymentDetails string Detalles del pago.
status int Status de la orden.
configuracionWizard
idColumna int Id de la columna de wizard.
idWizard int Id de wizard.
wizad_configuration
id int Id de wizard.
value int Valor de wizard.
contacto
nombre string Nombre del cliente.
telefono int Teléfono del cliente.
direccion
principal string Dirección principal del cliente.
lat int Latitud de ubicación del cliente.
lng int Longitud de ubicación del cliente.
secundaria string Dirección secundaria del cliente.
extra string Atributos adicionales.

- Detalle de un servicio

curl "https://uat.ecommerce.api.tutenlabs.dev/booking/service/details/26406?apiVersion=1" \ -H "authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiI0OCIsImlhdCI6MTY0NDM1MTIzNiwiSU5URUdSQVRJT05fS0VZX0lEIjo0OCwiUk9MRV9JRCI6NDgsIlNDT1BFX0lEIjoxMCwiZXhwIjoxNjQ0MzU4NDM2LCJURU5BTlRfVVVJRCI6Ijg4NzhjMDkwLTk2MDMtMTFlYS1hNTIyLTAyNDJhYzEyMDAwMiJ9.JTkJukYuwq0WLkJmfTZ3NC0SagZlXXN_P8kJnZOWnKg"
-

El comando anterior devuelve un JSON estructurado de la siguiente manera:

{
    "serviceDetails": {
        "address": "Rosario Nte 615, Las Condes, Region Metropolitana, Chile",
        "serviceType": "Limpieza hogar 2",
        "descriptión": "TestMicroservicioBooking",
        "date": "2020-12-09 15:59:13",
        "checkIn": "10:00:00",
        "totalPricePaid": "0.0",
        "state": "Aceptado",
        "dateDesiredByClient": "Entre 2020-01-05 10:00:00 y 2020-01-05 10:50:00",
        "executionTime": "50",
        "costLine": "Visita"
    },
    "caseInformation": {
        "caseNumber": "27764",
        "state": "1",
        "closeDate": null,
        "dateUpdate": null
    },
    "professionalDetails": {
        "name": "Lucas Figueiredo",
        "phone": "+34645242060",
        "email": "[email protected]",
        "receptionDate": null,
        "acceptanceDate": null,
        "professionalCost": "0.0"
    },
    "trakingInformation": {
        "transferTime": "30",
        "transferStartDate": "2020-01-05 09:30:00",
        "executionStartDate": null,
        "executionEndDate": "2020-01-05 10:00:00",
        "technicalDateOnWay": null,
        "startDate": "2020-01-05 09:30:00",
        "endDate": "2020-01-05 10:50:00",
        "issue": null,
        "incidentDetail": null,
        "agreementDetail": "TestMicroservicioBooking"
    },
    "paymentDetails": {
        "datePurchase": null,
        "serviceValue": "14990.0",
        "subtotal": "0.0",
        "discounts": "0.0",
        "amountPaid": "0.0",
        "marginService": "0"
    }
}

Devuelve el detalle de un servicio.

Solicitud HTTP

GET https://uat.ecommerce.api.tutenlabs.dev/booking/service/details/{idBooking}

Header Params

Nombre Default Requerido Tipo Description
authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Description
ApiVersion int Versión de la API.

URL Params

Nombre Default Requerido Tipo Description
idBooking Long ID del booking.

API Ecommerce - Service definition

- Obtener el detalle de un servicio en base a su ID

curl "https://uat.ecommerce.api.tutenlabs.dev/servicedefinition/detail-service/161?apiVersion=1" -H "authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiI0OCIsImlhdCI6MTY0MzgxMzYxMSwiSU5URUdSQVRJT05fS0VZX0lEIjo0OCwiUk9MRV9JRCI6NDgsIlNDT1BFX0lEIjoxMCwiZXhwIjoxNjQzODIwODExLCJURU5BTlRfVVVJRCI6Ijg4NzhjMDkwLTk2MDMtMTFlYS1hNTIyLTAyNDJhYzEyMDAwMiJ9.rKbHTO-hgQymuZjSIgGPJI2HNbXTxSsgQOHiPMx_k6M"
-

El comando anterior devuelve un JSON estructurado de la siguiente manera:

{
    "netPrice": 100000,
    "avgDuration": 120,
    "availableZones": [
        {
            "id": 1,
            "name": "Las Condes"
        },
        {
            "id": 2,
            "name": "Providencia"
        },
        {
            "id": 3,
            "name": "Recoleta"
        },
        {
            "id": 10,
            "name": "Estación Central"
        },
        {
            "id": 13,
            "name": "Comunademo13"
        }
    ],
    "statusService": true,
    "nameService": "pro",
    "bussinesUnitId": "542927b6-72f5-11ea-bec0-000d3a06cedd",
    "expressSuge": true,
    "checklistName": "Lucas",
    "wizard": "Prueba Ylde",
    "nameSLA": "SLA Prueba",
    "categoryProduct": [
        {
            "id": 18070,
            "name": "Limpieza "
        },
        {
            "id": 18075,
            "name": "Armados"
        },
        {
            "id": 18071,
            "name": "Electricidad"
        }
    ],
    "idAssignmentEngine": 24,
    "hasBoleta": false
}

Response Body Params

Nombre Default Requerido Tipo Description
netPrice 0 double Precio neto del servicio.
avgDuration 0 double Duración promedio del servicio.
availableZones [] Array Array de las zonas disponibles del servicio.
id null int ID de la zona disponible del servicio.
name null string Nombre de la zona donde esta disponible el servicio.
statusService true boolean Estado del servicio.
nameService null string Nombre del servicio.
bussinesUnitId null UIID Id de la unidad de negocio a la que pertenece el servicio.
expressSuge false boolean Determina si el servicio es express o no.
checklistName null string Nombre del checklis.
wizard null string Nombre del wizar asignado.
nameSLA null string Nombre del SLA definido.
categoryProduct [] Array Conjunto de datos de la categorias de productos.
id null int ID del la categoria del producto.
name null string Nombre de la categoria del producto.
idAssignmentEngine null int ID del motor de asiganación.
hasBoleta false boolean Estado si genero una boleta.

Devuelve el detalle de un servicios.

Solicitud HTTP

GET https://uat.ecommerce.api.tutenlabs.dev/servicedefinition/detail-service/{id}

Query Params

Nombre Default Requerido Tipo Description
apiVersion String La version del api a consultar.

URL Params

Nombre Default Requerido Tipo Description
id Long ID del servicio.

Header Params

Nombre Default Requerido Tipo Description
authorization string Credencial de Autorización y Autenticación.

API Ecommerce - Wizard

- Obtener wizard y zonas disponibes según un id de servicio

curl "https://uat.ecommerce.api.tutenlabs.dev/servicedefinition/wizard?apiVersion=1" -H "authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiI0OCIsImlhdCI6MTY0Mzk4NjU0MiwiSU5URUdSQVRJT05fS0VZX0lEIjo0OCwiUk9MRV9JRCI6NDgsIlNDT1BFX0lEIjoxMCwiZXhwIjoxNjQzOTkzNzQyLCJURU5BTlRfVVVJRCI6Ijg4NzhjMDkwLTk2MDMtMTFlYS1hNTIyLTAyNDJhYzEyMDAwMiJ9.eoUj_Z6Nrzt_1Q8EIcxuXvlP4RDauMEbzuWDHDpU4EI" - H "serviceid: 6"
-

El comando anterior devuelve un JSON estructurado de la siguiente manera:

{
    "wizard": [
        {
            "id": 1569259230547,
            "name": "Titulo",
            "type": "titulo",
            "titulo": "Titulo"
        },
        {
            "id": 1569259125306,
            "max": 5,
            "min": 1,
            "name": "Selector de cantidades",
            "time": 5,
            "type": "cantidades",
            "price": 20000,
            "placeholder": "Selector de cantidades"
        },
        {
            "id": 1569259153101,
            "max": 5,
            "min": 1,
            "name": "Selector de cantidades con intervalos",
            "time": 5,
            "type": "cantidadesIntervalos",
            "price": 20000,
            "placeholder": "Selector de cantidades con intervalos",
            "intervalos": 1
        },
        {
            "id": 1569261244216,
            "name": "Selector de opciones 2",
            "type": "OpcionesMultiples",
            "options": [
                {
                    "id": null,
                    "name": "1",
                    "time": 1,
                    "price": "1"
                },
                {
                    "id": null,
                    "name": "2",
                    "time": 2,
                    "price": "2"
                }
            ]
        },
        {
            "id": 1569259219863,
            "name": "Area de texto",
            "type": "areaDeTexto",
            "text": "Area de texto"
        },
        {
            "id": 1569261206783,
            "name": "Selector multiple 2",
            "type": "OpcionesMultiples",
            "options": [
                {
                    "id": null,
                    "name": "1",
                    "time": 1,
                    "price": "1"
                },
                {
                    "id": null,
                    "name": "2",
                    "time": 2,
                    "price": "2"
                }
            ]
        }
    ],
    "neigborhoods": [
        {
            "id": 2,
            "name": "Providencia"
        }
    ]
}

Response Body Params

Nombre Default Requerido Tipo Description
wizard [] Array Conjunto de datos con el wizar y las zonas disponibles.

Devuelve el detalle de un servicios.

Solicitud HTTP

GET https://uat.ecommerce.api.tutenlabs.dev/servicedefinition/wizar

Query Params

Nombre Default Requerido Tipo Description
apiVersion String La version del api a consultar.

Header Params

Nombre Default Requerido Tipo Description
authorization string Credencial de Autorización y Autenticación.
serviceid string Id del servicio que se desea.

API Ecommerce - Wizard precio

- Calcular precio wizard segun las preguntas del usuario

curl "https://uat.ecommerce.api.tutenlabs.dev/servicedefinition/wizard?apiVersion=1" -H "authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiI0OCIsImlhdCI6MTY0Mzk4NjU0MiwiSU5URUdSQVRJT05fS0VZX0lEIjo0OCwiUk9MRV9JRCI6NDgsIlNDT1BFX0lEIjoxMCwiZXhwIjoxNjQzOTkzNzQyLCJURU5BTlRfVVVJRCI6Ijg4NzhjMDkwLTk2MDMtMTFlYS1hNTIyLTAyNDJhYzEyMDAwMiJ9.eoUj_Z6Nrzt_1Q8EIcxuXvlP4RDauMEbzuWDHDpU4EI" - H "serviceid: 6"
-

El body para calcular el precio del wizard:

{
  "fecha": "2022-01-18",
  "horario": [
    "18:00 ",
    " 19:00"
  ],
  "idComuna": 13,
  "idService": 41,
  "wizard_configuration": [
    {
      "id": "1617587123106",
      "value": 0
    },
    {
      "id": "1617587106538",
      "value": ""
    }
  ]
}

Body Params

Nombre Default Requerido Tipo Description
fecha null Date Fecha que se esta agendando el servicio.
horario [] Array Horario en que se agenda el servicio.
idComuna int Id de la comuna donde se realiza la petición del servicio.
idService int Id sel servicio.
wizard_configuration [] Array Es la configuración que se genera o decide el cliente.
id int Id de cada item del wizard.
value String Valor de cada item.

El comando anterior devuelve un JSON estructurado de la siguiente manera:

{
    "isExpress": false,
    "subTotal": 10000,
    "amountExpress": 0,
    "total": 10000,
    "amountBase": 10000
}

Response Body Params

Nombre Default Requerido Tipo Description
isExpress false boolean Determina si el servicio es expres.
subTotal 0 double Monto total del wizar sin los extras.
amountExpress 0 double Recarga del servicio por ser expres.
total 0 double Monto total del wizar.
amountBase 0 double Precio base del servicio.

Devuelve el detalle de un servicios.

Solicitud HTTP

GET https://uat.ecommerce.api.tutenlabs.dev/servicedefinition/wizar

Query Params

Nombre Default Requerido Tipo Description
apiVersion String La version del api a consultar.

Header Params

Nombre Default Requerido Tipo Description
authorization string Credencial de Autorización y Autenticación.
serviceid string Id del servicio que se desea.

API Ecommerce - Budget

- Aceptar presupuesto

curl "https://uat.ecommerce.api.tutenlabs.dev/monorest/accept-budget/49124?idbudget=123?apiVersion=1" \ -H " "authorization:  Bearer eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiI0MiIsImlhdCI6MTY0MTk5Mjg4NCwiSU5URUdSQVRJT05fS0VZX0lEIjo0MiwiUk9MRV9JRCI6NDIsIlNDT1BFX0lEIjoxMCwiZXhwIjoxNjQyMDAwMDg0LCJURU5BTlRfVVVJRCI6Ijg4NzhjMDkwLTk2MDMtMTFlYS1hNTIyLTAyNDJhYzEyMDAwMiJ9.s38SgpQ5CANX6XjYz6K-kc2sO8_wlHL77nK24zTcFFE"

El comando anterior devuelve un código 200 con el mensaje:

"Presupuesto aceptado correctamente."


Cambia el estado del presupuesto a aceptado.

Solicitud HTTP

POST https://uat.ecommerce.api.tutenlabs.dev/monorest/accept-budget/{idbooking}

Header Params

Nombre Default Requerido Tipo Description
authorization string Credencial de Autorización y Autenticación.

URL Params

Nombre Default Requerido Tipo Description
idBooking long ID del booking.

Query Params

Nombre Default Requerido Tipo Description
idBudget long ID del budget.
ApiVersion int Versión de la API.

- Rechazar presupuesto

curl "https://uat.ecommerce.api.tutenlabs.dev/monorest/reject-budget/49124?idbudget=123?apiVersion=1" \ -H " "authorization:  Bearer eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiI0MiIsImlhdCI6MTY0MTk5Mjg4NCwiSU5URUdSQVRJT05fS0VZX0lEIjo0MiwiUk9MRV9JRCI6NDIsIlNDT1BFX0lEIjoxMCwiZXhwIjoxNjQyMDAwMDg0LCJURU5BTlRfVVVJRCI6Ijg4NzhjMDkwLTk2MDMtMTFlYS1hNTIyLTAyNDJhYzEyMDAwMiJ9.s38SgpQ5CANX6XjYz6K-kc2sO8_wlHL77nK24zTcFFE"

El comando anterior devuelve un código 200 con el mensaje:

"Presupuesto rechazado correctamente.."


Cambia el estado del presupuesto a rechazado.

Solicitud HTTP

POST https://uat.ecommerce.api.tutenlabs.dev/monorest/reject-budget/{idBooking}

Header Params

Nombre Default Requerido Tipo Description
authorization string Credencial de Autorización y Autenticación.

URL Params

Nombre Default Requerido Tipo Description
idBooking long ID del booking.

Query Params

Nombre Default Requerido Tipo Description
idBudget long ID del budget.
ApiVersion int Versión de la API.

- Obtener presupuesto

curl "https://uat.ecommerce.api.tutenlabs.dev/monorest/get-budget/49124?apiVersion=1?apiVersion=1" \ -H " "authorization:  Bearer eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiI0MiIsImlhdCI6MTY0MTk5Mjg4NCwiSU5URUdSQVRJT05fS0VZX0lEIjo0MiwiUk9MRV9JRCI6NDIsIlNDT1BFX0lEIjoxMCwiZXhwIjoxNjQyMDAwMDg0LCJURU5BTlRfVVVJRCI6Ijg4NzhjMDkwLTk2MDMtMTFlYS1hNTIyLTAyNDJhYzEyMDAwMiJ9.s38SgpQ5CANX6XjYz6K-kc2sO8_wlHL77nK24zTcFFE"

El comando anterior devuelve JSON estructurado de la siguiente manera:


{
   "id":214,
   "skuList":[
      {
         "id":231,
         "nombre":"SKU TEST RT",
         "unidad":"Horas (h)",
         "cantidad":5,
         "precio":100,
         "subTotal":500
      }
   ],
   "duracionServicio":8,
   "precio":500,
   "descuento":0,
   "iva":95,
   "precioTotal":595,
   "comentarios":""
}

Obtiene el presupuesto de un servicio (booking) a través de un id.

Solicitud HTTP

GET https://uat.ecommerce.api.tutenlabs.dev/monorest/get-budget/{idbooking}

Header Params

Nombre Default Requerido Tipo Description
authorization string Credencial de Autorización y Autenticación.

URL Params

Nombre Default Requerido Tipo Description
idBooking long ID del booking.

Query Params

Nombre Default Requerido Tipo Description
ApiVersion int Versión de la API.

API Ecommerce - Service Provider

- Obtener profesionales disponibles

curl "https://uat.ecommerce.api.tutenlabs.dev/serviceprovider/gateway/availability?apiVersion=1" -H "authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiI0OCIsImlhdCI6MTY0MzgxMzYxMSwiSU5URUdSQVRJT05fS0VZX0lEIjo0OCwiUk9MRV9JRCI6NDgsIlNDT1BFX0lEIjoxMCwiZXhwIjoxNjQzODIwODExLCJURU5BTlRfVVVJRCI6Ijg4NzhjMDkwLTk2MDMtMTFlYS1hNTIyLTAyNDJhYzEyMDAwMiJ9.rKbHTO-hgQymuZjSIgGPJI2HNbXTxSsgQOHiPMx_k6M"
-

El comando anterior devuelve un JSON estructurado de la siguiente manera:

[
  {
    "date": "2022-02-07",
    "day": "lunes",
    "ranges": "8:00 - 11:00",
    "professionals": [
      {
        "id": 85,
        "contractorId": 0,
        "professionalServices": "[65,84,94,76,93,78,99,98,61,85,73,97,70,109,92,112,107,74,58,67,88,86,71,106,111,72,103,100,110,80,68,69,90,113,89,101,75,66,77,60,63]",
        "neigborghoods": "[58,55,72,54,56,59,63,65,61,70,64,67,71,57,62,68,69,66,60]",
        "name": "Edgar",
        "lastName": "Romero",
        "email": "[email protected]",
        "isActive": true,
        "isRemoved": false,
        "canAccept": false,
        "phone": "3108693877",
        "rfc": "79435362",
        "address": null,
        "latitude": null,
        "longitude": null,
        "workAddress": null,
        "workingRadius": null,
        "priority": null,
        "hasAvailabilityAutonomy": null,
        "isWaitingForApproval": null,
        "isApproved": null,
        "approvalWaitingDate": null,
        "noApprovalDate": null,
        "approvalDate": null,
        "createdBy": null,
        "banco": null,
        "tipoCuenta": null,
        "numeroCuenta": null,
        "creationDate": null,
        "documentType": null,
        "businessUnitId": "542927b6-72f5-11ea-bec0-000d3a06cedd",
        "businessName": null,
        "beneficiaryIdType": null,
        "beneficiaryIdNumber": null,
        "isInvoicer": null,
        "withholdingTax": null,
        "otherDiscounts": null,
        "hasActiveDiscount": null,
        "discountType": null,
        "amountConstituted": 0,
        "accumulatedAmount": 0,
        "discount": 0,
        "score": null,
        "serviceMargin": 20,
        "amountQualifiedBooking": null,
        "amountServiceMargin": 1,
        "isLandingVisible": false,
        "isOutstanding": false,
        "amountCompletedBookings": 5,
        "urlProfile": null,
        "aboutMe": null,
        "mobileDeviceToken": "fMFoGO1L7BY:APA91bG6tn_l657z0ikiaf58Ei6HmDRei57XgNfxn6xjiXYcHHP4Nh92IqLPmzt6OwDAOq8AGchxpLCfV3Qjo-n4mpPHxHumi4CEogJRifY0RR4fVoyieG54C-flipgvsgQHwF6DsQC9"
      }
    ]
  }
]

Devuelve el detalle de los profesional que se encuentran disponibles.

Solicitud HTTP

GET https://uat.ecommerce.api.tutenlabs.dev/serviceprovider/gateway/availability?apiVersion=1

Query Params

Nombre Default Requerido Tipo Description
apiVersion String La version del api a consultar.

Header Params

Nombre Default Requerido Tipo Description
authorization string Credencial de Autorización y Autenticación.
communeId string Id de la comuna.
serviceId string Id del servicio.

API Service Provider

API Service Provider - Introducción

Bienvenido a nuestra API de profesionales y contratistas.

Puede ver ejemplos de código en el área oscura de la derecha.

API Service Provider - Autorización y Autenticación

Para suministrar el token de acceso, lo puedes hacer de la siguiente manera:

curl "api_endpoint_here" \
  -H "Authorization: Bearer <token>"
  -

Asegurate de reemplazar <token> con el token de acceso generado a través del API de inicio de sesión.

Todas las peticiones que se realicen a la API deben contener en la cabecera la credencial Authorization, el cual debe contener la palabra Bearer seguido de un espacio en blanco y el token de acceso que es generado a través del API de inicio de sesión. Esto permite identificar quién es el que realiza la petición sobre el sistema.

Para poder generar un token de acceso, debe suministrar su email y su password al API de inicio de sesión .

API Service Provider - Limitaciones

Se debe tener en consideración los límites que ofrece la API para su implementación, actualmente se tiene un límite de peticiones por segundos y minutos que se pueden realizar:

Cuando se alcance alguno de estos límites el sistema responderá con un código HTTP de error 429.

Protocolo de Mensajería

Se define REST como protocolo de mensajería, utilizando las operaciones GET, POST, PUT y DELETE según los estándares internacionales de uso de estas operaciones.

Cada API que se llame deberá utilizar JSON como formato de intercambio de mensajes. Las respuestas corresponderán a códigos HTTP estándar (2XX, 3XX, 4XX, 5XX).

- Formato de mensaje de respuesta

Respuesta de procesamiento exitoso para métodos GET

Se define el código HTTP 200 como respuesta de procesamiento exitoso. Además se devolverá la información solicitada en un string con formato JSON.

Respuesta de procesamiento exitoso para métodos POST

Ejemplo de respuesta de procesamiento exitoso para métodos POST (Creación de un recurso):

{
  "href": "/service-provider/c047eed7-5568-44d7-a804-8ff67ec5a14d/customer/4546f2a4-09f4-11ec-9a03-0242ac130003?apiVersion=20201006"
}

Respuesta de procesamiento exitoso para métodos PUT

Se define el código HTTP 200 como respuesta de procesamiento exitoso. En la gran mayoría de los casos, no devolverá información (No content), sin embargo, en el caso que lo requiera, devolverá la información necesaria en un string con formato JSON.

Respuesta de procesamiento exitoso para métodos DELETE

Se define el código HTTP 200 como respuesta de procesamiento exitoso. En la gran mayoría de los casos, no devolverá información (No content), sin embargo, en el caso que lo requiera, devolverá la información necesaria en un string con formato JSON.

Respuesta de procesamiento no exitoso (Aplica para todos los métodos)

Ejemplo de respuesta de procesamiento no exitoso (Aplica para todos los métodos)

{
  "code": 400,
  "message": "Email is required"
}

Nuestra API de profesionales y contratistas utiliza los siguientes códigos de errores:

Código de error Significado
400 Bad Request El servidor no entendió la solicitud, generalmente debido a una sintaxis incorrecta o la ausencia de algún parámetro.
401 Unauthorized Las credenciales de autenticación necesarias no están presentes en la solicitud o son incorrectas..
403 Forbidden El servidor se niega a responder a la solicitud. Por lo general, esto se debe a que no posee el alcance adecuado para esta acción.
404 Not Found No se encontró el recurso solicitado.
429 Too Many Requests La solicitud no fue aceptada porque la solicitud superó los límites de consultas establecidos.
500 Internal Server Error Ocurrió un error interno en nuestra API.
503 Service Unavailable Estamos temporalmente fuera de línea por mantenimiento. Por favor, inténtelo de nuevo más tarde.

Independientemente del código del error, se devolverá la descripción del problema en un string con formato JSON.

Ambientes

Existen 3 ambientes para las integraciones:

API Service Provider - Auth

Inicio de sesión

curl "https://uat.mss.tutenlabs.dev/auth/login?apiVersion=20201006" \
  -H "email: my-email" \
  -H "password: my-password" \
  -H "system: my-system-app" \
-

El comando anterior devuelve un JSON estructurado de la siguiente manera:

{
  "expirationDate": "2019-07-12T14:10:36.09",
  "token": "eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"
}

Genera un nuevo token de acceso con duración finita que permitirá la autorización y autenticación en los distintos endpoints contenidos en este documento.

Solicitud HTTP

POST https://uat.mss.tutenlabs.dev/auth/login

Header Params

Nombre Default Requerido Tipo Description
email string Email del profesional o del contratista.
password string Su contraseña.
system string Identificador de Sistema que hace uso del token.

Query Params

Nombre Default Requerido Tipo Description
apiVersion string Versión del API a usar.

Cambio de contraseña de un usuario logueado

curl "https://uat.mss.tutenlabs.dev/auth/change-password?apiVersion=20201006" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk" \
  -H "currentPassword: my-current-password" \
  -H "newPassword: my-new-password" \
-

El comando anterior devuelve un código 200 sin contenido

Permite el cambio de contraseña de un usuario que se encuentra logueado en el sistema.

Solicitud HTTP

POST https://uat.mss.tutenlabs.dev/auth/change-password

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.
currentPassword string Contraseña actual.
newPassword string Nueva contraseña.

Query Params

Nombre Default Requerido Tipo Description
apiVersion string Versión del API a usar.

API Service Provider - About me

Obtener mi información de perfil

curl "https://uat.mss.tutenlabs.dev/about-me/my-profile?apiVersion=20201006" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"
-

El comando anterior devuelve un JSON estructurado de la siguiente manera:

{
  "profile": {
    "phoneNumber": "+56958821321",
    "firstName": "Josue",
    "lastName": "López",
    "email": "[email protected]"
  }
}

Devuelve la información de mi perfil

Solicitud HTTP

GET https://uat.mss.tutenlabs.dev/about-me/my-profile

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Description
apiVersion string Versión del API a usar.

API Service Provider - Casos

Obtener mis casos

curl "https://uat.mss.tutenlabs.dev/case?statusCaseId=3&createdAtMin=2019-01-15&createdAtMax=2019-02-01&limit=10&apiVersion=20201006" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"
-

El comando anterior devuelve un un código 200 con un JSON estructurado de la siguiente manera:

{
  "extra": {
    "nextLink": "https://uat.mss.tutenlabs.dev/case?statusCaseId=3&createdAtMin=2019-01-15&createdAtMax=2019-02-01&limit=10&page=2&apiVersion=20201006"
  },
  "cases": [
    {
      "id": 1000004879,
      "uuid": "cd3d362a-09d9-11ec-9a03-0242ac130003",
      "statusName": "Abierto",
      "businessUnitName": "Soa",
      "createdAt": "2021-08-26T15:38:44.458Z",
      "closedDate": "2021-08-29T10:31:54.001Z",
      "href": "/case/cd3d362a-09d9-11ec-9a03-0242ac130003",
      "customer": {
        "uuid": "d8019ead-6562-4131-9c4e-6f5ecbf232f3",
        "firstName": "Jhon",
        "lastName": "Luck",
        "href": "/customer/d8019ead-6562-4131-9c4e-6f5ecbf232f3"
      }
    },
    ...
    ...
    ...
  ]
}

Devuelve los casos asociados a su contratista o profesional.

Solicitud HTTP

GET https://uat.mss.tutenlabs.dev/case

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Description
limit 10 int Cantidad de registros por página.
statusCaseId int Filtra los casos según el estatus suministrado. (Definir estatus) -- 1. Abierto. -- 2 Cerrado.
createdAtMin string Fecha en formato ISO 8601 (YYYY-MM-DD) que permite filtrar por los casos creados después de la fecha indicada (El día suministrado se incluye en la búsqueda).
createdAtMax string Fecha en formato ISO 8601 (YYYY-MM-DD) que permite filtrar por los casos creados antes de la fecha indicada (El día suministrado se incluye en la búsqueda).
apiVersion string Versión del API a usar.

Obtener el detalle de mi caso

curl "https://uat.mss.tutenlabs.dev/case/cd3d362a-09d9-11ec-9a03-0242ac130003?apiVersion=20201006" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"
-

El comando anterior devuelve un JSON estructurado de la siguiente manera:

{
  "id": 1000004879,
  "statusName": "Abierto",
  "businessUnitName": "Soa",
  "createdAt": "2021-08-26T15:38:44.458Z",
  "closedDate": "2021-08-29T10:31:54.001Z",
  "customer": {
    "uuid": "d8019ead-6562-4131-9c4e-6f5ecbf232f3",
    "firstName": "Jhon",
    "lastName": "Luck",
    "href": "/customer/d8019ead-6562-4131-9c4e-6f5ecbf232f3"
  }
}

Devuelve el detalle de mi caso.

Solicitud HTTP

GET https://uat.mss.tutenlabs.dev/case/{caseUUID}

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.

URL Params

Nombre Default Requerido Tipo Description
caseUUID UUID UUID del caso

Query Params

Nombre Default Requerido Tipo Description
apiVersion string Versión del API a usar.

API Service Provider - Bookings

Obtener mis bookings

curl "https://uat.mss.tutenlabs.dev/booking?statusBookingId=3&createdAtMin=2019-01-15&createdAtMax=2019-02-01&limit=10&apiVersion=20201006" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"
-

El comando anterior devuelve un un código 200 con un JSON estructurado de la siguiente manera:

{
  "extra": {
    "nextLink": "https://uat.mss.tutenlabs.dev/booking?statusBookingId=3&createdAtMin=2019-01-15&createdAtMax=2019-02-01&limit=10&page=2&apiVersion=20201006"
  },
  "bookings": [
    {
      "uuid": "8fa60e86-06cd-11ec-9a03-0242ac130003",
      "serviceName": "Rescate de vehículo - Grúa Plataforma",
      "statusBookingName": "Profesional en Camino",
      "businessUnitName": "Arris",
      "createdAt": "2021-08-26T15:38:44.458Z",
      "href": "/service-provider/c047eed7-5568-44d7-a804-8ff67ec5a14d/booking/8fa60e86-06cd-11ec-9a03-0242ac130003",
      "case": {
        "id": 1000004879,
        "uuid": "cd3d362a-09d9-11ec-9a03-0242ac130003",
        "href": "/service-provider/c047eed7-5568-44d7-a804-8ff67ec5a14d/case/8fa60e86-06cd-11ec-9a03-0242ac130003"
      },
      "customer": {
        "uuid": "d8019ead-6562-4131-9c4e-6f5ecbf232f3",
        "firstName": "Jhon",
        "lastName": "Luck",
        "email": "[email protected]",
        "href": "service-provider/c047eed7-5568-44d7-a804-8ff67ec5a14d/customer/d8019ead-6562-4131-9c4e-6f5ecbf232f3"
      }
    },
    ...
    ...
    ...
  ]
}

Devuelve los bookings asociados a su contratista o profesional.

Solicitud HTTP

GET https://uat.mss.tutenlabs.dev/booking

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.

Query Params

Nombre Default Requerido Tipo Description
limit 10 int Cantidad de registros por página.
statusBookingId int Filtra los bookings según el estatus suministrado. (Definir estatus) -- 2. Asignado a contratista. -- 3 Por Agendar. -- 4 Profesional en Camino. -- 5. Pendiente confirmación Factura. -- 6. Finalizado.
createdAtMin string Fecha en formato ISO 8601 (YYYY-MM-DD) que permite filtrar por los bookings creados después de la fecha indicada (El día suministrado se incluye en la búsqueda).
createdAtMax string Fecha en formato ISO 8601 (YYYY-MM-DD) que permite filtrar por los bookings creados antes de la fecha indicada (El día suministrado se incluye en la búsqueda).
apiVersion string Versión del API a usar.

Obtener el detalle de mi booking

curl "https://uat.mss.tutenlabs.dev/booking/4921c669-0ad8-4b50-a8b9-60e4da958bd8?apiVersion=20201006" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"
-

El comando anterior devuelve un JSON estructurado de la siguiente manera:

{
  "serviceName": "Instalación cerradura digital",
  "detail": "Tipo de cerradura: Simple o cerrojo",
  "address": "Avenida Apoquindo 3600, Las Condes, Chile",
  "addressReference": "Frente a la panadería 'Los espositos'",
  "statusBookingName": "Por Agendar",
  "businessUnitName": "Arris",
  "executionTime": "60 minutos",
  "createdAt": "2021-08-26T15:38:44.458Z",
  "case": {
    "id": 1000004882,
    "uuid": "cd3d362a-09d9-11ec-9a03-0242ac130003",
    "href": "/service-provider/c047eed7-5568-44d7-a804-8ff67ec5a14d/case/cd3d362a-09d9-11ec-9a03-0242ac130003"
  },
  "customer": {
    "uuid": "d09c5bc6-09dd-11ec-9a03-0242ac130003",
    "firstName": "Dendi",
    "lastName": "Rami",
    "href": "service-provider/c047eed7-5568-44d7-a804-8ff67ec5a14d/customer/d09c5bc6-09dd-11ec-9a03-0242ac130003"
  }
}

Devuelve el detalle de mi booking.

Solicitud HTTP

GET https://uat.mss.tutenlabs.dev/booking/{bookingUUID}

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.

URL Params

Nombre Default Requerido Tipo Description
bookingUUID UUID UUID del booking.

Query Params

Nombre Default Requerido Tipo Description
apiVersion string Versión del API a usar.

Aceptar un booking asignado

curl "https://uat.mss.tutenlabs.dev/booking/fce4126a-09f0-11ec-9a03-0242ac130003/accept?apiVersion=20201006" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"
-

El comando anterior devuelve un código 200 sin contenido

Permite aceptar un booking asignado.

Solicitud HTTP

PUT https://uat.mss.tutenlabs.dev/booking/{bookingUUID}/accept

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.

URL Params

Nombre Default Requerido Tipo Description
bookingUUID UUID UUID del booking que se desea aceptar.

Query Params

Nombre Default Requerido Tipo Description
apiVersion string Versión del API a usar.

Rechazar un booking asignado

curl "https://uat.mss.tutenlabs.dev/booking/fce4126a-09f0-11ec-9a03-0242ac130003/reject?apiVersion=20201006" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"
-

El comando anterior devuelve un código 200 sin contenido

Permite rechazar un booking asignado.

Solicitud HTTP

PUT https://uat.mss.tutenlabs.dev/booking/{bookingUUID}/reject

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.

URL Params

Nombre Default Requerido Tipo Description
bookingUUID UUID UUID del booking que se desea rechazar.

Query Params

Nombre Default Requerido Tipo Description
apiVersion string Versión del API a usar.

Obtener estatus aplicables para el cambio de estatus de un booking

curl "https://uat.mss.tutenlabs.dev/booking/4921c669-0ad8-4b50-a8b9-60e4da958bd8/applicable-statuses?apiVersion=20201006" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"
-

El comando anterior devuelve un JSON estructurado de la siguiente manera:

{
  "bookingStatuses": [
    {
      "id": 3,
      "name": "Por Agendar"
    },
    ...
    ...
    ...
  ]
}

Devuelve los estatus aplicables para el cambio de estatus de un booking.

Solicitud HTTP

GET https://uat.mss.tutenlabs.dev/booking/{bookingUUID}/applicable-statuses

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.

URL Params

Nombre Default Requerido Tipo Description
bookingUUID UUID UUID del booking.

Query Params

Nombre Default Requerido Tipo Description
apiVersion string Versión del API a usar.

Modificar el estatus de un booking

curl "https://uat.mss.tutenlabs.dev/booking/fce4126a-09f0-11ec-9a03-0242ac130003/update-status/3?apiVersion=20201006" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"
-

El comando anterior devuelve un código 200 sin contenido

Permite modificar el estatus de un booking.

Solicitud HTTP

PUT https://uat.mss.tutenlabs.dev/booking/{bookingUUID}/update-status/{statusBookingId}

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.

URL Params

Nombre Default Requerido Tipo Description
bookingUUID UUID UUID del booking.
statusBookingId int Id del estatus del booking a asignar.

Query Params

Nombre Default Requerido Tipo Description
apiVersion string Versión del API a usar.

Obtener profesionales aplicables para un booking (Disponible solo para contratistas)

curl "https://uat.mss.tutenlabs.dev/booking/fce4126a-09f0-11ec-9a03-0242ac130003/applicable-professionals?limit=25&apiVersion=20201006" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"
-

El comando anterior devuelve un JSON estructurado de la siguiente manera:

{
  "extra": {
    "nextLink": "https://uat.mss.tutenlabs.dev/booking/fce4126a-09f0-11ec-9a03-0242ac130003/applicable-professionals?limit=25&page=2&apiVersion=20201006"
  },
  "professionals": [
    {
      "id": 121,
      "uuid": "f3467944-09f2-11ec-9a03-0242ac130003",
      "phoneNumber": "+56958821321",
      "firstName": "Josue",
      "lastName": "López",
      "email": "[email protected]",
      "createdAt": "2020-08-20T12:00:44.458Z"
    },
    ...
    ...
    ...
  ]
}

Devuelve los profesionales aplicables para asignar a un booking, filtrando entre la disponibilidad de los profesionales y el tipo de servicio del booking.

Solicitud HTTP

GET https://uat.mss.tutenlabs.dev/booking/{bookingUUID}/applicable-professionals

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.

URL Params

Nombre Default Requerido Tipo Description
bookingUUID UUID UUID del booking.

Query Params

Nombre Default Requerido Tipo Description
limit 10 int Cantidad de registros por página.
apiVersion string Versión del API a usar.

Asignar un profesional a un booking (Disponible solo para contratistas)

curl "https://uat.mss.tutenlabs.dev/booking/fce4126a-09f0-11ec-9a03-0242ac130003/professional/f87322a4-09f3-11ec-9a03-0242ac130003?apiVersion=20201006" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"
-

El comando anterior devuelve un código 200 sin contenido

Permite asignar un profesional a un booking.

Solicitud HTTP

PUT https://uat.mss.tutenlabs.dev/booking/{bookingUUID}/professional/{professionalUUID}

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.

URL Params

Nombre Default Requerido Tipo Description
bookingUUID UUID UUID del booking
professionalUUID UUID UUID del profesional

Query Params

Nombre Default Requerido Tipo Description
apiVersion string Versión del API a usar.

Obtener el checklist asociado a mi booking

curl "https://uat.mss.tutenlabs.dev/booking/4921c669-0ad8-4b50-a8b9-60e4da958bd8/checklist?apiVersion=20201006" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"
-

El comando anterior devuelve un JSON estructurado de la siguiente manera:

{
  "name": "Servicio de grúa en montaña",
  "questions": [
    {
      "id": 18897,
      "description": "Por favor indique el tiempo aproximado que le tomó prestar el servicio de grúa",
      "subtitle": "¿Cuál fue el tiempo aproximado de duración del servicio?",
      "placeholder": "Tiempo aproximado",
      "required": true,
      "order": 1,
      "questionType": 7,
      "options": [
        {
          "id": 35695,
          "description": "Entre 1 y 15 minutos"
        },
        {
          "id": 35699,
          "description": "Entre 16 minutos y 1 hora"
        },
        {
          "id": 35699,
          "description": "Entre 1 y 2 horas"
        }
        ...
        ...
        ...
      ]
    },
    {
      "id": 18903,
      "description": "Explique detalladamente si tuvo alguna complicación al prestar el servicio",
      "subtitle": "¿Tuvo complicaciones al prestar el servicio?",
      "placeholder": "Indique sus complicaciones",
      "required": false,
      "order": 2,
      "questionType": 3,
    },
    ...
    ...
    ...
  ]
}

Devuelve el detalle del checklist asociado a mi booking.

Solicitud HTTP

GET https://uat.mss.tutenlabs.dev/booking/{bookingUUID}/checklist

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.

URL Params

Nombre Default Requerido Tipo Description
bookingUUID UUID UUID del booking.

Query Params

Nombre Default Requerido Tipo Description
apiVersion string Versión del API a usar.

Subir un archivo asociado a una pregunta del checklist de mi booking (Disponible solo para vendedores)

curl "https://uat.mss.tutenlabs.dev/booking/4921c669-0ad8-4b50-a8b9-60e4da958bd8/checklist/question/{4588}/answer/upload-file?apiVersion=20201006" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"
-

El comando anterior devuelve un código 200 sin contenido

Permite subir un archivo para asociarlo como respuesta a una pregunta del checklist asociado a mi booking.

Solicitud HTTP

POST https://uat.mss.tutenlabs.dev/booking/{bookingUUID}/checklist/question/{questionId}/answer/upload-file

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.

URL Params

Nombre Default Requerido Tipo Description
bookingUUID UUID UUID del booking.
questionId int Id de la pregunta.

Query Params

Nombre Default Requerido Tipo Description
apiVersion string Versión del API a usar.

Responder una pregunta del checklist de mi booking (Disponible solo para vendedores)

curl "https://uat.mss.tutenlabs.dev/booking/4921c669-0ad8-4b50-a8b9-60e4da958bd8/checklist/question/{4588}/answer?apiVersion=20201006" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"
-

El comando anterior devuelve un código 200 sin contenido

Permite responder una pregunta del checklist asociado a mi booking. Los parámetros deben ser suministrados según el tipo de pregunta que se esté respondiendo:

Solicitud HTTP

POST https://uat.mss.tutenlabs.dev/booking/{bookingUUID}/checklist/question/{questionId}/answer

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.

URL Params

Nombre Default Requerido Tipo Description
bookingUUID UUID UUID del booking.
questionId int Id de la pregunta.

Body Params

Nombre Default Requerido Tipo Descripcion
answer string El texto de la respuesta asociado a la pregunta.
optionsId int[Array] El de la(s) opcion(es) seleccionada(s) como respuesta a la pregunta.

Query Params

Nombre Default Requerido Tipo Description
apiVersion string Versión del API a usar.

Agregar un comentario a mi booking

curl "https://uat.mss.tutenlabs.dev/booking/4921c669-0ad8-4b50-a8b9-60e4da958bd8/comment?apiVersion=20201006" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"
-

El comando anterior devuelve un código 200 sin contenido

Permite agregar un comentario a mi booking

Solicitud HTTP

POST https://uat.mss.tutenlabs.dev/booking/{bookingUUID}/comment

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.

URL Params

Nombre Default Requerido Tipo Description
bookingUUID UUID UUID del booking.

Body Params

Nombre Default Requerido Tipo Descripcion
comment string El comentario a agregar.

Query Params

Nombre Default Requerido Tipo Description
apiVersion string Versión del API a usar.

Finalizar el checklist de mi booking (Disponible solo para vendedores)

curl "https://uat.mss.tutenlabs.dev/booking/4921c669-0ad8-4b50-a8b9-60e4da958bd8/checklist/close?apiVersion=20201006" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"
-

El comando anterior devuelve un código 200 sin contenido

Permite finalizar el checklist asociado a mi booking. El checklist puede ser finalizado siempre y cuando todas las preguntas requeridas hayan sido respondidas.

Solicitud HTTP

POST https://uat.mss.tutenlabs.dev/booking/{bookingUUID}/checklist/close

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.

URL Params

Nombre Default Requerido Tipo Description
bookingUUID UUID UUID del booking.

Query Params

Nombre Default Requerido Tipo Description
apiVersion string Versión del API a usar.

Crear un presupuesto activo a mi booking (Disponible solo para vendedores)

curl "https://uat.mss.tutenlabs.dev/booking/4921c669-0ad8-4b50-a8b9-60e4da958bd8/budget?apiVersion=20201006" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"
-

El comando anterior devuelve un código 200 sin contenido

Permite crear un presupuesto activo a mi booking

Solicitud HTTP

POST https://uat.mss.tutenlabs.dev/booking/{bookingUUID}/budget

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.

URL Params

Nombre Default Requerido Tipo Description
bookingUUID UUID UUID del booking.

Body Params

Nombre Default Requerido Tipo Descripcion
comment string El comentario que desea agregar al presupuesto.
serviceDuration 60 string Duración del servicio en minutos.

Query Params

Nombre Default Requerido Tipo Description
apiVersion string Versión del API a usar.

Obtener skus aplicables para agregar al presupuesto activo de un booking (Disponible solo para vendedores)

curl "https://uat.mss.tutenlabs.dev/booking/4921c669-0ad8-4b50-a8b9-60e4da958bd8/budget/applicable-skus?limit=25&apiVersion=20201006" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"
-

El comando anterior devuelve un JSON estructurado de la siguiente manera:

{
  "extra": {
    "nextLink": "https://uat.mss.tutenlabs.dev/booking/4921c669-0ad8-4b50-a8b9-60e4da958bd8/budget/applicable-skus?limit=25&page=2&apiVersion=20201006"
  },
  "professionals": [
    {
      "id": 251485,
      "name": "Tubo de 4'",
      "unit": "Metros",
      "cost": 12590.00
    },
    ...
    ...
    ...
  ]
}

Devuelve los skus aplicables para agregar al presupuesto activo de un booking.

Solicitud HTTP

GET https://uat.mss.tutenlabs.dev/booking/{bookingUUID}/budget/applicable-skus

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.

URL Params

Nombre Default Requerido Tipo Description
bookingUUID UUID UUID del booking.

Query Params

Nombre Default Requerido Tipo Description
limit 10 int Cantidad de registros por página.
apiVersion string Versión del API a usar.

Agregar un sku al presupuesto activo de un booking (Disponible solo para vendedores)

curl "https://uat.mss.tutenlabs.dev/booking/fce4126a-09f0-11ec-9a03-0242ac130003/budget/sku/125985?apiVersion=20201006" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"
-

El comando anterior devuelve un código 200 sin contenido

Permite agregar un sku al presupuesto activo de un booking.

Solicitud HTTP

PUT https://uat.mss.tutenlabs.dev/booking/{bookingUUID}/budget/sku/{skuId}

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.

URL Params

Nombre Default Requerido Tipo Description
bookingUUID UUID UUID del booking
skuId int Id del sku.

Body Params

Nombre Default Requerido Tipo Descripcion
amount int Cantidad de skus a agregar al presupuesto (Debe ser mayor a 0)

Query Params

Nombre Default Requerido Tipo Description
apiVersion string Versión del API a usar.

Remover un sku al presupuesto activo de un booking (Disponible solo para vendedores)

curl "https://uat.mss.tutenlabs.dev/booking/fce4126a-09f0-11ec-9a03-0242ac130003/budget/sku/125985?apiVersion=20201006" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"
-

El comando anterior devuelve un código 200 sin contenido

Permite remover un sku al presupuesto activo de un booking.

Solicitud HTTP

DELETE https://uat.mss.tutenlabs.dev/booking/{bookingUUID}/budget/sku/{skuId}

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.

URL Params

Nombre Default Requerido Tipo Description
bookingUUID UUID UUID del booking.
skuId int Id del sku.

Query Params

Nombre Default Requerido Tipo Description
apiVersion string Versión del API a usar.

Enviar el presupuesto activo de un booking a validación (Disponible solo para vendedores)

curl "https://uat.mss.tutenlabs.dev/booking/fce4126a-09f0-11ec-9a03-0242ac130003/budget/send-to-validation?apiVersion=20201006" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"
-

El comando anterior devuelve un código 200 sin contenido

Permite enviar el presupuesto activo de un booking a validación

Solicitud HTTP

PUT https://uat.mss.tutenlabs.dev/booking/{bookingUUID}/budget/send-to-validation

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.

URL Params

Nombre Default Requerido Tipo Description
bookingUUID UUID UUID del booking.

Query Params

Nombre Default Requerido Tipo Description
apiVersion string Versión del API a usar.

Anular el presupuesto activo de un booking (Disponible solo para vendedores)

curl "https://uat.mss.tutenlabs.dev/booking/fce4126a-09f0-11ec-9a03-0242ac130003/budget/cancel?apiVersion=20201006" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"
-

El comando anterior devuelve un código 200 sin contenido

Permite anular el presupuesto activo de un booking. Si el presupuesto ya fue enviado a validación, entonces no puede ser anulado.

Solicitud HTTP

PUT https://uat.mss.tutenlabs.dev/booking/{bookingUUID}/budget/cancel

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.

URL Params

Nombre Default Requerido Tipo Description
bookingUUID UUID UUID del booking.

Query Params

Nombre Default Requerido Tipo Description
apiVersion string Versión del API a usar.

Obtener el detalle del presupuesto activo asociado a mi booking

curl "https://uat.mss.tutenlabs.dev/booking/4921c669-0ad8-4b50-a8b9-60e4da958bd8/budget?apiVersion=20201006" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"
-

El comando anterior devuelve un JSON estructurado de la siguiente manera:

{
  "comment": "Este presupuesto fue realizado en último momento para un cliente VIP",
  "serviceDuration": 180,
  "skus": [
    {
      "id": 251485,
      "name": "Tubo de 4'",
      "unit": "Metros",
      "cost": 12590.00
    },
    ...
    ...
    ...
  ]
}

Devuelve el detalle del presupuesto activo asociado a mi booking

Solicitud HTTP

GET https://uat.mss.tutenlabs.dev/booking/{bookingUUID}/budget

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.

URL Params

Nombre Default Requerido Tipo Description
bookingUUID UUID UUID del booking.

Query Params

Nombre Default Requerido Tipo Description
apiVersion string Versión del API a usar.

API Service Provider - Clientes

Obtener el detalle un cliente

curl "https://uat.mss.tutenlabs.dev/customer/4546f2a4-09f4-11ec-9a03-0242ac130003?apiVersion=20201006" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"
-

El comando anterior devuelve un JSON estructurado de la siguiente manera:

{
  "id": 125455,
  "firstName": "Jhon",
  "lastName": "Luck",
  "middleName": "Doe",
  "motherLastName": "Jupilar",
  "email": "[email protected]",
  "mobilePhone": "+56958835392",
  "landlinePhone": "+56958445397",
  "businessPhone": "+56958835301",
}

Devuelve el detalle de un cliente.

Solicitud HTTP

GET https://uat.mss.tutenlabs.dev/customer/{customerUUID}

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.

URL Params

Nombre Default Requerido Tipo Description
customerUUID UUID UUID del cliente.

Query Params

Nombre Default Requerido Tipo Description
apiVersion string Versión del API a usar.

API Service Provider - Planificación

Obtener la planificación de un vendedor (Disponible solo para contratistas)

curl "https://uat.mss.tutenlabs.dev/planning/3297d508-0ace-11ec-9a03-0242ac130003?assignedAtMin=2019-01-15&assignedAtMax=2019-01-20&apiVersion=20201006" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9eyJqdGkiOiIxIiwiaWF0IjoxNjI5OTU4MjM2LCJJTlRFR1JBVElPTl9LRVlfSUQiOjEsIlJPTEVfSUQiOjE4LCJTQ09QRV9JRCI6OCwiZXhwIjoxNjMwMDAxNDM2fQoggv3G4mKpr6tuaHvKpykjOI9hVkSc4Z9sYsgbpKJKk"
-

El comando anterior devuelve un JSON estructurado de la siguiente manera:

{
  "bookings": [
   {
      "uuid": "8fa60e86-06cd-11ec-9a03-0242ac130003",
      "serviceName": "Rescate de vehículo - Grúa Plataforma",
      "statusBookingName": "Profesional en Camino",
      "businessUnitName": "Arris",
      "createdAt": "2021-08-26T15:38:44.458Z",
      "executionDate": "2021-09-01T10:00:00.000Z",
      "assignedDate": "2021-08-26T16:01:10.391Z"
   },
   ...
   ...
   ...
  ]
}

Devuelve los bookings asignados a un vendedor según los filtros de fechas aplicados. Para consumir esta API debe siempre suministrarse una de las dos opciones de filtro de fecha disponibles:

El rango de fechas no puede ser mayor a 7 días.

Solicitud HTTP

GET https://uat.mss.tutenlabs.dev/professional/{professionalUUID}/planning

Header Params

Nombre Default Requerido Tipo Description
Authorization string Credencial de Autorización y Autenticación.

URL Params

Nombre Default Requerido Tipo Description
professionalUUID UUID UUID del profesional.
assignedAtMin string Fecha en formato ISO 8601 (YYYY-MM-DD) que permite filtrar por la fecha de asignación de los bookings del vendedor después de la fecha indicada (El día suministrado se incluye en la búsqueda).
assignedAtMax string Fecha en formato ISO 8601 (YYYY-MM-DD) que permite filtrar por la fecha de asignación de los bookings del vendedor antes de la fecha indicada (El día suministrado se incluye en la búsqueda).
executionDateAtMin string Fecha en formato ISO 8601 (YYYY-MM-DD) que permite filtrar por la fecha de ejecución de los bookings del vendedor después de la fecha indicada (El día suministrado se incluye en la búsqueda).
executionDateAtMax string Fecha en formato ISO 8601 (YYYY-MM-DD) que permite filtrar por la fecha de ejecución de los bookings del vendedor antes de la fecha indicada (El día suministrado se incluye en la búsqueda).

Query Params

Nombre Default Requerido Tipo Description
apiVersion string Versión del API a usar.

Webhooks

¿Qué es un webhook?

Un webhook es un sistema de comunicación que nos permite enviar datos de manera instantánea a una URL específica, cuando ocurre un evento predefinido.

Tutenlabs utiliza webhooks para notificar a su aplicación cuando ocurre un evento en nuestra aplicación. Los webhooks son particularmente útiles para eventos asincrónicos, como cuando se actualiza un booking o cuando se actualiza un presupuesto.

Solicitudes del webhook

Cuando ocurre un evento de webhook en Tutenlabs, se enviará una solicitud POST a la URL del webhook configurada utilizando el protocolo HTTPS.

Por favor, responda con un código de estado 200 para confirmar que el webhook se capturó correctamente. Si el estado de la respuesta es diferente, el webhook se reintentará hasta tres veces más. Cada reintento se realizará aproximadamente cada 10 minutos. Si no se logra establecer la comunicación después de estos intentos, el mensaje se descartará automáticamente.

Cada mensaje irá acompañado de una clave de idempotencia única (Un random UUID). Esta clave le permitirá a identificar si algún mensaje ha sido enviado de manera duplicada para proceder a omitirlo.

El cuerpo del webhook será un objeto de recurso JSON que estará relacionado con el evento (consulte los detalles del cuerpo para cada evento).

Los encabezados de la solicitud incluirán:

Nombre Description
Content-Type Con el valor application/json.
X-Event-Name El nombre del evento que activó el webhook.
Authorization Contendrá la información de autenticación basada en el método de Autenticación de Acceso Básico.
Idempotency-Key Clave de idempotencia única.

Tipos de eventos

Esta es la lista completa de eventos de webhooks disponibles en Tutenlabs:

Nombre Description
booking_updated Ocurre cuando se modifica un booking.
budget_updated Ocurre cuando se modifica un presupuesto.
payment_status_updated Ocurre cuando se actualiza el estado del pago de un servicio
checklist_updated Ocurre cuando se actualiza el checklist de un servicio
provider_created Ocurre cuando se crea un prestador
booking_accepted Ocurre cuando un servicio es aceptado
booking_canceled_by_client Ocurre cuando un servicio es cancelado por el cliente
booking_canceled_by_operator Ocurre cuando un servicio es cancelado por el operador
booking_canceled_by_provider Ocurre cuando un servicio es cancelado por el proveedor
booking_finish_successfully Ocurre cuando un servicio es finalizado satisfactoriamente
booking_finish_with_incidence Ocurre cuando un servicio es finalizado con incidencia
booking_on_way Ocurre cuando un servicio pasa a estar en camino
booking_initiated Ocurre cuando un servicio inicia
tools_created Ocurre cuando se crea una herramienta
tools_updated Ocurre cuando se actualiza una herramienta
tools_activated_inactivated Ocurre cuando se activa/inactiva una herramienta
tools_document_created Ocurre cuando se asocia un documento a una herramienta.
tools_document_updated Ocurre cuando se actualiza un documento de una herramienta.
professional_document_created Ocurre cuando se asocia un documento a un profesional.
professional_document_updated Ocurre cuando se edita un documento asociado al profesional.
professional_created Ocurre cuando se crea un nuevo profesional.
professional_updated Ocurre cuando se edita un profesional.
professional_assigned Este evento ocurre cuando un profesional es asignado a un servicio.

Payloads por evento

A continuación se muestra el payload de los datos de eventos de webhook.

booking_updated

Este evento ocurre cuando un servicio es modificado.

Request:

{
   "bookingId": 123456,
   "statusId": 5,
   "providerId": 123,
   "professionalId": 1234,
   "incidence": "Se corta la llamada",
   "otherIncidence": "Otra incidencia personalizada",
   "cancellationReason": "El problema ya se habia solucionado",
   "otherCancellationReason": "Otro motivo personalizado",
   "startDate": "2024-01-24T14:48:00Z",
   "endDate": "2024-01-24T16:48:00Z"
}

Payload

Nombre Tipo Descripcion
bookingId Long Id del servicio.
statusId int Estado del servicio

Valores posibles:

0 = Creado/Agendado
1 = Aceptado
4 = Iniciado
5 = En camino
-5 = Concluido con Incidencias
3 = Concluido satisfactoriamente
-2 = Cancelado por el cliente
22 = Cancelado por el operador
15 = Cancelado por el técnico
-6 = Servicio cerrado
providerId Long Id del proveedor.
professionalId Long Id del profesional.
incidence string Incidencia ocurrida

Valores posibles:

- Requiere otra asistencia
- Se corta la llamada
- Otro
otherIncidence string Otra incidencia personalizada
cancellationReason string Razón de cancelación del servicio

Valores posibles:

- Ya no requiere el servicio/Ya solucionó
- Restitución
- Costo elevado
- Excedente
- Proveedor no acudió
- Requiere otra asistencia
- Servicio costo usuario
- No acepta cita/proveedor
- Proveedor pide reasignar
- Otra razón
otherCancellationReason string Otro motivo del cambio de estado
startDate string Fecha de inicio del servicio
endDate string Fecha de fin del servicio

budget_updated

Este evento ocurre cuando un presupuesto es modificado.

Request:

{
   "bookingId": 1,
   "providerPayment": false,
   "costConcepts": [
      {
        "amount": 1,
        "baseCost": 60,
        "basePrice": 60,
        "excessBaseCost": null,
        "excessBasePrice": null,
        "id": 1338,
        "name": "CC Band",
        "rateType": 3,
        "top": null,
        "totalCost": 60,
        "totalPrice": 60
      }
   ]
}

Payload

Nombre Tipo Descripcion
bookingId int Id del servicio.
providerPayment boolean Indica si aplica pago a proveedor.
costConcepts Array Lista de conceptos de costo del presupuesto
id Long Id del concepto de costo.
name string Nombre del concepto de costo.
amount int La cantidad de unidades asociadas al concepto de costo.
baseCost double El costo base (Generalmente relacionado a los costos del proveedor).
basePrice double El precio base (Generalmente relacionado al precio de venta).
rateType int Tipo de tarificación mediante el cual se calcula el precio y costo total del concepto de costo.

Valores posibles:

1 = Fijo/por unidad
2 = Exceso
3 = Dummy
4 = Base
excessBaseCost double El costo de exceso base.
excessBasePrice double El precio de exceso base.
top int El tope a utilizar para el calculo costo/precio de exceso.
totalCost double El costo total.
totalPrice double El precio total.

payment_status_updated

Este evento ocurre cuando el estado del pago de un servicio es modificado.

Request:

{
   "bookingId": 123456,
   "paymentStatusId": 5,
   "description": "El servicio no es aplicable a pago"
}

Payload

Nombre Tipo Descripcion
bookingId Long Id del servicio.
paymentStatusId int Estado del pago

Valores posibles:

1 = En revisión proveedor
2 = En revisión cuentas por pagar
3 = En espera de pagos
4 = Pagado
5 = Pago rechazado
7 = Inactivo
description string Razón por la cual se rechazó el pago al proveedor.

checklist_updated

Este evento ocurre cuando el checklist de un servicio es modificado

Request:

{
   "bookingId": 123,
   "checklist": [
      {
         "checked": true,
         "checkingDate": "2022-07-25T22:33:06.437Z",
         "description": "",
         "hasFiles": true,
         "files": "[{\"fileId\":12,\"fileName\":\"imagen-123456.png\",\"fileUrl\":\"https://example.com/booking/123456.png\",\"fileRemoteId\":\"0x8DA0C1234567890\",\"fileRemoteName\":\"123456.png\",\"context\":\"booking\",\"extraData\":{\"label\":\"checklist_labels\",\"author\":\"username\",\"creationDate\":\"Mar 24, 2024 2:00:00 PM\"},\"contextId\":1234,\"description\":null,\"creationTime\":1648045920169,\"deletionTime\":null}]",
         "hasOptions": true,
         "options": "[{\"id\":1,\"name\":\"Opcion 1\"},{\"id\":2,\"name\":\"Opcion 2\"},{\"id\":3,\"name\":\"Opcion 3\"}]",
         "placeholder": "string",
         "required": false,
         "subtitle": "string",
         "action": 1,
         "scale": 3,
         "value": "true",
         "formularyId": 0
      }
   ]
}

Payload

Nombre Tipo Descripcion
bookingId Long Id del servicio.
checklist Array Lista de checklist del servicio
checked boolean Indica si el item fue respondido
checkingDate string Fecha en la cual se completo un item.
description string Descripción del item.
hasFiles boolean Indica si el item tiene archivo asociado.
files string Describe el nombre del archivo asociado.
Valores posibles:

- fileId: Identificador del archivo

- fileName: nombre del archivo

- fileUrl: URL del archivo

- fileRemoteId: identificador interno

- fileRemoteName: nombre original del archivo

- context: entidad relacionada al archivo

- extraData: datos extras asociados al archivo

- contextId: identificador de la entidad relacionada

- description: descripción del archivo

- creationTime: fecha de creación del archivo

- deletionTime: fecha de eliminación virtual del archivo.
hasOptions boolean Indica si el item tiene opciones.
options string Describe las opciones del item.
Valores posibles:

- id: Identificador de la opción

- name: nombre de la opción
placeholder string Descripción del item.
required boolean Indica si el item/pregunta es requerido.
subtitle string Subtitulo del item.
action int Tipo de acción se realizara sobre el item.
Valores posibles:

- 1. Checkbox

- 2. Responder Si/No

- 3. Campo de texto

- 4. Campo de comentarios

- 5. Archivo PDF

- 6. Fecha

- 7. Lista de opciones

- 8. Firma

- 9. Formulario

- 10. Fotos
scale int Ordenamiento del item dentro del checklist.
value string Valor del item. El contenido dependerá de la acción configurada en el item.
formularyId int Identificador del Formulario.

provider_created

Este evento ocurre cuando un prestador es creado

Request:

{
   "externalId": "123456789",
   "name": "Razón social",
   "email": "[email protected]",
   "address": "Dirección del prestador",
   "identificationNumber": "456789456"
}

Payload

Nombre Tipo Descripcion
externalId string Código externo de identificación.
name string Nombre de la razon social.
email string Correo electrónico.
address string Dirección del prestador.
identificationNumber string Número de identificación fiscal.

booking_accepted

Este evento ocurre cuando es actualizado el estado de un servicio a "Aceptado".

Request:

{
  "statusId": 1,
  "oldState": 0,
  "endDate": "2024-03-12T17:40:00.000Z",
  "providerId": 5319,
  "professionalId": 15297,
  "bookingId": 707753,
  "startDate": "2024-03-12T16:10:00.000Z"
}

Payload

Nombre Tipo Descripcion
statusId Int Estado nuevo del servicio.

El valor será igual a (1 = Aceptado).
oldState Int Estado anterior del servicio, antes del cambio.

Valores posibles:

0 = Creado
10 = Agendado
4 = Iniciado
5 = En camino
endDate Date Fecha de fin del servicio
providerId Long Id del proveedor
professionalId Long Id del profesional
bookingId Long Id del servicio
startDate Date Fecha de inicio del servicio

booking_on_way

Este evento ocurre cuando es actualizado el estado de un servicio a "En camino".

Request:

{
  "oldState": 1,
  "onWayDate": "2024-03-19T15:23:08+0000",
  "bookingId": 708372,
  "newState": 5
}

Payload

Nombre Tipo Descripcion
oldState Int Estado anterior del servicio, antes del cambio.

Valores posibles:

1 = Aceptado
onWayDate Date Fecha de cambio del estado a En camino
bookingId Long Id del servicio
newState Int Estado nuevo del servicio.

El valor será igual a (5 = En camino).

booking_initiated

Este evento ocurre cuando es actualizado el estado de un servicio a "Iniciado".

Request:

{
  "realStartDate": "2024-03-12T13:20:35+0000",
  "oldState": 1,
  "bookingId": 540273,
  "newState": 4
}

Payload

Nombre Tipo Descripcion
realStartDate Date Fecha de cambio del estado a Iniciado
oldState Int Estado anterior del servicio, antes del cambio.

Valores posibles:

5 = En camino
bookingId Long Id del servicio
newState Int Estado nuevo del servicio.

El valor será igual a (4 = Iniciado).

booking_finished_successfully

Este evento ocurre cuando es actualizado el estado de un servicio a "Concluido satisfactoriamente".

Request:

{
  "realFinishDate": "2024-03-13T14:50:35+0000",
  "oldState": 1,
  "bookingId": 707903,
  "newState": 3
}

Payload

Nombre Tipo Descripcion
realFinishDate Date Fecha de cambio del estado a Concluido satisfactoriamente
oldState Int Estado anterior del servicio, antes del cambio.

Valores posibles:

0 = Creado
10 = Agendado
1 = Aceptado
4 = Iniciado
5 = En camino
bookingId Long Id del servicio
newState Int Estado nuevo del servicio.

El valor será igual a (3 = Concluido satisfactoriamente).

booking_finished_with_incidence

Este evento ocurre cuando es actualizado el estado de un servicio a "Concluido con Incidencias".

Request:

{
  "realFinishDate": "2024-03-13T14:50:35+0000",
  "otherIncidence": "Otro motivo personalizado",
  "oldState": 1,
  "incidence": "Otro",
  "bookingId": 708365,
  "newState": -5
}

Payload

Nombre Tipo Descripcion
realFinishDate Date Fecha de cambio del estado a Concluido con Incidencias
otherIncidence String Otra incidencia personalizada
oldState Int Estado anterior del servicio, antes del cambio.

Valores posibles:

0 = Creado
10 = Agendado
1 = Aceptado
4 = Iniciado
5 = En camino
incidence String Incidencia ocurrida

Valores posibles:

- Requiere otra asistencia
- Se corta la llamada
- Otro
bookingId Long Id del servicio
newState Int Estado nuevo del servicio.

El valor será igual a (-5 = Concluido con Incidencias).

booking_canceled_by_client

Este evento ocurre cuando es actualizado el estado de un servicio a "Cancelado por el cliente".

Request:

{
  "realFinishDate": "2024-03-12T13:20:35+0000",
  "otherCancellationReason": "Otro motivo personalizado",
  "oldState": 4,
  "cancellationReason": "Otra razón",
  "bookingId": 540273,
  "newState": -2
}

Payload

Nombre Tipo Descripcion
realFinishDate Date Fecha de cambio del estado a Cancelado por el cliente
otherCancellationReason String Otro motivo del cambio de estado
oldState Int Estado anterior del servicio, antes del cambio.

Valores posibles:

0 = Creado
10 = Agendado
1 = Aceptado
4 = Iniciado
5 = En camino
cancellationReason String Razón de cancelación del servicio

Valores posibles:

- Ya no requiere el servicio/Ya solucionó
- Restitución
- Costo elevado
- Excedente
- Proveedor no acudió
- Requiere otra asistencia
- Servicio costo usuario
- No acepta cita/proveedor
- Proveedor pide reasignar
- Otra razón
bookingId Long Id del servicio
newState Int Estado nuevo del servicio.

El valor será igual a (-2 = Cancelado por el cliente).

booking_canceled_by_operator

Este evento ocurre cuando es actualizado el estado de un servicio a "Cancelado por el operador".

Request:

{
  "realFinishDate": "2024-03-13T14:50:35+0000",
  "otherCancellationReason": "Otro motivo personalizado",
  "oldState": 10,
  "cancellationReason": "Otra razón",
  "bookingId": 708456,
  "newState": 22
}

Payload

Nombre Tipo Descripcion
realFinishDate Date Fecha de cambio del estado a Cancelado por el operador
otherCancellationReason String Otro motivo del cambio de estado
oldState Int Estado anterior del servicio, antes del cambio.

Valores posibles:

0 = Creado
10 = Agendado
1 = Aceptado
4 = Iniciado
5 = En camino
cancellationReason String Razón de cancelación del servicio

Valores posibles:

- Ya no requiere el servicio/Ya solucionó
- Restitución
- Costo elevado
- Excedente
- Proveedor no acudió
- Requiere otra asistencia
- Servicio costo usuario
- No acepta cita/proveedor
- Proveedor pide reasignar
- Otra razón
bookingId Long Id del servicio
newState Int Estado nuevo del servicio.

El valor será igual a (22 = Cancelado por el operador).

booking_canceled_by_provider

Este evento ocurre cuando es actualizado el estado de un servicio a "Cancelado por el proveedor". Este evento es disparado solamente desde el portal proveedores.

Request:

{
  "realFinishDate": "2024-03-13T14:50:35+0000",
  "otherCancellationReason": "Otro motivo personalizado",
  "oldState": 10,
  "cancellationReason": "Otro",
  "bookingId": 708456,
  "newState": 22
}

Payload

Nombre Tipo Descripcion
realFinishDate Date Fecha de cambio del estado a Cancelado por el proveedor
otherCancellationReason String Otro motivo del cambio de estado
oldState Int Estado anterior del servicio, antes del cambio.

Valores posibles:

0 = Creado
10 = Agendado
1 = Aceptado
4 = Iniciado
5 = En camino
cancellationReason String Razón de cancelación del servicio

Valores posibles:

- Restitución
- Proveedor pide reasignar
- Servicio costo usuario
- Otro
bookingId Long Id del servicio
newState Int Estado nuevo del servicio.

El valor será igual a (22 = Cancelado por el proveedor).

tools_created

Este evento ocurre cuando una herramienta es creada.

Request:

{
  "id": 23,
  "active": true,
  "providerId": 3180,
  "categoryId": 2,
  "typeId": 4,
  "capacitiesId": "[5, 6, 7]",
  "patent": "testPlate",
  "brandId": 553,
  "modelId": 20478,
  "unitName": "test01"
}

Payload

Nombre Tipo Descripcion
id Int Id de la herramienta creada
active Boolean Indica si la herramienta está activa o inactiva
providerId Long Id del proveedor
categoryId Int Id de la categoría
typeId Int Id del tipo según la categortía
capacitiesId Int[] Array de Ids de capacity
patent String Patente/placa
brandId Int Id de la marca
modelId Int Id del modelo
unitName String Nombre de unidad

tools_updated

Este evento ocurre cuando una herramienta es actualizada.

Request:

{
  "id": 23,
  "active": true,
  "providerId": 3183,
  "categoryId": 2,
  "typeId": 4,
  "capacitiesId": "[5, 6, 7]",
  "patent": "testPlate",
  "brandId": 553,
  "modelId": 20478,
  "unitName": "test01",
  "inactivationMotiveId": 4,
  "inactivationMotiveObservation": "Documento pendiente"
}

Payload

Nombre Tipo Descripcion
id Int Id de la herramienta creada
active Boolean Indica si la herramienta está activa o inactiva
providerId Long Id del proveedor
categoryId Int Id de la categoría
typeId Int Id del tipo según la categoría
capacitiesId Array Lista de capacidades del recurso
patent String Patente/placa
brandId Int Id de la marca
modelId Int Id del modelo
unitName String Nombre de unidad
inactivationMotiveId Int Id del motivo de inactivación.

Valores posibles:

1 = Unidad con problemas Técnicos
2 = Unidad robada
3 = Unidad sin chofer
4 = Otro
5 = Inactivado por vencimiento de documento
inactivationMotiveObservation String Motivo de inactivación

tools_activated_inactivated

Este evento ocurre cuando una herramienta es activada/inactivada.

Request:

{
  "id": 23,
  "active": false,
  "inactivationMotiveId": 4,
  "inactivationMotiveObservation": "Documento pendiente"
}

Payload

Nombre Tipo Descripcion
id Int Id de la herramienta creada
active Boolean Indica si la herramienta está activa o inactiva
inactivationMotiveId Int Id del motivo de inactivación.

Valores posibles:

1 = Unidad con problemas Técnicos
2 = Unidad robada
3 = Unidad sin chofer
4 = Otro
5 = Inactivado por vencimiento de documento
inactivationMotiveObservation String Motivo de inactivación

tools_document_created

Este evento ocurre cuando se asocia un documento a una herramienta.

Request:

{
  "resourceId": 92,
  "documentCategoryId": 5,
  "dueDate": "2024-05-11",
  "documentCategory": "Permiso para transitar",
  "urlDocument": "https://devfsmdiag.blob.core.windows.net/uatfsm-document-file/e93aff12-29b2-4258-85c2-e0b8c5675950-1713275631326.png",
  "id": 47,
  "documentName": "permiso"
}

Payload

Nombre Tipo Descripcion
resourceId Int Id de la herramienta creada
documentCategoryId Int Id de la categoría del documento. .

Valores posibles:

1 = Imagen
2 = Permiso para transitar
3 = Seguro
4 = Verificación técnica
dueDate Date Fecha de vencimiento del documento
documentCategory String Descripción de la categoría del documento
urlDocument String Url donde se encuentra el archivo
id Int Id del documento
documentName String Nombre del documento

tools_document_updated

Este evento ocurre cuando se actualiza un documento de una herramienta; el único campo actualizable es el nombre del documento

Request:

{
    "id": 49,
    "resourceId": 72,
    "documentName": "dseguro22",
}

Payload

Nombre Tipo Descripcion
resourceId Int Id de la herramienta creada
id Int Id del documento
documentName String Nombre del documento

professional_document_created

Este evento ocurre cuando se asocia un documento a un profesional.

Request:

{
  "documentId": 92,
  "professionalId": 20,
  "documentTypeId": 5,
  "dueDate": "2024-05-11",
  "name": "test",
  "documentURL": "https://devfsmdiag.blob.core.windows.net/uatfsm-document-file/e93aff12-29b2-4258-85c2-e0b8c5675950-1713275631326.png",
  "isCorroborationRequired": false,
  "creationDate": "2024-04-15T15:17:58.449",
  "weight": 100
}

Payload

Nombre Tipo Descripcion
documentId Int Id del documento
professionalId Int Id del profesional
documentTypeId Int Id del tipo de documento
dueDate Date Fecha de vencimiento del documento
name String Nombre del documento
documentURL String Url donde se encuentra el archivo
isCorroborationRequired Boolean Define si el documento requiere verificación
creationDate Date Fecha de creación del documento
weight int Tamaño del documento en KB

professional_document_update

Este evento ocurre cuando se edita un documento asociado al profesional.

Request:

{
  "documentId": 92,
  "professionalId": 20,
  "checkDate": "2024-04-15T15:17:58.449",
  "name": "test"
}

Payload

Nombre Tipo Descripcion
documentId Int Id del documento
professionalId Int Id del profesional
checkDate Date Fecha de aprobación del documento
name String Nombre del documento

professional_created

Este evento ocurre cuando se crea un nuevo profesional.

Request:

{
  "id": 6986,
  "name": "lpro",
  "lastName": "lpro",
  "email": "[email protected]",
  "businessUnitUuid": "81cc8411-bd92-4116-a965-abe38a2b7f40",
  "countryId": 44,
  "countryName": "Chile",
  "identificationTypeId": "4",
  "identificationTypeName": "PASAPORTE",
  "address": "Chiles Peach Orchard and Farm Market, Greenwood Road, Crozet, Virginia, EE. UU.",
  "phoneNumber": "56123123111",
  "technicianTypeId": 2,
  "technicianType": "Conductor",
  "status": "INACTIVO",
  "specialtiesName": [
    {
      "id": 8,
      "name": "Paso de Corriente"
    },
    {
      "id": 9,
      "name": "Cambio de Llanta"
    },
    {
      "id": 10,
      "name": "Suministro de Gasolina"
    }
  ],
  "tenantUUID": "adff7f6a-e97d-11eb-9a03-0242ac130003",
  "identificactionNumber": "lpro12344"
}

Payload

Nombre Tipo Descripcion
id Int Id del profesional
name String Nombre del profesional
lastName String Apellido del profesional
email String Correo
businessUnitUuid String Unidad de negocios
countryId Int Id del país
countryName String País
identificationTypeId String Tipo de identificación
identificationTypeName String Nombre del Tipo de identificación
address String Dirección
phoneNumber String Teléfono
technicianTypeId Int Id del Tipo de técnico
technicianType String Descripción del tipo de técnico
status String Estatus INACTIVO/ACTIVO
specialtiesName Array Arreglo de las especialidades del técnico
tenantUUID String Id del tenant
identificactionNumber String Número de identificación

professional_updated

Este evento ocurre cuando se edita un profesional.

Request:

{
  "id": 6986,
  "name": "lpro",
  "lastName": "lpro",
  "email": "[email protected]",
  "businessUnitUuid": "81cc8411-bd92-4116-a965-abe38a2b7f40",
  "countryId": 44,
  "countryName": "Chile",
  "identificationTypeId": "4",
  "identificationTypeName": "PASAPORTE",
  "address": "Chiles Peach Orchard and Farm Market, Greenwood Road, Crozet, Virginia, EE. UU.",
  "phoneNumber": "56123123111",
  "technicianTypeId": 2,
  "technicianType": "Conductor",
  "status": "INACTIVO",
  "specialtiesName": [
    {
      "id": 8,
      "name": "Paso de Corriente"
    },
    {
      "id": 9,
      "name": "Cambio de Llanta"
    },
    {
      "id": 10,
      "name": "Suministro de Gasolina"
    }
  ],
    "workingHours": [
    {
      "day": 1,
      "hourFrom":8,
      "hourTo":12
    },
   {
      "day": 2,
      "hourFrom":8,
      "hourTo":17
    },{
      "day": 6,
      "hourFrom":8,
      "hourTo":17
    }
  ],
  "tenantUUID": "adff7f6a-e97d-11eb-9a03-0242ac130003",
  "identificactionNumber": "lpro12344"
}

Payload

Nombre Tipo Descripcion
id Int Id del profesional
name String Nombre del profesional
lastName String Apellido del profesional
email String Correo
businessUnitUuid String Unidad de negocios
countryId Int Id del país
countryName String País
identificationTypeId String Tipo de identificación
identificationTypeName String Nombre del Tipo de identificación
address String Dirección
phoneNumber String Teléfono
technicianTypeId Int Id del Tipo de técnico
technicianType String Descripción del tipo de técnico
status String Estatus INACTIVO/ACTIVO
specialtiesName Array Arreglo de las especialidades del técnico
tenantUUID String Id del tenant
identificactionNumber String Número de identificación
workingHours Array Arreglo de las especialidades del técnico
day int Id del día de la semana

Valores posibles:

1 = Lunes
2 = Martes
3 = Miércoles
4 = Jueves
5 = Viernes
6 = Sábado
7 = Domingo
hourFrom int Hora de inicio de la jornada de trabajo

Valores posibles:

0 = 00:00 horas
1 = 01:00 Horas
2 = 02:00 Horas
...
13 = 13:00 Horas
14 = 14:00 Horas
...
23 = 23:00 Horas
hourTo int Hora de fin de la jornada de trabajo

Valores posibles:

0 = 00:00 horas
1 = 01:00 Horas
2 = 02:00 Horas
...
13 = 13:00 Horas
14 = 14:00 Horas
...
23 = 23:00 Horas

professional_assigned

Este evento ocurre cuando un profesional es asignado a un servicio.

Request:

{
  "bookingId": 125987,
  "professionalId": 77,
  "providerId": 331,
  "externalProviderId": "ABC-123"
}

Payload

Nombre Tipo Descripcion
bookingId Long Id del servicio.
professionalId int Id del profesional
providerId int Id del proveedor
externalProviderId string Código externo del proveedor.