Single - Uploading an XML Job Feed to Snagajob
This resource contains integration instructions for vendors interested in uploading an XML Job Feed for a single customer file directly to Snagajob.
XML feed examples
File Upload Process
Obtain a pre-signed URL by calling our public API route. ( Request to obtain the pre-signed information)
Upload your feed file to our S3 bucket using our example format. ( Request to upload your XML job feed)
Request to obtain the pre-signed information
Create a request to our API to receive the signed S3 bucket URL. A presigned upload URL will be returned.
The account identifier provided by Snagajob. Required if X-SAJ-Partner is not provided.
A key provided by Snagajob that represents the partner. Required if X-SAJ-Account is not provided.
The unique identifier of the partner's account. The value is owned by partner but shared with Snagajob. Required if X-SAJ-Partner is provided.
The date and time of the request in the RFC1123 format (eg: Mon, 31 Oct 2022 20:23:10 GMT). Dates older then 15 minutes will be rejected.
A string specific to the request and signed with a private key as described https://docs.snagajob.com/authentication/generating-the-x-saj-signature".
POST /v1/presigned-s3-posting-post HTTP/1.1
Host:
X-SAJ-Date: text
X-SAJ-Signature: text
Accept: */*
OK
{
"url": "https://example.com",
"fileUrl": "https://example.com",
"fields": {
"ANY_ADDITIONAL_PROPERTY": "text"
}
}
Example Request
curl 'https://developers.snagajob.com/api/v1/presigned-s3-posting-post' \
-X POST
-H 'X-SAJ-Partner: ThePartnerName' \
-H 'X-SAJ-PartnerAccount: ThePartnerAccountUniqueIdentifier' \
-H 'X-SAJ-Signature: <base64 encoded signature>' \
-H 'X-SAJ-Date: Mon, 31 Oct 2022 20:23:10 GMT'
Example Response
{
"fields" : {
"key" : "some_path/to_a_file/PP_8675309_20220413190807.xml",
"policy" : "<policy-value>",
"success_action_status" : "201",
"x-amz-algorithm" : "AWS4-HMAC-SHA256",
"x-amz-credential" : "AKIAIOSFODNN7EXAMPLE/20151229/us-east-1/s3/aws4_request",
"x-amz-date" : "20220420T000000Z",
"x-amz-security-token" : "<security-token>",
"x-amz-signature" : "<signature-value>"
},
"fileUrl" : "https://examplebucket.s3.amazonaws.com/some_path/to_a_file/PP_8675309_20220420190807.xml",
"url" : "https://examplebucket.s3.amazonaws.com"
}
Request to upload your XML job feed
The above response has all the necessary information to upload your XML job feed directly to a Snagajob S3 bucket.
Example Request
curl 'https://examplebucket.s3.amazonaws.com' \
-F policy=<policy-value> \
-F success_action_status=201 \
-F key=some_path/to_a_file/PP_8675309_20220420190807.xml \
-F x-amz-algorithm=AWS4-HMAC-SHA256 \
-F x-amz-credential=AKIAIOSFODNN7EXAMPLE/20151229/us-east-1/s3/aws4_request \
-F x-amz-signature=<signature-value> \
-F x-amz-security-token=<security-token> \
-F x-amz-date=20220420T000000Z \
-F file=@the_file_you_would_like_to_upload.xml
Last updated
Was this helpful?