> ## Documentation Index
> Fetch the complete documentation index at: https://docs.useparagon.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Salesforce

## Required Scopes

To configure a Sync for Salesforce, you need to request the following scopes from your Salesforce OAuth application:

* `api`
* `refresh_token`
* `offline_access`

Learn more about configuring scopes for your app in [Adding Integrations](/getting-started/adding-an-integration#create-a-developer-app).

## Synced Objects

Salesforce supports the following Synced Objects:

* [Contacts](/managed-sync/api/contact-schema)
* [Companies](/managed-sync/api/company-schema)
* [Deals](/managed-sync/api/deal-schema)
* [Custom Objects](/managed-sync/api/custom-object-schema)

## Contacts

### Sync Configuration Options

```json Example focus={4-6} theme={null}
{
    "integration": "salesforce",
    "pipeline": "contacts",
    "configuration": {
        "listViewId": "00B5g00000AWN0qEAH"
    }
}
```

<ParamField path="listViewId" type="string">
  A Salesforce List View ID to limit the Sync scope to. If not specified, the Sync will ingest all available contacts from the user's Salesforce account.
</ParamField>

## Companies

This Sync will pull Accounts from Salesforce to map to the standard [Company](/managed-sync/api/company-schema) schema.

### Sync Configuration Options

```json Example theme={null}
{
    "integration": "salesforce",
    "pipeline": "companies",
    "configuration": {
        "listViewId": "00B5g00000ABC123EAA"
    }
}
```

<ParamField path="listViewId" type="string">
  A Salesforce List View ID to limit the Sync scope to. If not specified, the Sync will ingest all available companies from the user's Salesforce account.
</ParamField>

## Deals

This Sync will pull Opportunities from Salesforce to map to the standard [Deal](/managed-sync/api/deal-schema) schema.

### Sync Configuration Options

```json Example theme={null}
{
    "integration": "salesforce",
    "pipeline": "deals",
    "configuration": {
        "listViewId": "00B5g00000ABC123EAA"
    }
}
```

<ParamField path="listViewId" type="string">
  A Salesforce List View ID to limit the Sync scope to. If not specified, the Sync will ingest all available deals from the user's Salesforce account.
</ParamField>

## Custom Objects

### Sync Configuration Options

```json Example theme={null}
{
    "integration": "salesforce",
    "pipeline": "custom_objects",
    "configuration": {
        "customObjectName": "Product_Catalog__c",
        "listViewId": "00B5g00000XYZ789EAA"
    }
}
```

<ParamField path="customObjectName" type="string" required>
  The API name of the Salesforce custom object to sync, e.g., `Product_Catalog__c`.
</ParamField>

<ParamField path="listViewId" type="string">
  A Salesforce List View ID to limit the Sync scope to. If not specified, the Sync will ingest all available records for the custom object from the user's Salesforce account.
</ParamField>
