Recruiter
List the roles you are working on
curl -X GET "https://external-api.paraform.com/api/external/v1/recruiter/active-roles?limit=50" \
-H "Authorization: Bearer $PARAFORM_API_KEY"
{
"roles": [
{
"id": "string",
"title": "string",
"company": {
"name": "string"
},
"status": "ACTIVE",
"locations": [
"string"
],
"workplaceType": "REMOTE",
"baseSalary": {
"currency": "string",
"min": 0,
"max": 0
},
"updatedAt": "2024-01-01T00:00:00.000Z",
"fee": {
"amountLowerBound": 0,
"percentOfSalary": 0,
"boostPercent": 0,
"bonusAmount": 0,
"firstSubmissionReward": 0
}
}
],
"nextCursor": "string"
}
Required scopes:
Rate limit:
roles:readRate limit:
default tier, 120 requests per minute per keyprimaryOnly, activeTrialOnly, singleSubmissionsOnly and paraAiOnly narrow the list. When several are true, a role matching ANY of them is returned. activeTrialOnly matches a trial still inside its window whose submission goal is not yet met. singleSubmissionsOnly and paraAiOnly match whether or not you also hold a primary slot on the role.
Ordered by the role’s last update, newest first, then role ID. Defaults to 50 roles; the maximum is 100. A page can hold fewer roles than limit, or none, while nextCursor is set; continue until nextCursor is null.
fee is what the placement pays you, the same figures listRecruiterRoles returns. Amounts are in baseSalary.currency; a null currency means it is not recorded. When your agency hides payment from its members, every fee field is null; agency owners always see fees. fee itself is null when the role’s fee cannot be read through this endpoint.
A confidential stealth role you are not assigned to shows as “Confidential (Stealth)”, with the company name removed from its title and locations.
Query parameters
string
Use true or false. Defaults to false. True matches roles where you hold a primary slot.
Allowed values:
true, false.string
Use true or false. Defaults to false. True matches primary slots whose trial is still in progress. A trial ends when its window closes or its submission goal is met.
Allowed values:
true, false.string
Use true or false. Defaults to false. True matches roles where you have an active single submission.
Allowed values:
true, false.string
Use true or false. Defaults to false. True matches roles where you have an active submission made from a ParaAI match.
Allowed values:
true, false.integer
default:"50"
Constraints: minimum 1, maximum 100.
string
Opaque continuation token. Reuse only with the same filters. Results are live, not a frozen snapshot.
Constraints: min length 1, max length 2048.
Response
object[]
required
Show roles properties
Show roles properties
string
required
string
required
string
required
Allowed values:
ACTIVE, PAUSED, CLOSED.string[]
required
string | null
required
Allowed values:
REMOTE, HYBRID, ON_SITE.object | null
required
string
required
Constraints: format
date-time.string | null
required
curl -X GET "https://external-api.paraform.com/api/external/v1/recruiter/active-roles?limit=50" \
-H "Authorization: Bearer $PARAFORM_API_KEY"
{
"roles": [
{
"id": "string",
"title": "string",
"company": {
"name": "string"
},
"status": "ACTIVE",
"locations": [
"string"
],
"workplaceType": "REMOTE",
"baseSalary": {
"currency": "string",
"min": 0,
"max": 0
},
"updatedAt": "2024-01-01T00:00:00.000Z",
"fee": {
"amountLowerBound": 0,
"percentOfSalary": 0,
"boostPercent": 0,
"bonusAmount": 0,
"firstSubmissionReward": 0
}
}
],
"nextCursor": "string"
}
⌘I
curl -X GET "https://external-api.paraform.com/api/external/v1/recruiter/active-roles?limit=50" \
-H "Authorization: Bearer $PARAFORM_API_KEY"
{
"roles": [
{
"id": "string",
"title": "string",
"company": {
"name": "string"
},
"status": "ACTIVE",
"locations": [
"string"
],
"workplaceType": "REMOTE",
"baseSalary": {
"currency": "string",
"min": 0,
"max": 0
},
"updatedAt": "2024-01-01T00:00:00.000Z",
"fee": {
"amountLowerBound": 0,
"percentOfSalary": 0,
"boostPercent": 0,
"bonusAmount": 0,
"firstSubmissionReward": 0
}
}
],
"nextCursor": "string"
}