The main purpose of our integrations is to share the candidate information from Recruitee to the Partner's service.

Payload

This is the information we will send when the user clicks the Send button.

POST {partner.urls.send_candidate} HTTP/1.1
Content-Type: application/json
Authorization: Bearer {token}

{
  "first_name": "Jon",
  "last_name": "Snow",
  "email": "[email protected]",
  "candidate_id": 1,
  "company_id": 1,
  "report_id": "bb83dc83-91b2-46a5-8a21-824067f29c68",
  "test_id": "2",
  "test_name": "Ruby"
}

📘

Recruitee does not send any emails to candidates about the tests.

Tests

List of assessment tests, background check packages, or reference check packages available to the customer to choose from and sent along with the candidate.

GET {partner.urls.tests} HTTP/1.1
Content-Type: application/json
Authorization: Bearer {token}
[
  {"name": "JavaScript", "id": 1},
  {"name": "Ruby", "id": 2},
  {"name": "PostgreSQL", "id": 3}
]

Inputs

Configure inputs shown in the modal and the information sent by updating partner.inputs. 3 inputs are configured by default and, at minimum, should be used.

{
  "inputs": [
    {
      "kind": "first_name",
      "name": "first_name",
      "required": true
    },
    {
      "kind": "last_name",
      "name": "last_name",
      "required": true
    },
    {
      "kind": "email",
      "name": "email",
      "required": true
    }
  ]
}

Additional inputs can be configured by updating partner.inputs.

Phone

If you'd set partner.inputs to just a phone input.

POST https://integrations.rc.recruitee.dev/api/p/{codename}/c/{company_id}/partner HTTP/1.1
Content-Type: application/json
Authorization: Bearer {token}

{
  "inputs": [
    {
      "kind": "phone",
      "name": "phone",
      "required": false
    }
  ]
}

This is the form the customer would see, allowing them to select a candidate's phone number.

Admin

If you'd set partner.inputs to just an admin.

POST https://integrations.rc.recruitee.dev/api/p/{codename}/c/{company_id}/partner HTTP/1.1
Content-Type: application/json
Authorization: Bearer {token}

{
  "inputs": [
    {
      "kind": "admin",
      "required": true
    }
  ]
}

This is the form the customer would see, allowing them to choose a Recruitee administrator.

You will receive this additional admin information in the partner.urls.send_candidate payload.

{
  "admin_id": 1,
  "admin_name": "Adam Hodowany",
  "admin_email": "[email protected]"
}

Offer

If you'd set partner.inputs to just an offer.

POST https://integrations.rc.recruitee.dev/api/p/{codename}/c/{company_id}/partner HTTP/1.1
Content-Type: application/json
Authorization: Bearer {token}

{
  "inputs": [
    {
      "kind": "offer",
      "required": true
    }
  ]
}

This is the form the customer would see, allowing them to choose the candidate's placement.

You will receive this additional admin information in the partner.urls.send_candidate payload.

{
  "offer_id": 282039,
  "offer_title": "Senior Marketer (Sample)"
}