v0.13.0 — every roadmap block complete
Every roadmap block is done. 111 tools — 84 over Skilljar's v2 API and 27 over v1 — covering every capability CSA's organization actually uses.
Four blocks in this release.
Learning paths
list_paths · get_path · list_path_items · list_published_paths · list_course_series · list_learner_path_enrollments
Three words that sound alike and are not: a path is a sequence and is invisible on its own; a published path is that sequence on a domain, so a path published twice is two of them with separate URLs and visibility; a course series is an unordered catalogue grouping with no completion. Path items come back in curriculum order with no rank field — so the order is the data, and the description says not to sort.
Webhooks and event payloads
list_webhooks · get_webhook · preview_event_payload
Ten sample-* endpoints became one tool: preview_event_payload(event_type), accepting either spelling of the event name.
Webhook secrets are withheld. Skilljar returns a shared-secret header value, a token in the target URL's query string, and a Basic-auth password in plain text. None of them are returned here — you get header names, and the URL's host and path, which answer where an event goes without handing over the credential.
Instructor-led training
list_ilt_sessions · list_vilt_session_events · list_vilt_registrations · list_ilt_instructors
A session is the class and is not a date; a session event is a scheduled occurrence with a timezone, and is what a learner registers for. list_vilt_registrations carries a learner's name and email on every row, so it needs the people.read capability and warns when called unfiltered.
Taxonomy
list_labels · list_tags · list_course_labels · list_group_categories
Labels are internal and never shown to learners; tags are public and carry a slug used in catalogue URLs. In the data both are just a name, so the distinction lives in the descriptions.
What this release is not
Not v1.0.0. The roadmap set that here, but v1.0.0 should mean the surface is proven — and the write half is not. Every read in this project is exercised against a real Skilljar organization; no write has been. That is stated rather than left to be discovered.
1297 tests. Python 3.10–3.14, Apache-2.0.