canonical: https://jentic.com/apis/beehelp.fr/beehelp

# Beehelp Fr Qualiobee API

Jentic publishes the only available OpenAPI specification for Qualiobee API, keeping it validated and agent-ready. Qualiobee (operated by BeeHelp) is a French SaaS platform that helps training organisations manage Qualiopi-certified vocational training: planning sessions, dispatching convocations, tracking trainer and learner attendance, recording learning objectives, and producing the conventions and audit-ready records France's Qualiopi quality framework requires. The 68-endpoint API exposes resources for Sessions, SessionDates, Convocations, Trainers, Learners, Customers, Modules, Formations, Locations, Objectives, and Conventions, scoped per organization and authenticated by an x-api-key header.

## For AI agents

Manage Qualiopi-compliant training operations including sessions, convocations, trainers, learners, and conventions through Qualiobee's 68-endpoint API.

## Scope

Does not handle payroll, payment processing, or live-class video delivery - use for Qualiopi training planning, convocations, conventions, and learner and trainer records only.

## Capabilities

- Schedule training sessions with dates, locations, modules, and assigned trainers
- Issue convocations to learners with location, date, and accommodations details
- Maintain a learner roster with contact details and per-session enrolment
- Record learning objectives and link them to formations for Qualiopi audit trails
- Manage trainers, modules, and formation catalogues used across sessions
- Generate and update training conventions between the customer and the training organisation
- Poll lightweight summary endpoints to refresh dashboards without paging full collections

## Use cases

### Qualiopi-compliant session planning

French training organisations must produce auditable records for every funded training session: who attended, what objectives were covered, which trainer led each module, and which convention governs the engagement. Qualiobee's Session, SessionDate, Module, and Trainer endpoints let an integration assemble a session, attach modules, set dates and locations, and assign a trainer, with all records keyed by the organisation UUID.

Example prompt: Create a Qualiopi training session for formation UUID f12 with two session-dates on 2026-11-04 and 2026-11-05 at location loc7, assigned to trainer t99

### Convocation dispatch to learners

Once a session is planned, the training organisation must send convocations to enrolled learners with the exact dates, location, and Qualiopi-required accommodations notice. POST `/api/{organizationUuid}/convocation` creates the convocation record and PATCH updates it as details change. The convocation feeds the printed or emailed document the learner receives.

Example prompt: Issue a convocation to learner l223 for session s556 with accommodations note step-free access required and email it once the document is generated

### Convention management with corporate customers

Public-funded training in France runs under a convention between the training organisation, the funder, and the corporate customer. Qualiobee's Convention endpoints expose the convention record so an integration can read its details, patch financial or scope changes, and produce the document attached to the audit trail. Customer and Learner records link to the convention for end-to-end traceability.

Example prompt: Look up convention UUID c4421 for customer enterprise-zeta and patch the funded amount to 2400 EUR with a note OPCO revised allocation

### AI agent integration for training operations

Operations leads at French training organisations use AI agents through Jentic to keep their Qualiopi records up to date: draft sessions from a CRM-won deal, generate convocations a week before each session, and pull learner attendance reports for OPCO funders. The agent searches Jentic for the right Qualiobee operation, loads the schema, and executes with the x-api-key held in your Jentic One instance, so the API key never appears in the agent transcript.

