API Responses
All clients have access to the v3 API for automatic vacancy import.
API v3 has the following functionality:
- XML vacancy format
- Value lists
- Import endpoint
- Authentication credentials
- Password management
- Error messages
- Success responses
- Request XML is validated by XSD schema (see Codebooks and schema) before import. Direct link to XSD: http://schema.lmc.cz/ei_std/xsd/ei_std_jd_2006-10-19.xsd
Example of successful response after successful import
HTTP/1.1 200 content-type: text/xml;charset=UTF-8
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<importStatusResponse>
<status>OK</status>
<message>OK</message>
<positionResultList>
<positionResult>
<success>true</success>
<positionName>Front end developer HTML, JAVASCRIPT</positionName>
<pdjdId>101</pdjdId>
</positionResult>
<positionResult>
<success>true</success>
<positionName>Java Developer</positionName>
<pdjdId>102</pdjdId>
</positionResult>
</positionResultList>
</importStatusResponse>Examples of error responses after unsuccessful import
Bad import URL
HTTP/1.1 401 content-type: text/xml;charset=UTF-8
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<importStatusResponse>
<status>UNAUTHORIZED</status>
<message>Authentication failed - import place does not exist!</message>
<positionResultList/>
</importStatusResponse>Bad credentials
HTTP/1.1 401 content-type: text/xml;charset=UTF-8
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<importStatusResponse>
<status>UNAUTHORIZED</status>
<message>Authentication failed - wrong credentials!</message>
<positionResultList/>
</importStatusResponse>Service is not active
HTTP/1.1 403 content-type: text/xml;charset=UTF-8
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<importStatusResponse>
<status>SERVICE_NOT_ACTIVE</status>
<message>Import service is not active - contact LMC support!</message>
<positionResultList/>
</importStatusResponse>The first position was not successfully imported
The position has an external link parameter, but the company has not activated the service for external link assessment.
HTTP/1.1 422 content-type: text/xml;charset=UTF-8
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<importStatusResponse>
<status>UNPROCESSABLE</status>
<message>An error(s) occurred while importing positions</message>
<positionResultList>
<positionResult>
<success>false</success>
<positionName>Example imported position 2020-02-07T11:55:07.771276</positionName>
<errorMessage>Not active service for assessment external link.</errorMessage>
</positionResult>
</positionResultList>
</importStatusResponse>First position imported successfully, the second was not
First position was successful. The second one has an external link parameter, but the company has not activated the service for external link assessment.
HTTP/1.1 207 content-type: text/xml;charset=UTF-8
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<importStatusResponse>
<status>MULTI_STATUS</status>
<message>Some imported positions contain error(s)</message>
<positionResultList>
<positionResult>
<success>true</success>
<positionName>Example imported position</positionName>
<pdjdId>123</pdjdId>
</positionResult>
<positionResult>
<success>false</success>
<positionName>Example imported position with external link</positionName>
<errorMessage>Not active service for assessment external link.</errorMessage>
</positionResult>
</positionResultList>
</importStatusResponse>Import of already existing vacancy
A vacancy already exists in Teamio with the same client ID from your ATS. This means you are trying to import a duplicate vacancy with a client ID that already exists in Teamio. If you want to import the vacancy for the same position again, it must have a different client ID than the existing vacancies in Teamio.
<errorMessage>Formerly imported PDJD has been changed. It cannot be reimported. Some recent IDs
of PDJD with same client ID: [1622762999, 1617942500]</errorMessage>BR tag
In the <richtext> element, an attempt is made to import <br>, however, the correct one is <br/>.
We use the XHTML standard which requires <br/> with a slash at the end – as a pair tag.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<importStatusResponse>
<status>UNPROCESSABLE</status>
<message>An error(s) occurred while importing positions</message>
<positionResultList>
<positionResult>
<success>false</success>
<positionName>HR PODPORA BUSINESS PARTNERŮ</positionName>
<errorMessage>The element type "br" must be terminated by the matching end-tag "</br>".</errorMessage>
</positionResult>
</positionResultList>
</importStatusResponse>Long text
The text in the attribute name of the textField element is too long, the limit is 10 000 characters.
<errorMessage>Oversized pdjd field label: 451</errorMessage>Import of already existing vacancy (duplicate)
An attempt to import a vacancy with an ID/clientID that is already used for a vacancy in Teamio. It is not possible to import such duplicates; the import must be carried out with a unique ID that does not yet appear in any vacancy in Teamio.
<importStatusResponse>
<status>UNPROCESSABLE</status>
<message>An error(s) occurred while importing positions</message>
<positionResultList>
<positionResult>
<success>false</success>
<positionName>Treasury Specialist / Finance Specialist</positionName>
<errorMessage>Formerly imported PDJD has been changed. It cannot be reimported. PDJD ID: 1536528736</errorMessage>
</positionResult>
</positionResultList>
</importStatusResponse>Not URL encoded
The import XML is not URL encoded (the server will evaluate that the string ends earlier, probably before the first =, and the import will not occur).
<?xml version="1.0" encoding="UTF-8" standaone="yes"?>
<importStatusResponse>
<status>BAD_REQUEST</status>
<message>XML validation error: XML document structures must start and end within the same entity.</message>
</positionResultList>
</importStatusResponse>