Close Sidebar
Description

Binary files contain resume and other attached document information in iCIMS ATS.

API Examples

The supported commands for Binary files are as follows:

Example 1 - Retrieve and/or Update a Binary File

iCIMS is able to retrieve and update resume files. The supported requests are listed below. 

Notes:

The PATCH request will not accept binary files. It requires a`key:val`pair in the form-data. The value must specify the resume file. 

URL: 

https://api.icims.com/customers/{customerId}/{profileType}/{profileId}/fields/{fieldId}/binary

{fieldID} - The name of the field to retrieve. For custom fields, the format is field and then a numeric internal identifier such as field1234.

Action Definition
Get:

Retrieve the binary data of the field (if supported type such as File or Image field). This will return the actual binary file with its corresponding content-type and not JSON. If field is not a File or Image type, it will return an error.

https://api.icims.com/customers/1234/people/5/fields/resume/binary

HTTP/1.1 200 OK
Content-Type:application/msword

Post: Not supported
Patch:

Add/Update value

PATCH HTTP/1.1
Content-Disposition: attachment;filename="resume.doc"
Content-Type:multipart/form-data
{RAW BINARY CONTENT}
Payload: Content-Disposition: form-data; name="Content-Disposition: form-data; name="; filename="Resume.docx"

Response:
HTTP/1.1 204 No Content

Delete:

Delete value

Deletes the binary data stored within the given profileID and fieldID. 

Note: The resume field of a Person Profile cannot be deleted through the Profiles Web Services API, just as the field cannot be deleted by an end user.

Response:
HTTP/1.1 204 No Content

Example 2 - Retrieve Extracted Binary File Text

iCIMS is able to retrieve extracted resume text instead of the binary representation of the file. If the file doesn't have extracted text the new endpoint will attempt to extract the text on demand. iCIMS will give up on text extraction calls after 1 minute and 30 seconds and make two attempts to extract text. The response will be a 404 if text cannot be extracted from the document or if the document doesn't exist. Otherwise, a HTTP 200 response will be returned along with a multi-part response of a text file which contains the extracted text. The binary response contains a UTF8 encoded text/plain content type file with an appropriate document name followed by a .txt extension.

Notes:

  • The following files are available for text extraction by default, though client configurations may vary: pdf, doc, docx, odt, wpd, wri, ods, rtf, txt, xls, xlsx, ppt, pptx, odp, zip, rar, htm, html, dot, dotx, xlt, xltx, tif, tiff, jpg, jpeg, png, gif, bmp, gz, dcx, pcx, jp2, jpc, jfif

  • This new endpoint does not support updating (PATCH, DELETE, POST); it only supports retrieving new content using GET.

  • In addition, a new fileText link will be included when you reference a field.      resume: {         file: "https://api.icims.com/customers/4766/people/100/fields/resume/binary"         filename: "100_Neil_Tyson_28_Resume.doc"         fileText: "https://api.icims.com/customers/4766/people/100/fields/resume/text"      }

URL: 

https://api.icims.com/customers/1234/people/5/fields/resume/text

Action Definition
Get:

Example call and response:

https://api.icims.com/customers/4766/people/100/fields/resume/text

HTTP/1.1 200 OK 

content-disposition: attachment; filename = 100_Ramon_Cohen_28_Resume.txt 

X-Content-Type-Options: nosniff

X-TRANSACTION: {7FA13FD5-CAF8-AA1C-E6BA-52A9A9A8C6D8}

X-RateLimit-Limit: 500000 X-RateLimit-Remaining: 499689

X-RateLimit-Reset: 10543 

Date: Fri, 08 Aug 2014 21:04:16 GMT 

Vary: Accept-Encoding 

Strict-Transport-Security: max-age=7776000 

Content-Type: text/plain;charset=utf-8 

Content-Encoding: gzip 

Transfer-Encoding: chunked 

 

Ramon Cohen

...

..

.

Post: Not Supported
Patch: Not Supported
Delete: Not Supported
Errors: The response will be a 404 if text cannot be extracted from the document or if the document doesn't exist.

