Changes in Metadata API v48

Updated 3 weeks ago by Copado Solutions

Copado is switching to Salesforce API version 48.

This version of the metadata API includes new attributes in the XML files,  while other attributes and objects have been deprecated or removed.

Considerations


When Am I Impacted?

Clients who currently have:

  • User stories with the metadata types described below.
  • Those user stories were committed before March the 17th. 
  • Those user stories have not yet been deployed to production or still need to be back-promoted.


What Do I Need to Do?

Follow the steps described below in order to make your feature branch compliant with API v48:

  • Removed items: Use this downloadable YML file to remove the tags that are no longer available and keep your files clean.
    Once the YML file contents have been included on the find and replace rule editor in the Pipeline record, the impacted user stories will need to be recommitted with the Recreate Feature Branch checkbox enabled on the User Story Commit page.

  • Deprecated items: Deprecated items won't cause your deployment to fail. However, these items are usually removed by Salesforce in subsequent releases, so if you want to get your repository cleaned, add them to the YML file provided in order to get them removed.

  • For new items, recommit the relevant components.


What If I Am Not Impacted?

As Copado has incremental deployments, if you don’t try to deploy the removed metadata items listed below, this will not impact your deployments. However, your repository will remain in API v47.

If you would like your repository to be also in API v48, check out the article How to Migrate Your Repository to a New Metadata API Version.


Changes

Here is a summary of the major changes to metadata types you need to be aware of as well as of the adjustments you need to make to avoid any possible errors and ensure everything is running smoothly.


Deprecated Items

In this new version of the metadata API, enableInviteChatterGuestEnabled in the CommunitiesSettings metadata type has been deprecated. If you want to remove it from your files, add the following rule to the YML file provided:

removeSimpleTag_CommunitiesSettings: 
branches:
file_names:
- 'Communities.settings'
regex_name: remove-simple-tag
replace_values:
- enableInviteChatterGuestEnabled
replace_with:


Removed Items

As part of this update, the items below have been removed. Use the YML provided to remove the tags and get your files cleaned.

  • The enableLightningOnMobile field in the MobileSettings type has been removed.

  • The enableReportFieldToFieldPref field and the enableReportUniqueRowCountPref field in the AnalyticsSettings type have been removed. You can use enableReportNotificationsEnable instead.

  • The allowSharingInChatterGroup field in the ChatterSettings type has been removed.

  • EnableCanSaveUserPerm has been removed from UserManagementSettings.

  • The field doesAutoAddSplitOwnerAsOpportunityTeamMember has been removed from the OpportunitySettings metadata type. You can use Opportunity Split Settings in Setup to enable this feature.
  • enableLwcEmailTemplateBuilder has been removed from the EmailTemplateSettings type.

  • capacityUsageCalcClassId has been removed from the FieldServiceSettings type.

  • mobExtDisplayMode, which is related to QuickAction is no longer available.

  • enableUseFlowBuilder has been removed from the FlowSettings type.

  • enableLwcEmailTemplateBuilder has been removed from the EmailTemplateSettings type.

  • capacityUsageCalcClassId has been removed from the FieldServiceSettings type.

  • The OrgPreferenceSettings metadata type was deprecated in v47 and has been removed in v48. Instead, use the appropriate Settings type for the functionality you want to enable or disable. For more information and a list of available types, see Settings in the Metadata API Developer Guide. See also the OrgPreferenceSettings reference topic, which includes links from each preferences field value to its new location in another Settings type.
    Resolution: To remove the OrgPreferenceSetting file, use a Destructive Changes operation in the production Git Snapshot record.

  • EssentialsTrialOrgSettings, IntegrationHubSettings and PersonListSettings have also been removed.
    Resolution: If you have any of these files in Git, execute a Destructive Changes operation in the production Git Snapshot record.


Added Items

If you want to add the new functionality included in this API version, you will need to recommit the components to ensure your files are updated. For a list of all the new components check out Salesforce’s release notes.


Behavior Changes
  • Namespace support for Territory2Model in unlocked packages has been removed in all API versions.
    This change addresses a known issue where territory models were deployed with unlocked packaging but without a namespace.
    Resolution: If you had created any unlocked packages with a namespace for Territory2Model, you need to rebuild the package.

  • For social, chat, and messaging communication channels, field labels are included by default.
    Previously, article fields inserted into social, chat, and messaging channels didn't include field labels. This change adds the doesExcludeFieldLabels field to ChannelLayout. The default value is false, so existing configurations for these channels now include field labels.
  • User permissions and prompt visibility:
    Users no longer need the View Setup and Configuration permission to see prompts that are visible only with specific permissions.
  • Access rules changed for DeployMessage:
    Only authenticated users can access DeployMessage, a child of DeployResult.


How did we do?