Reflecting job ads

    Suggestions will appear below the field as you type

    Reflecting job ads

      Suggestions will appear below the field as you type

      Reflecting job ads

      Reflecting job ads

      Job ad reflection is a specialised scenario where your software retrieves job ads posted to SEEK’s employment marketplace and reflects them on an internal job portal. Please discuss your use case with SEEK’s support team before implementing this feature. This ensures that we can provide appropriate guidance and support for your integration.

      Authentication & authorisation

      Follow our regular development process to onboard and authenticate to the SEEK API. You will need to supply a partner token when sending requests to our GraphQL endpoint; see our auth documentation for more details.
      SEEK will configure a JobPosting relationship with each of your hirers to authorise this scenario. You can view a list of your SEEK hirers and their relationships on the Developer Dashboard’s hirers page .

      Job Posting process

      1. Post job ad

      Your hirers can post job ads directly on the SEEK employer website if your software has not implemented the rest of the Job Posting use case. When a job ad has been successfully posted, it will be displayed on the SEEK candidate website, and we will queue up a webhook to be sent to your software.
      You can test subsequent steps of this process by posting job ads with your test hirer.

      2. Send PositionProfilePosted event

      Expose a public HTTPS endpoint in order to receive webhooks from the SEEK API.
      Then, configure a webhook subscription through the Developer Dashboard’s webhooks page . A signed, partner-scoped subscription is recommended in production for enhanced security and ease of maintenance.
      Field
      Value
      PositionProfilePosted
      seekAnz
      SeekHmacSha512
      Once the subscription is in place, we will POST to your HTTPS endpoint when a job ad is successfully posted to SEEK.
      This is an example of a webhook body containing a PositionProfilePosted event:
      JSON
      Copy
      {
        "events": [
          {
            "id": "seekAnzPublicTest:event:events:KNYEK91zoe8JoZU9iv6853",
            "type": "PositionProfilePosted",
            "createDateTime": "2019-08-20T21:02:24.611Z",
            // This can be passed to the `positionProfile` query
            "positionProfileId": "seekAnzPublicTest:positionProfile:jobAd:2782PZfXV",
            // This is only available for signed webhook subscriptions
            "hirerId": "seekAnzPublicTest:organization:seek:93WyyF1h"
          }
        ],
        "subscriptionId": "seekAnzPublicTest:webhookSubscription:events:Kyak8JfPKhHCAXM2s9b9wX",
        "url": "https://example.com/webhook"
      }

      3. Retrieve job ad

      You can retrieve job ad details from the SEEK API by supplying the positionProfileId from the prior step to the positionProfile query ; see querying a job ad for more details.
      Review the PostedPositionProfile object and use the job ads posted with your test hirer to decide which fields you wish to retrieve. This is an example query which additionally selects branding images associated with the job ad:
      QueryVariablesResult
      query ($id: String!) {
        positionProfile(id: $id) {
          postingInstructions {
            branding {
              images {
                typeCode
                url
              }
            }
          }
        }
      }
      Only include fields your software actually needs in the GraphQL query. This allows us to evolve our GraphQL schema without requiring adjustments to your software for field changes and deprecations that do not materially affect your end user experience.

      4. Add job ad to search index

      The SEEK API does not offer programmatic job search capabilities. Your software will need to ingest job ads into a search index to serve your internal job portal.

      Job closure process

      Our job ad lifecycle specifies a maximum period of 30 days for a job ad. Once a job ad reaches its scheduled end date, SEEK will automatically close it and queue up a webhook to be sent to your software.
      While you can retrieve the scheduled end date as part of the job ad, we recommend subscribing to the PositionProfileClosed event. You can configure a webhook subscription through the Developer Dashboard’s webhooks page . This will cover the scenario of a hirer or SEEK support member manually closing the job ad ahead of schedule.
      An example of a webhook body containing a PositionProfileClosed event can be found in closing a job ad. Use this event to remove the job ad from the search index that serves your internal job portal.

      Application process

      SEEK’s native apply functionality allows the application process to be hosted on SEEK.
      • The reflected listing on your internal job board should link back to the SEEK job details page where the candidate can apply for the job.
        You can retrieve this URL from the PostedPositionProfile.positionUri field .
      • If the candidate can view the full details of the job ad on your internal job board listing, you can skip SEEK’s job details page and link directly to our application form.
        You can retrieve this URL from the PostedPositionProfile.seekApplicationUri field .
      QueryVariablesResult
      query ($id: String!) {
        positionProfile(id: $id) {
          positionUri
      
      
          ... on PostedPositionProfile {
            seekApplicationUri {
              url
            }
          }
        }
      }
      Your hirers will be able to manage candidates for a job ad on the SEEK employer website . Implement the Application Export use case if you need to ingest applications into your applicant tracking system.