Application complete signal

The application complete signal signifies that a job application has been submitted in your recruitment software. It applies to positions that are either advertised on SEEK or have the Apply with SEEK button enabled. Note that it does not imply a candidate source or Apply with SEEK usage; Ad Performance analytics will only attribute completed applications where the candidate source is SEEK.Once a candidate has completed and submitted your apply form, your software must send an application complete signal to SEEK to signify form submission. The application complete signal requires a seek-token that your software received from the link out flow.The application complete signal is only required if your software supports posting job ads that link out to an external apply form.

Receiving the token

You will receive the token in a seek-token parameter appended to the query string of the posted applicationUri.
Text
Copy
https://example.com/position/123/apply?seek-token=eyJqb2JJZCI6MCwiY2FuZGlkYXRlSWQiOjAsInNlc3Npb25JZCI6IiJ9
The token is unique to that specific candidate, job ad and session, and should be stored for the duration of the application process.

Token lifecycle

Tokens remain valid for 30 days from the time of generation, and can be stored while a candidate drafts their application.Tokens do not need to be stored for more than 30 days. Should an expired token be provided to the sendSignal mutation, the SEEK API will internally handle the error and no error message will be returned.If a candidate returns to an apply form via the same SEEK link-out URL, you will receive a new seek-token. This should override any previous token for the job application when sending subsequent signals to SEEK.

Sending the application complete signal

When an application is submitted, supply the corresponding token to the sendSignal mutation.
MutationVariables
mutation ($input: SendSignalInput!) {
  sendSignal(input: $input)
}

Troubleshooting

sendSignal will return errors consistent with our documented GraphQL error responses. If your software receives authentication or transient server errors, it should retry sending of application complete signals as described in the documentation.A BAD_USER_INPUT error may occur if there is a structural issue with the token. Ensure the token being sent in sendSignal exactly matches a seek-token received with no additional encoding nor whitespace.We recommend that you log full requests and responses to the sendSignal mutation during development to facilitate debugging. Use a unique X-Request-Id for each request to assist in support investigations.