🎓 Digiforma OpenClaw Plugin & Skill | ClawHub
Looking to integrate Digiforma into your AI workflows? This free OpenClaw plugin from ClawHub helps you automate image & video generation tasks instantly, without having to write custom tools from scratch.
What this skill does
Query Digiforma training management platform via GraphQL API. Use when asked about trainees, sessions, invoices, programs, trainers, or any training data.
Install
openclaw skills install @mibbou/digiformanpx clawhub@latest install digiformaFull SKILL.md
Open original| name | description |
|---|---|
| digiforma | Query Digiforma training management platform via GraphQL API. Use when asked about trainees, sessions, invoices, programs, trainers, or any training data. |
SKILL.md content below is scrollable.
Digiforma GraphQL API
Digiforma is a French training management platform (centre de formation). Query it via GraphQL.
Authentication
All requests use Bearer token auth. The API key is stored in environment variable DIGIFORMA_API_KEY.
Endpoint
POST https://app.digiforma.com/api/v1/graphql
How to query
Use curl:
curl -s -X POST https://app.digiforma.com/api/v1/graphql \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $DIGIFORMA_API_KEY" \
-d '{"query": "YOUR_GRAPHQL_QUERY"}'
Common queries
List trainees (stagiaires)
{ trainees(perPage: 20, page: 1) { items { id firstName lastName email phone } pagination { totalItems totalPages } } }
Search trainee by name
{ trainees(perPage: 10, page: 1, search: "NOM") { items { id firstName lastName email phone } } }
List training sessions
{ trainingSessions(perPage: 20, page: 1) { items { id name status startDate endDate program { name } } pagination { totalItems totalPages } } }
List programs
{ programs(perPage: 20, page: 1) { items { id name duration } pagination { totalItems totalPages } } }
List invoices
{ invoices(perPage: 20, page: 1) { items { id number amount status dueDate company { name } } pagination { totalItems totalPages } } }
List trainers (formateurs)
{ trainers(perPage: 20, page: 1) { items { id firstName lastName email } pagination { totalItems totalPages } } }
Training session details
{ trainingSession(id: ID) { id name status startDate endDate program { name } trainees { firstName lastName email } trainer { firstName lastName } } }
Pagination
Always use perPage and page. Check pagination.totalPages to know if more pages exist.
Important notes
- All dates are ISO format
- Status values: draft, planned, ongoing, completed, cancelled
- Always paginate large results (perPage max ~50)
- For complex filters, combine search with status filters