Candidate Object Schema

The candidate object contains the metadata about a candidate

Field

Field Type

Description

id

Integer

Unique ID of the candidate

first_name

String

First name of the candidate

last_name

String

Last name of the candidate

email

String

Email ID of the candidate

phone

String

Phone number of the candidate

description

String

A brief description about the candidate.

resume.file_name

String

File name of the resume.

resume.content

String

Contents of the file in a Base64 encoded format. This field is available only for creating and editing resumes on a candidate.

resume.file_url

Url
(readonly)

A hyperlink which links to location where the resume can be downloaded.

created_date

Timestamp

(read only)

Timestamp of when the candidate was added to Trakstar Hire

updated_date

Timestamp

(read only)

Timestamp of when the candidate details were last updated.

profile_data

Array of objects

In addition to the details above, Trakstar Hire allows you to add custom metadata to candidates.

For example, you want to specify a candidate's github profile, or his salary expectation, then the the profile data will look like

[{ 
"name" : "github profile", 
"value": "https://github.com/johndoe" 
}]

source

String

This represents the source to which a candidate is attributed to in Trakstar Hire. For example, if the candidate came from a job board called Acme Inc. then the source will be Acme Inc.

source_type

String
(read only)

Represents the source type.
In cases when a candidate is created using the api, it will be API

created_by

Object
(read only)

An object representing the user who created the candidate which is the form

{ 
  "id": 1,
  "email": "[email protected]",
  "name": "John Doe"
}

assigned_to

Object
(read only)

An object representing the user who is assigned to the candidate

opening_id

Integer

Unique Id of the Opening to which the candidate belongs

stage_id

Integer

Unique Id of the Stage to which the candidate belongs

stage_name

String (read only)

Name of the Stage to which the candidate belongs

state

String (read only)

Describes the state in which the candidate is. Can be one of ['in_process' 'hired' 'rejected' 'declined_offer' 'onhold' 'withdrawn' 'spam' 'archived' 'onhold_prospecting' 'did_not_convert']

state_metadata

Object (read only)

Additional information pertaining to a state. Like, HIRED or REJECTED are end states for a candidate. So, once you mark a candidate as one of the two states, you normally would have a reason. All the more important when you reject the said candidate.
The state_metadata holds that extra reason and explanation information.

"state_metadata": {
    "reason":  "Not a fit",
    "explanation": "Underqualified"
},

Example Candidate Object

{
  "updated_date": 1473159406,
  "first_name": "richard",
  "last_name": "hendricks",
  "description": "Test from API",
  "resume": {
    "content": "SGVsbG8gbXkgbmFtZSBpcyBhc2h3aW4uIGdpdmUgbWUgYSBqb2Iu",
    "file_name": "hendricks resume.txt"
  },
  "email": "[email protected]",
  "opening_id": 136691,
  "created_date": 1473159405,
  "source": "Email",
  "source_type": "Upload",
  "id": 11200501,
  "stage_id": 12,
  "stage_name": "Screening",
  "assigned_to": {
    "email": "[email protected]",
    "id": 129021,
    "name": "Hannibal Smith"
  },
  "state_metadata": {
    "reason": "Not a fit",
    "explanation": "Underqualified"  
  },
  "created_by": null,
  "phone": "8011290883",
  "state": "in_process",
  "profile_data": [
    {
      "name": "Linkedin",
      "value": "https://www.linkedin.com/us/rhendricks"
    },
    {
      "name": "Twitter",
      "value": "https://twitter.com/rhendricks"
    },
    {
      "name": "Current Location",
      "value": "Silicon Valley, California"
    }
  ]
}