Skip to content

Talent Catalog API (1.0.0)

The Talent Catalog (TC) is a purpose-built platform designed to connect skilled displaced populations with international job opportunities and refugee-focused support services.

The Talent Catalog API allows third-party systems to connect to the TC platform.

Key Features

The Talent Catalog API offers the following capabilities:

  • Search Candidate Profiles: Retrieve anonymised candidate data from the TC database.
  • Filter Search Results: Find candidates based on various criteria (e.g. location, occupation, or nationality).
  • Post Job Matches: Match candidate profiles with relevant employment opportunities.
  • Post Service Matches: Connect candidate profiles with appropriate support services.
  • Register Candidates: Add new candidate registrations directly to the TC database.

Authentication

The Talent Catalog API uses API Key Authentication.

Each request must include an X-API-Key header with your API key.

Getting Started

  • Contact us to register for an API key.
  • Use the endpoints below to interact with the API.
Download OpenAPI description
Languages
Servers
Mock server
https://tc-api.redocly.app/_mock/openapi/
Staging server
https://test.api.tctalent.org/
Production server
https://api.tctalent.org/

Candidates

Operations related to anonymised candidates.

Operations

Retrieve a page of anonymised candidates

Request

Fetches a paginated array of anonymised candidates. Optionally filter candidates by their ISCO (International Standard Classification of Occupations) codes.

Security
ApiKeyAuth
Query
pageinteger>= 0

The page number for pagination

Default 0
limitinteger[ 1 .. 100 ]

The number of results per page

Default 10
locationstring

A list of ISO 3166-1 alpha-2 location codes to filter candidates by their current location. Provide one or more ISO codes as a comma-separated list (e.g., US,GB).

Example: location=US,GB
nationalitystring

A list of ISO 3166-1 alpha-2 nationality codes to filter candidates by their nationality. Provide one or more ISO codes as a comma-separated list (e.g., FR,DE).

Example: nationality=FR,DE
occupationstring

A list of ISCO codes to filter candidates by their occupations. Provide one or more ISCO codes as a comma-separated list (e.g., 1234,5678).

Example: occupation=1234,5678
includeEmployedboolean

Flag to include candidate profiles with an "employed" status in the results. Defaults to false.

Default false
curl -i -X GET \
  'https://tc-api.redocly.app/_mock/openapi/v1/candidates?page=0&limit=10&location=US%2CGB&nationality=FR%2CDE&occupation=1234%2C5678&includeEmployed=false' \
  -H 'X-API-KEY: YOUR_API_KEY_HERE'

Responses

A page of anonymised candidates

Bodyapplication/json
contentArray of objects(Candidate)
totalElementsinteger
totalPagesinteger
sizeinteger
numberinteger
Response
application/json
{ "content": [ { … } ], "totalElements": 0, "totalPages": 0, "size": 0, "number": 0 }

Retrieve an anonymised candidate by candidate public ID

Request

Fetches details of an anonymised candidate by their unique public candidate ID.

Security
ApiKeyAuth
Path
publicIdstring(base64-uuid)required

Unique public ID of the candidate to retrieve

Example: ABcd2EFgHIjkLMNOp3QR-S
curl -i -X GET \
  https://tc-api.redocly.app/_mock/openapi/v1/candidates/ABcd2EFgHIjkLMNOp3QR-S \
  -H 'X-API-KEY: YOUR_API_KEY_HERE'

Responses

An anonymised candidate's details

Bodyapplication/json
candidateCertificationsArray of objects(CandidateCertification)

List of certifications held by the candidate.

candidateCitizenshipsArray of objects(CandidateCitizenship)

List of citizenships held by the candidate.

candidateDestinationsArray of objects(Destination)

List of destinations related to the candidate.

candidateEducationsArray of objects(CandidateEducation)

List of educational achievements of the candidate.

candidateExamsArray of objects(CandidateExam)

List of exams taken by the candidate.

candidateLanguagesArray of objects(CandidateLanguage)

List of languages that the candidate is proficient in.

candidateMessagestring

Message written by the candidate.

candidateOccupationsArray of objects(CandidateOccupation)

List of occupations related to the candidate.

