This content provides an early look at an upcoming extension to the SEEK API. You may use it to scope integration effort, but the features described are not fully implemented and may be adjusted ahead of a production release.
Please check with your SEEK contact before starting any build work described here.
SEEK provides an Ad Performance Panel you can embed within your software to help hirers understand how each job ad is performing.
The widget displays job search views, job ad clicks, application starts and application completes.
It can also provide insights such as market performance, benchmarked against ads posted with similar job titles and locations.
Application completes will be visible for:
- Job ads using SEEK Optimised Apply , where candidates progress through native apply functionality on SEEK.
- Job ads handling applications within the ATS, via the Completion Signal
Please note that the Completion Signal must be implemented along with the Ad Performance Panel if any ads on your platform allow candidates to apply within the ATS.
The Ad Performance Panel is designed to present data for a single job ad on SEEK. To ensure relevance and context, it should be displayed in a view that directly corresponds to the specific job.
For instance:
- Within the “Job Details” view for a specific position
- Alongside existing metrics for an individual job
- As part of a job list, accessible via a button that reveals the panel in a pop-up
The Ad Performance Panel can be shown from when the job ad posted for as long as the
PositionProfile
remains available, as per the job ad lifecycle.
In the event that ad performance data for a requested job ad is unavailable, the panel will manage any errors internally and display appropriate messaging to the hirer.To maintain clarity, we recommend against displaying multiple instances of the Ad Performance Panel on the same page.
The Ad Performance Panel tracks our standard browser support policy.
Add the following script tag to the page where the Ad Performance Panel will be displayed:
HTML
Copy
<script
type="text/javascript"
src="https://integration.seek.com/panels/SeekApi.js"
></script>
The
SeekApi.render
function renders an instance of the panel in the specified DOM element, and should be called on page load or if the currently viewed job ad changes.The render function may throw errors if:
- The
containerNode
provided is not a validHTMLElement
JavaScript
Copy
SeekApi.render(containerNode, 'adPerformance', props);
containerNode
– (DOM Node) The DOM element to render the panel into.'adPerformance'
- The name of the panel to render.props
– Props for rendering the panel.
Modifying the
containerNode
or its children after the render
function has been called may lead to unexpected behaviour.Prop | Type | Description |
---|---|---|
getAuthToken | () => Promise<string> | Function to call to retrieve the browser token to use when calling the SEEK API. |
positionProfileId | string | The identifier of the job ad to be displayed. |
locale | string optional | Specifies the locale to display content in, e.g. en-AU . Please note that only en-AU is supported during the initial rollout of this panel, but future supported locales are outlined in the content localisation documentation. |
JavaScript
Copy
SeekApi.render(
document.getElementById('seekAdPerformanceContainerDiv'),
'adPerformance',
{
// Function to call to retrieve the browser token to use when calling the
// SEEK API, see "Step 3" for more details.
getAuthToken: () => {
return Promise.resolve('browser token');
},
// Object identifier for the job ad to be displayed.
positionProfileId: 'seekAnzPublicTest:positionProfile:jobAd:2782PZfXV'
}
);
- The panel loads and executes the
getAuthToken
function passed to it. - Your frontend requests a browser token from your backend.
- Your backend authenticates and authorises the user. Please note that your backend is responsible for ensuring the individual user is authorised to view ad performance information for this job.
- Your backend requests a browser token from the SEEK API for the appropriate hirer ID and
query:advertisement-performance query:position-profiles query:ontologies
scopes.
HTTP
Copy
POST https://graphql.seek.com/auth/token HTTP/1.1
Authorization: Bearer PARTNER_TOKEN_HERE
Content-Type: application/json
User-Agent: YourPartnerService/1.2.3
{
"hirerId": "seekAnzPublicTest:organization:seek:93WyyF1h",
"scope": "query:advertisement-performance query:position-profiles query:ontologies",
"userId": "317665"
}
- Your backend responds with the browser token.
- Your frontend returns the browser token from the
getAuthToken
function. - The panel completes initialising and displays the relevant ad performance data.