DescriptionJob Queue configurations.TypeArrayVersions6.5.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['jobs'] = array();jobs.hard_lifetime
DescriptionHard deletes all jobs that are older than the hard cutoff. Default is 21 days.TypeInteger : DaysVersions6.5.1+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value21Override Example$sugar_config['jobs']['hard_lifetime'] = 21;jobs.max_retries
DescriptionMaximum number of failures for job. Default is 5.TypeInteger : Number of failuresVersions6.5.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value5Override Example$sugar_config['jobs']['max_retries'] = 5;jobs.min_retry_interval


DescriptionMinimal interval between job reruns. Default is 30 seconds.TypeInteger : SecondsVersions6.5.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value30Override Example$sugar_config['jobs']['min_retry_interval'] = 30;jobs.soft_lifetime
DescriptionSoft deletes all jobs that are older than cutoff. Default is 21 days.TypeInteger : DaysVersions6.5.1+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value7Override Example$sugar_config['jobs']['soft_lifetime'] = 7;jobs.timeout


DescriptionIf a job is running longer than the limit, the job is failed by force. Specified in seconds. Default is 3600 seconds (1 hour).TypeInteger : SecondsVersions6.5.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value3600Override Example$sugar_config['jobs']['timeout'] = 86400;languages
DescriptionThe list of languages available in the system. An administrator can limit the languages available by removing them from this array. When modifying this array, you will need to make sure that the default_language config setting matches a language available in the list.TypeArray : Language KeysVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValueAll available languagesOverride Example$sugar_config['languages'] =  array ('en_us' => 'English (US)');list_max_entries_per_page


DescriptionListview items per page.TypeString : Records per pageVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value20Override Example$sugar_config['list_max_entries_per_page'] = '20';list_report_max_per_page
DescriptionSets the maximum number of reports that are listed on each page in the Reports module.TypeInteger : Number of recordsVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value100Override Example$sugar_config['list_report_max_per_page'] = 100;logger
DescriptionAn array that defines all of the logging settings.TypeArrayVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['logger'] = array();logger.channels


DescriptionThis setting controls the PSR-3 Logger channels. There are stock channels included in Sugar that can be utilized for various troubleshooting, and custom channels can easily be utilized in custom code. Please consult the PSR-3 Logger Documentation for further information on modifying channels and utilizing them.TypeArrayVersions7.9.1.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['logger']['channels'] = array();logger.channels.authentication
DescriptionThis setting controls the PSR-3 Logger Channel configuration for the authentication channel.TypeArrayVersions7.10.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['logger']['channels']['authentication'] = array();logger.channels.authentication.handlers


DescriptionThis setting controls the PSR-3 Logger Handler utilized by the authentication logging channel. TypeArrayVersions7.10.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['logger']['channels']['authentication']['handlers'][] = 'File';logger.channels.authentication.level


DescriptionThis setting controls the authentication PSR-3 Logger channel's log level. If you need to troubleshoot authentication issues in Sugar, and do not want to enable debug logging on the entire system, you can utilize this channel for more robust logging around the Authentication Controller.TypeString : Logging levelRange of values'emergency', 'alert', 'critical', 'error', 'warning', 'notice', 'info', 'debug', 'off'Versions7.10.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['logger']['channels']['authentication']['level'] = 'debug';logger.channels.authentication.processors


DescriptionThis setting controls the authentication PSR-3 Logger channels processors. TypeArray : Logging ProcessorsRange of values'request', 'backtrace'Versions7.10.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['logger']['authentication']['authentication']['processors'] = array('request', 'backtrace');logger.channels.channel


DescriptionThis setting controls the PSR-3 Logger channels. There are stock channels included in Sugar that can be utilized for various troubleshooting, and custom channels can easily be utilized in custom code. The channel configuration typically consists of three properties, the level, handlers, and processors, however not all need to be defined as they do inherit their properties from the default Logger implementation. Please consult the PSR-3 Logger Documentation for further information on adding custom channels and utilizing them.TypeArrayVersions7.9.1.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['logger']['channels']['<channel>'] = array();logger.channels.channel.handlers


DescriptionThis setting controls the PSR-3 Logger Handler utilized by the defined logging channel. By default Sugar only comes with the 'File' handler, however custom handlers can easily be added as outlined in our PSR-3 Logger Documentation.TypeArrayVersions7.9.1.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['logger']['channels']['<channel>']['handlers'][] = 'File';logger.channels.channel.level


DescriptionThis setting controls the PSR-3 Log Level for the specified log channel.TypeString : Logging levelRange of values'emergency', 'alert', 'critical', 'error', 'warning', 'notice', 'info', 'debug', 'off'Versions7.9.1.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['logger']['channels']['<channel>']['level'] = 'alert';logger.channels.channel.processors


DescriptionThis setting controls a specific PSR-3 Logger channels processors. To more easily debug issues, you can enable the provided backtrace or request Log Processors to provide more insight into a particular log. For more information on adding custom processors and using them on logging channels consult the PSR-3 Logger Documentation.TypeArray : Logging ProcessorsRange of values'request', 'backtrace'Versions7.9.1.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['logger']['channels']['<channel>']['processors'] = array('request', 'backtrace');logger.channels.db


DescriptionThis setting controls the PSR-3 Logger Channel configuration for the db channel.TypeArrayVersions8.1.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['logger']['channels']['db'] = array();logger.channels.db.handlers
DescriptionThis setting controls the PSR-3 Logger Handler utilized by the db logging channel. TypeArrayVersions8.1.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['logger']['channels']['db']['handlers'][] = 'File';logger.channels.db.level


DescriptionThis setting controls the Log Level for the db channel of the PSR-3 Logger. TypeString : Logging levelRange of values'emergency', 'alert', 'critical', 'error', 'warning', 'notice', 'info', 'debug', 'off'Versions8.1.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['logger']['channels']['db']['level'] = 'debug';logger.channels.db.processors


DescriptionThis setting controls the db PSR-3 Logger channels processors. TypeArray : Logging ProcessorsRange of values'request', 'backtrace'Versions8.1.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['logger']['channels']['db']['processors'] = array('request', 'backtrace');logger.channels.deprecation


DescriptionThis setting controls the PSR-3 Logger Channel configuration for the deprecation channel. If you need to clean up your customizations from usage of deprecated functionality of Sugar or some underlying libraries which implement runtime deprecation logging and you do not want to enable warning logging on the entire system, you can utilize this channel. Instances running on Sugar's cloud environment will have this setting enforced as empty.TypeArrayVersions11.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValueemptySugarCloud ValueemptyOverride Example$sugar_config['logger']['channels']['deprecation'] = [];logger.channels.deprecation.handlers


DescriptionThis setting controls the PSR-3 Logger Handler utilized by the deprecation logging channel. By default, Sugar only comes with the File handler, however custom handlers can be added as outlined in our PSR-3 Logger documentation. Instances running on Sugar's cloud environment will have this setting enforced as empty.TypeArrayVersions11.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValueemptySugarCloud ValueemptyOverride Example$sugar_config['logger']['channels']['deprecation']['handlers'][] = [ 'type' => 'File', 'name' => 'symfony_deprecations', ];logger.channels.deprecation.level


DescriptionThis setting controls the deprecation PSR-3 Logger channel's log level. Instances running on Sugar's cloud environment will have this setting enforced as alert.TypeString : Logging LevelRange of valuesemergency, alert, critical, error, warning, notice, info, debug, offVersions11.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuealertSugarCloud ValuealertOverride Example$sugar_config['logger']['channels']['deprecation']['level'] = 'warning';logger.channels.deprecation.processors


DescriptionThis setting controls the deprecation PSR-3 Logger channels processors. To more easily debug issues, you can enable the provided backtrace or request Log Processors to provide more insight into a particular log. For more information on adding custom processors and using them on logging channels, please refer to the PSR-3 Logger documentation. Instances running on Sugar's cloud environment will have this setting enforced as empty.TypeArray : Logging ProcessorsRange of valuesrequest, backtraceVersions11.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValueemptySugarCloud ValueemptyOverride Example$sugar_config['logger']['deprecation']['processors'] = ['request', 'backtrace'];logger.channels.input_validation


DescriptionThis setting controls the PSR-3 Logger Channel configuration for the input_validation channel.TypeArrayVersions7.9.1.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['logger']['channels']['input_validation'] = array();logger.channels.input_validation.handlers
DescriptionThis setting controls the PSR-3 Logger Handler utilized by the input_validation logging channel. TypeArrayVersions7.9.1.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['logger']['channels']['input_validation']['handlers'][] = 'File';logger.channels.input_validation.level


DescriptionThis setting controls the logging level for input validation failure messages when validation.soft_fail is enabled.TypeString : Logging levelRange of values'emergency', 'alert', 'critical', 'error', 'warning', 'notice', 'info', 'debug', 'off'Versions7.9.1.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['logger']['channels']['input_validation']['level'] = 'warning';logger.channels.input_validation.processors


DescriptionThis setting controls the input_validation PSR-3 Logger channels processors. TypeArray : Logging ProcessorsRange of values'request', 'backtrace'Versions7.9.1.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['logger']['channels']['input_validation']['processors'] = array('request', 'backtrace');logger.channels.metadata
DescriptionThis setting controls the PSR-3 Logger Channel configuration for the metadata channel.TypeArrayVersions7.9.1.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['logger']['channels']['metadata'] = array();logger.channels.metadata.handlers


DescriptionThis setting controls the PSR-3 Logger Handler utilized by the metadata logging channel. TypeArrayVersions7.9.1.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['logger']['channels']['metadata']['handlers'][] = 'File';logger.channels.metadata.level


DescriptionThis logging channel can be used to track and debug metadata refresh issues. Overly frequent metadata refreshes will cause performance issues for affected Sugar instances. This metadata logging channel can help determine the frequency and causes of metadata refreshes.TypeString : Logging levelRange of values'emergency', 'alert', 'critical', 'error', 'warning', 'notice', 'info', 'debug', 'off'Versions7.9.1.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['logger']['channels']['metadata']['level'] = 'debug';logger.channels.metadata.processors


