Documentation for FCMS generic JSON format #
The purpose of this document is to cover the generic json format for job postings within the FCMS ecosystem.
Full exemple #
Here is an expected JSON in FCMS format.
The exemple below list all available fields for describing a job posting. Most of them are optional, but we encourage you to complete them as much as you can.
[
{
"title": "Aide-Soignant à Domicile en CDI H/F",
"partnerID": "399f923225c901",
"description": "Description de l'offre",
"profileDescription": "Description du profil attendu",
"baseSalary": {
"period": "P1M",
"currency": "EUR",
"maxValue": 3000,
"minValue": 2500.50,
"comment": "Salaire minimum de 2500.50 euros",
"hidden": false
},
"hiringOrganization": {
"siret": "52099004500053",
"identifier": "150321626112783351",
"description": "société de recrutement ODELYS",
"legalName": "ODELYS"
},
"employmentType": {
"identifier": "2",
"label": "CDD"
},
"employmentTime": "parttime",
"industries": [
{
"identifier": "1000",
"label": "Informatique / Télécom / Internet"
}
],
"occupationalCategories": [
{
"identifier": "K1304",
"label": "Services domestiques"
}
],
"educationRequirements": [
{
"identifier": "3",
"label": "CAP / BEP ou équivalent"
}
],
"experienceRequirements": [
{
"identifier": "2",
"label": "1 à 2 ans d'expérience"
}
],
"profileStatus": "non-executive",
"jobLocations": [
{
"locality": "Charenton-le-Pont",
"postalCode": "94220",
"streetAddress": "52 Rue de Paris",
"coordinates": {
"latitude": 48.793144,
"longitude": 2.474034
},
"subRegion": {
"name": "Val-de-Marne",
"code": "94",
"isoCode": "FR-94"
},
"region": {
"name": "Île-de-France",
"code": "IDF",
"isoCode": "FR-IDF"
},
"country": {
"identifier": "France",
"code": "FR"
}
}
],
"application": {
"reference": "399f923225c901",
"url": "https://mycompany.com/to-job-posting.html",
"email": "john.ford@gmail.com",
"telephone": "+33612345678",
"type": "redirect",
"info": "extra info for application purposes",
"person": {
"name": "John Ford",
"telephone": "+33612345678",
"faxNumber": "+33612345677",
"email": "john.ford@gmail.co"
}
},
"remote": {
"remoteDays": 4,
"temporary": false
},
"createdAt": "02 Nov 22 08:20 UTC",
"updatedAt": "02 Nov 22 08:35 UTC",
"validThrough": "2022-10-29T19:00:00+02:00"
}
]
Mandatory fields #
partnerID
title
- one of {
description
,profiledescription
} jobLocations.PostalCode
jobLocations.Country.Code
occupationalcategories.Label
(*)- one of {
hiringOrganization.legalName
,hiringOrganization.identifier
} employmentType.label
application.url
(*) Occupational categories can be automatically filled based on job posting title. Please contact your sale representative to enable this feature. If enabled, it’s not required to fill this field.
Fields #
title #
type: string
Job title. Number of characters should be between 2 and 76.
partnerID #
type: string
Job posting unique identifier from customer side. Maximum length is 150 characters.
description #
type: string
Job description. The HTML tags are stripped out except ones authorized by the publisher.
Number of characters should be between 25 and 4000.
profileDescription #
type: string
Job profile description. The HTML tags are stripped out except ones authorized by the publisher.
Number of characters should be between 25 and 4000.
profileStatus #
type: string
Job profile status. Accepted values:
- non-executive
- executive
experienceRequirements #
type: []classification
Job experience requirements. It’s a list of classification items
FCMS Nomenclature exemple:
code | label |
---|---|
1 | Premier emploi |
2 | 1 à 2 ans d’expérience |
3 | 3 à 5 ans d’expérience |
4 | 6 à 10 ans d’expérience |
5 | Plus de 10 ans d’expérience |
educationRequirements #
type: []classification
Job education requirements. It’s a list of classification items
FCMS nomenclature exemple:
code | label |
---|---|
1 | Non qualifié |
2 | Brevet des collèges ou équivalent |
3 | CAP / BEP ou équivalent |
4 | Baccalauréat |
5 | Bac +2 ou équivalent |
6 | Bac +3 / Bac +4 ou équivalent |
7 | Bac +5 ou équivalent |
8 | Bac +8 ou équivalent |
jobLocations #
type: []postalAddress
Job location. It’s a list of postal addresses.
This is basically the location(s) where job postings take place.
occupationalCategories #
type: []classification
Job occupational categories. It’s a list of classification items.
baseSalary #
type: object
Job salary.
Field | Description | type |
---|---|---|
period | A duration as defined in ISO 8601 standard | string |
currency | The currency code as listed in ISO 4217 standard | string |
maxValue | Salary maximum amount value | float64 |
minValue | Salary minimum amount value | float64 |
comment | An additional comment about the salary | string |
hidden | Display or not the salary on publisher site | boolean |
For a fixed salary, fill the same amount for maxValue
and minValue
.
You can hide the job salary by setting hidden
to true
.
employmentDuration #
type: string
Job employment duration. It represents the job total duration. Only duration a value from ISO_8601 standard is accepted.
employmentType #
type: classification
Job employment type. It’s a classification item.
employmentTime #
type: string
Job employment time. Accepted values :
- parttime
- fulltime
hiringOrganization #
type: object
Job hiring organization.
Field | Description | type |
---|---|---|
siret | The company siret | string |
identifier | The FCMS company identifier (aka bizio id) | string |
legalName | The company legal name | string |
description | An additional description | string |
If you don’t know the hiring organization identifier
or siret
, you can fill the legalName
instead.
industries #
type: []classification
Job industries. It’s a collection of classification items.
application #
type: object
Job application. It’s basically the “how to apply” field
Field | Description | type |
---|---|---|
person | The contact name | person |
The contact email | string | |
telephone | The contact telephone | string |
url | The job posting url where the candidate can apply | string |
reference | The job reference, most of the time similar to PartnerId | string |
info | Additional application info | string |
person #
type: object
Recruitment person information.
Field | Description | type |
---|---|---|
name | Full name | string |
telephone | Telephone number | string |
faxNumber | Fax number | string |
string |
createdAt #
type: time
Job first publication date. Accepts only a time value
updatedAt #
type: time
Job last update date. Accepts only a time value
validThrough #
type: time
Job validity date. Accepts only a time value
remote #
type: object
Job remote.
Field | Description | type |
---|---|---|
remoteDays | Number of days in remote | float64 |
temporary | Is remote temporary ? | boolean |
classification #
type: object
A classification item is based on a nomenclature term to help classifying a job offer.
The chosen nomenclature may be the FCMS nomenclature or the one you have provided to us.
A classification item is listing two fields :
Field | Description | type |
---|---|---|
identifier | The nomenclature term code or identifier | string |
label | The nomenclature term label | string |
postal address #
type: object
A postal address list the field bellow:
Field | Description | type |
---|---|---|
country.identifier | The country name | string |
country.code | The country iso code. Based on ISO 3166-1 alpha-2 | string |
locality | The city name | string |
region.name | The region name | string |
region.code | The region code | string |
region.isoCode | The region iso code based on ISO_3166-2 | string |
subRegion.name | The SubRegion name | string |
subRegion.code | The SubRegion code | string |
subRegion.isoCode | The SubRegion iso code based on ISO_3166-2 | string |
postalCode | The location postal code | string |
streetAddress | The location street address | string |
coordinates.latitude | The GPS latitude number | float64 |
coordinates.longitude | The GPS longitude number | float64 |
hidden | Whether the postal address shall be displayed on publisher site | boolean |
time #
type: string
A time value accepts the formats bellow:
Format | Exemple value |
---|---|
ANSIC | Mon Jan _2 15:04:05 2006 |
UnixDate | Mon Jan _2 15:04:05 MST 2006 |
RubyDate | Mon Jan 02 15:04:05 -0700 2006 |
RFC822 | 02 Jan 06 15:04 MST |
RFC822Z | 02 Jan 06 15:04 -0700 |
RFC850 | Monday, 02-Jan-06 15:04:05 MST |
RFC1123 | Mon, 02 Jan 2006 15:04:05 MST |
RFC1123Z | Mon, 02 Jan 2006 15:04:05 -0700 |
RFC3339 | 2006-01-02T15:04:05+07:00 |
RFC3339Nano | 2006-01-02T15:04:05.999999999+07:00 |