Candidates and vacancies

Webhook topics and example payloads for PeopleRecruit candidates and vacancies.

For PeopleRecruit users, these webhooks cover the recruitment lifecycle:

  • applicant_create — a candidate is created
  • vacancy_offer_accept — a candidate accepted and signed an offer
  • vacancy_create — a vacancy is created
  • vacancy_application_create — a candidate applied or was added to a vacancy

Applicant created

Triggered instantly when a new applicant is created. Action: applicant_create. Custom fields are keyed by their field ID, each with a name and value.

{
  "action": "applicant_create",
  "data": {
    "id": 1461719,
    "attributes": {
      "full_name": "Pavlo Skrypka",
      "position": null,
      "email": "pavlo@example.com",
      "phone_numbers": ["380948593490"],
      "urls": []
    },
    "custom_fields": {
      "70f2c0d7-559a-4066-be3a-1cc53e547c52": { "name": "Driving license", "value": null },
      "c162e147-7c10-4bee-b53b-72f0183edbc2": { "name": "Special notes", "value": null },
      "18700c50-a0ac-40e1-8e52-f636a64a3edc": { "name": "desired_salary", "value": null }
    },
    "meta": {
      "created_at": "2022-09-21T16:17:10.410+01:00",
      "updated_at": "2022-09-21T16:17:10.416+01:00"
    }
  }
}

Applicant offer accepted

Triggered instantly when an applicant accepts and signs an offer. Action: vacancy_offer_accept.

The payload does not include the offer document.

{
  "action": "vacancy_offer_accept",
  "data": {
    "id": 7978,
    "attributes": {
      "accepted_at": "2022-09-21T16:20:21.035+01:00",
      "rejected_at": null,
      "viewed_at": "2022-09-21T16:20:17.229+01:00"
    },
    "applicant": { "id": 1461719, "full_name": "Pavlo Skrypka", "email": "pavlo@example.io" },
    "vacancy": { "id": 526, "title": "QA Tester", "status": "accepted" },
    "meta": {
      "created_at": "2022-09-21T16:19:58.757+01:00",
      "updated_at": "2022-09-21T16:20:21.013+01:00"
    }
  }
}

Vacancy created

Triggered instantly when a vacancy is created. Action: vacancy_create. The description is delivered as HTML.

{
  "action": "vacancy_create",
  "data": {
    "id": 56721,
    "attributes": {
      "name": "UX Designer",
      "description": "<div class=\"trix-content\">…</div>"
    },
    "custom_fields": {
      "478214e1-0b81-4048-a6a3-63d3088d1ee0": { "name": "Custom field", "value": "Custom text" }
    },
    "meta": {
      "created_at": "2024-02-01T16:20:40.896+00:00",
      "updated_at": "2024-02-01T16:20:40.906+00:00"
    }
  }
}

Vacancy application created

Triggered instantly when a candidate applies or is added to a vacancy. Action: vacancy_application_create.

{
  "action": "vacancy_application_create",
  "data": {
    "id": 3102839,
    "candidate": { "id": 2151205, "full_name": "Jasmin Doe", "email": null },
    "vacancy": { "id": 56721, "title": "UX Designer" },
    "meta": {
      "created_at": "2024-02-01T16:27:14.814+00:00",
      "updated_at": "2024-02-01T16:27:14.814+00:00"
    }
  }
}

On this page