---
title: "Gets a candidate"
method: GET
path: "/Entity/Candidate"
tags: ["Entity"]
---

# Gets a candidate

`GET /Entity/Candidate`

## Query parameters

- `id` integer, required

## Response `200`

OK

- CandidateGetResult
  - `Id` integer, required
  - `Forename` string, required
  - `Surname` string, required
  - `DateOfBirth` string, date-time, nullable
  - `IsTemp` boolean, required
  - `IsActive` boolean, required
  - `Created` string, date-time, required
  - `LastUpdated` string, date-time, required
  - `IsRestricted` boolean, required
  - `Status` string, required
  - `WebId` string, required
  - `TitleId` integer, nullable
  - `Middlename` string, required
  - `KnownAs` string, required
  - `GenderId` integer, nullable
  - `MaritalStatusId` integer, nullable
  - `NationalityId` integer, nullable
  - `SecondNationalityId` integer, nullable
  - `ThirdNationalityId` integer, nullable
  - `FourthNationalityId` integer, nullable
  - `EthnicOriginId` integer, nullable
  - `CountryOfOriginId` integer, nullable
  - `ThirdPartyOptOut` boolean, required
  - `MaximumWeeklyWorkingHoursOptOut` boolean, required
  - `ContractualLegalLawfulBasis` 'None' | 'DigitalConsent' | 'VerbalConsent' | 'LegitimateInterest' | 'ContractualLegal' | 'LegalObligation' | 'VitalInterests' | 'PublicTask' | 'NotRequired'
  - `ConsentLegitimateInterestLawfulBasis` 'None' | 'DigitalConsent' | 'VerbalConsent' | 'LegitimateInterest' | 'ContractualLegal' | 'LegalObligation' | 'VitalInterests' | 'PublicTask' | 'NotRequired'
  - `LawfulBasisReasonId` integer, nullable
  - `LawfulBasisOtherReason` string, required
  - `LawfulBasisStatusId` integer, nullable
  - `OriginOfDataId` integer, nullable
  - `Telecoms` EntityTelecomDetail[], required
    - `Name` string, required
    - `Type` 'Landline' | 'Mobile' | 'Email' | 'Fax' | 'Website' | 'Other' | 'Skype', required
    - `Value` string, required
    - `Description` string, required
    - `TelecomId` integer, required
    - `OkToMailShot` boolean, required
    - `OkToSMS` boolean, required
    - `CountryId` integer, nullable
    - `SendByDefault` boolean, required
    - `Extension` string, nullable
    - `IsPreferredTelecom` boolean, required
  - `LinkedInUrl` string, required
  - `XingUrl` string, required
  - `FacebookProfileUrl` string, required
  - `TwitterProfileUrl` string, required
  - `ICaptureWebId` string, required
  - `Photo` string, byte, nullable — A Base64 image to display against the candidate The image cannot exceed the max upload size configured in Infinity.
  - `Addresses` CandidateAddressRequest[], required
    - `Description` string, nullable
    - `AddressLine1` string, nullable
    - `AddressLine2` string, nullable
    - `AddressLine3` string, nullable
    - `Town` string, nullable
    - `County` string, nullable
    - `Postcode` string, nullable
    - `CountryId` integer, nullable
    - `OkToMailShot` boolean, required
    - `AddressTypeId` integer, required
    - `SendByDefault` boolean, required
  - `StatusId` integer, nullable
  - `AvailabilityDate` string, date-time, nullable
  - `Sources` integer[], required
  - `Alert` string, required
  - `IsPermanent` boolean, required
  - `PermanentExpectedRate` CandidateExpectedRateRequest
    - `Min` number
    - `Max` number
    - `RateIntervalId` integer, nullable
  - `IsContract` boolean, required
  - `ContractExpectedRate` CandidateExpectedRateRequest
    - `Min` number
    - `Max` number
    - `RateIntervalId` integer, nullable
  - `IsTemporary` boolean, required
  - `TemporaryExpectedRate` CandidateExpectedRateRequest
    - `Min` number
    - `Max` number
    - `RateIntervalId` integer, nullable
  - `ExpectedRateCurrencyId` integer, nullable
  - `PreferredLocation` string, required
  - `BasedIn` string, required
  - `Relocate` boolean, required
  - `Transport` boolean, required
  - `NoticePeriod` integer, required
  - `NoticePeriodIntervalId` integer, nullable
  - `StudentVisa` boolean, required
  - `OwningConsultants` OwningConsultant[], required
    - `ConsultantId` integer, required
    - `ConsultantRoleId` integer, nullable
  - `Consultants` integer[], required — Depreciated. OwningConsultants can be used instead to return a list of consultants and their roles.
  - `AlternateCode` string, required
  - `RightToWork` boolean, required
  - `EAA` boolean, required
  - `RTWControlledByTrustID` boolean, required
  - `FestiveMail` boolean, required
  - `Comments` string, required
  - `Summary` string, required
  - `Insights` string, required
  - `Financials` CandidateFinancialRequest
    - `WorkerTypeId` integer, nullable
    - `PaymentTypeId` integer, nullable
    - `PayIntervalId` integer, nullable
    - `AWRCandidate` boolean — Depreciated. Field has been removed from Infinity as they can no longer opt out.
    - `NINumber` string, nullable
    - `StartDate` string, date-time, nullable
    - `BankName` string, nullable
    - `BankAddressLine1` string, nullable
    - `BankAddressLine2` string, nullable
    - `BankAddressLine3` string, nullable
    - `BankTown` string, nullable
    - `BankCounty` string, nullable
    - `BankPostcode` string, nullable
    - `BankCountryId` integer, nullable
    - `BankAccountName` string, nullable
    - `BankAccountNumber` string, nullable
    - `BankSortCode` string, nullable
    - `BuildingSocietyReference` string, nullable
    - `IBANNumber` string, nullable
    - `SwiftCode` string, nullable
    - `PAYEDetails` CandidatePAYERequest
      - `HolidayYearStartDate` string, date-time, nullable
    - `NonPAYEDetails` CandidateNonPAYERequest
      - `Name` string, nullable
      - `AddressLine1` string, nullable
      - `AddressLine2` string, nullable
      - `AddressLine3` string, nullable
      - `Town` string, nullable
      - `County` string, nullable
      - `Postcode` string, nullable
      - `CountryId` integer, nullable
      - `RegistrationNumber` string, nullable
      - `VATNumber` string, nullable
      - `VATCodeId` integer, nullable
      - `NonUKTaxCode` string, nullable
    - `CISDetails` CandidateCISRequest
      - `CISPercentage` number, nullable
      - `UTRNumber` string, nullable
      - `VerificationNumber` string, nullable
    - `UmbrellaCompanyId` integer, nullable
  - `DrivingLicence` DrivingLicenceRequest, required
    - `DrivingLicenceNumber` string, nullable
    - `ExpiryDate` string, date-time, nullable
    - `LastCheckedDate` string, date-time, nullable
    - `Categories` DrivingLicenceCategoryRequest[], nullable
      - `Category` 'None' | 'AM' | 'P' | 'Q' | 'A1' | 'A2' | 'A' | 'B1' | 'B' | 'BAuto' | 'BE' | 'C1' | 'C1E' | 'C' | 'CE' | 'D1' | 'D1E' | 'D' | 'DE' | 'F' | 'G' | 'H' | 'K' | 'L' | 'M' | 'N', required
      - `From` string, date-time, nullable
      - `To` string, date-time, nullable
      - `Codes` DrivingLicenceCode[], nullable
    - `Endorsements` DrivingLicenceEndorsementRequest[], nullable
      - `Id` integer, required
      - `Points` integer, nullable
      - `Offence` string, date-time, nullable
      - `Conviction` string, date-time, nullable
      - `Expiry` string, date-time, nullable
  - `EmploymentHistory` CandidateEmploymentHistoryRequest[], required
    - `CompanyName` string, nullable
    - `Location` string, nullable
    - `JobTitle` string, nullable
    - `LineManager` string, nullable
    - `JobType` 'Unknown' | 'Permanent' | 'Contract' | 'Temporary' | 'TemporaryToPerm' | 'ContractToPermanent' | 'FixedTerm'
    - `StartDate` string, date-time, nullable
    - `EndDate` string, date-time, nullable
    - `CurrencyId` integer, nullable
    - `Pay` number
    - `IntervalPerId` integer, nullable
    - `Notes` string, nullable
  - `JobTitles` CandidateJobTitleRequest[], required
    - `Id` integer
    - `IsPreferred` boolean
    - `Experience` integer, nullable
    - `Period` 'Years' | 'Months', required
    - `Notes` string, nullable
    - `LastUsed` string, date-time, nullable
  - `Attributes` CandidateAttributeRequest[], required
    - `Id` integer
    - `ScoreId` integer, nullable
    - `Experience` integer, nullable
    - `Period` 'Years' | 'Months', required
    - `Notes` string, nullable
    - `LastUsed` string, date-time, nullable
  - `ChildAttributes` CandidateAttributeRequest[], required
    - `Id` integer
    - `ScoreId` integer, nullable
    - `Experience` integer, nullable
    - `Period` 'Years' | 'Months', required
    - `Notes` string, nullable
    - `LastUsed` string, date-time, nullable
  - `QualificationsAndCertifications` CandidateQualificationAndCertificationRequest[], required
    - `Id` integer
    - `TypeId` integer, nullable
    - `LevelId` integer, nullable
    - `Issued` string, date-time, nullable
    - `Expires` string, date-time, nullable
    - `Review` string, date-time, nullable
    - `DateCopied` string, date-time, nullable
    - `DateSeen` string, date-time, nullable
    - `Held` boolean, required
    - `Obtained` string, nullable
    - `Original` boolean, required
    - `Notes` string, nullable
    - `ReferenceNumber` string, nullable
  - `CallBacks` CallBackRequest[], required
    - `TypeId` integer, required
    - `DueDate` string, date-time, required
    - `DueTime` string, duration, nullable
    - `ForConsultantId` integer, required
    - `Details` string, nullable
  - `CustomFieldDetails` CustomFieldDetail
    - `CategorisedMultiSelectFields` CategorisedMultiSelectField[], required
      - `Id` integer, required
      - `Name` string, required
      - `Values` string[], required
      - `ValueIds` integer[], required
    - `CheckBoxFields` CheckBoxField[], required
      - `Id` integer, required
      - `Name` string, required
      - `Value` boolean, required
    - `ComboBoxFields` ComboBoxField[], required
      - `Id` integer, required
      - `Name` string, required
      - `Value` string, required
      - `ValueId` integer, required
    - `DateTimePickerFields` DateTimePickerField[], required
      - `Id` integer, required
      - `Name` string, required
      - `Value` string, date-time, nullable
    - `DecimalFields` DecimalField[], required
      - `Id` integer, required
      - `Name` string, required
      - `Value` number, required
    - `IntegerFields` IntegerField[], required
      - `Id` integer, required
      - `Name` string, required
      - `Value` integer, required
    - `MultiSelectListBoxFields` MultiSelectListBoxField[], required
      - `Id` integer, required
      - `Name` string, required
      - `Values` string[], required
      - `ValueIds` integer[], required
    - `NoteControlFields` NoteControlField[], required
      - `Id` integer, required
      - `Name` string, required
      - `Value` string, byte, required
      - `ValueText` string, required
    - `TextBoxFields` TextBoxField[], required
      - `Id` integer, required
      - `Name` string, required
      - `Value` string, required
  - `ShortlistJobCodes` string[], required — A list of valid job codes to shortlist the candidate against e.g. JO0000000112

## Other responses

- `400` — BadRequest
- `401` — Unauthorized
- `404` — NotFound

---

[API](https://skmtc.dev/vslcloud/apis/infinity-api.md) · [All operations](https://skmtc.dev/vslcloud/apis/infinity-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/vslcloud/infinity-api/revisions/54661781612a/schema)
