Skip to content

Kudos

Los Kudos son el sistema de reconocimiento de Dailybot para celebrar los logros del equipo. Usa este endpoint para otorgar kudos a miembros del equipo programáticamente, con soporte para reconocimiento anónimo y valores de empresa.

MétodoEndpointDescripción
GET/v1/kudos/Listar kudos (paginado)
POST/v1/kudos/Crear un kudo
POST/v1/kudos/{kudo-id}/boost/Dar boost a un kudo

Listar Kudos

GET/v1/kudos/API keyCLI Auth

Devuelve una lista paginada de kudos (filtrada por el usuario autenticado: recibidos o dados).

Parámetros de Consulta

NameTypeRequiredDescription
filterstringOptionalkudos_received or kudos_given (case-insensitive). Invalid values return 400 invalid_kudos_filter.
sender_uuidstring (UUID)OptionalFiltra por kudos enviados por un usuario específico.
receiver_uuidstring (UUID)OptionalFiltra por kudos recibidos por un usuario específico.
start_datestring (YYYY-MM-DD)OptionalFecha de inicio inclusiva (zona horaria del usuario). También aceptado: date_start, date_from. Valores inválidos devuelven 400 invalid_date_range.
end_datestring (YYYY-MM-DD)OptionalFecha de fin inclusiva, 23:59:59 en la zona horaria del usuario. También aceptado: date_end, date_to. Valores inválidos devuelven 400 invalid_date_range.
searchstringOptionalBúsqueda de subcadena sin distinción de mayúsculas en el mensaje del kudo. Máximo 256 caracteres — valores más largos devuelven 400 search_query_too_long.
pageintegerOptionalNúmero de página (índice base 1). Por defecto: 1.
page_sizeintegerOptionalElementos por página. Por defecto: 50, máximo: 200. Alias: limit.
Petición
curl "https://api.dailybot.com/v1/kudos/?filter=kudos_received&limit=10&offset=0" \
  -H "X-API-KEY: tu_api_key"
Response200 OK
json
{
  "count": 10,
  "next": "https://api.dailybot.com/v1/kudos/?limit=10&offset=10",
  "previous": null,
  "results": [
    {
      "id": "kudo-uuid",
      "parent": null,
      "user": {
        "uuid": "user-uuid",
        "full_name": "María García",
        "image": "...",
        "role": "member"
      },
      "receivers": [
        {
          "uuid": "user-uuid-2",
          "full_name": "Carlos López"
        }
      ],
      "company_value": {
        "id": "value-uuid",
        "name": "Trabajo en equipo"
      },
      "content": "¡Gran trabajo en el release!",
      "is_anonymous": false,
      "by_dailybot": false,
      "metadata": {},
      "created_at": "2026-02-25T10:00:00Z"
    }
  ]
}

Enviar Kudos

POST/v1/kudos/API keyCLI Auth

Crea un nuevo kudo. Proporciona receivers (lista de identificadores) o users_receivers y/o teams_receivers.

Parámetros del Cuerpo

NameTypeRequiredDescription
receiversarray of stringsOptionalIdentificadores de usuario (ej. UUIDs) que reciben el kudo. Requerido si no se usan users_receivers y teams_receivers.
users_receiversarray of strings (UUID)OptionalUUIDs de usuarios que reciben el kudo.
teams_receiversarray of strings (UUID)OptionalUUIDs de equipos; todos los miembros activos reciben el kudo.
contentstringOptionalTexto del mensaje del kudo (HTML-safe).
is_anonymousbooleanOptionalSi es true, el remitente se anonimiza. Por defecto: false.
company_valuestring (UUID)OptionalID del valor de empresa a asociar (si la organización usa valores).
Petición
curl -X POST "https://api.dailybot.com/v1/kudos/" \
  -H "X-API-KEY: tu_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "receivers": ["a1b2c3d4-e5f6-7890-abcd-ef1234567890"],
    "content": "Excelente trabajo en la integración API!",
    "company_value": "value-uuid-aqui",
    "is_anonymous": false
  }'
Response200 OK
json
{
  "id": "kudo-uuid",
  "user": {
    "uuid": "user-uuid",
    "full_name": "María García"
  },
  "receivers": [
    {
      "uuid": "user-uuid-2",
      "full_name": "Carlos López"
    }
  ],
  "company_value": {
    "id": "value-uuid",
    "name": "Trabajo en equipo"
  },
  "content": "¡Gran trabajo!",
  "is_anonymous": false,
  "by_dailybot": false,
  "created_at": "2026-02-25T10:00:00Z",
  "children_kudos": [],
  "boost_count": 0,
  "has_boosted": false
}
Response400 Bad Request
json
{
  "detail": "The receivers list should not be empty",
  "code": "params_validation_error"
}
Response400 Bad Request — self-kudo
json
{
  "detail": "You cannot give kudos to yourself",
  "code": "cant_give_kudos_to_yourself"
}
Response404 Not Found
json
{
  "detail": "One or more receivers were not found in Dailybot, or were duplicated in the input",
  "code": "no_users_found"
}

