Quickstart
L'API transforme vos données en fichier CSV conforme à l'import en masse du Passeport de prévention, ou vérifie un CSV que vous avez déjà. Elle ne dépose rien sur le portail officiel : vous téléversez le fichier vous-même.
1. Créez une clé de test
Dans le dashboard, Clés API → Créer → Test. Les clés pp_test_ sont gratuites et limitées à 50 lignes par requête.
2. Validez une déclaration
declaration.json :
{
"type": "adf",
"declarant": "employer",
"declarations": [
{
"id": "SST_2025_07",
"reference": "SESSION_JUILLET_2025",
"training": {
"name": "Sauveteur secouriste du travail",
"start_date": "2025-07-22",
"end_date": "2025-07-25",
"delivery_mode": "PRESENTIEL",
"certifying": false,
"formacodes": ["42829"],
"nsf_codes": ["344r"]
},
"transferable_skills": ["115650"],
"holders": [
{
"unique_id": "SST_2025_07-0001",
"nir": "1880375123456",
"birth_name": "DUPONT",
"validity_start": "2025-07-25",
"validity_end": "2027-07-24"
}
]
}
]
}
curl -X POST https://api.prevenapi.fr/v1/declarations/validate \
-H "Authorization: Bearer pp_test_xxx" \
-H "Content-Type: application/json" \
-d @declaration.json
{"valid": true, "spec_version": "2026-02", "rows_total": 1, "rows_valid": 1, "rows_invalid": 0, "errors": [], "warnings": []}
3. Générez le fichier
curl -X POST https://api.prevenapi.fr/v1/files/generate \
-H "Authorization: Bearer pp_test_xxx" \
-H "Content-Type: application/json" \
-d @declaration.json
Puis téléchargez download_url avec la même clé. Le fichier est supprimé au bout de 24 heures.
Les quatre types de fichiers
type |
declarant |
Fichier officiel |
|---|---|---|
adf |
employer |
Attestations de formation, déposées par un employeur |
adf |
training_organization |
Attestations de formation, déposées par un organisme de formation |
jdr |
employer |
Justificatifs de réussite, employeur |
jdr |
training_organization |
Justificatifs de réussite, organisme de formation |
Un fichier ne contient qu'un seul type. Les règles ne sont pas les mêmes selon le déclarant : un organisme de formation doit par exemple fournir 3 à 10 compétences ROME et dire si la formation est certifiante, un employeur non.
Ce que le format officiel ne contient pas
Ni prénom, ni date de naissance, ni raison sociale. Un titulaire est identifié par son NIR (13 caractères, sans la clé) et son nom de naissance.
Exemples complets : dossier examples/ (Python et JavaScript).