Pulling and mapping jobs - common Posting API uses
Posting API uses
This article describes the most common uses and scenarios where Posting API is the most useful.
Advantages
-
lack authentication- no API key needed.
-
using this API allows pulling all the jobs of the customer- the list of jobs pulled through that API reflects the jobs posted to the SmartRecruiters career page
-
Posting API jobs list returns custom job fields.
Please note:
-
default integration will provide limited control to the user over which jobs to pull
-
available feed format is JSON only
This solution might not be suitable for all the customers- some users prefer to have control over which jobs to post.
Most common uses
Where pulling all the customer’s jobs makes the most sense to have the largest window of opportunity.
GET/v1/companies/{companyIdentifier}/postings
You need: CompanyIdentifier- identifier unique for each company, contact Partners Team to obtain it for your customer and/ or your sandbox
Request URL example:
Obtaining additional data- custom job fields
If you require additional information, not supported by the standard response body you can request the customer to introduce additional custom fields. These can be used to pull and push additional information, such as cost center assignment, internal division, confirmation or denial of certain requirements (eg. “push to application”).
The values of these fields can be manipulated using APIs, but they need to be created manually by the customer.
How to do it: Click Here
Once created, the fields can be associated with certain jobs and displayed in the Posting API GET/postings response body under “customField” (“properties”)
Custom fields recognition
In the return body you can see:
"customField": [
{
"fieldId": "5c98ade7cff47e00067f8cb8",
"fieldLabel": "Internal Division",
"valueId": "1714e986-8978-4fef-b6b5-f7652a4992fa",
"valueLabel": "HQ"
},
{
"fieldId": "58b83183e4b08fd8c9055c49",
"fieldLabel": "Brands",
"valueId": "1b093680-9bc3-4fde-b64a-760084e32a93",
"valueLabel": "Monika Test Brand"
“valueLabel” is the answer you’re looking for.
To check all the possible values use this method:
Find the “fieldLabel” you’d like to find the values for (example: Internal Division)
- Use GET/configuration/job-properties
- Use the “id” obtained above in GET/configuration/job-properties/{id}/values
The response body will return all the values that can be selected by the customer and/ or pushed back by you.
{
"totalFound": 4,
"content": [
{
"id": "0bcba473-ae17-4ffa-8027-2b5349b12d09",
"label": "Germany East",
"archived": false
},
{
"id": "5243055b-6d73-4968-956e-bf52842ef088",
"label": "Germany West",
"archived": false
},
{
"id": "1714e986-8978-4fef-b6b5-f7652a4992fa",
"label": "HQ",
"archived": false
},
{
"id": "c17baa31-0b7d-42d0-93bb-e9e0aef81c3d",
"label": "Other",
"archived": false
}
]
}
If the “valueLabel” can be created and pushed back to SmartRecruiters:
POST/configuration/job-properties/{id}/values
Or update and change it:
PATCH/configuration/job-properties/{id}/values/{valueId}
How to obtain screening questions via Customer API
There is a bridge between Posting API and Customer API.
Once you obtain the UUID of the desired posting from Posting API, use that UUID in GET /postings/{uuid}/configuration
Both Marketplace API key and OAuth refresh token will work here.