(1) Basic nodes
1.1 xml (document header)
All listings must be provided in encoding UTF-8. Your XML document should also start with UTF-8 header:
<!--?xml version="1.0" encoding="UTF-8"?-->
Please make sure that you have no invisible characters (BOM chracters, non breaking spaces from editor) in your document.
1.2 jobfeed (root node)
Root node/first node after encoding is , example:
<!--?xml version="1.0" encoding="UTF-8"?--> <jobfeed> ... </jobfeed>
1.3 joblisting (main listing node)
Each new listing starts with a main node . This node must contain a unique @reference_id.
JobFeed uses this reference to ensure that actions are addressed correctly to the proper listing. Please check PUSH and PULL documentation for more details.
xpath to unique reference_id: /jobfeed/joblisting/@reference_id
<!--?xml version="1.0" encoding="UTF-8"?--> <jobfeed> <joblisting reference_id="123456ABCD" hot_id="12345" action="INSERT"> </joblisting> </jobfeed>
The @hot_id is provided by your contact person of Hotelcareer | Gastrojobs. This ID is linked to the company that is shown in the listing.
xpath to organisation_id: /jobfeed/joblisting/@hot_id
The @action attribute is used only for PUSH-JobFeed-integrations. Possible values are:
- INSERT – inserts a new offer
- OFFLINE – takes an offer offline, but does not delete it
- UPDATE – updates an offer
You find additional details in the PUSH-section of this documentation.
xpath to action: /jobfeed/joblisting/@action
1.4 employment (mandatory)
The employment ID is necessary to categorize the correct worktype for the listing. Multiple values are supported when separated with comma.
Possible values are:
- ID:1 – Full time
- ID:2 – Apprenticeship
- ID:3 – Contract duration specified
- ID:4 – Part time
- ID:5 – Trainee / Internship
- ID:6 – Temporary
- ID:7 – Freelance
... <joblisting reference_id="123456ABCD" hot_id="12345" action="INSERT"> ... <employment id="1,3"/> </joblisting> ...
(2) Offer information
2.1 jobdetails
This is the most important node inside the main node joblisting. The subnodes contain the necessary information to post a basic offer on Hotelcareer | Gastrojobs. Please do not put in any value directly inside this node but use the subnodes instead.
... <joblisting reference_id="123456ABCD" hot_id="12345" action="INSERT"> ... <jobdetails>...</jobdetails> </joblisting> ...
2.2 language
The language is detected automatically by processing and cannot be controlled through provided value (DE, EN, FR). However, the information about language can be a benefit in case individual settings are required.
... <jobdetails> <language><!--[CDATA[DE]]--></language> </jobdetails> ...
xpath to language: /jobfeed/joblisting/jobdetails/language
(CDATA declared)
2.3 job title (mandatory)
The node contains the title of the position. This title is visible on Hotelcareer | Gastrojobs search result list.
Maximum number of characters: 200 including spaces and entities.
... <jobdetails> ... <jobtitle><!--[CDATA[offer jobtitle]]--></jobtitle> </jobdetails> ...
xpath to jobtitle: /jobfeed/joblisting/jobdetails/jobtitle
(CDATA declared)
2.4 introduction (mandatory)
The node contains information about the company. Note: part of this text is also visible in the search result list on Hotelcareer | Gastrojobs.
... <jobdetails> ... <introduction title=""><!--[CDATA[company's introduction text]]--></introduction> </jobdetails> ...
xpath to introduction: /jobfeed/joblisting/jobdetails/introduction
(CDATA declared)
Please define a headline for the introduction block. Use @title for declaration. All special chars must be converted to entities. This attribute is optional, but if not provided in the data, the headline is not displayed.
xpath to headline description of introduction: /jobfeed/joblisting/jobdetails/introduction/@title
2.5 tasks (mandatory)
What is the “to do” for the candidate in the new job? Please describe the field of work and list here the candidate’s tasks and responsibilities. Do not put any other information into this node.
... <jobdetails> ... <tasks title=""><!--[CDATA]--></tasks> </jobdetails> ...
xpath to tasks: /jobfeed/joblisting/jobdetails/tasks
(CDATA declared)
Please define a headline for the tasks block. Use @title for declaration. All special chars must be converted to entities. This attribute is optional, but if not provided in the data, the headline is not displayed.
xpath to headline description of tasks: /jobfeed/joblisting/jobdetails/tasks/@title
2.6 profile
What skills and qualification should the candidate possess? The node contains the requirements of your candidate. Do not put any other information into this node.
... <jobdetails> ... <profile title=""> <!--[CDATA[candidate's profile text]]--></profile> </jobdetails> ...
xpath to profile: /jobfeed/joblisting/jobdetails/profile
(CDATA declared)
Please define a headline for the profile block. Use @title for declaration. All special chars must be converted to entities. This attribute is optional, but if not provided in the data, the headline is not displayed.
xpath to headline description of profile: /jobfeed/joblisting/jobdetails/profile/@title
2.7 offer
describes the benefits of your company. What can the applicant look forward to?
... <jobdetails> ... <offer title=""><!--[CDATA[company's benefits text]]--></offer> </jobdetails> ...
xpath to offer: /jobfeed/joblisting/jobdetails/offer
(CDATA declared)
Please define a headline for the offer block. Use @title for declaration. All special chars must be converted to entities. This attribute is optional, but if not provided in the data, the headline is not displayed.
xpath to headline description of offer: /jobfeed/joblisting/jobdetails/offer/@title
2.8 contactInfo
contains the visible contact information inside the listing.
... <jobdetails> ... <contactinfo title=""><!--[CDATA[contact information text]]--></contactinfo> </jobdetails> ...
xpath to contactinfo: /jobfeed/joblisting/jobdetails/contactinfo
(CDATA declared)
Please define a headline for the contact block. Use @title for declaration. All special chars must be converted to entities. This attribute is optional, but if not provided in the data, the headline is not displayed.
xpath to headline description of contact: /jobfeed/joblisting/jobdetails/contactinfo/@title
2.9 job locations (mandatory)
is the main node for joblocation specific details. This details are provided in subnodes. Do not put in any value directly inside this node, please use the subnodes instead.
... <joblocations> ... </joblocations> ...
xpath to joblocation: /jobfeed/joblisting/jobdetails/joblocations
2.10 location
is the top node for each location where the candidate will work. Full address details are provided in further subnodes. We read subnode “city” (2.12) and add all its appearances to a string that is stored for joblocation(s).
... <joblocations> <location>...</location> <location>...</location> </joblocations> ...
xpath to joblocation: /jobfeed/joblisting/jobdetails/joblocations/location
2.11 location – country code
Country code specific value.
... <joblocations> <location> <countrycode><!--[CDATA[DE]]--></countrycode> </location> </joblocations> ...
xpath to country code: /jobfeed/joblisting/jobdetails/joblocations/location/countrycode
(CDATA declared)
2.12 location – city
contains the information about the city the candidate will be working. The number of characters for this information is limited to 100 including spaces and entities.
... <joblocations> <location> <city><!--[CDATA[Berlin]]--></city> </location> </joblocations> ...
xpath to municipality: /jobfeed/joblisting/jobdetails/joblocations/location/city
(CDATA declared)
2.13 location – postal code
Postal or ZIP code.
... <joblocations> <location> <postalcode><!--[CDATA[10969]]--></postalcode> </location> </joblocations> ...
xpath to postal code: /jobfeed/joblisting/jobdetails/joblocations/location/postalcode
(CDATA declared)
2.14 location – street name
Street’s name.
... <joblocations> <location> <streetname><!--[CDATA[Lindenstraße]]--></streetname> </location> </joblocations> ...
xpath to street name: /jobfeed/joblisting/jobdetails/joblocations/location/streetname
(CDATA declared)
2.15 location – building number
Building’s number.
... <joblocations> <location> <buildingnumber><!--[CDATA[123]]--></buildingnumber> </location> </joblocations> ...
xpath to building number: /jobfeed/joblisting/jobdetails/joblocations/location/buildingnumber
(CDATA declared)
2.2 apply (mandatory)
is the top node of the section containing possible apply-data. Do not put in any value directly inside this node, please use the subnodes instead. The node that should be used for all applications is defined individually in each feed. At least one apply method is required.
... <jobdetails> <apply>...</apply> </jobdetails> ...
xpath to applybutton: /jobfeed/joblisting/jobdetails/apply
2.21 url
This node is used for an online application form.
... <jobdetails> <apply> <url><!--[CDATA[https://www.applyhere.com]]--></url> </apply> </jobdetails> ...
xpath to applybutton: /jobfeed/joblisting/jobdetails/apply/url
(CDATA declared)
(3) Layout informations
3.1 layoutdetails
contains all layout specific values that can be used on Hotelcareer | Gastrojobs. Do not put in any value directly inside this node, please use the subnodes instead.
... <layoutdetails> ... </layoutdetails> ...
xpath to layoutdetails: /jobfeed/joblisting/layoutdetails
3.2 images
This is the base node for all image related data. Do not put in any value directly inside this node, please use the subnodes instead.
... <layoutdetails> <images>...</images> </layoutdetails> ...
xpath to images: /jobfeed/joblisting/layoutdetails/images
3.21 header
It is possible to set one header picture via jobfeed.
- Recommended size 750px * 350px.
... <layoutdetails> <images> <header><!--[CDATA[https://www.exampleimage/images/headerpicture.jpg]]--></header> </images> </layoutdetails> ...
xpath to header: /jobfeed/joblisting/layoutdetails/images/header
(CDATA declared)
3.22 footer image
In case you wish to have more than the header picture, it is possible to add 3 more images to the listing. These images will be displayed at the bottom of the listing.
- 1 image: 750px * 350px
- 2 images 375px * 350px
- 3 images 250px * 350px
... <layoutdetails> <images> ... <image1><!--[CDATA[https://www.exampleimage/images/picture01.jpg]]--></image1> <image2><!--[CDATA[https://www.exampleimage/images/picture02.jpg]]--></image2> <image3><!--[CDATA[https://www.exampleimage/images/picture02.jpg]]--></image3> </images> </layoutdetails> ...
xpath to header: /jobfeed/joblisting/layoutdetails/images/image(1,2,3)
(CDATA declared)
3.3 video
A video link (Youtube or Vimeo) can be added in this node.
... <layoutdetails> <video><!--[CDATA[https://www.youtube.com/embed/hEcnAi5kQbM]]--></video> </layoutdetails> ...
xpath to video: /jobfeed/joblisting/layoutdetails/video
(CDATA declared)
(4) Company information
4.1 company details
This is the main node for providing all company related information. Do not put in any value directly inside this node, please use the subnodes instead.
... <joblisting reference_id="123456ABCD"> <companydetails>...</companydetails> </joblisting> ...
xpath to company details: /jobfeed/joblisting/companydetails
4.2 company name
This node provides the name of the company / subsidiary and should match the hot_id that refers to the account on Hotelcareer | Gastrojobs where the listing will be published.
... <companydetails> <companyname><!--[CDATA[Max Mustermann GmbH]]--></companyname> </companydetails> ...
xpath to company name: /jobfeed/joblisting/companydetails/companyname
(CDATA declared)
4.3 recruiter
This node contains a recruiter’s contact information. Do not put in any value directly inside this node, please use the subnodes instead.
... <companydetails> <recruiter> ... </recruiter> </companydetails> ...
xpath to recruiter: /jobfeed/joblisting/companydetails/recruiter
4.31 recruiter – id
Recruiter ID is not used for automatic processing.
4.32 recruiter – position
The recruiter’s position title.
... <recruiter> ... <position><!--[CDATA[Recruiting Manager]]--></position> </recruiter> ...
xpath to recruiter position: /jobfeed/joblisting/companydetails/recruiter
4.33 recruiter – gender
The recruiter’s gender, please use M or F in upper case.
... <recruiter> ... <gender><!--[CDATA[F]]--></gender> </recruiter> ...
xpath to recruiter gender: /jobfeed/joblisting/companydetails/recruiter/gender
(CDATA declared)
4.34 recruiter – first name
The recruiter’s first name.
... <recruiter> ... <firstname><!--[CDATA[Marlene]]--></firstname> </recruiter> ...
xpath to recruiter first name: /jobfeed/joblisting/companydetails/recruiter/firstname
(CDATA declared)
4.35 recruiter – last name
The recruiter’s last name.
... <recruiter> ... <lastname><!--[CDATA[Mustermann]]--></lastname> </recruiter> ...
xpath to recruiter last name: /jobfeed/joblisting/companydetails/recruiter/lastname
(CDATA declared)
4.36 recruiter – email
The recruiter’s email. Please insert a valid email-address.
... <recruiter> ... <email><!--[CDATA[mustermann@company-group.de]]--></email> </recruiter> ...
xpath to recruiter email: /jobfeed/joblisting/companydetails/recruiter/email
(CDATA declared)
4.37 recruiter – phone
The recruiter’s phone number.
... <recruiter> ... <phone><!--[CDATA[+4912356789]]--></phone> </recruiter> ...
xpath to recruiter email: /jobfeed/joblisting/companydetails/recruiter/phone
(CDATA declared)