Chargement en cours ...
Référence des champs

Cette section présente une liste exhaustive et détaillée des champs autorisés dans les différents endpoints de l'API EasyJobs. Chaque champ est décrit avec son nom exact, son type, le format attendu, son caractère obligatoire, sa longueur, sa description, ses contraintes, ainsi que des exemples précis.

Structure par champ :
  • Nom : Le nom exact utilisé dans les requêtes et les réponses de l’API.
  • Type : Le type de données (ex. : string, integer, boolean, date, etc.).
  • Format attendu (si applicable) : Les règles spécifiques que le contenu doit respecter (ex. : chaîne alphanumérique, date et heure, etc.).
  • Pattern : L’expression régulière utilisée pour valider le format exact du champ. Fournit une définition technique précise des valeurs acceptées.
  • Longueur (si applicable) : Les limites minimales et maximales du contenu (nombre de caractères).
  • Obligatoire : Indique si le champ est requis ou non dans les requêtes (Oui / Non / Conditionnel).
  • Description : Une explication concise de l’objectif ou de la signification du champ.
  • Contraintes : Informations complémentaires utiles ou règles particulières.
  • Exemple : Une ou plusieurs valeurs d’exemple valides pour illustrer le format attendu.
id
  • Type : string
  • Format attendu : Chaîne alphanumérique sans espaces ni symboles.
  • Pattern : ^[a-zA-Z0-9]+$
  • Longueur : 4 à 128 caractères.
  • Obligatoire : Oui
  • Description : Identifiant unique de l’offre.
  • Contraintes :
  • - Requis.
  • - Doit être unique pour chaque offre.
  • - Uniquement lettres (a–z, A–Z) et chiffres (0–9) sans espaces, symboles ni accents.

                  Exemple :

                  {
                    "id": "4M0123456N43N26"
                  }
                
date
  • Type : string
  • Format attendu : Date et heure.
  • Pattern : ^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$
  • Obligatoire : Oui
  • Description : Date de création de l’offre.
  • Contraintes :
  • - Requis.
  • - Format strict : YYYY-MM-DD HH:MM:SS.
  • - Ne peut pas être future.

                  Exemple :

                  {
                    "date": "2025-04-22 10:09:27"
                  }
                
valid_through
  • Type : string
  • Format attendu : Date et heure.
  • Pattern : ^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$
  • Obligatoire : Non
  • Description : Date d’expiration de l’offre, permet de préciser une date limite de validité.
  • Contraintes :
  • - Format strict : YYYY-MM-DD HH:MM:SS.
  • - Si présent, doit être postérieur à date.

                  Exemple :

                  {
                    "valid_through": "2025-05-22 10:09:27"
                  }
                
