{"activeVersionTag":"latest","latestAvailableVersionTag":"latest","collection":{"info":{"_postman_id":"df3625f0-1bb3-485a-9ac3-309ed0e0aa33","name":"ATS-CONNECT API","description":"<p>ATS Connect acts as an intermediary controller between client-side code and the Applicant Tracking System [ATS].</p>\n\n<h2>Authentication</h2>\n\n<p>To use ATS Connect you must provide your API key in the header of your POST call. Always keep your API key secret!</p>\n\n<p>All requests must be made over an encrypted<a href=\"http://en.wikipedia.org/wiki/HTTP_Secure\">HTTPS</a>connection.</p>\n\n```\nPOST /job/get HTTPS/1.1\nHost: api.ats-connect.com\napikey: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx\nContent-Type: application/json\nAccept: application/json\nCache-Control: no-cache\n\n ```\n\n<h2>Call Basics</h2>\n\n<p>All calls made to ATS Connect are <b>POST</b> calls.</p>\n\n<p>There are two sets of hashes that are sent in the body of the call when a post is intitiated:</p>\n\n<ul><li><p><b>api_connect_data</b> - the ats credentials, along with various variables for debugging and development.</p></li><ul><li><p>api_connection: the credentials for the specific ATS</p></li><li><p>vendor: the specific ATS</p></li><li><p>api_performance_dump: if set to '1' will dump each call made in the process to the error log</p></li><li><p>api_verbose_dump: if set to '1' will dump to the error log full details of the last call made</p></li></ul></ul>\n\n<p><b>Example:</b></p>\n\n```\n\"api_connect_data\":{\n    \"api_connection\":{[ATS specific credentials]},\n    \"vendor\":\"bullhorn\",\n    \"api_performance_dump\":0,\n    \"api_verbose_dump\":0\n}\n\n ```\n\n<ul><li><p><b>api_request_data</b> - the information being sent in the request as three separate hashes, however, not all calls utilize or even need them.&nbsp;Please refer to each call. See below.</p></li><ul><li><p><b>api_request_query</b> - a hash of key:value parameters that you want to query for</p></li><li><p><b>api_request_fields</b>- values separated by spaces - the fields you want returned in addition to the default fields</p></li><li><p><b>api_request_custom</b> - a hash of key:value parameters specific to the ATS</p></li></ul></ul>\n\n<p><b>Example:</b></p>\n\n```\n\"api_request_data\":{\n    \"api_request_query\":{\n        \"first_name\":\"Joe\",\n        \"last_name\":\"Smith\"\n    },\n    \"api_request_fields\":\"password dateAdded\",\n    \"api_request_custom\":\"\"\n}\n\n ```\n\n<p><b>Example of a complete call:</b></p>\n\n```\nPOST /candidate/get HTTPS/1.1\nHost: api.ats-connect.com\napikey: xxxxxxxxxxxxxxxxxxxxxxxxxxx\nContent-Type: application/json\nAccept: application/json\nCache-Control: no-cache\n{    \"api_connect_data\":{        \"api_connection\":{            \"api_un\":\"haley.marketing\",            \"api_pw\":\"Haley2016bh!!\",            \"api_id\":\"xxxxxxxxxxxxx\",            \"api_secret\":\"xxxxxxxxx\"        },        \"vendor\":\"bullhorn\",        \"api_performance_dump\":0,        \"api_verbose_dump\":0    },    \"api_request_data\":{        \"api_request_query\":{            \"first_name\":\"Joe\",            \"last_name\":\"Smith\"        },        \"api_request_fields\":\"password dateAdded\",        \"api_request_custom\":\"\"    }}\n\n ```\n\n<h2>Call Breakdown</h2>\n\n<h3>Get/Search Calls</h3>\n\n<ul><li><p><b>api_request_query:</b> A hash, the key:value pairs you wish to query for. The keys being values from the default request fields (see below). <b>NOTE:</b> If the ATS supports searching, please see the documentation below for the specific syntax for searches.<br></p></li><li><p><b>api_request_fields:</b> You may specify additional fields you want returned by populating this parameter with space separated values. This list will accept both default request fields and ATS specific fields.<br><br></p><h4>Default Fields Returned:</h4><p>Unless specified by the \"api_request_fields\" parameter, these are the values returned by default. If a value is not supported by the ATS the value is returned as null.</p><p><u><b>JOBS</b></u></p><ul><li><p>id</p></li><p></p><li><p>title</p></li><p></p><li><p>status</p></li><p></p><li><p>date_added</p></li><p></p><li><p>pay_rate</p></li><p></p><li><p>address</p></li><p></p><li><p>description</p></li><p></p><li><p>type</p></li><p></p><li><p>category</p></li><p></p><li><p>reply_to</p></li><p></p><li><p>url</p></li><p></p><li><p>rep_user</p></li><p></p><li><p>requirements</p></li><p></p></ul><p><u><b>CANDIDATES</b></u></p><ul><li><p>id</p></li><p></p><li><p>first_name</p></li><p></p><li><p>last_name</p></li><p></p><li><p>email</p></li><p></p><li><p>phone</p></li><p></p><li><p>cell_phone</p></li><p></p><li><p>address</p></li><p></p><li><p>date_of_birth</p></li><p></p><li><p>disability</p></li><p></p><li><p>ethnicity</p></li><p></p><li><p>gender</p></li><p></p><li><p>veteran</p></li><p></p><li><p>opt_out</p></li><p></p><li><p>referral_source</p></li><p></p><li><p>description</p></li><p></p><li><p>resume_html</p></li><p></p><li><p>date_added</p></li><p></p><li><p>skills</p></li><p></p><li><p>pay_rate</p></li><p></p><li><p>title</p></li><p></p><li><p>type</p></li><p></p><li><p>categories</p></li><p></p><li><p>category</p></li><p></p><li><p>rep_user</p></li></ul><p><u><b>APPLICATIONS</b></u></p><ul><li><p>id</p></li><p></p><li><p>status</p></li><p></p><li><p>candidate</p></li><p></p><li><p>job</p></li><p></p><li><p>note</p></li><p></p><li><p>referral_source</p></li><p></p><li><p>rep_user</p></li></ul></li></ul>\n\n<h3>Set/Update Calls</h3>\n\n<ul><li><p><b>api_request_query:</b> A hash, the key:value pairs you wish to submit to the ATS. The keys being values from the default request fields.<br></p></li><li><p><b>api_request_custom:</b> You may submit additional ATS specific data by populating this parameter with a hash, the keys being from the specific ATS in use.<br></p></li></ul>\n\n<h3>Custom Calls</h3>\n\n  \nThese parameters are used **only** when making a custom call. Not all ATSs allow for custom calls, please see documentation below.  \n\n<ul><li><p><b>api_custom_call</b> - single value e.g. ‘Candidate’, ‘Job’, ‘Application’</p></li><li><p><b>api_custom_action</b>- single value e.g. 'GET' or 'POST'</p></li><li><p><b>api_request_query</b> - optional - see specific call documentation below</p></li><li><p><b>api_request_fields</b>- optional - see specific call documentation below</p></li><li><p><b>api_request_custom</b> - optional - see specific api documentation for the specific ATS</p></li></ul>\n\n<h2>Successful Response</h2>\n\n<p>ATS Connect's successful response consists of four bodies of data: atsconnect_ticket, atsconnect_status, atsconnect_message, and api_response.</p>\n\n<ol><li><p><b>atsconnect_ticket</b> will contain the call specifics</p></li><li><p><b>atsconnect_status</b> will contain a single digit '1' or '0' for success or fail respectively</p></li><li><p><b>atsconnect_message</b> will be empty if atsconnect_status is 1 and will contain an error message if atsconnect_status is 0.</p></li><li><p><b>api_response</b> will contain all of the api call data, inlcluding the api status, call attempts, call time, messages, and the returned api data</p></li></ol>\n\n<p><b>Example:</b></p>\n\n```\n{\n    \"atsconnect_ticket\": {\n        \"request\": {\n            \"call\": \"https://rest9.bullhornstaffing.com/rest-services/infm1/search/Candidate?count=100&query=isDeleted:0 AND email:test5@Test071316.com&showEditable=false&meta=off&sort=-id&fields=id,email,firstName,lastName,address,comments&BhRestToken=xxxxxxxx&start=0\",\n            \"values\": \"\"\n        },\n        \"fn\": \"_api_candidate\",\n        \"key\": \"xxxxxxxxxxxx\",\n        \"elapsed\": \"0.647253\",\n        \"api version\": \"1.0\",\n        \"vendor\": \"bullhorn\"\n    },\n    \"atsconnect_status\": \"1\",\n    \"atsconnect_message\": \"\",\n        \"api_response\": {\n        \"api_status\": \"1\",\n        \"api_log\": {\n            \"CALL_ATTEMPTS\": 1,\n            \"CALL_STATUS\": 1,\n            \"CALL_REQUEST\": \"Candidate\",\n            \"CALL_TIME\": 0.575668,\n            \"CALL_ACTION\": \"GET\",\n            \"TIMESTAMP\": \"2016-11-28T15:33:59\",\n            \"APIKEY\": \"xxxxxxx\",\n            \"MESSAGE\": \"Success\",\n            \"VENDOR\": \"bullhorn\"\n        },\n        \"api_data\": {\n            \"count\": 1,\n            \"candidates\": [ {\n                \"address\": {\n                    \"country\": \"CA\",\n                    \"address1\": \"123 Any Street\",\n                    \"zip\": \"04563\",\n                    \"address2\": null,\n                    \"state\": \"MAINE\",\n                    \"city\": \"Portland\"\n                },\n                \"phone\": null,\n                \"first_name\": \"Test5\",\n                \"email\": \"test5@Test071316.com\",\n                \"resume_data\": null,\n                \"last_name\": \"Test071316\",\n                \"api_request_custom\": {\n                    \"_score\": 1,\n                    \"comments\": \"\"\n                },\n                \"id\": 180\n                }\n            ]\n        }\n    }\n}\n\n ```\n\n<h2>Error Reporting</h2>\n\n<p>ATS Connect's error response can happen one of two ways: atsconnect failure, or an api failure.</p>\n\n<ol><li><p>If it is an ATS Connect error: <b>atsconnect_status</b> will contain a single digit '0' and <b>atsconnect_message</b> will contain the error message.</p></li><li><p>If it is an API error: <b>api_response-&gt;api_status</b> will contain a single digit '0' and <b>api_log -&gt; MESSAGE</b> will contain the error message.</p></li></ol>\n\n<p><b>Example of ATS Connect Error:</b></p>\n\n```\n{\n\"atsconnect_ticket\": {\n    \"request\": {\n        \"call\": \"\",\n        \"values\": \"\"\n    },\n    \"fn\": \"_api_authenticate\",\n    \"key\": \"xxxxxxxxxxx\",\n    \"elapsed\": \"0.026863\",\n    \"api version\": \"1.0\",\n    \"vendor\": \"bullhorn\"\n},\n\"atsconnect_status\": \"0\",\n\"atsconnect_message\": \"ERROR: Missing API Credentials\",\n\"api_response\": {\n    \"api_status\": \"0\",\n    \"api_log\": {},\n    \"api_data\": {}\n}\n}\n\n ```\n\n<p><b>Example of API Error:</b></p>\n\n```\n{\n    \"atsconnect_ticket\": {\n        \"request\": {\n            \"call\": \"https://rest9.bullhornstaffing.com/rest-services/infm1/search/Candidate?count=100&query=isDeleted:0 AND id:1&showEditable=false&meta=off&sort=-id&fields=id,address,status,submissions,email&BhRestToken=xxxxxxxxx&start=0\",\n            \"values\": \"\"\n        },\n        \"fn\": \"_api_candidate\",\n        \"key\": \"xxxxxxxxxxxxxxx\",\n        \"elapsed\": \"0.649892\",\n        \"api version\": \"1.0\",\n        \"vendor\": \"bullhorn\"\n    },\n    \"atsconnect_status\": \"1\",\n    \"atsconnect_message\": \"\",\n    \"api_response\": {\n        \"api_status\": \"0\",\n        \"api_log\": {\n            \"CALL_ATTEMPTS\": 2,\n            \"CALL_STATUS\": 0,\n            \"CALL_REQUEST\": \"Candidate\",\n            \"CALL_TIME\": 0.212243,\n            \"CALL_ACTION\": \"GET\",\n            \"TIMESTAMP\": \"2016-11-28T16:11:18\",\n            \"APIKEY\": \"xxxxxxxx\",\n            \"MESSAGE\": \"{  \\\"errorMessage\\\" : \\\"Error parsing fields at position 5, message: missing EOF at 'id'\\\"}\",\n            \"VENDOR\": \"bullhorn\"\n        },\n        \"api_data\": {}\n    }\n}\n\n ```","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","isPublicCollection":false,"owner":"388433","team":135879,"collectionId":"df3625f0-1bb3-485a-9ac3-309ed0e0aa33","publishedId":"RWTptHM3","public":true,"publicUrl":"https://apidocs.ats-connect.com","privateUrl":"https://go.postman.co/documentation/388433-df3625f0-1bb3-485a-9ac3-309ed0e0aa33","customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"EF5B25"},"documentationLayout":"classic-double-column","version":"8.10.1","publishDate":"2019-12-16T18:24:34.000Z","activeVersionTag":"latest","documentationTheme":"light","metaTags":{},"logos":{}},"statusCode":200},"environments":[],"user":{"authenticated":false,"permissions":{"publish":false}},"run":{"button":{"js":"https://run.pstmn.io/button.js","css":"https://run.pstmn.io/button.css"}},"web":"https://www.getpostman.com/","team":{"logo":"https://res.cloudinary.com/postman/image/upload/t_team_logo_pubdoc/v1/team/28629676e7b4717cae203ca47335300d1392a611c54c65eceb177bf97c97132f","favicon":"https://ats-connect.com/favicon.ico"},"isEnvFetchError":false,"languages":"[{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"HttpClient\"},{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"RestSharp\"},{\"key\":\"curl\",\"label\":\"cURL\",\"variant\":\"cURL\"},{\"key\":\"dart\",\"label\":\"Dart\",\"variant\":\"http\"},{\"key\":\"go\",\"label\":\"Go\",\"variant\":\"Native\"},{\"key\":\"http\",\"label\":\"HTTP\",\"variant\":\"HTTP\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"OkHttp\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"Unirest\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"Fetch\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"jQuery\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"XHR\"},{\"key\":\"c\",\"label\":\"C\",\"variant\":\"libcurl\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Axios\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Native\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Request\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Unirest\"},{\"key\":\"objective-c\",\"label\":\"Objective-C\",\"variant\":\"NSURLSession\"},{\"key\":\"ocaml\",\"label\":\"OCaml\",\"variant\":\"Cohttp\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"cURL\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"Guzzle\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"HTTP_Request2\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"pecl_http\"},{\"key\":\"powershell\",\"label\":\"PowerShell\",\"variant\":\"RestMethod\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"http.client\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"Requests\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"httr\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"RCurl\"},{\"key\":\"ruby\",\"label\":\"Ruby\",\"variant\":\"Net::HTTP\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"Httpie\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"wget\"},{\"key\":\"swift\",\"label\":\"Swift\",\"variant\":\"URLSession\"}]","languageSettings":[{"key":"csharp","label":"C#","variant":"HttpClient"},{"key":"csharp","label":"C#","variant":"RestSharp"},{"key":"curl","label":"cURL","variant":"cURL"},{"key":"dart","label":"Dart","variant":"http"},{"key":"go","label":"Go","variant":"Native"},{"key":"http","label":"HTTP","variant":"HTTP"},{"key":"java","label":"Java","variant":"OkHttp"},{"key":"java","label":"Java","variant":"Unirest"},{"key":"javascript","label":"JavaScript","variant":"Fetch"},{"key":"javascript","label":"JavaScript","variant":"jQuery"},{"key":"javascript","label":"JavaScript","variant":"XHR"},{"key":"c","label":"C","variant":"libcurl"},{"key":"nodejs","label":"NodeJs","variant":"Axios"},{"key":"nodejs","label":"NodeJs","variant":"Native"},{"key":"nodejs","label":"NodeJs","variant":"Request"},{"key":"nodejs","label":"NodeJs","variant":"Unirest"},{"key":"objective-c","label":"Objective-C","variant":"NSURLSession"},{"key":"ocaml","label":"OCaml","variant":"Cohttp"},{"key":"php","label":"PHP","variant":"cURL"},{"key":"php","label":"PHP","variant":"Guzzle"},{"key":"php","label":"PHP","variant":"HTTP_Request2"},{"key":"php","label":"PHP","variant":"pecl_http"},{"key":"powershell","label":"PowerShell","variant":"RestMethod"},{"key":"python","label":"Python","variant":"http.client"},{"key":"python","label":"Python","variant":"Requests"},{"key":"r","label":"R","variant":"httr"},{"key":"r","label":"R","variant":"RCurl"},{"key":"ruby","label":"Ruby","variant":"Net::HTTP"},{"key":"shell","label":"Shell","variant":"Httpie"},{"key":"shell","label":"Shell","variant":"wget"},{"key":"swift","label":"Swift","variant":"URLSession"}],"languageOptions":[{"label":"C# - HttpClient","value":"csharp - HttpClient - C#"},{"label":"C# - RestSharp","value":"csharp - RestSharp - C#"},{"label":"cURL - cURL","value":"curl - cURL - cURL"},{"label":"Dart - http","value":"dart - http - Dart"},{"label":"Go - Native","value":"go - Native - Go"},{"label":"HTTP - HTTP","value":"http - HTTP - HTTP"},{"label":"Java - OkHttp","value":"java - OkHttp - Java"},{"label":"Java - Unirest","value":"java - Unirest - Java"},{"label":"JavaScript - Fetch","value":"javascript - Fetch - JavaScript"},{"label":"JavaScript - jQuery","value":"javascript - jQuery - JavaScript"},{"label":"JavaScript - XHR","value":"javascript - XHR - JavaScript"},{"label":"C - libcurl","value":"c - libcurl - C"},{"label":"NodeJs - Axios","value":"nodejs - Axios - NodeJs"},{"label":"NodeJs - Native","value":"nodejs - Native - NodeJs"},{"label":"NodeJs - Request","value":"nodejs - Request - NodeJs"},{"label":"NodeJs - Unirest","value":"nodejs - Unirest - NodeJs"},{"label":"Objective-C - NSURLSession","value":"objective-c - NSURLSession - Objective-C"},{"label":"OCaml - Cohttp","value":"ocaml - Cohttp - OCaml"},{"label":"PHP - cURL","value":"php - cURL - PHP"},{"label":"PHP - Guzzle","value":"php - Guzzle - PHP"},{"label":"PHP - HTTP_Request2","value":"php - HTTP_Request2 - PHP"},{"label":"PHP - pecl_http","value":"php - pecl_http - PHP"},{"label":"PowerShell - RestMethod","value":"powershell - RestMethod - PowerShell"},{"label":"Python - http.client","value":"python - http.client - Python"},{"label":"Python - Requests","value":"python - Requests - Python"},{"label":"R - httr","value":"r - httr - R"},{"label":"R - RCurl","value":"r - RCurl - R"},{"label":"Ruby - Net::HTTP","value":"ruby - Net::HTTP - Ruby"},{"label":"Shell - Httpie","value":"shell - Httpie - Shell"},{"label":"Shell - wget","value":"shell - wget - Shell"},{"label":"Swift - URLSession","value":"swift - URLSession - Swift"}],"layoutOptions":[{"value":"classic-single-column","label":"Single Column"},{"value":"classic-double-column","label":"Double Column"}],"versionOptions":[],"environmentOptions":[{"value":"0","label":"No Environment"}],"canonicalUrl":"https://apidocs.ats-connect.com/view/metadata/RWTptHM3"}