editOffer

Modifies a previously created job offer with the values provided in soap request envelope. In order to modify an offer you must comply with all the validations. Each validations is explained in the definition of the field.


You must not include links to external sites or contact details. Additionally you should avoid posting sexist/gender specific offers


Request

WSDL URL

https://api.infojobs.net/soap/WSOfferV3Service?wsdl

Security

  • User Role: ROLE_EMPLOYER

Parameters

Name Description

city

String

Required

The city where to list the job offer. This is a mandatory field, and its length is limited to a minimum of 5 characters.

Example values: Maragall

code

String

Required

The code that identifies the job offer. This is a mandatory field, and its value is had been returned on creation operation.

Example values: f7e07618454d50bc7987fa2072ab0b

contractTypeId

Long

Required

The identifier of the contract type.This is a mandatory field. In order to obtain all valid identifiers you can use the operation findByListName providing the publicNameKey of the appropriate list.

Example values: 60 (Other contracts)

In this example the identifier 60 is obtained using the findByListName operation with publicNameKey: CONTRACTS.

department

String

Optional

Company department where the job opening is allocated. This field is optional.

Example values: Quality

desiredJobSkills

String

Optional

Desired skills the candidate should have in order to apply for the job offer. This field is optional.

Example values: Solid knowledge of English

emailFeedbackInsc

String

Optional

The email address of the employer where to receive notifications regarding applications. When a new application is received, an email will be sent to the emailFeedbackInsc provided. This field is optional, but if informed it should contain a correctly formed email address.

Example values: test@yourcompany.com

jobDescription

String

Required

Text describing the job offer. This is a mandatory field, and its length is limited to a minimum of 100 and a maximum of 4000 characters.

Whenever sending enriched text in the jobDescription field, make sure to send it inside a CDATA section or encode HTML tags. This is necessary to avoid issues with the XML parser.

Enriched Text Support: The jobDescription field supports enriched text formatting for better readability and compatibility with Android and iOS applications. HTML input is internally converted to Markdown to ensure proper rendering on mobile applications.

Allowed HTML Tags:

  • <p>: Paragraph element.
  • <br>: Line break element.
  • <span>: Generic inline container for text.
  • <strong>: Indicates strong importance (must be used for bold text).
  • <em>: Indicates emphasized text (usually italic).
  • <code>: Used to display code snippets.
  • <li>: List item element.
  • <ol>: Ordered list (numbered).
  • <ul>: Unordered list (bulleted).

Supported Enriched Text Features by Applications:

  • Paragraph Break: Desktop, Mobile Responsive, Android App, iOS App
  • Bold: Desktop, Mobile Responsive, Android App, iOS App
  • Italic: Desktop, Mobile Responsive, Android App, iOS App
  • Strikethrough: Desktop, Mobile Responsive, Android App, iOS App
  • Underline: Desktop, Mobile Responsive, Android App, iOS App
  • Unordered List: Desktop, Mobile Responsive, Android App, iOS App
  • Ordered List: Desktop, Mobile Responsive, Android App, iOS App

Unsupported HTML Tags:

  • <b>: Bold text (use <strong> instead)
  • <font>: Font styling
  • <center>: Center alignment
  • <marquee>: Scrolling text
  • <blink>: Blinking text
  • Emojis: This service currently only supports ISO-8859-15 character encoding. To ensure correct display of your messages, please avoid using emojis.
  • Any other tags not specified in the allowed list.


You must not include links to external sites or contact details. Additionally, you should avoid posting sexist/gender-specific offers.

If you do not comply with any of these rules, InfoJobs reserves the right to withdraw your job post.

jobDuration

String

Optional

Period of time for which you need to cover the position solicited. This field is optional.

Example values: 6 months

jobSubindustryId

Long

Required

The identifier of the job subIndustry under which the offer is listed. This is a mandatory field.

To obtain all valid subIndustry identifiers for a given job industryId you can use the operation findByListNameAndParentId.

