Getting Started

This page quickly outlines the key steps to get your jobs live on Facebook. Check out the How-To page to go deeper on these concepts, or the FAQ page for common questions.

Quick Intro: Creating a Facebook Jobs XML Feed in 15 Minutes

Check out the below video for a full guide, end-to-end, on how to build out your XML feed. Note that the video assumes you already have Jobs API permissions.

Something Went Wrong
We're having trouble playing this video.

1. Generate your XML Feed

The following section describes the fields needed in your XML feed to properly ingest jobs, including a sample feed.

Required Fields

  • publisher-name
  • publisher-url
  • title
  • date
  • id (partner job id)
  • description
  • company-name
  • company-id(partner company id)
  • company-full-address
  • company-url (URL format: http://www.companyname.com)
  • city
  • region
  • country
  • facebook-apply-data
  • application-callback-url

Default Fields

Default fields are not required, but will default to a particular value if the xml tag is not present.

  • job-type (defaults to: full_time)

Sample Feed

<?xml version="1.0" encoding="utf-8"?>
<source>

<publisher-name>Your ATS</publisher-name>
<publisher-url>http://www.yourdomain.com</publisher-url>
<last-build-date>2017-11-06 18:47:08 +0000</last-build-date>

<job>

<!-- basic info -->
<title><![CDATA[Example Engineer]]></title>
<date><![CDATA[2017-11-06 18:47:08 +0000]]></date>
<id><![CDATA[unique11111]]></id>
<photo-url><![CDATA[https://url/to/photo]]></photo-url>
<description><![CDATA[Example job description]]></description>
<job-type><![CDATA[full_time, part_time, contract, internship, volunteer]]></job-type>

<!-- company info -->
<company-name><![CDATA[Facebook]]></company-name>
<company-id><![CDATA[unique11111]]></company-id>
<company-full-address><![CDATA[1 Hacker Way, Menlo Park, CA, 94025]]></company-full-address>
<company-facebook-url>
    <![CDATA[https://www.facebook.com/goldengatebridge]]>
</company-facebook-url>
<company-data-policy-url>
    <![CDATA[https://www.facebook.com/policy.php]]>
</company-data-policy-url>
<company-url><![CDATA[https://facebook.com]]>></company-url>

<!-- location -->
<full-address><![CDATA[1 Hacker Way, Menlo Park, CA, 94025]]></full-address>
<house-number><![CDATA[1]]></house-number>
<street-name><![CDATA[Hacker Way]]></street-name>
<city><![CDATA[Menlo Park]]></city>
<region><![CDATA[CA]]></region>
<country><![CDATA[US]]></country>
<postal-code><![CDATA[94025]]></postal-code>

<!-- salary -->
<salary><![CDATA[150000]]></salary>
<salary-currency><![CDATA[USD]]></salary-currency>
<salary-type><![CDATA[hourly, daily, weekly, biweekly, monthly, annually, one-time]]></salary-type>

<!-- integration configuration -->

<facebook-apply-data>
    <application-callback-url>
    <![CDATA[https://yourdomain.com/callback]]>
    </application-callback-url>
    <custom-questions-url>
    <![CDATA[https://yourdomain.com/custom-questions]]>
    </custom-questions-url>
    <form-config>
        <email-field>
            <optional><![CDATA[false]]></optional>
        </email-field>
        <phone-number-field>
            <optional><![CDATA[false]]></optional>
        </phone-number-field>
        <work-experience-field>
            <optional><![CDATA[false]]></optional>
        </work-experience-field>
    </form-config>
</facebook-apply-data>

</job>

[...]

</source>
  

Receiving Applications

We will notify you when you receive an application at the application-callback-url endpoint you provide. See full details on this callback, and how to retrieve the applications, in the How-To section.

Example Job Posting

The following is a sample of how the job will appear on Facebook.

2. Receive Jobs API Permissions

In order for Facebook to start ingesting your jobs, we must grant you the necessary permissions in order to continue work on the integration. Speak with your Facebook contact to understand your permissioning status. Note that these APIs have a 30-day usage policy - if the permission is not used 30 days after granting, it will be revoked. Note that you will receive errors indicating you do not have the correct permissions when attempting all further API calls if you don't have permission. Fill out this form and we will reach out to you if you qualify for access.

You cannot proceed further in this guide until you are approved - the bulk of the work exists in step 1, however, so if you build out a full XML feed you can be ready to quickly complete registration once permissions are granted.

3. Register Your Recruiting Manager and Job Feeds

To manage jobs on Facebook all developers must set up a Recruiting Manager. A Recruiting Manager allows you to configure your company properties such as your ATS name, website URL and data policy URL. Once you have created a recruiting manager, you must notify Facebook by submitting an answer to the "Register Recruiting Manager" question in the Direct Support Tool, otherwise your jobs will not be posted. If you do not have access to the Direct Support Tool, please reach out to your contact at Facebook.

Sample Request

HttpRequest: POST
URL: https://graph.facebook.com/vX.X/${user_id}/recruiting_managers?access_token=${user_access_token}

Sample Body

{
  "name": "YourCompanyName",
  "website_url": "https://www.yourcompanywebsite.com/",
  "photo_url": "https://www.yourcompanywebsite.com/companyprofilephoto.png/",
  "data_policy_url": "https://www.yourcompanywebsite.com/datapolicy.html"
}

Note: The data_policy_url should be mobile friendly and the photo_url image must be 100x100 pixels.

Sample Response

{ 
  "id": recruiting_manager_id
}

Learn how to generate a user access token.

Register Your Jobs Feed

Registering the XML Feed allows Facebook to crawl the feed and post jobs on the jobs browser. Each feed cannot have more than 30,000 jobs. To publish more than 30,000 jobs, the recommendation is to split them into multiple feeds and maintain 1:1 mapping between the jobs and job_feed_id.

Note: XML Feed registration uses app access tokens.

HttpRequest: POST
URL: https://graph.facebook.com/vX.X/${recruiting_manager_id}/job_feeds?access_token=${app_id|app_secret}

Sample Body

{
"feed_url": "https://yourcompany.com/link-to-jobs-xml-feed",
"syncing_frequency": "NONE"||"HOURLY"||"SIX_HOURS"||"TWELVE_HOURS"||"DAILY"
}

Sample Response

{
  "feed_id": jobs_feed_id
}

4. Getting Your Jobs Live

At this point, your jobs are ready to go live. They will still go through Jobs Review and page-matching, and you can check on the status of these things via the Get Job Status section of the How-To page. If there are no errors, and your jobs pass review, they will be live, and Facebook users can start applying to them!

Learn More