Plateforme ATS taleo
5 employeurs connectés via cette plateforme — 122 offres actives. Module partagé : jobka/connectors/taleo.py ; un employeur = une sous-classe d'environ 10 lignes.
Description & mécanique
Plateforme Oracle Taleo Enterprise.
Les sections carrières Taleo exposent une API REST publique (celle que le frontal jobsearch.ftl consomme lui-même) :
- amorce : GET https://.taleo.net/careersection/
/jobsearch.ftl (cookies de session + numéro de portail « portal=NNN » dans le HTML) - liste : POST https://.taleo.net/careersection/rest/jobboard/searchjobs ?lang=fr&portal= body JSON {pageNo, sorting…} -> {requisitionList:[{jobId, contestNo, column:[...], locationsColumns:[i]}], pagingData:{totalCount, pageSize}}
- détail : la page jobdetail.ftl?job= (description HTML rendue côté serveur) — visitée avec cache BD et budget.
Le contenu des colonnes dépend de la configuration du portail : on repère la colonne des lieux via
locationsColumnset on suppose la première colonne comme titre (constaté sur tous les portails testés).
Accès
- Pagination : flux unique (une requête liste)
- Backend : GET/POST direct
requests(throttlé, User-AgentJobKaBot/1.0identifié) - Auth : aucune — API/pages publiques du site carrières.
- Throttle : 1.0 s entre requêtes.
- Budgets (env) :
JOBKA_TALEO_DETAIL_LIMIT(défaut120)
Tenants connectés
| Employeur | Actives | Salaire | GPS | Mode | Dernier sync | OK |
|---|---|---|---|---|---|---|
| Agnico Eagle Mines | 70 | 0 % | 100 % | 0 % | 2026-09-21 16:35 | ✅ |
| CIUSSS de l'Est-de-l'Île-de-Montréal | 23 | 0 % | 100 % | 0 % | 2026-09-21 16:50 | ✅ |
| Bell Textron Canada | 18 | 0 % | 100 % | 0 % | 2026-09-21 16:39 | ✅ |
| Bayshore HealthCare | 9 | 0 % | 100 % | 0 % | 2026-09-21 16:38 | ✅ |
| IAMGOLD | 2 | 0 % | 100 % | 0 % | 2026-09-21 17:12 | ✅ |
Licence / conformité
Flux public du site carrières officiel de l'employeur (API JSON de l'ATS ou HTML rendu serveur) — le même contenu que la page carrière affiche publiquement, prévu pour la diffusion des offres, sans authentification. Chaque offre conserve son URL originale et le bouton « Postuler chez l'employeur » renvoie chez l'employeur. Aucune donnée personnelle de candidat n'est collectée. User-Agent identifié JobKaBot/1.0 (+https://www.job-ka.com; contact@spboucher.ai) sur les accès directs ; requêtes throttlées et plafonnées par budgets.
Historique
Mission connecteurs du 2026-08-18 — passage de 135 à 217 employeurs directs connectés, de 9 à 17 plateformes ATS, ajout de 3 portails agrégateurs et du canal de dépôt direct :
fd4bfc8qualité lieux : rejet des villes hors Québec, bâtiments McGill → Montréal ;5a66f48+59 employeurs (sondage massif d'ATS + détection de pages carrières) ;4917d578 nouveaux ATS (Taleo, Njoyn, UltiPro, iCIMS, SuccessFactors, ADP WFN, Digital Recruiters, Workland) + 23 employeurs publics/parapublics ;f6e7571portails Guichet-Emplois, Jobillico, Espresso-Jobs — l'offre directe gagne toujours la canonique (dédup) ;744cbfcbadge « Offre directe », stats directes/portails, dépôt direct employeurs ;1604ff9reprise sur coupure WAF Guichet-Emplois (retry + acquis partiel).
Commits touchant jobka/connectors/taleo.py :
e45adfd2026-09-09 [ka6] fix connecteur bayshore: retry sur réponse searchjobs non-JSON dans la plateforme taleo — le frontal a renvoyé une page HTML statut 200 au lieu du JSON (« Expecting value: line 2 column 1 », constaté 2026-09-09 06h29 sur bayshore, reparti seul), cas couvert par aucun retry existant (ni 5xx ni anti-bot); nouveau _search_page, 3 essais backoff 10-20 s avec ré-amorçage de session, échec explicite avec extrait du corps après 3 essais; sync rejoué: 11 offres (médiane 11.0)14546e92026-09-09 [ka6] fix connecteur bell_textron: retry avec backoff sur 5xx transitoire dans la plateforme taleo — un 500 isolé de l'API searchjobs (constaté 2026-09-08 23h29 sur textron, reparti seul) faisait échouer tout le sync car raise_for_status dans base.get/post n'a aucun retry; nouveau _req couvrant amorce/liste/détail, 3 essais backoff 10-20-30 s, les 4xx restent des échecs immédiats (même correctif que workday b5b4be3); sync rejoué: 16 offres (médiane 16.0)49067dd2026-08-19 Connecteurs phase 2 — correctifs et enrichissement champ par champ. Correctifs : villes SuccessFactors à trait d'union (préfixe municipal MAMH sur le slug, bogue « St »/« Pointe »), colonne date Taleo = date LIMITE chez agnico_eagle (+ garde-fou date future). Enrichissement : SmartRecruiters experienceLevel/function/industry/language/refNumber (lignes de liste, zéro requête), BambooHR locationType→work_mode, Breezy is_remote/logo_url/streetAddress, JSON-LD logo/industry/educationRequirements/skills (portails+icims+DR), Ashby applyUrl + composantes Bonus/Equity/Commission, Lever applyUrl + blocs opening/additional + allLocations, Workable application_url + function/industry, Recruitee careers_apply_url + description FR (translations) + expérience/scolarité + heures/sem, Greenhouse language + requisition_id, Workday externalUrl→apply_url + work_mode via facette Remote Type + clé cache v2, Guichet-Emplois avantages structurés + langue de travail, njoyn apply_url en colonne ; secours cache périmé quand le budget détail est épuisé (plus de fiches vidées)4917d572026-08-18 8 nouveaux ATS (Taleo, Njoyn, UltiPro, iCIMS, SuccessFactors, ADP WFN, Digital Recruiters, Workland) + 23 employeurs publics/parapublics et grands employeurs QC