Create a Candidate

Creates new candidate for a specified position. Returns the Candidate.

Request

POST https://api.comeet.co/candidates

Request body parameters:

Name

Type

Optional

Description

position_uid

string

Required

Unique ID of the position in Recruit

partner_candidate_id

string

Optional

Unique ID of the candidate on the partner's system

first_name

string

Required

middle_name

string

Optional

last_name

string

Required

email

string

Optional

phone

string

Optional

mobile_phone

string

Optional

national_id

string

Optional

linkedin_url

string

Optional

salary_expectations

string

Optional

Access to this field is restricted in Recruit (BETA)

prospect_status

string

Optional

One of the following: Sourced, Contacted, Responded, Interested, Not interested, Do not contact

resume

object

Optional

See restrictions below

picture

object

Optional

Profile photo

links

array_object

Optional

files

array_object

Optional

See restrictions below

source_contact

object

By use case

Include the source contact if your app aggregates multiple sources. For example, use this object to include the details of the headhunter who submitted the candidate.

Required for employee portals, otherwise it is optional.

source_contact.full_name

string

Required

source_contact.email

string

Required

Required if the source_contact object is provided

source_contact.phone

string

Optional

address

object

Optional

custom_fields

object

Optional

Key-value pairs of custom candidate fields

note

string

Optional

Plain text, no formatting.

🚧

Restrictions on candidate files

The following restrictions apply to files added to theresume array:

  • File types allowed: .pdf, .doc, .docx.

The following restrictions apply to files added to the files array:

  • Maximum size of 6MB
  • Image file types allowed: .jpeg, .jpg, .tiff, .tif, .png, .gif, .bmp, .jfif, .ico
  • Other file types allowed: .xlsx, .zip, .pptx, .msg, .rar, .xls, .csv, .gsheet, .xml, .7z, .txt, .gz, .gdoc, .ppsx, .ppt, .ics, .html, .htm, .eml, .dwg, .gl, .cs, .css, .py, .java, .json, .mp3, .mp4, .psd, .odt, .pem, .cpp, .swf, .apk, .sql, .mov, .dash, .p7s, .dat, .ipynb, .pdf, .doc, .docx, .rtf, .log, .pages

Note: The list of allowed file types can be customized for Recruit accounts on the Enterprise plan.

{
    "position_uid": "11.11",
    "partner_candidate_id": "1111A",
    "first_name": "Bobby",
    "middle_name": "Robert",
    "last_name": "Chauck",
    "email": "[email protected]",
    "phone": "07-4442321",
    "mobile_phone": "052-8644246",
    "national_id": "5454-2233-1",
    "linkedin_url": "https://www.linkedin.com/in/bobby-hauck-06b0735",
    "salary_expectations": "80k / Annual",
    "prospect_status": "Interested",
    "resume":
    {
        "name": "bobby_cv.docx",
        "file": "BASE64"
    },
    "picture":
    {
        "file": "BASE64",
        "name": "image.png"
    },
    "links": [
    	{
     	   "url": "https://www.github.com/bobbyc"
    	}
    	//...
    ],
    "files": [
    	{
      	  "name": "Coding Challenge",
        	"file": "BASE64"
    	},
    	//...
    ],
    "source_contact": 
    {  
        "full_name": "Michael Rosen",
        "email": "[email protected]",
        "phone": "555 555 1234"
    },
    "address":
    {
        "country": "US",
        "city": "New York",
        "state": "NY",
        "zip": "11249",
        "street": "109 S 5th st. #302"
    },
    "custom_fields":
    {
        "field1": "value1",
        //...
    },
    "note": "The candidate expressed his interest in this position"
}

Response

{  
  "uid": "00.AAA",
  "position_uid": "11.11",
  "source_contact": {  
    "full_name": "Michael Rosen",
    "email": "[email protected]",
    "phone": "555 555 1234"
  },
  "time_created": "2018-01-01T12:50:50Z",
  "time_last_status_changed": "2018-01-01T12:50:50Z",
  "current_steps": [  
    {  
      "name": "Technical interview",
      "type": "In person Interview",
      "time_scheduled": "2018-01-01T12:50:50Z"
    }
  ],
  "completed_steps": [  
    {  
      "name": "CV Screen",
      "type": "Go/No-go",
      "time_scheduled": "2018-01-01T12:50:50Z",
      "time_completed": "2018-03-03T12:50:50Z"
    }
  ],
  "status": "In progress"
}
{  
  "status":409,
  "error":"candidate_post_conflict",
  "message":"Candidate with provided partner_candidate_id already exists in position with status in progress",
  "candidate_uid":5555
}
🚧

Keeping track of candidate fields

NOTE: Not all fields submitted in the body of the POST request can be retrieved later through GET. Make sure you keep track of everything you need in your service.