DescriptionThis setting controls the metadata PSR-3 Logger channels processors. TypeArray : Logging ProcessorsRange of values'request', 'backtrace'Versions7.9.1.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['logger']['channels']['metadata']['processors'] = array('request', 'backtrace');logger.channels.rest
DescriptionThis setting controls the PSR-3 Logger Channel configuration for the rest channel.TypeArrayVersions7.10.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['logger']['channels']['rest'] = array();logger.channels.rest.handlers


DescriptionThis setting controls the PSR-3 Logger Handler utilized by the rest logging channel. TypeArrayVersions7.10.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['logger']['channels']['rest']['handlers'][] = 'File';logger.channels.rest.level
DescriptionThis setting controls the Log Level for the rest channel of the PSR-3 Logger. TypeString : Logging levelRange of values'emergency', 'alert', 'critical', 'error', 'warning', 'notice', 'info', 'debug', 'off'Versions7.10.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['logger']['channels']['rest']['level'] = 'debug';logger.channels.rest.processors


DescriptionThis setting controls the rest PSR-3 Logger channels processors. TypeArray : Logging ProcessorsRange of values'request', 'backtrace'Versions7.10.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['logger']['channels']['rest']['processors'] = array('request', 'backtrace');logger.file.dateFormat


DescriptionThe date format for the log file is any value that is acceptable to the PHP strftime() function. The default is '%c'. For a complete list of available date formats, please see the strftime() PHP documentation at http://php.net/manual/en/function.strftime.php.TypeString : Date formatRange of valuesPattern for date formatVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value%cOverride Example$sugar_config['logger']['file']['dateFormat'] = '%c';logger.file.ext


DescriptionThe extension of the log file. The default value is '.log'. Instances running on Sugar's cloud environment will have this setting enforced as .log.TypeString : File extensionRange of valuesExtension for the logVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value.logSugarCloud Value.logOverride Example$sugar_config['logger']['file']['ext'] = '.log';logger.file.maxLogs


DescriptionWhen the log file grows to the logger.file.maxSize value, the system will automatically roll the log file. The logger.file.maxLogs value controls the max number of logs that will be saved before it deletes the oldest. The default value is 10.TypeInteger : Number of logsVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value10Override Example$sugar_config['logger']['file']['maxLogs'] = 10;logger.file.maxSize


DescriptionThis value controls the max file size of a log before the system will roll the log file. It must be set in the format '10MB' where 10 is number of MB to store. Always use MB as no other value is currently accepted. To disable log rolling set the value to false. The default value is '10MB'. Instances running on Sugar's cloud environment will have this setting enforced as 10MB.TypeString : SizeVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value10MBSugarCloud Value10MBOverride Example$sugar_config['logger']['file']['maxSize'] = '10MB';logger.file.name


DescriptionThe name of the log file to be written to. Instances running on Sugar's cloud environment will have this setting enforced as sugarcrm.TypeString : FilenameVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuesugarcrmSugarCloud ValuesugarcrmOverride Example$sugar_config['logger']['file']['name'] = 'sugarcrm';logger.file.suffix


DescriptionThe suffix to the file name to track logs chronologically. For instance, if you wanted to append the month and year to a file name, you can change this setting to '%m_%Y'. For a complete list of available date formats, please see the strftime() PHP documentation at http://php.net/manual/en/function.strftime.php. Instances running on Sugar's cloud environment will have this setting enforced as empty.TypeString : Suffix patternVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValueemptySugarCloud ValueemptyOverride Example$sugar_config['logger']['file']['suffix'] = '%m_%Y';logger.level


DescriptionDetermines the logging level of the system. The recommended setting is 'fatal'. Instances running on Sugar's cloud environment will have this setting enforced as fatal.TypeString : Logging levelRange of values'debug', 'info', 'warn', 'deprecated', 'error', 'fatal', 'security', 'off'Versions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuefatalSugarCloud ValuefatalOverride Example$sugar_config['logger']['level'] = 'fatal';logger_visible


DescriptionDetermines whether the Logger Settings panel is visible to administrators in Admin > System Settings. Instances running on Sugar's cloud environment will have this setting enforced as false.TypeBooleanRange of valuestrue and falseVersions6.7.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuetrueSugarCloud ValuefalseOverride Example$sugar_config['logger_visible'] = false;log_dir
DescriptionSets the location in the file system where the Sugar log file will be stored. By default, it is set to '.' meaning that it is stored in the root instance directory. Instances running on Sugar's cloud environment will have this setting enforced as ..TypeString : Directory PathVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value.SugarCloud Value.Override Example$sugar_config['log_dir'] = '.';log_file


DescriptionDesignates the file name where the instance's logs will be stored. Instances running on Sugar's cloud environment will have this setting enforced as sugarcrm.log.TypeString : Name of the log fileVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Valuesugarcrm.logSugarCloud Valuesugarcrm.logOverride Example$sugar_config['log_file'] = 'new_sugarcrm.log'log_memory_usage
DescriptionLogs the memory usage. Instances running on Sugar's cloud environment will have this setting enforced as false.TypeBooleanRange of valuestrue and falseVersions5.5.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuefalseSugarCloud ValuefalseOverride Example$sugar_config['log_memory_usage'] = true;maintenanceMode


DescriptionAllows the instance to be placed in a maintenance mode where non-admin users cannot access the instance.TypeBooleanRange of valuestrue and falseVersions7.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuefalseOverride Example$sugar_config['maintenanceMode'] = false;marketing_extras_enabled
DescriptionThis configuration disables the marketing content on the Sugar login screen.TypeBooleanRange of valuestrue and falseVersions8.1.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuetrueOverride Example$sugar_config['marketing_extras_enabled'] = false;mark_emails_seen


DescriptionDetermines whether to mark an email as read before importing the email to Sugar during the inbound email import. This is not recommended as an import failure will cause the email to be marked as read which will be skipped during the next inbound email import.TypeBooleanRange of valuestrue and falseVersions6.5.17+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuefalseOverride Example$sugar_config['mark_emails_seen'] = true;mass_actions
DescriptionArray that defines mass action behaviors.TypeArrayVersions7.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['mass_actions'] = array();mass_actions.mass_delete_chunk_size


DescriptionNumber of records per chunk while performing a mass delete.TypeIntegerVersions7.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value20Override Example$sugar_config['mass_delete_chunk_size'] = 20;mass_actions.mass_link_chunk_size
DescriptionNumber of records per chunk while performing mass linking updates.TypeIntegerVersions7.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value20Override Example$sugar_config['mass_actions']['mass_link_chunk_size'] = 20;mass_actions.mass_update_chunk_size


DescriptionNumber of records per chunk while performing a mass update.TypeIntegerVersions7.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value500Override Example$sugar_config['mass_actions']['mass_update_chunk_size'] = 500;mass_actions.max_records_to_merge
DescriptionNumber of records per chunk while performing a mass merge.TypeIntegerVersions7.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value5Override Example$sugar_config['mass_actions']['max_records_to_merge'] = 20;maxPinnedModules
DescriptionThe number of pinned modules to be displayed on the navigation bar (in the collapsed state).


DescriptionThe number of pinned modules to be displayed on the navigation bar (in the collapsed state).
Note: For Sugar versions 13.0.0 and higher, the number of pinned modules can also be configured via Admin > Navigation Bar and Subpanels. Instances running on Sugar's cloud environment will have this setting enforced as 4.TypeIntegerVersions12.3.0+ProductsEnterprise, Serve, SellDefault Value4SugarCloud Value4Override Example$sugar_config['maxPinnedModules'] = 6;max_aggregate_email_attachments_bytes


DescriptionThe maximum allowed size of all uploaded attachments added together for a single email message. Users may upload files as email attachments within to the lowest of the PHP upload_max_filesize, post_max_size, and system upload_maxsize size limits, but users cannot upload more files to a single message than the max_aggregate_email_attachments_bytes configuration permits.TypeInteger : bytesVersions7.10.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value10000000Override Example$sugar_config['max_aggregate_email_attachments_bytes'] = 20000000;max_session_time


DescriptionDetermines the maximum lock time in seconds between session requests. When a session request is locked for long periods of time, other requests are blocked until it is released. A null value will not implement a max session time. Instances running on Sugar's cloud environment will have this setting enforced as 1.TypeInteger : SecondsVersions6.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuenullSugarCloud Value1Override Example$sugar_config['max_session_time'] = 1;metrics_enabled
DescriptionWhether or not system metrics have been enabled.TypeBooleanRange of valuestrue and falseVersions6.7.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuefalseOverride Example$sugar_config['metrics_enabled'] = true;metric_providers


DescriptionA Name/Path array of metric providers for measuring system metricsTypeArrayVersions6.7.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['metric_providers'] = array ('provider' => 'path/to/provider');metric_settings
DescriptionThe individual settings required by a metric provider. And values provided will be passed when instantiating the metric providers object.TypeArray : Metric Provider SettingsVersions6.7.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['metric_settings'] = array ('provider' => array('setting' => 'value'));minify_resources


DescriptionDetermines whether minification and compression are applied to javascript resourcesTypeBooleanRange of valuestrue and falseVersions7.7.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuetrueOverride Example$sugar_config['minify_resources'] = false;moduleInstaller
DescriptionArray that defines restrictions on module installations via the Module Loader utility.TypeArrayVersions5.2.0.j+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['moduleInstaller'] = array();moduleInstaller.disableActions


DescriptionPart of the moduleInstaller array. When packageScan is set to 'true', Sugar does not restrict any specific actions that can be completed during the installation process. The disableActions parameter allows you to define any actions you wish to restrict from executing.TypeArrayRange of valuesSpecific actions to restrict in module packagesVersions5.2.0j+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Valuearray()Override Example$sugar_config['moduleInstaller']['disableActions'] = array('pre_execute', 'post_execute');moduleInstaller.disableFileScan


DescriptionWhen packageScan is set to 'true', Sugar scans all files in an installable package to ensure that the file extensions are acceptable and that the files do not contain denylisted class or function calls. Setting the disableFileScan parameter to 'true' avoids this scan from occurring while still enforcing other parameters set.TypeBooleanRange of valuestrue and falseVersions5.2.0j+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['moduleInstaller']['disableFileScan'] = true;moduleInstaller.packageScan