title
  • Type : string
  • Format attendu : Chaîne composée de lettres (y compris accents), chiffres et espaces.
  • Pattern : ^[0-9A-Za-zÁÉÍÓÚÜÑáéíóúüñÇŒæœßàâäæçèéêëìîïðñòôöùûüýÿÆŒ.\/+()&,\': -]+$ (u)
  • Longueur : 12 à 160 caractères.
  • Obligatoire : Oui
  • Description : Titre de l’offre d’emploi.
  • Contraintes :
  • - Requis.
  • - Ne doit pas être vide ou composé uniquement d'espaces.
  • - Autorise lettres (avec accents), chiffres, espaces et les caractères : . / + ( ) & , ' : -.

                  Exemple :

                  {
                    "title": "Développeur Web Fullstack (H/F)"
                  }
                
contract_type
  • Type : string
  • Format attendu : Chaîne composée de lettres (y compris accents).
  • Pattern : ^[a-zA-ZÁÉÍÓÚÜÑáéíóúüñÇŒæœßàâäæçèéêëìîïðñòôöùûüýÿÆŒ' \-\/]+$ (u)
  • Longueur : 3 à 64 caractères.
  • Obligatoire : Oui
  • Description : Type de contrat (CDI, CDD, Stage, Alternance, Intérim, Freelance, etc.).
  • Contraintes :
  • - Requis.
  • - Autorise lettres (avec accents), apostrophes ('/’), espaces, tirets et slash.

                  Exemple :

                  {
                    "contract_type": "CDI"
                  }
                
work_hours
  • Type : string
  • Format attendu : Chaîne composée de lettres (toutes langues).
  • Pattern : ^[\p{L}\d\/\-\s.]+$ (u)
  • Longueur : Maximum 64 caractères.
  • Obligatoire : Non
  • Description : Temps de travail.
  • Contraintes :
  • - Autorise lettres (avec accents), chiffres, espaces, tirets, slashs et points.

                  Exemple :

                  {
                    "work_hours": "35h/semaine"
                  }
                
employment_type
  • Type : string
  • Format attendu : Valeur prédéfinie.
  • Pattern : Pas de pattern (liste prédéfinie).
  • Obligatoire : Non
  • Description : Type d’emploi.
  • Contraintes :
  • - Doit être l’une des valeurs : Temps-plein, Temps-partiel, Temporaire ou Freelance.

                  Exemple :

                  {
                    "employment_type": "Temps-plein"
                  }
                
description
  • Type : string
  • Format attendu : Chaîne libre incluant lettres (y compris accents), chiffres, ponctuation de base et espaces. HTML autorisé.
  • Pattern : ^[0-9A-Za-zÁÉÍÓÚÜÑáéíóúüñÇŒæœßàâäæçèéêëìîïðñòôöùûüýÿÆŒ.\/+()&,\'!? :<>*+@\[\]€\$#\|=°"%]+$ (u)
  • Longueur : 48 à 1024 caractères.
  • Obligatoire : Non
  • Description : Description de l’entreprise.
  • Contraintes :
  • - Caractères autorisés : . / + ( ) & , ' ` ! ? : < > * + @ [ ] € $ # | = ° " %.
  • - Peut contenir des balises HTML simples (ex. : <p>, <ul>, <li>, <br>, etc.).
  • - Ne doit pas contenir de scripts.

                  Exemple :

                  {
                    "description": "<p>Nous recherchons un développeur expérimenté pour rejoindre notre équipe agile...</p>"
                  }
                
position
  • Type : string
  • Format attendu : Chaîne libre incluant lettres (y compris accents), chiffres, ponctuation de base et espaces. HTML autorisé.
  • Pattern : ^[0-9A-Za-zÁÉÍÓÚÜÑáéíóúüñÇŒæœßàâäæçèéêëìîïðñòôöùûüýÿÆŒ.\/+()&,\'!? :<>*+@\[\]€\$#\|=°"%]+$ (u)
  • Longueur : 64 à 12288 caractères.
  • Obligatoire : Oui
  • Description : Description du poste.
  • - Requis.
  • - Caractères autorisés : . / + ( ) & , ' ` ! ? : < > * + @ [ ] € $ # | = ° " %.
  • - Peut contenir des balises HTML simples (ex. : <p>, <ul>, <li>, <br>, etc.).
  • - Ne doit pas contenir de scripts.

                  Exemple :

                  {
                    "position": "Nous recherchons un(e) développeur(se) web fullstack passionné(e) pour <a href=\"https://www.monsite.fr\">rejoindre</a> notre<br> équipe dynamique. Vous participerez à la conception et au développement d'applications web innovantes pour des clients internationaux."
                  }
                
profile
  • Type : string
  • Format attendu : Chaîne libre incluant lettres (y compris accents), chiffres, ponctuation de base et espaces. HTML autorisé.
  • Pattern : ^[0-9A-Za-zÁÉÍÓÚÜÑáéíóúüñÇŒæœßàâäæçèéêëìîïðñòôöùûüýÿÆŒ.\/+()&,\'!? :<>*+@\[\]€\$#\|=°"%]+$ (u)
  • Longueur : 64 à 12288 caractères.
  • Obligatoire : Non
  • Description : Profil recherché.
  • Contraintes :
  • - Caractères autorisés : . / + ( ) & , ' ` ! ? : < > * + @ [ ] € $ # | = ° " %.
  • - Peut contenir des balises HTML simples (ex. : <p>, <ul>, <li>, <br>, etc.).
  • - Ne doit pas contenir de scripts.

                  Exemple :

                  {
                    "profile": "Vous avez une <a href=\"https://www.monsite.fr\">expérience</a> de 3 ans minimum<br> en PHP, JavaScript et frameworks modernes. Vous aimez travailler en équipe et relever de nouveaux défis."
                  }
                
location
  • Type : string
  • Format attendu : Chaîne composée de lettres (toutes langues).
  • Pattern : ^[\p{L}0-9'’ \-\/]+$ (u)
  • Longueur : 4 à 64 caractères.
  • Obligatoire : Oui
  • Description : Lieu du poste ou localité principale.
  • Contraintes :
  • - Requis.
  • - Autorise lettres (avec accents), chiffres, apostrophes ('/’), espaces, tirets et slash.

                  Exemple :

                  {
                    "location": "Strasbourg"
                  }
                
postcode
  • Type : string
  • Format attendu : Code postal.
  • Pattern : ^\d{5}$
  • Longueur : 5 caractères.
  • Obligatoire : Non
  • Description : Code postal du poste.
  • Format : 5 chiffres.
  • Contraintes :
  • - Exactement 5 chiffres (0–9).

                  Exemple :

                  {
                    "postcode": "67000"
                  }
                
region
  • Type : string
  • Format attendu : Chaîne de lettres et accents (toutes langues).
  • Pattern : ^[\p{L}\p{M}'’ \-]+$ (u)
  • Longueur : 5 à 32 caractères.
  • Obligatoire : Non
  • Description : Nom de région, département ou zone administrative.
  • Contraintes :
  • - apostrophes ('/’), espaces et tirets autorisés.

                  Exemple :

                  {
                    "region": "Grand-Est"
                  }
                
country
  • Type : string
  • Format attendu : Chaîne de lettres (y compris accents), apostrophes ('/’) et tirets uniquement.
  • Pattern : ^[a-zA-ZÁÉÍÓÚÜÑáéíóúüñÇŒæœßàâäæçèéêëìîïðñòôöùûüýÿÆŒ'\-]+$ (u)
  • Longueur : 4 à 64 caractères.
  • Obligatoire : Oui
  • Description : Pays.
  • Contraintes :
  • - Aucun chiffre ni autre symbole.
  • - Requis.

                  Exemple :

                  {
                    "country": "France"
                  }
                
subsidiary
  • Type : string
  • Format attendu : Chaîne alphanumérique (lettres, chiffres) avec accents.
  • Pattern : ^[0-9A-Za-zÁÉÍÓÚÜÑáéíóúüñÇŒæœßàâäæçèéêëìîïðñòôöùûüýÿÆŒ._\/+()&,\': -]+$ (u)
  • Longueur : 2 à 64 caractères.
  • Obligatoire : Non
  • Description : Nom de l'entreprise.
  • Contraintes :
  • - Caractères autorisés : . _ / + () & , : ' - et espaces.

                  Exemple :

                  {
                    "subsidiary": "Agence Web"
                  }
                
url
  • Type : string
  • Format attendu : URL valide.
  • Pattern : ^https:\/\/(([a-zA-Z0-9\-]+\.)+[a-zA-Z]{2,63})(\/[^\s]*)?$ (i)
  • Obligatoire : Non
  • Description : URL de l’offre sur le site de l’entreprise.
  • Contraintes :
  • - Doit commencer par https://.
  • - Domaine valide (au moins un point, extension 2–63 lettres).
  • - Redirige vers la page de candidature ou formulaire.

                  Exemple :

                  {
                    "url": "https://www.exemple.com/offre"
                  }
                
salary
  • Type : string
  • Format attendu : Montant (entier ou décimal avec 1 à 2 décimales), suivi de € ou $, d’un slash et d’une période en lettres (ex. : /heure, /jour, /mois, /an).
  • Pattern : ^[0-9]+(\.[0-9]{1,2})?[€$]\/[a-zA-Z-]+$ (u)
  • Obligatoire : Conditionnel. L’un des modes de spécification du salaire doit être utilisé : soit salary, soit le couple salary_min / salary_max.
  • Description : Salaire global.
  • Contraintes :
  • - Si utilisé, ne pas remplir salary_min ni salary_max.
  • - Format strict : "[nombre][€]/[période]" (ex. 30000€/an, 11,50€/heure).
  • - Éviter les textes libres (ex. "selon profil").

                  Exemple :

                  {
                    "salary": "3400€/mois"
                  }
                
salary_min
  • Type : string
  • Format attendu : Même format que salary.
  • Pattern : ^[0-9]+(\.[0-9]{1,2})?[€$]\/[a-zA-Z-]+$ (u)
  • Obligatoire : Conditionnel. Requis si salary n’est pas spécifié.
  • Description : Permet de préciser une fourchette salariale cohérente (Salaire minimum - Salaire maximum).
  • Contraintes :
  • - Requis si salary n’est pas renseigné (et dans ce cas salary_max doit l’être).
  • - Doit être strictement inférieur à salary_max.
  • - Ne peut pas être combiné avec salary.

                  Exemple :

                  {
                    "salary_min": "42000€/an",
                    "salary_max": "44300€/an"
                  }
                
salary_max
  • Type : string
  • Format attendu : Même format que salary.
  • Pattern : ^[0-9]+(\.[0-9]{1,2})?[€$]\/[a-zA-Z-]+$ (u)
  • Obligatoire : Conditionnel. Requis si salary n’est pas spécifié.
  • Description : Permet de préciser une fourchette salariale cohérente (Salaire minimum - Salaire maximum).
  • Contraintes :
  • - Requis si salary n’est pas renseigné (et dans ce cas salary_min doit l’être).
  • - Doit être strictement supérieur à salary_min.
  • - Ne peut pas être combiné avec salary.

                  Exemple :

                  {
                    "salary_min": "42000€/an",
                    "salary_max": "44300€/an"
                  }
                
rome
  • Type : string
  • Format attendu : Lettre (majuscule ou minuscule) et chiffres.
  • Pattern : ^[A-Za-z][0-9]+$
  • Obligatoire : Non
  • Description : Code ROME.
  • Contraintes :
  • - Doit commencer par une lettre, suivi d’un ou plusieurs chiffres.

                  Exemple :

                  {
                    "rome": "M1805"
                  }
                
available
  • Type : integer
  • Format attendu : Nombre entier.
  • Pattern : ^\d{1,3}$
  • Longueur : 1 à 3 caractères.
  • Obligatoire : Non
  • Description : Nombre de postes à pourvoir.
  • Contraintes :
  • - Entier de 1 à 3 chiffres (0–999).

                  Exemple :

                  {
                    "available": 1
                  }
                
experience
  • Type : string
  • Format attendu : Valeur prédéfinie.
  • Pattern : Pas de pattern (liste prédéfinie).
  • Obligatoire : Non
  • Description : Niveau d’expérience.
  • Contraintes :
  • - Doit valoir exactement l’une des chaînes : Débutant accepté, Experience exigée ou Expérience souhaitée.

                  Exemple :

                  {
                    "experience": "Expérience souhaitée"
                  }
                
posted_via
  • Type : string
  • Format attendu : Chaîne alphanumérique (lettres, chiffres) avec accents.
  • Pattern : ^[0-9A-Za-zÁÉÍÓÚÜÑáéíóúüñÇŒæœßàâäæçèéêëìîïðñòôöùûüýÿÆŒ._\/+()&,\': -]+$ (u)
  • Longueur : 2 à 64 caractères.
  • Obligatoire : Non
  • Description : Source ou plateforme de publication.
  • Contraintes :
  • - Caractères autorisés : . _ / + () & , : ' - et espaces.

                  Exemple :

                  {
                    "posted_via": "MyCompany"
                  }
                
Tableau des champs

Chaque champ pris en charge par l’API EasyJobs est soumis à une série de contraintes destinées à garantir la validité, la cohérence et la sécurité des données. Le tableau ci-dessous fournit un récapitulatif complet de ces contraintes pour tous les champs acceptés lors de la création ou de la modification d’une offre d’emploi via les endpoints de type création (POST) ou modification (PUT).

Remarque : dans les requêtes de type PUT, seuls les champs id et date sont obligatoires. Tous les autres champs peuvent être modifiés, ignorés ou vidés, à condition de respecter les mêmes contraintes de type, de format et de longueur que lors de la création. Pour plus de détails, consultez la section Cas des requêtes PUT.

Champ Type Obligatoire Description
id string Oui (POST et PUT) Identifiant unique de l’offre. Alphanumérique, entre 4 et 128 caractères.
date string Oui (POST et PUT) Date de création de l’offre au format YYYY-MM-DD HH:mm:ss.
valid_through string Non Date d’expiration de l’offre au format YYYY-MM-DD HH:mm:ss. Doit être postérieure à la date de création.
title string Oui (POST uniquement) Titre de l’offre d’emploi. Entre 12 et 160 caractères.
contract_type string Oui (POST uniquement) Type de contrat (ex : CDI, CDD, Stage, etc). Entre 3 et 64 caractères.
work_hours string Non Temps de travail (ex : 35h/semaine, 35 heures, etc). Lettres, chiffres, espaces, / et -.
employment_type string Non Type d’emploi. Une des valeurs : Temps-plein, Temps-partiel, Temporaire, Freelance.
description string Non Description de l’entreprise. Entre 48 et 1024 caractères.
position string Oui (POST uniquement) Description du poste. Entre 64 et 12288 caractères.
profile string Non Profil recherché. Entre 64 et 12288 caractères.
location string Oui (POST uniquement) Lieu du poste. Entre 4 et 64 caractères.
postcode string Non Code postal (5 chiffres).
region string Non Région. Entre 5 et 32 caractères. Lettres, espaces et tiret uniquement.
country string Oui (POST uniquement) Pays. Entre 4 et 64 caractères. Lettres et tiret uniquement.
subsidiary string Non Nom de l'entreprise. Entre 2 et 64 caractères.
url string Non URL HTTPS de l’offre sur le site de l’entreprise. Doit commencer par https://.
salary string Conditionnel Salaire global. Format : 1600€/mois, 2000$/an, etc. Si utilisé, ne pas remplir salary_min ni salary_max.
salary_min string Conditionnel Salaire minimum. Format : 1500€/mois, 2000$/an, etc. Obligatoire si salary n’est pas renseigné.
salary_max string Conditionnel Salaire maximum. Format : 2500€/mois, 3000$/an, etc. Obligatoire si salary n’est pas renseigné.
rome string Non Code ROME. Doit commencer par une lettre suivie de chiffres.
available integer Non Nombre de postes à pourvoir (entier, jusqu’à 3 chiffres).
experience string Non Niveau d’expérience. Une des valeurs : Débutant accepté, Expérience exigée, Expérience souhaitée.
company_logo_url string Non URL HTTPS du logo de l’entreprise. Doit commencer par https://.
posted_via string Non Source ou plateforme de publication. Entre 2 et 64 caractères.
Cas des requêtes PUT (édition d’une offre)

Les endpoints de type PUT permettent de modifier une ou plusieurs données d’une offre existante. Contrairement aux requêtes POST, ils ne nécessitent pas la présence de tous les champs.

Seuls les champs id (identifiant de l’offre) et date (date de modification) sont obligatoires. Tous les autres champs peuvent être omis s’ils ne sont pas modifiés.

Lors d’une requête PUT, si un champ obligatoire est transmis avec une valeur vide (ex. "title": ""), il sera ignoré et la valeur précédemment enregistrée sera conservée. En revanche, si un champ optionnel est envoyé vide, cela est interprété comme une volonté explicite de supprimer son contenu. La valeur sera donc effacée dans l’enregistrement mis à jour.

Toutefois, les contraintes de validation (longueur, caractères autorisés, format strict, etc.) restent exactement les mêmes pour chaque champ, qu’il soit utilisé en création ou en modification.

Copyright EasyJobs API © 2025 - Tous droits réservés