candidateSkillsArray of objects(CandidateSkill)

List of skills possessed by the candidate.

citystring

City of residence

Example: "Amman"
contactConsentTcPartnersboolean

Indicates whether the candidate has given consent to be contacted by TC partners.

Example: true
contactConsentRegistrationboolean

Indicates whether the candidate has given consent to be contacted regarding their registration and employment opportunities.

Example: true
countryobject

Country where candidate is currently located

genderstring

Candidate's gender.

Enum"MALE""FEMALE""OTHER"
Example: "OTHER"
maxEducationLevelobject

The maximum education level of the candidate

nationalityobject

Nationality of the candidate.

howHeardAboutUsstring

How the candidate heard about the Talent Catalog.

Enum"ONLINE_GOOGLE_SEARCH""FACEBOOK""INSTAGRAM""LINKEDIN""X""WHATSAPP""YOUTUBE""FRIEND_COLLEAGUE_REFERRAL""UNIVERSITY_SCHOOL_REFERRAL""EMPLOYER_REFERRAL"
Example: "FRIEND_COLLEAGUE_REFERRAL"
unhcrConsentstring

Indicates whether the candidate has given consent for UNHCR to be notified that they have registered on the Talent Catalog.

Enum"NO_RESPONSE""YES""NO"
Example: "YES"
yearOfArrivalinteger(int32)

Year of arrival in the country

Example: 2010
publicIdstring(base64-uuid)required

Universally unique identifier for the candidate

Example: "ABcd2EFgHIjkLMNOp3QR-S"
asylumYearstring(date)

Date of asylum

Example: "2015-07-12"
arrestImprisonstring

Indicates whether the candidate has been arrested or imprisoned.

Enum"NO_RESPONSE""YES""NO""UNSURE"
Example: "YES"
availDatestring(date)

Date when the candidate becomes available for opportunities. A date without a time-zone in the ISO-8601 calendar system

Example: "2023-12-01"
availImmediatestring

Indicates whether the candidate is immediately available for opportunities.

Enum"NO_RESPONSE""YES""NO"
Example: "YES"
availImmediateJobOpsstring

The type of job opportunities the candidate is qualified for.

Example: "Yes"
availImmediateReasonstring

Reason for the candidate's immediate availability.

Enum"FAMILY""HEALTH""CURRENT_WORK""STUDIES""OTHER"
Example: "FAMILY"
birthCountryobject

Country of birth

candidateDependantsArray of objects(Dependant)

List of dependants related to the candidate.

candidateVisaChecksArray of objects(CandidateVisaCheck)

List of visa checks related to the candidate.

canDrivestring

Indicates whether the candidate can drive.

Enum"NO_RESPONSE""YES""NO"
Example: "YES"
conflictstring

Indicates whether the candidate has participated in a conflict.

Enum"NO_RESPONSE""YES""NO"
Example: "YES"
covidVaccinatedstring

Vaccination status of the candidate.

Enum"NO_RESPONSE""YES""NO"
Example: "YES"
covidVaccinatedDatestring(date)

Date of the candidate's last COVID-19 vaccination.

Example: "2022-12-15"
covidVaccineNamestring

Name of the COVID-19 vaccine received by the candidate.

Example: "Pfizer-BioNTech"
covidVaccinatedStatusstring

COVID-19 vaccination status of the candidate.

Enum"NO_RESPONSE""FULL""PARTIAL"
Example: "FULL"
crimeConvictstring

Indicates whether the candidate has a criminal conviction.

Enum"NO_RESPONSE""YES""NO""UNSURE"
Example: "YES"
destLimitstring

Destination limits for the candidate.

Enum"NO_RESPONSE""YES""NO"
Example: "YES"
drivingLicensestring

Indicates the status of the candidate's driving license.

Enum"NO_RESPONSE""VALID""EXPIRED""NONE"
Example: "VALID"
drivingLicenseCountryobject

Country where the candidate's driving license was issued.

drivingLicenseExpstring(date)

Expiry date of the candidate's driving license.

Example: "2025-12-31"
englishAssessmentScoreIeltsstring

IELTS score of the candidate's English assessment.