Tip

Puedes enviar kudos a múltiples usuarios a la vez incluyendo varios UUIDs en el array receivers. Cada destinatario recibirá su propia notificación de kudos.

Info

Al usar un token de intercambio, los kudos aparecerán como enviados por el usuario asociado al token en lugar del propietario de la API key.

Boost a un kudo

POST/v1/kudos/{kudo-id}/boost/API keyCLI Auth

Da boost a un kudo (añade un '+1' del usuario autenticado). Solo se pueden boostear kudos originales (de nivel superior); el usuario no puede boostear su propio kudo ni el mismo kudo dos veces.

Petición
curl -X POST "https://api.dailybot.com/v1/kudos/kudo-uuid-aqui/boost/" \
  -H "X-API-KEY: tu_api_key" \
  -H "Content-Type: application/json"
Response201 Created
json
{
  "id": "boost-kudo-uuid",
  "parent": "kudo-uuid",
  "user": {
    "uuid": "user-uuid",
    "full_name": "María García"
  },
  "created_at": "2026-02-25T10:05:00Z",
  "boost_count": 1
}
Response400 Bad Request
json
{
  "detail": "You cannot boost your own kudo.",
  "code": "cannot_boost_own_kudo"
}
Response400 Bad Request — boostear un boost
json
{
  "detail": "You can only boost original kudos.",
  "code": "cannot_boost_child_kudo"
}
Response404 Not Found
json
{
  "detail": "Not found.",
  "code": "not_found"
}
Response409 Conflict
json
{
  "detail": "You have already boosted this kudo.",
  "code": "already_boosted"
}

Kudos de toda la organización

Devuelve todos los kudos de nivel superior en toda la organización (las respuestas quedan excluidas). Requiere rol de admin de la organización. Siempre paginado (envolvente estándar). Ordenado porcreated_at DESC con id como criterio de desempate determinista.

Autenticación: Acepta tanto X-API-KEY(API key de organización) como Authorization: Bearer <token>(token Bearer del CLI o token de sesión). El requisito de rol admin aplica sea cual sea la credencial.

GET/v1/kudos/organization/API keyCLI Auth

Devuelve todos los kudos de nivel superior de la organización. Solo admin. Admite filter, emisor/receptor y rangos de fechas legacy y con zona horaria.

Response200 OK
json
{
  "count": 156,
  "next": "https://api.dailybot.com/v1/kudos/organization/?page=2",
  "previous": null,
  "results": [
    {
      "id": "a8283c36-8e5f-40cb-92ca-9e483eb6bde2",
      "user": {
        "uuid": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
        "full_name": "María García",
        "image": "https://avatars.slack-edge.com/..."
      },
      "receivers": [
        {
          "uuid": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
          "full_name": "Carlos López",
          "image": "https://avatars.slack-edge.com/..."
        }
      ],
      "company_value": {
        "id": "d4735e3a-265e-16d7-3dca-60b8831c8295",
        "value": "Trabajo en equipo",
        "description": "Colaboración y apoyo",
        "emoji": "🤝",
        "i18n_meta": {}
      },
      "content": "¡Gracias por la increíble ayuda con el lanzamiento!",
      "is_anonymous": false,
      "created_at": "2026-07-08T14:30:00.123456Z"
    }
  ]
}
Response400 — invalid_date_range
json
{
  "detail": "Invalid 'start_date' value. Expected YYYY-MM-DD.",
  "code": "invalid_date_range"
}
Response400 — invalid_kudos_filter
json
{
  "detail": "Not valid kudos filter. Accepted values: kudos_received, kudos_given.",
  "code": "invalid_kudos_filter"
}
Response400 — invalid_sender_uuid
json
{
  "detail": "Invalid UUID format for 'sender_uuid'.",
  "code": "invalid_sender_uuid"
}
Response403 — org_admin_required
json
{
  "detail": "This endpoint requires organization admin privileges.",
  "code": "org_admin_required"
}

Info

Solo se devuelven kudos de nivel superior — las respuestas se excluyen (parent__isnull=True). Si la organización tiene deshabilitados los kudos anónimos (allow_anonymous_messages = false), los kudos anónimos se excluyen. limit/offsetse aceptan como alias retrocompatibles para page_size y paginación por offset.

Muro de la fama

Devuelve un ranking de los mejores receptores de kudos en la organización para un período determinado.

GET/v1/kudos/wall-of-fame/API keyCLI Auth

Devuelve un ranking paginado de los mejores receptores de kudos.

Límites de Tasa

Max 10 kudos por día por API key. Mínimo 5 minutos entre kudos.