Vos offres Jawb, sur le site de votre entreprise.
Publiez vos annonces une seule fois sur Jawb. Votre développeur peut utiliser le flux JSON pour afficher les postes ouverts sur votre page Carrières, avec un lien vers Jawb pour postuler.
Préparer votre flux
Créez une société visible dans « Mes sociétés » et associez-lui vos offres. Chaque société dispose d’un flux public en lecture seule : /api/entreprises/{identifiant}/offres.json. Utilisez son slug (la dernière partie de l’adresse de sa page) ou son UUID. Le flux ne demande aucune clé API.
Choisir la langue et parcourir les résultats
Paramètres : lang=fr, en ou ar (fr par défaut), limit de 1 à 100 (100 par défaut), page à partir de 1. Suivez le champ next jusqu’à null pour récupérer toutes les pages. title et description suivent la langue demandée, avec repli sur le français si une traduction manque. Les champs titre, titre_en et titre_ar restent disponibles pour compatibilité.
Comprendre les informations reçues
company, company_id, company_url, website et logo_url décrivent la société. jobs contient les offres avec id, slug, title, description, ville, type_contrat, mode_travail, metier, salaire, created_at, updated_at, expires_at, is_boosted et boost_until. url et apply_url mènent à l’offre Jawb. total, page, limit et next décrivent la pagination. Les valeurs absentes peuvent être nulles.
Intégrer la liste sur votre site
Votre développeur appelle le flux, affiche les titres, villes et contrats, puis relie chaque bouton « Postuler » à apply_url. La description est du texte à afficher avec textContent, jamais du HTML à injecter. L’accès depuis un autre domaine est autorisé (CORS). WordPress et les autres CMS peuvent interroger ce même flux côté serveur ; aucun plugin Jawb spécifique n’est requis.
Actualisation et annonces fermées
Actualisez votre liste toutes les cinq minutes au minimum. Le cache peut différer une modification de quelques minutes. Remplacez la liste précédente avec le résultat complet : une offre clôturée, archivée ou expirée disparaît du flux. Une société sans offre renvoie jobs: [] et total: 0. Affichez alors un message clair.
Gérer les erreurs sans perdre d’offres
200 : résultat valide. 400 : identifiant ou paramètres invalides. 404 : société introuvable ou non visible. 503 : indisponibilité temporaire. En cas de 503, conservez brièvement la dernière liste valide, signalez que sa mise à jour est différée et réessayez avec un délai croissant. Ne présentez pas une erreur réseau comme une absence de recrutement.
Les limites du flux public
Ce flux permet de lire les offres, pas de créer une annonce, modifier un recrutement ou télécharger des CV et candidatures. Aucun identifiant de connexion ni contact privé de candidat n’est transmis. La réception des candidatures et les tests se font sur Jawb. Le flux RSS général (/rss.xml, filtres ville et metier) propose les 50 annonces les plus récentes ; il ne remplace pas le flux dédié de votre entreprise.
Tester le flux de votre entreprise
Le résultat du test apparaît ici.
/api/entreprises/boostlab/offres.jsonExemple JavaScript pour votre développeur
const endpoint = 'https://jawb.ma/api/entreprises/boostlab/offres.json?lang=fr&limit=100';
let next = endpoint;
const jobs = [];
while (next) {
const response = await fetch(new URL(next, 'https://jawb.ma'));
if (!response.ok) throw new Error('HTTP ' + response.status);
const data = await response.json();
jobs.push(...data.jobs);
next = data.next;
}
const list = document.createElement('ul');
for (const job of jobs) {
const item = document.createElement('li');
const link = document.createElement('a');
link.href = job.apply_url;
link.textContent = job.title + ' — ' + job.ville;
item.append(link);
list.append(item);
}
document.querySelector('#jobs').replaceChildren(list);<div id="jobs"></div>