DescriptionEnables package scanning on any modules uploaded through Module Loader prior to the installation. If the package is found to violate any restrictions of the packageScan, the installation will not proceed and an error report will be generated to the user attempting the install. Instances running on Sugar's cloud environment will have this setting enforced as true.TypeBooleanRange of valuestrue and falseVersions5.5.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuefalseSugarCloud ValuetrueOverride Example$sugar_config['moduleInstaller']['packageScan'] = true;moduleInstaller.validExt


DescriptionPart of the moduleInstaller array. When moduleInstaller.packageScan is set to true, Sugar will not allow certain file extensions to be present in an installable package. By default, Sugar allows the following extensions: 'png', 'gif', 'jpg', 'css', 'js', 'php', 'txt', 'html', 'htm', 'tpl', 'pdf', 'md5', 'xml', 'hbs', 'less', and 'wsdl'. This parameter allows you to define additional extensions deemed safe to install on your instance of Sugar.  Instances running on Sugar's cloud environment will have this setting enforced as array('eot','svg','tff','woff','woff2','xml','md').TypeArray : ExtensionsRange of valuesFile extensions to allowVersions6.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Valuearray()SugarCloud


Enterprise, Ultimate, Serve, SellDefault Valuearray()SugarCloud Valuearray('eot','svg','tff','woff','woff2','xml','md')Override Example$sugar_config['moduleInstaller']['validExt'] = array('swf', 'log');mso_fixup_paragraph_tags