In the request you should use SUBCATEGORIES as the publicNameKey and the the value of the jobIndustryId as the parentId.

Example values: 20 (International Law)

In this example the identifier 20 is obtained using the findByListNameAndParentId operation with publicNameKey: SUBCATEGORIES and the parentId:100 obtained in the previous example.

levelId

Long

Required

The identifier of the level of expertise required by the offer. This is an optional field but if provided it must be valid.

In order to obtain all valid identifiers you can use the operation findByListName providing the publicNameKey of the appropriate list.

Example values: 15 (Specialist)

In this example the identifier 15 is obtained using the findByListName operation with publicNameKey: LABORALLEVEL.

minimumExperienceId

Long

Required

The identifier of the minimum level of experience required by the offer. This is an mandatory field.

In order to obtain all valid identifiers you can use the operation findByListName providing the publicNameKey of the appropriate list.

Example values: 2 (Not required)

In this example the identifier 2 is obtained using the findByListName operation with publicNameKey: MINEXPERIENCES.

minimumStudiesId

Long

Required

The identifier of the minimum level of studies required by the offer. This is an mandatory field .

In order to obtain all valid identifiers you can use the operation findByListName providing the publicNameKey of the appropriate list.

Example values: 147 (Master)

In this example the identifier 147 is obtained using the findByListName operation with publicNameKey: STUDIESLEVEL.

nationalityId

Long

Optional

The identifier of the nationality of the candidate. This is an optional field but if provided it must be valid.

In order to obtain all valid identifiers you can use the operation findByListName providing the publicNameKey of the appropriate list.

Example values: 17 (Spain)

In this example the identifier 17 is obtained using the findByListName operation with publicNameKey: COUNTRIES.

numberOfVacancies

Int

Required

Amount of vacancies to be filled- This is a numeric mandatory field.

Example values: 2

requiredJobSkills

String

Optional

Required skills candidate must have in order to apply for the job offer. This is an optional field.

Example values: Knowledge of Java

residenceInId

Long

Optional

The identifier of the residence requirement the candidate should meet in order to apply to the offer. (e.g: province where the offer is posted, country where the offer is posted, not appliable, etc.). This is an optional field but if provided it must be valid.

In order to obtain all valid identifiers you can use the operation findByListName providing the publicNameKey of the appropriate list.

Example values: 2 (Not required)

In order to obtain all valid identifiers you can use the operation findByListName providing the publicNameKey "RESIDENTS"

salaryBenefits

String

Optional

Added benefits the company offers to the candidate. This is an optional field.

Example values: Ticket Restaurant Card

salaryPerId

Long

Required

The identifier of the period by which the payment will be issued. This is an mandatory field

In order to obtain all valid identifiers you can use the operation findByListName providing the publicNameKey of the appropriate list.

Example values: 10 (gross/year)

In order to obtain all valid identifiers you can use the operation findByListName providing the publicNameKey "WAGEPERIOD"

salaryFromId

Long

Required

The identifier of the minimum monetary amount the company is willing to pay for the service solicited. (ranges from: 3 to 240.000 euros). This is an mandatory field and it must be valid.

In order to obtain all valid identifiers you can use the operation findByListName providing the publicNameKey of the appropriate list.

Example values: 150 (1200 euros)

In order to obtain all valid identifiers you can use the operation findByListName providing the publicNameKey "WAGEAMOUNT"

salaryToId

Long

Required

The identifier of the maximum monetary amount the company is willing to pay for the service solicited. (ranges from: 3 to 240.000 euros). This is an mandatory field and it must be valid.

In order to obtain all valid identifiers you can use the operation findByListName providing the publicNameKey of the appropriate list.

Example values: 150 (1200 euros)

In order to obtain all valid identifiers you can use the operation findByListName providing the publicNameKey "WAGEAMOUNT"

specialityId

Long

Optional

The identifier of the studies specialty required for the candidate. This is an optional field but if provided it must be valid.

