You want to upsert a language in 'Post Job in Language(s)' field for a Job Requisition via SFAPI JobRequisition entity. The language is set up in Provisioning, Recruiting languages in Admin tools (Admin tools -> Manage Recruiting languages) and also defined as a supported language in the associated Job Requisition template, etc. <lang><![CDATA[fr_FR]]></lang>
In the SOAP request for JobRequisition entity the language is provided as <ns2:jobPostLanguage>fr_FR</ns2:jobPostLanguage> in 'jobPostLanguage' field. SOAP response indicates that the record was upserted successfully but the value in 'Post Job in Language(s)' field of the JobRequisition in UI wasn't changed as desired.
The field 'defaultLanguage' in SOAP request needs to be used to post the language instead, etc. <urn:defaultLanguage>fr_FR </urn:defaultLanguage>
The field 'defaultLanguage' in SOAP request for SFAPI JobRequisition entity needs to be used to post the language. The value provided in the field 'defaultLanguage' is set to the field 'jobPostLanguage.'
If the field 'defaultLanguage'is not provided in SOAP request the value defined as a 'Default Language' in Admin tools-> Manage Recruiting Languages is taken.
This means that only one language per Job Requisition can be upserted via SFAPI JobRequistion. Default language can be set up only once and is no further upsertable. This is actual limitation of SFAPI JobRequisition entity.
Example of SOAP request
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:sfobject.sfapi.successfactors.com">
<urn:title>JobRequistion - test</urn:title>
SFAPI, SF API, JobRequisition, Job Requisition, template, language, post job language, default language, upsert, update, create, integration, recruiting management, web service , KBA , LOD-SF-RCM-API , Webservices & APIs , LOD-SF-INT , Integrations , Problem