Example: "6.5"
familyMovestring

Indicates whether the candidate is moving with their family.

Enum"NO_RESPONSE""YES""NO"
Example: "YES"
frenchAssessmentScoreNclcinteger(int64)

NCLC (Canadian Language Benchmark) score of the candidate's French assessment.

Example: 10
fullIntakeCompletedDatestring(date-time)

Date when the full intake was completed.

Example: "2022-12-31T14:30:00Z"
healthIssuesstring

Indicates whether the candidate has health issues.

Enum"NO_RESPONSE""YES""NO"
Example: "YES"
homeLocationstring

Home location of the candidate before they became a refugee.

Example: "Damascus"
hostChallengesstring

Challenges faced by the candidate in the host country.

Example: "Host country challenges"
hostEntryLegallystring

Indicates if the candidate entered the host country legally.

Enum"NO_RESPONSE""YES""NO"
Example: "YES"
hostEntryYearinteger

Year the candidate entered the host country.

Example: 2010
ieltsScorenumber(float)

IELTS score of the candidate.

Example: 7.5
intRecruitReasonsArray of strings(int_recruit_reason)

Reasons for the candidate's international recruitment.

Items Enum"NO_RESPONSE""CANT_RETURN_HOME""CITIZENSHIP""EXPERIENCE""CHILDREN""OTHER"
Example: ["CANT_RETURN_HOME"]
intRecruitRuralstring

Indicates whether the candidate will work in a rural area.

Enum"NO_RESPONSE""YES""NO""UNSURE"
Example: "YES"
leftHomeReasonsArray of strings(left_home_reason)

Reasons for the candidate leaving home.

Items Enum"NO_RESPONSE""SAFETY""JOB""OTHER"
Example: ["SAFETY"]
maritalStatusstring

Marital status of the candidate.

Enum"NO_RESPONSE""MARRIED""ENGAGED""DEFACTO""SINGLE""DIVORCED""SEPARATED""WIDOWER"
Example: "MARRIED"
mediaWillingnessstring

Indicates the candidate's willingness to participate in media activities

Example: "Yes"
militaryServicestring

Indicates whether the candidate has served in the military.

Enum"NO_RESPONSE""YES""NO"
Example: "YES"
militaryWantedstring

Indicates whether the candidate is wanted for military service.

Enum"NO_RESPONSE""YES""NO""UNSURE"
Example: "YES"
militaryStartstring(date)

Start date of the candidate's military service.

Example: "2010-01-01"
militaryEndstring(date)

End date of the candidate's military service.

Example: "2015-01-01"
miniIntakeCompletedDatestring(date-time)

Date when the mini intake was completed.

Example: "2022-12-31T14:30:00Z"
monitoringEvaluationConsentstring

Indicates whether the candidate has given consent for monitoring and evaluation.

Enum"NO_RESPONSE""YES""NO"
Example: "YES"
numberDependantsinteger(int64)

Number of dependants related to the candidate.

Example: 2
partnerRegisteredstring

Indicates whether the candidate's partner is registered.

Enum"NO_RESPONSE""YES""NO""UNSURE"
Example: "YES"
partnerPublicIdstring(base64-uuid)

Anonymised public ID of the candidate's partner (if also a candidate in the system)

Example: "ABcd2EFgHIjkLMNOp3QR-S"
partnerCitizenshipArray of integers(int64)

Citizenship(s) of the candidate's partner.

Example: [1,2]
partnerEduLevelobject

Education level of the candidate's partner.

partnerEnglishstring

Indicates whether the candidate's partner speaks English.

Enum"NO_RESPONSE""YES""NO"
Example: "YES"
partnerEnglishLevelobject

English proficiency level of the candidate's partner.

partnerIeltsstring

Indicates whether the candidate's partner has taken the IELTS exam.

Enum"NO_RESPONSE""YES_GENERAL""YES_ACADEMIC""NO""UNSURE"
Example: "YES_GENERAL"
partnerIeltsScorestring

IELTS score of the candidate's partner.

Example: "7.5"
partnerIeltsYrinteger(int64)

Year the candidate's partner took the IELTS exam.

