Skip to content

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 obter check-ins pendentes. request-code y verify-code no requerem autenticación; el resto requer token CLI vía Authorization: Bearer <cli_token>.

Método Endpoint Descrição
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/ Obter estado de auth CLI actual (requer token CLI)
POST /v1/cli/auth/logout/ Revogar token CLI (requer token CLI)
POST /v1/cli/updates/ Enviar atualização a check-ins diarios pendentes (requer token CLI)
GET /v1/cli/status/ Obter check-ins diarios pendentes de hoy (requer token CLI)

POST /v1/cli/auth/request-code/

POST /v1/cli/auth/request-code/

Envia un código de verificación de 6 dígitos al email indicado. Não requer autenticación. Limitado por tasa.

Parâmetros do Corpo

Name Type Required Description
email string (email) Required Endereço de email para receber o código.
Requisição
curl -X POST "https://api.dailybot.com/v1/cli/auth/request-code/" \
  -H "Content-Type: application/json" \
  -d '{"email": "[email protected]"}'
Response 200 OK
json
{
  "detail": "Verification code sent to your email.",
  "organizations": [
    {
      "id": 1,
      "name": "Acme Corp",
      "uuid": "org-uuid"
    }
  ],
  "is_multi_org": false
}
Response 400 Bad Request
json
{
  "detail": "<error message>"
}

POST /v1/cli/auth/verify-code/

POST /v1/cli/auth/verify-code/

Verifica el código de 6 dígitos y retorna un token de auth CLI. Não requer autenticación. Limitado por tasa.

Parâmetros do Corpo

Name Type Required Description
email string (email) Required Mesmo email usado em request-code.
code string Required Código de verificação de 6 dígitos.
organization_id integer Optional Obrigatório quando o usuário pertence a várias organizações.
Requisição
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 — Uma organização ou organization_id fornecido
json
{
  "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 — Várias organizações, sem organization_id
json
{
  "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
json
{
  "detail": "<error message>"
}

GET /v1/cli/auth/status/

GET /v1/cli/auth/status/

Retorna el estado de autenticación CLI actual. Requer token CLI.

Requisição
curl -X GET "https://api.dailybot.com/v1/cli/auth/status/" \
  -H "Authorization: Bearer <cli_token>"
Response 200 OK
json
{
  "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
json
{
  "detail": "Authentication credentials were not provided."
}

POST /v1/cli/auth/logout/

POST /v1/cli/auth/logout/

Revoga el token CLI actual. Requer token CLI.

Requisição
curl -X POST "https://api.dailybot.com/v1/cli/auth/logout/" \
  -H "Authorization: Bearer <cli_token>"
Response 200 OK
json
{
  "detail": "Successfully logged out."
}

POST /v1/cli/updates/

POST /v1/cli/updates/

Envia una atualização a los check-ins diarios pendentes del usuário para hoy. Requer token CLI. Se puede enviar un message en texto libre (procesado y mapeado a preguntas) o done / doing / blocked estructurados.

Parâmetros do Corpo

Name Type Required Description
message string Optional Atualização em texto livre (mapeada às perguntas do check-in). Usar quando não enviar done/doing/blocked.
done string Optional O que foi concluído.
doing string Optional O que está em progresso.
blocked string Optional Bloqueios ou problemas.
Requisição
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
json
{
  "attached_followups": [
    {
      "followup_name": "Daily Standup",
      "followup_uuid": "followup-id",
      "daily_uuid": "daily-uuid",
      "action": "created"
    }
  ],
  "followups_count": 1
}
Response 400 Bad Request
json
{
  "detail": "<error message>"
}

GET /v1/cli/status/

GET /v1/cli/status/

Retorna los check-ins diarios pendentes del usuário para hoy. Requer token CLI.

Requisição
curl -X GET "https://api.dailybot.com/v1/cli/status/" \
  -H "Authorization: Bearer <cli_token>"
Response 200 OK
json
{
  "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
}