Product
Jentic OSThe workplace. An in-house AI platform for every employeeJentic OneSafe access. Agents reach your systems without holding keysJentic AIRThe foundation. Gets your existing platforms ready for AI
Pricing
Developers

GET STARTED

API DirectoryBrowse 10,000+ APIs Ready For AI Agent IntegrationDocumentationGuides and API reference

TOOLS

API ScoringCheck your AI Readiness using our scorecardArazzo UIVisualize Arazzo Workflows As Interactive DocumentationArazzo EditorBuild And Edit Multi-Step API Workflows Visually

COMMUNITY

GitHubOpen source projects and examplesOpen StandardsBuilt on open specs. Never locked in.
Resources
Company
About UsOur mission and teamCareersJoin our teamContactGet in touch
Try it now
Jentic OSJentic OneJentic AIR
Pricing
API DirectoryDocumentationAPI ScoringArazzo UIArazzo EditorGitHubOpen Standards
Resources
About UsCareersContact
Try it now
JenticJentic
Products
  • Jentic OS
  • Jentic One
  • Jentic AIR
For Developers
  • API Directory
  • Documentation
  • GitHub
Company
  • About Jentic
  • Careers
  • Contact Us
  • Trust Centre
ISO/IEC 27001:2022 certification badge issued by Prescient SecurityISO/IEC 27001:2022 certification badge issued by Prescient Security

Information Security Management System

Certified to ISO/IEC 27001:2022 by Prescient Security

Terms & Conditions•Privacy Policy•
© 2026 Jentic Technology Ltd. All rights reserved.
Switch to light modeSwitch to dark mode
APIs / Education / Firmwater LMS API
Firmwater LMS API logo

Firmwater LMS API

Agent-ready OpenAPI document · curated by JenticEducationLmsapiKey80 EndpointsREST

Know of an official OpenAPI document? Contribute it →

For Agents

Manage courses, learners, learning paths, orders, and webhooks on a Firmwater LMS tenant - 80 endpoints scoped per client for white-label training operations.

Use for: Create a new learning path combining three onboarding courses, List all users in the Sales department, I need to enroll a user in the Compliance Q3 course, Retrieve the order history for client_42

Not supported: Does not handle content authoring, SCORM packaging, or live virtual classrooms - use for course catalogue, learner, learning path, and order management only.

Jentic publishes the only available OpenAPI specification for Firmwater LMS API, keeping it validated and agent-ready. Firmwater LMS is a multi-tenant learning management system aimed at training providers and reseller channels. The 80-endpoint v2 API gives full programmatic control over courses, learning paths, departments, job titles, locations, orders, products, roles, sites, users, and webhooks. Endpoints are scoped per client via a path-level {clientId} placeholder, making it suitable for white-label training portals and channel-partner enablement workflows.

Jentic One on GithubView OpenAPI Document

Install Jentic One Beta

Connect the Firmwater LMS API to your agent

Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Firmwater LMS API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.

Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.

1

Step 1: Jentic One Host machine

# On the machine that will host your Jentic One instance:
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Ffirmwater.com%2Ffirmwater" | sh
2

Step 2: Agent machine

# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Ffirmwater.com%2Ffirmwater" | sh
jentic register       # connects your agent to your Jentic One instance

Jentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.

Capabilities

What an agent can do with Firmwater LMS API.

List, create, and update courses and course types within a client tenant

Build and assign learning paths combining multiple courses for role-specific training

Manage user records, departments, job titles, and locations across the org structure

Place and inspect orders for training products and seat allocations via /orders.json

Register and manage webhooks at /webhooks.json for real-time notifications on enrolment and completion events

Manage child sites and roles for resold training portals under a parent client

Use Cases

Patterns agents use Firmwater LMS API for, with concrete tasks.

★ White-Label Training Portal

Operate a multi-tenant training portal where each reseller has its own client/site under a parent. Manage sites via /sites.json, scope roles, and provision users at the right level. The path-level {clientId} keeps tenant isolation explicit, well-suited to channel-partner enablement.

POST /sites.json to create a new reseller site, then create roles via /roles.json and provision the reseller admin user via /users.json

Automated Onboarding Paths

Build role-based learning paths via /learning-paths.json, attach the relevant courses, and assign them to new hires automatically when they appear in /users.json. Webhooks at /webhooks.json fire on completion events so HR systems can update employee records without polling.

Create a learning path via POST /learning-paths.json with the three onboarding courses, then assign it to every user where job_title='Account Executive'

Compliance Reporting

Pull participant lists per course via /courses/participants.json, count progress, and generate compliance reports per department or job title. Useful for regulated industries that need audit-ready training records. The count endpoints (e.g. /courses/count.json) make pagination predictable.