Example: 2020
partnerOccupationobject

Occupation of the candidate's partner.

residenceStatusstring

Residence status of the candidate.

Enum"NO_RESPONSE""LEGAL_RES""ILLEGAL_RES""OTHER"
Example: "LEGAL_RES"
returnedHomestring

Indicates whether the candidate has returned home.

Enum"NO_RESPONSE""YES""NO""UNSURE"
Example: "YES"
returnHomeSafestring

Indicates whether the candidate returned home safely.

Enum"NO_RESPONSE""YES""NO""UNSURE"
Example: "YES"
returnHomeFuturestring

Indicates whether the candidate plans to return home in the future.

Enum"NO_RESPONSE""YES""NO""UNSURE"
Example: "YES"
resettleThirdstring

Indicates whether the candidate has ever applied for resettlement or emigration to a 3rd country.

Enum"NO_RESPONSE""YES""NO"
Example: "YES"
statusstring

Status of the candidate.

Enum"ACTIVE""AUTONOMOUS_EMPLOYMENT""DELETED""DRAFT""EMPLOYED""INCOMPLETE""INELIGIBLE""PENDING""UNREACHABLE""WITHDRAWN"
Example: "ACTIVE"
unhcrNotRegStatusstring

UNHCR not registered status of the candidate.

Enum"NO_RESPONSE""WAS_REGISTERED""NEVER_REGISTERED""REGISTERING""UNSURE""NA"
Example: "NEVER_REGISTERED"
unhcrRegisteredstring

Indicates whether the candidate is registered with UNHCR.

Enum"NO_RESPONSE""YES""NO""UNSURE"
Example: "YES"
unhcrStatusstring

UNHCR status of the candidate.

Enum"NO_RESPONSE""MANDATE_REFUGEE""REGISTERED_ASYLUM""REGISTERED_STATELESS""REGISTERED_STATUS_UNKNOWN""NOT_REGISTERED""UNSURE""NA"
Example: "MANDATE_REFUGEE"
unrwaNotRegStatusstring

UNRWA not registered status of the candidate.

Enum"NO_RESPONSE""WAS_REGISTERED""NEVER_REGISTERED""REGISTERING""UNSURE""NA"
Example: "NEVER_REGISTERED"
unrwaRegisteredstring

Indicates whether the candidate is registered with UNRWA.

Enum"NO_RESPONSE""YES""NO""UNSURE"
Example: "YES"
visaIssuesstring

Indicates whether the candidate has had visa issues.

Enum"NO_RESPONSE""YES""NO""UNSURE"
Example: "YES"
visaRejectstring

Indicates whether the candidate has had a visa application rejected.

Enum"NO_RESPONSE""YES""NO""UNSURE"
Example: "YES"
workAbroadstring

Indicates whether the candidate has worked abroad.

Enum"NO_RESPONSE""YES""NO"
Example: "YES"
workPermitstring

Indicates whether the candidate has a work permit and if it is in the desired field.

Enum"NO_RESPONSE""YES_NOT_DESIRED""YES_DESIRED""NO"
Example: "YES_DESIRED"
workPermitDesiredstring

Indicates whether the candidate desires a work permit.

Enum"NO_RESPONSE""YES""NO""UNSURE"
Example: "YES"
yearOfBirthinteger(int32)

Year of birth of the candidate

Example: 1985
createdDatestring(date-time)(ISO 8601 Timestamp)read-only

Date when the candidate was created.

