SugarCRM token

SugarCRM is a customer relationship management system that can integrate with your CMS, search, and marketing automation platforms to help you build a single view of your customer to provide greater insight into your users.

The SugarCRM token asset allows you to integrate with a SugarCRM system, allowing your Matrix system to easily utilize the SugarCRM REST API and sync matrix users to SugarCRM records.

Once your SugarCRM token asset is created, you can configure its settings on its associated asset screens.

This documentation will describe the Details screen of the SugarCRM token.

The SugarCRM package in Matrix also comes with some trigger actions that you can use to sync users in Matrix with records in SugarCRM. The available trigger actions are Sync user to SugarCRM record and Set SugarCRM record ID. Read more about these triggers in the Trigger actions documentation.

Details screen

The details screen allows you to configure the settings to establish the connection to your SugarCRM system.

Authentication settings

The authentication settings section of the Details screen allows you to configure the connection to the SugarCRM system.

The fields available are as follows:

API version

This field displays with which version of the sugar API the SugarCRM token asset is compatible. For more information, refer to the API versioning documentation on the SugarCRM site: https://support.sugarcrm.com/Documentation/Unsupported_Versions/Sugar_7.9/index.html

SugarCRM host URL

Enter the URL of your SugarCRM system.

Username

Enter the username of the user used to authenticate to the SugarCRM system.

Password

Enter the password of the user used to authenticate to the SugarCRM system.

You will need to confirm your password by entering it again in the second text field available. It is recommended that you use a dedicated integration user in SugarCRM for the authentication credentials. This should be a user that does not need to sign in to the SugarCRM admin interface and is explicitly used for Matrix integration.
Client ID

The value used to identify the client. By default, this ID will be: sugar. A client ID of sugar will automatically create an OAuth key in the system used for password authentication. Additional client_ids can be created in the SugarCRM system by an administrator.

The SugarCRM token asset only supports password authentication grant type.
Client secret

Enter the client secret to validate against the client ID. This field is optional.

Platform

The platform ID. By default, this ID will be: squizmatrix. This field is available to prevent accidental sign-in clashes in other systems or users logging into the same SugarCRM system using the same authentication credentials.

Test authentication

Enable this field to test the API authentication on the access token. When this field is enabled, and you save the screen, Matrix will send a ping API request to the SugarCRM system with the stored access token and expect a pong response. The access token will be automatically renewed upon expiration. The test will fail if the token is revoked or invalidated for any reason.

Access token

The Access token section of the Details screen displays the access token details currently being stored.

The access token details will be displayed in the Access token field, including the token string, the date of expiry, and whether or not a refresh token is available.

The fields available are as follows:

Request new token

Enable this setting to request a new access token the next time you save the screen.

Access token

This table displays the information relating to the current access token stored for the asset. The values displayed in this table include:

Access token

The current access token value stored against the asset.

Expires at

The date and time of when the current access token will expire.

Refresh token

The current refresh token value stored against the asset. This will be used to retrieve a new access token once the access token is expired.

Refresh token expires at

The date and time of when the current refresh token will expire.

Download token

The current download token value stored against the asset. The download token is used to download images and files from SugarCRM. However, it is not currently used by the Matrix SugarCRM package for any specific features.

Read the official developer documentation on the SugarCRM website for more information regarding the SugarCRM API: http://support.sugarcrm.com/Documentation/Sugar_Developer/.

Keyword replacements

The following keyword replacements can be used when working with the SugarCRM package:

Keyword replacement Information shown

%globals_user_attribute_sugar_<module_name>_id%

This will retrieve the value of the SugarCRM record ID that is stored against the current user. The <module_name> must be in lowercase. For example, if the Module name in SugarCRM is called Contacts then the keyword to get the record ID stored against the current logged in User would be: %globals_user_attribute_sugar_contacts_id%

%asset_attribute_sugar_<module_name>_id%

This will retrieve the value of the SugarCRM record ID that is stored against a User asset when used in a trigger or asset listing. The <module_name> must be in lowercase. For example, if the module name in SugarCRM is called Contacts then the keyword to get the record ID stored against the user would be: %asset_attribute_sugar_contacts_id%

%globals_session_sugar_<module_name>%

This session keyword replacement can be used after using the Sync SugarCRM trigger action. The keyword will be evaluated against the SugarCRM record details that have been retrieved from the sync call and the data will be returned in a JSON format. For example, if the module name in SugarCRM is called Contacts then the keyword to get the data against the synced Record would be: %globals_session_sugar_contacts%

%globals_session_sugar_<module_name>_<attribute>%

This session keyword replacement can be used after using the Sync SugarCRM trigger action. The keyword will be evaluated against the SugarCRM record details that have been retrieved from the sync call and will return the value of a specific key/attribute within the JSON data. For example, if the module name in SugarCRM is called Contacts and you want to get the id attribute from the JSON data, then the keyword would be: %globals_session_sugar_contacts_id%