You can automate the process of importing jobs from an XML feed into your system. This guide will walk you through the steps of setting up an XML importer.
Setting Up Your Feed Importer
1. Importer Type
First, log in to your backend using your site-admin credentials. Then, go to Jobs > Job Importers > Add Feed and choose your import type:
-
- Job Importer per Link: This option is best for XML feeds that include links to jobs.
- Job Importer per Template: Use this for XML feeds that include job details.
Note: Once you've selected an importer type, you won't be able to change it. If you need a different importer type, you'll have to create a new one.
2. Basic Settings
The following fields must be completed before you can save an importer:
- Title: Give your importer a descriptive name (e.g., company_name | type of importer). This will help you identify importers more easily in the feeds overview. It won’t affect how the feed behaves.
- Feed URL: Paste the link to the XML feed you want to import. The URL must be accessible. If necessary, include authorization credentials directly in the URL.
- Authorization Header Token: If the URL is protected and requires a password or code to access, you’ll need to add an Authorization Header Token to verify your identity. If no authorization is required, leave this field blank.
- Accept Encoding Header: If the URL leads to a non-standard text file, specify the Accept Encoding header to ensure correct processing. Leave blank otherwise.
- Context: Defines the XML element that encloses each job. More information on how to define context can be found below.
The following fields are optional and can be left blank or deactivated:
- Organization Reference: Select the company you want to assign these jobs to. If you don’t want the jobs to be mapped to any organization, leave this field blank.
- Jobs Need Review (only visible for Job per Template importer type): If you want to review imported jobs before publishing, enable the Jobs Need Review toggle. When activated, all imported jobs will have the "Need review" status and will need to be manually published.
-
Mapping Organizations: To ensure jobs are assigned to the correct organization profile, enable the Mapping Organizations toggle. Then, choose whether the mapping should be based on:
-
- The organization name specified in the Organization Reference field.
- The Organization ID (the organization’s ID on your job board) specified in XPath Parser Settings.
- The External Client ID (for organizations with profiles on external sites) specified in XPath Parser Settings.
-
- Backfill Importer: Activate this toggle if the jobs in the feed come from job aggregators or organizational websites.
- Exclude from Google 4 Jobs Index and Sitemaps: Activate this toggle if you want to exclude jobs from appearing in Google for Jobs index and sitemaps.
- Disable Job Updates: When enabled, this prevents jobs in the feed from being updated.
- Disable Content Extraction (only visible for Job per Link importer type): If you’re importing jobs using a link and already have the job description in your feed, activate this toggle to disable content extraction from the link.
- Products: Choose a product to assign to all imported jobs. To change or remove the product assignment, adjust the product and then delete the jobs before re-importing the feed. The product start date will match the job publishing date, and the end date will be calculated based on the product configuration.
- Error Notification Email: If entered, this email address will receive notifications in case of a critical error during the import process.
- Unpublish Jobs Threshold: This is a percentage-based limit that triggers an error and stops the import process if a certain number of jobs are about to be unpublished.
- History Keep Threshold: Defines how many days the history will be kept.
- Import Options:: Deactivate this toggle to set the importer as a one-off. By default, the importer runs at regular intervals. For more information or to change the import intervals, contact us directly, and we’ll be happy to assist you.
- Validation Fields: You can customize the system to check for errors in specific fields such as job title, description, job location, and more. If any errors are detected, the system will skip that job and move on to the next one.
3. XPath Configuration:
To post jobs on your job board, you need to extract specific information—such as job titles, descriptions, locations, and more—from your XML feed. This is where XPath comes in: it allows you to specify exactly where to find this data.
Getting Started with XPath Parser Settings
Assume your XML feed contains multiple jobs. You will first need to identify the starting point for each job and add this information to the Context field.
Let's say the structure of the XML feed you want to import looks like this:
<job>
<jobPosting>
<Job_ID>12345</Job_ID>
<jobTitle>Software Engineer</jobTitle>
<location>Home Office</location>
<description>We are seeking a talented Software Engineer to join our team.
You will be responsible for designing, developing, and maintaining high-quality
software solutions.</description>
<experience>3</experience>
<occupation>Software Development</occupation>
<employmentType>Contract</employmentType>
<applicationWorkflow>external</applicationWorkflow>
<company>Example Company</company>
</jobPosting>
</job>
You would use the XPath expression /job/jobPosting in the Context field to extract each job.
Additionally, the following fields must be filled out in the XPath Settings to set up an importer:
- Description: The XPath to the element in the XML feed containing the job description.
- Feed Item: GUID: The XPath to the element in the XML feed containing the unique identifier of a job posting.
- Title: The XPath to the element in the XML feed containing the job title.
- Organization: The XPath to the element in the XML feed containing the company name.
- Employment type: The XPath to the element in the XML feed containing the employment type.
- Occupational field: The XPath to the element in the XML feed containing the occupational field.
-
Application workflow: Add one of the following values to define the application workflow:
- external: Redirects the user to an external URL.
- internal: Allows the user to apply directly on the site using their saved resume.
- quick: Enables a quick-apply workflow where applicants only need to fill in a few mandatory fields to submit their application.
Based on our sample feed, the filled in XPath Parser Settings would look like this:
Note: In the XPath Parser Settings, you must use the same tags (words in angle brackets, indicating the start and end of an element) as those in the XML feed. For example, if you want to map occupational field details from the XML feed, you need to use occupation in the Occupational Field section of the XPath Parser Settings to ensure the information is mapped correctly.
>> Want to Know More? Explore online resources and take your XPath skills to the next level <<
4. Save and Verify the Results:
Once you’ve added all the relevant information, save your importer settings and run an import. After the import is complete, go to the Imported Jobs section to manually verify that all fields have been mapped correctly in comparison to the original feed. It's important to check that:
- Data is extracted and imported accurately.
- Fields are mapped correctly.
- If necessary, jobs are mapped to the correct company.
Note: Importing jobs may take some time. Importers are typically scheduled to run every few hours.
Essential Tips and Best Practices:
- XML Structure Variation: Different sources may have different XML structures. Be ready to adjust your XPath settings accordingly.
- Changing Settings: If you modify the importer settings, all existing jobs must be deleted and re-imported to apply the changes.
- Compare Results: Verify that all fields are correctly mapped by comparing the selected imported jobs to the original feed.
- Occupational field: To ensure the correct occupational field is identified, you can combine information. For example, use "title|description". This instructs the system to first search for the occupational field in the job title. If it isn't found there, it will then look in the job description. This approach helps map the occupational field correctly, even if the feed doesn't provide it directly.
- Start Simple: Begin by testing your XPath rules with the most important information (only the mandatory fields), and then add the rest.