Example: "2024-11-14T14:30:00Z"
Response
application/json
{ "candidateCertifications": [ { … } ], "candidateCitizenships": [ { … } ], "candidateDestinations": [ { … } ], "candidateEducations": [ { … } ], "candidateExams": [ { … } ], "candidateLanguages": [ { … } ], "candidateMessage": "string", "candidateOccupations": [ { … } ], "candidateSkills": [ { … } ], "city": "Amman", "contactConsentTcPartners": true, "contactConsentRegistration": true, "country": { "isoCode": "GB", "name": "United Kingdom", "status": "ACTIVE" }, "gender": "OTHER", "maxEducationLevel": { "level": 40, "status": "ACTIVE", "educationType": "MASTERS" }, "nationality": { "isoCode": "GB", "name": "United Kingdom", "status": "ACTIVE" }, "howHeardAboutUs": "FRIEND_COLLEAGUE_REFERRAL", "unhcrConsent": "YES", "yearOfArrival": 2010, "publicId": "ABcd2EFgHIjkLMNOp3QR-S", "asylumYear": "2015-07-12", "arrestImprison": "YES", "availDate": "2023-12-01", "availImmediate": "YES", "availImmediateJobOps": "Yes", "availImmediateReason": "FAMILY", "birthCountry": { "isoCode": "GB", "name": "United Kingdom", "status": "ACTIVE" }, "candidateDependants": [ { … } ], "candidateVisaChecks": [ { … } ], "canDrive": "YES", "conflict": "NO", "covidVaccinated": "YES", "covidVaccinatedDate": "2022-12-15", "covidVaccineName": "Pfizer-BioNTech", "covidVaccinatedStatus": "FULL", "crimeConvict": "NO", "destLimit": "NO", "drivingLicense": "VALID", "drivingLicenseCountry": { "isoCode": "GB", "name": "United Kingdom", "status": "ACTIVE" }, "drivingLicenseExp": "2025-12-31", "englishAssessmentScoreIelts": "6.5", "familyMove": "YES", "frenchAssessmentScoreNclc": 10, "fullIntakeCompletedDate": "2022-12-31T14:30:00Z", "healthIssues": "NO", "homeLocation": "Damascus", "hostChallenges": "Host country challenges", "hostEntryLegally": "YES", "hostEntryYear": 2010, "ieltsScore": 7.5, "intRecruitReasons": [ "CANT_RETURN_HOME" ], "intRecruitRural": "YES", "leftHomeReasons": [ "SAFETY" ], "maritalStatus": "MARRIED", "mediaWillingness": "Yes", "militaryService": "YES", "militaryWanted": "NO", "militaryStart": "2010-01-01", "militaryEnd": "2015-01-01", "miniIntakeCompletedDate": "2022-12-31T14:30:00Z", "monitoringEvaluationConsent": "YES", "numberDependants": 2, "partnerRegistered": "YES", "partnerPublicId": "ABcd2EFgHIjkLMNOp3QR-S", "partnerCitizenship": [ 1, 2 ], "partnerEduLevel": { "level": 40, "status": "ACTIVE", "educationType": "MASTERS" }, "partnerEnglish": "YES", "partnerEnglishLevel": { "level": 351, "name": "Full Professional Proficiency", "cefrLevel": "B2" }, "partnerIelts": "YES_GENERAL", "partnerIeltsScore": "7.5", "partnerIeltsYr": 2020, "partnerOccupation": { "isco08Code": "2411", "name": "Accountant", "status": "ACTIVE" }, "residenceStatus": "LEGAL_RES", "returnedHome": "NO", "returnHomeSafe": "YES", "returnHomeFuture": "NO", "resettleThird": "YES", "status": "ACTIVE", "unhcrNotRegStatus": "NEVER_REGISTERED", "unhcrRegistered": "YES", "unhcrStatus": "MANDATE_REFUGEE", "unrwaNotRegStatus": "NEVER_REGISTERED", "unrwaRegistered": "NO", "visaIssues": "NO", "visaReject": "NO", "workAbroad": "YES", "workPermit": "YES_DESIRED", "workPermitDesired": "YES", "yearOfBirth": 1985, "createdDate": "2024-11-14T14:30:00Z" }

Retrieve a page of anonymised candidates in a saved list

Request

Fetches a paginated array of anonymised candidates belonging to a specific saved list, identified by its public ID.

Security
ApiKeyAuth
Path
publicListIdstringrequired

The public ID of the saved list

Query
pageinteger>= 0

The page number for pagination

Default 0
limitinteger[ 1 .. 100 ]

The number of results per page

Default 10
curl -i -X GET \
  'https://tc-api.redocly.app/_mock/openapi/v1/candidates/by-list/{publicListId}?page=0&limit=10' \
  -H 'X-API-KEY: YOUR_API_KEY_HERE'

Responses

