When a candidate applies using SEEK’s Apply Form they’ll be prompted to attach a cover letter and a resume.
They may choose an existing document, upload a new one, or decide to omit the attachment entirely.A SEEK hirer can be configured to prompt for a third attachment referred to as “selection criteria”.
This allows the hirer to request an additional document relevant to the job’s industry.Partners must download attachment files associated with a particular candidate application.
If your software supports resume parsing, the hirer must still be provided with a method of downloading the attachments.Before you start with attachment queries, you will need to request a partner token.Use the GraphQL Because GraphQL does not efficiently support binary data, the attachment itself is provided over HTTPS.
Each attachment has a unique download URL provided in the
The
candidateProfile
query to list candidate application attachments.
You should combine this with the query you use to retrieve candidate profiles and questionnaire submissions.query ($id: String!) {
candidateProfile(id: $id) {
attachments {
descriptions
seekRoleCode
url
}
}
}
url
field of the GraphQL response.Your software can download attachments on demand or at time of candidate application.You can download each attachment on demand when requested by a hirer reviewing the candidate application.
This avoids having to store large and potentially sensitive documents within your software.The attachment can be downloaded directly from the hirer’s browser using a browser token with the download:candidate-profile-attachments
scope.
The SEEK API will automatically validate that the hirer is allowed to access the requested attachment.Otherwise, you can proxy the download through your server using a partner token.
Your software will need to validate that the user is allowed to access requested attachment.An attachment will remain for 180 days after the close date of its associated job ad.
If your software needs to access attachments for longer than 180 days you should download them at the time of candidate application.If on-demand downloads aren’t feasible, you can download attachments when you receive a CandidateApplicationCreated
event.
This would be needed if your software performed resume parsing on incoming candidate applications, for example.This can reuse the same partner token you used to query the candidate application from GraphQL.Attachment files have additional metadata returned in standard HTTP headers.
These headers can be parsed by your software or passed to the hirer’s browser when they download the attachment.You can use the HTTP HEAD
method to retrieve an attachment’s metadata without downloading its contents.
This is useful to display the attachment’s metadata before downloading it on demand.The Content-Disposition
header contains the attachment’s original filename encoded using RFC 6266 .We recommend parsing the filename using a library or framework that supports RFC 6266 .
This ensures your software is robust against filenames containing spaces, quotes or other special characters.The Content-Length
header indicates the size of the attachment in bytes.
This can be retrieved using the HTTP HEAD
method to display the attachment’s size before downloading it on demand.The Content-Type
header indicates the file format of the attachment.
Alternatively, you can extract the attachment’s file extension from its Content-Disposition
.The SEEK API does not guarantee a fixed set of file formats; they are subject to change without notice.
Avoid attempts to manually parse the Content-Type
or Content-Disposition
headers.
Instead, propagate these headers for the end-user client to handle.Common file formats for attachments are:Example Content-Type | File format | Example extension |
---|---|---|
application/msword | Microsoft Word 97-2004 | .doc |
application/vnd.openxmlformats-officedocument.wordprocessingml.document | Microsoft Word (OpenXML) | .docx |
application/rtf | Rich Text Format (RTF) | .rtf |
application/pdf | Portable Document Format (PDF) | .pdf |
text/plain or text/plain; charset=utf8 | Plain text | .txt |
Last-Modified
header contains the date the attachment was uploaded or generated.SEEK processes attachments to reduce the risk to hirers reviewing candidate applications:- Attachments are scanned for viruses before the candidate application is made visible to partners. Any files containing viruses are removed from the candidate application.
- Attachments may be modified to remove dangerous content such as macros or phishing links.