A candidate’s SEEK Profile may be purchased by a hirer in Talent Search .
This allows the hirer to view the profile on the SEEK platform,
but also makes it available for export into your recruitment software.
A
CandidateProfilePurchased
event is emitted when a hirer purchases a candidate profile in Talent Search.
Create a webhook subscription to trigger an export workflow when these events occur:Your software should display the candidate profile and resume attachment to the position’s hirer within 60 seconds of receiving a purchase event.
A webhook body containing a
CandidateProfilePurchased
event looks like so:JSON
Copy
{
"events": [
{
"id": "seekAnzPublicTest:event:events:N3P1rAeTfSy8UpE5p984Hd",
"type": "CandidateProfilePurchased",
"createDateTime": "2020-08-07T13:56:38.385Z",
"candidateProfileId": "seekAnzPublicTest:candidateProfile:purchased:HWxJyVNyio4JLWLmDY6eqV",
// This is only available for signed webhook subscriptions
"hirerId": "seekAnzPublicTest:organization:seek:93WyyF1h"
}
],
"subscriptionId": "seekAnzPublicTest:webhookSubscription:events:JurnLNCzY3T8wYRVLFWQNw",
"url": "https://example.com/webhook/candidate-profile-purchased"
}
The
candidateProfileId
provided within the webhook body is specific to that purchase event and cannot be used as a permanent stable identifier for the candidate. ThecandidateProfileId
remains valid for retrieval for a period of 90 days. Attempts to retrieve a CandidateProfile using a candidateProfileId
older than 90 days will result in a null response.A
CandidateProfile
from Talent Search contains candidate information,
a URL to the candidate’s resume file,
the organisation making the purchase,
and the position that the profile should be exported to in your software.It contains the following information from the candidate’s SEEK profile:
- Candidate name
- Email address
- Phone number (if provided)
- Information about the candidate’s current employment (if applicable), including employer name, role title, start date and description.
This information can be used to create a new candidate profile,
match on and update an existing candidate profile,
and help a hirer identify the candidate in your software.
When performing matching activities (e.g. determining if a new candidate record for the purchased profile needs to be created in your software),
using the candidate’s email address as the unique identifier is recommended.
The
positionOrganizations.id
and positionProfiles.profileId
values should be used to identify the corresponding position in your software that the purchased profile should be added to.The SEEK API does not translate user input and will serve SEEK profile information as supplied by the candidate.
As a result, your software may need to handle multilingual candidate data.
The
CandidateProfile
object and operations are shared with the Application Export use case.
See the documentation on exporting candidate profiles and exporting attachments for more information.The
candidateProfile
query accepts the event candidateProfileId
as input:query ($id: String!) {
candidateProfile(id: $id) {
candidate {
person {
name {
given
family
}
communication {
phone {
formattedNumber
}
email {
address
}
}
}
}
associatedPositionProfile {
profileId {
value
}
positionOrganizations {
id {
value
}
name
}
}
employment {
organization {
name
}
positionHistories {
start
end
title
descriptions
current
}
}
attachments {
seekRoleCode
url
}
}
}