• No results found

Display job ads

After your software has synced a position, the SEEK API can notify you when Ad Sync posts or updates a corresponding job ad. This is driven by asynchronous lifecycle events as SEEK may not process the position sync in real time.When your software receives a Job Posting event and retrieves the corresponding PostedPositionProfile object from our GraphQL endpoint, correlate it to a position in your software via identifiers & references, then display it in your job ad list view. This improves hirer understanding and reduces the likelihood that they will inadvertently post a duplicate ad via classic or Enhanced Job Posting.An open position is not guaranteed to be automatically posted by Ad Sync. Hirers can specify rules to exclude certain positions, and data duplication or quality issues may prevent Ad Sync from advertising the position.

Posting sources

Your software must differentiate job ads that were automatically posted by Ad Sync from those that a hirer manually posted.It is recommended to drive this differentiation off of the seekPostingSourceCode available when querying the state of a PostedPositionProfile, otherwise you can use a posting source value that your software stores at the time of posting.Include an (Ad Sync) qualifier in the channel or source field of your software. Your software may also support advanced sorting and filtering by this field.
ReferenceTitle
Source
StatusCreatedActions
AD-123Señor business analyst
SEEK (Ad Sync)
Active2048-01-01
If this is not feasible, your software may add an (Ad Sync) prefix to the title field of the job ad.
Reference
Title
SourceStatusCreatedActions
AD-123
(Ad Sync) Señor business analyst
SEEKActive2048-01-01
When querying the state of a PostedPositionProfile, your software will receive different seekCreatedBySelfIndicator and seekPostingSourceCode values depending on the posting source.
Ad Sync via SEEK APIAd Sync via feeds & web scrapingJob Posting via SEEK APISEEK Employer website
Copy
// Treat as automated posting
{
  "seekCreatedBySelfIndicator": true,
  "seekPostingSourceCode": "AdSync"
}

Lifecycle events

Subscribe to PositionNotPosted, PositionProfilePosted, PositionProfileUpdated, and PositionProfileClosed events to keep your software in sync. See our event documentation for more context.

PositionNotPosted

A PositionNotPosted event will be emitted whenever a position cannot be posted on SEEK, whether due to insufficient information in the syncPositions mutation, an issue with the hirer’s SEEK account or Ad Sync configuration, an intentional exclusion via the hirer’s Ad Sync rules, or following a job ad being edited outside of Ad Sync (e.g. directly on the SEEK Employer website or through Classic or Enhanced Job Posting), which prevents future Ad Sync updates from propagating to the job ad.Your software may surface a SEEK provided message explaining why the position wasn’t posted and guidance on how to resolve it.
ReferenceTitleSourceStatusCreatedActions
AD-123Señor business analystSEEK (Ad Sync)
Not Posted
2048-01-01
AD-456Software EngineerSEEK (Ad Sync)
Couldn't Post
2048-02-01
To determine why a position was not posted, use the reasonId included in the PositionNotPosted event to query positionNotPostedReason. This will return a detailed explanation and suggested actions for the specific posting failure.To retrieve a list of historical reasons associated with a position, use the seekPartnerPositionId included in the PositionNotPosted event to query positionNotPostedReasons.To test how your software handles PositionNotPosted events, include a supported key in positionTitle when calling the syncPositions mutation.For example, setting positionTitle to include EXPIRED_AD will prevent the job ad from being posted on SEEK and emit a PositionNotPosted event.
Input snippet
Copy
{
  "positionTitle": "Senior Business Analyst EXPIRED_AD"
}
Some example keys you can use to test different scenarios:
  • CATEGORY_INFERENCE_FAILED
  • EXPIRED_AD
  • LOCATION_INFERENCE_FAILED
  • SALARY_INFERENCE_FAILED
Note These keys are for testing purposes only. The content and mapping of these codes is subject to change and should not be relied upon.

PositionProfilePosted

Once a job ad has been posted, provide options to view the job ad on SEEK, and to manage the job ad via classic or Enhanced Job Posting. The latter allows hirers to further tailor the content of job ads posted via Ad Sync.
ReferenceTitleSourceStatusCreatedActions
AD-123Señor business analystSEEK (Ad Sync)
Active
2048-01-01

PositionProfileUpdated

Hirers can use the SEEK Employer website or a classic or Enhanced Job Posting integration to edit job ads posted via Ad Sync. Keep the details in your software in sync with these changes.Directional A new PostedPositionProfile.seekStatusCode field is available for your software to select. This will be Active while the job ad is listed on our employment marketplace.
ReferenceTitleSourceStatusCreatedActions
AD-123
Senior business analyst
SEEK (Ad Sync)
Active
2048-01-01
Directional In rare cases, SEEK may flag a job ad after it has been posted, move it to a Suspended status, and emit another PositionProfileUpdated event.This may be caused by duplicate job ads being posted under the same hirer account, or issues with the job ad content.Your software may include a call to action for hirers to reactivate suspended job ads by contacting SEEK.Directional Ad Sync may be extended in a later release to emit a PositionNotPosted event when an update to a position profile has failed.
ReferenceTitleSourceStatusCreatedActions
AD-123Senior business analystSEEK (Ad Sync)
Suspended
2048-01-01

PositionProfileClosed

Expiration is a terminal state for the job ad. Disable the action to view it on SEEK.Directional Provide an option to re-post the job ad via Enhanced Job Posting, once available.
ReferenceTitleSourceStatusCreatedActions
AD-123Senior business analystSEEK (Ad Sync)
Expired
2048-01-01