DescriptionDetermines whether email HTML is scrubbed for empty paragraph tags when displayed in the application. Setting this value to true will enable the HTML scrubbing. Enabling this setting does not affect the HTML stored in the database from the initial import. Created as a result of bug 66022 (https://web.sugarcrm.com/support/issues/66022).TypeBooleanRange of valuestrue and falseVersions7.7.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuefalseOverride Example$sugar_config['mso_fixup_paragraph_tags'] = true;new_email_addresses_opted_out


DescriptionIf true, then newly created EmailAddress records in Sugar will be opted-out by default. This setting can also be controlled using the "Opt-out new email addresses by default" setting in Admin > System Email Settings.TypeBooleanRange of valuestrue and falseVersions8.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuefalseOverride Example$sugar_config['new_email_addresses_opted_out'] = true;noPrivateTeamUpdate
DescriptionPrevents name changes to a users private team. This setting can be modified by changing in Admin > System Settings > Advanced > Prevent name changes by users to update their Private Team NameTypeBooleanRange of valuestrue and falseVersions7.6.1.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuefalseOverride Example$sugar_config['noPrivateTeamUpdate'] = true;oauth2


DescriptionConfigutations for the oauth2 server.TypeArrayVersions7.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['oauth2'] = array();oauth2.access_token_lifetime


DescriptionThe lifetime of the access token in seconds.  This setting controls how often Sugar will check to see if the user's token has expired. It is recommended for this value not to surpass more than half of the oauth2.refresh_token_lifetime setting. Note: This setting cannot exceed the maximum PHP session timeout, which is configured by PHP setting session.gc_maxlifetime. In SugarCloud the maximum session timeout is set to 7200s (2 hours).Note: This setting is not respected for instances that use SugarIdentity.TypeInteger : SecondsVersions7.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value3600Override Example$sugar_config['oauth2']['access_token_lifetime'] = 3600;oauth2.refresh_token_lifetime


DescriptionThe lifetime of refresh token in seconds. We recommend the oauth2.refresh_token_lifetime remains at 1209600 seconds or less for security. Should you increase this number, do not exceed 2147220 seconds. Note: This setting is not respected for instances that use SugarIdentity.TypeIntegerVersions7.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value1209600Override Example$sugar_config['oauth2']['refresh_token_lifetime'] = 1409600;oauth_token_expiry
DescriptionSets whether OAuth tokens will expire.TypeStringRange of valuestrue and falseVersions7.5.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValueFalseOverride Example$sugar_config['oauth_token_expiry'] = '0';oauth_token_life


DescriptionSets the length (in seconds) of the life of an OAuth token.TypeInteger : SecondsVersions7.5.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value86400Override Example$sugar_config['oauth_token_life'] = '86400';passwordHash
DescriptionArray that defines the password hashing behaviors.
Note: This configuration's functionality has been deprecated in Sugar versions 13.0 and higher and will be removed in a future release.TypeArrayVersions7.7.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['passwordHash'] = array();passwordHash.algo
DescriptionThe specific algorithm to be used by the hashing backend. The available values depend on the selected passwordHash.backend. See http://php.net/manual/en/password.constants.php for more information when using the native backend.


Note: This configuration's functionality has been deprecated in Sugar versions 13.0 and higher and will be removed in a future release.TypeString : Algorithm TypeRange of valuesFor native backend:  "PASSWORD_DEFAULT" and "PASSWORD_BCRYPT".   For sha2 backend:  "CRYPT_SHA256" and "CRYPT_SHA512"Versions7.7.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value"PASSWORD_DEFAULT" for native. "CRYPT_SHA256" for sha2 backend.Override Example$sugar_config['passwordHash']['algo'] = 'PASSWORD_BCRYPT';passwordHash.allowLegacy


DescriptionAllow logins of users who have their password stored using the insecure legacy MD5 hash. During the transition period for the 7.7 series, this will be allowed out of the box. Versions past 7.7 will no longer allow by default authentication against insecure hashes. This configuration parameter can be used to change the default behavior.
Note: This configuration's functionality has been deprecated in Sugar versions 13.0 and higher and will be removed in a future release.TypeBooleanRange of valuestrue and falseVersions7.7.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value7.7.x: true7.8.x+:falseOverride Example$sugar_config['passwordHash']['allowLegacy'] = false;passwordHash.backend


DescriptionThe password hash backend class to use. By default, the "native" backend is used which uses Blowfish to hash the passwords in the database. An alternative is using the "sha2" backend which makes use of SHA-2 hashing instead. Depending on the backend, different configuration options are available for passwordHash.algo and passwordHash.options.
Note: This configuration's functionality has been deprecated in Sugar versions 13.0 and higher and will be removed in a future release.TypeStringRange of values'sha2' and 'native'Versions7.7.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuenativeOverride Example$sugar_config['passwordHash']['backend'] = 'sha2';passwordHash.options


DescriptionThe available configuration values depend on the selected passwordHash.backend. See http://php.net/manual/en/function.password-hash.php when using the native backend and http://php.net/manual/en/function.crypt.php for the sha2 backend. Note that only the following specified options are allowed. For native backend: passwordHash.options.cost. For sha2 backend: passwordHash.options.rounds.
Note: This configuration's functionality has been deprecated in Sugar versions 13.0 and higher and will be removed in a future release.TypeArrayVersions7.7.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['passwordHash']['options'] = array();passwordHash.options.cost


DescriptionAn available option when the passwordHash.backend configuration is set to "native". More information on the native backend can be found at http://php.net/manual/en/function.password-hash.php
Note: This configuration's functionality has been deprecated in Sugar versions 13.0 and higher and will be removed in a future release.TypeIntegerVersions7.7.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value10Override Example$sugar_config['passwordHash']['options']['cost'] = 15;passwordHash.options.rounds
DescriptionAn available option when the passwordHash.backend configuration is set to "sha2". More information on the sha2 backend can be found at http://php.net/manual/en/function.crypt.php


Note: This configuration's functionality has been deprecated in Sugar versions 13.0 and higher and will be removed in a future release.TypeIntegerVersions7.7.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value5000Override Example$sugar_config['passwordHash']['options']['rounds'] = 4000;passwordHash.rehash
DescriptionWhen enabled, the system will automatically rehash the user's password when successfully authenticated. This allows adoption to the newly configured password hash backend without resetting user's passwords.
Note: This configuration's functionality has been deprecated in Sugar versions 13.0 and higher and will be removed in a future release.TypeBooleanRange of valuestrue and falseVersions7.7.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuetrueOverride Example$sugar_config['passwordHash']['rehash'] = false;passwordsetting


DescriptionDefines all of the password requirements for the instance.TypeArrayVersions5.5.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['passwordsetting'] = array();passwordsetting.forgotpasswordON
DescriptionEnables the Forgot Password features. When enabled, users will have the ability to reset their own passwords at the Login page. Set in UI via Admin->Password Management.TypeStringRange of values0, 1Versions5.5.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value1Override Example$sugar_config['passwordsetting']['forgotpasswordON'] = '0';passwordsetting.linkexpiration


DescriptionDetermines whether the password reset link expires.TypeStringRange of values0, 1Versions6.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value0Override Example$sugar_config['passwordsetting']['linkexpiration'] = '0';passwordsetting.onelower
DescriptionConfigures whether at least one lower-case letter is required in users' passwords.TypeStringRange of values0, 1Versions6.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value0Override Example$sugar_config['passwordsetting']['onespecial'] = '0';passwordsetting.onenumber


DescriptionConfigures whether at least one number is required in users' passwords.TypeStringRange of values0, 1Versions6.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value1Override Example$sugar_config['passwordsetting']['onenumber'] = '1';passwordsetting.oneupper
DescriptionConfigures whether at least one upper-case letter is required in users' passwords.TypeBooleanRange of values0, 1Versions6.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value0Override Example$sugar_config['passwordsetting']['oneupper'] = 1;passwordsetting.systexpirationtype


DescriptionSpecifies the unit of measurement for passwordsetting.systexpirationtime. The available options are: Days (1), Weeks (7) and Months (30). This value can be set in the UI via Admin > Password Management.TypeIntegerRange of values1, 7, and 30Versions5.5.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value1Override Example$sugar_config['passwordsetting']['systexpirationtype'] = '7';pdf_file_max_lifetime


DescriptionThe interval in seconds of when to expire and remove generated PDF files. It is important to note that the "Remove temporary PDF files" scheduler job must be enabled to remove the PDF files.TypeInteger : SecondsVersions7.6.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value86400Override Example$sugar_config['pdf_file_max_lifetime'] = 86400;perfProfile


DescriptionAllows for an admin to tweak aspects of the system for performance enhancements when fetching records. As every system is different, your mileage will vary when using the perfProfile settings. Increases or decreases in performance will depend on a combination of primarily the amount of users, amount of unique team sets, and data size per module. The perfProfile parameters are available to be able to fine tune the team security performance no your platform. It is not recommended to change any setting directly in a production environment without testing and understanding the impact.TypeArrayVersions7.2.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['perfProfile'] = array();perfProfile.TeamSecurity


DescriptionDetermines whether the team security filtering is applied.TypeArrayVersions7.2.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['perfProfile']['TeamSecurity'] = array();perfProfile.TeamSecurity.default
DescriptionThis setting is used to enable or disable Team Security denormalization feature by default across the application.TypeArrayRange of valuestrue and falseVersions7.7.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['perfProfile']['TeamSecurity']['default'] = array();perfProfile.TeamSecurity.default.disable_subquery_optimizer_hint


DescriptionAs of Sugar 11.0.2, the default behavior of TeamSecurity on MySQL no longer uses an INNER JOIN to a 'team_sets' subquery; instead, Sugar 11.0.2 and higher use WHERE team_set_id IN [team_sets subquery] with a MySQL optimizer hint. To disable this approach and switch back to the INNER JOIN implementation, set this config to 'true'.TypeBooleanRange of valuestrue and falseVersions11.0.2+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuefalseOverride Example$sugar_config['perfProfile']['TeamSecurity']['default']['disable_subquery_optimizer_hint'] = true;perfProfile.TeamSecurity.default.teamset_prefetch


DescriptionFetches the list of team sets that the current user is a member of in a separate query and use those ID's directly in the team security clause to avoid adding a subquery. Under certain conditions, this may improve team security performance.
It is important to note that 'default' applies this applied to all modules. To set specific settings for a specific module, you will need to use:
$sugar_config['perfProfile']['TeamSecurity']['{module}']['teamset_prefetch'] = true;TypeBooleanRange of valuestrue and falseVersions7.2.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuefalseOverride Example$sugar_config['perfProfile']['TeamSecurity']['default']['teamset_prefetch'] = true;perfProfile.TeamSecurity.default.teamset_prefetch_max


DescriptionThe maximum amount of team set ID's to include in the team security clause. If the current user is a member of more unique teams sets than this value, the system will fall back to using a regular subquery instead. Under certain conditions, this may improve team security performance.
It is important to note that 'default' applies this applied to all modules. To set specific settings for a specific module, you will need to use:
$sugar_config['perfProfile']['TeamSecurity']['{module}']['teamset_prefetch_max'] = true;TypeInteger : RecordsVersions7.2.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValueemptyOverride Example$sugar_config['perfProfile']['TeamSecurity']['default']['teamset_prefetch_max'] = 500;perfProfile.TeamSecurity.default.use_denorm


DescriptionThis setting is used to enable or disable Team Security denormalization feature. Team Security denormalization can significantly improve SQL query performance when there are a large number of Teams in a Sugar instance. The cost is that this feature relies on a separate Team security denormalization table that needs to be updated as records change to ensure Sugar's Team security visibility rules are applied properly.
It is important to note that 'default' applies this to all modules. To set specific settings for a specific module, you will need to use:


$sugar_config['perfProfile']['TeamSecurity']['{module}']['use_denorm'] = true;TypeBooleanRange of valuestrue and falseVersions8.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuefalseOverride Example$sugar_config['perfProfile']['TeamSecurity']['default']['use_denorm'] = true;perfProfile.TeamSecurity.default.where_condition
DescriptionDetermines whether the team security filtering is applied in the WHERE clause instead of SELECT clause. Under certain conditions, this may improve team security performance.
It is important to note that 'default' applies this applied to all modules. To set specific settings for a specific module, you will need to use:


$sugar_config['perfProfile']['TeamSecurity']['{module}']['where_condition'] = true;TypeBooleanRange of valuestrue and falseVersions7.2.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuefalseOverride Example$sugar_config['perfProfile']['TeamSecurity']['default']['where_condition'] = true;perfProfile.TeamSecurity.gs_use_normalized_teams


DescriptionDetermines whether the team set IDs are cached; this may improve Elasticsearch indexing performance, especially for those instances with a large number of team sets per user. Admin must schedule re-indexing Elasticsearch server if this value has been changed.TypeBooleanRange of valuestrue and falseVersions11.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuefalseOverride Example$sugar_config['perfProfile']['TeamSecurity']['gs_use_normalized_teams'] = true;perfProfile.TeamSecurity.inline_update


DescriptionWhen denormalization is in use (perfProfile.TeamSecurity.default.use_denorm config set to true), this setting will allow the denormalization table to be updated in real time as records are updated in the system. If this setting is disabled, the denormalization table must be scheduled by the Sugar administrator via Schedulers > Rebuild Denormalized Team Security Data.TypeBooleanRange of valuestrue and falseVersions8.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuefalseOverride Example$sugar_config['perfProfile']['TeamSecurity']['inline_update'] = true;pmse_settings_default


DescriptionSettings for troubleshooting and debugging SugarBPMTypeArrayVersions7.6.0.0+ProductsEnterprise, Ultimate, Serve, SellOverride Example$sugar_config['pmse_settings_default'] = array();pmse_settings_default.error_number_of_cycles
DescriptionNumber of cycles before triggering an error in SugarBPMTypeString : CyclesVersions7.6.0.0+ProductsEnterprise, Ultimate, Serve, SellDefault Value10Override Example$sugar_config['pmse_settings_default']['error_number_of_cycles'] = 15;pmse_settings_default.error_timeout


DescriptionTime in seconds of timeout before triggering an error in SugarBPMTypeString : SecondsVersions7.6.0.0+ProductsEnterprise, Ultimate, Serve, SellDefault Value40Override Example$sugar_config['pmse_settings_default']['error_timeout'] = 45;pmse_settings_default.logger_level
DescriptionThe default logger level for SugarBPMTypeStringRange of valuesemergency, alert, critical, error, warning, notice, info, debugVersions7.6.0.0+ProductsEnterprise, Ultimate, Serve, SellDefault ValuecriticalOverride Example$sugar_config['pmse_settings_default']['logger_level'] = 'emergency';portal_enableSelfSignUp


DescriptionThis portal configuration option controls whether external portal sign-ups are permitted and is also controlled in the user interface via the "Allow new users to sign up" Sugar Portal setting. See the Sugar Portal page in the Administration Guide for details on this setting: https://support.sugarcrm.com/SmartLinks/Administration_Guide/Developer_Tools/Sugar_Portal/hdr_Configure_Portal


This option is disabled by default for new instances. Note: Upon upgrade to 11.1.0 or higher from version 11.0.x or lower, the default value will be 'true' for instances that had their portal enabled before upgrade and at least one contact configured for portal.TypeBooleanRange of valuestrue and falseVersions11.1.0+ProductsEnterprise, Ultimate, Serve, SellDefault ValuefalseOverride Example$sugar_config['portal_enableSelfSignUp'] = true;processes_auto_save_interval


DescriptionDefines the interval (in milliseconds) at which auto-saving of process definitions will occur while using the SugarBPM process designer. A value of 0 will disable auto-saving.TypeInteger : MillisecondsVersions8.3.0+ProductsEnterprise, Ultimate, Serve, SellDefault Value30000Override Example$sugar_config['processes_auto_save_interval'] = 120000processes_auto_validate_on_autosave


DescriptionDefines whether validation of process definitions will automatically occur when a process definition is auto-saved. To enable this setting, 'processes_auto_save_interval' must be greater than 0.TypeBooleanRange of valuestrue and falseVersions8.3.0+ProductsEnterprise, Ultimate, Serve, SellDefault ValuetrueOverride Example$sugar_config['processes_auto_validate_on_autosave'] = falseprocesses_auto_validate_on_import
DescriptionDetermines whether validation of process definitions will automatically occur immediately after a process definition is imported.TypeBooleanRange of valuestrue and falseVersions8.3.0+ProductsEnterprise, Ultimate, Serve, SellDefault ValuetrueOverride Example$sugar_config['processes_auto_validate_on_import'] = falseproxy_visible


DescriptionDetermines whether the Proxy Settings panel is visible to administrators in Admin > System Settings. Instances running on Sugar's cloud environment will have this setting enforced as false. Instances running on Sugar's cloud environment will have this setting enforced as false.TypeBooleanRange of valuestrue or falseVersions11.3.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuetrueSugarCloud ValuefalseOverride Example$sugar_config['proxy_visible'] = false;push_notification
DescriptionThe array of configurations related to push notifications.TypeArrayVersions11.0.0+ProductsEnterprise, Ultimate, Serve, SellOverride Example$sugar_config['push_notification'] = array();push_notification.enabled
DescriptionFor Sugar instances that are eligible for push notifications, use this setting to turn push notifications on or off. See the Android and iOS User Guides for the requirements to be eligible:


https://support.sugarcrm.com/Documentation/Mobile_Solutions/SugarCRM_Mobile/SugarCRM_Mobile_for_iOS_User_Guide/#Eligible_Sugar_Instances
https://support.sugarcrm.com/Documentation/Mobile_Solutions/SugarCRM_Mobile/SugarCRM_Mobile_for_Android_User_Guide/#Eligible_Sugar_InstancesTypeBooleanRange of valuestrue and falseVersions11.0.0+ProductsEnterprise, Ultimate, Serve, SellDefault ValuefalseOverride Example$sugar_config['push_notification']['enabled'] = true;push_notification.service_provider


DescriptionFor Sugar instances that are eligible for push notifications, this setting specifies the provider. Currently, SugarPush is the only available provider. See the Android and iOS User Guides for the requirements to be eligible:
https://support.sugarcrm.com/Documentation/Mobile_Solutions/SugarCRM_Mobile/SugarCRM_Mobile_for_iOS_User_Guide/#Eligible_Sugar_Instances


https://support.sugarcrm.com/Documentation/Mobile_Solutions/SugarCRM_Mobile/SugarCRM_Mobile_for_Android_User_Guide/#Eligible_Sugar_InstancesTypeStringRange of values'SugarPush'Versions11.0.0+ProductsEnterprise, Ultimate, Serve, SellDefault Value'SugarPush'Override Example$sugar_config['push_notification']['service_provider'] = 'SugarPush';reports_complexity_display
DescriptionArray that establishes the thresholds for the number of cells in a report above which the formatting changes.TypeArrayRange of valuesPositive integersVersions13.0.0+ProductsEnterprise, Serve, SellOverride Example$sugar_config['reports_complexity_display'] = array();reports_complexity_display.export


DescriptionWhen a report has more than this many cells, you will only be able to view results in a table by exporting the table.TypeInteger : Number of cellsRange of valuesAny integer greater than or equal to 1Versions13.0.0+ProductsEnterprise, Serve, SellDefault Value300000Override Example$sugar_config['reports_complexity_display']['export']=30000;reports_complexity_display.simplified
DescriptionWhen a report has more than this many cells, you will be able to view results as a simplified table or export the results. TypeInteger : Number of cellsRange of valuesAny integer greater than or equal to 1Versions13.0.0+ProductsEnterprise, Serve, SellDefault Value50000Override Example$sugar_config['reports_complexity_display']['simplified']=5000;require_accounts


DescriptionDetermines whether an account is required for record creation within the system.TypeBooleanRange of valuestrue and falseVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuetrueOverride Example$sugar_config['require_accounts'] = false;rest_response_etag_cache_age
DescriptionControls how long the browser should cache rest responses.TypeInteger : SecondsVersions7.7.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value10Override Example$sugar_config['rest_response_etag_cache_age'] = 15;roleBasedViews


DescriptionEnables role based views and dropdowns.TypeBooleanRange of valuestrue and falseVersions7.6.0.0+ProductsEnterprise, Ultimate, Serve, SellDefault ValuefalseOverride Example$sugar_config['roleBasedViews'] = true;SAML_provisionUser
DescriptionDetermines whether or not a new user is auto-provisioned when authenticating through SAML. Setting this setting to false will prevent a new user from being created.TypeBooleanRange of valuestrue and falseVersions7.7.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuetrueOverride Example$sugar_config['SAML_provisionUser'] = false;SAML_X509Cert


DescriptionBy default, reports distributed via the Reports Schedule module in 8.1 and later will not include a chart in the emailed PDF even if one has been configured for display in Sugar. Because the report charts are not re-built when the scheduler runs a scheduled report, the chart may not accurately represent the data presented in the PDF. Instead, the chart will represent the data that was pulled the last time a user triggered a "Run Report" action on the report, which may or may not match the data available when the report is generated for the scheduled report. Consider this potential conflict carefully before using this config to override the default behavior.TypeBooleanRange of valuestrue and falseVersions8.1.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuefalseOverride Example$sugar_config['schedule_report_with_chart'] = true;search_engine


DescriptionArray that defines the search enginer behaviors.TypeArrayVersions7.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['search_engine'] = array();search_engine.max_bulk_delete_threshold
DescriptionThe maximun number of records that can be deleted at a time.TypeInteger : Number of recordsVersions7.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value3000Override Example$sugar_config['search_engine']['max_bulk_delete_threshold'] = 3000;search_engine.max_bulk_query_threshold


DescriptionThe maximum number of records to process before starting to bulk insert. Prevents memory issues.TypeInteger : Number of recordsVersions7.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value15000Override Example$sugar_config['search_engine']['max_bulk_query_threshold'] = 20000;search_engine.max_bulk_threshold
DescriptionThe maximum number of records to process before starting to bulk insert. Prevents memory issues.TypeIntegerVersions7.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value5000Override Example$sugar_config['search_engine']['search_engine.max_bulk_threshold'] = 10000;search_engine.postpone_job_time


DescriptionAmount of time to postpone a job by so that it's not executed twice during the same request.TypeInteger : SecondsVersions7.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value120Override Example$sugar_config['search_engine']['search_engine.postpone_job_time'] = 70;search_wildcard_infront
DescriptionIn Sugar 7.x+, this setting is only valid for modules running in BWC mode. When enabled, automatically adds a wildcard in front of any searches performed in the application. This setting is not recommended to be enabled as preceding wildcards results in database indices not being utilized and performance decreasing.TypeBooleanRange of valuestrue and falseVersions6.4.3+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuefalseOverride Example$sugar_config['search_wildcard_infront'] = true;security.private_ips


DescriptionDefines a range of IPs considered to be private. Such IPs and corresponding domains are not reachable via ExternalResourceClient. Instances running on Sugar's cloud environment will have this setting enforced as ['10.0.0.0|10.255.255.255', '172.16.0.0|172.31.255.255', '192.168.0.0|192.168.255.255', '169.254.0.0|169.254.255.255', '127.0.0.0|127.255.255.255',].TypeArrayRange of valuesPipe-delimited range of IPs (e.g., '10.0.0.0|10.255.255.255')Versions12.1.0+ProductsEnterprise, Serve, SellDefault Value['10.0.0.0|10.255.255.255',


SellDefault Value['10.0.0.0|10.255.255.255', '172.16.0.0|172.31.255.255', '192.168.0.0|192.168.255.255', '169.254.0.0|169.254.255.255', '127.0.0.0|127.255.255.255',]SugarCloud Value['10.0.0.0|10.255.255.255', '172.16.0.0|172.31.255.255', '192.168.0.0|192.168.255.255', '169.254.0.0|169.254.255.255', '127.0.0.0|127.255.255.255',]Override Example$sugar_config['security']['private_ips'] = [


Example$sugar_config['security']['private_ips'] = [ '127.0.0.0|127.255.255.255', '8.8.8.0|8.8.8.8', ];security.use_doh


DescriptionEnables remote Domain Name System (DNS) resolution via the HTTPS protocol. A goal of the method is to increase user privacy and security by preventing eavesdropping and manipulation of DNS data by man-in-the-middle attacks by using the HTTPS protocol to encrypt the data between the DoH (DNS over HTTPS) client and the DoH-based DNS resolver.
When enabled, it will use dns.google (8.8.4.4) to resolve hostnames. Instances running on Sugar's cloud environment will have this setting enforced as false.TypeBooleanRange of valuestrue and falseVersions13.0.0+ProductsEnterprise, Serve, SellDefault ValuefalseSugarCloud ValuefalseOverride Example$sugar_config['security']['use_doh'] = true;session_dir


DescriptionDirectory on the server to store Sugar session data. If left empty, the PHP session settings will be inherited. Instances running on Sugar's cloud environment will have this setting enforced as empty.TypeStringRange of valuesDirectory pathVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValueemptySugarCloud ValueemptyOverride Example$sugar_config['session_dir'] = '/tmp/SugarSession/';showThemePicker
DescriptionRemoves the theme selection drop down.TypeBooleanRange of valuestrue and falseVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuetrueOverride Example$sugar_config['showThemePicker'] = false;show_download_tab


DescriptionUsed to determine whether the download tab will appear in the User settings. The download tab provides users with access to Sugar plug-ins and other available downloads.TypeBooleanRange of valuestrue and falseVersions6.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['show_download_tab'] = true;site_url
DescriptionCurrent URL of your Sugar instance. This value is critical in its accuracy for multiple points of functionality in the instance.TypeString : URLRange of valuesCurrent URL of SugarVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['site_url'] = 'http://my.sugarinstance.com';slow_query_time_msec


DescriptionSlow query time threshold. Instances running on Sugar's cloud environment will have this setting enforced as 5000.TypeString : MillisecondsVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value5000SugarCloud Value5000Override Example$sugar_config['slow_query_time_msec'] = '1000';smtp_mailer_debug
DescriptionThe smtp_mailer_debug is used for increasing the debugging output for PHPMailer on individual instances so that more information can be seen when there are bugs or escalations. The default is 0 and produces no additional output for errors. 1-4 log the additional error information to sugarcrm.log as specified by PHPMailer at https://github.com/PHPMailer/PHPMailer/wiki/SMTP-Debugging#debug-levels .


TypeIntegerRange of values0, 1, 2, 3, 4Versions7.9.1.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value0Override Example$sugar_config['smtp_mailer_debug'] = 4;stack_trace_errors
DescriptionDisplays stack trace of errors. Instances running on Sugar's cloud environment will have this setting enforced as false.TypeBooleanRange of valuestrue and falseVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuefalseSugarCloud ValuefalseOverride Example$sugar_config['stack_trace_errors'] = true;studio_max_history


DescriptionWhen layout changes are made in Studio, a history of those changes are recorded with each save & deploy under ./custom/history/modules/. The studio_max_history parameter controls how many files Sugar keeps for a particular module. If this parameter is undefined, a default of 50 is observed and to keep all historical Studio actions, set this parameter to 0. Instances running on Sugar's cloud environment will have this setting enforced as 50.TypeInteger : Number of files to keepRange of valuesAny integerVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value50SugarCloud Value50Override Example$sugar_config['studio_max_history'] = 100;sugar_version


DescriptionThe current version of Sugar that is being used. This value should not be modified as it is updated in the config when Sugar is upgraded.TypeString : Version NumberVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['sugar_version'] = '6.7.3';symfony_deprecation_log


DescriptionBy default, the deprecation warnings, triggered by Symfony components, are written to sugarcrm.log in the Sugar root directory. But since the default log level is set to Fatal, the deprecation warning messages will not appear in the log. As an option, you can add the $sugar_config['logger']['channels']['deprecation'] configuration and configure the log level and output method to just capture the deprecation warnings in a separate deprecations.log file.   Instances running on Sugar's cloud environment will have this setting enforced as false.TypeBooleanRange of valuestrue and falseVersions12.2.0+ProductsEnterprise, Ultimate, Serve, SellDefault ValuefalseSugarCloud ValuefalseOverride Example$sugar_config['symfony_deprecation_log'] = true;time_aware_job_max_batch_size


DescriptionThe number of records processed per batch by the "Process Time-Aware Schedules" job scheduler.  It is important to note that the scheduler job must be enabled.TypeInteger : RecordsVersions10.3.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value100Override Example$sugar_config['time_aware_job_max_batch_size'] = 200;tmp_dir
DescriptionThe directory path for temporary XML files used by charts and diagnostics.TypeString : Directory pathRange of valuesFilesystem pathVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Valuecache/xml/Override Example$sugar_config['tmp_dir'] = 'cache/xml/';tmp_file_max_lifetime


DescriptionThe interval in seconds of when to expire and remove temporary upload files. It is important to note that the "Remove temporary files" scheduler job must be enabled to remove the temporary files.TypeInteger : SecondsVersions7.6.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value86400Override Example$sugar_config['tmp_file_max_lifetime'] = 86400;tracker_max_display_length
DescriptionThe number of records that will be shown per record in the "Last Viewed" section located under each module tab.TypeInteger : Number of recordsVersions6.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['tracker_max_display_length'] = 45;tracker_module_config


DescriptionArray that defines the parameters that control which modules are tracked when Tracker Actions are enabled.TypeArrayVersions11.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['tracker_module_config'] = array();tracker_module_config.disable


DescriptionThe list of modules that are ignored by Tracker Actions. If tracker_module_config.enable_only is defined, then tracker_module_config.disable will be ignored. If neither config is defined, then all modules are enabled. By default, neither config is defined and all actions for all modules across all platforms will be enabled when Tracker Actions is enabled.TypeArrayRange of valuesModule keysVersions11.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['tracker_module_config']['disable'] = ['Reports', 'ActivityStream'];tracker_module_config.enable_only


DescriptionA list of module names for which records are saved in the tracker table when Tracker Actions are enabled; all other modules will be disabled. If tracker_module_config.enable_only is empty or null or undefined, tracker_module_config.disable will apply. If neither config is defined, then all modules are enabled. By default, neither config is defined and all actions for all modules across all platforms will be enabled when Tracker Actions is enabled.
TypeArrayRange of valuesModule keysVersions11.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['tracker_module_config']['enable_only'] = ['Reports', 'ActivityStream'];uninstallOnError


DescriptionToggles the switch that uninstalls the package that was just installed if the install ended up with a PHP error.  Instances running on Sugar's cloud environment will have this setting enforced as true.TypeBooleanRange of valuestrue and falseVersions12.0.3+ProductsEnterprise, Ultimate, Serve, SellDefault ValuetrueSugarCloud ValuetrueOverride Example$sugar_config['uninstallOnError'] = false;uninstall_timeout
DescriptionControls the timeout time in seconds for an uninstall process.TypeInteger : SecondsVersions10.2.1+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value600Override Example$sugar_config['uninstall_timeout'] = 300;unique_key


DescriptionSpecifies the unique identifier for the instance. This value is used in features such as PHP caching, FTS indexing, and email archiving. It is extremely important that this string is unique from any other instances deployed even if they are only for development purposes only.TypeString : Unique IdentifierVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['unique_key'] = 'c0b5475f3f5b26ddb2976edc8865b5f6';upload_badext


DescriptionAn array of extensions that cannot be uploaded in their native file format. Sugar will append a .txt extension to the end of any files with an invalid extension to avoid security issues with running unauthorized scripts on an instance.TypeArrayRange of valuesExtensions that cannot be uploaded as isVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['upload_badext'][] = 'swf';upload_dir
DescriptionThe directory path where uploaded files are stored for note attachments, documents, and module loadable packages. By default, uploads are stored in the ./upload/ directory. For more information, refer to the Uploads documentation.TypeStringRange of valuesDirectory pathVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Valueupload/Override Example$sugar_config['upload_dir'] = 'upload/'upload_maxsize


DescriptionThe maximum individual file size that users can upload to modules that support file uploads. Restricts the upload limit from within Sugar without affecting any other applications that may be running on your server. This limit can be easily adjusted in Sugar via Admin > System Settings but is only useful if it is set to a size smaller than the php.ini limits. For more information, refer to the Uploads documentation.TypeInteger : Filesize in bytesVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['upload_maxsize'] = 40000000;upload_wrapper_class
DescriptionThe name of the class used as upload wrapper.TypeString : Upload wrapper classVersions6.7.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValueUploadStreamOverride Example$sugar_config['upload_wrapper_class'] = 'SugarUploadS3';use_common_ml_dir


DescriptionA security control that allows you to restrict Module Loader to read modules from a specific directory on the server and disable the ability to upload new modules into the Module Loader. To specify a new directory you will need to populate the config parameter 'common_ml_dir'.TypeBooleanRange of valuestrue and falseVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuefalseOverride Example$sugar_config['use_common_ml_dir'] = true;use_php_code_json


DescriptionDetermines if the environment has a valid version of PHP-JSON. This should be determined by the function returnPhpJsonStatus() and shouldn't be overridden.TypeBooleanRange of valuestrue and falseVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['use_php_code_json'] = true;use_real_names
DescriptionDisplay users' full names instead of their User Names in assignment fields.TypeBooleanRange of valuestrue and falseVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuetrueOverride Example$sugar_config['use_real_names'] = true;use_sprites


DescriptionA sprite is a two-dimensional image or animation that is integrated into a larger scene. This parameter is used to disable sprites. This is set to true by default (if you have GD libraries installed).TypeBooleanRange of valuestrue and falseVersions6.4.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['use_sprites'] = false;validation
DescriptionAn array that defines settings for user input validation behaviors.TypeArrayVersions7.7.1.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['validation'] = array();validation.compat_mode


DescriptionDetermines compatibility mode for superglobals in the input validation framework. When enabled, setting, unsetting, and modifying $_GET, $_POST, or $_REQUEST values through PHP code is supported. Using PHP code to manipulate superglobals is discouraged. User input parameters should be considered read-only. As a transition period, this is currently allowed out-of-box, but may change in a future release. It is highly recommended for developers to verify their customizations work with this parameter set to false in preparation for the 7.9 release.TypeBooleanRange of valuestrue and falseVersions7.7.1.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value7.7.x: true7.8.x: true7.9.x: falseOverride Example$sugar_config['validation']['compat_mode'] = false;validation.soft_fail


DescriptionDetermines whether soft failure mode for the input validation framework is enabled. When this mode is enabled, any input validation violations will only be reported as a warning in the sugarcrm.log without having any negative impact on the request. When disabled, violations are reported as fatal in the sugarcrm.log and actual exceptions are being thrown resulting in an HTTP 500 response.
It is highly recommended for developers to verify their customizations work with this parameter set to false in preparation for the 8.0 release.TypeBooleanRange of valuestrue and falseVersions7.7.1.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value7.7.x: true7.8.x: true7.9.x: true8.0.x: falseOverride Example$sugar_config['validation']['soft_fail'] = false;vcal_time


DescriptionUsed to determine the number of months in advance of the current date that the Free/Busy information for calls and meetings will be published. To turn Free/Busy publishing off, set this variable to '0'. The minimum is 1 month; the maximum is 12 months.TypeString : MonthsRange of values'1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', and '12'Versions5.2.0.c+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value2Override Example$sugar_config['vcal_time'] = '5';verify_client_ip
DescriptionWhether or not to verify the client IP. Setting this to true will enable the system checking to see if the user is accessing Sugar from the IP address of their last page load.


Note: This default value must be set to "false" in order to use Sugar Connect and Sugar Integrate.TypeBooleanRange of valuestrue and falseVersions10.1.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuefalseOverride Example$sugar_config['verify_client_ip'] = true;web_logic_hook_timeout
DescriptionTimeout for requests to web logic hooks. Any requests that run longer than the set limit will fail and trigger an error in the log.TypeInteger : secondsVersions11.1.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value10Override Example$sugar_config['web_logic_hook_timeout'] = 2;wl_list_max_entries_per_page


DescriptionThe number of records to be shown per page on the listview of the mobile browser.TypeInteger : Number of records to displayVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value10Override Example$sugar_config['wl_list_max_entries_per_page'] = 10;wl_list_max_entries_per_subpanel
DescriptionDetermines the number of records shown in the subpanels on the DetailView of the mobile browser.TypeInteger : RecordsVersions5.2.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value3Override Example$sugar_config['wl_list_max_entries_per_subpanel'] = 3;xhprof_config


DescriptionConfiguration settings for xhprof. More information on xhprof can be found at http://pecl.php.net/package/xhprof.TypeArrayVersions6.5.10+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['xhprof_config'] = array();xhprof_config.enable
DescriptionEnables the xhprof profiler.TypeBooleanRange of valuestrue and falseVersions6.5.10+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuefalseOverride Example$sugar_config['xhprof_config']['enable'] = true;xhprof_config.filter_wt


DescriptionThe wall time. Values are specified in milliseconds.TypeInteger : Wall time in millisecondsVersions7.6.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value0Override Example$sugar_config['xhprof_config']['filter_wt'] = 2;xhprof_config.flags
DescriptionThe flags for xhprof profiler.TypeString : xhprof flagsVersions6.5.10+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['xhprof_config']['flags'] = XHPROF_FLAGS_CPU + XHPROF_FLAGS_MEMORY;xhprof_config.ignored_functions


DescriptionAn array of function names to ignore from the profile.TypeArray : Function namesVersions6.5.10+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['xhprof_config']['ignored_functions'] = array("function_name");xhprof_config.log_to
DescriptionThe path to log the xhprof profiler output to.TypeString : Directory pathVersions6.5.10+ProductsProfessional, Enterprise, Ultimate, Serve, SellOverride Example$sugar_config['xhprof_config']['log_to'] = '{instance server path}/cache/xhprof';xhprof_config.manager


DescriptionThe xhprof manager class to use. Prior to 7.7, specifying values xhprof_config.save_to, xhprof_config.mongodb_uri, xhprof_config.mongodb_db, xhprof_config.mongodb_collection, xhprof_config.mongodb_options, and
xhprof_config.filter_wt will need to have set xhprof_config.manager set to 'SugarXHprofPerformance'. As of 7.7, setting xhprof_config.manager is not longer required.


If you want to customize SugarXHprof, you can create the folder ./custom/include/SugarXHprof/ and create a file with your custom class class name. The custom class will need to extend SugarXHprof. If a custom class doesn't exist or hasn't been specified, SugarXHprof will be used.TypeString : ClassVersions6.5.10+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValueSugarXHprofOverride Example$sugar_config['xhprof_config']['manager'] = 'CustomSugarXHprof';xhprof_config.memory_limit


DescriptionThe memory limit to set while saving profile data to storage.TypeString : Memory UsageVersions7.7.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value2048MOverride Example$sugar_config['xhprof_config']['memory_limit'] = '1024M';xhprof_config.mongodb_collection
DescriptionThe name of the mongo db collections.TypeString : Mongo collection nameVersions7.6.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValueresultsOverride Example$sugar_config['xhprof_config']['mongodb_db'] = 'results_new';xhprof_config.mongodb_db


DescriptionThe name of the mongo database.TypeString : Database nameVersions7.6.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuexhprofOverride Example$sugar_config['xhprof_config']['mongodb_db'] = 'xhprof2';xhprof_config.mongodb_options
DescriptionOptions for mongo db connection. The list of construct options can be found at: http://php.net/manual/en/mongoclient.construct.php#mongo.mongoclient.construct.parametersTypeArray : Mongo db optionsVersions7.6.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValueresultsOverride Example$sugar_config['xhprof_config']['mongodb_options'] = array();xhprof_config.mongodb_uri


DescriptionThe mongo server URL.TypeString : URLVersions7.6.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Valuemongodb://localhost:27017Override Example$sugar_config['xhprof_config']['mongodb_uri'] = 'mongodb://localhost:27018';xhprof_config.sample_rate
DescriptionThe sample rate of the xhprof profiler. 1/{specified value} requests are profiled. To sample all requests, set this value to 1.TypeInteger : Sample Rate (1/{value})Versions6.5.10+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault Value10Override Example$sugar_config['xhprof_config']['sample_rate'] = 1;xhprof_config.save_to


DescriptionThe place to save xhprof data. If set to 'mongodb', the data is stored in the mongo database.TypeString : Save LocationRange of values'file' and 'mongodb'Versions7.6.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuemongodbOverride Example$sugar_config['xhprof_config']['save_to'] = 'mongodb';xhprof_config.track_elastic
DescriptionWhether or not to track elastic data.TypeBooleanRange of valuestrue or falseVersions7.7.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuetrueOverride Example$sugar_config['xhprof_config']['track_elastic'] = false;xhprof_config.track_elastic_backtrace


DescriptionWhether or not to store the elastic backtrace data.TypeBooleanRange of valuestrue or falseVersions7.7.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuetrueOverride Example$sugar_config['xhprof_config']['track_elastic_backtrace'] = false;xhprof_config.track_sql
DescriptionWhether or not to track SQL queries.TypeBooleanRange of valuestrue or falseVersions7.7.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuetrueOverride Example$sugar_config['xhprof_config']['track_sql'] = false;xhprof_config.track_sql_backtrace


DescriptionWhether or not to store the SQL backtrace data.TypeBooleanRange of valuestrue or falseVersions7.7.0.0+ProductsProfessional, Enterprise, Ultimate, Serve, SellDefault ValuetrueOverride Example$sugar_config['xhprof_config']['track_sql_backtrace'] = false;
  	Last modified: 2023-05-25 16:37:57


Silent Installer Settings
Overview
The Sugar silent installer facilitates and automates the installation of the Sugar application after the files have been copied onto the server. This is done by populating correct parameters in a configuration file and then making a web request to kick off the installation.
config_si.php
The ./config_si.php file is located at the root level of the Sugar application. It contains an array of name-value pairs consisting of the relevant parameters for installation of the app. The array name is $sugar_config_si. An example file looks like:
<?php
$sugar_config_si = array (
    'setup_site_url' => 'http://${domainname}:${webport}/sugar',
    'setup_system_name' => '${systemname}',
    'setup_db_host_name' => 'localhost',


'setup_db_host_name' => 'localhost',
    'setup_site_admin_user_name' => 'admin',
    'setup_site_admin_password' => '${sugarpassword}',
    'demoData' => true,
    'setup_db_type' => 'mysql',
    'setup_db_host_name' => '{db_host_name}',
    'setup_db_port_num' => 'db_port_number',
    'setup_db_database_name' => 'sugar',
    'setup_db_admin_user_name' => 'root',
    'setup_db_admin_password' => '${rootpassword}',
    'setup_db_options' => array(
    	'ssl' => true,
    ),


'ssl' => true,
    ),
    'setup_db_drop_tables' => false,
    'setup_db_create_database' => true,
    'setup_license_key' => '${slkey}',
    'setup_license_key_users' => '${slkeyusers}',
    'setup_license_key_expire_date' => '${slkeyexpiredate}',
    'setup_license_key_oc_licences' => '${slkey_oc_licenses}',
    'default_currency_iso4217' => 'USD',
    'default_currency_name' => 'US Dollars',
    'default_currency_significant_digits' => '2',
    'default_currency_symbol' => '$',


'default_currency_symbol' => '$',
    'default_date_format' => 'Y-m-d',
    'default_time_format' => 'H:i',
    'default_decimal_seperator' => '.',
    'default_export_charset' => 'ISO-8859-1',
    'default_language' => 'en_us',
    'default_locale_name_format' => 's f l',
    'default_number_grouping_seperator' => ',',
    'export_delimiter' => ',',
);
Essential Settings
The following are settings that must be set:
General System Settings
setup_system_name
Description
A unique system name for the application that will be displayed on the web browser
Type
String
setup_site_url
Description


Type
String
setup_site_url
Description
The site location and URL of the Sugar application
Type
String
setup_site_admin_user_name
Description
Specifies the admin username for the Sugar application
Type
String
setup_site_admin_password
Description
Specifies the admin password for the Sugar application
Type
String
demoData
Description
Indicates whether the app will be installed with demo data
Type
Boolean
Database Settings
setup_db_type
Description
Defines the type of database being used with Sugar. It is important to note that db2 and oracle are only applicable to Sugar Ent and Ult.
Type
String: valid options include mysql, mssql, db2, oracle
setup_db_host_instance
Description
Defines the host instance for MSSQL connections.
Type
String : Database Host Instance Name


Type
String : Database Host Instance Name
setup_db_host_name
Description
Defines the hostname of the database server.
Type
String
setup_db_port_num
Description
Defines the port number on the server to connect to for authentication and transactions.
Type
String
setup_db_database_name
Description
Defines the database name to connect to on the database server.
Type
String
setup_db_admin_user_name
Description
Specifies the database administrator's username
Type
String
setup_db_admin_password
Description
Specifies the database administrator's password
Type
String
Recommended Database Settings
The following are not necessarily required, but it is recommended that at least one is set:
setup_db_create_database
Description
Specifies whether Sugar will create a new database with the name given or use an existing database.
Type
Boolean


Type
Boolean
setup_db_drop_tables
Description
Specifies whether Sugar will drop existing tables on a database if the database already exists
Type
Boolean
Extended Database Settings
There is also an option for an additional array of db config settings. These array entries are equivalent to the Core Settings options prefixed with dbconfigoption. For example dbconfigoption.collation and dbconfigoption.ssl
setup_db_options
Description
See: Architecture/Configurator/Core_Settings/index.html#dbconfigoptionautofree
Type
Array
Full-Text Search (ElasticSearch) Settings
setup_fts_type
Description
The Full-Text Search service type
Type
String, currently only supported value Elastic
setup_fts_host
Description
The hostname of the Full-Text Search service
Type
String
setup_fts_port
Description


Type
String
setup_fts_port
Description
The port number of the Full-Text Search service
Type
String
Advanced Full-Text Search Configuration Settings
While not required, the Silent Installer offers a few FTS settings not available in the browser-based installation process. These settings are considered more advanced and should not be implemented casually. Further details on advanced ElasticSearch configuration can be found in the ElasticSearch installation guide in the section Advanced Configuration.
setup_fts_curl
Description
Additional settings for the cURL request to the Elasticsearch server, keyed by the PHP cURL constants used for curl_setopt. For exampleÂ Â
'setup_fts_curl' => array(
	CURLOPT_SSL_VERIFYPEER = false,
),
Type
Array
License Settings


),
Type
Array
License Settings
While not required during installation, the license settings are required for Sugar to be usable by all users. Setting the license settings during the Silent Install will save the need to enter this required data after the install.
setup_license_key
Description
Specifies the license key
Type
String
setup_license_key_users
Description
Specifies the number of license key users
Type
Integer
setup_license_key_expire_date
Description
The expiration date of the license key
Type
String: yyyy-mm-dd format
setup_site_sugarbeet_automatic_checks
Description
Specifies if License Validation checks should be set to Automatic
Type
Boolean
Additionally, Offline Client license settings can be set in Silent Installer
setup_license_key_oc_licences
Description
the number of offline client users
Type
Integer