Example prompt: Through Jentic, find Qualiobee's session list operation and return all sessions starting in the next 14 days with their assigned trainers and learner counts

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/api/{organizationUuid}/session` | List training sessions |
| POST | `/api/{organizationUuid}/session-date` | Add a date to a session |
| POST | `/api/{organizationUuid}/convocation` | Issue a learner convocation |
| GET | `/api/{organizationUuid}/learner` | List learners |
| GET | `/api/{organizationUuid}/trainer` | List trainers |
| GET | `/api/{organizationUuid}/convention` | List conventions |
| POST | `/api/{organizationUuid}/objective` | Create a learning objective |
| POST | `/api/auth/login` | Authenticate to obtain a session token |

## Key resources

- **Session** — Training sessions with dates, locations, modules, and trainer assignments
- **SessionDate** — Individual dates within a multi-day session
- **Convocation** — Learner convocation documents with date, location, and accommodation details
- **Trainer** — Trainer roster and per-trainer assignments
- **Learner** — Learners enrolled in sessions
- **Customer** — Corporate customers funding or attending training
- **Module** — Reusable teaching modules used across formations
- **Formation** — Formation catalogue (training programmes)
- **Convention** — Conventions between training organisations and customers
- **Objective** — Learning objectives linked to formations for Qualiopi audit
- **Location** — Physical or remote training locations

## Why Jentic

- **Setup:** Wiring the Qualiobee API by hand means running the auth login, carrying the x-api-key header, and threading the organization uuid through every session, convocation, and learner call yourself. Through Jentic you install once, import the Qualiobee API from the API Directory, store the key once, and your agent calls it.
- **Permission scoping:** Qualiobee puts the organization uuid in the URL path (`/api/{organizationUuid}/session` and `/api/{organizationUuid}/learner`), so a rule can pin your agent to one organization: it reads and writes within that organization and nothing else. You choose the operations it may call, so issuing convocations or creating objectives are not included unless you add them.
- **Credential handling:** Your Qualiobee x-api-key value is stored once, encrypted, by your own Jentic One instance and injected as the header at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'issue a learner convocation' or 'list training sessions', and Jentic returns the matching Qualiobee operation with its input schema so the agent calls `/api/{organizationUuid}/convocation` or `/api/{organizationUuid}/session` without browsing the reference docs.

## Related APIs

- **TalentLMS** — General-purpose LMS for corporate training; alternative when Qualiopi-specific records are not required.
- **Schoology** — Education-focused LMS suited to schools and universities.
- **Calendly** — Scheduling layer commonly used to collect learner availability before a Qualiobee session is finalised.

## FAQ

### Why is there no official OpenAPI spec for Qualiobee API?

BeeHelp does not publish a discoverable OpenAPI specification outside the Qualiobee app. Jentic generates and maintains this spec so that AI agents and developers can call Qualiobee 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 Qualiobee API use?

Qualiobee uses an API key sent in the x-api-key header on every request. You generate the key from the Qualiobee app under Paramètres organisation, Connexions externes. Jentic stores the key in its vault and injects the header at execution time so the key never enters agent context. A POST `/api/auth/login` endpoint also exists for session-based access.

### Can I create a Qualiopi-compliant training session through the API?

Yes. Use POST `/api/{organizationUuid}/session` to create the session, POST `/api/{organizationUuid}/session-date` for each scheduled date, and PATCH operations to assign a trainer, location, and modules. Linking objectives via `/api/{organizationUuid}/objective` produces the audit trail Qualiopi auditors expect.

### How do I issue convocations through Jentic?

Search Jentic for issue a Qualiobee convocation to find POST `/api/{organizationUuid}/convocation.` Load the schema and execute with the learner UUID, session UUID, and any accommodation notes. The created record drives the convocation document the learner receives.

### Does the Qualiobee API support polling for changes?

Yes. Each major resource exposes a `/poll/many` endpoint (for example `/api/{organizationUuid}/session-date/poll/many`) that returns a lightweight delta payload. This lets a sync job refresh a downstream dashboard without paging full collections.

### Is the Qualiobee API multi-tenant per training organisation?

Yes. Every business resource path is scoped under `/api/{organizationUuid}/...` so a single API key can address multiple organisations the user has access to. Pass the correct organizationUuid for the tenant you want to operate against.

### What are the rate limits for the Qualiobee API?

Qualiobee does not publish explicit rate limits in the spec. If you receive HTTP 429 responses, back off and retry with exponential delay. Contact BeeHelp support if you need increased headroom for a sync job that polls many resources frequently.

### Can I limit what my agent is allowed to do with the Qualiobee API?

Yes. Because you run Jentic One yourself, your own rules decide which Qualiobee operations and credentials the agent may use. Qualiobee carries the organization UUID in the path (for example `/api/{organizationUuid}/session` and `/api/{organizationUuid}/learner`), so a rule can pin the agent to a single organization and let it read and write only within that tenant. You also choose the specific operations it may call, so write actions like issuing convocations at `/api/{organizationUuid}/convocation` or creating objectives at `/api/{organizationUuid}/objective` are excluded unless you add them.
