Components Available in First-Generation Managed Packages
Each metadata component that you include in a first-generation managed package has certain rules that determine its behavior in a subscriber org. Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and installed.
Before you review the details about the metadata components that can be included in a managed package, be sure you understand the meaning of each manageability rule.
| Rule | Description |
|---|---|
| Component Can Be Updated During Package Upgrade | If yes: The component can be updated during a package upgrade. The component is first deployed to the subscriber org during the initial package installation, and subsequent package upgrades update the installed component. If no: The component can’t be updated during package upgrades. Instead, it’s only deployed to the subscriber org during the initial package installation, and subsequent package upgrades don’t update the component. Components in this category can typically be modified by the admin in the subscriber org. |
| Subscriber Can Delete Component | If yes: The subscriber or installer of the managed package can delete the packaged component from their org. Deleted components aren’t reinstalled during a package upgrade. If no: The subscriber or installer of the managed package can’t delete the packaged component from their org. |
| Package Developer Can Remove Component | If yes: After the package that contains the component is promoted and released, the package developer can choose to remove the component in a future package version. In most cases, removing components from a package version marks the component as deprecated, and doesn’t hard delete the component from the subscriber org. These deprecated components can be deleted by the admin of the subscriber org. To request access to this feature, log a support case in the Salesforce Partner Community. If no: After the package that contains the component is promoted and released, the package developer can’t remove the component in a future package version. |
| Component Has IP Protection | If yes: To protect the intellectual property of the developer, the component’s metadata, such as Apex code or Custom Metadata record information, is hidden in the installed org. If no: The component is visible in the subscriber’s org. |
Each component also lists which properties the package developer and subscriber can edit after the package is promoted or installed. For definitions of those categories, see Editable Properties After Package Promotion or Installation.
-
Account Plan Objective Measure Calculation Definition
Represents the definition of a target object, rollup field, and logic for calculating the current value of a sales account plan objective measure.
-
Account Relationship Share Rule
Determines which object records are shared, how they’re shared, the account relationship type that shares the records, and the level of access granted to the records.
-
Represents the action link group template. Action link templates let you reuse action link definitions and package and distribute action links.
-
Represents an instance of an action plan template.
-
Represents the data source definition details associated with an actionable list.
-
Actionable List Key Performance Indicator Definition
Represents the custom key performance indicators that are defined for a specific field in an object.
-
Represents the ActivationPlatform configuration, such as platform name, delivery schedule, output format, and destination folder.
-
Represents the affinity information used in calculations to analyze and categorize contacts for marketing purposes.
-
Represents an action, for use in Agentforce.
-
Represents a topic, for use in Agentforce.
-
Represents an instance of an AI application. For example, Einstein Prediction Builder.
-
Represents additional prediction information related to an AI application.
-
Represents a collection of fields in a Salesforce org used to define a machine learning use case and get real-time predictions.
-
Analytics components include analytics applications, dashboards, dataflows, datasets, lenses, recipes, and user XMD.
-
Represents a Tableau Next dashboard.
-
Represents a Tableau Next visualization.
-
Represents a Tableau Next workspace.
-
Represents an Apex Class. An Apex class is a template or blueprint from which Apex objects are created. Classes consist of other classes, user-defined methods, variables, exception types, and static initialization code.
-
Represents an Apex sharing reason, which is used to indicate why sharing was implemented for a custom object.
-
Represents an Apex trigger. A trigger is Apex code that executes before or after specific data manipulation language (DML) events occur, such as before object records are inserted into the database, or after records have been deleted.
-
Represents the app framework template bundle. Use these templates for Data Cloud and Tableau Next assets.
-
Application Subtype Definition
Represents a subtype of an application within an application domain.
-
Represents a configuration for Assessment component. An AssessmentConfiguration entry indicates configuration for user flows such as sending out emails or reminder actions on assessments initiated by the patient.
-
Represents the container object that stores the questions required for an assessment.
-
Represents the container object for Assessment Questions.
-
Represents an Aura definition bundle. A bundle contains an Aura definition, such as an Aura component, and its related resources, such as a JavaScript controller. The definition can be a component, application, event, interface, or a tokens collection.
-
Represents a Data Processing Engine definition.
-
Represents the details of a Batch Management job definition.
-
Represents details of an action that can be triggered for a benefit.
-
Represents the configuration details for a specific Einstein Bot template, including dialogs and variables.
-
Represents the definition of a set of branding properties for an Experience Builder site, as defined in the Theme panel in Experience Builder.
-
Represents a briefcase definition. A briefcase makes selected records available for specific users and groups to view when they’re offline in the Salesforce Field Service mobile app for iOS and Android.
-
Building Energy Intensity Record Type Configuration
Represents the setup object that contains the mapping between the Building Energy Intensity Record record type and internal enums. You can primarily use this object for calculations across different record types.
-
The BusinessProcess metadata type enables you to display different picklist values for users based on their profile.
-
Represents the surveys used to track customers’ experiences across different stages in their lifecycle.
-
Business Process Type Definition
Define the types of business processes that are applied to a rule.
-
Represents the configuration settings for benefit verification requests.
-
Defines the characteristics of limits on benefit provision.
-
Represents the details for a record type such as service request, drug request, or admission request. One or more record types can be associated with a care request.
-
Represents a mapping from source system fields to Salesforce target entities and attributes.
-
Represents the metadata associated with a communication channel layout.
-
Represents the metadata used to describe a Rich Publisher App that’s integrated with the Chatter publisher.
-
Represents the configuration settings for Insurance Claim Financial Services.
-
Represents the type of communication channel, such as WhatsApp and SMS, to use for referral promotions.
-
Represents the definition of an Experience Builder site template.
-
Represents the definition of a theme for an Experience Builder site.
-
Represents the metadata associated with a compact layout.
-
Conditional Formatting Ruleset
Represents a set of rules that define the style and visibility of conditional field formatting on Dynamic Forms-enabled Lightning page field instances.
-
Represents a connected app configuration. A connected app enables an external application to integrate with Salesforce using APIs and standard protocols, such as SAML, OAuth, and OpenID Connect.
-
A context definition defines the relationship between the nodes and the attributes within each node. For efficient data access, users can use nodes and attributes to easily access the relevant data from the mapped data source. Various Salesforce products offer predefined context definitions based on their use case.
-
A contract type is used to group contracts so that they exhibit similar characteristics. For example, the lifecycle states, the people who access, the templates and clauses used.
-
Conversation Channel Definition
Represents the conversation channel definition that’s implemented for Interaction Service for Bring Your Own Channel and Bring Your Own Channel for CCaaS messaging channels.
-
This setup object connects the partner vendor system to the Service Cloud feature.
-
Represents an origin in the CORS allowlist.
-
Represents a trusted URL. For each CspTrustedSite component, you can specify Content Security Policy (CSP) directives and permissions policy directives.
-
Represents a custom application.
-
Represents a custom link defined in a home page component.
-
Represents a custom console component (Visualforce page) assigned to a CustomApplication that is marked as a Salesforce console. Custom console components extend the capabilities of Salesforce console apps.
-
Custom Field on Standard or Custom Object
Represents the metadata associated with a field. Use this metadata type to create, update, or delete custom field definitions on standard or custom objects.
-
Custom Field on Custom Metadata Type
Represents a custom fields on the custom metadata type.
-
Represents the CustomFieldDisplay view type assigned to product attribute custom fields.
-
Represents the section of the Lightning Experience help menu that the admin added to display custom, org-specific help resources for the org. The custom section contains help resources added by the admin.
-
Represents an index used to increase the speed of queries.
-
The CustomLabels metadata type allows you to create custom labels that can be localized for use in different languages, countries, and currencies.
-
Represents a record of a custom metadata type.
-
Represents a record of a custom metadata type.
-
Represents the metadata associated with a custom notification type.
-
Represents a custom object that stores data unique to an org or an external object that maps to data stored outside an org.
-
This metadata type allows you to translate custom objects for a variety of languages.
-
Represents a permission that grants access to a custom feature.
-
Represents a custom tab. Custom tabs let you display custom object data or other web content in Salesforce.
-
Represents a dashboard. Dashboards are visual representations of data that allow you to see key metrics and performance at a glance.
-
Represents the object template for data calculations and insights of Data Cloud objects in DataCalcInsightTemplate. These objects are added inside the data kit.
-
Represents a clean room provider configuration that defines the clean room collaboration details, including templates and the platform used for secure data collaboration in Data 360.
-
Represents the white-labeled metadata configuration for an external connector in Data 360.
-
Represents the connection information specific to Ingestion API.
-
Represents the connection information specific to Amazon S3.
-
Represent the object dependencies and relationships between different objects in Data Kit Object Dependency. These objects are added inside the data kit.
-
Represents the object in Data Kit Object Template. This object template is added inside the data kit.
-
Represents the output objects of the components the user includes in a data kit.
-
Represents the top-level Data Kit container definition. Content objects can be added after the Data Kit is defined.
-
Represents the object in Data Kit Content Object. These objects are added inside the data kit.
-
Used to represent the system where the data was sourced.
-
Represents the bundle of streams that a user adds to a data kit.
-
Represents the object from where the data was sourced.
-
Represents the entity that’s used to store the design-time bundle-level mappings for the data source fields and data model fields.
-
Contains Data Ingestion information such as Connection, API and File retrieval settings.
-
Represents the data stream that a user adds to a data kit.
-
Represents the DataWeaveScriptResource class that is generated for all DataWeave scripts. DataWeave scripts can be directly invoked from Apex.
-
Represents a definition of a decision matrix.
-
Decision Matrix Definition Version
Represents a definition of a decision matrix version.
-
Represents the information about a decision table.
-
Represents the information about a dataset link associated with a decision table. In a dataset link, select an object for whose records, the decision table must provide an outcome.
-
Represents a text-based code structure of your organization’s workspaces, organized by workspace type, and each workspace’s content items.
-
Represents a text-based code structure of your organization’s workspaces, organized by workspace type, and each workspace’s content items.
-
Represents information that defines a disclosure type, such as details of the publisher or vendor who created or implemented the report.
-
Represents the version information about the disclosure definition.
-
Represents the types of disclosures that are done by an individual or an organization and the associated metadata.
-
Represents the metadata associated with a model used in Einstein Discovery.
-
Represents the metadata associated with an Einstein Discovery prediction definition.
-
Represents the metadata associated with a story used in Einstein Discovery.
-
Represents a Document. All documents must be in a document folder, such as sampleFolder/TestDocument.
-
Represents an org’s settings for automatic document generation from templates.
-
Represents an Analytics custom map chart. Custom maps are user-defined maps that are uploaded to Analytics and are used just as standard maps are. Custom maps are accessed in Analytics from the list of maps available with the map chart type.
-
Use email templates to increase productivity and ensure consistent messaging. Email templates with merge fields let you quickly send emails that include field data from Salesforce records.
-
Represents a template for an email, mass email, list email, or Sales Engagement email.
-
Represents a setup node for creating an Embedded Service for Web deployment.
-
Embedded Service Menu Settings
Represents a setup node for creating a channel menu deployment. Channel menus list the ways in which customers can contact your business.
-
Represents an Enablement measure, which specifies the job-related activity that a user performs to complete a milestone or outcome in an Enablement program. A measure identifies a source object and optional related objects, with optional field filters and filter logic, for tracking the activity.
-
Represents an Enablement program, which includes exercises and measurable milestones to help users such as sales reps achieve specific outcomes related to your company’s revenue goals.
-
Enablement Program Task Subcategory
Represents a custom exercise type that an Enablement admin adds to an Enablement program in Program Builder. A custom exercise type also requires a corresponding EnblProgramTaskDefinition record for Program Builder and corresponding LearningItem and LearningItemType records for when users take the exercise in the Guidance Center.
-
Represents an entitlement template. Entitlement templates are predefined terms of customer support that you can quickly add to products.
-
Using the Electronic Signature Configuration setup, the system admin must define the required configurations to support the e-signature APIs and UI.
-
Using the Electronic Signature Envelope Config the system admin can define the default reminders and expiry for the envelopes submitted for eSignature.
-
Represents an event relay that you can use to send platform events and change data capture events from Salesforce to Amazon EventBridge.
-
Explainability Action Definition
Define where the metadata for your Decision Explainer business rules are stored in Public Sector Solutions.
-
Define and store versions of the explainability actions used by your Decision Explainer business rules in Public Sector Solutions.
-
Explainability Message Template
Represents information about the template that contains the decision explanation message for a specified expression set step type.
-
Represents an expression set definition.
-
Expression Set Definition Version
Represents a definition of an expression set version.
-
Represents information about the alias of the source object that’s used in an expression set.
-
Represents a token that’s used in an explainability message template. The token can be replaced with an expression set version resource that the template is used in. This object is available in API version 59.0 and later.
-
External Auth Identity Provider
Represents the external auth identity provider that obtains OAuth tokens for callouts that use named credentials.
-
Represents the header file for an external client application configuration.
-
External Client App Notification Settings
Represents the settings configuration for the external client app’s notifications plugin.
-
External Client App OAuth Settings
Represents the settings configuration for the external client app’s OAuth plugin.
-
External Client App Push Settings
Represents the settings configuration for the external client app’s push notification plugin.
-
Represents the details of how Salesforce authenticates to the external system.
-
Used to represent the object where the data was sourced.
-
Represents the metadata associated with an external data source. Create external data sources to manage connection details for integration with data and content that are stored outside your Salesforce org.
-
External Data Transport Field Template
Represents the definition of a Data Cloud schema field.
-
Use ExternalDataTranField to add a field to the ExternalDataTranObject in your managed packages. ExternalDataTranObject is a Data Cloud schema object.
-
External Data Transport Object Template
Represents the definition of a Data Cloud schema object.
-
External Data Transport Object
To include a Data Cloud schema object in your managed packages, add ExternalDataTranObject.
-
External Document Storage Configuration
Represents configuration, which admin makes in setup to specify the drive, path, and named credential to be used for storing documents on external drives.
-
Represents the External Service configuration for an org.
-
Represents a boolean feature parameter in the Feature Management App (FMA). Feature parameters let you drive app behavior and track activation metrics in subscriber orgs that install your package.
-
Represents a date feature parameter in the Feature Management App (FMA). Feature parameters let you drive app behavior and track activation metrics in subscriber orgs that install your package.
-
Represents an integer feature parameter in the Feature Management App (FMA). Feature parameters let you drive app behavior and track activation metrics in subscriber orgs that install your package.
-
Represents a field set. A field set is a grouping of fields. For example, you could have a field set that contains fields describing a user’s first name, middle name, last name, and business title.
-
Field Source Target Relationship
Stores the relationships between a data model object (DMO) and its fields. For example, the Individual.Id field has a one-to-many relationship (1:M) with the ContactPointEmail.PartyId field.
-
Represents the metadata associated with a flow. With Flow, you can create an application that navigates users through a series of pages to query and update records in the database. You can also execute logic and provide branching capability based on user input to build dynamic applications.
-
Represents a list of flows that are grouped by category.
-
Represents the flow definition’s description and active flow version number.
-
Represents the metadata associated with a flow test. Before you activate a record-triggered flow, you can test it to verify its expected results and identify flow run-time failures.
-
Represents a folder.
-
Represents a custom fuel type in an org.
-
Fuel Type Sustainability Unit of Measure
Represents a mapping between the custom fuel types and their corresponding unit of measure (UOM) values defined by a customer in an org.
-
Represents a collection of settings to configure the fundraising product.
-
Gateway Provider Payment Method Type
Represents an entity that allows integrators and payment providers to choose an active payment to receive an order’s payment data rather than allowing the Salesforce Order Management platform to select a default payment method.
-
Represents a planner for an agent or agent template. It’s a container for all the topics and actions used to interact with a large language model (LLM).
-
Represents a generative AI prompt template, for use in Agentforce.
-
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.
-
Represents the metadata associated with a home page component. You can customize the Home tab in Salesforce Classic to include components such as sidebar links, a company logo, a dashboard snapshot, or custom components that you create. Use to create, update, or delete home page component definitions.
-
Represents the metadata associated with a home page layout. You can customize home page layouts and assign the layouts to users based on their user profile.
-
Identity Verification Proc Def
Represents the definition of the identity verification process.
-
Represents a private connection between a third-party data service and a Salesforce org. The connection is inbound because the callouts are coming into Salesforce.
-
Represents an integration definition associated with a service process. Stores data for the Industries: Send Apex Async Request and Industries: Send External Async Request invocable actions.
-
Represents the mapping details between a Learning Achievement type and a Learning Achievement record type.
-
Represents a custom exercise type that an Enablement user takes in an Enablement program in the Guidance Center. A custom exercise type also requires a corresponding LearningItem record for the Guidance Center and corresponding EnblProgramTaskDefinition and EnblProgramTaskSubCategory records for when admins create a program in Program Builder.
-
Represents formatting options for the letterhead in an email template. A letterhead defines the logo, page color, and text settings for your HTML email templates. Use letterheads to ensure a consistent look and feel in your company’s emails.
-
Represents the category that a Life Sciences configuration record is organized into.
-
Represents a configuration record for Life Sciences. This object is a child of Life Science Config Category.
-
Represents the definition of a Lightning Bolt Solution, which can include custom apps, flow categories, and Experience Builder templates.
-
Represents the metadata associated with a Lightning Message Channel. A Lightning Message Channel represents a secure channel to communicate across UI technologies, such as Lightning Web Components, Aura Components, and Visualforce.
-
Represents the metadata associated with a Lightning page. A Lightning page represents a customizable screen made up of regions containing Lightning components.
-
Represents a custom Lightning type. Use this type to override the default user interface to create a customized appearance based on your business requirements. Deploy this bundle to your organization to implement the overrides.
-
Represents a Lightning web component bundle. A bundle contains Lightning web component resources.
-
ListView allows you to see a filtered list of records, such as contacts, accounts, or custom objects.
-
Represents a rule for masking or deleting data of a specified pattern. Written as a regular expression (regex). Use this object to mask or delete data of specified patterns, such as credit card, social security, or phone and account numbers.
-
Represents the configuration of a loyalty program process including its parameters and rules. Program processes determine how new transaction journals are processed. When new transaction journals meet the criteria and conditions for a program process, actions that are set up in the process are triggered for the transaction journals.
-
Represents the definition of custom content types for use with Salesforce CMS. Custom content types are displayed as forms with defined fields.
-
Represents an integration with a third-party app or service that generates prospect external activity.
-
Marketing App Extension Activity
Represents an Activity Type, which is a prospect activity that occurs in a third-party app and can be used in Account Engagement automations.
-
Represents the field values for MarketSegmentDefinition. MarketSegmentDefinition is used to store the exportable metadata of a segment, such as segment criteria and other attributes. Developers can create segment definition packages, pass segment definition in the form of data build tool (DBT), and publish it on AgentExchange for subscriber organizations to install and instantiate these segments.
-
MktCalculatedInsightsObjectDef
Represents Calculated Insight definition such as expression.
-
Represents the connection information of an external connector that can ingest data to Data Cloud, read data from the source, or write data to the source in Data Cloud.
-
An entity that is used to deliver (aka transport) information from the source to a target (target will be called a landing entity).This can be the schema of a file, API, Event, or other means of transporting data, such as SubscriberFile1.csv, or SubscriberCDCEvent.
-
Represents a named credential, which specifies the URL of a callout endpoint and its required authentication parameters in one definition. A named credential can be specified as an endpoint to simplify the setup of authenticated callouts.
-
Contains the object-level mappings between the source and the target objects. The source and target objects can be an MktDataLakeObject or an MktDataModelObject. For example, an Email source object can be mapped to the ContactPointEmail object.
-
Object Integration Provider Definition Mapping
Maps structured, logical data nodes in a context definition to actual Salesforce object fields or external data sources
-
Represents the details of a sample document or a document type that’s used as a reference while extracting and mapping information from a customer form.
-
Represents the details of the mapping between a form and a Salesforce object using Intelligent Form Reader.
-
Represents a private connection between a Salesforce org and a third-party data service. The connection is outbound because the callouts are going out of Salesforce.
-
Represents the metadata associated with a page layout.
-
Represents Path records.
-
Represents the metadata associated with a payment gateway provider.
-
Represents a set of permissions that’s used to grant more access to one or more users without changing their profile or reassigning profiles. You can use permission sets to grant access but not to deny access.
-
Represents a group of permission sets and the permissions within them. Use permission set groups to organize permissions based on job functions or tasks. Then, you can package the groups as needed.
-
Represents a partition in the Platform Cache.
-
Represents a channel that you can subscribe to in order to receive a stream of events.
-
Represents an entity selected for Change Data Capture notifications on a standard or custom channel, or a platform event selected on a custom channel.
-
Platform Event Subscriber Configuration
Represents configuration settings for a platform event Apex trigger, including the batch size, the trigger’s running user, and parallel subscription settings.
-
Represents a pricing action associated to a context definition and a pricing procedure.
-
Represents one out of various data models or sets of entities of a particular cloud that’ll be consumed by the pricing data store during design and run time.
-
Represents the pricing resolution for an pricing element determined using strategy name and formula.
-
Use Flow instead.
-
Represents a process’s migrated criteria and the resulting migrated flow.
-
Represents the ProductAttribute information being used as and attribute such as color_c, size_c .
-
Represents the type of product specification provided by the user to make the product terminology unique to an industry. A product specification type is associated with a product specification record type.
-
Product Specification Record Type
Represents the relationship between industry-specific product specifications and the product record type.
-
Represents the metadata related to in-app guidance, which includes prompts and walkthroughs.
-
Represents a specified create or update quick action for an object that then becomes available in the Chatter publisher.
-
Represents a recommendation strategy. Recommendation strategies are applications, similar to data flows, that determine a set of recommendations to be delivered to the client through data retrieval, branching, and logic operations.
-
Represents configuration settings for the Actions & Recommendations, Action Launcher, and Bulk Action Panel components.
-
Record Alert Data Source Expression Set Definition
Represents information about the data source for a record alert and the association with an expression set definition.
-
Represents the metadata associated with a record type. Record types let you offer different business processes, picklist values, and page layouts to different users. Use this metadata type to create, update, or delete record type definitions for a custom object.
-
Represents a trusted URL that’s excluded from redirection restrictions when the redirectionWarning or redirectBlockModeEnabled field on the SessionSettings Metadata type is set to true.
-
Represents the ReferencedDashboard object in CRM Analytics. A referenced dashboard stores information about an externally referenced dashboard.
-
Represents a registered external service, which provides an extension or integration.
-
Represents a definition of a graph that you can configure in your organization to traverse object hierarchies and record details, giving you a glimpse of how your business works.
-
Represents a remote site setting.
-
Represents a custom report.
-
Represents the metadata associated with a custom report type. Custom report types allow you to build a framework from which users can create and customize reports.
-
Represents a process created in Service Process Studio and its associated attributes.
-
Represents a Slack app.
-
Represents the grouping of individual catalog items in Service Catalog.
-
Service Catalog Filter Criteria
Represents an eligibility rule that determines if a Service Catalog user has access to a catalog item.
-
Service Catalog Item Definition
Represents the entity associated with a specific, individual service available in the Service Catalog.
-
Service Catalog Fulfillment Flow
Represents the flow associated with a specific catalog item in the Service Catalog.
-
Stationary Asset Environmental Source Record Type Configuration
Represents the setup object that contains the mapping between the Stationary Asset Environmental Source record type and internal enums. You can primarily use this object for calculations across different record types.
-
Represents a static resource file, often a code library in a ZIP file.
-
Represents the connection information specific to Web and Mobile Connectors.
-
Represents information about the additional unit of measure values defined by a customer.
-
Represents information about the unit of measure conversion for the additional fuel types defined by a customer.
-
Represents the container that stores the details of a timeline configuration. You can use this resource with Salesforce objects to see their records’ related events in a linear time-sorted view.
-
Represents a template for creating time sheets in Field Service.
-
Add translations to your managed packages.
-
Represents the admin-created configuration of the object relation UI component.
-
Represents a user access policy.
-
Represents a validation rule, which is used to verify that the data a user enters in a record is valid and can be saved.
-
Vehicle Asset Emissions Source Record Type Configuration
Represents the setup object that contains the mapping between the Vehicle Asset Emissions Source record type and internal enums. You can primarily use this object for calculations across different record types.
-
Represents a view definition on a Slack app.
-
Represents an external video provider configuration, which relays events from Salesforce to the provider.
-
Represents a Visualforce component.
-
Represents a Visualforce page.
-
Wave Analytic Asset Collection
A collection of CRM Analytics assets.
-
A CRM Analytics application.
-
A CRM Analytics dashboard component.
-
A CRM Analytics data prep dataflow.
-
A CRM Analytics dashboard.
-
A CRM Analytics dataset.
-
A CRM Analytics lens.
-
A CRM Analytics data prep recipe.
-
A CRM Analytics template bundle.
-
The extended metadata for CRM Analytics dataset fields and their formatting for dashboards and lenses.
-
Represents a configuration for creating commerce stores.
-
WorkflowAlert represents an email alert associated with a workflow rule.
-
WorkflowFieldUpdate represents a workflow field update.
-
WorkflowKnowledgePublish represents Salesforce Knowledge article publishing actions and information.
-
WorkflowOutboundMessage represents an outbound message associated with a workflow rule.
-
This metadata type represents a workflow rule.
-
This metadata type references an assigned workflow task.
Represents the definition of a target object, rollup field, and logic for calculating the current value of a sales account plan objective measure.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | Description, DeveloperName, MasterLabel, RollupType, Status, TargetField, TargetObject |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: AccountPlanObjMeasCalcDef; Component Type in 1GP Package Manager UI: Account Plan Objective Measure Calculation Definition
Documentation: Sales Account Plan Objectives, Measures, and Calculation Definitions
Determines which object records are shared, how they’re shared, the account relationship type that shares the records, and the level of access granted to the records.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Name, Developer Name, Description, Account Relationship Type, Access Level, Object Type, Account to Criteria Field |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: AccountRelationshipShareRule
Use Case: To share data between external accounts.
License Requirements: Orgs with Digital Experiences enabled can use this package.
Documentation: Salesforce Help: Account Relationships and Account Relationship Data Sharing Rules
Represents the action link group template. Action link templates let you reuse action link definitions and package and distribute action links.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in both 1GP and 2GP packages. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: ActionLinkGroupTemplate; Component Type in 1GP Package Manager UI: Action Link Group Template
Documentation: Salesforce Help: Action Link Templates
Represents an instance of an action plan template.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All attributes |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: ActionPlanTemplate
Documentation: Salesforce Help: Action Plans
Represents the data source definition details associated with an actionable list.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in both 1GP and 2GP packages. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All attributes |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: ActionableListDefinition; Component Type in 1GP Package Manager UI: ActionableListDefinition
Documentation: Salesforce Help: Actionable Segmentation
Represents the custom key performance indicators that are defined for a specific field in an object.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes, Supported in both 1GP and 2GP packages. |
| Component Has IP Protection | No |
To confirm whether this component is available in managed 1GP, managed 2GP, or both package types, see Metadata Coverage Report.
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All attributes |
| Both Package Developer and Subscriber Can Edit | All attributes |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: ActnblListKeyPrfmIndDef; Component Type in 1GP Package Manager UI: ActnblListKeyPrfmIndDef
License Requirements: Actionable Segmentation
Documentation: Salesforce Help: Create Custom Key Performance Indicators; Salesforce Help: ActnblListKeyPrfmIndDef
Represents the ActivationPlatform configuration, such as platform name, delivery schedule, output format, and destination folder.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | DataConnector, Description, LogoUrl, MasterLabel, OutputFormat, RefreshMode, Type |
| Both Package Developer and Subscriber Can Edit | Enabled (only subscriber editable), IncludeSegmentNames (only subscriber editable) |
| Neither Package Developer or Subscriber Can Edit | ID, OutputGrouping, PeriodicRefreshFrequency, RefreshFrequency |
Feature Name: Metadata Name: ActivationPlatform; Component Type in 1GP Package Manager UI: ActivationPlatform
Use Case: Allows ISVs to specify capabilities of their Activation Platform integrations and publish it on AgentExchange for subscriber organizations to install and instantiate instances of the platform as a disparate activation target.
Considerations When Packaging
Some upgrade scenarios are not support:
- Adding a new required field
- Removing a previously supported ID type
- Removing a previously supported optional field or required field
- Changing a previously supported field property from optional to required
Some update scenarios are supported and don’t automatically cascade to Activation Target or Activations created before the upgrade installations:
- Adding a new ID type
- Adding of a new optional field
- Adding a new hidden field
- Value change on a previously supported hidden field
To apply updates to future Activation run jobs, the user must edit and resave all Activation Targets created before the upgrade. Developers provide post-install instructions informing the subscriber of this required action anytime a change is made in a new version release.
License Requirements: Data Cloud enabled orgs can access this package.
Post Install Steps: An admin from the subscriber org enables the activation platform to start using this platform in Activation creations.
Documentation: Metadata API Developer Guide: ActivationPlatform
Represents the affinity information used in calculations to analyze and categorize contacts for marketing purposes.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | AffinityScoreType, NumberOfMonths, NumberOfRanges, SourceFieldApiNameList, TargetFieldApiNameList, ScoreRangeList |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: AffinityScoreDefinition
Documentation
Represents an action, for use in Agentforce.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No (However, actions can incorporate flows or Apex code that do have IP protection.) |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Description, IsConfirmationRequired, MasterLabel |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | DeveloperName, InvocationTarget, InvocationTargetType |
Action Input Fields:
- CopilotAction.IsUserInput
- Description
- IsPII
- Properties (Inherited from invocationTarget like flows or Apex code.)
- Title (Inherited from invocationTarget like flows or Apex code.)
- Required
- Lightning.Type
Action Output Fields:
- Description
- CopilotAction.IsDisplayable
- IsPII
- CopilotAction.IsUsedByPlanner
- Properties (Inherited from invocationTarget like flows or Apex code.)
- Title (Inherited from invocationTarget like flows or Apex code.)
Feature Name: Metadata Name: GenAiFunction; Component Type in 1GP Package Manager UI: Generative AI Function Definition
Use Case: Provide actions that customers can add to their own topics and agents.
Considerations When Packaging
When creating an Agent Action of type Apex, the Apex class, invocable Apex method, and any invocable Apex variables must all be marked as global. If any of these are public or private, the Apex method won’t appear in the list of options to add to the Agent Action, and won’t be invoked by an Agent at runtime.
Documentation: Salesforce Help: Agentforce Agents; Salesforce Help: Agentforce Actions; Metadata API Developer Guide: GenAiFunction
Represents a topic, for use in Agentforce.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Description, MasterLabel, Scope, AiPluginUtterances, GenAiFunctions, GenAiPluginInstructions |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | DeveloperName, PluginType |
Feature Name: Metadata Name: GenAiPlugin; Component Type in 1GP Package Manager UI: Generative AI Plugin Definition
Use Case
Provide topics that customers can add to their own agents. Actions can be added to topics.
Considerations When Packaging
Subscribers can’t edit which actions are associated with a managed-installed topic. Instead, subscribers must manually create a copy of the topic and then assign actions to their copy of the topic. We’re working to improve this experience.
Documentation: Salesforce Help: Agentforce Agents; Salesforce Help: Agentforce Topics
Represents an instance of an AI application. For example, Einstein Prediction Builder.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Type |
| Both Package Developer and Subscriber Can Edit | Status, ExternalId, MlExternalId |
| Neither Package Developer or Subscriber Can Edit | Name |
Feature Name: Metadata Name: AIApplication
Considerations When Packaging
AIApplication is the parent entity for all Einstein configuration entities. Packaging of Einstein features must always begin with the selection of one or more AIApplications. To create a package with ML Prediction Definition, select the parent AIApplication (Type = PredictionBuilder). To create a package with ML Recommendation Definition, select the parent AIApplication (Type = RecommendationBuilder). Packaging automatically analyzes the relationships and includes the associated MLPredictionDefinitions, MLRecommendationDefinitions, and MLDataDefinitions necessary to fully define the Einstein configuration.
Documentation: Metadata API Developer Guide: AIApplication; Salesforce Help: Einstein Prediction Builder; Salesforce Help: Einstein Recommendation Builder
Represents additional prediction information related to an AI application.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | AIApplicationId |
| Both Package Developer and Subscriber Can Edit | Rank, IsInsightReasonEnabled, AIScoringMode, ExternalId |
| Neither Package Developer or Subscriber Can Edit | Name |
Feature Name: Metadata Name: AIApplicationConfig
Considerations When Packaging
AIApplicationConfig is always associated with an AIApplication. Packaging of Einstein features must always begin with the selection of one or more AIApplications. To create a package with AI Application Config, select the parent AIApplication. Packaging automatically analyzes the relationships and includes the associated MLApplicationConfig, MLPredictionDefinition, MLRecommendationDefinitions, and MLDataDefinitions necessary to fully define the Einstein configuration.
Documentation: Metadata API Developer Guide: AIApplicationConfig; Salesforce Help: Einstein Prediction Builder; Salesforce Help: Einstein Recommendation Builder
Represents a collection of fields in a Salesforce org used to define a machine learning use case and get real-time predictions.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All the AIUsecaseDefinition fields |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: AIUsecaseDefinition; Component Type in 1GP Package Manager UI: AIUsecaseDefinition
Use Case
AI Usecase Definition lets you ship data that can be used to set up use cases for which you want to generate real-time predictions. This data includes machine learning models and feature extractors required to generate the real-time predictions.
License Requirements: This feature is available with the CRM Plus license and the use case-related product’s CRM license.
Documentation: Industries Common Resources Developer Guide: AI Accelerator; Salesforce Help: AI Accelerator
Analytics components include analytics applications, dashboards, dataflows, datasets, lenses, recipes, and user XMD.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes (Analytics Dataflow only). All other analytics components can’t be updated. |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes (Analytic snapshot only). Supported in managed 2GP packages only. All other analytics components can’t be removed. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
For more details on 2GP component removal, see Remove Metadata Components from Second-Generation Managed Packages.
Represents a Tableau Next dashboard.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Label |
| Both Package Developer and Subscriber Can Edit | Description |
| Neither Package Developer or Subscriber Can Edit | Template Asset Source Name, Template Source, Version |
Feature Name: Metadata Name: AnalyticsDashboard; Component Type in 1GP Package Manager UI: Analytics Dashboard
License Requirements: Tableau Next Admin or Tableau Next Analyst permission sets
Documentation: For more information on Tableau Next dashboards, see Create Effective Dashboards With Tableau Next in in Salesforce Help..
Represents a Tableau Next visualization.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Label |
| Both Package Developer and Subscriber Can Edit | Description |
| Neither Package Developer or Subscriber Can Edit | Full Name, Is Original, Version |
Feature Name: Metadata Name: AnalyticsVisualization; Component Type in 1GP Package Manager UI: Analytics Visualization
License Requirements: Tableau Next Admin or Tableau Next Analyst permission sets
Documentation: For more information on Tableau Next visualizations, see Build Insightful Visualizations in Tableau Next in in Salesforce Help..
Represents a Tableau Next workspace.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Label |
| Both Package Developer and Subscriber Can Edit | Description |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: AnalyticsWorkspace; Component Type in 1GP Package Manager UI: Analytics Workspace
License Requirements: Tableau Next Admin or Tableau Next Analyst permission sets
Documentation: For more information on Tableau Next workspaces, see Tableau Next Workspaces in in Salesforce Help..
Represents an Apex Class. An Apex class is a template or blueprint from which Apex objects are created. Classes consist of other classes, user-defined methods, variables, exception types, and static initialization code.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes (if not set to global access). Supported in both 1GP and 2GP packages. |
| Component Has IP Protection | Yes |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
For more details on 2GP component removal, see Remove Metadata Components from Second-Generation Managed Packages.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | API Version, Code |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | Name |
Feature Name: Metadata Name: ApexClass; Component Type in 1GP Package Manager UI: Apex Class
Considerations When Packaging
-
Any Apex that is included as part of a package must have at least 75% cumulative test coverage. Each trigger must also have some test coverage. When you upload your package to AgentExchange, all tests are run to ensure that they run without errors. In addition, all tests are run when the package is installed in the installer’s org. If any test fails, the installer can decide whether to install the package.
-
Managed packages receive a unique namespace. This namespace is prepended to your class names, methods, variables, and so on, which helps prevent duplicate names in the installer’s org.
-
In a single transaction, you can only reference 10 unique namespaces. For example, suppose that you have an object that executes a class in a managed package when the object is updated. Then that class updates a second object, which in turn executes a different class in a different package. Even though the first package didn’t access the second package directly, the access occurs in the same transaction. It’s therefore included in the number of namespaces accessed in a single transaction.
-
If you’re exposing any methods as Web services, include detailed documentation so that subscribers can write external code that calls your Web service.
-
If an Apex class references a custom label and that label has translations, explicitly package the individual languages desired to include those translations in the package.
-
If you reference a custom object’s sharing object (such as MyCustomObject__share) in Apex, you add a sharing model dependency to your package. Set the default org-wide access level for the custom object to Private so other orgs can install your package successfully.
-
The code contained in an Apex class, trigger, or Visualforce component that’s part of a managed package is obfuscated and can’t be viewed in an installing org. The only exceptions are methods declared as global. You can view global method signatures in an installing org. In addition, License Management Org users with the View and Debug Managed Apex permission can view their packages’ obfuscated Apex classes when logged in to subscriber orgs via the Subscriber Support Console.
-
You can use the
deprecatedannotation in Apex to identifyglobalmethods, classes, exceptions, enums, interfaces, and variables that can’t be referenced in later releases of a managed package. So you can refactor code in managed packages as the requirements evolve. After you create another package version as Managed - Released, new subscribers that install the latest package version can’t see the deprecated elements, while the elements continue to function for existing subscribers and API integrations. -
Apex code that refers to Data Categories can’t be uploaded.
-
Before deleting Visualforce pages or global Visualforce components from your package, remove all references to public Apex classes and public Visualforce components. After removing the references, upgrade your subscribers to an interim package version before you delete the page or global component.
Usage Limits
The maximum number of class and trigger code units in a deployment of Apex is 7500. For more information, see
Execution Governors and Limits in the
in the
Apex Developer Guide.
.
Documentation: Second-Generation Managed Packaging Developer Guide: Namespace-Based Visibility for Apex Classes in Second-Generation Managed Packages; First-Generation Managed Packaging Developer Guide: About API and Dynamic Apex Access in Packages; First-Generation Managed Packaging Developer Guide:Using Apex in Group and Professional Editions
Represents an Apex sharing reason, which is used to indicate why sharing was implemented for a custom object.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Reason Label |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | Reason Name |
Feature Name: Metadata Name: SharingReason; Component Type in 1GP Package Manager UI: Apex Sharing Reason
Considerations When Packaging: Apex sharing reasons can be added directly to a package, but are only available for custom objects.
Documentation: Metadata API Developer Guide: SharingReason
Represents an Apex trigger. A trigger is Apex code that executes before or after specific data manipulation language (DML) events occur, such as before object records are inserted into the database, or after records have been deleted.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in both 1GP and 2GP packages. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
For more details on 2GP component removal, see Remove Metadata Components from Second-Generation Managed Packages.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | API Version, Code |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | Name |
Feature Name: Metadata Name: ApexTrigger; Component Type in 1GP Package Manager UI: Apex Trigger
Documentation: Apex Developer Guide: Triggers
Represents the app framework template bundle. Use these templates for Data Cloud and Tableau Next assets.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Label, MaxAppCount |
| Both Package Developer and Subscriber Can Edit | Description, TemplateBadgeIcon |
| Neither Package Developer or Subscriber Can Edit | AssetVerion, TemplateType |
Feature Name: Metadata Name: AppFrameworkTemplateBundle; Component Type in 1GP Package Manager UI: App Framework Template Bundle
Considerations When Packaging
Data Cloud and Tableau Next assets are installed in subscriber orgs via templates using the AppFrameworkTemplateBundle. The template framework supports the data sync and orchestration needed for visualization assets, along with customizations for each org.
License Requirements: Tableau Included App Manager permission set
Represents a subtype of an application within an application domain.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | Label, Developer Name, Description, Application Usage Type |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: ApplicationSubtypeDefinition
Documentation: Industries Common Resources Developer Guide: AssessmentSubtypeDefinition
Represents a configuration for Assessment component. An AssessmentConfiguration entry indicates configuration for user flows such as sending out emails or reminder actions on assessments initiated by the patient.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in managed 1GP packages only. |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All but DeveloperName |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | DeveloperName |
Feature Name: Metadata Name: AssessmentConfiguration; Component Type in 1GP Package Manager UI: AssessmentConfiguration
Documentation: Health Cloud Developer Guide: AssessmentConfiguration
Represents the container object that stores the questions required for an assessment.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All except DeveloperName |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | DeveloperName |
Feature Name: Metadata Name: AssessmentQuestion
Documentation: Industries Common Resources Developer Guide: AssessmentQuestion
Represents the container object for Assessment Questions.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All except DeveloperName |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | DeveloperName |
Feature Name: Metadata Name: AssessmentQuestionSet
Documentation: Industries Common Resources Developer Guide: AssessmentQuestionSet
Represents an Aura definition bundle. A bundle contains an Aura definition, such as an Aura component, and its related resources, such as a JavaScript controller. The definition can be a component, application, event, interface, or a tokens collection.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
You can build Lightning components using two programming models: the Lightning Web Components model, and the original Aura Components model.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in both 1GP and 2GP packages. |
| Component Has IP Protection | No |
When a package developer removes an Aura or Lightning web component from a package, the component remains in a subscriber’s org after they install the upgraded package. The administrator of the subscriber’s org can delete the component, if desired. This behavior is the same for a Lightning web component or an Aura component with a public or global access value.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | API Version, Description, Label, Markup |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | Name |
Aura Component: Metadata Name: AuraDefinitionBundle; Component Type in 1GP Package Manager UI: Aura Component Bundle
Documentation: Lightning Aura Components Developer Guide
Represents a Data Processing Engine definition.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | Yes, except templates |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Entire Data Processing Engine definition |
| Both Package Developer and Subscriber Can Edit | Label, Description, Status |
| Neither Package Developer or Subscriber Can Edit | API Name, URL |
Feature Name: Metadata Name: BatchCalcJobDefinition; Component Type in 1GP Package Manager UI: Batch Calculation Job Definition
Use Case
Data Processing Engine helps you transform data that’s available in your Salesforce org and write back the transformation results as new or updated records. You can transform the data for standard and custom objects using Data Processing Engine definitions.
License Requirements: Either Financial Services Cloud, Manufacturing Cloud, Loyalty Management, Net Zero Cloud, or Rebate Management; Data Pipelines
Documentation: Salesforce Help: Data Processing Engine
Represents the details of a Batch Management job definition.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | Yes, except templates |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Entire Batch Management job |
| Both Package Developer and Subscriber Can Edit | Label, Description, Status |
| Neither Package Developer or Subscriber Can Edit | API Name, URL |
Feature Name: Metadata Name: BatchProcessJobDefinition; Component Type in 1GP Package Manager UI: Batch Process Job Definition
Use Case
Automate the processing of records in scheduled flows with Batch Management. With Batch Management, you can process a high volume of standard and custom object records.
License Requirements: Either Loyalty Management, Manufacturing Cloud, or Rebate Management; System Administrator Profile
Documentation: Salesforce Help: Batch Management
Represents details of an action that can be triggered for a benefit.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | Yes, except templates |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Entire Benefit Action record |
| Both Package Developer and Subscriber Can Edit | Label, Description, Status |
| Neither Package Developer or Subscriber Can Edit | API Name, URL |
Feature Name: Metadata Name: BenefitAction; Component Type in 1GP Package Manager UI: Benefit Action
Use Case: Benefit Actions are actions that can be triggered for a loyalty program benefit.
License Requirements: Loyalty Management permission set license
Documentation: Salesforce Help: Benefit Action
Represents the configuration details for a specific Einstein Bot template, including dialogs and variables.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Bot Dialog Groups, Bot Dialogs, Conversation Context Variables, Conversation Languages, Conversation Definition Goals, Conversation System Dialogs, Conversation Variables, Description, Entry Dialog, Icon, Main Menu Dialog, Label, MlDomain, Rich Content Enabled |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: BotTemplate; Component Type in 1GP Package Manager UI: Bot Template
Documentation: Salesforce Help: Create an Einstein Bot Template; Salesforce Help: Create a Template from an Einstein Bot; Salesforce Help: Package an Einstein Bot Template; Metadata API Developer Guide: BotTemplate
Represents the definition of a set of branding properties for an Experience Builder site, as defined in the Theme panel in Experience Builder.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
Where possible, we changed noninclusive terms to align with our company value of Equality. We maintained certain terms to avoid any effect on customer implementations.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | brandingSetProperty, description, masterLabel, type |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: BrandingSet
Relationship to Other Components
BrandingSet can’t be added to a package by itself. BrandingSet is included automatically in a package if it’s referenced by another object in the package, such as CommunityThemeDefinition, LightningExperienceTheme, or EmbeddedServiceMenuSettings.
Documentation: Salesforce Help: Use Branding Sets in Experience Builder
Represents a briefcase definition. A briefcase makes selected records available for specific users and groups to view when they’re offline in the Salesforce Field Service mobile app for iOS and Android.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Entire briefcase |
| Both Package Developer and Subscriber Can Edit | Active |
| Neither Package Developer or Subscriber Can Edit | Full Name |
Feature Name: Metadata Name: BriefcaseDefinition; Component Type in 1GP Package Manager UI: Briefcase Definition
Considerations When Packaging
As a best practice, package Briefcase Definition with IsActive set to false. If you package Briefcase Definition with IsActive set to true, the package installation fails if installing the package exceeds any limits.
Usage Limits
All
Briefcase Builder limits apply to a Briefcase Definition package.
apply to a Briefcase Definition package.
Relationship to Other Components
After you install the package, assign the briefcase to the application that the briefcase’s data is for.
Documentation: Salesforce Help: Briefcase Builder
Represents the setup object that contains the mapping between the Building Energy Intensity Record record type and internal enums. You can primarily use this object for calculations across different record types.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All attributes |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: BldgEnrgyIntensityCnfg; Component Type in 1GP Package Manager UI: Building Energy Intensity Record Type Configuration
Use Case: You can use this component to build on top of the current Net Zero Cloud data model and carbon accounting capability to create new stationary asset types for end users.
License Requirements
- Net Zero Cloud Growth license or Net Zero Cloud Starter license
- Net Zero Cloud Manager permissions set
Post Install Steps
Enable these org settings:
- Net Zero Cloud
- Manage Carbon Accounting
- Manage Building Energy Intensity
Documentation
- Salesforce Help: Set Up Record Types for Net Zero Cloud
- Salesforce Help: Benchmark Building Energy Intensity Data
The BusinessProcess metadata type enables you to display different picklist values for users based on their profile.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | All attributes |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: BusinessProcess
Use Case: You can use this component to define different picklist values that you associate with record types.
Relationship to Other Components: Record types of corresponding entities.
Documentation: Salesforce Help: Tailor Business Processes to Different Users Using Record Types
Represents the surveys used to track customers’ experiences across different stages in their lifecycle.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All Business Process Group fields including Business Process Definition and Business Process Feedback. |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | Developer Name, Customer Satisfaction Metric |
Feature Name: Metadata Name: BusinessProcessGroup; Component Type in 1GP Package Manager UI: Business Process Group
Use Case
Business Process Group lets you ship groupings relevant to survey metrics that are captured as part of any purchase or product lifecycle. For a specific business process group, you can define different stages and associate relevant questions from one or more surveys for reporting purposes.
License Requirements: This feature is available with the Feedback Management - Growth license.
Relationship to Other Components: This feature can be used in conjunction with Surveys and Survey Invitation Rules Flow types, and their corresponding dependencies.
Documentation: Metadata API Developer Guide: BusinessProcessGroup; Salesforce Help: Track Satisfaction Across a Customer’s Lifecycle
Define the types of business processes that are applied to a rule.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | Label, Developer Name, Description, Application Usage Type |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: BusinessProcessTypeDefinition
Represents the configuration settings for benefit verification requests.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | MasterLabel, ServiceApexClass, ServiceNamedCredential, UriPath, isDefault, GeneralPlanServiceTypeCode, ServiceTypeSourceSystem, OrganizationName, DefaultNpi, CodeSetType |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | Name |
Feature Name: Metadata Name: CareBenefitVerifySettings; Component Type in 1GP Package Manager UI: Care Benefit Verification Settings
Use Case: Provides out-of-the-box configuration settings for benefit verification requests in Health Cloud.
License Requirements: Industries Health Cloud
Relationship to Other Components: CareBenefitVerifySettings can contain ApexClass as well as NamedCredentials.
Documentation: Health Cloud Developer Guide: CareBenefitVerifySettings
Defines the characteristics of limits on benefit provision.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | LimitType, MetricType, MasterLabel |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | Name |
Feature Name: Metadata Name: CareLimitType; Component Type in 1GP Package Manager UI: Care Limit Type
Use Case: Provide the characteristics of limits on benefit provision in Health Cloud.
License Requirements: Industries Health Cloud Add On or an org with a Health Cloud Financial Data Platform license
Documentation: Health Cloud Developer Guide: CareLimitType
Represents the details for a record type such as service request, drug request, or admission request. One or more record types can be associated with a care request.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | MasterLabel, CareRequestType, CareRequestRecordType, CareRequestRecords, IsDefaultRecordType |
| Both Package Developer and Subscriber Can Edit | IsActive |
| Neither Package Developer or Subscriber Can Edit | Name |
Feature Name: Metadata Name: CareRequestConfiguration; Component Type in 1GP Package Manager UI: Care Request Configuration
Use Case: Provides the details for a record type such as a service request, drug request, or admission request in Health Cloud.
License Requirements: Industries Health Cloud Add On an org with a Health Cloud Utilization Mgmt Platform license
Relationship to Other Components
Ensure that the record type specified in the Case Record Type field in CareRequestConfiguration is available in the subscriber org. Otherwise, the package must include the record type.
Documentation: Health Cloud Developer Guide: CareRequestConfiguration
Represents a mapping from source system fields to Salesforce target entities and attributes.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | External ID Field, Is Active, Label, Source System, Target Object |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | Name |
Feature Name: Metadata Name: CareSystemFieldMapping; Component Type in 1GP Package Manager UI: Care System Field Mapping
Use Case: Provides an out-of-the-box mapping for an external system to Salesforce for the Care Program Enrollment or Remote Monitoring features in Health Cloud.
License Requirements: Industries Health Cloud
Documentation: Health Cloud Developer Guide: CareSystemFieldMapping
Represents the metadata associated with a communication channel layout.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All attributes |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: ChannelLayout; Component Type in 1GP Package Manager UI: Communication Channel Layout
Considerations When Packaging: ChannelLayout can only be installed in Salesforce Classic orgs with Knowledge enabled.; ChannelLayout includes the article type *__kav, which is not supported by Lightning Knowledge., which is not supported by Lightning Knowledge.; If you try to install ChannelLayout into an org with Lightning Knowledge enabled, this message is displayed: “When Lightning Knowledge is enabled, you can’t add an article type”.
License Requirements: Enable Knowledge in Salesforce Classic orgs.
Documentation: Salesforce Knowledge Developer Guide: ChannelLayout
Represents the metadata used to describe a Rich Publisher App that’s integrated with the Chatter publisher.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | Yes |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Description, Header Text, Hover Text, Icon, Name |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | Composition CMP, Render CMP, Type |
Feature Name: Metadata Name: ChatterExtension
Documentation: Metadata API Developer Guide: ChatterExtension; Object Reference for the Salesforce Platform: ChatterExtension
Represents the configuration settings for Insurance Claim Financial Services.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Label |
| Both Package Developer and Subscriber Can Edit | Claim Coverage Pending Authority Status, Claim Coverage Payment Detail Pending Authority Status, Claim Pending Authority Status |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: ClaimFinancialSettings
Documentation: Salesforce Help: Claim Financial Settings
Represents the type of communication channel, such as WhatsApp and SMS, to use for referral promotions.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | Yes |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | API Name |
Feature Name: Metadata Name: CommunicationChannelType
Use Case: Use WhatsApp as a communication channel for referral promotions.
License Requirements: Referral Marketing permission set license
Documentation: Salesforce Help: Communication Assets
Represents the definition of an Experience Builder site template.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: CommunityTemplateDefinition; Component Type in 1GP Package Manager UI: Lightning Community Template
Use Case: Share or distribute your Experience Builder site templates.
License Requirements: Customize Application user permission; Create and Set Up Experiences user permission; View Setup and Configuration user permission
Relationship to Other Components: If you add CommunityTemplateDefinition to a package, you must also add CommunityThemeDefinition to the package.
Documentation: Salesforce Help: Export a Customized Experience Builder Template for a Lightning Bolt Solution; Salesforce Help: Package and Distribute a Lightning Bolt Solution
Represents the definition of a theme for an Experience Builder site.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: CommunityThemeDefinition; Component Type in 1GP Package Manager UI: Lightning Community Theme
Use Case: Share or distribute your Experience Builder site themes.
License Requirements: Customize Application user permission; Create and Set Up Experiences user permission; View Setup and Configuration user permission
Relationship to Other Components: CommunityThemeDefinition must contain a BrandingSet.; CommunityThemeDefinition can be added to a package without a CommunityTemplateDefinition, but CommunityTemplateDefinition must contain a CommunityThemeDefinition to be added to a package.
Documentation: Salesforce Help: Export a Customized Experience Builder Theme for a Lightning Bolt Solution; Salesforce Help: Package and Distribute a Lightning Bolt Solution
Represents the metadata associated with a compact layout.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in 2GP packages only. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
For more details on 2GP component removal, see Remove Metadata Components from Second-Generation Managed Packages.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | All attributes |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: CompactLayout; Component Type in 1GP Package Manager UI: Compact Layout
Documentation: Metadata API Developer Guide: CompactLayout
Represents a set of rules that define the style and visibility of conditional field formatting on Dynamic Forms-enabled Lightning page field instances.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Conditional formatting ruleset |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: UiFormatSpecificationSet; Component Type in 1GP Package Manager UI: UI Format Specification Set
Relationship to Other Components: You can only assign a conditional formatting ruleset to a field on a Dynamic Forms-enabled Lightning page..
Documentation: Salesforce Help: Conditional Field Formatting in Lightning App Builder; Metadata API Developer Guide: UiFormatSpecificationSet
Represents a connected app configuration. A connected app enables an external application to integrate with Salesforce using APIs and standard protocols, such as SAML, OAuth, and OpenID Connect.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in 1GP packages only. |
| Component Has IP Protection | No |
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Access Method, Canvas App URL, Callback URL, Connected App Name, Contact Email, Contact Phone, Description, Icon URL, Info URL, Trusted IP Range, Locations, Logo Image URL, OAuth Scopes |
| Both Package Developer and Subscriber Can Edit | ACS URL, Entity ID, IP Relaxation, Mobile Start URL, Permitted Users, Refresh Token Policy, SAML Attributes, Service Provider Certificate, Start URL, Subject Type |
| Neither Package Developer or Subscriber Can Edit | API Name, Created Date/By, Consumer Key, Consumer Secret, Installed By, Installed Date, Last Modified Date/By, Version |
A context definition defines the relationship between the nodes and the attributes within each node. For efficient data access, users can use nodes and attributes to easily access the relevant data from the mapped data source. Various Salesforce products offer predefined context definitions based on their use case.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes. Only if the component doesn’t contain any active context definitions. |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | Standard Context Definitions |
Feature Name: Metadata Name: ContextDefinition; Component Type in 1GP Package Manager UI: Context Definition
Documentation: Industries Common Resources Developer Guide: Context Definition; Salesforce Help: Context Service
A contract type is used to group contracts so that they exhibit similar characteristics. For example, the lifecycle states, the people who access, the templates and clauses used.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Both Package Developer and Subscriber Can Edit | Is Default, Sub Types |
| Neither Package Developer or Subscriber Can Edit | Name |
Feature Name: Metadata Name: ContractType
Use Case: Allows admin users to modify Contract Type properties.
License Requirements: CLM Admin Permission Set (CLM User PSL).
Documentation: Salesforce Contracts Developer Guide: ContractType
Represents the conversation channel definition that’s implemented for Interaction Service for Bring Your Own Channel and Bring Your Own Channel for CCaaS messaging channels.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Connected App, Description, Label, Name |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: ConversationChannelDefinition; Component Type in 1GP Package Manager UI: ConversationChannelDefinition
Use Case: To enable and set up Bring Your Own Channel, integrating third-party messaging services with Salesforce.; To enable and set up Bring Your Own Channel for Contact Center as a Service (CCaaS), integrating a third party CCaaS provider with Salesforce.
License Requirements: Service Cloud license with Digital Engagement add-on license
Post Install Steps: Set up and enable Bring Your Own Channel or Bring Your Own Channel for CCaaS.
Relationship to Other Components: Linked to ConversationVendorInfo.
Documentation: Salesforce Developer Documentation: Bring Your Own Channel; Salesforce Developer Documentation: Bring Your Own Channel for CCaaS; Salesforce Help: Set Up Bring Your Own Channel; Salesforce Help: Set Up Bring Your Own Channel for CCaaS
This setup object connects the partner vendor system to the Service Cloud feature.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | Yes |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: ConversationVendorInfo; Component Type in 1GP Package Manager UI: ConversationVendorInfo
Use Case: Include information about a Service Cloud Voice implementation.
License Requirements: Enable Service Cloud Voice in your org.
Documentation: Service Cloud Voice for Partner Telephony Developer Guide: ConversationVendorInfo; Object Reference for the Salesforce Platform: ConversationVendorInfo
Represents an origin in the CORS allowlist.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Url pattern |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: CorsWhitelistOrigin; Component Type in 1GP Package Manager UI: CORS Allowed Origin List
Use Case
Customers can add a URL pattern that includes an HTTPS protocol and a domain name. Including a port number is optional. The wildcard character (*) is supported only for the second-level domain name, for example,
https://*.example.com.
.
Documentation: Salesforce Help: Enable CORS for OAuth Endpoints; Salesforce Help: Configure Salesforce CORS Allowlist
Represents a trusted URL. For each CspTrustedSite component, you can specify Content Security Policy (CSP) directives and permissions policy directives.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | context, description, endpointUrl, isActive, isApplicableToConnectSrc, isApplicableToFontSrc, isApplicableToFrameSrc, isApplicableToImgSrc, isApplicableToMediaSrc, isApplicableToStyleSrc |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: CspTrustedSite; Component Type in 1GP Package Manager UI: CspTrustedSite
Use Case
The Lightning Component framework uses Content Security Policy (
CSP) to impose restrictions on content. The main objective of CSP is to help prevent cross-site scripting (
) to impose restrictions on content. The main objective of CSP is to help prevent cross-site scripting (
XSS) and other code injection attacks. If your package includes sites or pages that load content from an external (non-Salesforce) server or via a WebSocket connection, add the external server as a CSP trusted site. Each CSP trusted site can apply to Experience Cloud sites, Lightning Experience pages, custom Visualforce pages, or all three.
) and other code injection attacks. If your package includes sites or pages that load content from an external (non-Salesforce) server or via a WebSocket connection, add the external server as a CSP trusted site. Each CSP trusted site can apply to Experience Cloud sites, Lightning Experience pages, custom Visualforce pages, or all three.
Considerations When Packaging
When you include the CspTrustedSite component in a package, the permissions for the third-party APIs and Websocket connections apply to sites and pages across the org. Because this component modifies security, we don’t recommend including CspTrustedSite components in packages. Instead, we recommend that you instruct customers to use the CSP Trusted Sites Setup page or the CSPTrustedSites metadata API type to add the URLs to their allowlist as part of activating your package. If you choose to include CspTrustedSite components in your package, disclose this change prominently in your package documentation to ensure that your customers are aware of the security modification.
You can’t load JavaScript resources from a third-party site, even if it’s a CSP Trusted Site. To use a JavaScript library from a third-party site, add it to a static resource, and then add the static resource to your component. After the library is loaded from the static resource, you can use it as normal.
CSP isn’t enforced by all browsers. For a list of browsers that enforce CSP, see
.
Usage Limits
CspTrustedSite components are available in API version 39.0 and later. Multiple properties and enumeration values are available in later API versions. For details, see CspTrustedSite in the
Metadata API Developer Guide.
.
For Experience Builder sites, if the HTTP header size is greater than 8 KB, the directives are moved from the CSP header to the
<meta> tag. To avoid errors from infrastructure limits, ensure that the HTTP header size doesn’t exceed 3 KB per context.
tag. To avoid errors from infrastructure limits, ensure that the HTTP header size doesn’t exceed 3 KB per context.
Relationship to Other Components: This component can be used only in conjunction with an Aura or Lightning Web Runtime (LWR) page for an Experience Cloud site, a Lightning Page, or a , or a Visualforce page..
Documentation: Salesforce Help: Manage CSP Trusted Sites; Metadata API Developer Guide: CspTrustedSites
Represents a custom application.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in 2GP packages only. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Show in Lightning Experience (Salesforce Classic only), Selected Items (Lightning Experience only), Utility Bar (Lightning Experience only) |
| Both Package Developer and Subscriber Can Edit | All attributes, except App Name and Show in Lightning Experience (Salesforce Classic only), All attributes, except Developer Name, Selected Items, and Utility Bar (Lightning Experience only) |
| Neither Package Developer or Subscriber Can Edit | App Name (Salesforce Classic only), Developer Name (Lightning Experience only) |
Feature Name: Metadata Name: CustomApplication
Documentation: Metadata API Developer Guide: CustomApplication
Represents a custom link defined in a home page component.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in both 1GP and 2GP packages. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
For more details on 2GP component removal, see Remove Metadata Components from Second-Generation Managed Packages.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Behavior, Button or Link URL, Content Source, Description, Display Checkboxes, Label, Link Encoding |
| Both Package Developer and Subscriber Can Edit | Height, Resizeable, Show Address Bar, Show Menu Bar, Show Scrollbars, Show Status Bar, Show Toolbars, Width, Window Position |
| Neither Package Developer or Subscriber Can Edit | Display Type, Name |
Feature Name: Metadata Name: WebLink, CustomPageWebLink
Documentation: Salesforce Help: Custom Buttons and Links
Represents a custom console component (Visualforce page) assigned to a CustomApplication that is marked as a Salesforce console. Custom console components extend the capabilities of Salesforce console apps.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
A package that has a custom console component can only be installed in an org with the Service Cloud license or Sales Console permission enabled.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in 1GP packages only. |
| Component Has IP Protection | No |
To confirm whether this component is available in managed 1GP, managed 2GP, or both package types, see Metadata Coverage Report.
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: CustomApplicationComponent; Component Type in 1GP Package Manager UI: Custom Console Component
Documentation: Metadata API Developer Guide: CustomApplicationComponent; Salesforce Help: Create Console Components in Salesforce Classic
Represents the metadata associated with a field. Use this metadata type to create, update, or delete custom field definitions on standard or custom objects.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in both 1GP and 2GP packages. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
For more details on 2GP component removal, see Remove Metadata Components from Second-Generation Managed Packages.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Auto-Number Display Format, Decimal Places, Description, Default Value, Field Label, Formula, Length, Lookup Filter, Related List Label, Required, Roll-Up Summary Filter Criteria |
| Both Package Developer and Subscriber Can Edit | Chatter Feed Tracking, Help Text, Mask Type, Mask Character, Sharing Setting, Sort Picklist Values, Track Field History |
| Neither Package Developer or Subscriber Can Edit | Child Relationship Name, Data Type, External ID, Field Name, Roll-Up Summary Field, Roll-Up Summary Object, Roll-Up Summary Type, Unique |
- Developers can add required and universally required custom fields to managed packages as long as they have default values.
- Auto-number type fields and required fields can’t be added after the object is included in a Managed - Released package.
- Subscriber orgs can’t install roll-up summary fields that summarize detail fields set to protected.
Represents a custom fields on the custom metadata type.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Represents the CustomFieldDisplay view type assigned to product attribute custom fields.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | Description, Master Label |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: CustomFieldDisplay
License Requirements: A B2B Commerce or D2C Commerce license and access to Commerce objects is required.
Documentation: Salesforce Help: Create Attributes for Product Variations in Commerce Cloud
Represents the section of the Lightning Experience help menu that the admin added to display custom, org-specific help resources for the org. The custom section contains help resources added by the admin.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Feature Name: Metadata Name: CustomHelpMenuSection
Documentation: Metadata API Developer Guide: CustomHelpMenuSection
Represents an index used to increase the speed of queries.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No. It can only be removed if the associated custom field is removed. |
| Component Has IP Protection | No |
Feature Name: Metadata Name: CustomIndex; Component Type in 1GP Package Manager UI: Custom Index
Considerations When Packaging: Subscribers can remove the custom index using Metadata API only.
Documentation: Best Practices for Deployments with Large Data Volumes: Indexes
The CustomLabels metadata type allows you to create custom labels that can be localized for use in different languages, countries, and currencies.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in 2GP packages only. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
For more details on 2GP component removal, see Remove Metadata Components from Second-Generation Managed Packages.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Category, Short Description, Value |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | Name |
Feature Name: Metadata Name: CustomLabels
Considerations When Packaging
If a label is translated, the language must be explicitly included in the package for the translations to be included in the package. Subscribers can override the default translation for a custom label.
This component can be marked as protected. For more details, see
Protected Components in the
in the
First-Generation Managed Packaging Developer Guide.
.
Documentation: Metadata API Developer Guide: CustomLabels
Represents a record of a custom metadata type.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in managed 1GP if protected, and managed 2GP whether protected or not. |
| Component Has IP Protection | Yes |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Feature Name: Metadata Name: CustomObject
This component can be marked as protected. For more details, see Protected Components in the First-Generation Managed Packaging Developer Guide.
Usage Limits
Deprecated custom metadata type records count against the subscriber’s org limit. When removing custom metadata type records from a second-generation managed package, encourage subscribers to delete the deprecated records from their org. If the subscriber org reaches their org limit for custom metadata type records, package upgrades that include new custom metadata type records fail. For details see
Custom Metadata and Allocations and Usage Calculations in
in
Salesforce Help.
.
Documentation: Salesforce Help: Package Custom Metadata Types and Records
Represents a record of a custom metadata type.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | Yes |
Second-generation managed packages (2GP) include the fields and records for custom metadata types that you add. You can’t add fields directly to an existing package after the package version is promoted. If you create multiple packages that share a namespace, then layouts and records can be in separate packages. Custom fields on the custom metadata type must be in the same package.
You can add fields to a custom metadata type by publishing an extension to the existing package, creating an entity relationship field, and mapping the field to the custom metadata type in your extension. See Add Custom Metadata Type Fields to Existing Packages.
This component can be marked as protected. For more details, see Protected Components in the First-Generation Managed Packaging Developer Guide.
Represents the metadata associated with a custom notification type.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Desktop, Mobile |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: CustomNotificationType; Component Type in 1GP Package Manager UI: Custom Notification Type
License Requirements: Database.com editions don’t have permission to access this component.
Usage Limits
You can package up to 500 custom notification types, but keep in mind that subscriber orgs are limited to a total of 500 custom notification types. The subscriber org limit is shared across namespaces.
A subscriber org can execute up to 10,000 notification actions per hour.
Documentation: Salesforce Help: Create and Send Custom Desktop or Mobile Notifications; Salesforce Help: Considerations for Processes that Send Custom Notifications
Represents a custom object that stores data unique to an org or an external object that maps to data stored outside an org.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in both 1GP and 2GP packages. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
For more details on 2GP component removal, see Remove Metadata Components from Second-Generation Managed Packages.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Description, Label, Plural Label, Record Name, Record Name Display Format, Starts with a Vowel Sound |
| Both Package Developer and Subscriber Can Edit | Allow Activities, Allow Reports, Available for Customer Portal, Context-Sensitive Help Setting, Default Sharing Model, Development Status, Enable Divisions, Enhanced Lookup, Grant Access Using Hierarchy, Search Layouts, Track Field History |
| Neither Package Developer or Subscriber Can Edit | Object Name, Record Name Data Type |
Feature Name: Metadata Name: CustomObject; Component Type in 1GP Package Manager UI: Custom Object
Considerations When Packaging
If a developer enables the Allow Reports or Allow Activities attributes on a packaged custom object, the subscriber’s org also has these features enabled during a package upgrade. After it’s enabled in a Managed - Released package, the developer and the subscriber can’t disable these attributes.
Standard button and link overrides are also packageable.
In your extension package, if you want to access history information for custom objects contained in the base package, work with the base package owner to:
- Enable history tracking in the release org of the base package.
- Create a new version of the base package.
- Install the new version of the base package in the release org of the extension package to access the history tracking info.
As a best practice, don’t enable history tracking for custom objects contained in the base package directly in the extension package’s release org. Doing so can result in an error when you install the package and when you create patch orgs for the extension package.
This component can be marked as protected. For more details, see
This component can be marked as protected. For more details, see
and
Hide Custom Objects and Custom Permissions in Your Subscribers’ Orgs in the
in the
First-Generation Managed Packaging Developer Guide.
.
Documentation: Metadata API Developer Guide: CustomObject
This metadata type allows you to translate custom objects for a variety of languages.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All attributes except Description of WorkflowTask, Help of CustomField, PicklistValueTranslation, and MasterLabel of LayoutSection. |
| Both Package Developer and Subscriber Can Edit | Description of WorkflowTask, Help of CustomField, PicklistValueTranslation, MasterLabel of LayoutSection |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: CustomObjectTranslation
Relationship to Other Components
When you create a first-generation managed package and add the
Translation component, the Custom Object Translation component is automatically added to your package.
component, the Custom Object Translation component is automatically added to your package.
When you create a second-generation managed package, you must add Custom Object Translation to your package, even if you’ve already added the Translation component.
Documentation: Metadata API Developer Guide: CustomObjectTranslation
Represents a permission that grants access to a custom feature.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in 2GP packages only. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
For more details on 2GP component removal, see Remove Metadata Components from Second-Generation Managed Packages.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Connected App, Description, Label, Name |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: CustomPermission; Component Type in 1GP Package Manager UI: Custom Permission
Considerations When Packaging
If you deploy a change set with a custom permission that includes a connected app, the connected app must already be installed in the destination org.
This component can be marked as protected. For more details, see
and
Hide Custom Objects and Custom Permissions in Your Subscribers’ Orgs in the
in the
First-Generation Managed Packaging Developer Guide.
.
Documentation: Metadata API Developer Guide: CustomPermission
Represents a custom tab. Custom tabs let you display custom object data or other web content in Salesforce.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in both 1GP and 2GP packages. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
For more details on 2GP component removal, see Remove Metadata Components from Second-Generation Managed Packages.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Description, Encoding, Has Sidebar, Height, Label, S-control, Splash Page Custom Link, Type, URL, Width |
| Both Package Developer and Subscriber Can Edit | Tab Style |
| Neither Package Developer or Subscriber Can Edit | Tab Name |
Feature Name: Metadata Name: CustomTab
Considerations When Packaging
- The tab style for a custom tab must be unique within your app. However, it doesn’t have to be unique within the org where it’s installed. A custom tab style doesn’t conflict with an existing custom tab in the installer’s environment.
- To provide custom tab names in different languages, from Setup, in the Quick Find box, enter
Rename Tabs and Labels, then select Rename Tabs and Labels.
Documentation: Metadata API Developer Guide: CustomTab
Represents a dashboard. Dashboards are visual representations of data that allow you to see key metrics and performance at a glance.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes. Supported in both 1GP and 2GP packages. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
For more details on 2GP component removal, see Remove Metadata Components from Second-Generation Managed Packages.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | All attributes except Dashboard Unique Name |
| Neither Package Developer or Subscriber Can Edit | Dashboard Unique Name |
Feature Name: Metadata Name: Dashboard; Type in 1GP Package Manager UI: Dashboard
Considerations When Packaging
Developers of managed packages must consider the implications of introducing dashboard components that reference reports released in a previous version of the package. If the subscriber deleted the report or moved the report to a personal folder, the dashboard component referencing the report is dropped during the installation. Also, if the subscriber has modified the report, the report results can impact what displays in the dashboard component. As a best practice, release a dashboard and the related reports in the same version.
Documentation: Metadata API Developer Guide: Dashboard
Represents the object template for data calculations and insights of Data Cloud objects in DataCalcInsightTemplate. These objects are added inside the data kit.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes. Supported in 1GP packages only. |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in 1GP packages only. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: DataCalcInsightTemplate; Component Type in 1GP Package Manager UI: Calculated Insight Template
Use Case: DataCalcInsightTemplate represents the data calculations and insights for objects of a Data Cloud schema field the user includes in a data kit.
Considerations When Packaging
A Data Cloud feature is always packaged via a data kit. A calculated insight template is added to a package when you add a data calculation and insight into a data kit, and package that data kit. You can’t directly add this component to a package.
License Requirements
For more information, see
Data Cloud Standard Permission Sets in Salesforce Help.
in Salesforce Help.
Post Install Steps: After you install a package that contains a data kit, you must manually deploy the features from the installed data kit.
Documentation: Metadata API Developer Guide: Calculated Insight Template; Data Cloud Developer Guide: Packages and Data Kits; Salesforce Help: Packaging in Data Cloud
Represents a clean room provider configuration that defines the clean room collaboration details, including templates and the platform used for secure data collaboration in Data 360.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer nor Subscriber Can Edit | None |
Feature Name: Metadata Name: DataCleanRoomProvider; Component Type in 2GP Package Manager UI: Data Kit Package Definition
Use Case
Clean room providers (Partners and ISVs) include DataCleanRoomProvider in a DataKit which can be added to a managed package to offer clean room collaboration templates to consumers via AgentExchange. Consumers install the package to initiate a collaboration with the provider using pre-defined use case templates.
Considerations When Packaging
- Providers need a Data Cloud Developer edition org to create and publish a clean room package.
- The package name must be unique. The UI may not display a clear error for duplicate package names. If you encounter an issue, check your browser’s Network tab for the specific conflict error.
- The provider logo URL must be a publicly accessible URL in an appropriate image format (such as .png). If the URL is not accessible externally, the UI falls back to a standard icon on the Collaboration Summary screen for consumers.
- Data 360 clean rooms don’t support cross-geo collaboration (for example, AMER to APAC or EMEA is not supported). Cross-region collaboration within the same geo is supported.
- This feature is not available in Government Cloud.
License Requirements
Clean room providers need a Data Cloud license and a Developer edition to create the package. Clean room consumers require a Data Cloud license to install and deploy the package.
Post Install Steps
After installing a package that contains DataCleanRoomProvider, the consumer must manually deploy the data kit components in Data Cloud Setup. See
Deploy a Clean Room from an AgentExchange Package.
.
Relationship to Other Components
To include DataCleanRoomProvider in a managed package, you must add the component to a data kit (DataPackageKitDefinition). Then, add the DataPackageKitDefinition to the managed package. DataCleanRoomProvider requires Data Cloud to Data Cloud (DC to DC) sharing. Providers and consumers using Data 360 must have DC to DC sharing configured.
Documentation: Salesforce Help: Clean Rooms; Salesforce Help: How a Data 360 Clean Room Works; Salesforce Help: Create a Clean Room Package; Salesforce Help: Publish a Clean Room Package to AgentExchange; Salesforce Help: Deploy a Clean Room from an AgentExchange Package
Represents the white-labeled metadata configuration for an external connector in Data 360.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | Yes |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Connector JAR/implementation (InteArtifactResource blob), groupId, connector operations and schema |
| Both Package Developer and Subscriber Can Edit | displayName, description, iconName (via Static Resource), connection credentials/named credentials (subscriber supplies auth; these are excluded from the package) |
| Neither Package Developer or Subscriber Can Edit | developerName (once promoted), namespace-prefixed identifiers |
Feature Name: Metadata Name: IntegArtifactDef; Component Type in 1GP Package Manager UI: MktDataConnection is the Connector parent type
Use Case
ISV partners can build, package, and distribute custom Data 360 connectors, which extend existing native Data 360 Connector Framework (DCF) connectors via AgentExchange. Partners configure the connector metadata, icon, and localization, then package it as a data kit in a 2GP or 1GP managed package. Customers see the connector in the Data 360 new stream page with a “partner built” indicator.
Considerations When Packaging
- No automatic spidering in 2GP; ISVs must manually include all related components.
- One version per connector name per package. Minor or patch versions are upgrades in-place.
- Major version changes require a new connector name (e.g., AsanaV2).
- Connection credentials are excluded (subscriber must supply post-install).
- PACKAGING_DISABLED capability exists. isGlobal=true must be set.
License Requirements: Data 360 must be provisioned in the subscriber org.
Usage Limits: The number of connections per connector type can be up to 200.
Post Install Steps
Connection will be INACTIVE post-install. To activate, the subscriber admin must supply the credentials or authenticate, and then manually activate the connection.
Relationship to Other Components
Not a requirement but DataConnector should be used with data stream and activation components. A connector package is typically bundled inside a data kit. If packaging with a flow or data stream, all dependent metadata (for example, the connection or Named Credentials) must be explicitly included.
Documentation: Developer Guide: Data 360 Connectors and Integrations
Represents the connection information specific to Ingestion API.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | DeveloperName |
Feature Name: Metadata Name: DataConnectorIngestApi; Component Type in 1GP Package Manager UI: Adding DataStreamDefinition brings in DataConnectorIngestApi for Ingestion API DataStreams.
Use Case: This component is part of the Ingestion API Data stream metadata that is packaged and installed in subscriber.
License Requirements: You need Customer 360 Audiences Corporate (cdpPsl) licenses on both package developer org and subscriber org.
Post Install Steps: User has to create DataStream via ui-api or using the Data Cloud App.
Documentation: Salesforce Help: Ingestion API
Represents the connection information specific to Amazon S3.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | Delimiter, FileNameWildCard, ImportFromDirectory, S3AccessKey, S3BucketName, S3SecretKey |
| Neither Package Developer or Subscriber Can Edit | DeveloperName |
Feature Name: Metadata Name: DataConnectorS3
Use Case: This includes the bucket details for the S3 connector in Data Cloud.
Considerations When Packaging
To package this component, first add it to a data kit. For more information about data kits, see
Data Kits in
in
Salesforce Help.
.
Credentials are encrypted and need “IsDevInternal” permission for the encryption service.
License Requirements: You need Customer 360 Audiences Corporate (cdpPsl) licenses on both package developer org and subscriber org.
Post Install Steps: User has to create DataStream via ui-api or using the Data Cloud App.
Documentation: Salesforce Help:Data Connector S3
Represent the object dependencies and relationships between different objects in Data Kit Object Dependency. These objects are added inside the data kit.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes. Supported in 1GP packages only. |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in 1GP packages only. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: DataKitObjectDependency; Component Type in 1GP Package Manager UI: Data Kit Object Dependency
Use Case: DataKitObjectDependency represents the relationship of objects of a Data Cloud schema field the user includes in a data kit.
Considerations When Packaging
A Data Cloud feature is always packaged via a data kit. You add the external data transport field template to a data kit and then add that data kit to a package. You can’t directly add this component to a package.
License Requirements
For more information, see
Data Cloud Standard Permission Sets in Salesforce Help.
in Salesforce Help.
Post Install Steps: After you install a package that contains a data kit, you must manually deploy the features from the installed data kit.
Documentation: Metadata API Developer Guide: Data Kit Object Dependency; Data Cloud Developer Guide: Packages and Data Kits; Salesforce Help: Packaging in Data Cloud
Represents the object in Data Kit Object Template. This object template is added inside the data kit.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes. Supported in 1GP packages only. |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in 1GP packages only. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: DataKitObjectTemplate; Component Type in 1GP Package Manager UI: Data Kit Object Dependency
Use Case: DataKitObjectTemplate represents the objects the user includes in a data kit.
Considerations When Packaging
A Data Cloud feature is always packaged via a data kit. You add the external data transport field template to a data kit, and then add that data kit to a package. You can’t directly add this component to a package.
License Requirements
For more information, see
Data Cloud Standard Permission Sets in Salesforce Help.
in Salesforce Help.
Post Install Steps: After you install a package that contains a data kit, you must manually deploy the features from the installed data kit.
Documentation: Metadata API Developer Guide: Data Kit Object Template; Data Cloud Developer Guide: Packages and Data Kits; Salesforce Help: Packaging in Data Cloud
Represents the output objects of the components the user includes in a data kit.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes. Supported in 1GP packages only. |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in 1GP packages only. |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: DataObjectBuildOrgTemplate; Component Type in 1GP Package Manager UI: DataObjectBuildOrgTemplate
Use Case
Supports extension packages that reference the output of any object.
Considerations When Packaging
A Data Cloud feature is always packaged via a data kit. You add the data object build org template to a data kit, and then add that data kit to a package. You can’t directly add this component to a package.
License Requirements
For more information, see Data Cloud Standard Permission Sets in Salesforce Help.
Post Install Steps
After you install a package that contains a data kit, you must manually deploy the features from the installed data kit.
Documentation: Data Cloud Developer Guide: Packages and Data Kits; Salesforce Help: Packaging in Data Cloud
Represents the top-level Data Kit container definition. Content objects can be added after the Data Kit is defined.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes. Supported in 1GP packages only. |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in 1GP packages only. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | description, developerName, isDeployed, isEnabled, masterLabel, versionNumber |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: DataPackageKitDefinition; Component Type in 1GP Package Manager UI: Data Package Kit Definition
Use Case
Represents the top-level data kit container definition. Content objects can be added after the data kit is defined.
License Requirements
For more information, see
Data Cloud Standard Permission Sets in Salesforce Help.
in Salesforce Help.
Post Install Steps: After you install a package that contains a data kit, you must manually deploy features from the installed data kit.
Documentation: Metadata API Developer Guide: DataPackageKitDefinition; Data Cloud Developer Guide: Packages and Data Kits; Salesforce Help: Packaging in Data Cloud
Represents the object in Data Kit Content Object. These objects are added inside the data kit.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes (supported only in 1GP packages) |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes (supported only in 1GP packages) |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | parentDataPackageKitDefinitionName, referenceObjectName, referenceObjectType |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: DataPackageKitObject; Component Type in 1GP Package Manager UI: Data Package Kit Object
Use Case: Represents an object in a data kit.
License Requirements
For more information, see
Data Cloud Standard Permission Sets in Salesforce Help.
in Salesforce Help.
Post Install Steps: After you install a package that contains a data kit, you must manually deploy features from the installed data kit.
Documentation: Metadata API Developer Guide: DataPackageKitObject; Data Cloud Developer Guide: Packages and Data Kits; Salesforce Help: Packaging in Data Cloud
Used to represent the system where the data was sourced.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | DataSourceStatus, ExternalRecordIdentifier, LastDataChangeStatusDateTime, LastDataChangeStatusErrorCode |
| Neither Package Developer or Subscriber Can Edit | DeveloperName |
Feature Name: Metadata Name: DataSource
Use Case: DataSource gives the lineage information of the datastream.
License Requirements: You need Customer 360 Audiences Corporate (cdpPsl) licenses on both package developer org and subscriber org.
Post Install Steps: Create DataStream using ui-api or the Data Cloud App.
Relationship to Other Components
This isn’t a top-level entity. AddDataStreamDefinition or DataKitDefinition to pick up DataSource.
Documentation: Salesforce Help: Connection Tasks in Data Cloud
Represents the bundle of streams that a user adds to a data kit.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes (supported only in 1GP packages) |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes (supported only in 1GP packages) |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | dataPlatform, isMultiDeploymentSupported, masterLabel |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: DataSourceBundleDefinition; Component Type in 1GP Package Manager UI: Data Source Bundle Definition
Use Case: Represents the data stream data sources that a user adds to a data kit.
Considerations When Packaging
Any Data Cloud feature is always packaged via a data kit. A data source bundle definition is added to a package when you add a data stream to a data kit and package that data kit. You can’t directly add this component to a package.
License Requirements
For more information, see
Data Cloud Standard Permission Sets in Salesforce Help.
in Salesforce Help.
Post Install Steps: After you install a package that contains a data kit, you must manually deploy features from the installed data kit.
Documentation: Metadata API Developer Guide: DataSourceBundleDefinition; Data Cloud Developer Guide: Packages and Data Kits; Salesforce Help: Packaging in Data Cloud
Represents the object from where the data was sourced.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | DataObjectType, DataSource, ExternalRecordId |
Feature Name: Metadata Name: DataSourceObject
Use Case: DataSourceObject contains specific information about the source of the data like filename, table names.
Considerations When Packaging: DataSourceObject pulls in child DataSourceField entity records when packaged with DataKitDefinition.
License Requirements: Customer 360 Audiences Corporate (cdpPsl) licenses must be available on both package developer org and subscriber org.
Post Install Steps: Create a DataStream via ui-api or using the Data Cloud App.
Relationship to Other Components
This isn’t a top-level entity. Add DataStreamDefinition or DataKitDefinition to pick up DataSourceObject.
Documentation: Salesforce Help: Connection Tasks in Data Cloud
Represents the entity that’s used to store the design-time bundle-level mappings for the data source fields and data model fields.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes (supported only in 1GP packages) |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes (supported only in 1GP packages) |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | masterLabel, sourceField, targetField, versionNumber |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: DataSrcDataModelFieldMap; Component Type in 1GP Package Manager UI: Data Source Data Model Field Mapping
Use Case: Represents the entity that contains design-time bundle-level mappings for the data source fields and data model fields.
Considerations When Packaging
Any Data Cloud feature is always packaged via a data kit. Data model field mappings are added to a package when you add a data stream and any associated mappings to a data kit and package that data kit. You can’t directly add this component to a package.
License Requirements
For more information, see
Data Cloud Standard Permission Sets in Salesforce Help.
in Salesforce Help.
Post Install Steps: After you install a package that contains a data kit, you must manually deploy features from the installed data kit.
Documentation: Metadata API Developer Guide: DataSrcDataModelFieldMap; Data Cloud Developer Guide: Packages and Data Kits; Salesforce Help: Packaging in Data Cloud
Contains Data Ingestion information such as Connection, API and File retrieval settings.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | AreHeadersIncludedInTheFiles, BulkIngest, Description, IsLimitedToNewFiles, IsMissingFileFailure |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | DataConnectionGCS, DataConnectorType, DataExtractField, DataExtractMethod, DataPlatformDataSetBundle, FileNameWildcard, MktDataLakeObject, MktDataTranObject |
Feature Name: Metadata Name: DataStreamDefinition; Component Type in 1GP Package Manager UI: DataStreamDefinition
Use Case
DataStreamDefinition is the starting point for packaging a Datastream and its mappings.
Considerations When Packaging
Data Cloud admin user can install or upgrade the package. Admin User or Data Aware Specialist User can create Datastreams out of the installed package.
License Requirements
Customer 360 Audiences Corporate (cdpPsl) licenses must be available on both package developer org and subscriber org. CDP Admin User can install,upgrade, or uninstall the package.
Post Install Steps
Create the DataStream via ui-api or using the Data Cloud App.
Documentation: Metadata API Developer Guide: DataStreamDefinition
Represents the data stream that a user adds to a data kit.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes (supported only in 1GP packages) |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes (supported only in 1GP packages) |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | dataImportRefreshFrequency, dataSourceBundleDefinition, dataSourceObject, objectCategory, refreshFrequency, refreshHours, refreshMode |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: DataStreamTemplate; Component Type in 1GP Package Manager UI: Data Stream Template
Use Case: Represents the data stream that a user adds to a data kit.
Considerations When Packaging
Any Data Cloud feature is always packaged via a data kit. A data stream template is added to a package when you add a data stream to a data kit and package that data kit. You can’t directly add this component to a package.
License Requirements
For more information, see
Data Cloud Standard Permission Sets in Salesforce Help.
in Salesforce Help.
Post Install Steps: After you install a package that contains a data kit, you must manually deploy features from the installed data kit.
Documentation: Metadata API Developer Guide: DataStreamTemplate; Data Cloud Developer Guide: Packages and Data Kits; Salesforce Help: Packaging in Data Cloud
Represents the DataWeaveScriptResource class that is generated for all DataWeave scripts. DataWeave scripts can be directly invoked from Apex.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes (if not set to global access). |
| Component Has IP Protection | Yes |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | API Version, DataWeave Script |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: DataWeaveResource; Component Type in 1GP Package Manager UI: DataWeaveResource
Use Case: Include MuleSoft DataWeave scripts to read and parse data from one format, transform it, and export it in a different format directly from Apex.
Considerations When Packaging: There’s a maximum of 50 DataWeave scripts per org.
Documentation: Apex Developer Guide: DataWeave in Apex..
Represents a definition of a decision matrix.
2GP support for Business Rules Engine Components is a pilot or beta service that is subject to the Beta Services Terms at Agreements - Salesforce.com or a written Unified Pilot Agreement if executed by Customer, and applicable terms in the Product Terms Directory. Use of this pilot or beta service is at the Customer’s sole discretion.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes. Only if the component is inactive. |
| Subscriber Can Delete Component From Org | Yes. Only if the component is inactive. |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Type, GroupKey, SubGroupKey |
| Both Package Developer and Subscriber Can Edit | versions |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: DecisionMatrixDefinition; Component Type in 1GP Package Manager UI: Decision Matrix Definition
Use Case
Decision matrices are lookup tables that match input values to a matrix row and return the row’s output values. Expression sets and various digital procedures can call decision matrices. Decision matrices accept JSON input from, and return JSON output to the digital processes that call the matrices. Decision matrices are useful for implementing complex rules in a systematic, readable manner.
Documentation: Industries Common Resources Developer Guide: Decision Matrix Definition; Salesforce Help: Decision Matrices; Salesforce Help: Decision Matrix Migration Considerations
Represents a definition of a decision matrix version.
2GP support for Business Rules Engine Components is a pilot or beta service that is subject to the Beta Services Terms at Agreements - Salesforce.com or a written Unified Pilot Agreement if executed by Customer, and applicable terms in the Product Terms Directory. Use of this pilot or beta service is at the Customer’s sole discretion.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes. Only if the component is inactive. |
| Subscriber Can Delete Component From Org | Yes. Only if the component is inactive. |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | columns |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: DecisionMatrixDefinitionVersion; Component Type in 1GP Package Manager UI: Decision Matrix Definition Version
Post Install Steps
After migrating a decision matrix version, upload the row data to the active version manually. The row data isn’t migrated as part of the migration.
Relationship to Other Components: A DecisionMatrixDefinitionVersion is a child of DecisionMatrixDefinition, and can’t exist without the parent DecisionMatrixDefinition.
Documentation: Industries Common Resources Developer Guide: Decision Matrix Definition; Salesforce Help: Decision Matrices; Salesforce Help: Decision Matrix Migration Considerations
Represents the information about a decision table.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | Yes, except templates |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Decision Table |
| Both Package Developer and Subscriber Can Edit | Label, Description, Status |
| Neither Package Developer or Subscriber Can Edit | API Name, URL |
Feature Name: Metadata Name: DecisionTable; Component Type in 1GP Package Manager UI: Decision Table
Use Case: Decision tables read business rules and decide the outcome for records in your Salesforce org or for the values that you specify.
License Requirements: Either Loyalty Management or Rebate Management
Documentation: Salesforce Help: Decision Tables
Represents the information about a dataset link associated with a decision table. In a dataset link, select an object for whose records, the decision table must provide an outcome.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | Yes, except templates |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Dataset Link record |
| Both Package Developer and Subscriber Can Edit | Label, Description, Status |
| Neither Package Developer or Subscriber Can Edit | API Name, URL |
Feature Name: Metadata Name: DecisionTableDatasetLink
Use Case: In a dataset link, you can map the decision table’s input fields with fields of different standard or custom objects.
License Requirements: Either Loyalty Management or Rebate Management
Documentation: Salesforce Help: Add Dataset Links to a Decision Table
Represents a text-based code structure of your organization’s workspaces, organized by workspace type, and each workspace’s content items.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Content Title, Content Body, Content Folder |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: DigitalExperience
Use Case: To move Digital Experience metadata Content from one org to another
Post Install Steps: After the package is installed, publish the site to make it available to customers.
Documentation: Salesforce Help: CMS Content
Represents a text-based code structure of your organization’s workspaces, organized by workspace type, and each workspace’s content items.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Labels, Description, Content |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: DigitalExperienceBundle
Use Case
Share or distribute the content of an enhanced workspace in Salesforce CMS, including images, documents, and news articles. In Marketing Cloud, you can package the content of general and marketing workspaces, including landing pages, forms, and emails (and their associated images and branding).
Considerations When Packaging
Enhanced LWR sites are unsupported.
In marketing workspaces, the default data graph, personalization recommenders, personalization points, and decisions aren’t included in the bundle. If the workspace includes emails with personalized content that’s based on these objects, then:
- Any merge field or repeater that uses the default data graph or a personalization recommender from the source org is broken in the target org.
- Any dynamic content variations of email components are removed and only the default variations appear in the email.
Post Install Steps: After the package is installed, publish the workspace content to make it available to customers.
Documentation: Salesforce Help: Salesforce CMS; Salesforce Help: Marketing Cloud; Metadata API Developer Guide: DigitalExperienceBundle
Represents information that defines a disclosure type, such as details of the publisher or vendor who created or implemented the report.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All attributes |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: DisclosureDefinition; Component Type in 1GP Package Manager UI: Disclosure Definition
Use Case: You can use this component to define a disclosure type, such as details of the publisher or vendor who created or implemented the report.
License Requirements
- Net Zero Cloud Growth license
- Disclosure and Compliance Hub permission set license
- Disclosure and Compliance Hub User permission set
Post Install Steps
Enable these org settings:
- Manage Disclosure and Compliance Hub
Documentation
- Salesforce Help: Disclosure and Compliance Hub
- Salesforce Help: Generate Disclosures Using Disclosure and Compliance Hub
- Metadata API Developer Guide:DisclosureDefinition
Represents the version information about the disclosure definition.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | DisclosureDefinition, Description, IsActive, VersionNumber, OmniScriptCnfgApiName, IsCurrentVersion, DisclosureDefCurrVer |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: DisclosureDefinitionVersion; Component Type in 1GP Package Manager UI: Disclosure Definition Version
Use Case: You can use this component to define the version information about the disclosure definition.
License Requirements
- Net Zero Cloud Growth license
- Disclosure and Compliance Hub permission set license
- Disclosure and Compliance Hub User permission set
Post Install Steps
Enable these org settings:
- Manage Disclosure and Compliance Hub
Documentation
- Salesforce Help: Disclosure and Compliance Hub
- Salesforce Help: Generate Disclosures Using Disclosure and Compliance Hub
- Metadata API Developer Guide:DisclosureDefinitionVersion
Represents the types of disclosures that are done by an individual or an organization and the associated metadata.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All attributes |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: DisclosureType; Component Type in 1GP Package Manager UI: Disclosure Type
Use Case: You can use this component to create types of disclosures that are done by an individual or an organization.
License Requirements
- Net Zero Cloud Growth license
- Disclosure and Compliance Hub permission set license
- Disclosure and Compliance Hub User permission set
Post Install Steps
Enable these org settings:
- Manage Disclosure and Compliance Hub
Documentation
- Salesforce Help: Disclosure and Compliance Hub
- Salesforce Help: Generate Disclosures Using Disclosure and Compliance Hub
- Metadata API Developer Guide:DisclosureType
Represents the metadata associated with a model used in Einstein Discovery.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
For more details on 2GP component removal, see Remove Metadata Components from Second-Generation Managed Packages.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | All attributes except Discovery AI Model Unique Name |
| Neither Package Developer or Subscriber Can Edit | Discovery AI Model Unique Name |
Feature Name: Metadata Name: DiscoveryAIModel
Documentation: Metadata API Developer Guide: DiscoveryAIModel
Represents the metadata associated with an Einstein Discovery prediction definition.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
For more details on 2GP component removal, see Remove Metadata Components from Second-Generation Managed Packages.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | All attributes except Discovery Goal Unique Name |
| Neither Package Developer or Subscriber Can Edit | Discovery Goal Unique Name |
Feature Name: Metadata Name: DiscoveryGoal
Documentation: Metadata API Developer Guide: DiscoveryGoal
Represents the metadata associated with a story used in Einstein Discovery.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
For more details on 2GP component removal, see Remove Metadata Components from Second-Generation Managed Packages.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | All attributes except Discovery Story Unique Name |
| Neither Package Developer or Subscriber Can Edit | Discovery Story Unique Name |
Feature Name: Metadata Name: DiscoveryStory
Documentation: Metadata API Developer Guide: DiscoveryStory
Represents a Document. All documents must be in a document folder, such as sampleFolder/TestDocument.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes. Supported in both 1GP and 2GP packages. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
For more details on 2GP component removal, see Remove Metadata Components from Second-Generation Managed Packages.
Feature Name: Metadata Name: Document; Component Type in 1GP Package Manager UI: Document
Documentation: Metadata API Developer Guide: Document
Represents an org’s settings for automatic document generation from templates.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Both Package Developer and Subscriber Can Edit | Document Template Library Name, Generation Mechanism, Guest Access Named Credential, Label, Preview Type |
| Neither Package Developer or Subscriber Can Edit | API Name |
Feature Name: Metadata Name: DocumentGenerationSetting
Use Case: Allows admin users to modify document generation properties.
License Requirements: DocGen Designer (Permission Set License)
Documentation: Metadata API Developer Guide: DocumentGenerationSetting
Represents an Analytics custom map chart. Custom maps are user-defined maps that are uploaded to Analytics and are used just as standard maps are. Custom maps are accessed in Analytics from the list of maps available with the map chart type.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | All attributes except Eclair GeoData Unique Name |
| Neither Package Developer or Subscriber Can Edit | Eclair GeoData Unique Name |
Feature Name: Metadata Name: EclairGeoData
Documentation: Metadata API Developer Guide: EclairGeoData
Use email templates to increase productivity and ensure consistent messaging. Email templates with merge fields let you quickly send emails that include field data from Salesforce records.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes. Supported in 1GP packages only. |
| Component Has IP Protection | No |
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | All attributes except Email Template Name |
| Neither Package Developer or Subscriber Can Edit | Email Template Name |
Represents a template for an email, mass email, list email, or Sales Engagement email.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in 1GP packages only. However, 1GP packages created in Email Template Builder can’t be removed. |
| Component Has IP Protection | No |
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | All attributes |
These packaging considerations apply to Lightning email templates, including email templates created in Email Template Builder.
- For email templates created in Email Template Builder before the Spring ’21 release, attachments aren’t automatically added to the package. Open and resave these templates to turn the attachments into content assets, which are then automatically added to the package.
-
Enhanced email template folders have these behaviors:
- If a package includes an enhanced email template folder, the target organization must have enhanced folders enabled for the deploy to succeed.
- If an email template is in a subfolder, adding the root folder to a package doesn’t automatically add the email template to the package. If the email template is in the root folder, it’s automatically added to the package.
- You can’t package an email template in the default public and private folders.
-
For merge fields based on custom fields that are used in the Recipients prefix (for leads and contacts), we add references to those merge fields. If the custom field is renamed, the reference in the template isn’t updated. Edit the custom merge field to use the new field name and update the reference.
An email template created in Email Template Builder can’t be edited after it’s downloaded. To edit the template, clone it.
When upgrading a package that has Email Template Builder email templates, only the associated FlexiPage is updated. After downloading the new version of the template, clone it to see the changes.
Represents a setup node for creating an Embedded Service for Web deployment.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: EmbeddedServiceConfig
Documentation: Metadata API Developer Guide: EmbeddedServiceConfig; Salesforce Help: Embedded Chat
Represents a setup node for creating a channel menu deployment. Channel menus list the ways in which customers can contact your business.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: EmbeddedServiceMenuSettings
Documentation: Metadata API Developer Guide: EmbeddedServiceMenuSettings; Salesforce Help: Channel Menu Setup
Represents an Enablement measure, which specifies the job-related activity that a user performs to complete a milestone or outcome in an Enablement program. A measure identifies a source object and optional related objects, with optional field filters and filter logic, for tracking the activity.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All but Status and DeveloperName |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | DeveloperName |
Feature Name: Metadata Name: EnablementMeasureDefinition
Use Case
Include this component in a package with a program if the program has outcomes or milestones.
Considerations When Packaging: See Considerations for Packaging Enablement Programs and Dependencies..
License Requirements
Enablement add-on license and the Enablement permission set license are required. For Partner Enablement programs in supported Experience Cloud sites, a
supported Partner Relationship Management (PRM) add-on license is also required.
is also required.
Usage Limits: See Enablement Limits..
Relationship to Other Components
An Enablement measure is used within an Enablement program. Package the Enablement Measure Definition component with the Enablement Program Definition component. Or, package the Enablement Measure Definition component separately. Each measure references a source object and optional related objects.
Documentation
- Salesforce Help: Sales Programs and Partner Tracks with Enablement
- Metadata API Developer Guide: EnablementMeasureDefinition
- Sales Programs and Partner Tracks with Enablement Developer Guide: Create a Managed Package for Enablement Programs, Measures, and Content
Represents an Enablement program, which includes exercises and measurable milestones to help users such as sales reps achieve specific outcomes related to your company’s revenue goals.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | All but DeveloperName |
| Neither Package Developer or Subscriber Can Edit | DeveloperName |
Feature Name: Metadata Name: EnablementProgramDefinition
Use Case
Include this component in a package when you want to move a program from one org to another.
Considerations When Packaging: See Considerations for Packaging Enablement Programs and Dependencies..
License Requirements
Enablement add-on license and the Enablement permission set license are required. For Partner Enablement programs in supported Experience Cloud sites, a
supported Partner Relationship Management (PRM) add-on license is also required.
is also required.
Usage Limits: See Enablement Limits..
Relationship to Other Components
An Enablement program can contain other items that are related to other packageable components. Package the Enablement Program Definition component with other appropriate components.
- Exercises that reference Digital Experiences content. Package the Digital Experience component.
- Exercises that reference assessment surveys. Package the Flow component.
- Custom exercise types that reference user-defined content. Package the Learning Item Type and Enablement Program Task Subcategory components.
- Measures that track job-related activity using specific objects. Package the Enablement Measure Definition component.
Documentation
- Salesforce Help: Sales Programs and Partner Tracks with Enablement
- Metadata API Developer Guide: EnablementMeasureDefinition
- Sales Programs and Partner Tracks with Enablement Developer Guide: Create a Managed Package for Enablement Programs, Measures, and Content
Represents a custom exercise type that an Enablement admin adds to an Enablement program in Program Builder. A custom exercise type also requires a corresponding EnblProgramTaskDefinition record for Program Builder and corresponding LearningItem and LearningItemType records for when users take the exercise in the Guidance Center.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All but DeveloperName |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | DeveloperName |
Feature Name: Metadata Name: EnblProgramTaskSubCategory
Use Case
Include this component in a package with a program if the program has a custom exercise type.
Considerations When Packaging: See Considerations for Packaging Enablement Programs and Dependencies..
License Requirements
Enablement add-on license and the Enablement permission set license are required.
Custom exercises aren’t compatible with Partner Enablement programs.
Usage Limits: See Enablement Limits..
Relationship to Other Components
The Enablement Program Task Subcategory component requires a corresponding Learning Item Type component. Both components are used with custom exercise types in Enablement programs. Package both of these components with an Enablement Program Definition component.
Documentation
- Salesforce Help: Sales Programs and Partner Tracks with Enablement
- Metadata API Developer Guide: EnblProgramTaskSubCategory
- Metadata API Developer Guide: LearningItemType
- Object Reference for the Salesforce Platform: EnblProgramTaskDefinition
- Object Reference for the Salesforce Platform: LearningItem
- Sales Programs and Partner Tracks with Enablement Developer Guide: Create a Managed Package for Enablement Programs, Measures, and Content
- Sales Programs and Partner Tracks with Enablement Developer Guide: Implement Custom Exercise Types for Enablement Programs
Represents an entitlement template. Entitlement templates are predefined terms of customer support that you can quickly add to products.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: EntitlementTemplate
Documentation: Metadata API Developer Guide: EntitlementTemplate; Salesforce Help: Set Up an Entitlement Template
Using the Electronic Signature Configuration setup, the system admin must define the required configurations to support the e-signature APIs and UI.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Both Package Developer and Subscriber Can Edit | Config Type, Config Value, Description, Group Type, Vendor |
| Neither Package Developer or Subscriber Can Edit | DeveloperName, MasterLabel |
Feature Name: Metadata Name: ESignatureConfig
Use Case: Allows users to get the electronic signatures on their documents.
License Requirements: DocGen Designer (Permission Set License)
Using the Electronic Signature Envelope Config the system admin can define the default reminders and expiry for the envelopes submitted for eSignature.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Both Package Developer and Subscriber Can Edit | Expiration Enabled, Expiration Period, Expiration Warning Period, First Reminder Period, Reminder Enabled, Reminder Interval Period, Target Object Name, Vendor, Vendor Account Identifier, Vendor Default Notification Enabled |
| Neither Package Developer or Subscriber Can Edit | DeveloperName, MasterLabel |
Feature Name: Metadata Name: ESignatureEnvelopeConfig
Use Case: Allows users to get the electronic signatures and notifications on their documents.
License Requirements: DocGen Designer (Permission Set License)
Documentation: Metadata API Developer Guide: ESignatureEnvelopeConfig
Represents an event relay that you can use to send platform events and change data capture events from Salesforce to Amazon EventBridge.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | Label, RelayOption, State |
| Neither Package Developer or Subscriber Can Edit | DestinationResourceName, EventChannel, UsageType |
Feature Name: Metadata Name: EventRelayConfig; Component Type in 1GP Package Manager UI: Event Relay
Documentation: Metadata API Developer Guide: EventRelayConfig
Define where the metadata for your Decision Explainer business rules are stored in Public Sector Solutions.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | Label, Description, Developer Name, Business Process Type, Application Type, Action Log Schema Type, Application Subtype |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: ExplainabilityActionDefinition
Define and store versions of the explainability actions used by your Decision Explainer business rules in Public Sector Solutions.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | Label, Active, Description, Explainability Action Definition |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: ExplainabilityActionVersion
Represents information about the template that contains the decision explanation message for a specified expression set step type.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | Label, Message, Name, Result Type, Default, Expression Set Step Type |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: ExplainabilityMsgTemplate
Documentation: Industries Common Resources Developer Guide: ExplainabilityMsgTemplate; Salesforce Help: Create Explainability Message Templates
Represents an expression set definition.
2GP support for Business Rules Engine Components is a pilot or beta service that is subject to the Beta Services Terms at Agreements - Salesforce.com or a written Unified Pilot Agreement if executed by Customer, and applicable terms in the Product Terms Directory. Use of this pilot or beta service is at the Customer’s sole discretion.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes. Only if the component doesn’t contain any active versions. |
| Subscriber Can Delete Component From Org | Yes. Only if the component doesn’t contain any active versions. |
| Package Developer Can Remove Component From Package | Yes. Only if the component doesn’t contain any active versions. |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | versions |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: ExpressionSetDefinition; Component Type in 1GP Package Manager UI: ExpressionSet Definition
Relationship to Other Components: To use this component, any expression set version dependencies such as decision matrices, decision tables, object field aliases, and subexpressions must be present in the target org.
Documentation: Industries Common Resources Developer Guide: Expression Set Definition; Salesforce Help: Expression Set Migration Considerations
Represents a definition of an expression set version.
2GP support for Business Rules Engine Components is a pilot or beta service that is subject to the Beta Services Terms at Agreements - Salesforce.com or a written Unified Pilot Agreement if executed by Customer, and applicable terms in the Product Terms Directory. Use of this pilot or beta service is at the Customer’s sole discretion.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes. Only if the component is in an inactive state. |
| Subscriber Can Delete Component From Org | Yes. Only if the component is in an inactive state. |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | variables, steps |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: ExpressionSetDefinitionVersion; Component Type in 1GP Package Manager UI: Expression Set Definition Version
Relationship to Other Components: This component can be used only if the ExpressionSetDefinition to which this ExpressionSetDefinitionVersion component belongs is present in the target org.; To use this component, any expression set version dependencies such as decision matrices, decision tables, object field aliases, and subexpressions must be present in the target org.
Documentation: Industries Common Resources Developer Guide: Expression Set Definition Version; Salesforce Help: Expression Set Migration Considerations
Represents information about the alias of the source object that’s used in an expression set.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | mappings.sourceFieldName, mappings.fieldAlias |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | objectApiName, usageType, dataType |
Feature Name: Metadata Name: ExpressionSetObjectAlias; Component Type: Expression Set Object Alias
Use Case
Expression set object aliases allow you to use object fields as variables in expression sets. Aliases are relevant and user-friendly names that are created for underlying source object fields. Field aliases are grouped under an object alias.
Documentation: Industries Common Resources Developer Guide: ExpressionSetObjectAlias; Salesforce Help: Object Variables in Expression Sets
Represents a token that’s used in an explainability message template. The token can be replaced with an expression set version resource that the template is used in. This object is available in API version 59.0 and later.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | Master Label, Developer Name, Description |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: ExpressionSetMessageToken; Component Type in 1GP Package Manager UI: ExpressionSetMessageToken
Documentation: Industries Common Resources Developer Guide: ExpressionSetMessageToken; Salesforce Help: Create Expression Set Message Tokens
Represents the external auth identity provider that obtains OAuth tokens for callouts that use named credentials.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in 2GP packages only. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
In addition to these properties, the Description, ParameterName, ParameterType, ParameterValue, and SequenceNumber properties have the same editability as the ExternalAuthIdentityProviderParameters they’re included in.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | AuthenticationFlow, AuthenticationProtocol, Description, Label |
| Both Package Developer and Subscriber Can Edit | ExternalAuthIdentityProviderParameter
|
| Neither Package Developer or Subscriber Can Edit | FullName |
Feature Name: Metadata Name: ExternalAuthIdentityProvider; Component Type in 1GP Package Manager UI: External Auth Identity Provider
Considerations When Packaging
Though external auth identity providers are represented by metadata, the standard Metadata API can’t fully expose and render sensitive information like tokens in plain text. This means that sensitive values such as client secrets aren’t included in packages.
Package upgrades delete any additional custom request parameters that subscribers add after installing the package. Alert subscribers that they must recreate custom parameters.
Package developers can only create parameters and delete existing parameters. After package installation, subscribers don’t receive updated parameter values from package upgrades.
Relationship to Other Components
A callout to an external system references a named credential, which in turn links to an external credential. For external credentials that use OAuth 2.0 authentication, external auth identity providers obtain the OAuth tokens necessary for outbound callouts.
Documentation: Salesforce Help: Named Credentials; Named Credentials Developer Guide: Named Credentials Packaging Guide; Metadata API Developer Guide: ExternalAuthIdentityProvider
Represents the header file for an external client application configuration.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All properties |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: ExternalClientApplication
Considerations When Packaging
Unlike most metadata, External Client Apps can’t be created via the Setup menu in a scratch org. ISVs who intend to package External Client Apps in a managed 2GP should instead define the External Client App in their PBO (Partner Business Org) Dev Hub. The External Client App can then be retrieved via Salesforce CLI and deployed into a scratch org, or packaged and installed into a scratch org for testing. See
Configure Packageable External Client Apps for more information.
for more information.
Relationship to Other Components
ExternalClientApplication is the header file for an external client app. This defines the basic configurations of the external client app, including whether the external client app can be packaged or if it is developed for local use only.
ExtlClntAppGlobalOauthSettings includes sensitive information for the External Client Apps OAuth plugin, like OAuth consumer credentials that can’t be packaged or added to source control. ExtlClntAppOauthSettings includes packageable configurations. All settings are determined by the developer and can’t be edited by the admin. Admin-controlled configurations are called policies and are included in ExtlClntAppOauthConfigurablePolicies.
Documentation: Salesforce Help: External Client Apps; Salesforce Help: Configure Packageable External Client Apps
Represents the settings configuration for the external client app’s notifications plugin.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All properties |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: ExtlClntAppNotificationSettings
Considerations When Packaging
Unlike most metadata, External Client Apps can’t be created via the Setup menu in a scratch org. ISVs who intend to package External Client Apps in a managed 2GP should instead define the External Client App in their PBO (Partner Business Org) Dev Hub. The External Client App can then be retrieved via Salesforce CLI and deployed into a scratch org, or packaged and installed into a scratch org for testing. See
Configure Packageable External Client Apps for more information.
for more information.
Relationship to Other Components: ExtlClntAppNotificationSettings contains all of the packageable configurations for the External Client Apps notifications plugin.
Documentation: Salesforce Help: External Client Apps; ExtlClntAppNotificationSettings
Represents the settings configuration for the external client app’s OAuth plugin.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All properties |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: ExtlClntAppOauthSettings
Considerations When Packaging
Unlike most metadata, External Client Apps can’t be created via the Setup menu in a scratch org. ISVs who intend to package External Client Apps in a managed 2GP should instead define the External Client App in their PBO (Partner Business Org) Dev Hub. The External Client App can then be retrieved via Salesforce CLI and deployed into a scratch org, or packaged and installed into a scratch org for testing. See
Configure Packageable External Client Apps for more information.
for more information.
Relationship to Other Components
External Client App plugins like the OAuth plugin include two types of configurations: settings and policies. All settings are determined by the external client app developer and can’t be edited by the admin for the subscriber org. Admin-controlled configurations are called policies.
ExtlClntAppOauthSettings contains all of the packageable configurations for the External Client Apps OAuth plugin. Sensitive information, like OAuth consumer credentials that can’t be packaged or added to source control, are stored in the ExtlClntAppGlobalOauthSettings. Policies are saved in ExtlClntAppOauthConfigurablePolicies, which is not packaged but is generated with default values at runtime.
Documentation: Salesforce Help: External Client Apps
Represents the settings configuration for the external client app’s push notification plugin.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All properties |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: ExtlClntAppPushSettings
Considerations When Packaging
Unlike most metadata, External Client Apps can’t be created via the Setup menu in a scratch org. ISVs who intend to package External Client Apps in a managed 2GP should instead define the External Client App in their PBO (Partner Business Org) Dev Hub. The External Client App can then be retrieved via Salesforce CLI and deployed into a scratch org, or packaged and installed into a scratch org for testing. See Configure Packageable External Client Apps for more information.
To deploy ExtlClntAppPushSettings retrieved from the Dev Hub org, delete androidPushConfig or applePushConfig from the metadata file.
Relationship to Other Components
External Client App plugins like the push notification plugin include two types of configurations: settings and policies. All settings are determined by the external client app developer and can’t be edited by the admin for the subscriber org. Admin-controlled configurations are called policies.
ExtlClntAppPushSettings contains all of the packageable configurations for the External Client Apps push notifcation plugin. Sensitive information, like APNS or Firebase consumer credentials that can’t be packaged or added to source control, are stored in the ExtlClntAppApplePushConfig and ExtlClntAppAndroidPushConfig, respectively. Policies are saved in ExtlClntAppSamlConfigurablePolicies, which is not packaged but is generated with default values at runtime.
Documentation: Salesforce Help: External Client Apps; ExtlClntAppPushSettings
Represents the details of how Salesforce authenticates to the external system.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in 2GP packages only. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
In addition to these properties, the Description, ParameterGroup, ParameterName, ParameterValue, and SequenceNumber properties have the same editability as the ExternalCredentialParameters they’re included in.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Label, AuthenticationProtocol, ExternalCredentialParameters
|
| Both Package Developer and Subscriber Can Edit | Description, ExternalCredentialParameters
|
| Neither Package Developer or Subscriber Can Edit | FullName |
Feature Name: Metadata Name: ExternalCredential
Considerations When Packaging
Though named and external credentials are represented by metadata, the standard Metadata API can’t fully expose the definition of a credential and render sensitive information like tokens in plain text. This means that packaged named credentials don’t include the access tokens or certificates that are needed to perform authenticated callouts. You can create the external credential’s principal or populate its tokens or certificates in the UI or via the Connect API.
In managed 1GP packages, external credentials that use the OAuth 2.0 authentication protocol must reference an authentication provider to capture the details of the authorization endpoint. If you add an external credential that references an authentication provider, the authentication provider is added to the package. See Authentication Providers for information on which elements of an authentication provider are and aren’t packageable.
In managed 2GP packages, if an external credential uses an authentication provider to capture the details of the authorization endpoint, you can’t include the reference to the authentication provider in the package. If the external credential references an authentication provider, you must recreate the authentication provider in the subscriber org and add it to the external credential.
Post Install Steps
After installing an external credential from a managed or unmanaged package, you must:
-
Create the external credential’s principal or populate its tokens or certificates in the UI or via the Connect API.
-
Give permission sets and profiles access to the principals of the external credential. See Enable External Credential Principals.
-
Reauthenticate to the external system.
- For a Named Principal, the admin must go to Setup > Named Credential > External Credential to authenticate.
- For a Per User Principal, each user must go to My Personal Information > External Credential to authenticate.
Relationship to Other Components
ExternalCredential can be added to a package without a NamedCredential, but NamedCredential must be packaged with an ExternalCredential.
The named credential defines a callout endpoint and an HTTP transport protocol, while the external credential represents the details of how Salesforce authenticates to an external system via an authentication protocol. Each named credential must be mapped to at least one external credential.
Documentation: Salesforce Help: Named Credentials; Named Credentials Developer Guide: Named Credentials Packaging Guide; Metadata API Developer Guide: ExternalCredential
Used to represent the object where the data was sourced.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | DataConConfiguration, DataConnectionStatus, DataConnectorType, DataPlatform, ExternalRecordId |
Feature Name: Metadata Name: ExternalDataConnector; Component Type in 1GP Package Manager UI: Adding DataStreamDefinition or DataKitDefinition brings ExternalDataConnector for S3 data streams.
Use Case: This component holds reference to Source Data Connector Metadata.
License Requirements: You need Customer 360 Audiences Corporate (cdpPsl) licenses on both package developer org and subscriber org.
Post Install Steps: User has to create DataStream via ui-api or using the Data Cloud App.
Relationship to Other Components
This isn’t a top-level entity. Add DataStreamDefinition or DataKitDefinition to pick up this entity.
Represents the metadata associated with an external data source. Create external data sources to manage connection details for integration with data and content that are stored outside your Salesforce org.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Type |
| Both Package Developer and Subscriber Can Edit | Auth Provider, Certificate, Custom Configuration, Endpoint, Identity Type, OAuth Scope, Password, Protocol, Username |
| Neither Package Developer or Subscriber Can Edit | Name |
Feature Name: Metadata Name: ExternalDataSource; Component Type in 1GP Package Manager UI: External Data Source
Considerations When Packaging
-
After installing an external data source from a managed or unmanaged package, the subscriber must reauthenticate to the external system.
- For password authentication, the subscriber must reenter the password in the external data source definition.
- For OAuth, the subscriber must update the callback URL in the client configuration for the authentication provider, then reauthenticate by selecting Start Authentication Flow on Save on the external data source.
-
Certificates aren’t packageable. If you package an external data source that specifies a certificate, make sure that the subscriber org has a valid certificate with the same name.
Documentation: Metadata API Developer Guide: ExternalDataSource
Represents the definition of a Data Cloud schema field.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes (supported only in 1GP packages) |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes (supported only in 1GP packages) |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | DataSourceField, ExternalDataTranField, ExternalName, IsDataRequired |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: ExtDataTranFieldTemplate; Component Type in 1GP Package Manager UI: External Data Transport Field Template
Use Case: ExtDataTranFieldTemplate represents the definition of a Data Cloud schema field the user includes in a data kit.
Considerations When Packaging
A Data Cloud feature is always packaged via a data kit. You add the external data transport field template to a data kit and then add that data kit to a package. You can’t directly add this component to a package.
License Requirements
For more information, see
Data Cloud Standard Permission Sets in Salesforce Help.
in Salesforce Help.
Post Install Steps: After you install a package that contains a data kit, you must manually deploy the features from the installed data kit.
Documentation: Metadata API Developer Guide: External Data Transport Object Template; Data Cloud Developer Guide: Packages and Data Kits; Salesforce Help: Packaging in Data Cloud
Use ExternalDataTranField to add a field to the ExternalDataTranObject in your managed packages. ExternalDataTranObject is a Data Cloud schema object.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | Yes |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Length, Precision, Scale, IsDataRequired, ExternalName, PrimaryIndexOrder, DateFormat, CreationType, MktDataTranField, Sequence, IsImplicitFilteringRequired, ExtDataTranFieldTemplate, IsCurrencyIsoCode |
| Both Package Developer and Subscriber Can Edit | CustomFieldDatatypes |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: ExternalDataTranField
Use Case: This component holds reference to ExternalDataTranObject metadata and represents the fields in the ExternalDataTranObject.
License Requirements: Data Cloud must be provisioned.
Post Install Steps: You must to create a data stream via ui-api or by using the Data Cloud App.
Relationship to Other Components
This isn’t a top-level entity. Add DataStreamDefinition to pick up this entity. This entity’s parent is ExternalDataTranObject.
Documentation: Metadata API Developer Guide: ExternalDataTranField
Represents the definition of a Data Cloud schema object.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes (supported only in 1GP packages) |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes (supported only in 1GP packages) |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | DataSourceObject, ExternalDataTranObject, ExternalName |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: ExtDataTranObjectTemplate; Component Type in 1GP Package Manager UI: External Data Transport Object Template
Use Case: ExtDataTranObjectTemplate represents the definition of a Data Cloud schema object the user includes in a data kit.
Considerations When Packaging
A Data Cloud feature is always packaged via a data kit. You add the external data transport object template to a data kit and then add that data kit to a package. You can’t directly add this component to a package.
License Requirements
For more information, see
Data Cloud Standard Permission Sets in Salesforce Help.
in Salesforce Help.
Post Install Steps: After you install a package that contains a data kit, you must manually deploy the features from the installed data kit.
Documentation: Metadata API Developer Guide: External Data Transport Object Template; Data Cloud Developer Guide: Packages and Data Kits; Salesforce Help: Packaging in Data Cloud
To include a Data Cloud schema object in your managed packages, add ExternalDataTranObject.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | Yes |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | AvailabilityStatus, CreationType, MktDataTranObject, ObjectCategory, ExtDataTranObjectTemplate |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: ExternalDataTranObject
Use Case
ExternalDataTranObject contains specific schema event information that is used to describe events for ingestion via Data Cloud Ingestion API, Web, and Mobile connectors. This object is related to many child schema fields, ExternalDataTranField.
License Requirements: Data Cloud must be provisioned.
Post Install Steps: You must create a data stream via ui-api or by using the Data Cloud App.
Relationship to Other Components
This isn’t a top-level entity. Add DataStreamDefinition to pick up this entity. This entity’s parent is ExternalDataConnector.
Documentation: Data Cloud Integration Guide: Mobile and Web SDK Schema Quick Guide for Data Cloud; Data Cloud Integration Guide: Requirements for Ingestion API Schema File; Metadata API Developer Guide: ExternalDataTranObject
Represents configuration, which admin makes in setup to specify the drive, path, and named credential to be used for storing documents on external drives.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | Target Object, Record Type, External Document Storage Identifier, Document Path, Named Credential, Storage Drive Type |
| Neither Package Developer or Subscriber Can Edit | DeveloperName, MasterLabel |
Feature Name: Metadata Name: ExternalDocStorageConfig
Use Case: Represents the configuration that the admin makes in Setup to specify the drive, path, and named credential to be used for storing the documents on external drives.
License Requirements: Microsoft Word 365
Documentation: Salesforce Help: Configure External Document Storage for Contracts
Represents the External Service configuration for an org.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | Yes (If there are no dependencies on the External Services registration and its actions from flows or other features) |
| Package Developer Can Remove Component From Package | Yes. Supported in both 1GP and 2GP packages. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Description, Label, Schema, Schema URL |
| Both Package Developer and Subscriber Can Edit | Named Credential |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: ExternalServiceRegistration; Component Type in 1GP Package Manager UI: ExternalServiceRegistration
Considerations When Packaging
Package developers must add named credential components to the External Services registration package. A subscriber can also create a named credential in Salesforce. However, the subscriber must use the same name as the named credential specified in the External Services registration that references it.
Create named credentials manually or with Apex. Be sure to add the named credential to a package so that subscriber orgs can install it. When a subscriber org installs a named credential, it can use the Apex callouts generated by the External Services registration process.
Usage Limits: Salesforce Help: External Services System Limits
Documentation: Metadata API Developer Guide: ExternalServiceRegistration; Salesforce Help: External Services
Represents a boolean feature parameter in the Feature Management App (FMA). Feature parameters let you drive app behavior and track activation metrics in subscriber orgs that install your package.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No. See note. |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Note: Feature parameters with a data flow direction set as LMO-to-Subscriber, can be updated in the LMO (License Management Org). Feature parameters with a data flow direction set as Subscriber-to-LMO can be updated using Apex in the subscriber org. Neither of these changes require a package upgrade.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Master Label, Value (When Data Flow Direction is set to LMO to Subscriber) |
| Both Package Developer and Subscriber Can Edit | Value (When Data Flow Direction is set to Subscriber to LMO) |
| Neither Package Developer or Subscriber Can Edit | Full Name, Data Type, Data Flow Direction |
Feature Name: Metadata Name: FeatureParameterBoolean; Component Type in 1GP Package Manager UI: Feature Parameter Boolean
Use Case: Use LMO-to-Subscriber feature parameters to enable and disable your app’s features, or use Subscriber-to-LMO feature parameters to track customer preferences and activation metrics.
Considerations When Packaging
Feature parameters are an extension of the License Management App (LMA), and because beta package versions can’t be registered with the LMA, there are aspects of feature parameters that can’t be tested using a beta package version. If you use the default value, you can test LMO-to-Subscriber values in beta package versions. You can’t test any Subscriber-to-LMO feature parameter values in a beta managed package version.
Usage Limits: A package can include up to 200 feature parameters.
Documentation: Metadata API Developer Guide: FeatureParameterBoolean; Create Feature Parameters for Your Second-Generation Managed Package; Create Feature Parameters in Your First-Generation Packaging Org; Apex Reference Guide: FeatureManagement Class
Represents a date feature parameter in the Feature Management App (FMA). Feature parameters let you drive app behavior and track activation metrics in subscriber orgs that install your package.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No. See note. |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Note: Feature parameters with a data flow direction set as LMO-to-Subscriber, can be updated in the LMO (License Management Org). Feature parameters with a data flow direction set as Subscriber-to-LMO can be updated using Apex in the subscriber org. Neither of these changes require a package upgrade.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Master Label, Value (When Data Flow Direction is set to LMO to Subscriber) |
| Both Package Developer and Subscriber Can Edit | Value (When Data Flow Direction is set to Subscriber to LMO) |
| Neither Package Developer or Subscriber Can Edit | Full Name, Data Type, Data Flow Direction |
Feature Name: Metadata Name: FeatureParameterDate; Component Type in 1GP Package Manager UI: Feature Parameter Date
Use Case: Use LMO-to-Subscriber feature parameters to enable and disable your app’s features, or use Subscriber-to-LMO feature parameters to track customer preferences and activation metrics.
Considerations When Packaging
Feature parameters are an extension of the License Management App (LMA), and because beta package versions can’t be registered with the LMA, there are aspects of feature parameters that can’t be tested using a beta package version. If you use the default value, you can test LMO-to-Subscriber values in beta package versions. You can’t test any Subscriber-to-LMO feature parameter values in a beta managed package version.
Usage Limits: A package can include up to 200 feature parameters.
Documentation: Metadata API Developer Guide: FeatureParameterDate; Create Feature Parameters for Your Second-Generation Managed Package; Create Feature Parameters in Your First-Generation Packaging Org; Apex Reference Guide: FeatureManagement Class
Represents an integer feature parameter in the Feature Management App (FMA). Feature parameters let you drive app behavior and track activation metrics in subscriber orgs that install your package.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No. See note. |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Note: Feature parameters with a data flow direction set as LMO-to-Subscriber, can be updated in the LMO (License Management Org). Feature parameters with a data flow direction set as Subscriber-to-LMO can be updated using Apex in the subscriber org. Neither of these changes require a package upgrade.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Master Label, Value (When Data Flow Direction is set to LMO to Subscriber) |
| Both Package Developer and Subscriber Can Edit | Value (When Data Flow Direction is set to Subscriber to LMO) |
| Neither Package Developer or Subscriber Can Edit | Full Name, Data Type, Data Flow Direction |
Feature Name: Metadata Name: FeatureParameterInteger; Component Type in 1GP Package Manager UI: Feature Parameter Integer
Use Case: Use LMO-to-Subscriber feature parameters to enable and disable your app’s features, or use Subscriber-to-LMO feature parameters to track customer preferences and activation metrics.
Considerations When Packaging
Feature parameters are an extension of the License Management App (LMA), and because beta package versions can’t be registered with the LMA, there are aspects of feature parameters that can’t be tested using a beta package version. If you use the default value, you can test LMO-to-Subscriber values in beta package versions. You can’t test any Subscriber-to-LMO feature parameter values in a beta managed package version.
Usage Limits: A package can include up to 200 feature parameters.
Documentation: Metadata API Developer Guide: FeatureParameterInteger; Create Feature Parameters for Your Second-Generation Managed Package; Create Feature Parameters in Your First-Generation Packaging Org; Apex Reference Guide: FeatureManagement Class
Represents a field set. A field set is a grouping of fields. For example, you could have a field set that contains fields describing a user’s first name, middle name, last name, and business title.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in both 1GP and 2GP packages. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
For more details on 2GP component removal, see Remove Metadata Components from Second-Generation Managed Packages.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Description, Label, Available fields |
| Both Package Developer and Subscriber Can Edit | Selected fields (only subscriber editable) |
| Neither Package Developer or Subscriber Can Edit | Name |
Feature Name: Metadata Name: FieldSet; Component Type in 1GP Package Manager UI: Field Set
Considerations When Packaging
Field sets in installed packages perform different merge behaviors during a package upgrade:
| If a package developer: | Then in the package upgrade: |
|---|---|
| Changes a field from Unavailable to Available for the Field Set or In the Field Set | The modified field is placed at the end of the upgraded field set in whichever column it was added to. |
| Adds a field | The new field is placed at the end of the upgraded field set in whichever column it was added to. |
| Changes a field from Available for the Field Set or In the Field Set to Unavailable | The field is removed from the upgraded field set. |
| Changes a field from In the Field Set to Available for the Field Set (or vice versa) | The change isn’t reflected in the upgraded field set. |
Subscribers aren’t notified of changes to their installed field sets. The developer must notify users of changes to released field sets through the package release notes or other documentation. Merging has the potential to remove fields in your field set.
Documentation: Metadata API Developer Guide: FieldSet
Stores the relationships between a data model object (DMO) and its fields. For example, the Individual.Id field has a one-to-many relationship (1:M) with the ContactPointEmail.PartyId field.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | CreationType, DeveloperName, MasterLabel, RelationshipCardinality, SourceField, TargetField |
| Both Package Developer and Subscriber Can Edit | LastDataChangeStatusDateTime, LastDataChangeStatusErrorCode, Status |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: FieldSrcTrgtRelationship; Component Type in 1GP Package Manager UI: Field Source Target Relationship
License Requirements: Data Cloud must be provisioned.
Documentation: Metadata API Developer Guide: FieldSrcTrgtRelationship
Represents the metadata associated with a flow. With Flow, you can create an application that navigates users through a series of pages to query and update records in the database. You can also execute logic and provide branching capability based on user input to build dynamic applications.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes. Supported in 2GP packages only. |
| Component Has IP Protection | Yes, except a flow that is a template or overridable. |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Entire flow |
| Both Package Developer and Subscriber Can Edit | Flow Label, Description, Status |
| Neither Package Developer or Subscriber Can Edit | Flow API Name, URL |
Feature Name: Metadata Name: Flow
Use Case: To repeat a business process automatically such as creating an account when some criteria are met or sending an email every week, build a flow to save time and resources
Considerations When Packaging
-
When you upload a package or package version, the active flow version is included. If the flow has no active version, the latest version is packaged.
-
To update a managed package with a different flow version, activate that version and upload the package again. Or deactivate all versions of the flow, make sure the latest flow version is the one to distribute, and then upload the package.
-
In a packaging org, you can’t delete a flow after you upload it to a released or beta first-generation managed package. You can only delete a flow version from a packaging org after you upload it to a released or beta first-generation managed package, if:
- Salesforce Customer Support activated the Managed Component Deletion permission.
- The flow version is not the most recently packaged version of the flow.
- The flow version is not active.
- The flow version is not the only version.
-
You can’t delete a flow from an installed package. To remove a packaged flow from your org, deactivate it and then uninstall the package.
-
If you have multiple versions of a flow installed from multiple unmanaged packages, you can’t remove only one version by uninstalling its package. Uninstalling a package—managed or unmanaged—that contains a single version of the flow removes the entire flow, including all versions.
-
You can’t include flows in package patches.
-
An active flow in a package is active after it’s installed. The previous active version of the flow in the destination org is deactivated in favor of the newly installed version. Any in-progress flows based on the now-deactivated version continue to run without interruption but reflect the previous version of the flow. The same behavior is true even if the destination org deactivated the flow. Future active versions of the flow that are packaged activate the flow during package upgrade.
-
Upgrading a managed package in your org installs a new flow version only if there’s a newer flow version from the developer. After several upgrades, you can end up with multiple flow versions.
-
A package version can contain only one flow version per flow. If you install a managed package version that contains a flow, only the active flow version is deployed. If the flow has no active version, the latest version is deployed.
-
If you install a flow from an unmanaged package that has the same name but a different version number as a flow in your org, the newly installed flow becomes the latest version of the existing flow. However, if the packaged flow has the same name and version number as a flow already in your org, the package install fails. You can’t overwrite a flow.
-
A flow can be modified if it’s deployed in a managed package or between a package developer org and a subscriber org where either org has a namespace and the other doesn’t have a namespace.
-
Flow Builder can’t open a flow that is installed from a managed package, unless the flow is a template or overridable.
-
You can’t create a package that contains flows invoked by both managed and unmanaged package pages. As a workaround, create two packages, one for each type of component. For example, suppose that you want to package a customizable flow invoked by a managed package page. Create one unmanaged package with the flow that users can customize. Then create another managed package with the Visualforce page referencing the flow (including namespace) from the first package.
-
When you translate a flow from a managed package, the flow’s Master Definition Name doesn’t appear on the Translate page or the Override page. To update the translation for the Master Definition Name, edit the flow label and then update the translation from the Translate page.
-
If any of the following elements are used in a flow, packageable components that they reference aren’t included in the package automatically. To deploy the package successfully, manually add those referenced components to the package.
- Post to Chatter
- Send Email
- Submit for Approval
-
If a flow references a Lightning component that depends on a CSP Trusted Site, the trusted site isn’t included in the package or change set automatically.
Usage Limits: Salesforce Help: General Flow Limits
Relationship to Other Components: The associated Flow Definition component is required for managed 1GP packages.
Documentation: Metadata API Developer Guide: Flow; Salesforce Help: Packaging Considerations for Flows; Salesforce Help: Considerations for Deploying Flows with Packages; Salesforce DX Developer Guide: Hard-Deleted Components in Unlocked Packages
Represents a list of flows that are grouped by category.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | label, description |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: FlowCategory
Use Case: To reuse flow-based automated processes, group the flows into a flow category, and then add one or more flow categories to a Lightning Bolt Solution.
License Requirements: Customize Application user permission; View Setup and Configuration user permission
Relationship to Other Components: You can use FlowCategory only as part of a Lightning Bolt Solution.
Documentation: Salesforce Help: Add Flows to a Lightning Bolt Solution; Salesforce Help: Package and Distribute a Lightning Bolt Solution
Represents the flow definition’s description and active flow version number.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | Yes |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | Active Version Number, Description, Master Label |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: Flow Definition; Component Type in 1GP Package Manager UI: Flow Definition
Use Case: Include this component when you use managed 1GP to package flows.
Considerations When Packaging: Considerations for Deploying Flows with Packages
Relationship to Other Components: The associated Flow component is required for managed 1GP packages.
Documentation: Metadata API Developer Guide: Flow Definition; Salesforce Help: Flow Builder
Represents the metadata associated with a flow test. Before you activate a record-triggered flow, you can test it to verify its expected results and identify flow run-time failures.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All properties |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | API Name |
Feature Name: Metadata Name: FlowTest; Component Type in 1GP Package Manager UI: FlowTest
Use Case: Include this component when you use managed 1GP to package flow tests.
Usage Limits: Salesforce Help: Considerations for Testing Flows
Relationship to Other Components: The associated Flow component is required for managed 1GP packages.
Documentation: Metadata API Developer Guide: Flow Test; Salesforce Help: Testing Your Flow
Represents a folder.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes. Supported in 1GP packages only. |
| Component Has IP Protection | No |
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | All attributes except Folder Unique Name |
| Neither Package Developer or Subscriber Can Edit | Folder Unique Name |
-
Five different folder metadata types can be packaged:
- DashboardFolder
- DocumentFolder
- EmailFolder (available for Salesforce Classic email templates only)
- EmailTemplateFolder
- ReportFolder
-
Components that Salesforce stores in folders, such as documents, can’t be added to packages when stored in personal and unfiled folders. Put documents, reports, and other components that Salesforce stores in folders in one of your publicly accessible folders.
-
Components such as documents, email templates, reports, or dashboards are stored in new folders in the installer’s org using the publisher’s folder names. Give these folders names that indicate they’re part of the package.
-
If a new report, dashboard, document, or email template is installed during an upgrade, and the folder containing the component was deleted by the subscriber, the folder is re-created. Any components in the folder that were previously deleted aren’t restored.
-
The name of a component contained in a folder must be unique across all folders of the same component type, excluding personal folders. Components contained in a personal folder must be unique within the personal folder only.
Documentation: Metadata API Developer Guide: Folder
Represents a custom fuel type in an org.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All attributes |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: FuelType; Component Type in 1GP Package Manager UI: Fuel Type
License Requirements
- Net Zero Cloud Growth license or Net Zero Cloud Starter license
- Net Zero Cloud Manager permissions set
Post Install Steps
Enable these org settings:
- Net Zero Cloud
- Manage Carbon Accounting
Documentation
- Salesforce Help: Create a Custom Fuel Type
Represents a mapping between the custom fuel types and their corresponding unit of measure (UOM) values defined by a customer in an org.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All attributes |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: FuelTypeSustnUom; Component Type in 1GP Package Manager UI: Fuel Type Sustainability Unit of Measure
License Requirements
- Net Zero Cloud Growth license or Net Zero Cloud Starter license
- Net Zero Cloud Manager permissions set
Post Install Steps
Enable these org settings:
- Net Zero Cloud
- Manage Carbon Accounting
Documentation
- Salesforce Help: Associate a Custom Fuel Type with a Unit of Measure
Represents a collection of settings to configure the fundraising product.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in both 1GP and 2GP packages. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | LapsedUnpaidTrxnCount, HouseholdSoftCreditRole, IsHshldSoftCrAutoCrea, InstallmentExtDayCount, DonorMatchingMethod, FailedTransactionCount, ShouldCreateRcrSchdTrxn, ShouldClosePaidRcrCmt |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: FundraisingConfig
License Requirements: Fundraising Access (Permission Set License)
Documentation: Metadata API Developer Guide: FundraisingConfig
Represents an entity that allows integrators and payment providers to choose an active payment to receive an order’s payment data rather than allowing the Salesforce Order Management platform to select a default payment method.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | All fields |
Feature Name: Metadata Name: GatewayProviderPaymentMethodType
License Requirements
Salesforce Order Management, B2B Commerce, or B2C Commerce (for B2B2C Commerce) licenses are required. These licenses enable the Payment Platform org permission required to use payments objects.
Documentation: Salesforce Help: Processing Payments with Payment Gateways
Represents a planner for an agent or agent template. It’s a container for all the topics and actions used to interact with a large language model (LLM).
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Capabilities, Description, MasterLabel |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: GenAiPlannerBundle; Component Type in 2GP Package Manager UI: Generative AI Planner Bundle
Use Case
Represents a planner for an agent or agent template. It’s a container for all the topics and actions used to interact with a large language model (LLM).
Documentation: Salesforce Help: Agentforce Agents; Salesforce Help: The Building Blocks of Agents
Represents a generative AI prompt template, for use in Agentforce.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Template Active Version |
| Both Package Developer and Subscriber Can Edit | Template Description |
| Neither Package Developer or Subscriber Can Edit | Prompt Template Name, Prompt Template Version |
Feature Name: Metadata Name: GenAIPromptTemplate; Component Type in 1GP Package Manager UI: Generative AI Prompt Template
Use Case: To package prompt templates created from Prompt Builder for Generative AI use cases.
Considerations When Packaging: See Considerations for Packaging Prompt Templates..
License Requirements: Generative AI SKUs are needed to provision Prompt Builder in the org.
Documentation: Metadata API Developer Guide: GenAiPromptTemplate
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.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes. Supported in 1GP packages only. |
| Component Has IP Protection | No |
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Feature Name: Metadata Name: Global Value Set; Component Type in 1GP Package Manager UI: Global Value Set
Considerations When Packaging
When explicitly referencing a picklist value in code, keep in mind that picklist values for a custom field can be renamed, added, edited, or deleted by subscribers.
Picklist field values can be added or deleted in the developer’s org. Changes to standard picklists can’t be packaged and deployed to subscriber orgs, and picklist values deleted by the developer are still available in the subscriber’s org. If there are differences between the package and the target org, or if there are dependencies on new values from features such as PathAssistant, the deploy fails. To change values in subscriber orgs, you must manually add or modify the values in the target subscriber org.
Updating picklist values in unlocked packages isn’t supported. Manually add or modify the values in the target subscriber org.
Package upgrades retain dependent picklist values that are saved in a managed custom field.
Global value sets can be added to developer and subscriber orgs. Global value sets have these behaviors during a package upgrade.
- Label and API names for field values don’t change in subscriber orgs.
- New field values aren’t added to the subscriber orgs.
- Active and inactive value settings in subscriber orgs don’t change.
- Default values in subscriber orgs don’t change.
- Global value set label names change if the package upgrade includes a global value set label change.
When you create a custom global value set in API version 56.0 or later, the developer name is appended with the suffix
__gvs.
.
- A global value set created before API version 56.0 doesn’t have the developer name suffix. For example,
myGlobalValueSet. - A global value set created in API version 56.0 or later automatically has the developer name suffix
__gvs, and you refer to it using the suffix. For example,myNewGlobalValueSet__gvs.
If you have a package.xml manifest file that contains global value sets, and you upgrade the package.xml file to API version 56.0, you must add the __gvs suffix to all of the global value sets in the file. You can do a new package retrieve in API version 56.0 to get all the global value set names. Your package.xml file looks like this XML.
To upgrade the file to API version 56.0, the file looks like this XML.
Documentation: Salesforce Help: Create a Global Picklist Value Set; Salesforce Help: Make Your Custom Picklist Field Values Global
Represents the metadata associated with a home page component. You can customize the Home tab in Salesforce Classic to include components such as sidebar links, a company logo, a dashboard snapshot, or custom components that you create. Use to create, update, or delete home page component definitions.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Body, Component Position |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | Name, Type |
Feature Name: Metadata Name: HomePageComponent; Component Type in 1GP Package Manager UI: Home Page Component
Relationship to Other Components
When you package a custom home page layout, all the custom home page components included on the page layout are automatically added. Standard components such as Messages & Alerts aren’t included in the package and don’t overwrite the installer’s Messages & Alerts. To include a message in your custom home page layout, create an HTML Area type custom Home tab component containing your message. From Setup, in the Quick Find box, enter Home Page Components, then select Home Page Components. Then add the message to your custom home page layout.
Documentation: Metadata API Developer Guide: HomePageComponent
Represents the metadata associated with a home page layout. You can customize home page layouts and assign the layouts to users based on their user profile.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes. Supported in 1GP packages only. |
| Component Has IP Protection | No |
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | All attributes except Layout Name |
| Neither Package Developer or Subscriber Can Edit | Layout Name |
Feature Name: Metadata Name: HomePageLayout; Component Type in 1GP Package Manager UI: Home Page Layout
Considerations When Packaging
After they’re installed, your custom home page layouts are listed with all the subscriber’s home page layouts. Distinguish them by including the name of your app in the page layout name.
Documentation: Metadata API Developer Guide: HomePageLayout
Represents the definition of the identity verification process.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | MasterLabel, SearchLayoutType |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | Name |
Feature Name: Metadata Name: IdentityVerificationProcDef; Component Type in 1GP Package Manager UI: Identity Verification Process Definition
Use Case: Links the configuration for Identity Verification to a flow.
License Requirements: Industries Health Cloud, Industries Sales Excellence, and Industries Service Excellence licenses.; Actionable Segmentation Engagement, Industries Sales Excellence, Industry Service Excellence or Health Cloud Platform Permission set license is required to use this metadata type.
Relationship to Other Components: An Identity Verification Process Field record looks up to an Identity Verification Process Details record, which in turn looks up to an Identity Verification Process Definition record.
Documentation: Health Cloud Developer Guide: IdentityVerificationProcDef
Represents a private connection between a third-party data service and a Salesforce org. The connection is inbound because the callouts are coming into Salesforce.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
You can only delete connections that are in an unprovisioned state.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
Where possible, we changed noninclusive terms to align with our company value of Equality. We maintained certain terms to avoid any effect on customer implementations.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | AWS VPC Endpoint ID, Connection Type, Developer Name, Description, Link ID, Master Label, Region, Source IP Ranges |
| Both Package Developer and Subscriber Can Edit | Status |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: InboundNetworkConnection; Component Type in 1GP Package Manager UI: Inbound Network Connection
Considerations When Packaging
- Packaged connections are installed as unprovisioned. Alert subscribers about how to provision connections after package installation.
- If a developer changes the Region of a packaged connection that is subscriber-provisioned, the upgrade fails for the subscriber. Alert subscribers about tearing down the connection before updating the Region field. As a best practice, avoid changing the Region of a packaged connection unless necessary.
License Requirements: This feature is available with the Private Connect license.
Documentation: Salesforce Help: Secure Cross-Cloud Integrations with Private Connect; Salesforce Help: Establish an Inbound Connection with AWS
Represents an integration definition associated with a service process. Stores data for the Industries: Send Apex Async Request and Industries: Send External Async Request invocable actions.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All other fields |
| Both Package Developer and Subscriber Can Edit | StringValue, IntegerValue, DateTimeValue, DateValue, PercentageValue, DoubleValue, IsTrueOrFalseValue |
| Neither Package Developer or Subscriber Can Edit | FullName |
IntegrationProviderDef: Metadata Name: IntegrationProviderDef; Component Type in 1GP Package Manager UI: IntegrationProviderDef
Documentation: IntegrationProviderDef in Metadata API Developer Guide.
Represents the mapping details between a Learning Achievement type and a Learning Achievement record type.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All but DeveloperName |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | DeveloperName |
Feature Name: Metadata Name: LearningAchievementConfig
Documentation: Education Cloud Developer Guide
See Also
Represents a custom exercise type that an Enablement user takes in an Enablement program in the Guidance Center. A custom exercise type also requires a corresponding LearningItem record for the Guidance Center and corresponding EnblProgramTaskDefinition and EnblProgramTaskSubCategory records for when admins create a program in Program Builder.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All but DeveloperName |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | DeveloperName |
Feature Name: Metadata Name: LearningItemType
Use Case
Include this component in a package with a program if the program has a custom exercise type.
Considerations When Packaging: See Considerations for Packaging Enablement Programs and Dependencies..
License Requirements
Enablement add-on license and the Enablement permission set license are required.
Custom exercises aren’t compatible with Partner Enablement programs.
Usage Limits: See Enablement Limits..
Relationship to Other Components
The Learning Item Type component requires a corresponding Enablement Program Task Subcategory component. Both components are used with custom exercise types in Enablement programs. Package both of these components with an Enablement Program Definition component.
Documentation
- Salesforce Help: Sales Programs and Partner Tracks with Enablement
- Metadata API Developer Guide: EnblProgramTaskSubCategory
- Metadata API Developer Guide: LearningItemType
- Object Reference for the Salesforce Platform: EnblProgramTaskDefinition
- Object Reference for the Salesforce Platform: LearningItem
- Sales Programs and Partner Tracks with Enablement Developer Guide: Create a Managed Package for Enablement Programs, Measures, and Content
- Sales Programs and Partner Tracks with Enablement Developer Guide: Implement Custom Exercise Types for Enablement Programs
Represents formatting options for the letterhead in an email template. A letterhead defines the logo, page color, and text settings for your HTML email templates. Use letterheads to ensure a consistent look and feel in your company’s emails.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes. Supported in 1GP packages only. |
| Component Has IP Protection | No |
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | All attributes except Letterhead Name |
| Neither Package Developer or Subscriber Can Edit | Letterhead Name |
Feature Name: Metadata Name: Letterhead
Documentation: Metadata API Developer Guide: Letterhead
Represents the category that a Life Sciences configuration record is organized into.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
Where possible, we changed noninclusive terms to align with our company value of Equality. We maintained certain terms to avoid any effect on customer implementations.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | CategoryLabel, DeveloperName, MasterLabel |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | CategoryType |
Feature Name: Metadata Name: LifeSciConfigCategory; Component Type in 1GP Package Manager UI: Life Science Config Category
Considerations When Packaging: When packaging the LifeSciConfigCategory component, the DeveloperName must match the Category.
License Requirements: Industries Life Sciences Cloud with the Life Sciences Cloud for Customer Engagement Add-on license and the Life Sciences Customer Engagement managed package.
Relationship to Other Components: This component defines the category of the configuration defined in a child LifeSciConfigRecord component.
Documentation: Life Sciences Cloud Developer Guide: LifeSciConfigCategory
Represents a configuration record for Life Sciences. This object is a child of Life Science Config Category.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
Where possible, we changed noninclusive terms to align with our company value of Equality. We maintained certain terms to avoid any effect on customer implementations.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | IsActive, IsOrgLevel, MasterLabel, ParentConfigRecordId, Type |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | DeveloperName, LifeSciConfigCategoryId |
Feature Name: Metadata Name: LifeSciConfigRecord; Component Type in 1GP Package Manager UI: Life Science Config Record
Use Case: This component holds the configuration records for Life Sciences Cloud for Customer Engagement application.
Considerations When Packaging
- You must package the LifeSciConfigRecord component with its parent LifeSciConfigCategory component.
- The component must be in the inactive state.
License Requirements: Industries Life Sciences Cloud with the Life Sciences Cloud for Customer Engagement Add-on license and the Life Sciences Customer Engagement managed package.
Post Install Steps: For the configuration to work, make the component active by setting IsActive to true.
Relationship to Other Components: A LifeSciConfigRecord is a child of LifeSciConfigCategory, and can’t exist without the parent LifeSciConfigCategory.; A LifeSciConfigRecord is also a parent to LifeSciConfigFieldValue and LifeSciConfigAssignment.
Documentation: Life Sciences Cloud Developer Guide: LifeSciConfigRecord
Represents the definition of a Lightning Bolt Solution, which can include custom apps, flow categories, and Experience Builder templates.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in 1GP packages only. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Feature Name: Metadata Name: LightningBolt; Component Type in 1GP Package Manager UI: Lightning Bolt
Documentation: Metadata API Developer Guide: LightningBolt
Represents the metadata associated with a Lightning Message Channel. A Lightning Message Channel represents a secure channel to communicate across UI technologies, such as Lightning Web Components, Aura Components, and Visualforce.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | Yes |
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Feature Name: Metadata Name: LightningMessageChannel; Component Type in 1GP Package Manager UI: Lightning Message Channel
Considerations When Packaging: To pass the AgentExchange Security Review, the , the isExposed attribute must be set to attribute must be set to false..
Documentation: Metadata API Developer Guide: Lightning Message Channel; Lightning Web Components Developer Guide: Create a Message Channel
Represents the metadata associated with a Lightning page. A Lightning page represents a customizable screen made up of regions containing Lightning components.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in 2GP packages only. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Lightning page |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
You must have the Manage Prompt Templates permission to successfully package Lightning pages that reference prompt templates. Without this permission, package creation succeeds, but the prompt template isn’t included in the package.
Feature Name: Metadata Name: FlexiPage
Documentation: Metadata API Developer Guide: Flexipage
Represents a custom Lightning type. Use this type to override the default user interface to create a customized appearance based on your business requirements. Deploy this bundle to your organization to implement the overrides.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Description |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: LightningTypeBundle; Component Type in 1GP Package Manager UI: Lightning Type
Documentation: Metadata API Developer Guide: LightningTypeBundle
Represents a Lightning web component bundle. A bundle contains Lightning web component resources.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
You can build Lightning components using two programming models: the Lightning Web Components model, and the original Aura Components model.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in both 1GP and 2GP packages. |
| Component Has IP Protection | No |
When a package developer removes an Aura or Lightning web component from a package, the component remains in a subscriber’s org after they install the upgraded package. The administrator of the subscriber’s org can delete the component, if desired. This behavior is the same for a Lightning web component or an Aura component with a public or global access value.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | API Version, Description, isExposed (can only change from false to true), Label, Markup, Targets, targetConfigs, targetConfig, property |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | Name |
You can’t make certain changes to <property> tags on a custom component that’s used in a managed package or an Experience Builder site. For more information, see Considerations for configuring a component for Experience Builder in the Lightning Web Components Developer Guide.
Lightning Web Component: Metadata Name: LightningComponentBundle; Component Type in 1GP Package Manager UI: Lightning Web Component (LWC) Bundle
Considerations When Packaging
Licensing Considerations:
LWC components don’t automatically enforce managed package licensing. LWC components in a managed package can be seen and used by users who don’t have active licenses for that managed package. These components can also be seen and used after a trial of that managed package expires.
AgentExchange partners are responsible for enforcing package licensing in their LWC Components. We recommend using an Apex controller that calls either the
UserInfo.isCurrentUserLicensed(namespace) or
or
UserInfo.isCurrentUserLicensedForPackage(packageID) methods, and only rendering the component if
methods, and only rendering the component if
true is returned.
is returned.
Considerations When Using isExposed::
If
isExposed is false, the package developer can remove configuration targets and a public (@api) property from a component. The component isn’t available to other namespaces or to Salesforce builders like Lightning App Builder and Experience Builder.
is false, the package developer can remove configuration targets and a public (@api) property from a component. The component isn’t available to other namespaces or to Salesforce builders like Lightning App Builder and Experience Builder.
If
isExposed is true and the component is in a published managed package, the package developer can’t remove configuration targets or a public (@api) property from a component. This restriction is enforced even if the target or public property was added after the most recent publication of the package.
is true and the component is in a published managed package, the package developer can’t remove configuration targets or a public (@api) property from a component. This restriction is enforced even if the target or public property was added after the most recent publication of the package.
If
isExposed is true, the component is available to other namespaces, including namespaces outside of a published managed package.
is true, the component is available to other namespaces, including namespaces outside of a published managed package.
If
isExposed is true and a
is true and a
Targets value is also provided, the component is available to Salesforce builders such as Lightning App Builder and Experience Builder.
value is also provided, the component is available to Salesforce builders such as Lightning App Builder and Experience Builder.
When you delete an LWC component with an
isExposed value of true, we recommend a two-stage process to ensure that the deleted component has no dependencies on the other items in the package. See
value of true, we recommend a two-stage process to ensure that the deleted component has no dependencies on the other items in the package. See
Remove Components from Second-Generation Managed Packages for details.
for details.
Considerations When Working with LWC Dynamic Imports:
When installing a managed package that contains an LWC component with
,
Lightning Web Security must be enabled in your org.
must be enabled in your org.
Documentation: Lightning Web Components Developer Guide; Lightning Web Components Developer Guide: Add Components to Managed Packages; Lightning Web Components Developer Guide: Delete Components from Managed Packages
ListView allows you to see a filtered list of records, such as contacts, accounts, or custom objects.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes. Supported in both 1GP and 2GP packages. |
| Component Has IP Protection | No |
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
For more details on 2GP component removal, see Remove Metadata Components from Second-Generation Managed Packages.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | All attributes except View Unique Name |
| Neither Package Developer or Subscriber Can Edit | View Unique Name |
Feature Name: Metadata Name: ListView; Component Type in 1GP Package Manager UI: List View
Considerations When Packaging
If a subscriber removes a packaged listview from their production org, that listview is deprecated, but not deleted. If that subscriber org later creates a sandbox org, and upgrades the package in the sandbox org, the removed listview persists in the sandbox org. To remove the listview from the sandbox, package subscribers can click
and select
and select
Delete.
.
Relationship to Other Components
List views associated with queues can’t be included in a managed package or an unlocked package.
Documentation: Metadata API Developer Guide: ListView
Represents a rule for masking or deleting data of a specified pattern. Written as a regular expression (regex). Use this object to mask or delete data of specified patterns, such as credit card, social security, or phone and account numbers.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes, Supported in 1GP Packages only |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: LiveChatSensitiveDataRule; Component Type in 1GP Package Manager UI: Sensitive Data Rules
Documentation: Metadata API Developer Guide: LiveChatSensitiveDataRule
Represents the configuration of a loyalty program process including its parameters and rules. Program processes determine how new transaction journals are processed. When new transaction journals meet the criteria and conditions for a program process, actions that are set up in the process are triggered for the transaction journals.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | Yes, except templates |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Loyalty Program Process records |
| Both Package Developer and Subscriber Can Edit | Label, Description, Status |
| Neither Package Developer or Subscriber Can Edit | API Name, URL |
Feature Name: Metadata Name: LoyaltyProgramSetup; Component Type in 1GP Package Manager UI: Loyalty Program Setup
Use Case: Promotion setup allows loyalty program managers to create loyalty program processes.
License Requirements: Loyalty Management permission set license
Documentation: Salesforce Help: Create Processes with Promotion Setup
Represents the definition of custom content types for use with Salesforce CMS. Custom content types are displayed as forms with defined fields.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Content, Description, Labels |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: ManagedContentType
Use Case: Share or distribute custom content types for use in enhanced workspaces in Salesforce CMS.
Considerations When Packaging
Installed content types are available only to enhanced CMS workspaces.
To refer to an installed content type when using Connect REST API, you must use the content type’s fully qualified name. Installed content types are available only to enhanced CMS workspace resources.
Documentation: Metadata API Developer Guide: ManagedContentType; Connect REST API Developer Guide: Enhanced CMS Workspaces Resources; CMS Developer Guide: Create Custom Content Type Sample
Represents an integration with a third-party app or service that generates prospect external activity.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | DeveloperName, MasterLabel, Description |
| Both Package Developer and Subscriber Can Edit | IsActive |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: MarketingAppExtension; Component Type in 1GP Package Manager UI: Marketing App Extension
Use Case: Partners and ISVs can provide integrations with third-parties so Account Engagement customers can enhance their automations.
Considerations When Packaging
Marketing app extensions require an associated action type component to function. The related component activity type isn’t supported for packaging.
License Requirements
This feature is available in Plus, Advanced, or Premium editions of Account Engagement. To work with marketing app extensions, users must be a Salesforce admin or have the
required permissions to access Marketing Setup.
.
Usage Limits
The number of active extensions, activities, and actions the end user can have at one time depends on their edition of Account Engagement.
- Plus—10 active extensions, with 10 active activities and 10 active actions per active extension
- Advanced—20 active extensions, with 20 active activities and 20 active actions per active extension
- Premium—30 active extensions, with 30 active activities and 30 active actions per active extension
For more on limits, see
For more on limits, see
Considerations for Working with Marketing App Extensions.
Post Install Steps: To receive data, the extension must be activated for automations and have a business unit assignment.
Relationship to Other Components: The extension requires an associated action type component to function.
Documentation
This component is part of Account Engagement’s extensibility feature set.
- Salesforce Help: Automate Data Sharing with Third-Party Apps
- Developer Guide: Work with Extensibility Features
Represents an Activity Type, which is a prospect activity that occurs in a third-party app and can be used in Account Engagement automations.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | MasterLabel, Description |
| Both Package Developer and Subscriber Can Edit | IsActive |
| Neither Package Developer or Subscriber Can Edit | DeveloperName, EndpointUrl, MarketingAppExtension |
Feature Name: Metadata Name: MarketingAppExtActivity; Component Type in 1GP Package Manager UI: Marketing App Extension
Use Case: Partners and ISVs can use Activities to submit external prospect engagement data to Marketing Cloud Account Engagement.
Considerations When Packaging
This component is included when the parent component
MarketingAppExtension is added to a package. The related component MarketingAppExtActivity isn’t supported for packaging.
is added to a package. The related component MarketingAppExtActivity isn’t supported for packaging.
License Requirements
This feature is available in Plus, Advanced, or Premium editions of Account Engagement. To work with marketing app extensions and related components, users must be a Salesforce admin or have the
required permissions to access Marketing Setup.
.
Usage Limits
The number of active extensions, activities, and actions the end user can have at one time depends on their edition of Account Engagement.
- Plus—10 active activities per active extension
- Advanced—20 active activities per active extension
- Premium—30 active activities per active extension
For more information, see
For more information, see
Considerations for Working with Marketing App Extensions.
Post Install Steps: To receive data, the activity and its related extension must be activated for automations.
Relationship to Other Components
This component is a child of the
MarketingAppExtension component. Activities interact with Marketing Cloud Account Engagement features that support external activities. For more information, see
component. Activities interact with Marketing Cloud Account Engagement features that support external activities. For more information, see
Capture External Prospect Activity.
.
Documentation
This component is part of Account Engagement’s extensibility feature set.
- Salesforce Help: Automate Data Sharing with Third-Party Apps
- Developer Guide: Work with Extensibility Features
Represents the field values for MarketSegmentDefinition. MarketSegmentDefinition is used to store the exportable metadata of a segment, such as segment criteria and other attributes. Developers can create segment definition packages, pass segment definition in the form of data build tool (DBT), and publish it on AgentExchange for subscriber organizations to install and instantiate these segments.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Yes, applicable for all properties. |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: MarketSegmentDefinition; Component Type in 1GP Package Manager UI: Market Segment Definition
Documentation: [REQUIRED]
Represents Calculated Insight definition such as expression.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | BuilderExpression, CalculatedInsightCreationType, Description, Expression, Label |
| Both Package Developer and Subscriber Can Edit | CalculatedInsightObjectDefinitionStatus, Description |
| Neither Package Developer or Subscriber Can Edit | DeveloperName |
Feature Name: Metadata Name: MktCalcInsightObjectDef; Component Type in 1GP Package Manager UI: MktCalcInsightObjectDef.
Use Case: Defines CDP calculated insight for easy creation on subscriber organizations.
Considerations When Packaging
To package this component, first add it to a data kit. For more information about data kits, see
Data Kits in
in
Salesforce Help.
.
License Requirements: You need Customer 360 Audiences Corporate (cdpPsl) licenses on both package developer org and subscriber org.
Post Install Steps
User has to go to the
Calculated Insights object home in Customer Data Platform, click
object home in Customer Data Platform, click
New action and select
and select
Create from a Package.
.
Relationship to Other Components
Calculated Insight Component is tied to the Data Model Object component. The Calculated Insight component must have Data Model Object dependencies available on the subscriber organization that are used in the Calculated Insight.
Documentation: Metadata API Developer Guide: MktCalcInsightObjectDef
Represents the connection information of an external connector that can ingest data to Data Cloud, read data from the source, or write data to the source in Data Cloud.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | masterLabel, Parameters
|
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: MktDataConnection; Component Type in 1GP Package Manager UI: Data Connection
Use Case: To reuse connection parameters.
Considerations When Packaging
Connection credentials are excluded from the package. Available parameters are defined in Connector Metadata which is exposed from Connect API.
License Requirements
Data Cloud must be provisioned. For more information, see
Data Cloud: Access and Provisioning.
Usage Limits: The number of connections per connector type can be up to 200.
Post Install Steps: After you create the connection, it will be in INACTIVE state, you must manually activate the connection.
Relationship to Other Components: Must be used with Data Stream and Activation.
Documentation: Salesforce Help: Third-Party Data Cloud Connectors
An entity that is used to deliver (aka transport) information from the source to a target (target will be called a landing entity).This can be the schema of a file, API, Event, or other means of transporting data, such as SubscriberFile1.csv, or SubscriberCDCEvent.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | CreationType, DataSource, DataSourceObject, DeveloperName, ObjectCategory, Status |
| Both Package Developer and Subscriber Can Edit | DataConnector |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name
Metadata Name: MktDataTranObject
Component Type in 1GP Package Manager UI: It’s not a top-level component, it can only be spidered in when customer selects some other component. You won’t be able to add this component directly to the package.
License Requirements: Data Cloud must be provisioned.
Documentation: Metadata API Developer Guide: MktDataTranObject
Represents a named credential, which specifies the URL of a callout endpoint and its required authentication parameters in one definition. A named credential can be specified as an endpoint to simplify the setup of authenticated callouts.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in 2GP packages only. |
| Component Has IP Protection | No |
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Certain properties on metadata components are editable after the managed package is installed.
In addition to these properties, the Description, ParameterName, ParameterValue, and SequenceNumber properties have the same editability as the NamedCredentialParameters they’re included in.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Label, NamedCredentialType, Legacy Named Credentials only (deprecated and unsupported in future releases)
|
| Both Package Developer and Subscriber Can Edit | CalloutOptions
|
| Neither Package Developer or Subscriber Can Edit | FullName |
Feature Name: Metadata Name: NamedCredential
Considerations When Packaging
Certificates aren’t packageable. If a certificate needs access to an external system, an administrator must upload one to the subscriber org and reference it in the named credential.
Relationship to Other Components
You must package NamedCredential with the associated ExternalCredential component.
The named credential defines a callout endpoint and an HTTP transport protocol, while the external credential represents the details of how Salesforce authenticates to an external system via an authentication protocol. Each named credential must be mapped to at least one external credential.
Legacy Named Credentials
In Winter ’23, Salesforce introduced an improved named credential that is extensible and customizable. We strongly recommend that you use this preferred credential instead of legacy named credentials. For information on extensible, customizable named credentials, see Named Credentials and External Credentials. Legacy named credentials are deprecated and will be discontinued in a future release.
After installing a named credential from a managed or unmanaged package, the subscriber must reauthenticate to the external system.
- For password authentication, the subscriber reenters the password in the named credential definition.
- For OAuth, the subscriber updates the callback URL in the client configuration for the authentication provider and then reauthenticates by selecting Start Authentication Flow on Save on the named credential.
Documentation: Salesforce Help: Named Credentials; Named Credentials Developer Guide: Named Credentials Packaging Guide; Metadata API Developer Guide: NamedCredential
Contains the object-level mappings between the source and the target objects. The source and target objects can be an MktDataLakeObject or an MktDataModelObject. For example, an Email source object can be mapped to the ContactPointEmail object.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | CreationType, DeveloperName, MasterLabel, ParentObject, SequenceNbr, SourceObject, TargetObject |
| Both Package Developer and Subscriber Can Edit | LastDataChangeStatusDateTime, LastDataChangeStatusErrorCode, Status |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name
Metadata Name: ObjectSourceTargetMap
Component Type in 1GP Package Manager UI: It’s not a top-level component, it can only be spidered in when customer selects some other component. You won’t be able to add this component directly to the package.
License Requirements: Data Cloud must be provisioned.
Documentation: Metadata API Developer Guide: ObjectSourceTargetMap
Maps structured, logical data nodes in a context definition to actual Salesforce object fields or external data sources
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | Yes |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Represents the details of a sample document or a document type that’s used as a reference while extracting and mapping information from a customer form.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes. Supported in 1GP packages only. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: OcrSampleDocument; Component Type in 1GP Package Manager UI: OcrSampleDocument
Use Case: Migrate sample documents created with the Intelligent Form Reader or Intelligent Document Reader feature.
Considerations When Packaging: If you update the package by deleting OcrSampleDocumentFields associated with the OCRTemplate, the OcrSampleDocumentFields are not deleted.
License Requirements: AWSTextract1000LimitAddOn-1 for the Intelligent Form Reader feature or IntelligentDocumentReaderAddOn-1 for the Intelligent Document Reader feature.
Relationship to Other Components: DocumentType, ContentAsset, and OcrTemplate (Optional)
Documentation: Metadata API Developer Guide: OcrSampleDocument
Represents the details of the mapping between a form and a Salesforce object using Intelligent Form Reader.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes. Supported in 1GP packages only. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: OcrTemplate; Component Type in 1GP Package Manager UI: OcrTemplate
Use Case: Migrate Mappings created with the Intelligent Form Reader or Intelligent Document Reader feature.
Considerations When Packaging
OcrTemplate has a dependency on OcrSampleDocument. Before deploying the package, make sure to either include OcrSampleDocument in the package or deploy a package that contains OcrSampleDocument.
License Requirements: AWSTextract1000LimitAddOn-1 for the Intelligent Form Reader feature or IntelligentDocumentReaderAddOn-1 for the Intelligent Document Reader feature.
Relationship to Other Components: DocumentType and OcrSampleDocument
Documentation: Metadata API Developer Guide: OcrTemplate
Represents a private connection between a Salesforce org and a third-party data service. The connection is outbound because the callouts are going out of Salesforce.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
You can only delete connections that are in an unprovisioned state.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
Where possible, we changed noninclusive terms to align with our company value of Equality. We maintained certain terms to avoid any effect on customer implementations.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Connection Type, Developer Name, Description, Master Label, Region, Service Name |
| Both Package Developer and Subscriber Can Edit | Status |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: OutboundNetworkConnection; Component Type in 1GP Package Manager UI: Outbound Network Connection
Considerations When Packaging
- Packaged connections are installed as unprovisioned. Alert subscribers about how to provision connections after package installation.
- If a developer changes the Region or Service Name of a packaged connection that is subscriber-provisioned, the upgrade fails for the subscriber. Alert subscribers about tearing down the connection before you update the Region or Service Name fields. As a best practice, avoid changing the Region or Service Name of a packaged connection unless necessary.
- If you package a Named Credential that references an Outbound Network Connection, the referenced Outbound Network Connection component is automatically added to the package.
License Requirements: This feature is available with the Private Connect license.
Documentation: Salesforce Help: Secure Cross-Cloud Integrations with Private Connect; Salesforce Help: Establish an Outbound Connection with AWS
Represents the metadata associated with a page layout.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes. Supported in both 1GP and 2GP packages |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | All attributes except Page Layout Name |
| Neither Package Developer or Subscriber Can Edit | Page Layout Name |
Feature Name: Metadata Name: Layout
Considerations
The page layout of the person uploading a package is the layout used for Group and Professional Edition orgs and becomes the default page layout for Enterprise, Unlimited, Performance, and Developer Edition orgs.
Package page layouts alongside complimentary record types if the layout is being installed on an existing object. Otherwise, manually apply the installed page layouts to profiles.
If a page layout and a record type are created as a result of installing a package, the uploading user’s page layout assignment for that record type is assigned to that record type for all profiles in the subscriber org, unless a profile is mapped during an install or upgrade.
Documentation: Metadata API Developer Guide: Layout
Represents Path records.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes. Supported in 1GP packages only. |
| Component Has IP Protection | No |
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | IsActive field |
| Neither Package Developer or Subscriber Can Edit | SobjectType, SobjectProcessField, and RecordType |
Feature Name: Metadata Name: PathAssistant; Component Type in 1GP Package Manager UI: Path Assistant
Documentation: Metadata API Developer Guide: PathAssistant
Represents the metadata associated with a payment gateway provider.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | All fields |
Feature Name: Metadata Name: PaymentGatewayProvider
License Requirements
Salesforce Order Management, B2B Commerce, or B2C Commerce (for B2B2C Commerce) licenses are required. These licenses enable the Payment Platform org permission required to use payments objects.
Documentation: Salesforce Help: Processing Payments with Payment Gateways
Represents a set of permissions that’s used to grant more access to one or more users without changing their profile or reassigning profiles. You can use permission sets to grant access but not to deny access.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in both 1GP and 2GP packages. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
For more details on 2GP component removal, see Remove Metadata Components from Second-Generation Managed Packages.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Description, Label, Custom object permissions, Custom field permissions, Apex class access settings, Visualforce page access settings |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | Name |
Feature Name: Metadata Name: PermissionSet; Component Type in 1GP Package Manager UI: Permission Set
Documentation: Metadata API Developer Guide: PermissionSet
Represents a group of permission sets and the permissions within them. Use permission set groups to organize permissions based on job functions or tasks. Then, you can package the groups as needed.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | Permission Set Group Components (Developer can add and remove while Subscriber can add) |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: PermissionSetGroup; Component Type in 1GP Package Manager UI: Permission Set Group
Considerations When Packaging
Don’t assume that a subscriber’s permission set group is the same as what the developer has specified. Although developers can define the permission set group and what permission sets can go into it, subscribers can add additional permission sets or mute permissions.
Relationship to Other Components: This feature can only be used in conjunction with Permission Sets.
Documentation: Salesforce Help: Permission Set Groups
Represents a partition in the Platform Cache.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Master Label, Description, Default Partition |
| Both Package Developer and Subscriber Can Edit | Organization Capacity, Trial Capacity |
| Neither Package Developer or Subscriber Can Edit | Developer Name |
Feature Name: Metadata Name: PlatformCachePartition; Component Type in 1GP Package Manager UI: Platform Cache Partition
Documentation: Set Up a Platform Cache Partition with Provider Free Capacity; Metadata API Developer Guide: PlatformCachePartition; Apex Developer Guide: Platform Cache Partitions
Represents a channel that you can subscribe to in order to receive a stream of events.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
Feature Name: Metadata Name: PlatformEventChannel; Component Type in 1GP Package Manager UI: Platform Event Channel
Documentation: Metadata API Developer Guide: PlatformEventChannel
Represents an entity selected for Change Data Capture notifications on a standard or custom channel, or a platform event selected on a custom channel.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
Feature Name: Metadata Name: PlatformEventChannelMember; Component Type in 1GP Package Manager UI: Platform Event Channel Member
Considerations When Packaging
- As of Winter ’22, installing a managed package that contains Change Data Capture entity selections no longer causes an installation error. Before Winter ’22, installing a managed package that contained Change Data Capture entity selections that were over the default allocation caused package installation errors.
- To package Change Data Capture entity selections, create a custom channel through the PlatformEventChannel metadata type. Then add entity selections to the custom channel through the PlatformEventChannelMember metadata type.
Documentation: Metadata API Developer Guide: PlatformEventChannelMember
Represents configuration settings for a platform event Apex trigger, including the batch size, the trigger’s running user, and parallel subscription settings.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No. PlatformEventSubscriberConfig is tied to an Apex trigger. If the package developer removes the Apex trigger, PlatformEventSubscriberConfig is also removed. |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | batchSize, numPartitions, partitionKey, platformEventConsumer |
| Both Package Developer and Subscriber Can Edit | user |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: PlatformEventSubscriberConfig; Component Type in 1GP Package Manager UI: Platform Event Subscriber Configuration
Use Case: Override the default running user and batch size of a platform event Apex trigger.
Relationship to Other Components: PlatformEventSubscriberConfig is tied to an Apex trigger.
Documentation: Platform Events Developer Guide: Configure the User and Batch Size for Your Platform Event Trigger; Platform Events Developer Guide: Platform Event Processing at Scale with Parallel Subscriptions for Apex Triggers
Represents a pricing action associated to a context definition and a pricing procedure.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | Pricing Action Parameters Name |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: PricingActionParameters; Component Type in 1GP Package Manager UI: PricingActionParameters
License Requirements: Salesforce Pricing permissions
Relationship to Other Components: All the components that pricing depends on are packaged along with the Pricing Action Parameters component.
Documentation: Salesforce Help: Pricing Action Parameters in Salesforce Pricing
Represents one out of various data models or sets of entities of a particular cloud that’ll be consumed by the pricing data store during design and run time.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | Recipe Name |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: PricingRecipe; Component Type in 1GP Package Manager UI: PricingRecipe
Considerations When Packaging
There are two prerequisites currently. All the associated contexts aren’t exported. For decision tables, while exporting, column additions made to the associated objects aren’t refreshed during export.
License Requirements: Salesforce Pricing permissions
Relationship to Other Components: All the components that pricing is dependent on are packaged along with the pricing recipe.
Documentation: Salesforce Help: Pricing Recipes
Represents the pricing resolution for an pricing element determined using strategy name and formula.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Active Checkbox |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: ProcedureOutputResolution; Component Type in 1GP Package Manager UI: ProcedureOutputResolution
Use Case: To determine the best price for a product if a pricing rule produces multiple outcomes.
License Requirements: Salesforce Pricing permissions
Documentation: Salesforce Help: Procedure Output Resolution
Use Flow instead.
See Flow
Represents a process’s migrated criteria and the resulting migrated flow.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | Yes |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | Description, Label, Name |
Feature Name: Metadata Name: ProcessFlowMigration; Component Type in 1GP Package Manager UI: Process Flow Migration
Use Case
Include this component only if you’ve used Migrate to Flow tool and wish to have pending Scheduled Actions from migrated Processes converted into pending Flow Scheduled Paths in subscriber orgs. This occurs after the migrated Flow is activated in the subscriber org.
Considerations When Packaging
When packaging a Flow that was migrated from a Process, this component is added automatically. When adding a Flow that was migrated from a Process to a change set, this component would need to be added manually.
Relationship to Other Components
Flows
Documentation: Salesforce Help: Migrate Processes and Workflows to Flow
Represents the ProductAttribute information being used as and attribute such as color_c, size_c .
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | Description, Master Label |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: ProductAttributeSet
License Requirements: A B2B Commerce or D2C Commerce license and access to Commerce objects is required.
Usage Limits: An org can have a maximum of 100 product attribute sets.; For each product attribute set, you can have a maximum of five associated product attribute set items.
Documentation: Salesforce Help: Product Variations and Attributes; Metadata API Developer Guide: ProductAttributeSet
Represents the type of product specification provided by the user to make the product terminology unique to an industry. A product specification type is associated with a product specification record type.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Label, Description |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | Name |
Feature Name: Metadata Name: ProductSpecificationType; Component Type in 1GP Package Manager UI: ProductSpecificationType
License Requirements
Only Salesforce Admins can set up the product specification type. To create and edit product specification type, the Product Catalog Management Designer permission set is required. To view product specification type, the Product Catalog Management Viewer permission set is required.
Documentation: Salesforce Help: Product Specification; Salesforce Help: Create Product Specification Type and Product Specification Record Type
Represents the relationship between industry-specific product specifications and the product record type.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Label, Record Type, Product Specification Type |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | Name, Is Commercial |
Feature Name: Metadata Name: ProductSpecificationRecType; Component Type in 1GP Package Manager UI: ProductSpecificationRecType
License Requirements
Only Salesforce admins can set up the product specification record type. To create and edit product specification record type, the Product Catalog Management Designer permission set is required. To view product specification record type, the Product Catalog Management Viewer permission set is required.
Documentation: Salesforce Help: Product Specification; Salesforce Help: Create Product Specification Type and Product Specification Record Type
Represents the metadata related to in-app guidance, which includes prompts and walkthroughs.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Feature Name: Metadata Name: Prompt; Component Type in 1GP Package Manager UI: Prompt
Considerations When Packaging
For 2GP packages, ensure that the scratch org definition file includes the GuidanceHubAllowed and Enablement features. See Build Your Own Scratch Org Definition File in the Salesforce DX Developer Guide.
License Requirements: Enablement Admin permission set and Enablement permission set license are required.
Documentation: Metadata API Developer Guide: Prompt; Salesforce Help: Guidelines for In-App Guidance in Managed Packages
Represents a specified create or update quick action for an object that then becomes available in the Chatter publisher.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Field Overrides |
| Both Package Developer and Subscriber Can Edit | All attributes except Field Overrides |
| Neither Package Developer or Subscriber Can Edit | None |
You can only modify managed package quick action layouts in Salesforce Setup. You can’t make changes using Metadata API.
Feature Name: Metadata Name: QuickAction; Component Type in 1GP Package Manager UI: Quick Action
Documentation: Salesforce Help: Quick Actions
Represents a recommendation strategy. Recommendation strategies are applications, similar to data flows, that determine a set of recommendations to be delivered to the client through data retrieval, branching, and logic operations.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | Yes, except templates |
Feature Name: Metadata Name: RecommendationStrategy; Component Type in 1GP Package Manager UI: Recommendation Strategy
Use Case
You can use this component to create personalized recommendations for end users. A recommendation displays contextually in Salesforce and prompts the end user to accept or reject the suggestion. When an end user accepts or rejects the recommendation, Salesforce automates a process, such as creating or updating a record.
Considerations When Packaging: When you package a recommendation strategy, you must manually add object dependencies, such as recommendation, recommendationReaction, and flow.
Usage Limits: An admin must select an object dependency for Recommendation and RecommendationReaction because object dependencies aren’t added automatically.
Documentation: Salesforce Help: Einstein Next Best Action
Represents configuration settings for the Actions & Recommendations, Action Launcher, and Bulk Action Panel components.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | Channel Configurations, Deployment Contexts, HasGuidedActions, HasRecommendations, Label, Recommendations, SelectableItems, ShouldLaunchActionOnReject |
| Neither Package Developer or Subscriber Can Edit | Name |
Feature Name: Metadata Name: RecordActionDeployment; Component Type in 1GP Package Manager UI: RecordAction Deployment
Considerations When Packaging: If the record action deployment component uses flows, quick actions, objects, or Next Best Action recommendations, include them in the package too.
Documentation: Metadata API Developer Guide: RecordActionDeployment; Salesforce Help: Create an Actions & Recommendations Deployment
Represents information about the data source for a record alert and the association with an expression set definition.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All other fields |
| Both Package Developer and Subscriber Can Edit | ExpressionSetDefinition, ExpressionSetObject, IsActive, RecordAlertDataSource |
| Neither Package Developer or Subscriber Can Edit | FullName, Metadata |
RecAlrtDataSrcExpSetDef: Metadata Name: RecAlrtDataSrcExpSetDef; Component Type in 1GP Package Manager UI: RecAlrtDataSrcExpSetDef
Documentation: RecAlrtDataSrcExpSetDef in in Financial Services Cloud Developer Guide..
Represents the metadata associated with a record type. Record types let you offer different business processes, picklist values, and page layouts to different users. Use this metadata type to create, update, or delete record type definitions for a custom object.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in both 1GP and 2GP packages. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
For more details on 2GP component removal, see Remove Metadata Components from Second-Generation Managed Packages.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Description, Record Type Label |
| Both Package Developer and Subscriber Can Edit | Active, Business Process |
| Neither Package Developer or Subscriber Can Edit | Name |
Feature Name: Metadata Name: RecordType; Component Type in 1GP Package Manager UI: Record Type
Considerations When Packaging
- If record types are included in the package, the subscriber’s org must support record types to install the package.
- When a new picklist value is installed, it’s associated with all installed record types according to the mappings specified by the developer. A subscriber can change this association.
- Referencing an object’s record type field in a report’s criteria—for example, Account Record Type—causes a dependency.
- Summarizing by an object’s record type field in a report’s criteria—for example, Account Record Type—causes a dependency.
- If an object’s record type field is included as a column in a report, and the subscriber’s org isn’t using record types on the object or doesn’t support record types, the column is dropped during installation.
- If you install a custom report type that includes an object’s record type field as a column, that column is dropped if the org doesn’t support record types or the object doesn’t have record types defined.
Documentation: Metadata API Developer Guide: RecordType
Represents a trusted URL that’s excluded from redirection restrictions when the redirectionWarning or redirectBlockModeEnabled field on the SessionSettings Metadata type is set to true.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | Url |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: RedirectWhitelistUrl; Component Type in 1GP Package Manager UI: RedirectWhitelistUrl
Use Case
Customers can use a Salesforce security setting to specify what happens when a user clicks a hyperlink that redirects to an untrusted URL outside the salesforce.com domain. The customer can choose to block these redirections or alert the user that the link is taking them outside the Salesforce domain. The URLs in RedirectWhiteListURL are considered trusted for the purpose of that security setting.
If the Experience Cloud site pages, Lightning Experience pages, or custom Visualforce pages in your package include hyperlinks to URLs outside the salesforce.com domain, use RedirectWhitelistURL to ensure that users can access those hyperlinks.
Considerations When Packaging
When you include a RedirectWhitelistURL in a package, the URLs are trusted for redirections across Salesforce. Because this component modifies the security of the org, we don’t recommend that you include RedirectWhitelistURL in packages. Instead, instruct customers to use the Trusted URLs for Redirects Setup page or the RedirectWhitelistURL Metadata API type to add the URLs to their allowlist as part of activating your package. If you choose to include RedirectWhitelistURL components in your package, disclose this change prominently in your package documentation to ensure that your customers are aware of the security modification.
Usage Limits: The RedirectWhiteListURL component is available in API version 48.0 and later.
Relationship to Other Components: This component can be used only in conjunction with an Aura or Lightning Web Runtime (LWR) page for an Experience Cloud site, a Lightning Page, or a , or a Visualforce Page..
Documentation: Metadata API Developer Guide: RedirectWhitelistUrl; Salesforce Help: Manage Redirections to External URLs; Metadata API Developer Guide: SecuritySettings]]
Represents the ReferencedDashboard object in CRM Analytics. A referenced dashboard stores information about an externally referenced dashboard.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Label |
| Both Package Developer and Subscriber Can Edit | Description |
| Neither Package Developer or Subscriber Can Edit | Application, Embed URL, Template Asset Source Name, Visibility |
Feature Name: Metadata Name: ReferencedDashboard
License Requirements: Enables Tableau Dashboards in CRM Analytics
Represents a registered external service, which provides an extension or integration.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | All attributes |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: RegisteredExternalService; Component Type in 1GP Package Manager UI: RegisteredExternalService
Documentation: Object Reference for the Salesforce Platform: RegisteredExternalService
Represents a definition of a graph that you can configure in your organization to traverse object hierarchies and record details, giving you a glimpse of how your business works.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All properties |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: RelationshipGraphDefinition; Component Type in 1GP Package Manager UI: RelationshipGraphDefinition
Documentation: Metadata API Developer Guide: RelationshipGraphDefinition
Represents a remote site setting.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes. Supported in 2GP packages only. |
| Component Has IP Protection | No |
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
For more details on 2GP component removal, see Remove Metadata Components from Second-Generation Managed Packages.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | All attributes except Remote Site Name |
| Neither Package Developer or Subscriber Can Edit | Remote Site Name |
Feature Name: Metadata Name: RemoteSiteSettings
Documentation: Metadata API Developer Guide: RemoteSiteSettings
Represents a custom report.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | No |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes. Supported in both 1GP and 2GP packages. |
| Component Has IP Protection | No |
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
For more details on 2GP component removal, see Remove Metadata Components from Second-Generation Managed Packages.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | All attributes except Report Unique Name |
| Neither Package Developer or Subscriber Can Edit | Report Unique Name |
Feature Name: Metadata Name: Report; Component Type in 1GP Package Manager UI: Report
Considerations When Packaging
If a report includes elements that can’t be packaged, those elements are dropped or downgraded, or the package creation fails. For example:
-
Hierarchy drill-downs are dropped from activity and opportunities reports.
-
Filters on unpackageable fields are automatically dropped (for example, in filters on standard object record types).
-
Package upload fails if a report includes filter logic on an unpackageable field (for example, in filters on standard object record types).
-
Lookup values on the Select Campaign field of standard campaign reports are dropped.
-
Reports are dropped from packages if they’ve been moved to a private folder or to the Unfiled Public Reports folder.
-
When a package is installed into an org that doesn’t have Chart Analytics 2.0:
- Combination charts are downgraded instead of dropped. For example, a combination vertical column chart with a line added is downgraded to a simple vertical column chart. A combination bar chart with more bars is downgraded to a simple bar chart.
- Unsupported chart types, such as donut and funnel, are dropped.
Documentation: Metadata API Developer Guide: Report
Represents the metadata associated with a custom report type. Custom report types allow you to build a framework from which users can create and customize reports.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in 2GP packages only. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All attributes except Development Status and Report Type Name |
| Both Package Developer and Subscriber Can Edit | Development Status |
| Neither Package Developer or Subscriber Can Edit | Report Type Name |
Feature Name: Metadata Name: ReportType; Component Type in 1GP Package Manager UI: Custom Report Type
Considerations When Packaging
A developer can edit a custom report type in a managed package after it’s released, and can add new fields. Subscribers automatically receive these changes when they install a new version of the managed package. However, developers can’t remove objects from the report type after the package is released. If you delete a field in a custom report type that’s part of a managed package, and the deleted field is part of bucketing or used in grouping, an error message appears.
Documentation: Metadata API Developer’s Guide: ReportType
Represents a process created in Service Process Studio and its associated attributes.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All other fields |
| Both Package Developer and Subscriber Can Edit | Status, Description, ServiceProcessAttribute, ServiceProcessDependency, ServiceProcessItemGroup |
| Neither Package Developer or Subscriber Can Edit | FullName |
ServiceProcess: Metadata Name: ServiceProcess; Component Type in 1GP Package Manager UI: ServiceProcess
Documentation:ServiceProcess in Metadata API Developer Guide..
Represents a Slack app.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | Yes |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | AppKey, AppToken, ClientKey, ClientSecret, SigningSecret, BotScopes, UserScopes, Config, IntegrationUser, DefaultUser |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: SlackApp; Component Type in 1GP Package Manager UI: Slack App
Use Case: Represents configuration of a Slack application
License Requirements: Connect to Slack Permission
Relationship to Other Components: Slack apps reference handlers (Apex classes) and view definition components.
Documentation: Apex SDK for Slack Developer Guide
Represents the grouping of individual catalog items in Service Catalog.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | ParentCategory |
| Both Package Developer and Subscriber Can Edit | SortOrder, IsActive, Image |
| Neither Package Developer or Subscriber Can Edit | FullName |
Feature Name: Metadata Name: SvcCatalogCategory; Component Type in 1GP Package Manager UI: Service Catalog Category
Use Case: Group your service catalog items together by associating them with a catalog category.
License Requirements: Service Catalog Add-On License; Service Catalog Builder Permission Set
Post Install Steps: Categories appear in the Service Catalog user UI only if they contain active items.
Documentation: Salesforce Help: Create a Catalog Category
Represents an eligibility rule that determines if a Service Catalog user has access to a catalog item.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All fields |
| Both Package Developer and Subscriber Can Edit | All fields |
| Neither Package Developer or Subscriber Can Edit | FullName |
Feature Name: Metadata Name: SvcCatalogFilterCriteria; Component Type in 1GP Package Manager UI: Service Catalog Item Definition
Use Case: Use the filter criteria to filter on catalog items.
License Requirements: Service Catalog Add-On License; Service Catalog Builder Permission Set
Relationship to Other Components: Service catalog filter criteria are related to a catalog item definition.
Documentation: Salesforce Help: Create a Catalog Category
Represents the entity associated with a specific, individual service available in the Service Catalog.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Flow |
| Both Package Developer and Subscriber Can Edit | Status, Description, InternalNotes, Image, IsFeatured, IsPublic |
| Neither Package Developer or Subscriber Can Edit | FullName |
Feature Name: Metadata Name: SvcCatalogItemDef; Component Type in 1GP Package Manager UI: Service Catalog Item Definition
Use Case: Create a service catalog item that employees can request in the Service Catalog user UI.
Considerations When Packaging: Subscribers can’t change properties stored in the catalog item fulfillment flow unless they make a clone of the item and its related flow.
License Requirements: Service Catalog Add-On License; Service Catalog Builder Permission Set
Usage Limits: The org can have only 1000 SvcCatalogItemDefs, including those items installed from a managed package.
Post Install Steps: If the item was installed in draft mode, it must be activated before employees can see it in the Service Catalog user UI.
Relationship to Other Components: SvcCatalogItemDef requires a relationship with a catalog category.
Documentation: Salesforce Help: Create a Catalog Item
Represents the flow associated with a specific catalog item in the Service Catalog.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Description, Flow, Icon |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | FullName |
Feature Name: Metadata Name: SvcCatalogFulfillmentFlow; Component Type in 1GP Package Manager UI: Service Catalog Fulfillment Flow
Use Case
Make a screen flow available in the Service Catalog builder. You can also use SvcCatalogFulfillmentFlow metadata to describe the flow and its inputs in the builder, enabling a clicks-not-code experience for providing inputs to the flow.
License Requirements: Service Catalog Add-On License; Service Catalog Builder Permission Set
Post Install Steps: Fulfillment flows appear in the Service Catalog builder only if the underlying screen flow is active in the org.
Relationship to Other Components: SvcCatalogFulfillmentFlow must be related to a FlowDefinition.; SvcCatalogFulfillmentFlow can have related SvcCatalogFulfillFlowItem records.
Documentation: Salesforce Help: Catalog Item Fulfillment Flows
Represents the setup object that contains the mapping between the Stationary Asset Environmental Source record type and internal enums. You can primarily use this object for calculations across different record types.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All attributes |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: StnryAssetEnvSrcCnfg; Component Type in 1GP Package Manager UI: Stationary Asset Environmental Source Record Type Configuration
Use Case: You can use this component to build on top of the current Net Zero Cloud data model and carbon accounting capability to create new stationary asset types for end users.
License Requirements
- Net Zero Cloud Growth license or Net Zero Cloud Starter license
- Net Zero Cloud Manager permissions set
Post Install Steps
Enable these org settings:
- Net Zero Cloud
- Manage Carbon Accounting
Documentation
- Salesforce Help: Set Up Record Types for Net Zero Cloud
- Salesforce Help: Create a Stationary Asset Environmental Source Record
Represents a static resource file, often a code library in a ZIP file.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in 1GP and 2GP packages. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
For more details on 2GP component removal, see Remove Metadata Components from Second-Generation Managed Packages.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Description, File |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | Name |
Feature Name: Metadata Name: StaticResource; Component Type in 1GP Package Manager UI: Static Resource
Documentation: Metadata API Developer Guide: StaticResource
Represents the connection information specific to Web and Mobile Connectors.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | AppIdentifier, DataConnectorType, StreamingAppDataConnectorType |
Feature Name: Metadata Name: StreamingAppDataConnector
Use Case
The StreamingAppDataConnector is included in a package when you add a data stream (DataStreamDefinition). You need this component if you want to package a web or mobile data stream.
Post Install Steps
The package doesn’t contain any connection information. The package subscriber must create the connection in their subscriber org and then select that connection when they deploy the data kit.
Documentation: Data Cloud Reference Guide: Capture Web Interactions; Data Cloud Reference Guide: Integrate your Mobile Applications
Represents information about the additional unit of measure values defined by a customer.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All attributes |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: SustainabilityUom; Component Type in 1GP Package Manager UI: Sustainability Unit of Measure
License Requirements
- Net Zero Cloud Growth license or Net Zero Cloud Starter license
- Net Zero Cloud Manager permissions set
Post Install Steps
Enable these org settings:
- Net Zero Cloud
- Manage Carbon Accounting
Documentation
- Salesforce Help: Create Custom Units of Measure
Represents information about the unit of measure conversion for the additional fuel types defined by a customer.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All attributes |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: SustnUomConversion; Component Type in 1GP Package Manager UI: Sustainability Unit of Measure Conversion
License Requirements
- Net Zero Cloud Growth license or Net Zero Cloud Starter license
- Net Zero Cloud Manager permissions set
Post Install Steps
Enable these org settings:
- Net Zero Cloud
- Manage Carbon Accounting
Documentation
- Salesforce Help: Create a Unit of Measure Conversion for a Custom Fuel Type
Represents the container that stores the details of a timeline configuration. You can use this resource with Salesforce objects to see their records’ related events in a linear time-sorted view.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in 1GP packages only. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Label, FullName, Definition, IsActive |
| Both Package Developer and Subscriber Can Edit | Label, FullName, Definition, IsActive |
| Neither Package Developer or Subscriber Can Edit | BaseObject |
Feature Name: Metadata Name: TimelineObjectDefinition; Component Type in 1GP Package Manager UI: Timeline Object Definition
Use Case: Provides out-of-the-box Timeline object definitions.
License Requirements
Industries Health Cloud or any other License that has Timeline Permission enabled in them.
Legacy Component: There’s a legacy Timeline component in the Health Cloud Package which is being deprecated in favor of this component.
Documentation: Health Cloud Developer Guide: TimelineObjectDefinition
Represents a template for creating time sheets in Field Service.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in 1GP packages only. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Feature Name: Metadata Name: TimesheetTemplate
Add translations to your managed packages.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All attributes |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: Translation
Relationship to Other Components
When you add this component to a first-generation managed package, the
Custom Object Translation component is automatically added to your package.
component is automatically added to your package.
For details on how subscribers can override translations after installing a package, see Override Translations in Second-Generation Managed Packages and Unlocked Packages in the Salesforce DX Developer Guide.
Enable Language Extension Packages in Dev Hub to create language extension packages that contain translations of components in other packages.
This feature is a Beta Service. Customer may opt to try such Beta Service in its sole discretion. Any use of the Beta Service is subject to the applicable Beta Services Terms provided at Agreements and Terms.
Language extension packages can only contain translations: Translations and CustomObjectTranslations. If a base package includes components that can’t be translated, those components aren’t included when you create a language extension package.
To remove translations delivered by a package extension, uninstall the base package and all related extensions, then reinstall the base package and any other desired extensions. Otherwise, translations delivered by the extension remain until you uninstall all packages with that namespace.
Represents the admin-created configuration of the object relation UI component.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Reference Name, Developer Name, IsActive |
| Both Package Developer and Subscriber Can Edit | IsActive |
| Neither Package Developer or Subscriber Can Edit | ContextObject |
Feature Name: Metadata Name: UIObjectRelationConfig; Component Type in 1GP Package Manager UI: UI Object Relation Configuration
Use Case: Provides out-of-the-box relationship card configuration in Health Cloud.
License Requirements: Industries Health Cloud, Industries Insurance, or Industries Automotive licenses
Documentation: Salesforce Help: Set Up Provider Relationship Cards to Show Practitioner Information
Represents a user access policy.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
To confirm whether this component is available in managed 1GP, managed 2GP, or both package types, see Metadata Coverage Report.
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Description, Name, Label, User Criteria Filters, Actions |
| Both Package Developer and Subscriber Can Edit | Order (only subscriber editable), Status (only subscriber editable), Trigger Type (only subscriber editable) |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: UserAccessPolicy; Component Type in 1GP Package Manager UI: User Access Policy
Usage Limits
User access policies have their status set to Design when installed and can be activated by the subscriber. Subscribers can have up to 200 active policies at one time.
Post Install Steps: The subscriber can activate user access policies so that they run automatically when a user record matching the policy’s user criteria is created, updated, or both.
Documentation: Metadata API Developer Guide: UserAccessPolicy; Salesforce Help: User Access Policies
Represents a validation rule, which is used to verify that the data a user enters in a record is valid and can be saved.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in both 1GP and 2GP packages. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
For more details on 2GP component removal, see Remove Metadata Components from Second-Generation Managed Packages.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Description, Error Condition Formula, Error Location, Error Message |
| Both Package Developer and Subscriber Can Edit | Active |
| Neither Package Developer or Subscriber Can Edit | Rule Name |
Feature Name: Metadata Name: ValidationRule; Component Type in 1GP Package Manager UI: Validation Rule
Considerations When Packaging: For custom objects that are packaged, any associated validation rules are implicitly packaged as well.
Documentation: Metadata API Developer Guide: ValidationRule
Represents the setup object that contains the mapping between the Vehicle Asset Emissions Source record type and internal enums. You can primarily use this object for calculations across different record types.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | All attributes |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: VehicleAssetEmssnSrcCnfg; Component Type in 1GP Package Manager UI: Vehicle Asset Emissions Source Record Type Configuration
Use Case: You can use this component to build on top of the current Net Zero Cloud data model and carbon accounting capability to create new vehicle asset types for end users.
License Requirements
- Net Zero Cloud Growth license or Net Zero Cloud Starter license
- Net Zero Cloud Manager permissions set
Post Install Steps
Enable these org settings:
- Net Zero Cloud
- Manage Carbon Accounting
Documentation
- Salesforce Help: Set Up Record Types for Net Zero Cloud
- Salesforce Help: Create a Vehicle Asset Emissions Source Record
Represents a view definition on a Slack app.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | TargetType, Content, Description |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | None |
Feature Name: Metadata Name: ViewDefinition; Component Type in 1GP Package Manager UI: View Definition
Use Case: Represents a view within a Slack application
License Requirements: Connect to Slack Permission
Relationship to Other Components: View definitions are referenced by Slack apps.
Documentation: Apex SDK for Slack Developer Guide
Represents an external video provider configuration, which relays events from Salesforce to the provider.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | ComprehendServiceType, ExperienceCloudSiteUrl, ExternalRoleIdentifier, Label, MessagingRegion, NamedCredential, StorageBucketName, UsageType, VideoCallApptTypeValue, VideoControlRegion, VisitRegion |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | Name |
Feature Name: Metadata Name: VirtualVisitConfig
Documentation: Salesforce Help: Virtual Care
Represents a Visualforce component.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in both 1GP and 2GP packages. |
| Component Has IP Protection | Yes |
If a developer removes a public Visualforce component from a new version of your 1GP managed package, the component is removed from the subscriber’s org upon upgrade. If the Visualforce component is global, it remains in the subscriber org until the administrator deletes it.
For 2GP packages, Visualforce components are hard deleted, and only components that aren’t marked as global can be removed from a package.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
For more details on 2GP component removal, see Remove Metadata Components from Second-Generation Managed Packages.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | API Version, Description, Label, Markup |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | Name |
Feature Name: Metadata Name: ApexComponent
Documentation: Visualforce Components
Represents a Visualforce page.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in 1GP and 2GP packages. |
| Component Has IP Protection | No |
If a developer removes a public Visualforce component from a new version of your package, the component is removed from the subscriber’s org upon upgrade. If the Visualforce component is global, it remains in the subscriber org until the administrator deletes it.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
For more details on 2GP component removal, see Remove Metadata Components from Second-Generation Managed Packages.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | API Version, Description, Label, Markup |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | Name |
Feature Name: Metadata Name: ApexPage; Component Type in 1GP Package Manager UI: Visualforce Page
A collection of CRM Analytics assets.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Folder, Items, Label |
| Both Package Developer and Subscriber Can Edit | Color, Description, Shares |
| Neither Package Developer or Subscriber Can Edit | Collection Type |
Feature Name: Metadata Name: WaveAnalyticAssetCollection; Component Type in 1GP Package Manager UI: Wave Analytic Asset Collection
Use Case: Represents a collection of CRM Analytics assets.
Considerations When Packaging
Analytics assets should be installed in subscriber orgs via Analytics Templates. The template framework supports the data sync and orchestration needed for visualization assets, along with customizations for each org. For more information, see the
Analytics Templates Developer Guide.
.
License Requirements: Manage CRM Analytics
Documentation: Salesforce Help: Curate and Share Insights with Collections
A CRM Analytics application.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Label |
| Both Package Developer and Subscriber Can Edit | Asset Icon, Description, Shares |
| Neither Package Developer or Subscriber Can Edit | Folder, Template Origin, Template Version |
Feature Name: Metadata Name: WaveApplication
Considerations When Packaging
Analytics assets should be installed in subscriber orgs via Analytics Templates. The template framework supports the data sync and orchestration needed for visualization assets, along with customizations for each org. For more information, see the
Analytics Templates Developer Guide.
.
License Requirements: Manage CRM Analytics
A CRM Analytics dashboard component.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Label |
| Both Package Developer and Subscriber Can Edit | Description |
| Neither Package Developer or Subscriber Can Edit | Application, Template Asset Source Name |
Feature Name: Metadata Name: WaveComponent
Considerations When Packaging
Analytics assets should be installed in subscriber orgs via Analytics Templates. The template framework supports the data sync and orchestration needed for visualization assets, along with customizations for each org. For more information, see the
Analytics Templates Developer Guide.
.
License Requirements: Manage CRM Analytics
A CRM Analytics data prep dataflow.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Label |
| Both Package Developer and Subscriber Can Edit | Description |
| Neither Package Developer or Subscriber Can Edit | Application, Dataflow Type |
Feature Name: Metadata Name: WaveDataflow
Considerations When Packaging
Analytics assets should be installed in subscriber orgs via Analytics Templates. The template framework supports the data sync and orchestration needed for visualization assets, along with customizations for each org. For more information, see the
Analytics Templates Developer Guide.
.
License Requirements: Manage CRM Analytics
A CRM Analytics dashboard.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Label |
| Both Package Developer and Subscriber Can Edit | Description |
| Neither Package Developer or Subscriber Can Edit | Application, Date Version, Template Asset Source Name |
Feature Name: Metadata Name: WaveDashboard
Considerations When Packaging
Analytics assets should be installed in subscriber orgs via Analytics Templates. The template framework supports the data sync and orchestration needed for visualization assets, along with customizations for each org. For more information, see the
Analytics Templates Developer Guide.
.
License Requirements: Manage CRM Analytics
A CRM Analytics dataset.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Label |
| Both Package Developer and Subscriber Can Edit | Description |
| Neither Package Developer or Subscriber Can Edit | Application, Template Asset Source Name, Type |
Feature Name: Metadata Name: WaveDataset
Considerations When Packaging
Analytics assets should be installed in subscriber orgs via Analytics Templates. The template framework supports the data sync and orchestration needed for visualization assets, along with customizations for each org. For more information, see the
Analytics Templates Developer Guide.
.
License Requirements: Manage CRM Analytics
A CRM Analytics lens.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Label |
| Both Package Developer and Subscriber Can Edit | Description, Visualization Type |
| Neither Package Developer or Subscriber Can Edit | Application, Datasets, Template Asset Source Name |
Feature Name: Metadata Name: WaveLens
Considerations When Packaging
Analytics assets should be installed in subscriber orgs via Analytics Templates. The template framework supports the data sync and orchestration needed for visualization assets, along with customizations for each org. For more information, see the
Analytics Templates Developer Guide.
.
License Requirements: Manage CRM Analytics
A CRM Analytics data prep recipe.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Label |
| Both Package Developer and Subscriber Can Edit | Description, Security Predicate, Target Dataset Alias |
| Neither Package Developer or Subscriber Can Edit | Application, Dataflow, Format, Template Asset Source Name |
Feature Name: Metadata Name: Wave Recipe
Considerations When Packaging
Analytics assets should be installed in subscriber orgs via Analytics Templates. The template framework supports the data sync and orchestration needed for visualization assets, along with customizations for each org. For more information, see the
Analytics Templates Developer Guide.
.
License Requirements: Manage CRM Analytics
A CRM Analytics template bundle.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Label |
| Both Package Developer and Subscriber Can Edit | Asset Icon, Description |
| Neither Package Developer or Subscriber Can Edit | Asset Version, Template Type |
Feature Name: Metadata Name: WaveTemplateBundle
Considerations When Packaging
Analytics assets are installed in subscriber orgs via Analytics Templates using the WaveTemplateBundle. The template framework supports the data sync and orchestration needed for visualization assets, along with customizations for each org. For more information, see the
Analytics Templates Developer Guide.
.
License Requirements: Manage CRM Analytics
The extended metadata for CRM Analytics dataset fields and their formatting for dashboards and lenses.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | Yes |
| Package Developer Can Remove Component From Package | Yes |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Label |
| Both Package Developer and Subscriber Can Edit | Dates, Dimensions, Measures, Organizations, Wave Visualization |
| Neither Package Developer or Subscriber Can Edit | Application, Dataset, Dataset Connector, Dataset Fully Qualified Name, Origin, Type |
Feature Name: Metadata Name: WaveXmd
Considerations When Packaging
Analytics assets should be installed in subscriber orgs via Analytics Templates. The template framework supports the data sync and orchestration needed for visualization assets, along with customizations for each org. For more information, see the
Analytics Templates Developer Guide.
.
License Requirements: Manage CRM Analytics
Represents a configuration for creating commerce stores.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | No |
| Component Has IP Protection | No |
Feature Name: Metadata Name: WebStoreTemplate
Documentation: Metadata API Developer Guide: WebStoreTemplate
WorkflowAlert represents an email alert associated with a workflow rule.
When creating a new package or package version, use the Flow component instead of Workflow components. If your managed package already includes Workflow components, come up with a plan to migrate to use Flow.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Both protected and non-protected components can be removed. |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | Additional Emails, Email Template, From Email Address, Recipients |
| Neither Package Developer or Subscriber Can Edit | Description |
Feature Name: Metadata Name: Workflow
- Salesforce prevents you from uploading workflow alerts that have a public group, partner user, or role recipient. Change the recipient to a user before uploading your app. During installation, Salesforce replaces that user with the user installing the app, and the installer can customize it as necessary.
- You can package workflow rules and associated workflow actions, such as email alerts and field updates. However, any time-based triggers aren’t included in the package. Notify your installers to set up any time-based triggers that are essential to your app.
- References to a specific user in workflow actions, such as the email recipient of a workflow email alert, are replaced by the user installing the package. Sometimes workflow actions referencing roles, public groups, account team, opportunity team, or case team roles aren’t uploaded.
- References to an org-wide address, such as the From email address of a workflow email alert, are reset to Current User during installation.
This component can be marked as protected. For more details, see Protected Components in the First-Generation Managed Packaging Developer Guide.
WorkflowFieldUpdate represents a workflow field update.
When creating a new package or package version, use the Flow component instead of Workflow components. If your managed package already includes Workflow components, come up with a plan to migrate to use Flow.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in both 1GP and 2GP packages. Both protected and non-protected components can be removed. |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Description, Field Value, Formula Value |
| Both Package Developer and Subscriber Can Edit | Lookup |
| Neither Package Developer or Subscriber Can Edit | Name |
Feature Name: Metadata Name: Workflow; Component Type in 1GP Package Manager UI: Workflow Field Update
- Salesforce prevents you from uploading workflow field updates that change an Owner field to a queue. Change the updated field value to a user before uploading your app. During installation, Salesforce replaces that user with the user installing the app, and the installer can customize it as necessary.
- Salesforce prevents you from uploading workflow rules, field updates, and outbound messages that reference a record type on a standard or managed-installed object.
- You can package workflow rules and associated workflow actions, such as email alerts and field updates. However, any time-based triggers aren’t included in the package. Notify your installers to set up any time-based triggers that are essential to your app.
This component can be marked as protected. For more details, see Protected Components in the First-Generation Managed Packaging Developer Guide.
WorkflowKnowledgePublish represents Salesforce Knowledge article publishing actions and information.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes, if protected |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Action, Description, Unique Name |
| Both Package Developer and Subscriber Can Edit | None |
| Neither Package Developer or Subscriber Can Edit | Object Name |
Feature Name: Metadata Name: WorkflowKnowledgePublish; Component Type in 1GP Package Manager UI: Knowledge Action
Considerations When Packaging
WorkflowKnowledgePublish can only be installed in Salesforce Classic orgs with Knowledge enabled.
WorkflowKnowledgePublish includes the article type *__kav, which is not supported by Lightning Knowledge.
If you try to install WorkflowKnowledgePublish into an org with Lightning Knowledge enabled, this message is displayed: When Lightning Knowledge is enabled, you can’t add an article type.
License Requirements: Salesforce Classic orgs with Knowledge enabled can use this package.
Documentation: Salesforce Help: Create Workflow Actions for Knowledge
WorkflowOutboundMessage represents an outbound message associated with a workflow rule.
When creating a new package or package version, use the Flow component instead of Workflow components. If your managed package already includes Workflow components, come up with a plan to migrate to use Flow.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in both 1GP and 2GP packages. Both protected and non-protected components can be removed. |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Description, Endpoint URL, Fields to Send, Send Session ID |
| Both Package Developer and Subscriber Can Edit | User to Send As |
| Neither Package Developer or Subscriber Can Edit | Name |
Feature Name: Metadata Name: Workflow; Component Type in 1GP Package Manager UI: Workflow Outbound Message
Salesforce prevents you from uploading workflow rules, field updates, and outbound messages that reference a record type on a standard or managed-installed object.
This component can be marked as protected. For more details, see Protected Components in the First-Generation Managed Packaging Developer Guide.
This metadata type represents a workflow rule.
When creating a new package or package version, use the Flow component instead of Workflow components. If your managed package already includes Workflow components, come up with a plan to migrate to use Flow.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in both 1GP and 2GP packages. |
| Component Has IP Protection | No |
When a package developer removes this component from a package, the component remains in a subscriber’s org after they install the upgraded package. The admin of the subscriber’s org can then delete the component, if desired.
Removing components from managed 1GP or 2GP packages requires approval from Salesforce. To request access to the component removal feature, log a support case in the Salesforce Partner Community.
For more details on 2GP component removal, see Remove Metadata Components from Second-Generation Managed Packages.
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | Description, Evaluation Criteria, Rule Criteria |
| Both Package Developer and Subscriber Can Edit | Active |
| Neither Package Developer or Subscriber Can Edit | Rule Name |
-
Feature Name:
Metadata Name: Workflow
Component Type in 1GP Package Manager UI: Workflow Rule
- Salesforce prevents you from uploading workflow rules, field updates, and outbound messages that reference a record type on a standard or managed-installed object.
- Developers can associate or disassociate workflow actions with a workflow rule at any time. These changes, including disassociation, are reflected in the subscriber’s org upon install. In managed packages, a subscriber can’t disassociate workflow actions from a workflow rule if it was associated by the developer.
- On install, all workflow rules newly created in the installed or upgraded package, have the same activation status as in the uploaded package.
- You can’t package workflow rules with time triggers.
This metadata type references an assigned workflow task.
When creating a new package or package version, use the Flow component instead of Workflow components. If your managed package already includes Workflow components, come up with a plan to migrate to use Flow.
Manageability rules determine whether you, or the subscriber, can edit or remove components after the package version is created and promoted to the released state.
| Rule | Value |
|---|---|
| Packageable In: | Second-Generation Managed Packages (2GP), First-Generation Managed Packages (1GP) |
| Component Is Updated During Package Upgrade | Yes |
| Subscriber Can Delete Component From Org | No |
| Package Developer Can Remove Component From Package | Yes. Supported in both 1GP and 2GP packages. Both protected and non-protected components can be removed. |
| Component Has IP Protection | No |
Certain properties on metadata components are editable after the managed package is installed.
| Category | Properties |
|---|---|
| Only Package Developer Can Edit | None |
| Both Package Developer and Subscriber Can Edit | Assign To, Comments, Due Date, Priority, Record Type, Status |
| Neither Package Developer or Subscriber Can Edit | Subject |
Feature Name: Metadata Name: Workflow; Component Type in 1GP Package Manager UI: Workflow Task
- Salesforce prevents you from uploading workflow tasks that are assigned to a role. Change the Assigned To field to a user before uploading your app. During installation, Salesforce replaces that user with the user installing the app, and the installer can customize it as necessary.
- This component can be marked as protected. For more details, see Protected Components in the First-Generation Managed Packaging Developer Guide.