Create a Candidate

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

Request

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

Request body parameters:

NameTypeOptionalDescription
position_uidstringRequiredUnique ID of the position in Comeet
partner_candidate_idstringRequiredUnique ID of the candidate on the partner's system
first_namestringRequired
middle_namestringOptional
last_namestringRequired
emailstringOptional
phonestringOptional
mobile_phonestringOptional
national_idstringOptional
linkedin_urlstringOptional
salary_expectationsstringOptionalAccess to this field is restricted in Comeet (BETA)
prospect_statusstringOptionalOne of the following: Sourced, Contacted, Responded, Interested, Not interested, Do not contact
resumeobjectOptionalSee restrictions below
pictureobjectOptionalProfile photo
linksarray_objectOptional
filesarray_objectOptionalSee restrictions below
source_contactobjectBy use caseInclude 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_namestringRequired
source_contact.emailstringRequiredRequired if the source_contact object is provided
source_contact.phonestringOptional
addressobjectOptional
custom_fieldsobjectOptionalKey-value pairs of custom candidate fields
notestringOptionalPlain 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 Comeet 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.