Cambios en la API pública de Crehana.
Listar las rutas de aprendizaje de la organizacion
GET /org/{slug}/learning/content/knowledge-hub/catalog/v2/tracks/ devuelve
las rutas (tracks) de la organización, paginadas por cursor. Es la pieza que
faltaba para armar el flujo completo por API: listar las rutas, elegir una y
asignarla con POST .../enrollments/v2/assign-track/ — el id de cada ruta
es el track_id que ese endpoint espera.
Cada ruta trae id, name, track_type (TRACK o ACADEMY), is_active,
is_hidden, created_at, updated_at, start_date, end_date, version,
has_reward, courses_to_complete, courses_to_certificate y
total_courses_count. updated_at sirve para detectar qué rutas cambiaron
desde tu última sincronización.
La paginación es por cursor: pedís first (de 1 a 100, por defecto 10) y,
para la página siguiente, reenviás page_info.end_cursor en after tal cual,
sin interpretarlo. Las rutas ocultas van al final y el resto de más reciente a
más antigua.
Filtros opcionales: search (por nombre, sin distinguir mayúsculas),
track_type (TRACK o ACADEMY), is_draft e is_hidden. Sin is_draft
recibís sólo las rutas activas y publicadas; con is_draft=true, los
borradores. Un first fuera de rango o un track_type desconocido responden
422.
Sólo se listan rutas de la organización de la api-key: pedir el slug de otra
organización responde con error, no con datos.