A page of anonymised candidates

Bodyapplication/json
contentArray of objects(Candidate)
totalElementsinteger
totalPagesinteger
sizeinteger
numberinteger
Response
application/json
{ "content": [ { … } ], "totalElements": 0, "totalPages": 0, "size": 0, "number": 0 }

Expression of interest in candidates for a job

Request

Allows prospective employers or recruiters to indicate that one or more candidates look like they match the requirements of a job, and that they are interested in proceeding further with those candidates.

Security
ApiKeyAuth
Bodyapplication/jsonrequired

Information about the prospective employer or recruiter who has the job

candidatesArray of objects

A list of candidate public IDs.

additionalNotesstring

Optional additional notes provided by the employer or recruiter

Example: "Candidates' experience aligns with our job requirements. We would like to arrange interviews at the earliest convenience."
curl -i -X POST \
  https://tc-api.redocly.app/_mock/openapi/v1/candidates/job-match \
  -H 'Content-Type: application/json' \
  -H 'X-API-KEY: YOUR_API_KEY_HERE' \
  -d '{
    "candidates": [
      {
        "publicId": "ABcd2EFgHIjkLMNOp3QR-S"
      }
    ],
    "additionalNotes": "Candidates'\'' experience aligns with our job requirements. We would like to arrange interviews at the earliest convenience."
  }'

Responses

Successfully expressed interest in matching the candidates to the job

Bodyapplication/json
messagestring

Success message

Example: "Your interest has been successfully recorded."
jobMatchIdstring

The unique ID for the job match record

Example: "job-match-7890"
Response
application/json
{ "message": "Your interest has been successfully recorded.", "jobMatchId": "job-match-7890" }

Request

Allows candidate service providers to offer assistance to one or more candidates. For example, to invite eligible candidate's to access specialised services for education, migration or settlement support.

Security
ApiKeyAuth
Bodyapplication/jsonrequired

Information about the prospective employer, recruiter or candidate service provider expressing interest in the candidate

candidatesArray of objects(CandidateCoupon)

A list of candidate public IDs and optional coupon codes.

reasonstring

The reason for expressing interest in the candidate

Enum"JOB_OPPORTUNITY""EDUCATION_SERVICE""MIGRATION_SERVICE""FINANCIAL_SUPPORT_SERVICE""SETTLEMENT_SERVICE""OTHER"
Example: "JOB_OPPORTUNITY"
additionalNotesstring

Optional additional notes provided by the candidate service provider

Example: "We would like to provide our services to these candidates."
curl -i -X POST \
  https://tc-api.redocly.app/_mock/openapi/v1/candidates/offer-to-assist \
  -H 'Content-Type: application/json' \
  -H 'X-API-KEY: YOUR_API_KEY_HERE' \
  -d '{
    "candidates": [
      {
        "publicId": "ABcd2EFgHIjkLMNOp3QR-S",
        "couponCode": "COUPON2025"
      }
    ],
    "reason": "EDUCATION_SERVICE",
    "additionalNotes": "We would like to provide our services to these candidates."
  }'

Responses

Successfully expressed interest in the candidate

Bodyapplication/json
messagestring

Success message

Example: "Your offer has been successfully recorded."
offerIdstring

The unique ID for the offer to assist record

Example: "interest-7890"
Response
application/json
{ "message": "Your offer has been successfully recorded.", "offerId": "interest-7890" }

Register a candidate with the Talent Catalog

Request

Allows API users to register a candidate with the Talent Catalog by providing candidate information using the IdentifiableCandidate schema. Users should provide as much information as possible, including all required fields.

Security
ApiKeyAuth
Bodyapplication/jsonrequired

Candidate information to register with the Talent Catalog

registrarIdstring

The unique identifier of organization supplying the registration data

Example: "registrar-12345"
registrationDataobject

Data required to register a candidate on the Talent Catalog.

