Aller au contenu principal

Conformité

Endpoints liés au cycle Qualiopi : analyse des besoins amont, parcours adaptatifs (Critère 3) et timeline du Plan d'Action Formation pour le suivi audit.

Endpoints disponibles

  • POST/api/v1/needs-analysis
  • GET/api/v1/needs-analysis
  • POST/api/v1/adaptive-paths
  • GET/api/v1/adaptive-paths
  • PATCH/api/v1/adaptive-paths/:id
  • GET/api/v1/paf/enrollments/:id/timeline

POST/needs-analysis

Crée une analyse des besoins de formation pour une entreprise ou un apprenant. L'IA peut générer des recommandations de formations à partir des objectifs et du gap de compétences.

Créer une analyse des besoins · Python
import requests

response = requests.post(
    'https://api.qualiforma.site/api/v1/needs-analysis',
    headers={
        'Authorization': f'Bearer {access_token}',
        'X-Tenant-ID': 'votre-tenant',
        'Content-Type': 'application/json'
    },
    json={
        'companyId': 'cmp_abc123',
        'enrollmentId': 'enr_xyz789',  # optionnel
        'objectives': ['Maîtriser Excel pour reporting RH'],
        'currentLevel': 'BEGINNER',
        'targetLevel': 'ADVANCED',
        'context': 'Mise à jour annuelle compétences bureautiques',
        'fundingSource': 'OPCO'
    }
)

needs = response.json()['data']
print(f"Analyse créée : {needs['id']}")
print(f"Recommandations IA : {len(needs['recommendations'])}")

Lister les analyses du tenant :

Lister les analyses · cURL / Shell
TOKEN="eyJhbGci..."

# Lister les analyses du tenant (paginé)
curl "https://api.qualiforma.site/api/v1/needs-analysis?page=1&perPage=20&companyId=cmp_abc123" \
  -H "Authorization: Bearer $TOKEN" \
  -H 'X-Tenant-ID: votre-tenant'

POST/adaptive-paths

Crée un parcours adaptatif composé de plusieurs formations enchaînées avec un ordre, des conditions de déblocage et un assessment de prérequis facultatif. Couvre l'exigence du Critère 3 Qualiopi (adaptation au public).

Créer un parcours adaptatif · Python
import requests

# Créer un parcours adaptatif (Critère 3 Qualiopi)
response = requests.post(
    'https://api.qualiforma.site/api/v1/adaptive-paths',
    headers={
        'Authorization': f'Bearer {access_token}',
        'X-Tenant-ID': 'votre-tenant',
        'Content-Type': 'application/json'
    },
    json={
        'name': 'Parcours Excel - Public débutant',
        'description': "Adapté aux apprenants n'ayant jamais utilisé Excel",
        'targetAudience': 'BEGINNER',
        'modules': [
            {'courseId': 'crs_excel_init',  'order': 1, 'mandatory': True},
            {'courseId': 'crs_excel_form',  'order': 2, 'mandatory': True},
            {'courseId': 'crs_excel_macro', 'order': 3, 'mandatory': False}
        ],
        'prerequisiteAssessmentId': 'qst_pre_excel'
    }
)

path = response.json()['data']
print(f"Parcours créé : {path['id']} ({len(path['modules'])} modules)")

GET/paf/enrollments/:id/timeline

Retourne la timeline complète d'un Plan d'Action Formation pour une inscription : création, analyse des besoins, sessions, émargements, questionnaires, attestations. Trié par date croissante. Idéal pour reconstituer le dossier audit d'un apprenant.

Timeline PAF · Python
import requests

enrollment_id = "enr_abc123"

response = requests.get(
    f'https://api.qualiforma.site/api/v1/paf/enrollments/{enrollment_id}/timeline',
    headers={
        'Authorization': f'Bearer {access_token}',
        'X-Tenant-ID': 'votre-tenant'
    }
)

timeline = response.json()['data']
print(f"Timeline PAF — {len(timeline['events'])} événements")

for ev in timeline['events']:
    print(f"  [{ev['date']}] {ev['type']:20s} {ev['description']}")