GET /courses/participants.json filtered by course_id=88231, then summarise completion rate by department

AI Agent Training Operations

Use Firmwater through Jentic so an enablement agent can enrol learners, build paths, or pull progress without learning the 80-endpoint surface. Jentic exposes the operations as discoverable tools, with the API key in the vault. Get started with Jentic One, the self-hosted execution layer

Through Jentic, search 'enrol a user in a course', load the relevant Firmwater schema, and execute with userId and courseId

Key Endpoints

80 endpoints — jentic publishes the only available openapi specification for firmwater lms api, keeping it validated and agent-ready.

METHOD

PATH

DESCRIPTION

GET

/courses.json

List courses

GET

/courses/participants.json

List course participants

POST

/learning-paths.json

Create a learning path

PUT

/learning-paths/{id}.json

Update a learning path

POST

/departments.json

Create a department

POST

/job-titles.json

Create a job title

POST

/webhooks.json

Register a webhook subscription

GET

/courses.json

List courses

GET

/courses/participants.json

List course participants

POST

/learning-paths.json

Create a learning path

PUT

/learning-paths/{id}.json

Update a learning path

POST

/departments.json

Create a department

POST

/job-titles.json

Create a job title

POST

/webhooks.json

Register a webhook subscription

Why Jentic?

What agents get from Jentic-routed access to this vendor.

Setup

Setup

Wiring the Firmwater LMS API by hand means setting its Authorization header, threading the tenant clientId into the base path, and spreading calls across 80 course, learner, and order endpoints with your own retries. Through Jentic you install once, import Firmwater from the API Directory, store the key once, and your agent calls it.

Permission scoping

Permission scoping

Firmwater keys the tenant through the clientId in the base path and otherwise carries targets in request bodies, so limit the agent to the operations it needs, such as enrolling a learner or creating a learning path, and leave the rest out of the allowed set. You choose which of the 80 operations it may call.

Credential management

Credential isolation

Your Firmwater key is stored once, encrypted, by your own Jentic One instance and injected into the Authorization header at execution time. It never enters the agent's prompt, logs, or context.

Intent-based discovery

Intent-based discovery

Agents search Jentic by intent such as 'enrol a user' or 'create a learning path', and Jentic returns the matching Firmwater operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

Related APIs

Alternatives and complements available in the Jentic catalogue.

Complementary

Fireflies.ai GraphQL API

→

Generates training material from sales-call transcripts to feed into Firmwater courses

Pair when an enablement agent turns Fireflies-extracted call insights into Firmwater learning content

Complementary

Firebase Auth REST API

→

Authenticates learners in a custom front-end that delegates training to Firmwater

Use when the user-facing training app authenticates via Firebase but uses Firmwater as the LMS backend

Alternative

Fitbit Web API

→

Different domain - health and activity tracking rather than training

Not a substitute; included only as a contrasting same-letter API in the catalogue

FAQs

Specific to using Firmwater LMS API through Jentic.

Why is there no official OpenAPI spec for Firmwater LMS API?

Firmwater publishes reference documentation but no OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call Firmwater LMS API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

What authentication does the Firmwater LMS API use?

The API uses an API key passed in the `Authorization` header on every request, scoped per client via the {clientId} path prefix. Through Jentic, the key is stored encrypted and injected at execution time.

Can I create learning paths with the Firmwater LMS API?

Yes. POST /learning-paths.json creates a learning path; PUT /learning-paths/{id}.json updates it. Each path bundles courses for role- or job-title-based assignment.

What are the rate limits for the Firmwater LMS API?

Firmwater applies per-client rate limits and returns standard 429 responses when exceeded. Specific quotas depend on your contract; Jentic surfaces 429s to the agent for back-off handling.

How do I enrol a user through Jentic?

Search Jentic for 'enrol a user in a course', load the matching Firmwater schema, and execute with the user and course identifiers. The structured response confirms enrolment and includes the participant record.

Does the Firmwater LMS API support webhooks?

Yes. POST /webhooks.json registers a webhook subscription, and the API delivers enrolment and completion events to your endpoint, removing the need to poll /courses/participants.json.

Can I limit what my agent is allowed to do with the Firmwater LMS API?

Yes. Because you run Jentic One yourself, your own rules decide which of the 80 Firmwater operations the agent may call and which credentials it may use. You can allow just the operations it needs, such as enrolling a learner or creating a learning path via POST /learning-paths.json, and leave the rest out of the allowed set. Since Firmwater keys the tenant through the clientId in the base path and carries targets in request bodies, scoping the operation list is how you control what the agent can reach.

GET STARTED

Start building with Firmwater LMS API

Explore with Jentic One
View OpenAPI Document