API Reference

Configuration

Manage account-level settings. Configure which candidate profile fields are mandatory before applications can be submitted.

Get Mandatory Fields

Returns your account's current mandatory field configuration. Any candidate profile missing these fields will be marked as incomplete and cannot be used for applications.

GET/config/mandatory-fields
curl https://apply-api.boringproject.ai/api/v1/config/mandatory-fields \
          -H "Authorization: Bearer bp_live_..."
Response200 OK
{
  "clientId": "client_xyz789",
  "mandatoryFields": [
    "personalInformation.email",
    "personalInformation.phoneNumber",
    "workExperience",
    "resumeUrl"
  ],
  "updatedAt": "2024-01-10T08:00:00Z"
}

Update Mandatory Fields

Updates which fields are required for complete candidate profiles. The system-required fields (`personalInformation.email`, `personalInformation.firstName`, `personalInformation.lastName`) cannot be removed — any request that omits them will return a 400 error.

Available fields: personalInformation.firstName, personalInformation.lastName, personalInformation.email, personalInformation.countryCode, personalInformation.phoneNumber, personalInformation.gender, personalInformation.address, personalInformation.city, personalInformation.state, personalInformation.zipCode, personalInformation.country, personalInformation.citizenship, workExperience, education, skills, languages, certifications, achievements, miscellaneous, resumeUrl. Note: personalInformation.email, personalInformation.firstName, and personalInformation.lastName are system-required and cannot be removed.
PUT/config/mandatory-fields
curl -X PUT https://apply-api.boringproject.ai/api/v1/config/mandatory-fields \
  -H "Authorization: Bearer bp_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "mandatoryFields": [
      "personalInformation.email",
      "personalInformation.phoneNumber",
      "personalInformation.firstName",
      "personalInformation.lastName",
      "workExperience",
      "education",
      "resumeUrl"
    ]
  }'
Response200 OK
{
  "clientId": "client_xyz789",
  "mandatoryFields": [
    "personalInformation.email",
    "personalInformation.phoneNumber",
    "personalInformation.firstName",
    "personalInformation.lastName",
    "workExperience",
    "education",
    "resumeUrl"
  ],
  "updatedAt": "2024-02-15T08:00:00Z"
}