Description
the number of offline client users
Type
Integer
setup_num_lic_oc
Description
the number of offline client users
Type
Integer
Making the Web Request
After the ./config_si.php file is in place, the following web request can be made to kick off the installation:
http://${hostname}/sugar/install.php?goto=SilentInstall&cli=true
where ${hostname} is the name of the host. Upon completion of the process, the installation should respond with Success, and you may navigate to the web address to find an installed version of Sugar.
Configuring a Sugar-Specific Database User during Install


Configuring a Sugar-Specific Database User during Install
By default, Sugar will use the database user set for the install process as the database user for general use after installation. There are three different Silent Install options for having Sugar use a different database user once installed. Which option the installer users is determined by the dbUSRData config setting.
The dbUSRData silent install config setting has four valid options:
same
This is the default setting used, even when dbUSRData is not explicitly set. The DB user provided for installing Sugar is used for running Sugar after installation.
auto
Sugar will create a new database user using a self-generated username and password.
In your $sugar_config_si array, the options for this to work as expected are:
'dbUSRData' => 'auto',
'setup_db_create_sugarsales_user' => true,
provide


provide
Sugar will use the provided database username and password after installation, and the installer assumes that the database user has already been created on the database and that the provided password is valid. Essentially this is informing Sugar to use a different existing DB user after the installation has completed.
In your $sugar_config_si array, the options for this to work as expected are:
'dbUSRData' => 'provide',
'setup_db_create_sugarsales_user' => false,
'setup_db_sugarsales_user' => '{existing_db_user_name}',
'setup_db_sugarsales_password' => '{existing_db_user_password}',
'setup_db_sugarsales_password_retype' => '{existing_db_user_password}',
create


