---
title: Adding an identity provider - Facebook
description: Add Facebook as an external identity provider in PingOne to allow users to sign on with Facebook when accessing your application.
component: pingone
page_id: pingone:integrations:p1_addidentityproviderfacebook
canonical_url: https://docs.pingidentity.com/pingone/integrations/p1_addidentityproviderfacebook.html
revdate: May 29, 2025
page_aliases: ["p1_register_app_with_facebook.adoc", "p1_enable_facebook_login.adoc", "p1_add_idp_in_p1.adoc", "p1_add_callback_url.adoc"]
section_ids:
  before-you-begin: Before you begin
  registering-your-application-with-facebook-for-developers: Registering your application with Facebook for Developers
  steps: Steps
  result: Result:
  next-steps: Next steps
  enabling-facebook-login: Enabling Facebook login
  steps-2: Steps
  adding-facebook-as-an-identity-provider-in-pingone: Adding Facebook as an identity provider in PingOne
  before-you-begin-2: Before you begin
  steps-3: Steps
  adding-the-callback-url-to-facebook-for-developers: Adding the callback URL to Facebook for Developers
  steps-4: Steps
  next-steps-2: Next steps
---

# Adding an identity provider - Facebook

Adding Facebook as an external identity provider (IdP) *(tooltip: \<div class="paragraph">
\<p>A service that manages identity information and provides authentication services to relying clients or SPs within a federated or distributed network.\</p>
\</div>)* gives your users the option to sign on with Facebook when accessing your application.

## Before you begin

Ensure that you have:

* A PingOne organization with an environment added. Learn more in [Starting a PingOne trial](../getting_started_with_pingone/p1_start_a_p1_trial.html).

* Added your application to PingOne. Learn more in [Adding an application](../applications/p1_applications_add_applications.html).

* A Facebook account.

## Registering your application with Facebook for Developers

Facebook generates an app ID and app secret for your application. You'll need these values to connect the application to PingOne.

### Steps

1. Sign on to your [Facebook Developer Account](https://developers.facebook.com).

   If you haven't created a Facebook Developer Account, you can do so now.

2. At the top of the page, click **My Apps** and then click **Create app**.

3. Select the appropriate application type and then click **Continue**.

4. Enter the following information:

   * **App Display name**: The name you want to associate with this application ID.

   * **App Contact email**: The primary contact information for the application.

5. Click **Create app**, and then complete the security check, if required.

   ### Result:

   The application dashboard is displayed.

6. On the left side of the page, go to **Settings** > **Basic** and enter the following information:

   * **App domains**: The path in your application that users are redirected to after they have authenticated with Facebook.

     Leave **App domains** blank for now.

   * **Privacy policy URL** (optional): The URL that contains your privacy policy.

   * **Terms of service URL** (optional): The URL that contains your terms of service.

7. At the top of the page, locate the **App ID** and **App secret** and copy their values to a secure location.

8. Click **Save changes**.

### Next steps

Learn more in [Meta App Development](https://developers.facebook.com/docs/apps).

## Enabling Facebook login

You must enable Facebook login for your application if it's not enabled already.

### Steps

1. Go to [Facebook for Developers](https://developers.facebook.com).

2. At the top of the page, click **My Apps**, and then select the appropriate app.

3. On the left side of the page, click **Products**

4. Locate the **Facebook login** card and click **Set up**.

5. Follow the instructions to set up Facebook login.

## Adding Facebook as an identity provider in PingOne

Configure the IdP connection in PingOne.

### Before you begin

Ensure that registration is enabled in the appropriate authentication policy. Learn more in [Editing an authentication policy](../authentication/p1_edit_auth_policy.html).

You should have the following information ready:

* App ID

* App secret

### Steps

1. In the PingOne admin console, go to **Integrations > External IdPs** and click **[icon: plus, set=fa]**.

2. Click **Facebook**.

3. Click **Next**.

4. On the **Add External Identity Provider** page, enter the following information:

   * **Name**: A unique identifier for the IdP.

   * **Description** (optional): A brief description of the IdP.

   * **Population**: A population that overrides the authentication policy's registration population and enables just-in-time registration from the IdP.

     |   |                                                                                                         |
     | - | ------------------------------------------------------------------------------------------------------- |
     |   | You can't change the **Icon** and **Sign-on button** in accordance with the provider's brand standards. |

5. Click **Next**.

6. Configure the connection and enter the following information:

   * **App ID**: The application ID that you copied earlier from the IdP. You can find this information on the **Basic settings** page in the [Facebook for Developers portal](https://developers.facebook.com).

   * **App Secret**: The application secret that you copied earlier from the IdP. You can find this information on the **Basic settings** page on the [Facebook for Developers portal](https://developers.facebook.com).

   * **Callback URL**: Copy the **Callback URL** to a secure location. You'll provide this value to the IdP later.

7. Click **Next**.

8. Define how the PingOne user attributes are mapped to IdP attributes. Learn more in [Mapping attributes](../directory/p1_editsamlattributemapping.html).

   * Enter the PingOne user profile attribute and the external IdP attribute. Learn more about attribute syntax in [Identity provider attributes](p1_idp_attributes.html).

   * To add an attribute, click **[icon: plus, set=fa]Add**.

   * To use the advanced expression builder, click the **Gear** icon. Learn more in [Using the expression builder](../pingone_expression_language/p1_use_expression_builder.html).

   * Select the update condition, which determines how PingOne updates its user directory with the values from the IdP. The options are:

     * **Empty only**: Update the PingOne attribute only if the existing attribute is empty.

     * **Always**: Always update the PingOne directory attribute.

9. Click **Save**.

10. To enable the IdP, click the toggle at the top of the details panel to the right (blue).

    |   |                                                                    |
    | - | ------------------------------------------------------------------ |
    |   | You can disable the IdP by clicking the toggle to the left (gray). |

## Adding the callback URL to Facebook for Developers

Copy the callback URL from the PingOne admin console and paste it in the Facebook for Developers login settings.

### Steps

1. In the PingOne admin console, go to **Integrations > External IdPs** and browse or search for the appropriate IdP.

2. Click the IdP to open the details panel.

3. On the **Connection** tab, copy the **Callback URL** to a secure location.

4. Go to [Facebook for Developers](https://developers.facebook.com).

5. At the top of the page, click **My Apps**, and then select the appropriate app.

6. Go to **Facebook Login > Settings**.

7. For **Valid OAuth Redirect URIs**, paste the value that you copied from the PingOne admin console.

### Next steps

* [Add the IdP to your authentication policy](../authentication/p1_edit_auth_policy.html).

* [Apply the authentication policy to your application](../applications/p1_apply_auth_policy_to_applications.html).
