Skip to content

Commit 94f1aa2

Browse files
author
markzegarelli
authored
salesforce classic eol (#4524)
* Add Salesforce (Classic) deprecation content * edits
1 parent 2ed8372 commit 94f1aa2

File tree

2 files changed

+59
-7
lines changed
  • src/connections/destinations/catalog

2 files changed

+59
-7
lines changed

src/connections/destinations/catalog/actions-salesforce/index.md

Lines changed: 51 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ Segment’s Salesforce (Actions) destination allows you to create, update or ups
2020
The Salesforce (Actions) destination provides the following benefits over the classic Salesforce destination:
2121
- **Fewer settings**. Data mapping for actions-based destinations happens during configuration, which eliminates the need for most settings.
2222
- **Clearer mapping of data**. Actions-based destinations enable you to define the mapping between the data Segment receives from your source, and the data Segment sends to Salesforce.
23-
- **OAuth 2.0 support**. Authentication with Salesforce leverages OAuth 2.0 instead of a username/password.
23+
- **OAuth 2.0 support**. Authentication with Salesforce uses OAuth 2.0 instead of a username/password.
2424
- **Flexible match keys**. Upsert and update records based on any match key, including external IDs, record IDs, email and other object fields.
2525
- **Batch support**. Reduce Salesforce overages and rate-limit errors by batching your Segment data to Salesforce's Bulk API 2.0.
2626

@@ -60,10 +60,58 @@ When using the `update` and `upsert` operations, you must specify the match key(
6060

6161
If multiple fields are provided in the Record Matchers object, Segment uses an "OR" operator to query Salesforce for a record. If multiple records are returned upon query, no updates will be made. Segment will instead record a 300 error status for the request, and the request will not be retried. **Please use fields that result in unique records**.
6262

63-
Please note Salesforce only allows querying on fields that have the "Filter" property. For example, we cannot query on the Case `Description` because it is not a filterable property. You can lookup the standard field properties in [Salesforce’s API documentation](https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/intro_rest.htm){:target="_blank"} to determine if a field is available for querying.
63+
Please note Salesforce only allows querying on fields that have the "Filter" property. For example, Segment doesn't query on the Case `Description` because it is not a filterable property. You can lookup the standard field properties in [Salesforce’s API documentation](https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/intro_rest.htm){:target="_blank"} to determine if a field is available for querying.
6464

6565
![the filter property](images/image1.png)
6666

67+
## Migrate from Salesforce (Classic)
68+
69+
To migrate from Salesforce (Classic), complete the following steps before May 31, 2023:
70+
71+
1. Log in to your Segment workspace and review the copied settings in each new Salesforce (Actions) instance to ensure their accuracy.
72+
2. Authenticate Segment with Salesforce with OAuth.
73+
3. Enable the Salesforce (Actions) destination & disable the Classic destination.
74+
75+
> info "Authenticate with Salesforce"
76+
> Salesforce (Actions) requires OAuth based authentication while Salesforce Classic uses tokens and credentials. Because of this, Segment can't migrate authentication credentials. Your workspace owner must login and configure OAuth Authentication for each Salesforce (Actions) destinations that were migrated.
77+
78+
If you have more than one Salesforce instance connected to Segment, repeat these three steps for each instance.
79+
80+
Keep the following in mind as you begin to use Salesforce (Actions):
81+
- Salesforce (Actions) supports batching. The workspace owner can edit the enabled-batching field manually for any of the mappings. This setting is disabled by default.
82+
- Salesforce (Actions) doesn’t support Delete CRUD operations on Custom Object. Custom Objects with CRUD the operation set to `delete` are not migrated.
83+
- Sending Identify events to Salesforce (Classic) results in a create or update operation for Leads, and maps properties from `event.traits` Salesforce (Actions) does not support this behavior. By default, the migration tool maps only a subset of the most used Lead properties as mentioned below. The workspace owner must map any additional Salesforce properties or Custom properties manually.
84+
85+
Review the tables below to see how settings from Salesforce (Classic) were migrated to Salesforce (Actions).
86+
87+
### Leads
88+
89+
| Salesforce (Actions) property | Migrated behavior |
90+
| ----------------------------- | ------------------------------------------------------------------------------------------------------------- |
91+
| Record Matchers | Uses **Custom Lead Lookup** fields from Salesforce (Classic), if available, or **Email** as a fallback value. |
92+
| Name | Appears within the **Other Fields** property, defaults to `traits.name`. |
93+
| Phone | Appears within the **Other Fields** property, defaults to `coalesce(traits.phone, traits.phoneNumber)`. |
94+
| Title | Appears within the **Other Fields** property, defaults to `coalesce(traits.address.title, traits.position)`. |
95+
| Website | Appears within the **Other Fields** property, defaults to `traits.website`. |
96+
| Description | Appears within the **Other Fields** property, defaults to `traits.description`. |
97+
| Lead Source | Appears within the **Other Fields** property, defaults to `traits.leadSource`. |
98+
99+
### Account
100+
101+
| Salesforce (Actions) property | Migrated behavior |
102+
| ----------------------------- | ------------------------------------------------------------------------------------------------------------- |
103+
| Billing Street | Created only if the **Send Address as Billing Address** property is set in Salesforce (Classic). Defaults to `coalesce(traits.address.street, traits.street)`. |
104+
| Billing City | Created only if the **Send Address as Billing Address** property is set in Salesforce (Classic). Defaults to `coalesce(traits.address.city, traits.city)`. |
105+
| Billing State | Created only if the **Send Address as Billing Address** property is set in Salesforce (Classic). Defaults to `coalesce(traits.address.state, traits.state)`. |
106+
| Billing Country | Created only if the **Send Address as Billing Address** property is set in Salesforce (Classic). Defaults to `coalesce(traits.address.country, traits.country)`. |
107+
| Billing Postal Code | Created only if the **Send Address as Billing Address** property is set in Salesforce (Classic). Defaults to `coalesce(traits.address.postalCode, traits.postalCode)`. |
108+
| Shipping Street | Created only if the **Send Address as Shipping Address** property is set in Salesforce (Classic). Defaults to `coalesce(traits.address.street, traits.street)`. |
109+
| Shipping City | Created only if the **Send Address as Shipping Address** property is set in Salesforce (Classic). Defaults to `coalesce(traits.address.city, traits.city)`. |
110+
| Shipping State | Created only if the **Send Address as Shipping Address** property is set in Salesforce (Classic). Defaults to `coalesce(traits.address.state, traits.state)`. |
111+
| Shipping Country | Created only if the **Send Address as Shipping Address** property is set in Salesforce (Classic). Defaults to `coalesce(traits.address.country, traits.country)`. |
112+
| Shipping Postal Code | Created only if the **Send Address as Shipping Address** property is set in Salesforce (Classic). Defaults to `coalesce(traits.address.postalCode, traits.postalCode)`. |
113+
114+
67115
## FAQ
68116

69117
### How do I enable a sandbox instance?
@@ -72,7 +120,7 @@ To send data to a Salesforce sandbox instance, navigate to **Settings > Advanced
72120
Your Salesforce sandbox username appends the sandbox name to your Salesforce production username. For example, if a username for a production org is `[email protected]` and the sandbox is named `test`, the username to log in to the sandbox is `[email protected]`.
73121

74122
### How do I add custom fields?
75-
Custom fields can be included in the Other Fields mapping. Custom fields must be predefined in your Salesforce account and should end with `__c` (i.e. `My_Custom_Field__c`). Please include the `__c` in your mapping.
123+
Custom fields can be included in the Other Fields mapping. Custom fields must be predefined in your Salesforce account and should end with `__c` (for example, `My_Custom_Field__c`). Please include the `__c` in your mapping.
76124

77125
You can see Salesforce API names in Salesforce under **Setup > Objects and Fields > Object Manager > Select your object > Fields & Relationships > FIELD NAME**.
78126

src/connections/destinations/catalog/salesforce/index.md

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,18 @@
22
title: Salesforce Destination
33
strat: salesforce
44
id: 54521fda25e721e32a72eeef
5-
maintenance: true
5+
maintenance: false
66
private: true
77
---
8-
8+
> warning "Deprecation Notice"
9+
> Due to Salesforce retiring certain APIs on May 31, 2023, Segment is deprecating this destination. During the week of April 24, 2023, Segment will create an instance of the [Salesforce (Actions)](/docs/connections/destinations/catalog/actions-salesforce/) destination for each version of the Salesforce classic destination in your workspace.
10+
>
11+
> Settings will be migrated automatically, but you must take additional action to ensure the destination is properly enabled.For more information, see [Migrating from Salesforce Classic](/docs/connections/destinations/catalog/actions-salesforce/#migrate-from-salesforce-classic)
12+
>
13+
> For questions or issues, or to opt out of the automatic upgrade, contact [[email protected]](mailto:[email protected]).
914
Segment's Salesforce destination allows you to create and store leads and records for other objects in Salesforce Sales Cloud.
1015

11-
> info ""
12-
> Segment is aware of Salesforce's plans to enforce multi-factor authentication in 2022, and advises migrating to our new [Salesforce (Actions) destination](/docs/connections/destinations/catalog/actions-salesforce/) which supports OAuth 2.0.
16+
1317

1418
### API Access
1519

0 commit comments

Comments
 (0)