Guides, référence REST API et intégrations ATS pour tirer le meilleur de Culture&Skills.
L’API Culture&Skills est une API REST qui renvoie du JSON. Toutes les requêtes passent par HTTPS et sont authentifiées par clé API. Les données sont cloisonnées par entreprise.
Générez une clé API dans Paramètres → Intégrations. Transmettez-la dans l’en-tête Authorization de chaque requête. Ne partagez jamais une clé cs_live_… publiquement.
Base URL (production)
https://ixqyvpfzmqszngqzkfii.supabase.co/functions/v1/api
# En-tête d'authentification
Authorization: Bearer cs_live_xxxxxxxxxxxxxxxx
Content-Type: application/json
# Exemple
curl https://ixqyvpfzmqszngqzkfii.supabase.co/functions/v1/api/candidates \
-H "Authorization: Bearer cs_live_xxxxxxxxxxxxxxxx"/v1/candidatesLister les candidats (filtres : status, search, page).
/v1/candidatesCréer un candidat.
/v1/candidates/{id}Récupérer un candidat.
/v1/candidates/{id}Mettre à jour un candidat (statut, notes…).
/v1/candidates/{id}Supprimer un candidat et ses sessions.
/v1/testsLister les tests de l’entreprise.
/v1/testsCréer un test avec ses questions.
/v1/tests/{id}Récupérer un test et ses questions.
/v1/sessionsInviter un candidat à passer un test (génère un lien sécurisé).
/v1/sessionsLister les sessions avec scores et statuts.
/v1/sessions/{id}Détail d’une session (réponses, score, résultat).
/v1/reports/sessionsExport des sessions (status, score, dates).
/v1/cv-analysesAnalyser un CV (score sur 100, soft/hard skills).
/v1/integrationsLister les intégrations connectées.
/v1/integrations/{provider}/connectConnecter un ATS (provider : workday, lever, greenhouse, linkedin_recruiter, recruitbox, talentsoft).
/v1/integrations/{provider}/syncDéclencher une synchronisation candidats/offres.
Requête
curl -X POST https://api.cultureskills.io/v1/candidates \
-H "Authorization: Bearer cs_live_xxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"full_name": "Jean Dupont",
"email": "jean.dupont@example.com",
"position_applied": "Développeur Full Stack"
}'Réponse 201
{
"id": "c_3f8a…",
"full_name": "Jean Dupont",
"email": "jean.dupont@example.com",
"position_applied": "Développeur Full Stack",
"status": "pending",
"created_at": "2026-06-16T10:00:00Z"
}curl -X POST https://api.cultureskills.io/v1/sessions \
-H "Authorization: Bearer cs_live_xxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{ "candidate_id": "c_3f8a…", "test_id": "t_91b2…" }'
# → renvoie l'URL d'invitation et le statut "invited"401,403, 404,422, 429).Recevez les événements en temps réel sur votre endpoint. Chaque requête est signée (en-tête X-CS-Signature, HMAC-SHA256) — vérifiez la signature avant de traiter l’événement.
candidate.createdUn candidat a été ajouté.
candidate.invitedUne invitation à un test a été envoyée.
session.startedLe candidat a démarré une évaluation.
session.completedUne évaluation est terminée (score disponible).
test.createdUn nouveau test a été publié.
Exemple de payload
POST https://votre-domaine.com/webhooks/cultureskills
X-CS-Signature: t=1718530800,v1=5257a8…
{
"event": "session.completed",
"data": {
"session_id": "s_77c1…",
"candidate_id": "c_3f8a…",
"test_id": "t_91b2…",
"score": 82,
"passed": true,
"completed_at": "2026-06-16T11:30:00Z"
}
}Connectez Culture&Skills à votre ATS depuis Paramètres → Intégrations, ou via l’API. Les fournisseurs pris en charge :
Workday
workdayLever
leverGreenhouse
greenhouseLinkedIn Recruiter
linkedin_recruiterRecruitBox
recruitboxTalentsoft
talentsoftConnecter un ATS via l’API
curl -X POST https://api.cultureskills.io/v1/integrations/greenhouse/connect \
-H "Authorization: Bearer cs_live_xxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{ "api_key": "harvest_xxx" }'
# Puis déclencher une synchronisation :
curl -X POST https://api.cultureskills.io/v1/integrations/greenhouse/sync \
-H "Authorization: Bearer cs_live_xxxxxxxxxxxxxxxx"