Skip to content
Back to skills

Digiforma

ASecurity

Query Digiforma training management platform via GraphQL API. Use when asked about trainees, sessions, invoices, programs, trainers, or any training data.

  • 21 stars
  • 0 votes
  • 0 copies
  • 5 views
  • Added September 7, 2026
securitygobashapi

Works with

  • api

Security analysis

A100/100

Scanned September 7, 2026

npx -y skills add modbender/skill-library-mcp --skill digiforma --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Digiforma?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Digiforma
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/modbender-digiforma/badge)](https://www.skillsdirectory.com/skills/modbender-digiforma)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: digiforma
description: Query Digiforma training management platform via GraphQL API. Use when asked about trainees, sessions, invoices, programs, trainers, or any training data.
metadata: {"clawdbot":{"emoji":"🎓"}}
---
# 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:
```bash
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)
```graphql
{ trainees(perPage: 20, page: 1) { items { id firstName lastName email phone } pagination { totalItems totalPages } } }
```

### Search trainee by name
```graphql
{ trainees(perPage: 10, page: 1, search: "NOM") { items { id firstName lastName email phone } } }
```

### List training sessions
```graphql
{ trainingSessions(perPage: 20, page: 1) { items { id name status startDate endDate program { name } } pagination { totalItems totalPages } } }
```

### List programs
```graphql
{ programs(perPage: 20, page: 1) { items { id name duration } pagination { totalItems totalPages } } }
```

### List invoices
```graphql
{ invoices(perPage: 20, page: 1) { items { id number amount status dueDate company { name } } pagination { totalItems totalPages } } }
```

### List trainers (formateurs)
```graphql
{ trainers(perPage: 20, page: 1) { items { id firstName lastName email } pagination { totalItems totalPages } } }
```

### Training session details
```graphql
{ 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

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

View all in security →

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.