Endpoints de Colaborador
Peticiones GET
Obtener todos los colaboradores
Request
- Método: GET
- Ruta: URL BASE +
/chronus/colaboradores
Response
Respuesta Éxitosa
- Status: 200
Respuesta
{
"data": [
{
"activo": true,
"apellido": "Test",
"codigo_basecamp": "11111111",
"correo_electronico": "usuario1@test.com",
"fecha_ingreso": "2000-01-01",
"fecha_nacimiento": "2000-01-01",
"horas_esperadas": 160,
"id": "00000000-00a0-00aa-0000-aaa0a00a0aa0",
"img_perfil": "url/to/img",
"nacionalidad": "Venezolana",
"nombre": "Usuario1",
"num_identificacion": "111111111",
"rol": "Desarrollador"
},
{
"activo": false,
"apellido": "Test",
"codigo_basecamp": "11111112",
"correo_electronico": "usuario2@test.com",
"fecha_ingreso": "2000-01-01",
"fecha_nacimiento": "2000-01-01",
"horas_esperadas": 160,
"id": "00000000-00a0-00aa-0000-aaa0a00a0aa1",
"img_perfil": "url/to/img",
"nacionalidad": "Venezolana",
"nombre": "Usuario2",
"num_identificacion": "111111112",
"rol": "Desarrollador"
}
],
"success": true
}
Respuesta Vacía
- Status: 200
Respuesta
{
"data": [],
"success": true
}
Obtener colaboradores activos
Request
- Método: GET
- Ruta: URL BASE +
/chronus/colaboradores_activos
Response
Respuesta Éxitosa
- Status: 200
Respuesta
{
"data": [
{
"activo": true,
"apellido": "Test",
"codigo_basecamp": "11111111",
"correo_electronico": "usuario1@test.com",
"fecha_ingreso": "2000-01-01",
"fecha_nacimiento": "2000-01-01",
"horas_esperadas": 160,
"id": "00000000-00a0-00aa-0000-aaa0a00a0aa0",
"img_perfil": "url/to/img",
"nacionalidad": "Venezolana",
"nombre": "Usuario1",
"num_identificacion": "111111111",
"rol": "Desarrollador"
}
],
"success": true
}
Respuesta Vacía
- Status: 200
Respuesta
{
"data": [],
"success": true
}
Obtener un colaborador por ID
Request
- Método: GET
- Ruta: URL BASE +
/chronus/colaborador/<id>
Response
Respuesta Éxitosa
- Status: 200
Respuesta
{
"data": [
{
"activo": true,
"apellido": "Test",
"codigo_basecamp": "11111111",
"correo_electronico": "usuario1@test.com",
"fecha_ingreso": "2000-01-01",
"fecha_nacimiento": "2000-01-01",
"horas_esperadas": 160,
"id": "00000000-00a0-00aa-0000-aaa0a00a0aa0",
"img_perfil": "url/to/img",
"nacionalidad": "Venezolana",
"nombre": "Usuario1",
"num_identificacion": "111111111",
"rol": "Desarrollador"
}
],
"success": true
}
Respuestas Fallidas
- Status: 400
Respuesta
{
"error": "Hay un error en el request"
}
- Status: 404
Respuesta
{
"success": false,
"data": {},
"message": "Not found",
"code": 404
}
Obtener proyectos generales de un colaborador
Request
- Método: GET
- Ruta: URL BASE +
/chronus/colaborador_proyectos/<id>
Response
Respuesta Éxitosa
- Status: 200
Respuesta
{
"data": [
{
"cliente": "aaaa0000-aaa0-0a00-a00a-00000a0a0000",
"codigo": "000",
"codigo_basecamp": "11111111",
"estatus": "En curso",
"fecha_fin": "2022-03-03",
"fecha_inicio": "2022-03-03",
"horas_contratadas": "Entre 100 y 200",
"horas_contratadas_max": 200,
"horas_contratadas_min": 100,
"nombre": "Proyecto 1",
"product_owner": "Darien Technology",
"tipo": "Squad"
},
{
"cliente": "aaaa0000-aaa0-0a00-a00a-00000a0a0001",
"codigo": "001",
"codigo_basecamp": "11111112",
"estatus": "Por iniciar",
"fecha_fin": "2022-03-04",
"fecha_inicio": "2022-03-04",
"horas_contratadas": "Entre 100 y 200",
"horas_contratadas_max": 200,
"horas_contratadas_min": 100,
"nombre": "Proyecto 2",
"product_owner": "Neylin Belisario",
"tipo": "Darien Activo"
}
],
"success": true
}
Respuesta Vacía
- Status: 200
Respuesta
{
"data": [],
"success": true
}
Respuestas Fallidas
- Status: 400
Respuesta
{
"error": "Hay un error en el request"
}
- Status: 404
Respuesta
{
"success": false,
"data": {},
"message": "Not found",
"code": 404
}
Obtener proyectos de soporte de un colaborador
Request
- Método: GET
- Ruta: URL BASE +
/chronus/colaborador_proyectos_soporte/<id>
Response
Respuesta Éxitosa
- Status: 200
Respuesta
{
"data": [
{
"cliente": "aaaa0000-aaa0-0a00-a00a-00000a0a0002",
"codigo": "S128",
"codigo_basecamp": "1111111111",
"codigo_basecamp_card": "1111111112",
"estatus": "Por iniciar",
"fecha_fin": "2025-12-31",
"fecha_inicio": "2023-01-01",
"horas_contratadas": "2",
"nombre": "Proyecto Soporte 1",
"product_owner": "Ruben Perez",
"proyecto_padre": "111",
"tiempo_respuesta": "48"
}
],
"success": true
}
Respuesta Vacía
- Status: 200
Respuesta
{
"data": [],
"success": true
}
Respuestas Fallidas
- Status: 400
Respuesta
{
"error": "Hay un error en el request"
}
- Status: 404
Respuesta
{
"success": false,
"data": {},
"message": "Not found",
"code": 404
}
Obtener todos los proyectos (generales y soporte) de un colaborador
Request
- Método: GET
- Ruta: URL BASE +
/chronus/colaborador_proyectos_all/<id>
Response
Respuesta Éxitosa
- Status: 200
Respuesta
{
"data": [
{
"cliente": "aaaa0000-aaa0-0a00-a00a-00000a0a0000",
"codigo": "000",
"codigo_basecamp": "11111111",
"estatus": "En curso",
"fecha_fin": "2022-03-03",
"fecha_inicio": "2022-03-03",
"horas_contratadas": "Entre 100 y 200",
"horas_contratadas_max": 200,
"horas_contratadas_min": 100,
"nombre": "Proyecto 1",
"product_owner": "Darien Technology",
"tipo": "Squad"
},
{
"cliente": "aaaa0000-aaa0-0a00-a00a-00000a0a0002",
"codigo": "S128",
"codigo_basecamp": "1111111111",
"codigo_basecamp_card": "1111111112",
"estatus": "Por iniciar",
"fecha_fin": "2025-12-31",
"fecha_inicio": "2023-01-01",
"horas_contratadas": "2",
"nombre": "Proyecto Soporte 1",
"product_owner": "Ruben Perez",
"proyecto_padre": "111",
"tiempo_respuesta": "48"
}
],
"success": true
}
Respuesta Vacía
- Status: 200
Respuesta
{
"data": [],
"success": true
}
Respuestas Fallidas
- Status: 400
Respuesta
{
"error": "Hay un error en el request"
}
- Status: 404
Respuesta
{
"success": false,
"data": {},
"message": "Not found",
"code": 404
}
Peticiones PUT
Actualizar un colaborador existente por ID
Request
- Método: PUT
- Ruta: URL BASE +
/chronus/colaborador/<id>
Payload
Payload
{
"num_identificacion": "111111113",
"nombre": "Usuario3",
"apellido": "Test",
"nacionalidad": "Venezolana",
"correo_electronico": "usuario3@test.com",
"fecha_nacimiento": "2000-01-01",
"fecha_ingreso": "2000-01-01",
"img_perfil": "url/to/img",
"rol": "Desarrollador",
"codigo_basecamp": "11111114",
"horas_esperadas": 160
}
NOTA: No es necesario pasar todos los campos, solo los que van a actualizarse.
Response
Respuesta Éxitosa
- Status: 200
Respuesta
{
"data": {
"activo": true,
"apellido": "Test",
"codigo_basecamp": "11111114",
"correo_electronico": "usuario3@test.com",
"fecha_ingreso": "2000-01-01",
"fecha_nacimiento": "2000-01-01",
"horas_esperadas": 160,
"id": "4d8d9197-4356-413d-bee1-9218c689ef3a",
"img_perfil": "https://www.google.com/url?sa=i&url=https%3A%2F%2Fwww.pinterest.es%2Flgm240502%2Ffotos-random%2F&psig=AOvVaw3FdwkdN-OMMznF6fJJG6iJ&ust=1703973211207000&source=images&cd=vfe&ved=0CBEQjRxqFwoTCKiX1oLRtYMDFQAAAAAdAAAAABAE",
"nacionalidad": "Venezolana",
"nombre": "Usuario3",
"num_identificacion": "111111113",
"rol": "Desarrollador"
},
"success": true
}
Respuestas Fallidas
- Status: 400
Respuesta
{
"error": "Hay un error en el request"
}
- Status: 404
Respuesta
{
"success": false,
"data": {},
"message": "Not found",
"code": 404
}
Peticiones POST
Crear un nuevo colaborador
Request
- Método: POST
- Ruta: URL BASE +
/chronus/colaborador
Payload
Payload
{
"num_identificacion": "111111113",
"nombre": "Usuario3",
"apellido": "Test",
"nacionalidad": "Venezolana",
"correo_electronico": "usuario3@test.com",
"fecha_nacimiento": "2000-01-01",
"fecha_ingreso": "2000-01-01",
"img_perfil": "url/to/img",
"rol": "Desarrollador",
"codigo_basecamp": "11111114",
"horas_esperadas": 160
}
Roles: [Desarrollador, Coordinador de Proyectos, Coordinador de Soporte, Diseño, QA, Administración, Gerencia]
Atento
Es necesario pasar en el payload el atributo img_perfil así sea vacío. Ya luego se actualiza la imagen actualizando al colaborador.
Response
Respuesta Éxitosa
- Status: 200
Respuesta
{
"data": {
"activo": true,
"apellido": "Test",
"codigo_basecamp": "11111114",
"correo_electronico": "usuario3@test.com",
"fecha_ingreso": "2000-01-01",
"fecha_nacimiento": "2000-01-01",
"horas_esperadas": 160,
"id": "4d8d9197-4356-413d-bee1-9218c689ef3a",
"img_perfil": "",
"nacionalidad": "Venezolana",
"nombre": "Usuario3",
"num_identificacion": "111111113",
"rol": "Desarrollador"
},
"success": true
}
Respuestas Fallidas
- Status: 400
Respuesta
{
"code": 400,
"data": {},
"message": "Mensaje de error",
"success": false
}
Asigna proyectos a un colaborador
Request
- Método: POST
- Ruta: URL BASE +
/chronus/colaborador_proyectos
Payload
Payload
{
"num_identificacion": "000001",
"proyectos": [{ "codigo": "001" }, { "codigo": "002" }]
}
Response
Respuesta Éxitosa
- Status: 200
Respuesta
{
"data": [
{
"cliente": "aaaa0000-aaa0-0a00-a00a-00000a0a0000",
"codigo": "001",
"codigo_basecamp": "11111111",
"estatus": "En curso",
"fecha_fin": "2022-03-03",
"fecha_inicio": "2022-03-03",
"horas_contratadas": "Entre 100 y 200",
"horas_contratadas_max": 200,
"horas_contratadas_min": 100,
"nombre": "Proyecto 1",
"product_owner": "Darien Technology",
"tipo": "Squad"
},
{
"cliente": "aaaa0000-aaa0-0a00-a00a-00000a0a0001",
"codigo": "002",
"codigo_basecamp": "11111112",
"estatus": "Por iniciar",
"fecha_fin": "2022-03-04",
"fecha_inicio": "2022-03-04",
"horas_contratadas": "Entre 100 y 200",
"horas_contratadas_max": 200,
"horas_contratadas_min": 100,
"nombre": "Proyecto 2",
"product_owner": "Neylin Belisario",
"tipo": "Darien Activo"
}
],
"success": true
}
Respuestas Fallidas
- Status: 400
Si algún proyecto no existe.
Respuesta
{
"code": 400,
"data": {},
"message": "No se pudo agregar todos los proyecto. Consulte el colaborador antes de continuar.",
"success": false
}
Si algún campo en el payload está incorrecto
Respuesta
{
"error": "Hay un error en el request"
}
- Status: 404
Si el colaborador no existe
Respuesta
{
"success": false,
"data": {},
"message": "Not found",
"code": 404
}
Peticiones DELETE
Eliminar un colaborador
Request
- Método: DELETE
- Ruta: URL BASE +
/chronus/colaborador/<id>
Response
Respuesta Éxitosa
- Status: 200
Respuesta
{
"data": {
"activo": true,
"apellido": "Test",
"codigo_basecamp": "11111114",
"correo_electronico": "usuario3@test.com",
"fecha_ingreso": "2000-01-01",
"fecha_nacimiento": "2000-01-01",
"horas_esperadas": 160,
"id": "4d8d9197-4356-413d-bee1-9218c689ef3a",
"img_perfil": "https://www.google.com/url?sa=i&url=https%3A%2F%2Fwww.pinterest.es%2Flgm240502%2Ffotos-random%2F&psig=AOvVaw3FdwkdN-OMMznF6fJJG6iJ&ust=1703973211207000&source=images&cd=vfe&ved=0CBEQjRxqFwoTCKiX1oLRtYMDFQAAAAAdAAAAABAE",
"nacionalidad": "Venezolana",
"nombre": "Usuario3",
"num_identificacion": "111111113",
"rol": "Desarrollador"
},
"success": true
}
Respuestas Fallidas
- Status: 400
Respuesta
{
"error": "Hay un error en el request"
}
- Status: 404
Respuesta
{
"success": false,
"data": {},
"message": "Not found",
"code": 404
}
Desasignar proyectos de un colaborador
Request
- Método: DELETE
- Ruta: URL BASE +
/chronus/colaborador_proyectos
Payload
Payload
{
"num_identificacion": "000001",
"proyectos": [{ "codigo": "001" }, { "codigo": "002" }]
}
Response
Respuesta Éxitosa
- Status: 200
Respuesta
{
"data": [],
"success": true
}
Respuestas Fallidas
- Status: 400
Si algún proyecto no existe.
Respuesta
{
"code": 400,
"data": {},
"message": "No se pudo agregar todos los proyecto. Consulte el colaborador antes de continuar.",
"success": false
}
Si algún campo en el payload está incorrecto
Respuesta
{
"error": "Hay un error en el request"
}
- Status: 404
Si el colaborador no existe
Respuesta
{
"success": false,
"data": {},
"message": "Not found",
"code": 404
}