curl -i -X POST \
  https://tc-api.redocly.app/_mock/openapi/v1/candidates/register \
  -H 'Content-Type: application/json' \
  -H 'X-API-KEY: YOUR_API_KEY_HERE' \
  -d '{
    "registrarId": "registrar-12345",
    "registrationData": {
      "identity": {
        "firstName": "John",
        "lastName": "Doe",
        "email": "john@doe.com"
      },
      "dob": "1985-06-15",
      "linkedInLink": "https://www.linkedin.com/in/johndoe",
      "phone": "+1-234-567-890",
      "unhcrNumber": "12345678",
      "unrwaNumber": "12345678",
      "whatsapp": "+1-234-567-890",
      "candidateCertifications": [
        {
          "name": "Certified Kubernetes Administrator",
          "institution": "Cloud Native Computing Foundation",
          "dateCompleted": "2024-11-27"
        }
      ],
      "candidateCitizenships": [
        {
          "hasPassport": "VALID_PASSPORT",
          "passportExp": "2024-11-27",
          "nationality": {
            "isoCode": "GB",
            "name": "United Kingdom",
            "status": "ACTIVE"
          }
        }
      ],
      "candidateDestinations": [
        {
          "country": {
            "isoCode": "GB",
            "name": "United Kingdom",
            "status": "ACTIVE"
          },
          "interest": "YES"
        }
      ],
      "candidateEducations": [
        {
          "educationType": "MASTERS",
          "country": {
            "isoCode": "GB",
            "name": "United Kingdom",
            "status": "ACTIVE"
          },
          "educationMajor": {
            "id": 8713,
            "iscedCode": "0711",
            "name": "Computer Science",
            "status": "ACTIVE"
          },
          "lengthOfCourseYears": 4,
          "institution": "University of Cambridge",
          "courseName": "Computer Science Tripos",
          "yearCompleted": 2024,
          "incomplete": false
        }
      ],
      "candidateExams": [
        {
          "exam": "OTHER",
          "otherExam": "Test of English for Aviation",
          "score": "8.5",
          "year": 2024
        }
      ],
      "candidateLanguages": [
        {
          "language": {
            "isoCode": "en",
            "name": "English",
            "status": "ACTIVE"
          },
          "writtenLevel": {
            "level": 351,
            "name": "Full Professional Proficiency",
            "cefrLevel": "B2"
          },
          "spokenLevel": {
            "level": 351,
            "name": "Full Professional Proficiency",
            "cefrLevel": "B2"
          }
        }
      ],
      "candidateMessage": "string",
      "candidateOccupations": [
        {
          "occupation": {
            "isco08Code": "2411",
            "name": "Accountant",
            "status": "ACTIVE"
          },
          "yearsExperience": 5,
          "candidateJobExperiences": [
            {
              "country": {
                "isoCode": "GB",
                "name": "United Kingdom",
                "status": "ACTIVE"
              },
              "companyName": "Acme Corporation",
              "role": "Senior Software Engineer",
              "startDate": "2020-11-27",
              "endDate": "2024-11-27",
              "fullTime": true,
              "paid": true,
              "description": "Developed new features for the company'\''s flagship product."
            }
          ]
        }
      ],
      "candidateSkills": [
        {
          "skill": "Java",
          "timePeriod": "5 years"
        }
      ],
      "city": "Amman",
      "contactConsentTcPartners": true,
      "contactConsentRegistration": true,
      "country": {
        "isoCode": "GB",
        "name": "United Kingdom",
        "status": "ACTIVE"
      },
      "gender": "OTHER",
      "maxEducationLevel": {
        "level": 40,
        "status": "ACTIVE",
        "educationType": "MASTERS"
      },
      "nationality": {
        "isoCode": "GB",
        "name": "United Kingdom",
        "status": "ACTIVE"
      },
      "howHeardAboutUs": "FRIEND_COLLEAGUE_REFERRAL",
      "unhcrConsent": "YES",
      "yearOfArrival": 2010
    }
  }'

Responses

Candidate successfully registered with the Talent Catalog

Bodyapplication/json
messagestring

Success message

Example: "Candidate successfully registered."
publicIdstring(base64-uuid)

The unique public ID assigned to the registered candidate

Example: "ABcd2EFgHIjkLMNOp3QR-S"
Response
application/json
{ "message": "Candidate successfully registered.", "publicId": "ABcd2EFgHIjkLMNOp3QR-S" }