PMEBTPService Emploi spécialisé depuis 27 ans

Documentation

Diffuser vos offres sur PMEBTP par flux XML

Vos offres sont gérées dans votre propre outil ? Exposez-les dans un flux XML au format ci-dessous : PMEBTP le lit toutes les heures et publie, met à jour et retire vos annonces automatiquement.

En bref

Comment ça fonctionne

  1. Votre équipe technique publie le flux XML de vos offres à une adresse fixe.
  2. Vous transmettez cette adresse à votre interlocuteur PMEBTP.
  3. Nous vérifions le flux avec vous, puis le branchons : vos offres sont en ligne à la lecture suivante, et le restent synchronisées sans autre intervention.

Structure

Exemple de flux

Un élément racine <jobs>, puis un élément <job> par offre.

<?xml version="1.0" encoding="UTF-8"?>
<jobs>
  <job>
    <id>OFF-123</id>
    <reference>RH-2026-14</reference>
    <title>Chef de chantier gros œuvre</title>
    <contract>CDI</contract>
    <city>Nantes</city>
    <postal_code>44000</postal_code>
    <company_name>Bâtir Ouest</company_name>
    <company_description><![CDATA[PME de 80 salariés spécialisée en gros œuvre.]]></company_description>
    <job_description><![CDATA[Encadrer deux équipes de compagnons.
Suivre le planning et la sécurité du chantier.]]></job_description>
    <profile><![CDATA[5 ans d'expérience en conduite de chantier.]]></profile>
    <salary>38 000 à 42 000 € brut / an</salary>
    <end_date>2026-12-31</end_date>
    <application_email>recrutement@exemple.fr</application_email>
  </job>
  <job>
    …
  </job>
</jobs>

Référence

Les balises d'une offre

BaliseObligatoireContenuExemple
idouiIdentifiant de l'offre dans votre outil. Unique dans le flux, et il ne change jamais tant que l'offre existe : c'est lui qui nous dit qu'une offre est nouvelle, modifiée ou retirée.OFF-123
titleouiIntitulé du poste, 5 caractères au moins. « H/F » est ajouté s'il manque.Chef de chantier gros œuvre
contractouiType de contrat, une des valeurs de la liste ci-dessous (majuscules et accents indifférents).CDI
cityau moins unVille du poste. city ou postal_code est obligatoire, les deux sont recommandés.Nantes
postal_codeau moins unCode postal du poste.44000
job_descriptionau moins unMissions du poste. job_description ou profile est obligatoire.Encadrer deux équipes…
profileau moins unProfil recherché.5 ans d'expérience…
company_descriptionnonPrésentation de l'entreprise.PME de 80 salariés…
company_namenonNom de l'employeur affiché, s'il diffère du nom de votre compte PMEBTP.Bâtir Ouest
salarynonRémunération, en texte libre.38 000 à 42 000 € brut / an
end_datenonDernier jour de publication, au format AAAA-MM-JJ. L'offre est retirée le lendemain. Sans date, elle reste en ligne tant qu'elle est dans le flux.2026-12-31
referencenonVotre référence interne, reprise dans les candidatures qui vous sont transmises.RH-2026-14
application_emailnonAdresse qui reçoit les candidatures de cette offre (voir « Recevoir les candidatures »).recrutement@exemple.fr
application_urlnonPage de candidature dans votre outil, en https. Ignorée si application_email est renseignée.https://carrieres.exemple.fr/offres/123
latitude / longitudenonCoordonnées du poste en degrés décimaux, toujours les deux ensemble.47.2184 / -1.5536
rome_codenonCode ROME France Travail du métier (une lettre et quatre chiffres).F1202

Valeurs acceptées pour contract

  • CDI
  • CDD
  • Intérim
  • Alternance
  • Stage
  • Saisonnier
  • Auto-entrepreneur
  • CDD évolutif en CDI

Règles

Ce que nous faisons de votre flux

Le flux contient toutes vos offres en ligne

À chaque lecture, nous comparons le flux au précédent : une offre nouvelle est publiée, une offre modifiée est mise à jour, une offre qui n'y figure plus est retirée de PMEBTP. Ne publiez donc pas seulement les nouveautés.

L'identifiant d'une offre ne change pas

La balise id doit rester la même d'une lecture à l'autre. Une offre dont l'identifiant change est vue comme retirée puis remplacée par une nouvelle.

Une adresse fixe, en https

Le flux est servi à une URL stable que nous lisons toutes les heures. Une URL qui contient un jeton secret est acceptée.

UTF-8 et texte brut

Le document est encodé en UTF-8. Les textes sont en texte brut : les retours à la ligne sont conservés, le HTML n'est pas interprété. Entourez les textes longs de <![CDATA[ … ]]> pour ne pas avoir à échapper les caractères & et <.

Une offre incomplète est écartée seule

Une offre à laquelle manque une balise obligatoire, ou dont une valeur ne respecte pas son format (contrat hors liste, date mal écrite…), n'est pas publiée ; les autres offres du flux le sont. Nous vous signalons les offres écartées et leur raison.

Candidatures

Recevoir les candidatures

  • Par email — renseignez application_email : chaque candidature à l'offre est envoyée à cette adresse. Elle peut être celle que votre outil lit pour enregistrer les candidatures.
  • Sur votre page de candidature — renseignez application_url : après avoir postulé sur PMEBTP, le candidat est invité à finaliser sa candidature sur cette page.
  • Sans l'une ni l'autre — les candidatures arrivent dans votre espace recruteur PMEBTP, et vous en êtes averti aux adresses de candidature de votre compte.

Vous souhaitez recevoir les candidatures directement dans votre outil par API ? Parlez-en à votre interlocuteur PMEBTP.