CLI
Endpoints públicos de la API para autenticación CLI (OTP por email), estado, cierre de sesión y para enviar actualizaciones de check-in y obtener check-ins pendientes. request-code y verify-code no requieren autenticación; el resto requiere token CLI vía Authorization: Bearer <cli_token>.
| Método | Endpoint | Descripción |
|---|---|---|
| POST | /v1/cli/auth/request-code/ | Enviar código de verificación de 6 dígitos al email (sin auth) |
| POST | /v1/cli/auth/verify-code/ | Verificar código y devolver token CLI (sin auth) |
| GET | /v1/cli/auth/status/ | Obtener estado de auth CLI actual (requiere token CLI) |
| POST | /v1/cli/auth/logout/ | Revocar token CLI (requiere token CLI) |
| POST | /v1/cli/updates/ | Enviar actualización a check-ins diarios pendientes (requiere token CLI) |
| GET | /v1/cli/status/ | Obtener check-ins diarios pendientes de hoy (requiere token CLI) |
POST /v1/cli/auth/request-code/
/v1/cli/auth/request-code/ Envía un código de verificación de 6 dígitos al email indicado. No requiere autenticación. Limitado por tasa.
Parámetros del Cuerpo
| Name | Type | Required | Description |
|---|---|---|---|
email | string (email) | Required | Dirección de email para recibir el código. |
curl -X POST "https://api.dailybot.com/v1/cli/auth/request-code/" \
-H "Content-Type: application/json" \
-d '{"email": "[email protected]"}'Response 200 OK
{
"detail": "Verification code sent to your email.",
"organizations": [
{
"id": 1,
"name": "Acme Corp",
"uuid": "org-uuid"
}
],
"is_multi_org": false
}Response 400 Bad Request
{
"detail": "<error message>"
}POST /v1/cli/auth/verify-code/
/v1/cli/auth/verify-code/ Verifica el código de 6 dígitos y devuelve un token de auth CLI. No requiere autenticación. Limitado por tasa.
Parámetros del Cuerpo
| Name | Type | Required | Description |
|---|---|---|---|
email | string (email) | Required | Mismo email usado en request-code. |
code | string | Required | Código de verificación de 6 dígitos. |
organization_id | integer | Optional | Requerido cuando el usuario pertenece a varias organizaciones. |
curl -X POST "https://api.dailybot.com/v1/cli/auth/verify-code/" \
-H "Content-Type: application/json" \
-d '{"email": "[email protected]", "code": "123456"}'Response 200 OK — Una organización o organization_id proporcionado
{
"requires_organization_selection": false,
"token": "cli-auth-token-string",
"user": {
"uuid": "user-uuid",
"email": "[email protected]",
"full_name": "Jane Smith"
},
"organization": {
"id": 1,
"name": "Acme Corp",
"uuid": "org-uuid"
}
}Response 200 OK — Varias organizaciones, sin organization_id
{
"requires_organization_selection": true,
"organizations": [
{
"id": 1,
"name": "Acme Corp",
"uuid": "org-uuid"
},
{
"id": 2,
"name": "Other Org",
"uuid": "org-uuid-2"
}
]
}Response 400 Bad Request
{
"detail": "<error message>"
}GET /v1/cli/auth/status/
/v1/cli/auth/status/ Devuelve el estado de autenticación CLI actual. Requiere token CLI.
curl -X GET "https://api.dailybot.com/v1/cli/auth/status/" \
-H "Authorization: Bearer <cli_token>"Response 200 OK
{
"authenticated": true,
"user": {
"uuid": "user-uuid",
"email": "[email protected]",
"full_name": "Jane Smith"
},
"organization": {
"id": 1,
"name": "Acme Corp",
"uuid": "org-uuid"
}
}Response 401 Unauthorized
{
"detail": "Authentication credentials were not provided."
}POST /v1/cli/auth/logout/
/v1/cli/auth/logout/ Revoca el token CLI actual. Requiere token CLI.
curl -X POST "https://api.dailybot.com/v1/cli/auth/logout/" \
-H "Authorization: Bearer <cli_token>"Response 200 OK
{
"detail": "Successfully logged out."
}POST /v1/cli/updates/
/v1/cli/updates/ Envía una actualización a los check-ins diarios pendientes del usuario para hoy. Requiere token CLI. Se puede enviar un message en texto libre (procesado y mapeado a preguntas) o done / doing / blocked estructurados.
Parámetros del Cuerpo
| Name | Type | Required | Description |
|---|---|---|---|
message | string | Optional | Actualización en texto libre (mapeada a preguntas del check-in). Usar cuando no se envíe done/doing/blocked. |
done | string | Optional | Lo completado. |
doing | string | Optional | Lo que está en progreso. |
blocked | string | Optional | Bloqueos o problemas. |
curl -X POST "https://api.dailybot.com/v1/cli/updates/" \
-H "Authorization: Bearer <cli_token>" \
-H "Content-Type: application/json" \
-d '{
"done": "Completé la integración API",
"doing": "Empezando trabajo frontend",
"blocked": "Sin bloqueos"
}'Response 201 Created
{
"attached_followups": [
{
"followup_name": "Daily Standup",
"followup_uuid": "followup-id",
"daily_uuid": "daily-uuid",
"action": "created"
}
],
"followups_count": 1
}Response 400 Bad Request
{
"detail": "<error message>"
}GET /v1/cli/status/
/v1/cli/status/ Devuelve los check-ins diarios pendientes del usuario para hoy. Requiere token CLI.
curl -X GET "https://api.dailybot.com/v1/cli/status/" \
-H "Authorization: Bearer <cli_token>"Response 200 OK
{
"pending_checkins": [
{
"followup_name": "Daily Standup",
"followup_uuid": "followup-id",
"template_questions": [
{
"uuid": "question-uuid",
"question": "What did you do?",
"question_type": "text_field",
"is_blocker": false
}
]
}
],
"count": 1
}