Example 3 - Retrieve PDF Version of Resume

iCIMS is able to retrieve resumes converted to PDFs in addition to the binary representation of the file (e.g., MS Word file). If the resume is not already a PDF, this endpoint will convert the document to a PDF on demand. 

An HTTP 200 response is returned along with a multi-part response of a PDF file, containing the PDF version of the resume. The binary response contains an application/pdf content type file with an appropriate document name followed by a .pdf extension. If the resume cannot be converted to PDF, a 500 response is returned. 

Notes:

  • This endpoint only applies to resumes
  • The following file extensions are supported for conversion to PDF: html, htm, doc, docx, rtf, odt, xml, txt, png, jpg, jpeg, svg, tif, tiff
  • This endpoint does not support updating (PATCH, DELETE, POST); it only supports retrieving content using GET

URL: 

https://api.icims.com/customers/1234/people/5/fields/resume/pdf

Action Definition
Get:

Example call and response:

https://api.icims.com/customers/1234/people/100/fields/resume/pdf

HTTP/1.1 200 OK

content-disposition: attachment; filename = 100_Ramon_Cohen_28_Resume.pdf

X-Content-Type-Options: nosniff

X-TRANSACTION: {7FA13FD5-CAF8-AA1C-E6BA-52A9A9A8C6D8}

X-RateLimit-Limit: 500000

X-RateLimit-Remaining: 499689

X-RateLimit-Reset: 10543

Date: Fri, 08 Aug 2014 21:04:16 GMT

Vary: Accept-Encoding

Strict-Transport-Security: max-age=7776000

Content-Type: application/pdf

Content-Encoding: gzip

Transfer-Encoding: chunked

 

Ramon Cohen

...

..

.

Post: Not supported
Patch: Not supported
Delete: Not supported
Errors: A 500 response is returned if the resume cannot be converted to PDF.

Example 4 - CURL Command 

curl https://api.icims.com/customers/2780/people/117/fields/resume/binary -X PATCH -k -H
"Expect:"
-F "resume=@testdocument.txt;type=text/plain" -H "Authorization: Basic <YOURUSERNAMEANDPASSWORDBASE64ENCODED>"

Example 5 - CURL Command Explained

curl https://api.icims.com/customers/<CustomerID>/people/<Candidate SystemID>/fields/<Field Identifier>/binary -X PATCH -k -H "Expect:"

-F "resume=@<local resume file path>;type=<file content type> " -H "Authorization: Basic <YOURUSERNAMEANDPASSWORDBASE64ENCODED>"

Example 6 - Resume Upload with Corresponding Response

Note: Binary data has been stripped from the request.

 

Request:

PATCH /customers/<CustomerID>/people/<Candidate SystemID>/fields/<FieldType>/binary HTTP/1.1

User-Agent: curl/7.24.0 (i386-pc-win32) libcurl/7.24.0 OpenSSL/0.9.8t zlib/1.2.5

Host: api.icims.com

Accept: */*

Authorization: Basic <YOURUSERNAMEANDPASSWORDBASE64ENCODED>

Content-Length: 6818

Content-Type: multipart/form-data; boundary--------------------------------88014d16cc70--

Content-Disposition: form-data; name="resume"; filename="testdocument.txt"

Content-Type: text/plain

<binary>

------------------------------88014d16cc70--

Response:

HTTP/1.1 204 No Content

Cache-Control: no-cache,no-store,no-transform,must-revalidate,max-age=0,s-maxage=0

Content-Language: en_US,us

Content-Encoding: UTF-8

X-Content-Type-Options: nosniff

X-TRANSACTION: {B2A45E89-4176-FE5E-8541-36A324640AF7}

X-RateLimit-Limit: 25000

X-RateLimit-Remaining: 23815

X-RateLimit-Reset: 33715

Date: Thu, 06 Sep 2012 14:38:05 GMT

Strict-Transport-Security: max-age=7776000