Metadata API

Metadata API includes new and changed types and fields.

New Metadata Types

ApexTestSuite
Represents a suite of Apex test classes to include in a test run.
CampaignInfluenceModel
Represents a campaign influence model used by Customizable Campaign Influence. You can’t configure Customizable Campaign Influence via the Metadata API, but you can add a campaign influence model.
ContentAsset
Represents the metadata for creating an asset file. Enables a Salesforce file to be used for org setup and configuration purposes. Asset files can be packaged and referenced by other components.
CommunityTemplateDefinition
Represents the definition of a community template.
CommunityThemeDefinition
Represents the definition of a community theme.
CleanDataService
Represents a data service that adds and updates data in standard objects.
DuplicateRule
Represents a rule that specifies how duplicate records in an object are detected.
GlobalValueSet
Represents the metadata for a global picklist value set, which is the set of shared values that custom picklist fields can use. A global value set isn't a field itself. (In contrast, the custom picklist fields that are based on a global picklist are of type ValueSet.)
GlobalValueSetTranslation
Contains details for a global value set translation. Global value sets are lists of values that can be shared by multiple custom picklist fields, optionally across objects.
StandardValueSet
Represents the set of values in a standard picklist field. This type extends the Metadata metadata type and inherits its fullName field.
StandardValueSetTranslation
Contains details for a standard picklist translation. It returns a translated standard value set.

Updated Metadata Types and Fields

These metadata types have changed or have fields that have been added or changed.

Certificate
The following fields have been added.
encryptedWithPlatformEncryption
Indicates whether this certificate is encrypted with Platform Encryption.
privateKeyExportable
Indicates whether this certificate’s private key is exportable. If privateKeyExportable isn’t specified when you create a certificate, its default value is true.
CustomApplication
The following fields have been added.
actionOverrides
Represents an action override for an application. Use it to create, update, edit, or delete action overrides.
brand
The color scheme and logo used for the app.
enableListViewHover
Indicates if a Salesforce console app has list view hovers enabled. If set to true, summary information is displayed about a record in a responsive list when the user hovers over a record name. For cases, hover over the subject field.
enableListViewReskin
Indicates if Salesforce console apps use responsive list views instead of Salesforce Classic lists views.
formFactors
Indicates the form factors for which the app is visible for Lightning Experience.
Note

Note

As of version 38.0, formFactors is set to Large for existing Salesforce Classic apps, except for Salesforce Classic consoles. Salesforce Classic apps installed from packages created before version 38.0 also have formFactors set to Large. For Salesforce Classic apps in packages created with 38.0 or later, you must set formFactors to Large for Salesforce Classic apps to appear in the Lightning Experience desktop.

navType
Not updateable. Indicates the type of navigation the app uses.
uiType
Not updateable. Identifies the type of custom app.
utilityBar
The developer name of the UtilityBar associated with this app.
CustomField
The following field has been added.
valueSet
Represents the set of values that make up a picklist on a custom field.
The following field has been removed.
globalPicklist
CustomObject
The enableReports field now supports external objects.
FlexiPage
The type field now supports the following values.
  • AvailableforMailAppAppPage value, which represents the email application pane used to override the default layout for Lightning for Outlook.
  • CommObjectPage, which represents a Lightning Page used to override an object page in Lightning Experience, as created in the Community Builder, in Communities.
  • CommQuickActionCreatePage, which represents a Lightning Page used to override a create record page in Lightning Experience, as created in the Community Builder, in Communities.
  • CommRecordPage, which represents a Lightning Page used to override a record page in Lightning Experience, as created in the Community Builder, in Communities.
  • CommRelatedListPage, which represents a Lightning Page used to override a related list page in Lightning Experience, as created in the Community Builder, in Communities.
  • CommSearchResultPage, which represents a Lightning Page used to override a search result page in Lightning Experience, as created in the Community Builder, in Communities.
  • CommThemeLayoutPage, which represents a Lightning Page used to override a theme layout page in Lightning Experience, as created in the Community Builder, in Communities.
  • UtilityBar value, which represents a Lightning Page used as the utility bar in Lightning Experience apps.
This new field has been added to the ComponentInstanceProperty subtype.
type
If this field value is null, then the ComponentInstanceProperty values apply to the Lightning component. If this field value is decorator, then the ComponentInstanceProperty values apply to the component decorator for the Lightning component.

The component decorator is a wrapper around a Lightning component. The decorator can apply additional capabilities to the component when it renders on a specific page in Lightning Experience. For example, you can configure a component decorator around a component on the Lightning Experience utility bar to set the component’s height or width when opened. The UtilityBar is the only page type that supports component decorators.

Flow
The processType field now supports the InvocableProcess value, which represents a process that can be invoked by another process.
GlobalValueSetTranslation
The valueTranslation field represents the translated name of a value in a translated global value set.
LiveChatDeployment
The following fields have been added.
connectionTimeoutDuration
Indicates the amount of time before the chat times out, in seconds.
connectionWarningDuration
Indicates the amount of time before a time-out warning is displayed to the agent, in seconds.
Network
The following field has been added.
enableSiteAsContainer
Determines whether the community uses Site.com pages instead of tabs.
PermissionSet
The license field contains either the related permission set license or the user license associated with this permission set. Use this field instead of userLicense, which is deprecated and only available up to API version 37.0.
PermissionSet and Profile
You can change field permissions to make a field editable using the Metadata API for fields that you can't change through the user interface. For example, you can deploy Asset.ProductCode as an editable field even though you can't through the user interface.
QuickAction
The type field now supports the LightningComponent value, which represents a Lightning component action.
This new field has been added.
lightningComponent
If the custom action invokes a Lightning component, this field represents the fully qualified name of the component. Otherwise, this field is null.
Report
The following fields have been added.
isUnlocked
Optional. Indicates whether a report filter is unlocked (true) or locked (false). You can edit unlocked filters on the report run page in Lightning Experience. If unspecified, the default value is false.
numSubscriptions
Reserved for future use.
ReportType
The baseObject field now supports external objects.
Skill
The new description field lets you add a description to a skill.
Translations
The globalPicklists field has been removed and is replaced by customValue, which represents a value in a global value set or custom picklist field. In API version 38.0 and later, translations are done through GlobalValueSetTranslation and StandardValueSetTranslation.