--
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:
- Límite de consultas por segundos: 3
- Límite de consultas por minutos: 100
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"
}
Se define el código HTTP 200 como respuesta de procesamiento exitoso para aquellas APIs que no crean recursos dentro de la base de datos. Dependiendo la particularidad del API, puede no devolverse información (No content), así como también en los casos que aplique, se devolverá la información solicitada en un string con formato JSON.
Se define el código HTTP 201 como respuesta de procesamiento exitoso para aquellas APIs que crean recursos dentro del sistema. Además se devolverá en un string con formato JSON el atributo
hrefcon la ubicación del recurso creado.
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:
- Producción: Ambiente live de la plataforma.
- UAT: Pruebas integrales con usuarios finales.
- QA: Ambiente de integracion y pruebas unitarias.
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
- QA:
POST https://qa.tenant.api.tutenlabs.dev/auth/login - UAT:
POST https://uat.tenant.api.tutenlabs.dev/auth/login - PROD:
POST https://api.tenant.tutenlabs.com/auth/login
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.
- QA:
POST https://qa.tenant.api.tutenlabs.dev/precustomer/load - UAT:
POST https://uat.tenant.api.tutenlabs.dev/precustomer/load - PROD:
POST https://api.tenant.tutenlabs.com/precustomer/load
Para el caso de accidentRate tomar en cuenta las siguientes reglas:
- El array accidentRate no es requerido en el request.
- El serviceId permite valor null por lo tanto, restará el valor de quantity en todos los servicios que tenga topes de unidad tipo evento.
- El quantity corresponde a la cantidad de eventos a descontar.
- En caso de enviar más de 2 posiciones en el arreglo, estas serán acumulativas.
Otras consideraciones:
- Se permitirá carga de varias materias a una misma suscripción.
- Permitirá la actualización de ciertos campos de un cliente para Customer/Suscripción/Materia.
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. | |
| ✗ | 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.
- QA:
POST https://qa.tenant.api.tutenlabs.dev/precustomer/load/{loadUuuid}/status - UAT:
POST https://uat.tenant.api.tutenlabs.dev/precustomer/load/{loadUuuid}/status
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.
- QA:
GET https://qa.tenant.api.tutenlabs.dev/precustomer/load/{loadUuuid}/status - UAT:
GET https://uat.tenant.api.tutenlabs.dev/precustomer/load/{loadUuuid}/status
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.
- QA:
GET https://qa.tenant.api.tutenlabs.dev/precustomer/sponsor/{businessExternalId}/lastload - UAT:
GET https://uat.tenant.api.tutenlabs.dev/precustomer/sponsor/{businessExternalId}/lastload - PROD:
GET https://api.tenant.tutenlabs.com/precustomer/sponsor/{businessExternalId}/lastload
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.
- QA:
GET https://qa.tenant.api.tutenlabs.dev/precustomer/sponsor/{businessExternalId}/list - UAT:
GET https://uat.tenant.api.tutenlabs.dev/precustomer/sponsor/{businessExternalId}/list - PROD:
GET https://api.tenant.tutenlabs.com/precustomer/sponsor/{businessExternalId}/list
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.
- UAT:
POST https://uat.tenant.api.tutenlabs.dev/case?apiVersion=1 - PROD:
POST https://tenant.api.tutenlabs.com/case?apiVersion=1
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. | |
| ✓ | 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. | |
| ✓ | 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. | |
| ✓ | 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.
- UAT:
PUT https://uat.tenant.api.tutenlabs.dev/booking/:id/status
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.
- UAT:
PUT https://uat.tenant.api.tutenlabs.dev/booking/:id/budget
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
}
- UAT:
PUT https://uat.tenant.api.tutenlabs.dev/booking/:id/payment/status
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.
- UAT:
PUT https://uat.tenant.api.tutenlabs.dev/booking/:id/location
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.
- UAT:
PUT https://uat.tenant.api.tutenlabs.dev/booking/:id/observation
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.
- UAT:
GET https://uat.tenant.api.tutenlabs.dev/booking/:id/phone-numbers
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.
- UAT:
POST https://uat.tenant.api.tutenlabs.dev/booking/:id/ivr/history
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
- QA:
POST https://qa.tenant.api.tutenlabs.dev/notification/notify-call - UAT:
POST https://uat.tenant.api.tutenlabs.dev/notification/notify-call - PROD:
POST https://api.tenant.tutenlabs.com/notification/notify-call
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
}
- QA:
POST https://qa.tenant.api.tutenlabs.dev/pro-payment/confirm - UAT:
POST https://uat.tenant.api.tutenlabs.dev/pro-payment/confirm - PRD:
https://api.tenant.tutenlabs.com/pro-payment/confirm
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"
}
- QA:
POST https://qa.tenant.api.tutenlabs.dev/pro-payment/confirm - UAT:
POST https://uat.tenant.api.tutenlabs.dev/pro-payment/confirm
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"
}
- QA:
POST https://qa.tenant.api.tutenlabs.dev/pro-payment/confirm-by-purchase-order - UAT:
POST https://uat.tenant.api.tutenlabs.dev/pro-payment/confirm-by-purchase-order
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:
- Todos los campos son requeridos
- No incluye la creación de sucursales
Ambientes Solicitud HTTP
- QA:
POST https://qa.tenant.api.tutenlabs.dev/provider/create - UAT:
POST https://uat.tenant.api.tutenlabs.dev/provider/create - PRD:
POST https://api.tenant.tutenlabs.com/provider/create
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
}
- QA:
POST https://qa.tenant.api.tutenlabs.dev/pro-payment/update-payment-status - UAT:
POST https://uat.tenant.api.tutenlabs.dev/pro-payment/update-payment-status
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
}
- QA:
POST https://qa.tenant.api.tutenlabs.dev/pro-payment/confirm-by-purchase-order - UAT:
POST https://uat.tenant.api.tutenlabs.dev/pro-payment/confirm-by-purchase-order
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",
}
- QA:
PUT https://qa.tenant.api.tutenlabs.dev/professional/document/{documentId} - UAT:
PUT https://uat.tenant.api.tutenlabs.dev/professional/document/{documentId}
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.
- QA:
POST https://qa.tenant.api.tutenlabs.dev/subscription/load - UAT:
POST https://uat.tenant.api.tutenlabs.dev/subscription/load
Para el caso de accidentRate tomar en cuenta las siguientes reglas:
- El array accidentRate no es requerido en el request.
- El serviceId permite valor null por lo tanto, restará el valor de quantity en todos los servicios que tenga topes de unidad tipo evento.
- El quantity corresponde a la cantidad de eventos a descontar.
- En caso de enviar mas de 2 posiciones en el arreglos estas seran acumulativas.
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 | |
| ✓ | 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. | |
| ✗ | 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.
- QA:
POST https://qa.tenant.api.tutenlabs.dev/subscription/load/{loadUuuid}/status - UAT:
POST https://uat.tenant.api.tutenlabs.dev/subscription/load/{loadUuuid}/status
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.
- QA:
GET https://qa.tenant.api.tutenlabs.dev/subscription/load/{loadUuuid}/status - UAT:
GET https://uat.tenant.api.tutenlabs.dev/subscription/load/{loadUuuid}/status
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:
- QA:
POST https://qa.tenant.api.tutenlabs.dev/customer/subscriptions-by-filter?apiVersion=1 - UAT
POST https://uat.tenant.api.tutenlabs.dev/customer/subscriptions-by-filter?apiVersion=1
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:
- QA:
POST https://qa.tenant.api.tutenlabs.dev/business-unit - UAT:
POST https://uat.tenant.api.tutenlabs.dev/business-unit - PROD:
POST https://api.tenant.api.tutenlabs.dev/business-unit
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
- QA:
POST https://qa.tenant.api.tutenlabs.dev/tool - UAT:
POST https://uat.tenant.api.tutenlabs.dev/tool - PRD:
POST https://api.tenant.tutenlabs.com/tool
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
- QA:
PUT https://qa.tenant.api.tutenlabs.dev/tool/{id - UAT:
PUT https://uat.tenant.api.tutenlabs.dev/tool/{id} - PRD:
PUT https://api.tenant.tutenlabs.com/tool/{id}
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
- QA:
POST https://qa.tenant.api.tutenlabs.dev/provider/document/tool/{toolId} - UAT:
POST https://uat.tenant.api.tutenlabs.dev/provider/document/tool/{toolId} - PRD:
https://api.tenant.tutenlabs.com/provider/document/tool/{toolId}
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
- QA:
PUT https://qa.tenant.api.tutenlabs.dev/provider/document/tool/{toolId}/{documentId} - UAT:
PUT https://uat.tenant.api.tutenlabs.dev/provider/document/tool/{toolId}/{documentId} - PRD:
PUT https://api.tenant.tutenlabs.com/provider/document/tool/{toolId}/{documentId}
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:

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/

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

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