In order to obtain all valid identifiers you can use the operation findByListName providing the publicNameKey of the appropriate list.

Example values: 181 (Algebra)

In order to obtain all valid identifiers you can use the operation findByListName providing the publicNameKey "DETAILSTUDIES"

staffInChargeId

Long

Optional

The identifier of number of employees that will be in charge of the selected candidate. This is an optional field but if provided it must be valid.

In order to obtain all valid identifiers you can use the operation findByListName providing the publicNameKey of the appropriate list.

Example values: 1 (0)

In order to obtain all valid identifiers you can use the operation findByListName providing the publicNameKey "PERSONNELTOPOSITION"

studying

Boolean

Optional

Current educational status of the candidate. This field is optional.

Example values: true

Example values: 1

Example values: false

timetable

String

Optional

Text input to describe the time range during which the job will be performed.

Example values: 8am-5pm

urlExternalApplication

String

optional

URL the applicants will be directed to when they click the link to apply to the job offer. The field must start with http:// or http://. This field is optional, but in order to inform it, the authenticated user must have the stock necessary. Otherwise an error code will be returned.

workingDayId

Long

required

The identifier of the type of working day. This is an optional field, but if it is informed it must be valid. In order to obtain all valid identifiers you can use the operation findByListName providing the publicNameKey of the appropriate list.

Example values: 2 (fulltime)

In this example the identifier 2 is obtained using the findByListName operation with publicNameKey: DAYS.

zip

String

Required

The postal code where the offer will be posted. This is a mandatory field, it must be a 5 digit number.

Example values: 08032

hideSalary

Boolean

Optional

Optional field to set if offer salary is hidden.

showGreaterOrEqualSalaryAmount

Double

Optional

Value used for determining that the offer must be shown when the wanted minimum salary amount is greater or equal than it.

Example values: 40000

killerQuestionList

List of killer question entity

Optional

The list of killer questions that will be added to the job offer. This is a NON-editable field. If the offer has been created without any KQs or OQs, they can be added to the offer. Below you can see the fields of the Killer question entity. Limited to 12 killer questions per offer.

knowledgeList

List of Knowledge entity

Optional

Optional field to set the offer knowledge skills.

openQuestionList

List of open question entity

optional

The list of open questions that will be added to the job offer. This is a NON-editable field. If the offer has been created without any KQs or OQs, they can be added to the offer. Below yo can see the fields of the open question entity. Limited to 4 open questions per offer.

wsProfileEditOffer

Profile entity

optional

The company profile used to posting the job offer. If this field is not informed the default profile of the company will be used.

In order to obtain all the available profiles you can use the findMyProfiles operation.


Fields related to the killer question entity
Name Description

text

String

Required

The killer question text. This text must be between 10 and 490 characters long.

answerList

Required

A structure where every answer and its grade is listed. A list of answer elements. It is limited to a minimun of 2 and a maximum of 5 answers per question.

Fields related to the answer entity
Name Description

grade

Long

Required

The grade associated to the text specified. It must be a number between 0 and 10. If the answer is discarding, the value is -1000.

text

String

Required

The answer text, it must be between 2 and 150 characters long.

Fields related to the open question entity
Name Description

text

String

Required

The open question text. The text must be between 10 and 490 characters long.

Fields related to the profile entity
Name Description

code

String

Required

The code that identifies the profile.

Fields related to the knowledge entity
Name Description

name

String

Required

The offer knowledge skill.

Response

Response fields

The response will include a summary of the posted job offer formed by the following fields:

Name Description

jobIndustryId

The identifier of the job offer industry.

jobReference

Used by the company for classification purposes.

jobTitle

The title of the job offer.

offerCode

The code that identifies the job offer.

provinceId

The identifier of the job offer province.

upsellingList

List of upselling entity added to the job offer.

Fields related to the upselling entity
Name Description

productId

The identifier of the upselling.

Error codes

Code Description

WS.405

Wrong enriched description format.

WS.1101

