Download OpenAPI specification:
The documentation of MatchFT API services.
| updatedAt required | string <date-time> |
required | Array of objects (Experience) |
| id required | string |
| encryptedFirstName required | string |
| encryptedLastName required | string |
| encryptedPhoneNumber required | string |
| office required | string |
| officeCode required | string |
| profile required | string |
| consentToSmsReception required | boolean |
| consentToEmailReception required | boolean |
required | Array of objects (DesiredJob) |
required | Array of objects (Training) |
required | Array of objects (LanguageLevel) |
required | Array of objects (License) |
| skills required | Array of strings |
| availabilityScore required | number |
{- "updatedAt": "2019-08-24T14:15:22Z",
- "experiences": [
- {
- "startDate": "2019-08-24T14:15:22Z",
- "endDate": "2019-08-24T14:15:22Z",
- "duration": 0,
- "jobTitle": "string",
- "description": "string",
- "companyName": "string",
- "location": "string"
}
], - "id": "string",
- "encryptedFirstName": "string",
- "encryptedLastName": "string",
- "encryptedPhoneNumber": "string",
- "office": "string",
- "officeCode": "string",
- "profile": "string",
- "consentToSmsReception": true,
- "consentToEmailReception": true,
- "desiredJobs": [
- {
- "romeId": "string",
- "romeLabel": "string",
- "romeDescriptionId": "string",
- "romeDescriptionLabel": "string",
- "minimumContractDuration": 0,
- "maximumContractDuration": 0,
- "desiredWage": 0,
- "desiredWageUnit": "string",
- "experienceDuration": 0,
- "experienceDurationUnit": "string",
- "mobilityDistance": 0,
- "mobilityDistanceUnit": "string",
- "jobTypology": "string",
- "topore": true,
- "topcreffranchise": true,
- "topcrefcreation": true,
- "topcrefreprise": true
}
], - "trainings": [
- {
- "title": "string",
- "description": "string",
- "graduationYear": 0
}
], - "languagesLevel": [
- {
- "language": "string",
- "level": "FLUENT"
}
], - "licenses": [
- {
- "type": "string",
- "label": "string"
}
], - "skills": [
- "string"
], - "availabilityScore": 0
}| createdAt required | string <date-time> |
| updatedAt required | string <date-time> |
| validationDate required | string or null <date-time> |
| id required | string |
| state required | string |
| stateLabel required | string |
| topoffrepartenaireaom required | boolean |
| screeningMode required | string |
| screeningModeLabel required | string |
| unitesuivi required | number |
| romeId required | string |
| romeLabel required | string |
| romeDescriptionId required | string |
| romeDescriptionLabel required | string |
| title required | string |
| description required | string |
| initialOpenPositions required | number |
| remainingOpenPositions required | number |
required | Array of objects or null (Language) |
required | Array of objects or null (License) |
| duration required | number or null |
| durationUnit required | string or null |
| durationUnitLabel required | string or null |
| contractType required | string |
| contractTypeLabel required | string |
| contractSummary required | string |
| requiredExperience required | number or null |
| requiredExperienceUnit required | string or null |
| requiredExperienceComment required | string or null |
| requiredExperienceSummary required | string |
| minimumWage required | number or null |
| maximumWage required | number or null |
| durationMonth required | number or null |
| wageComment required | string or null |
| wageTypeLabel required | string |
required | Array of objects or null (AdditionalPay) |
| wageSummary required | string or null |
| businessTripFrequencyLabel required | string or null |
| businessTripType required | string or null |
| workingConditionsSummary required | string or null |
| scheduleTypeLabel required | string or null |
| scheduleTypeDetail required | string or null |
| lblconditionexercice required | string |
| weeklyWorkedHours required | number |
| weeklyWorkedMinutes required | number or null |
| isPartTime required | boolean |
| scheduleSummary required | string |
required | Array of objects or null (Skill) |
required | Array of objects or null (Task) |
required | Array of objects or null (SkillFreeText) |
| softSkills required | Array of strings or null |
required | Array of objects or null (Training) |
| locationLabel required | string |
| zipCode required | string or null |
| cityZipCode required | string or null |
| cityLabel required | string or null |
| departmentCode required | string or null |
| departmentLabel required | string or null |
| regionCode required | string or null |
| regionLabel required | string or null |
| countryLabel required | string |
| topfrontalierlieutravail required | boolean |
| locationSummary required | string |
| latitude required | number or null |
| longitude required | number or null |
| siret required | string or null |
| companyDescription required | string or null |
| companyName required | string |
| subClassNAF required | string |
| subClassNAFLabel required | string |
| companySummary required | string or null |
{- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "validationDate": "2019-08-24T14:15:22Z",
- "id": "string",
- "state": "string",
- "stateLabel": "string",
- "topoffrepartenaireaom": true,
- "screeningMode": "string",
- "screeningModeLabel": "string",
- "unitesuivi": 0,
- "romeId": "string",
- "romeLabel": "string",
- "romeDescriptionId": "string",
- "romeDescriptionLabel": "string",
- "title": "string",
- "description": "string",
- "initialOpenPositions": 0,
- "remainingOpenPositions": 0,
- "languages": [
- {
- "code": "string",
- "label": "string",
- "proficiencyLevel": 0,
- "proficiencyLevelLabel": "string",
- "exigibilitelangue": "string"
}
], - "licenses": [
- {
- "type": "string",
- "label": "string"
}
], - "duration": 0,
- "durationUnit": "string",
- "durationUnitLabel": "string",
- "contractType": "string",
- "contractTypeLabel": "string",
- "contractSummary": "string",
- "requiredExperience": 0,
- "requiredExperienceUnit": "string",
- "requiredExperienceComment": "string",
- "requiredExperienceSummary": "string",
- "minimumWage": 0,
- "maximumWage": 0,
- "durationMonth": 0,
- "wageComment": "string",
- "wageTypeLabel": "string",
- "additionalPays": [
- {
- "code": "string",
- "label": "string"
}
], - "wageSummary": "string",
- "businessTripFrequencyLabel": "string",
- "businessTripType": "string",
- "workingConditionsSummary": "string",
- "scheduleTypeLabel": "string",
- "scheduleTypeDetail": "string",
- "lblconditionexercice": "string",
- "weeklyWorkedHours": 0,
- "weeklyWorkedMinutes": 0,
- "isPartTime": true,
- "scheduleSummary": "string",
- "skills": [
- {
- "code": 0,
- "label": "string",
- "exigibility": "string"
}
], - "tasks": [
- {
- "code": 0,
- "label": "string",
- "exigibility": "string"
}
], - "skillsFreeText": [
- {
- "description": "string",
- "exigibility": "string"
}
], - "softSkills": [
- "string"
], - "trainings": [
- {
- "title": "string",
- "description": "string",
- "graduationYear": 0
}
], - "locationLabel": "string",
- "zipCode": "string",
- "cityZipCode": "string",
- "cityLabel": "string",
- "departmentCode": "string",
- "departmentLabel": "string",
- "regionCode": "string",
- "regionLabel": "string",
- "countryLabel": "string",
- "topfrontalierlieutravail": true,
- "locationSummary": "string",
- "latitude": 0,
- "longitude": 0,
- "siret": "string",
- "companyDescription": "string",
- "companyName": "string",
- "subClassNAF": "string",
- "subClassNAFLabel": "string",
- "companySummary": "string"
}| offerId required | string |
required | Array of objects (MatchingJobSeeker) non-empty |
| criterionCodes required | Array of strings non-empty |
{- "jobSeekers": [
- {
- "id": "string",
- "phoneNumber": "string",
- "firstName": "string"
}
], - "criterionCodes": [
- "string"
]
}{- "failures": [
- {
- "reason": "INVALID_PHONE_NUMBER",
- "jobSeekerId": "string"
}
]
}| offerId required | string |
| profileType required | string Enum: "ALL" "REGISTERED" "POOL" "AGENCY" |
| qualificationStatus required | string Enum: "ALL" "ALL_QUALIFICATIONS" "ONGOING" "VALIDATED" "NOT_VALIDATED" "NO_ANSWER" "PARTIALLY_VALIDATED" "PREQUALIFIABLE" |
| agencyCode | string |
required | object (OfferQualificationDetailsPagination) |
{- "profileType": "ALL",
- "qualificationStatus": "ALL",
- "agencyCode": "string",
- "pagination": {
- "limit": 1,
- "offset": 0
}
}{- "jobSeekers": [
- {
- "id": "string",
- "encryptedFirstName": "string",
- "encryptedLastName": "string",
- "encryptedPhoneNumber": "string",
- "bestSearchedJob": "string",
- "matching": {
- "score": 0,
- "dimensionalScores": [
- {
- "type": "AVAILABILITY",
- "score": 0,
- "explainability": "string",
- "weight": 0
}
]
}, - "qualification": {
- "status": "ONGOING",
- "personalInformation": {
- "firstName": "string",
- "phoneNumber": "string"
}, - "createdAt": "2019-08-24T14:15:22Z",
- "endedAt": "2019-08-24T14:15:22Z",
- "messages": [
- {
- "id": "string",
- "content": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "originator": "JOB_SEEKER"
}
], - "criteria": [
- {
- "code": "string",
- "label": "string",
- "question": "string",
- "status": "PENDING",
- "updatedAt": "2019-08-24T14:15:22Z"
}
], - "previousCriteria": [
- {
- "code": "string",
- "label": "string",
- "question": "string",
- "status": "PENDING",
- "updatedAt": "2019-08-24T14:15:22Z"
}
]
}, - "isSelectable": true,
- "notSelectableReason": "string"
}
], - "totalJobSeekers": 0,
- "ready": true
}| offerId required | string |
| profileType required | string Enum: "ALL" "REGISTERED" "POOL" "AGENCY" |
| qualificationStatus required | string Enum: "ALL" "ALL_QUALIFICATIONS" "ONGOING" "VALIDATED" "NOT_VALIDATED" "NO_ANSWER" "PARTIALLY_VALIDATED" "PREQUALIFIABLE" |
| agencyCode | string |
required | object (OfferQualificationDetailsPagination) |
{- "profileType": "ALL",
- "qualificationStatus": "ALL",
- "agencyCode": "string",
- "pagination": {
- "limit": 1,
- "offset": 0
}
}{- "jobSeekerIds": [
- "string"
]
}| offerId required | string |
| profileType required | string Enum: "ALL" "REGISTERED" "POOL" "AGENCY" |
| qualificationStatus required | string Enum: "ALL" "ALL_QUALIFICATIONS" "ONGOING" "VALIDATED" "NOT_VALIDATED" "NO_ANSWER" "PARTIALLY_VALIDATED" "PREQUALIFIABLE" |
{- "profileType": "ALL",
- "qualificationStatus": "ALL"
}{- "jobSeekerCounters": [
- {
- "code": "string",
- "total": 0
}
], - "qualificationCounters": [
- {
- "code": "string",
- "total": 0
}
]
}| startDate required | string <date-time> |
| endDate required | string <date-time> |
| statuses required | Array of strings Items Enum: "VALIDATED" "PARTIALLY_VALIDATED" "NOT_VALIDATED" "NO_ANSWER" |
{- "startDate": "2019-08-24T14:15:22Z",
- "endDate": "2019-08-24T14:15:22Z",
- "statuses": [
- "VALIDATED"
]
}{- "offerIds": [
- "string"
]
}| offerId required | string |
| qualificationStatus required | string Enum: "ALL_QUALIFICATIONS" "ONGOING" "VALIDATED" "NOT_VALIDATED" "NO_ANSWER" "PARTIALLY_VALIDATED" "PREQUALIFIABLE" |
| jobSeekerIds required | Array of strings |
{- "qualificationStatus": "ALL_QUALIFICATIONS",
- "jobSeekerIds": [
- "string"
]
}{- "jobSeekers": [
- {
- "id": "string",
- "qualification": {
- "status": "ONGOING",
- "matchingSource": "SDR",
- "createdAt": "2019-08-24T14:15:22Z",
- "endedAt": "2019-08-24T14:15:22Z",
- "messages": [
- {
- "id": "string",
- "content": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "originator": "JOB_SEEKER"
}
], - "criteria": [
- {
- "code": "string",
- "label": "string",
- "question": "string",
- "status": "PENDING",
- "updatedAt": "2019-08-24T14:15:22Z"
}
], - "previousCriteria": [
- {
- "code": "string",
- "label": "string",
- "question": "string",
- "status": "PENDING",
- "updatedAt": "2019-08-24T14:15:22Z"
}
]
}, - "matchingAglae": {
- "score": 0,
- "dimensionalScores": [
- {
- "type": "AVAILABILITY",
- "score": 0,
- "explainability": "string",
- "weight": 0
}
]
}, - "isSelectable": true,
- "notSelectableReason": "string"
}
]
}Returns the qualification of a single job seeker on a single offer: its status, its dates, the
whole message history, the criteria with their current status, and whether the conversation needs
an advisor's attention along with the reasons why.
The end date is only published three hours after the conversation completed. The attention
reasons and the synthesis are null as long as the conversation has not been analysed.
| offerId required | string Identifier of the offer |
| jobSeekerId required | string Identifier of the job seeker |
{- "status": "ONGOING",
- "attentionReasons": [
- "string"
], - "offerId": "string",
- "jobSeekerId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "endedAt": "2019-08-24T14:15:22Z",
- "attentionNeeded": true,
- "critical": true,
- "messages": [
- {
- "id": "string",
- "content": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "originator": "JOB_SEEKER"
}
], - "criteria": [
- {
- "code": "string",
- "label": "string",
- "question": "string",
- "status": "PENDING",
- "updatedAt": "2019-08-24T14:15:22Z"
}
], - "synthesis": "string"
}| offerId required | string |
| profileType required | string Enum: "ALL" "REGISTERED" "POOL" "AGENCY" |
| qualificationStatus required | string Enum: "ALL_QUALIFICATIONS" "ONGOING" "VALIDATED" "NOT_VALIDATED" "NO_ANSWER" "PARTIALLY_VALIDATED" |
{- "profileType": "ALL",
- "qualificationStatus": "ALL_QUALIFICATIONS"
}{- "jobSeekerCounters": [
- {
- "code": "string",
- "total": 0
}
], - "qualificationCounters": [
- {
- "code": "string",
- "total": 0
}
]
}| offerId required | string |
| qualificationStatus required | string Enum: "ALL_QUALIFICATIONS" "ONGOING" "VALIDATED" "NOT_VALIDATED" "NO_ANSWER" "PARTIALLY_VALIDATED" |
| profileType required | string Enum: "ALL" "REGISTERED" "POOL" "AGENCY" |
{- "qualificationStatus": "ALL_QUALIFICATIONS",
- "profileType": "ALL"
}{- "jobSeekerIds": [
- "string"
]
}| offerId required | string |
| matchingSource required | string Enum: "SDR" "AGLAE" |
required | Array of objects (JobSeeker) non-empty |
| criterionCodes required | Array of strings non-empty |
{- "matchingSource": "SDR",
- "jobSeekers": [
- {
- "officeCode": "string",
- "profile": "string",
- "id": "string",
- "phoneNumber": "string",
- "firstName": "string",
- "score": {
- "globalScore": 0,
- "dimensionalScores": [
- {
- "type": "string",
- "score": 0,
- "explainability": "string",
- "weight": 0
}
]
}
}
], - "criterionCodes": [
- "string"
]
}{- "failures": [
- {
- "reason": "INVALID_PHONE_NUMBER",
- "jobSeekerId": "string"
}
]
}| offerIds required | Array of strings |
{- "offerIds": [
- "string"
]
}{- "offerIds": [
- "string"
]
}| offerIds required | Array of strings |
{- "offerIds": [
- "string"
]
}{- "offers": [
- {
- "offerId": "string",
- "qualifications": [
- {
- "createdAt": "2019-08-24T14:15:22Z",
- "summaries": [
- {
- "status": "ONGOING",
- "jobSeekerId": "string"
}
]
}
]
}
]
}Records that the advisor does not follow up on this job seeker for this offer. The decision
carries no payload: the offer and the job seeker are the whole input, and a successful call
answers a 201 with an empty body.
NOT IMPLEMENTED YET: this endpoint currently answers a 501 stating so, whatever the
parameters. The responses below are the contract it will honour once implemented.
| offerId required | string Identifier of the offer |
| jobSeekerId required | string Identifier of the job seeker |
Returns validated or partially validated qualification or qualification that needs attention, matching the given filters
At least one filter must be sent: a request carrying none of them — every filter absent or
empty — is answered with an empty list rather than with every qualification.
Only qualifications less than 100 days old are considered.
| agencyCodes | Array of strings[ items/^\d+$/ ] |
| teamCodes | Array of strings |
| advisorIds | Array of strings |
| offerIds | Array of strings |
{- "agencyCodes": [
- "20400"
], - "teamCodes": [
- "string"
], - "advisorIds": [
- "string"
], - "offerIds": [
- "string"
]
}{- "qualifications": [
- {
- "advisorId": "string",
- "teamCode": "string",
- "status": "VALIDATED",
- "offerId": "string",
- "offerTitle": "string",
- "jobSeekerId": "string",
- "agencyCode": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "endedAt": "2019-08-24T14:15:22Z",
- "prerequisitesCount": 0,
- "validatedPrerequisiteCount": 0,
- "attentionNeeded": true,
- "attentionReasons": [
- "string"
], - "critical": true
}
]
}| offerId required | string |
| matchingSource required | string Value: "SDR" |
| qualificationStatus required | string Enum: "ALL" "ALL_QUALIFICATIONS" "ONGOING" "VALIDATED" "NOT_VALIDATED" "NO_ANSWER" "PARTIALLY_VALIDATED" "PREQUALIFIABLE" |
required | Array of objects (OfferAugmentedMatchingInput) |
{- "matchingSource": "SDR",
- "qualificationStatus": "ALL",
- "jobSeekers": [
- {
- "id": "string",
- "score": 0
}
]
}{- "jobSeekers": [
- {
- "id": "86c6ba8b",
- "matching": {
- "initialScore": 85,
- "computedScore": 82,
- "dimensionalScores": [ ],
- "matchingEngine": "AGLAE"
}, - "qualification": null,
- "isSelectable": true,
- "notSelectableReason": null
}, - {
- "id": "e760dc35",
- "matching": {
- "initialScore": 79,
- "computedScore": 79,
- "dimensionalScores": [ ],
- "matchingEngine": "SDR"
}, - "qualification": null,
- "isSelectable": true,
- "notSelectableReason": null
}
]
}| offerId required | string |
[- {
- "conversationId": "string",
- "qualificationSessionId": "string",
- "jobSeekerId": "string",
- "offerId": "string",
- "conversationCreationDatetime": "2019-08-24T14:15:22Z",
- "conversationEndDatetime": "2019-08-24T14:15:22Z",
- "conversationDurationMinutes": 0,
- "criteria": [
- {
- "code": "string",
- "label": "string",
- "question": "string"
}
], - "messages": [
- {
- "messageId": "string",
- "conversationId": "string",
- "qualificationSessionId": "string",
- "jobSeekerId": "string",
- "offerId": "string",
- "messageOriginator": "string",
- "messageCreationDatetime": "2019-08-24T14:15:22Z",
- "messageContent": "string",
- "conversationStatus": "string",
- "conversationFeeling": "string",
- "askOptOut": true,
- "isEthic": true,
- "ethicReason": "string",
- "isHumanNeeded": true,
- "humanNeededReason": "string",
- "isOtherSubject": true,
- "otherSubject": "string"
}
], - "matchingScore": 0,
- "matchingDetail": "string",
- "category": "string",
- "synthesis": "string",
- "refusalReason": "string",
- "satisfactionLevel": "string",
- "askOptOut": true,
- "hasAngryMessage": true,
- "hasEthicMessage": true,
- "isHumanNeeded": true,
- "jobSeekerConversationEvaluationScore": 0
}
]Retrieves comprehensive knowledge about a job seeker, including their criteria responses, conversation analysis, and various aspects of their job search preferences and history.
| jobSeekerId required | string The unique identifier of the job seeker |
[- {
- "jobSeekerId": "string",
- "knowledge": {
- "criteria": {
- "interest": [
- {
- "createdAt": "2019-08-24T14:15:22Z",
- "status": "string",
- "offerId": "string",
- "conversationSynthesis": "string",
- "romeCode": "string",
- "romeLabel": "string",
- "romeAppellationLabel": "string",
- "romeAppellation": "string"
}
], - "availability": [
- {
- "createdAt": "2019-08-24T14:15:22Z",
- "status": "string",
- "offerId": "string",
- "conversationSynthesis": "string"
}
], - "mobility": [
- {
- "createdAt": "2019-08-24T14:15:22Z",
- "status": "string",
- "offerId": "string",
- "conversationSynthesis": "string",
- "workLocation": "string"
}
], - "salary": [
- {
- "createdAt": "2019-08-24T14:15:22Z",
- "status": "string",
- "offerId": "string",
- "conversationSynthesis": "string",
- "salarySummary": "string"
}
], - "workSchedule": [
- {
- "createdAt": "2019-08-24T14:15:22Z",
- "status": "string",
- "offerId": "string",
- "conversationSynthesis": "string",
- "jobDescription": "string"
}
], - "experience": [
- {
- "createdAt": "2019-08-24T14:15:22Z",
- "status": "string",
- "offerId": "string",
- "conversationSynthesis": "string",
- "romeCode": "string",
- "romeLabel": "string",
- "romeAppellationLabel": "string",
- "romeAppellation": "string"
}
], - "mission": [
- {
- "createdAt": "2019-08-24T14:15:22Z",
- "status": "string",
- "offerId": "string",
- "conversationSynthesis": "string",
- "jobDescription": "string"
}
]
}, - "conversationAnalysis": {
- "jobRelated": [
- {
- "createdAt": "2019-08-24T14:15:22Z",
- "refusalReason": "NOT_FIT",
- "offerId": "string",
- "romeCode": "string",
- "romeLabel": "string",
- "romeAppellationLabel": "string",
- "romeAppellation": "string",
- "conversationSynthesis": "string"
}
], - "jobSeekerStatus": [
- {
- "createdAt": "2019-08-24T14:15:22Z",
- "refusalReason": "IS_WORKING",
- "offerId": "string",
- "conversationSynthesis": "string"
}
], - "mobility": [
- {
- "createdAt": "2019-08-24T14:15:22Z",
- "refusalReason": "TOO_FAR",
- "offerId": "string",
- "workLocation": "string",
- "conversationSynthesis": "string"
}
]
}
}
}
]