create
Sugar will create a new database user using the provided database username and password after installation. This is similar to 'provide', except that Sugar assumes that it will be creating the database user during installation.
In your $sugar_config_si array, the options for this to work as expected are:
'dbUSRData' => 'create',
'setup_db_create_sugarsales_user' => true,
'setup_db_sugarsales_user' => '{new_db_user_name}',
'setup_db_sugarsales_password' => '{new_db_user_password}',
'setup_db_sugarsales_password_retype' => '{new_db_user_password}',


Note: For create, the installer will create a user with access only to the database created for this Sugar instance. It will also have limited access for which host it can connect from, versus the admin user, which usually has access from any host.
Sugar will set the user to have access to localhost and the provided hostname derived from setup_site_url. If there are issues connecting to the database during or after installation, check that the user was created correctly in the database and that the user can connect from the host that the instance is on.
Other Silent Install Config Options
Many of these options match an equivalent Sugar Config option, with further descriptions available at Core Settings.
cache_dir
Description
This is the directory Sugar will store all cached files. Can be relative to Sugar root directory.
Type
String, default "cache/"
Locale Settings


Type
String, default "cache/"
Locale Settings
The following options are locale settings. With one exception, these can be set or updated through Administration > Locale.Â
export_delimiter
Description
The field delimiter (separator) used when exporting records as CSV
Type
String, default ","
default_export_charset
Description
The default character set for CSV files to be encoded in when exporting
Type
String, default "ISO-8859-1"
default_currency_iso4217
Description
The ISO-4217 code of the default currency
Type
String, default "USD"
default_currency_name
Description
The name to use for the default currency
Type
String, default "US Dollars"
default_currency_significant_digits
Description
Changes the number of significant digits in currency by default.