Null or invalid offer code

WS.1102

The offer with code â??providedâ?? does not exists

WS.1103

You do not have permission to edit the offer.

WS.1116

The offer â??providedâ?? has removed previously

WS.1130

The field mininumStudiesId is required.

WS.1131

The mininumStudiesId provided is invalid.

WS.1132

The emailFeedbackInsc provided is an invalid email.

WS.1133

The contractTypeId provided is invalid.

WS.1135

The levelId provided is invalid.

WS.1136

The url is not valid. It must start with 'http://' or 'https://'

WS.1137

The offer name is not valid

WS.1138

The authenticated user doesn't have stock to add external form to offer.

WS.1140

The authenticated user canâ??t edit an offer with hidden profile

WS.1141

The authenticated user can't add an external url if the offer already has Infojobs applications.

WS.1142

The staffInChargeId provided is invalid.

WS.1143

The minimumExperienceId provided is invalid.

WS.1144

The city provided is invalid. It must be between 5 and 500 characters long.

WS.1145

The city field is required.

WS.1146

The province is required.

WS.1147

The province id: provided is invalid.

WS.1148

The province id provided does not belong to the country provided.

WS.1149

The country is required

WS.1150

The country id provided is not valid.

WS.1151

The job description is required.

WS.1152

The job description is invalid. It should be between 100 and 4000 characters long.

WS.1153

The job title is required.

WS.1154

The length of the job title: provided is invalid. It should be between 3 and 255 characters long.

WS.1155

The salaryFromId provided is invalid.

WS.1156

The salaryToId provided is invalid.

WS.1157

The publication id provided is invalid

WS.1158

The offer values are incorrect: jobDescription length must be between 100 and 4000 characters.

WS.1160

The NumberOfVacancies provided is invalid. It must be a valid number greated than 0.

WS.1161

The NationalityId provided is invalid.

WS.1162

The jobSubindustryId field is required.

WS.1163

The jobSubindustryId provided is invalid.

WS.1164

The jobSubindustryId does not belong to the jobIndustryId.

WS.1165

The industry Id is required

WS.1166

The industry id provided is not valid.

WS.1167

The residenceInId provided is invalid.

WS.1168

The workingDayId field is required.

WS.1169

The workingDayId provided is invalid.

WS.1170

The salaryPerId provided is invalid.

WS.1171

The specialityId provided is invalid.

WS.1172

The zip code provided is invalid.

WS.1173

The zip code field is required.

WS.1174

No available stock for editing the job offer.

WS.1175

No available stock for editing the job offer.

WS.1176

The countryId provided is not valid.

WS.1177

The provinceId provided is not valid.

WS.1178

The jobIndustryId provided is not valid.

WS.1179

The jobSubindustryId provided is invalid. It must be a value greater than 0.

WS.1180

The minimumExperienceId provided is invalid. It must be a value greater than 0.

WS.1181

The minimumStudiesId provided is invalid. It must be a value greater than 0.

WS.1182

The workingDayId provided is invalid. It must be a value greater than 0.

WS.1187

The offer provided has an invalid state.

WS.1196

A salary value has been set to 0. This value is not available.

WS.1500

Maximum number of killer questions: provided

WS.1501

Killer question text length bounds

WS.1502

Killer question answer text length bounds

WS.1503

Wrong killer question answer grade

WS.1504

Exceeded maximum number of killer question answers

WS.1505

Killer questions must contain at least answers.

WS.1506

Killer questions answers must have grade

WS.1507

Killer questions have invalid field values

WS.1508

Killer questions answer have invalid field values

WS.1509

Killer questions answers must have grade

WS.1510

Killer questions answers must have text

WS.1511

Killer questions must have text

WS.1512

Maximum number of knowledges is exceed.

WS.1513

Knowledges must have text.

WS.1514

Knowledge is not valid option.

WS.1515

Knowledge has not allowed symbols.

WS.1516

Period of salary is required.

WS.1517

