Crear Cuenta de Correo & Auto-Calendario
Cada usuario puede registrar una o múltiples cuentas de correo IMAP. Al guardar la cuenta, el sistema crea de forma automática un calendario vinculado a dicha cuenta con zona horaria America/Bogota y el color dorado corporativo de Cinndev.
POST
/api/v1/email-accounts
Bearer Token
Parámetros del Body (JSON)
| Parámetro | Tipo | Estado | Descripción |
|---|---|---|---|
name |
string | Requerido | Nombre de la cuenta (ej: Comercial Cinndev). |
email |
string | Requerido | Email de la cuenta. |
imap_host |
string | Requerido | Servidor IMAP (ej: imap.hostinger.com). |
imap_port |
integer | Requerido | Puerto IMAP (ej: 993). |
imap_encryption |
string | Requerido | Cifrado: ssl, tls o none. |
imap_username |
string | Requerido | Usuario de autenticación IMAP. |
imap_password |
string | Requerido | Contraseña (encriptada con seguridad AES-256). |
Ejemplo de Creación
curl -X POST "https://api.cinndev.co/api/v1/email-accounts" \
-H "Authorization: Bearer 5|XYZ..." \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"name": "Comercial Cinndev",
"email": "[email protected]",
"imap_host": "imap.hostinger.com",
"imap_port": 993,
"imap_encryption": "ssl",
"imap_username": "[email protected]",
"imap_password": "PasswordSeguro*"
}'
Respuesta 201 Created (Con Calendario)
201 Created
{
"success": true,
"message": "Cuenta de correo configurada exitosamente y calendario creado automáticamente.",
"data": {
"id": 1,
"name": "Comercial Cinndev",
"email": "[email protected]",
"calendar": {
"id": 1,
"user_id": 3,
"email_account_id": 1,
"name": "Calendario Comercial Cinndev",
"color": "#c59b4c",
"timezone": "America/Bogota",
"is_default": true
}
}
}
Agendar Cita o Evento (Google Calendar)
Permite crear citas con enlace de videoconferencia (Google Meet, Zoom, Teams), asistentes con seguimiento de estado (aceptado, rechazado, pendiente), recordatorios automáticos por correo o popup, y reglas de recurrencia (semanal, mensual).
POST
/api/v1/calendar-events
Bearer Token
Parámetros del Body (JSON)
| Parámetro | Tipo | Estado | Descripción |
|---|---|---|---|
calendar_id |
integer | Requerido | ID del calendario donde se agendará la cita. |
title |
string | Requerido | Título de la reunión o cita. |
start_time |
datetime | Requerido | Fecha y hora inicial (ISO 8601 o YYYY-MM-DD HH:MM:SS). |
end_time |
datetime | Requerido | Fecha y hora de finalización. |
meeting_url |
url | Opcional | Enlace a Meet, Zoom o Teams. |
location |
string | Opcional | Ubicación física de la cita. |
attendees |
array | Opcional | Lista de invitados con nombre y correo. |
reminders |
array | Opcional | Recordatorios programados (minutos antes). |
Ejemplo de Cita
curl -X POST "https://api.cinndev.co/api/v1/calendar-events" \
-H "Authorization: Bearer 5|XYZ..." \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"calendar_id": 1,
"title": "Demostración de Plataforma con Cliente",
"description": "Revisión en vivo de las capacidades del API y CRM",
"start_time": "2026-10-20 10:00:00",
"end_time": "2026-10-20 11:00:00",
"location": "Sala de Juntas Piso 5",
"meeting_url": "https://meet.google.com/cin-ndev-crm",
"attendees": [
{"name": "Fernando Gonzalez", "email": "[email protected]", "status": "accepted"},
{"name": "Director de Tecnología", "email": "[email protected]", "status": "needsAction"}
],
"reminders": [
{"type": "email", "minutes_before": 60},
{"type": "popup", "minutes_before": 10}
]
}'
Respuesta 201 Created
201 Created
{
"success": true,
"message": "Cita o evento agendado exitosamente.",
"data": {
"id": 1,
"calendar_id": 1,
"title": "Demostración de Plataforma con Cliente",
"start_time": "2026-10-20T10:00:00.000000Z",
"end_time": "2026-10-20T11:00:00.000000Z",
"meeting_url": "https://meet.google.com/cin-ndev-crm",
"status": "confirmed",
"attendees": [
{"name": "Fernando Gonzalez", "email": "[email protected]", "status": "accepted"},
{"name": "Director de Tecnología", "email": "[email protected]", "status": "needsAction"}
]
}
}
Consultar Citas por Rango de Fechas
Obtiene las citas del usuario para renderizar vistas de mes, semana o agenda en el frontend del Workspace.
GET
/api/v1/calendar-events
Bearer Token
Filtros Disponibles (Query Params)
| Parámetro | Tipo | Descripción |
|---|---|---|
start |
datetime | Fecha de inicio del rango (ej: 2026-10-01). |
end |
datetime | Fecha de fin del rango (ej: 2026-10-31). |
calendar_id |
integer | Filtra por un calendario específico. |
search |
string | Busca coincidencias en título, descripción o lugar. |
Consulta de Agenda
curl -X GET "https://api.cinndev.co/api/v1/calendar-events?start=2026-10-01&end=2026-10-31" \
-H "Authorization: Bearer 5|XYZ..." \
-H "Accept: application/json"
Respuesta 200 OK
200 OK
{
"success": true,
"data": [
{
"id": 1,
"title": "Demostración de Plataforma con Cliente",
"start_time": "2026-10-20T10:00:00.000000Z",
"end_time": "2026-10-20T11:00:00.000000Z",
"meeting_url": "https://meet.google.com/cin-ndev-crm",
"calendar": {
"id": 1,
"name": "Calendario Comercial Cinndev",
"color": "#c59b4c"
}
}
]
}