Description
Changes the number of significant digits in currency by default.
Note that this setting can not be changed through the Admin panel after installation. It can be set for each user through the user's profile or can be updated globally by updating the config array.
Type
Integer, default 2
default_currency_symbol
Description
The symbol to use for the default currency
Type
String, default "$"
default_language
Description
Sets each user's default language. Possible values include any language offered by Sugar, such as: 'ar_SA', 'bg_BG', 'ca_ES', 'cs_CZ', 'da_DK', 'de_DE', 'el_EL', 'en_UK', 'en_us', 'es_ES', 'es_LA', 'zh_CN'
Type
String, default "en_US"
default_date_format
Description


Type
String, default "en_US"
default_date_format
Description
Modifies the default date format for all users.
Type
String, default "m/d/Y"
default_time_format
Description
Modifies the default time format for all users.
Type
String, default "H:i"
default_decimal_seperator
Description
Sets the character used as a decimal separator for numbers.
Type
String, default "."
default_number_grouping_seperator
Description
Sets the character used as the 1000s separator for numbers.
Type
String, default ","
default_locale_name_format
Description
Sets the format for displaying full name (eg "Salutation FirstName LastName" vs "LastName, FirstName"
Type
String, default "s f l"


Type
String, default "s f l"
  	Last modified: 2023-02-03 21:04:03


Uploads
Overview
The upload directory is used to store files uploaded for imports, attachments, documents, and module loadable packages.
Uploads
The upload directory is used to store any files uploaded to Sugar. By default, anything uploaded to Sugar is stored in the ./upload/ directory. You can change this directory by updating the upload_dir configuration variable. Once uploaded, the file will be stored in this directory with a GUID name.
ThereÂ areÂ several file-size limits that affect uploads to Sugar:
Setting Name
Location
Description
Default
upload_max_filesize
php.ini
Maximum allowed size for uploaded files
2 MB
post_max_size
php.ini
Maximum size of POST data that PHP will accept
8 MBÂ
upload_maxsize
config.php
The maximum individual file size that users can upload to modules that support file uploads
30 MB


The maximum individual file size that users can upload to modules that support file uploads
30 MB
max_aggregate_email_attachments_bytes
config.php
The maximum allowed size of all uploaded attachments added together for a single email message
10 MB
The lowest of the first three values above will be respected when an oversized file is uploaded to Sugar. The first twoÂ settingsÂ are the PHP server'sÂ upload_max_filesize and post_max_size, which are configured in your system's php.ini file. The third setting is the Sugar configurationÂ forÂ upload_maxsize,Â which will restrict the upload limit from within Sugar without affecting any other applications that may be running on your server. This limit can be easily adjusted in Sugar via Admin > System Settings but is only useful if it is set to a size smaller than the php.ini limits.


Finally, the max_aggregate_email_attachments_bytes setting will permit users to upload files as email attachments according to the previous size limits but restrict users from uploading more files to a single message than its configuration permits.Â
Note:Â PHP-defined file size settings and the upload directory cannot be modified for instances hosted on Sugar's cloud service.
Upload Extensions
By default, several extension types are restricted due to security issues. Any files uploaded with these extensions will have '.txt' appended to it. The restricted extensions are listed below:
php
php3
php4
php5
pl
cgi
py
asp
cfm
js
vbs
html
htm
You can add or remove extensions to this list by modifying sugar configuration setting for upload_badext. You should note that this setting cannot be modified for instances hosted on Sugar's cloud service.
How Files Are Stored
Note Attachments


How Files Are Stored
Note Attachments
When a file is uploaded to Sugar attached to a note, the file will be moved to the upload directory with a GUID name matching that of the notes id. The attributes of the file, such as filename and file_mime_type, will be stored in the note record.
The SQL to fetch information about a notes attachment is shown below:
SELECT filename, file_mime_type FROM notes;
Email Attachments
Email attachments are stored the same way as note attachments. When an email is imported to Sugar, the file will be moved to the upload directory with a GUID file name matching that of the notes id. The attributes of the file, such as filename and file_mime_type, will be stored in the note record and the note will have a parent_type of 'Emails'. This relates the attachment to the content of the email.


The SQL to fetch information about an emails attachment is shown below:
SELECT filename, file_mime_type FROM notes INNER JOIN emails ON notes.parent_type = 'Emails' AND notes.parent_id = emails.id INNER JOIN emails_text ON emails.id = emails_text.email_id;
Picture Fields
Picture fields will upload the image to the upload directory with a GUID name and store the GUID in the database field on the record. An example of picture field can be found on the Contacts module.
For a contact, the id of the picture attachment can be found with the SQL below:
SELECT picture FROM contacts;
Knowledge Base Attachments


SELECT picture FROM contacts;
Knowledge Base Attachments
When working with the Knowledge Base, files and images attached to the form will be created as a record in the /#EmbeddedFiles module. These files will be stored as <GUID> of EmbbededFiles record in the upload folder.All other file enclosed to attachments field of KBContents will be also saved as Notes record in the upload folder.
The SQL to fetch information about a knowledge base attachment is shown below:
select kb.id, kb.name, kb.revision, n.filename, n.file_mime_type, n.file_ext from notes n, kbcontents kb where n.parent_type = "KBContents" and n.parent_id = kb.id order by kb.name, kb.revision;
Module Loadable Packages


Module Loadable Packages
Module Loader packages are stored in the system differently than other uploads. They are uploaded to the ./upgrades/module directory,Â each uploaded file is now stored in a subdirectory derived from the UUID filename. Existing files will be moved into subdirectories during upgrade.Â For example, the fileÂ 3657325a-bdd6-11eb-9a6c-08002723a3b8Â will now be stored in theÂ ./upload/25a/Â subdirectory. These UID character locations were selected to ensure even distribution of files across the new subdirectories.
The details of the package, such as installation status and description, are stored in the upgrade_history table.
The SQL to fetch information about an installed package is shown below:
SELECT * FROM upgrade_history;
CSV Imports


SELECT * FROM upgrade_history;
CSV Imports
When importing records into Sugar, the most recent uploaded CSV file is stored in the upload directory as IMPORT_<module>_<user id>. Once the import has been run, the results of the import are stored in ./upload/import/ directory using a predefined format using the current user's id. The files created will be as follows:
dupes_<user id>.csv : The list of duplicate records found during the import
dupesdisplay_<user_id>.csv : The HTML formatted CSV for display to the user after import
error_<user id>.csv : The list of errors encountered during the import
errorrecords_<user_id>.csv : The HTML formatted CSV for display to the user after import
errorrecordsonly_<user id>.csv : The list of records that encountered an error


errorrecordsonly_<user id>.csv : The list of records that encountered an error
status_<user id>.csv : Determines the status of the users import
TopicsWorking with File UploadsThe UploadFile class handles the various tasks when uploading a file.
  	Last modified: 2023-02-03 21:04:03


Working with File Uploads
Overview
The UploadFile class handles the various tasks when uploading a file.
Retrieving a Files Upload Location
To retrieve a files upload path, you can use the get_upload_path method and pass in the file's GUID id.
require_once 'include/upload_file.php';
UploadFile::get_upload_path($file_id);
This method will normally return the path as:
upload://1d0fd9cc-02e5-f6cd-1426-51a509a63334
Retrieving a Files Full File System Location
To retrieve a files full system path, you can use the get_upload_path and real_path methods as shown below:
require_once 'include/upload_file.php';
UploadFile::realpath(UploadFile::get_upload_path($file_id));


UploadFile::realpath(UploadFile::get_upload_path($file_id));
This method will normally return the path where they are uploaded to. Each uploaded file is now stored in a subdirectory derived from the UUID filename. Existing files will be moved into subdirectories during upgrade.Â For example, the fileÂ 3657325a-bdd6-11eb-9a6c-08002723a3b8Â will now be stored in theÂ ./upload/25a/Â subdirectory. These UID character locations were selected to ensure even distribution of files across the new subdirectories.
Retrieving a Files Contents
As an alternative to using file_get_contents or sugar_file_get_contents, you can retrieve the contents of a file using the get_file_contents method as shown below:
require_once 'include/upload_file.php';