Mimimun salary is required.

WS.1518

Maximun salary is required.

WS.1519

Employment level is required.

WS.1520

The number of vacancies is required.

WS.1521

The minimum experience id is required.

WS.1600

Maximum number of open questions: provided

WS.1601

Open question text length bounds

WS.1602

Open questions have invalid field values

WS.1603

Open questions must have text

WS.1604

The province of the offer does not match with the province of the company

WS.1605

There is no stock for posting on corporate web

Examples

Request

 

	<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:off="http://offer.endpoints.www.soap.infojobs.net/">
<soapenv:Header>
<wsse:Security soapenv:mustUnderstand="1" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<wsse:UsernameToken wsu:Id="UsernameToken-799830164" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<wsse:Username>SOAP-TEST-CLIENT</wsse:Username>
<wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">SOAP-TEST-PASSWORD</wsse:Password>
</wsse:UsernameToken>
<ij:authnHeader xmlns:ij="http://api.infojobs.net/soap/authn">
<token>20000000-0000-0000</token>
</ij:authnHeader>
</wsse:Security></soapenv:Header>
<soapenv:Body>
<off:editOffer>
<wsEditOfferRequestBean>
<city>Barcelona</city>
<code>e89876562943239a89ca20a3b02b31</code>
<contractTypeId>16</contractTypeId>
<department>Depratemanto</department>
<desiredJobSkills>skill1, skill2, ...</desiredJobSkills>
<emailFeedbackInsc>EDITED@correo.net</emailFeedbackInsc>
<jobDescription>EDITED Oferta para pruebas de los nuevos API WebServices. Oferta para pruebas de los nuevos API WebServices. Oferta para pruebas de los nuevos API WebServices. Edited Offer</jobDescription>
<jobDuration>No aplica</jobDuration>
<jobSubindustryId>3014</jobSubindustryId>
<staffInChargeId>1</staffInChargeId>
<levelId>2</levelId>
<minimumExperienceId>2</minimumExperienceId>
<minimumStudiesId>280</minimumStudiesId>
<nationalityId>0</nationalityId>
<numberOfVacancies>1</numberOfVacancies>
<requiredJobSkills>EDITED</requiredJobSkills>
<residenceInId>0</residenceInId>
<salaryBenefits>EDITED</salaryBenefits>
<specialityId>122</specialityId>
<staffInChargeId>1</staffInChargeId>
<studying>true</studying>
<timetable>EDITED</timetable>
<urlExternalApplication>http://www.google.com</urlExternalApplication>
<workingDayId>2</workingDayId>
<zip>08100</zip>
<knowledgeList>
<knowledge>
<name>linux</name>
</knowledge>
<knowledge>
<name>Java</name>
</knowledge>
</knowledgeList>
<hideSalary>false</hideSalary>
<showGreaterOrEqualSalaryAmount>40000</showGreaterOrEqualSalaryAmount>
</wsEditOfferRequestBean>
</off:editOffer>
</soapenv:Body>
</soapenv:Envelope>

 

Response

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header>
<wsse:Security soap:mustUnderstand="1" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<wsu:Timestamp wsu:Id="TS-123">
<wsu:Created>2012-11-23T12:19:40.585Z</wsu:Created>
<wsu:Expires>2012-11-23T12:24:40.585Z</wsu:Expires>
</wsu:Timestamp>
</wsse:Security>
</soap:Header>
<soap:Body>
<ns1:editOfferResponse xmlns:ns1="http://offer.endpoints.www.soap.infojobs.net/">
<wsEditOfferResponseBean>
<jobIndustryId>10</jobIndustryId>
<jobReference/>
<jobTitle>Prova create offer simple wsint0201a</jobTitle>
<offerCode>e89876562943239a89ca20a3b02b31</offerCode>
<provinceId>603</provinceId>
<upsellings/>
</wsEditOfferResponseBean>
</ns1:editOfferResponse>
</soap:Body>
</soap:Envelope>