API Report - Diagrama ER
En el siguiente enlace se encuentra el diagrama de las entidades y relaciones:
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
- Se agrega nuevo campos a la vista de "encuestas de servicio" (polls).
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| channelType | string | ✗ | Canal de respuesta de la encuesta |
v33 - Published 2025-10-01
Changed
- Se agregan nuevos campos a la vista de "Servicios" (services).
| 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
- Se agregan nuevos campos a la vista de "Proveedores" (providers).
| 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
- Se agregan columnas a la vista de "Materias" (materials).
| 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
- Se agregan nuevos campos al API de carga masiva de subscriptions.
| 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
- Se agregan nuevos campos a la vista de customers.
| 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
- Se agrega nueva vista de "Aliados" (allies).
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. |
- Se agrega nueva vista de "Sucursales" (branches).
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. |
- Se agrega nueva vista de "Bitacora de acciones de casos" (action_logs_view).
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
- Se agrega nueva vista de "Tiempos asociados al ETA" (associated_eta_times).
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
- Se agrega el siguiente campo a la vista "Servicios" (services)
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| bookingParentId | int | ✗ | Servicio predecesor |
- Se agregan los siguientes campos a la vista "Ordenes" (ordedrs)
| 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
- Se agrega nueva vista de "Configuración de conceptos de costo" (cost_concepts).
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
- Se cambia el nombre de la entidad "Concepto de Costos" a "Conceptos de costos en presupuesto"
Add
- Se agrega nueva vista de "Comentarios del servicio" (booking_comments).
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
- Se agrega nueva vista de "Reglas etapa" (filtering_rules).
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
- Se agrega nueva vista de "Ordenamiento Etapa" (ordering_rules).
| 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
- Se modifica la siguiente entidad "Motores" (engines)
| 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
- Se remueve el campo id dinámico de la vista de "Encuestas de Servicio" (polls)
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| id | int | ✓ | Identificador único de la respuesta de la pregunta de la encuesta |
- Se indica nueva PK compuesta de la vista de "Encuestas de Servicio" (polls)
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| pollResponseId | int | ✓ | Identificador de respuesta |
| pollQuestionId | int | ✓ | Identificador de Pregunta |
Add
- Se agrega nueva vista de "Etapas de Motor" (stages).
| 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
- Se agrega la siguiente columna "status" en la entidad "Pre-facturas" (pre_invoices)
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| status | string | ✗ | Estado de la pre-factura. |
- Se agrega el siguiente campo en la entidad "Servicios" (services).
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| serviceDeleted | boolean | ✗ | Un indicador que marca si el servicio está eliminado o no. |
Se agrega la siguiente columna "email" en la entidad "Proveedores" (providers)
v23 - Published: TBD
Add
Se agrega nueva vista de motor_offers
| 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
- Se agrega la siguiente columna "email" en la entidad "providers" (providers)
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| string | ✗ | Correo electrónico del contacto de administración |
- Se agrega la siguiente columna "activePaymentGateway" en la entidad "Definición de servicios" (definition_services)
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| activePaymentGateway | boolean | ✗ | Valor lógico sobre el indicador si el servicio posee pasarela de pago. |
Add
- Se agrega la vista "Formularios" (forms).
| 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. |
- Se agrega la vista "Campos de formularios" (forms_fields).
| 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
- Se agregan los siguientes campos en la entidad "Planes suscritos" (plan_subscriptions).
| 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
- Se agrega la entidad "Planes suscritos" (plan_subscriptions).
| 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
- Se modifica la entidad "Suscripciones" (subscriptions).
| 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
- Se agrega la entidad "Respuestas del cuestionario del servicio" (service_forms).
| 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
- Se agrega los siguientes campos en la entidad de "Clientes" (customers).
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| creationChannel | string | ✗ | Canal por el cual se creó el cliente. |
| gender | string | ✗ | Género del cliente. |
- Se agrega el identificador único de la vista de encuestas (polls).
| 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
- Se agrega la entidad "Conceptos de costo de sucursal" (sucursals_cost_concepts).
| 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
- Se agregan los siguientes campos en la entidad de "Pago del proveedor" (provider_payments).
| 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. |
- Se agregan los siguientes campos en la entidad de "Historial de cambios de estatus de Pago del proveedor" (providers_payment_history).
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| userId | int | ✗ | ID del usuario que realizó la operación. |
- Se agrega el siguiente campo en la entidad de "Servicios" (services).
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| entryChannel | string | ✗ | Indica la fuente u origen desde donde se agregó el servicio. |
v17 - Published: 2023-11-15
Changed
- Se agrega a la entidad "Evaluaciones" (satisfactions).
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| createdAt | timestamp | ✗ | Fecha de creación. |
- Se agregan y/o modifican los siguientes campos en la entidad de "Servicios" (services).
| 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. |
- Se agregan los siguientes campos en la entidad de "Ordenes" (orders).
| 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
- Se agrega la entidad Bitacora de casos (action_log_views).
| 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. |
- Se agrega la entidad Historiales de estado de reclamos (claim_status_histories).
| 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. |
- Se agrega la entidad "Contratantes" (contractors).
| 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
- Se agrega la entidad Observaciones de casos (case_observations).
| 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. |
- Se agrega a la entidad "casos" (cases).
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| caseDescription | string | ✗ | Detalle del caso. |
| informerId | int | ✗ | Identificador del Informante. |
| closedAt | timestamp | ✗ | Fecha de cierre del caso. |
Changed
- Se realizó un ajuste en la entidad "Servicios" (isBudget) con la descripción del campo.
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| isBudget | boolean | ✗ | Indica si el servicio es tipo presupuesto. |
Removed
- Se elimino de la entidad "casos" (cases).
| 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
- Se realizó un ajuste en la entidad "Servicios" (isBudget) con la descripción del campo.
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| isBudget | boolean | ✗ | Indica si el servicio tiene presupuesto. |
Add
- Se agrega la vista sucursals_services
| 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
- Se agrega la entidad pre_invoices.
| 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. |
- Se agrega la vista sucursals_schedules
| 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. |
- Se agrega la vista sucursals_neighborhoods
| 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
- Se agregan las columnas relacionadas con las evaluaciones a la entidad "Proveedores"
| 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 |
- Se agregó la entidad sucursals.
| 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
- Se agregó la entidad applicants.
| 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
- Se agregan las siguientes columnas para la entidad "usuarios" (users).
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| 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. |
- Se agregan las siguientes columnas en la entidad "Órdenes" (orders)
| 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
- Se eliminó el siguiente ítem de la entidad service_status_change_history_logs.
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| userName | string | ✗ | Nombre del usuario responsable del cambio generando el estado actual. |
v11.9 - Published: 2023-07-27
Removed
- Se eliminó los siguientes item de la entidad servicios.
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| discountAmount | float | ✗ | Monto de descuento. |
| subtotal | float | ✗ | Subtotal |
| paymentAmount | float | ✗ | Monto pagado. |
Add
- Se agregó la entidad service_order.
| 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
- Se agregó el siguiente atributo a la vista de materiales (materials).
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| typeMaterialId | int | ✗ | Este campo indica el ID del material asociado a la cobertura. |
- En la entidad de subscripciones (subscriptions), se modifica el tipo de dato de contractorId de long a string
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| contractorId | string | ✗ | Id externo de contratante asociado a la suscripción |
- En la entidad de planes (plans), se modifica el tipo de dato de contractorIds, y contractors para mostrar ids externos y nombres de contratantes
| 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
- Se cambio el titulo de la entidad de "Respuestas a las preguntas que se han dado en el wizard de los servicios" a "Respuestas del Wizard".
- Se cambio el nombre de la vista de respuestas de del wizard (de wizard_view a wizard_responses).
- Se modificaron los campos de tipo string a tipo timestamp en entidad wizard_responses (ex wizard_view)
| 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
- Se agregó el siguiente atributo a la vista de coberturas (coverages).
| 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
- Se elimino la siguiente columna para la vista coberturas (coverages)
| 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
- Se agregan las siguientes columnas para la entidad wizards_vars (Variables del wizard)
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| options | json | ✗ | Opciones de las variables de tipo opciones multiple. |
Removed
- Se eliminaron las siguientes columnas para la entidad wizards_vars (Variables del wizard)
| 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
- Se eliminó la columna state para la entidad service_status_change_history_logs
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| state | string | ✗ | Estado del servicio. |
Changed
- Se agregan las siguientes columnas para la entidad service_status_change_history_logs
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| previousState | string | ✗ | Estado anterior del servicio. |
| newState | string | ✗ | Estado nuevo del servicio. |
Changed
- Se agregó el siguiente atributo a la vista de planes (plans).
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| planExternalVersionId | string | ✗ | Indica el ID externo de la versión del plan. |
Removed
- Se eliminó el siguiente atributo a la vista de planes (plans).
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| planVersionId | string | ✗ | Este campo indica el ID de la versión que está asociado este plan. |
Changed
- Se modificaron los siguientes atributos de la vista de planes (plans).
| 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
- Se agregó el siguiente atributo a la vista de suscripciones (Subscriptions).
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| contractorId | int | ✗ | ID del contratante asociado a la suscripción. |
- Se modificó la descripción del atributo ID de la vista de suscripciones (Subscriptions).
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| id | int | ✓ | Identificador del plan suscrito. |
v11.2 - Published: 2023-05-11
Changed
- Se modificaron los siguientes campos en la entidad "Checklist Servicio" (checklist_services)
| Campo | Antes | Ahora |
|---|---|---|
| typeQuestionId | int | string |
| optional | boolean | string |
| checked | boolean | string |
| haveOption | boolean | string |
Changed
- Se agregan las siguientes columnas en la entidad "Match" (motor_match)
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| createdAt | timestamp | ✗ | Fecha de creación. |
Changed
- Se modificaron los tipos de datos de los siguientes campos de la entidad "Servicios" (services)
| 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
- Se agregaron los siguientes atributos a la vista de coberturas (Coverages).
| 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
- Se agrega la siguiente columna para la entidad de servicios asociados al reclamo (claim_associated_services)
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| createdAt | timestamp | ✗ | Fecha de asociación del servicio al reclamo. |
v10.1 - Published: 2023-05-02
Changed
- Se actualiza el nombre de la vista customerUS a customers.
- Se actualizan los siguientes atributos a la vista clientes (Customers).
| 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. |
- Se cambiaron los tipos de los siguientes campos de la entidad de ofertas a profesionaless
| Campo | Antes | Ahora |
|---|---|---|
| acceptedAt | string | timestamp |
| rejectedAt | string | timestamp |
| validUntil | string | timestamp |
| updatedAt | string | timestamp |
| createdAt | string | timestamp |
Se agrego la columna de PK a la entidad de ofertas a profesionales
Se agregan las siguientes columnas para la entidad reporting_checklist (Checklists)
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| updatedAt | timestamp | ✗ | Fecha de última modificación. |
- Se agregan las siguientes columnas para la entidad reporting_checklist_items (Checklists Items)
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| updatedAt | timestamp | ✗ | Fecha de última modificación. |
- Se agregan las siguientes columnas para la entidad countries (Países)
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| createdAt | timestamp | ✗ | Fecha de creación. |
- Se agregan las siguientes columnas para la entidad cities (Ciudades)
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| createdAt | timestamp | ✗ | Fecha de creación. |
- Se agregan las siguientes columnas para la entidad comunes (Comunas)
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| createdAt | timestamp | ✗ | Fecha de creación. |
v10 - Published: 2023-04-19
Changed
- Se agregan las siguientes columnas para la entidad service_categories (Categorías de servicio)
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| createdAt | timestamp | ✗ | Fecha de creación. |
- Se agregan las siguientes columnas para la entidad wizards (Wizards)
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| createdAt | timestamp | ✗ | Fecha de creación. |
| updatedAt | timestamp | ✗ | Fecha de última modificación. |
- Se agregan las siguientes columnas para la entidad wizards_vars (Variables del wizard)
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| createdAt | timestamp | ✗ | Fecha de creación. |
Se agrega la columna PK a las entidades professional_documents(Documentos de Profesionales), professional_schedules(Agenda de Profesionales), professional_surges(Recargos de profesionales), professional_trainings(Capacitación de Profesionales) y professional_neighborhood_surcharges(Recargos de Profesionales por Comunas)
Se cambiaron los tipos de los siguientes campos de la entidad professional_documents(Documentos de Profesionales)
| Campo | Antes | Ahora |
|---|---|---|
| checkDate | string | timestamp |
| updatedAt | string | timestamp |
| createdAt | string | timestamp |
- Se cambiaron los tipos de los siguientes campos de la entidad professional_schedules(Agenda de Profesionales)
| Campo | Antes | Ahora |
|---|---|---|
| hourFrom | string | int |
| hourTo | string | int |
- Se agregaron los siguientes campos a la entidad professional_schedules(Agenda de Profesionales)
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| createdAt | timestamp | ✗ | Fecha de creación. |
| updatedAt | timestamp | ✗ | Fecha de ultima modificación. |
- Se cambiaron los tipos de los siguientes campos de la entidad professional_surges(Recargos de profesionales)
| Campo | Antes | Ahora |
|---|---|---|
| surgeAmount | string | float |
| surgePercent | string | float |
| surgeDayOfWeek | string | int |
| surgeDate | string | timestamp |
| updatedAt | string | timestamp |
| createdAt | string | timestamp |
- Se agrego el siguiente campos a la entidad professional_trainings(Capacitación de Profesionales)
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| updatedAt | timestamp | ✗ | Fecha de ultima modificación. |
- Se cambio el tipo de l siguiente campos de la entidad professional_trainings(Capacitación de Profesionales)
| Campo | Antes | Ahora |
|---|---|---|
| createdAt | string | timestamp |
- Se cambiaron los tipos de los siguientes campos de la entidad professional_neighborhood_surcharges(Recargos de Profesionales por Comunas)
| Campo | Antes | Ahora |
|---|---|---|
| surcharge | number | float |
| systemSurcharge | number | float |
| updatedAt | string | timestamp |
| createdAt | string | timestamp |
Se agrega la columna PK a la entidad casos (cases)
Se modifica el tipo de atributo a los campos de interes de string a date en la vista de Planes (Plans).
| 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. |
- Se modifica el tipo de atributo a los campos de interes de string a timestamp en la vista de Consumos de Suscripciones (subscriptions_consumed).
| 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
- Se agrega la entidad de agrupador de servicios (Generic coverages).
| 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. |
- Se agrega la entidad de coberturas (Coverages).
| 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
- Se eliminaron los siguientes campos para la entidad Topes (Maximum coverages)
| 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
- Se agregan los campos isAutomatic, automaticConceptCost, topeMinSatisfactory, topeMaxSatisfactory, topeMinUnsatisfactory y topeMaxUnsatisfactory en la entidad definición de servicios.
| 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. |
- Se agregaron los siguientes atributos a la vista planes (Plans).
| 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. |
Se agrega la columna PK a las entidades professionals(Profesionales), professional_services(Servicio de Profesionales) y providers(Proveedores)
Se agrega un campo en la entidad professional_services(Servicio de Profesionales)
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| createdAt | timestamp | ✓ | ID de pago del proveedor. |
- Se cambiaron los tipos de los siguientes campos de la entidad professional_services(Servicio de Profesionales)
| Campo | antes | ahora |
|---|---|---|
| baseServiceCost | string | float |
| baseProCost | string | float |
| expressProCost | string | float |
| wizardPercentage | string | float |
| updatedAt | string | timestamp |
| createdAt | string | timestamp |
- Se cambiaron los tipos de los siguientes campos de la entidad professionals(Profesionales)
| Campo | antes | ahora |
|---|---|---|
| updatedAt | string | timestamp |
| createdAt | string | timestamp |
- Se cambiaron los tipos de los siguientes campos de la entidad provider_payments(Pago del proveedor)
| Campo | antes | ahora |
|---|---|---|
| serviceId | int8 | int |
| updatedAt | string | timestamp |
| createdAt | string | timestamp |
Added
- Se agrega la entidad de historico de cambios de estatus de pago de proveedores
| 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
- Se modifica el tipo de dato del campo paidBy para la entidad service_excess_payments
| 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
- Se cambiaron las descripciones de los campos de la vista provider_payments
| 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
- Se eliminaron los siguientes campos para la entidad Topes (Maximum coverages)
| 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
- Se agrega la entidad de Planes (Plans).
| 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
- Se realizó una mejora en la vista de checklist service para mejorar el tiempo de respuesta y se modificó la vista.
| 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
- Se agrega la entidad checklist del servicio.
| 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. |
- Se agrega la entidad pagos de excedentes para servicios
| 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 |
- Se agrega la entidad historial de servicios
| 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. |
- Se agrega la entidad Siniestralidad (Coverage balances)
| 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. |
- Se agrega la entidad Topes (Maximum coverages)
| 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
- Se agregan el siguiente cambio a la entidad Subscripciones (Subscriptions).
| 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. |
- Se agregan los campos serviceDestinationLatitude y serviceDestinationLongitude, servicePurchased y en la entidad de servicios.
| 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.
- Se agrega el campo sendsPublicLink a la entidad de Definición de servicios
| 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
- Se agrega la entidad Budget (Budgets) de presupuesto skus
| 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 |
- Se agrega la entidad Nombre de comuna de Sku
| 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. |
- Se agrega la entidad servicios asociados en reclamo
| 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
- Se modifica el nombre del campo wizarId a wizardId para la entidad Respuestas a las preguntas que se han dado en el wizard de los servicios
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| wizardId | string | ✓ | ID de wizard. |
- Se agrega el campo subscriptionPlanId y purchasedService la entidad de servicios
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| subscriptionPlanId | int | ✗ | Identificador de la suscripción asociada al plan. |
| purchasedService | bool | ✗ | Si se compro un plan o no. |
- Se agrega el campo externalCode la entidad de casos
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| externalCode | string | ✗ | Codigo externo asociado al caso |
v5 - Published: 2023-01-17
Changed
- Se agregan los siguientes cambios para la entidad Postulaciones
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| 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) |
- Se agregan los siguientes cambios para la entidad Materias (Materials).
| 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
- Se agregan los siguientes cambios para la entidad Suscripciones (Subscriptions).
| 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
- Se agregan los siguientes cambios para la entidad Servicios
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| emergencyService | boolean | ✗ | Si un servicio es de emergencia. |
| planId | int | ✗ | Identificador del Plan asociados al servicio. |
- Se agregan los siguientes campos a la entidad Definición de servicios
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| motorId | string | ✗ | Identificador del motor de asignaciones. |
- Se agregan los siguientes cambios para la entidad Wizard Vars
| 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. |
- Se agregan los siguientes campos para la entidad Respuestas a las preguntas que se han dado en el wizard de los servicios
| Campo | Tipo | PK | Descripción |
|---|---|---|---|
| wizardQuestion | string | ✗ | Pregunta del Wizard. |
| wizardAnswer | string | ✗ | Respuesta del Wizard. |
El campo "answer" fue reemplazado por "wizardAnswer"
- Se agregan los siguientes campos para la entidad Unidades de negocio
| 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
- Se agrega la entidad Skus de presupuestos
| 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. |
- Se agrega la entidad Match
| 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
Se ajustaron los datos de la entidad Concepto de Costos, por lo que se recomienda resincronizar todos los datos.
Se agrega el campo caseId la entidad de reclamos
| Campo | Tipo | Descripción |
|---|---|---|
| caseId | int | Identificador del caso. |
v3 - Published: 2022-11-15
Changed
- Se agregan los siguientes campos para la entidad Casos:
| Campo | Tipo | Descripción |
|---|---|---|
| correlativeNumber | string | Número de correlativo del caso. |
- Se agregan los siguientes campos para la entidad Profesionales:
| 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. |
- Se agregan los siguiente campos para la entidad Order:
| Campo | Tipo | Descripción |
|---|---|---|
| createdAt | string | Fecha de creación. |
| updatedAt | string | Fecha de actualización. |
- Se agregan los siguientes campos para la entidad Estatus de Presupuesto:
| Campo | Tipo | Descripción |
|---|---|---|
| serviceId | int | serviceId del presupuesto. |
Removed
- Se eliminaron los siguientes campos para la entidad Reclamos:
| Campo | Tipo | Descripción |
|---|---|---|
| caseId | int | Identificador del caso. |
| correlativeNumber | string | Correlativo del caso. |
v2 - Published: 2022-11-08
Changed
- Se agregan los siguientes campos para la entidad Profesionales:
| 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. |
- Se agregan los siguientes campos para la entidad Servicios:
| 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. |
- Se agregan los siguientes campos para la entidad Definición de servicios:
| 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. |
- Se agregan los siguientes campos para la entidad Proveedores:
| Campo | Tipo | Descripción |
|---|---|---|
| identificationTypeId | string | Tipo de identificación. |
| identificationNumber | string | Número de identificación. |
- Se agregan los siguientes campos para la entidad Presupuestos de servicios:
| 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:
- Límite de consultas por segundos: 3
- Límite de consultas por minutos: 100
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:
- Producción: Ambiente live de la plataforma.
- UAT: Pruebas integrales con usuarios finales.
- QA: Ambiente de integracion y pruebas unitarias.
URL del API por ambientes.
- QA:
POST https://qa.report.api.tutenlabs.dev/v1/graphql - UAT:
POST https://uat.report.api.tutenlabs.dev/v1/graphql - PRD:
POST https://api.report.tutenlabs.com/v1/graphql
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. |
| 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. |
| 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. |
| 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 |
| 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 |
| 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. |
| 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.
- Como contratista, puedes utilizar nuestra API para acceder a la información relacionada a sus servicios y a los de sus profesionales contenida en nuestra base de datos.
- Como profesional, puedes utilizar nuestra API para acceder a la información relacionada a sus servicios.
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:
- Límite de consultas por segundos: 3
- Límite de consultas por minutos: 100
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"
}
Se define el código HTTP 200 como respuesta de procesamiento exitoso para aquellas APIs que no crean recursos dentro de la base de datos. Dependiendo la particularidad del API, puede no devolverse información (No content), así como también en los casos que aplique, se devolverá la información solicitada en un string con formato JSON.
Se define el código HTTP 201 como respuesta de procesamiento exitoso para aquellas APIs que crean recursos dentro del sistema. Además se devolverá en un string con formato JSON el atributo
hrefcon la ubicación del recurso creado.
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:
- Producción: Ambiente live de la plataforma.
- UAT: Pruebas integrales con usuarios finales.
- QA: Ambiente de integracion y pruebas unitarias.
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 |
|---|---|---|---|---|
| ✓ | 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:
- Para las preguntas que son de tipo "Selección de Opciones" (Simples o múltiples) debe suministrarse el atributo
optionsId(Con una o varias respuestas según corresponda). - Para las preguntas que son de tipo campo de texto, debe suministrarse el atributo
answercon el texto de la respuesta.
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:
assignedAtMinyassignedAtMaxexecutionDateAtMinyexecutionDateAtMax
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. |
| 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 |
| 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 |
| 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. |