|
| 1 | +--- |
| 2 | +title: Freshsales Suite - CRM Destination |
| 3 | +id: 62945b73b8fbe38be7718039 |
| 4 | +--- |
| 5 | + |
| 6 | +[Freshsales Suite](https://www.freshworks.com/crm/suite/){:target="_blank"} is a cloud CRM software that breaks organizational silos across sales, marketing, and support, allowing businesses to connect with customers across all touchpoints in one system. |
| 7 | + |
| 8 | +This destination is maintained by Freshsales. For any issues with the destination [contact the Freshsales support team ](mailto:[email protected]). |
| 9 | + |
| 10 | +## Getting Started |
| 11 | + |
| 12 | +Freshsales Suite - CRM supports identify, page, and track methods, allowing users to create and update Freshsales contacts through Segment. To enable the Freshsales Suite - CRM destination, navigate to **Freshsales Admin Settings > Third Party Integrations > Segment** on the Freshsales platform. Click **Install** and select the Segment source you wish to connect to your Freshsales Suite - CRM destination. You can also add the Freshsales Suite - CRM destination from the Segment destinations catalog. You will have to provide the subdomain and API key in the destination settings, which are found in your Freshsales account. |
| 13 | + |
| 14 | + |
| 15 | +## Supported methods |
| 16 | + |
| 17 | +Freshsales Suite - CRM supports the following methods. |
| 18 | + |
| 19 | + |
| 20 | +### Identify |
| 21 | + |
| 22 | +You can use identify to create a contact when a website visitor fills a webform. When you identify a user, we’ll pass that user’s information to Freshsales. |
| 23 | + |
| 24 | + |
| 25 | +#### UserId |
| 26 | + |
| 27 | +userId is a mandatory field which is used to identify the contact in Freshsales. If your user identifier is not email, then email has to be a part of traits. |
| 28 | + |
| 29 | +```json= |
| 30 | +{ |
| 31 | + "userId": "97980cfea0067", |
| 32 | + "type": "identify", |
| 33 | + "traits": { |
| 34 | + "firstName": "John", |
| 35 | + "lastName": "Doe", |
| 36 | + |
| 37 | + "cfAlternateNumber": "98765432", |
| 38 | + "company": { |
| 39 | + "name": "Example.com" |
| 40 | + } |
| 41 | + } |
| 42 | +} |
| 43 | +
|
| 44 | +``` |
| 45 | + |
| 46 | +#### Traits |
| 47 | + |
| 48 | +Traits are pieces of information you know about a user that are included in an identify method. |
| 49 | + |
| 50 | +#### Default Traits |
| 51 | + |
| 52 | +Segment has reserved some traits that have semantic meanings for users. You should only use reserved traits for their intended meaning. Check the [Segment Spec](https://segment.com/docs/connections/spec/identify/#traits) to get a list of reserved traits. |
| 53 | + |
| 54 | + |
| 55 | + |
| 56 | +All attributes that are a part of traits should correspond to the internal names of those fields in Freshsales. Attributes that are not mapped with their corresponding fields are ignored. |
| 57 | + |
| 58 | +However, we make exception to two attributes: title and phone, which are reserved traits in Segment. They are automatically mapped to Freshsales attributes job_title and work_number respectively. |
| 59 | + |
| 60 | +#### Custom Traits |
| 61 | + |
| 62 | +As part of traits, you can send custom fields created in Freshsales by using their internal names in camel case. You can find internal names in the corresponding field settings page. Also, custom fields will not be automatically created. You have to create them in Freshsales before proceeding to send data from Segment. To learn more about creating custom fields in Freshsales click [here](https://crmsupport.freshworks.com/en/support/solutions/articles/50000002389-how-to-create-custom-fields-for-contacts-accounts-and-deals-). |
| 63 | + |
| 64 | + |
| 65 | + |
| 66 | +#### Objects |
| 67 | + |
| 68 | +Accounts and Deals associated with a contact can also be updated in Freshsales. The objects, company and deal, in the identify payload, correspond to the Accounts and Deals objects in Freshsales. Using the identify method, when creating a contact, it is also possible to create the corresponding Account and Deal in Freshsales. To do so, pass the company or the deal objects within traits in the identify call. |
| 69 | + |
| 70 | +```json= |
| 71 | +{ |
| 72 | + "userId" : "97980cfea0067", |
| 73 | + "type": "identify", |
| 74 | + "traits" : { |
| 75 | + "firstName": "John", |
| 76 | + "lastName": "Doe", |
| 77 | + |
| 78 | + "company": { |
| 79 | + "name": "Example.com" |
| 80 | + }, |
| 81 | + "deal" :{ |
| 82 | + "name" : "Sample Deal", |
| 83 | + "amount": 1234 |
| 84 | + } |
| 85 | + } |
| 86 | +} |
| 87 | +``` |
| 88 | + |
| 89 | +### Track |
| 90 | + |
| 91 | +You can track activities of your website visitors. If a user is subscribing to a newsletter and you want to track it, use the track method to accomplish that. |
| 92 | + |
| 93 | +```json= |
| 94 | +{ |
| 95 | + |
| 96 | + "event": "Email Bounced", |
| 97 | + "type": "track", |
| 98 | + "properties" : { |
| 99 | + "emailId": "110688", |
| 100 | + "emailSubject": "Welcome to Example.com", |
| 101 | + "campaignId": "123", |
| 102 | + "campaignName": "New Customer Discount" |
| 103 | + } |
| 104 | +} |
| 105 | +``` |
| 106 | + |
| 107 | +Segment has standardized a series of reserved event names that have special semantic meaning. We map these events to tools that support them whenever possible. See the [Semantic Events docs](/docs/connections/spec/semantic) for more detail. Custom events are supported as well. |
| 108 | + |
| 109 | +### Page |
| 110 | + |
| 111 | +If you want to track users visiting your sites, you can use the page method. When you call a page event, we send a pageview to Freshsales. You can send extra data paramerties within properties in the event payload. [See the reserved properties for more details](/docs/connections/spec/page/#properties). |
| 112 | + |
| 113 | +```json= |
| 114 | +{ |
| 115 | + |
| 116 | + "name": "Page view", |
| 117 | + “type”: ”page”, |
| 118 | + "properties" : { |
| 119 | + "title": "Welcome to pricing page | Example.com", |
| 120 | + "url" : "http://example.com/pricing" |
| 121 | + } |
| 122 | +``` |
| 123 | + |
| 124 | +### TroubleShooting |
| 125 | + |
| 126 | +#### Custom Fields Aren't Updating |
| 127 | + |
| 128 | +Make sure that the traits you’re passing through match the custom field’s internal name and data type. |
0 commit comments