346
Metadata Types
EclairGeoData
LeadContactToLeadDuplicate_matching_ruleContactFirstNameFirstNameLastNameLastNameLeadtrueContactToLeadDuplicateAlertReportAlertReportEnforceSharingRules1
The following is an example package.xml that references the previous definition.
ContactToLeadDuplicateDuplicateRule38.0
EclairGeoData
Represents a Wave custom map chart. Custom maps are user-defined maps that are uploaded to Wave and are used just as standard
maps are. Custom maps are accessed in Wave from the list of maps available with the map chart type.
File Suffix and Directory Location
EclairGeoData components have the suffix geodata and are stored in the eclair folder.
Version
EclairGeoData components are available in API version 39.0 and later.
347
Metadata Types
EclairGeoData
Fields
Field Name
Field Type
Description
maps
EclairMap[]
A list of EclairMap objects. Each EclairMap object specifies the bounding
box (if any) and the map name that appears in the user interface.
masterLabel
string
Required. Master label for this object. This display value is the internal
label that is not translated.
EclairMap
Field Name
Field Type
Description
boundingBoxBottom
double
When bounding-box coordinates are used, this contains the bottom coordinate.
boundingBoxLeft
double
When bounding-box coordinates are used, this contains the left side coordinate.
boundingBoxRight
double
When bounding-box coordinates are used, this contains the right side
coordinate.
boundingBoxTop
double
When bounding-box coordinates are used, this contains the top coordinate.
mapLabel
string
Required. The user-interface name of the map. This name appears in the maps
list for the map chart in Wave.
mapName
string
Required. Label for this object. This display value is the internal label that is not
translated.
projection
string
Required. The type of map projection used to create the map. Valid values are:
• Equirectangular
• Mercator
• AlbersUSA
Declarative Metadata Sample Definition
The following is an example of an EclairGeoData component:
0.0100.0100.00.0WorldMap0 LabelWorldMap0Equirectangular
348
Metadata Types
EmailTemplate
1.0101.0101.01.0WorldMap1 LabelWorldMap1MercatorWorldMapGeoDataToCreate Label
The following is an example package.xml that references the previous definition.
*EclairGeoData39.0
EmailTemplate
Represents an email template. This type extends the MetadataWithContent metadata type and inherits its content and fullName
fields.
File Suffix and Directory Location
The file suffix is .email for the template file. The accompanying metadata file is named EmailTemplateName-meta.xml.
EmailTemplate components are stored in the email folder in the corresponding package directory. For example, for an email template
named SampleTemplate in the sampleFolder folder, there’s a SampleTemplate-meta.xml in the email/sampleFolder
of the package.
Retrieving Email Templates
You can’t use the wildcard (*) symbol with email templates in package.xml. To retrieve the list of email templates for populating
package.xml with explicit names, call listMetadata() and pass in EmailTemplate as the type.
The following example shows folders in package.xml:
MyDBFolder/MyDBNameDashboard
349
Metadata Types
EmailTemplate
MyDocumentFolder/MyDocumentNameDocumentunfiled$public/MarketingProductInquiryResponseunfiled$public/SalesNewCustomerEmailEmailTemplateMyReportFolder/MyReportNameReport39.0
Version
Email templates are available in API version 12.0 and later.
Fields
This metadata type contains the following fields:
Field Name
Field Type
Description
apiVersion
double
The API version if this is a Visualforce email template. Every Visualforce email
template has an API version specified at creation. This field is available in API
version 16.0 and later.
attachedDocuments string[]
A list of references to documents in your organization. These documents are
included as attachments in the email template. Each document is referenced
by its path, for example MyFolder/MyDocument.txt.
attachments
Attachment[]
A list of attachments for the email template.
available
boolean
Required. Indicates whether this template is offered to users when sending an
email (true) or not (false).
content
base64Binary
Content of the email template. Base 64-encoded binary data. Prior to making
an API call, client applications must encode the binary attachment data as base64.
Upon receiving a response, client applications must decode the base64 data to
binary. This conversion is usually handled for you by a SOAP client. This field
contains:
• Binary content of the email body if type is set to text
• HTML email content if type is set to html
• HTML body if type is set to custom
• Visualforce body if type is set to visualforce
This field is inherited from the MetadataWithContent component.
350
Metadata Types
EmailTemplate
Field Name
Field Type
Description
description
string
The email template description. This can be useful to describe the reason for
creating the template.
encodingKey
Encoding (enumeration
of type string)
Required. The default encoding setting is Unicode: UTF-8. Change it if your
template requires data in a different format.
Valid values include:
• UTF-8—Unicode (UTF-8)
• ISO-8859-1—General US & Western Europe (ISO-8859–1, ISO-LATIN-1)
• Shift_JIS—Japanese (Shift-JIS)
• ISO-2022-JP—Japanese (JIS)
• EUC-JP—Japanese (EUC-JP)
• x-SJIS_0213—Japanese (Shift-JIS_2004)
• ks_c_5601-1987—Korean (ks_c_5601-1987)
• Big5—Traditional Chinese (Big5)
• GB2312—Simplified Chinese (GB2312)
• Big5-HKSCS—Traditional Chinese Hong Kong (Big5–HKSCS)
fullName
string
The email template developer name used as a unique identifier for API access.
The fullName can contain only underscores and alphanumeric characters.
It must be unique, begin with a letter, not include spaces, not end with an
underscore, and not contain two consecutive underscores. If this field contained
characters before version 14.0 that are no longer allowed, the characters were
stripped out of this field, and the previous value of the field was saved in the
name field. This field is inherited from the Metadata component.
letterhead
string
The letterhead name associated with this email template. Only available when
type is set to html.
name
string
Required. Email template name. The list of characters allowed in the fullName
field has been reduced for versions 14.0 and later. This field contains the value
contained in the fullName field before version 14.0.
packageVersions
PackageVersion[]
The list of package versions for any managed packages containing components
that are referenced by this email template. This field is only relevant for Visualforce
email templates.
For more information about managed packages, see the Force.com Quick
Reference for Developing Packages. For more information about package
versions, see “About Package Versions” in the Salesforce online help. This field
is available in API version 16.0 and later.
style
EmailTemplateStyle
(enumeration of type
string)
Required. The style of the template. This field is only available when type is set
to html.
Valid style values include:
• none
• freeForm
351
Metadata Types
Field Name
EmailTemplate
Field Type
Description
• formalLetter
• promotionRight
• promotionLeft
• newsletter
• products
subject
string
The email subject.
textOnly
string
The text of the email body if type is set to html or custom.
type
EmailTemplateType
(enumeration of type
string)
Required. The email template type.
The valid values are:
• text -all users can create or change text email templates.
• html - administrators and users with the “Edit HTML Templates” permission
can create HTML email templates based on a letterhead.
• custom - administrators and users with the “Edit HTML Templates”
permission can create custom HTML email templates without using a
letterhead. You must either know HTML or obtain the HTML code to insert
in your email template.
• visualforce - administrators and users with the “Customize Application”
permission can create email templates using Visualforce.
Attachment
Attachment represents an email attachment.
Field
Field Type
Description
content
base64Binary
Required. The attachment content. Base 64-encoded binary
data. Prior to making an API call, client applications must encode
the binary attachment data as base64. Upon receiving a
response, client applications must decode the base64 data to
binary. This conversion is usually handled for you by a SOAP
client.
name
string
Required. The attachment file name.
Declarative Metadata Sample Definition
A sample XML definition of an email template is shown below.
trueSample Email Template
352
Metadata Types
EntitlementProcess
ISO-8859-1Sample Email TemplateSample email subjectYour case has been resolved.custom
SEE ALSO:
Letterhead
EntitlementProcess
Represents the settings for an entitlement process. This type extends the Metadata metadata type and inherits its fullName field.
File Suffix and Directory Location
Entitlement process values are stored in files in the entitlementProcesses directory. Each file has the name of a process and
the suffix .entitlementProcess. Each file contains one entitlement process or, if entitlement versioning is enabled, one version
of an entitlement process. The name of the file is the name of the entitlement process with the version appended to the end, if applicable
(for example, an entitlement process named ”gold_support” might have the file name “gold_support_v2.entitlementProcess”). This file
name corresponds to the slaProcess.NameNorm field exposed through the SOAP API. This file name is distinct from the name
field, which represents what displays in the user interface and, if versioning is enabled, might be shared among multiple versions of the
same entitlement process.
Version
Entitlement processes are available in API version 27.0 and later.
Fields
Field Name
Field Type
Description
active
boolean
Indicates whether the entitlement process is active
(true) or not (false).
businessHours
string
The business hours that apply to the entitlement process.
This field is available in API version 30.0 and later.
description
string
The description of the entitlement process.
entryStartDateField
string
For milestone processes on which a case enters the
process based on a custom date/time field on the case,
specifies which date and time are used. Valid values are:
• SlaStartDate (entitlement process start date)
• CreatedDate (date case was opened)
353
Metadata Types
Field Name
EntitlementProcess
Field Type
Description
• ClosedDate (date case was closed)
• LastModifiedDate (date case was last modified)
• StopStartDate (date case was stopped)
exitCriteriaBooleanFilter string
For milestone processes on which a case exits the process
when custom criteria are met, and for which filter logic
is added, specifies that logic.
exitCriteriaFilterItems FilterItem[]
For milestone processes on which a case exits the process
when custom criteria are met, specifies those criteria.
exitCriteriaFormula
string
For milestone processes on which a case exits the process
when a custom formula evaluates to true, specifies that
formula.
isVersionDefault
boolean
Indicates whether the entitlement process is the default
version (true) or not (false).
This field is available in API version 28.0 and later.
milestones
EntitlementProcessMilestoneItem[]
Represents a milestone on the entitlement process.
name
string
The name of the entitlement process as it displays in the
user interface.
SObjectType
string
Indicates the type of record that the entitlement process
can run on.
versionMaster
string
Identifies the sequence of versions to which this
entitlement process belongs. This field’s contents can be
any value as long as it is identical among all versions of
the entitlement process.
This field is available in API version 28.0 and later.
versionNotes
string
The description of the entitlement process version.
This field is available in API version 28.0 and later.
versionNumber
int
The version number of the entitlement process. Must be
1 or greater.
This field is available in API version 28.0 and later.
EntitlementProcessMilestoneItem
Represents a milestone item on an entitlement process.
354
Metadata Types
EntitlementProcess
Fields
Field Name
Field Type
Description
businessHours
string
The business hours that apply to the milestone.
This field is available in API version 30.0 and later.
criteriaBooleanFilter
string
For milestones that apply only when criteria are met
and for which filter logic is added, specifies that logic.
milestoneCriteriaFilterItems FilterItem[]
For milestones that apply only when criteria are met,
specifies those criteria.
milestoneCriteriaFormula string
For milestones that apply only when a formula
evaluates to true, specifies that formula.
milestoneName
string
The name of the milestone.
minutesCustomClass
string
The name of the Apex class that is used to calculate
the trigger time. This field is available in API version
30.0 and later.
minutesToComplete
int
The number of minutes from when the case enters the
entitlement process that the milestone occurs.
successActions
WorkflowActionReference[]
The actions triggered when the milestone is completed.
timeTriggers
EntitlementProcessMilestoneTimeTrigger[] The time triggers on an entitlement process milestone.
useCriteriaStartTime
boolean
When the milestone starts: when the milestone criteria
are met (true) or when the case enters the entitlement
process (false).
EntitlementProcessMilestoneTimeTrigger
Represents the time trigger on an entitlement process milestone.
Fields
Field Name
Field Type
Description
actions
WorkflowActionReference[] The actions to take when the time trigger is reached, if, at that time,
the milestone is not completed.
timeLength
int
The length of time between the time trigger activation and the
milestone target completion date. This may be a negative or positive
value. Negative values indicate that the target completion date has
not yet arrived and correspond to warning time triggers. Positive
values indicate that the target completion date has passed and
correspond to violation time triggers.
355
Metadata Types
Field Name
EntitlementProcess
Field Type
workflowTimeTriggerUnit MilestoneTimeUnits
(enumeration of type
string)
Description
Specifies the type of unit used to determine when a workflow should
be triggered. Valid values are:
• Minutes
• Hours
• Days
Declarative Metadata Sample Definition
This is a sample entitlement process.
trueeppersoneSlaStartDate1 OR 2Case.IsClosedequalstrueCase.DescriptionstartsWithfoom11emailBobAlertemailAliceAlertsetEscalateToTrueFieldUpdate1MinutessetStopToTrueFieldUpdate
356
Metadata Types
EntitlementTemplate
2MinutesfalseCase.PriorityequalsHighm2120trueemailBobAlert
EntitlementTemplate
Represents an entitlement template. Entitlement templates are predefined terms of customer support that you can quickly add to
products. For example, you can create entitlement templates for Web or phone support so that users can easily add entitlements to
products offered to customers. EntitlementTemplate extends the Metadata metadata type and inherits its fullName field.
Declarative Metadata File Suffix and Directory Location
EntitlementTemplate components are stored in the entitlementTemplates directory of the corresponding package directory.
The file name matches the unique name of the entitlement template, and the extension is .entitlementTemplate.
Version
Force.com EntitlementTemplate components are available in API version 18.0 and higher.
Fields
Field
Field Type
Description
businessHours
string
The entitlement's supported business hours.
casesPerEntitlement
int
Lets you limit the number of cases the entitlement supports.
entitlementProcess
string
The entitlement process associated with the entitlement.
isPerIncident
boolean
true if entitlements created from this template service a
limited number of cases; false otherwise.
357
Metadata Types
EscalationRules
Field
Field Type
Description
term
int
The number of days the entitlement is in effect.
type
string
The type of entitlement, such as Web or phone support.
Declarative Metadata Sample Definition
A sample XML definition of an entitlement template is shown below.
AlternateBusinessHours12Process1true33Phone Support
EscalationRules
Represents case escalation rules to escalate cases automatically if they are not resolved within a certain period of time. You can access
rules metadata for all applicable objects, for a specific object, or for a specific rule on a specific object. The package.xml syntax for
accessing all escalation rules for all objects is:
*EscalationRules
All rules for a specific object uses a similar syntax without the wildcard. For example, all escalation rules for the Case object would use
this syntax:
CaseEscalationRules
You can also access specific escalation rules for an object. The following example only accesses the “samplerule” and “newrule” escalation
rules on the Case object. Notice that for this example the type name syntax is EscalationRule and not EscalationRules.
Case.sampleruleCase.newruleEscalationRule
File Suffix and Directory Location
EscalationRules for an object have the suffix .escalationRules and are stored in the escalationRules folder. For example,
all Case escalation rules are stored in the Case.escalationRules file.
358
Metadata Types
EscalationRules
Version
EscalationRules components are available in API version 27.0 and later.
Fields
Field Name
Field Type
Description
escalationRule
EscalationRule[]
Represents one escalation rule and specifies whether it is active or
not. Escalation rules are processed in the order they appear in the
EscalationRules container.
EscalationRule
Field Name
Field Type
Description
active
boolean
Indicates whether the escalation rule is active (true) or
not (false).
fullname
string
Inherited from Metadata, this field is not defined in the
WSDL for this metadata type. It must be specified when
creating, updating, or deleting. See create() to see an
example of this field specified for a call.
This value cannot be null.
RuleEntry[]
Contains the definitions of the rule entries in the escalation
rule.
Field Name
Field Type
Description
booleanFilter
string
Advanced filter conditions that were specified for the rule.
businessHours
string
The hours at which escalation actions are performed. Specify
only if businessHoursSource is set to Static.
businessHoursSource
BusinessHoursSourceType Valid values are:
ruleEntry
RuleEntry
Represents the fields used by the rule.
(enumeration of type string)
• None
• Case
• Static
criteriaItems
The items in the list that define the assignment criteria.
FilterItem
disableEscalationWhenModified boolean
Indicates whether the escalation is disabled when the
record is modified true) or not (false).
359
Metadata Types
EscalationRules
Field Name
Field Type
Description
escalationAction
EscalationAction[] on The actions to perform when the escalation criteria are met.
page 360
escalationStartTime
EscalationStartTimeType Indicates the start time for the escalation. Valid values are:
(enumeration of type string)
• CaseCreation
• CaseLastModified
formula
string
The validation formula.
Note: Specify either formula or
criteriaItems, but not both fields.
EscalationAction
Describes the action to take for an escalation rule.
Field Name
Field Type
Description
assignedTo
string
The name of the user or queue the item is assigned to.
assignedToTemplate
string
Specifies the template to use for the email that is
automatically sent to the new owner specified by the
escalation rule.
assignedToType
AssignToLookupValueType Valid values are:
(enumeration of type string)
• User
• Queue
minutesToEscalation
int
The number of minutes until the escalation occurs.
notifyCaseOwner
boolean
Indicates that the owner of the case is notified when the
case is escalated true) or not (false).
notifyEmail
string
Specifies the email address of the user to notify.
notifyTo
string
Specifies the user to notify.
notifyToTemplate
string
Specifies the template to user for the notification email.
Declarative Metadata Sample Definition
The following is an example EscalationRules component:
samplerulefalsetest
360
Metadata Types
ExternalDataSource
StaticCase.Descriptioncontainstestsomeuser@org.comemailtemplatenameUser1440falseCaseLastModified
ExternalDataSource
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.
This type extends the Metadata metadata type and inherits its fullName field.
File Suffix and Directory Location
ExternalDataSource components are stored in the dataSources directory of the corresponding package directory. ExternalDataSource
components have the suffix .dataSource, and the prefix is the name of the external data source.
Version
ExternalDataSource components are available in API version 28.0 and later.
Fields
Field Name
Field Type
Description
authProvider
string
The authentication provider that is represented by the AuthProvider
component.
certificate
string
If you specify a certificate, your Salesforce org supplies it when
establishing each two-way SSL connection with the external system.
The certificate is used for digital signatures, which verify that requests
are coming from your Salesforce org.
customConfiguration
string
A string of configuration parameters that are specific to the external data
source’s type.
• customConfiguration for Salesforce Connect—Cross-Org Adapter
361
Metadata Types
Field Name
ExternalDataSource
Field Type
Description
• customConfiguration for Salesforce Connect—OData 2.0 or 4.0
Adapter
• customConfiguration for Salesforce Connect—Custom Adapter
endpoint
string
The URL of the external system, or if that URL is defined in a named
credential, the named credential URL. Corresponds to URL in the user
interface.
A named credential URL contains the scheme callout:, the name
of the named credential, and an optional path. For example:
callout:My_Named_Credential/some_path.
You can append a query string to a named credential URL. Use a question
mark (?) as the separator between the named credential URL and the
query string. For example:
callout:My_Named_Credential/some_path?format=json.
isWritable
boolean
Lets the Force.com platform and users in this org create, update, and
delete records for external objects associated with the external data
source. The external object data is stored outside the org. By default,
external objects are read only. Corresponds to Writable External
Objects in the user interface.
Available in API version 35.0 and later. However, with the cross-org
adapter for Salesforce Connect, you can set this field to true only in
API version 39.0 and later.
label
string
A user-friendly name for the external data source. The label is displayed
in the Salesforce user interface, such as in list views.
Examples include Acme Team Marketing Site, or Acme SharePoint.
oauthRefreshToken
string
The OAuth refresh token. Used to obtain a new access token for an end
user when a token expires.
oauthScope
string
Specifies the scope of permissions to request for the access token.
Corresponds to Scope in the user interface.
oauthToken
string
The access token issued by the external system.
password
string
The password to be used by your org to access the external system.
Ensure that the credentials you use have adequate privileges to access
the external system, perform searches, return data, and return information
about the external system’s metadata.
principalType
External
Determines whether you're using one set or multiple sets of credentials
PrincipalType to access the external system. Corresponds to Identity Type in
(enumeration of
type string)
the user interface. The valid values are:
• Anonymous
• PerUser
362
Metadata Types
Field Name
ExternalDataSource
Field Type
Description
• NamedUser
protocol
Authentication The authentication protocol that’s required to access the external system.
The valid values are:
Protocol
(enumeration of
type string)
• NoAuthentication
• Oauth
• Password
For cloud-based Files Connect external systems, select Oauth 2.0. For
on-premises systems, select Password Authentication.
For Simple URL data sources, select No Authentication.
repository
string
type
ExternalData For Salesforce Connect, specifies the adapter that connects to the external
system. The valid values are:
SourceType
(enumeration of
type string)
Used for SharePoint Online. If metadata is not accessible, use this field
to create tables and default table fields.
• OData—OData 2.0 adapter
• OData4—OData 4.0 adapter
• SfdcOrg—cross-org adapter
• ApexClassId—DataSource.Provider class that defines
the custom adapter created via the Apex Connector Framework
For Files Connect, specifies the data source type. The valid values are:
• ContentHubSharepoint—SharePoint 2010 or 2013
• ContentHubSharepointOffice365—SharePoint Online
• ContentHubSharepointOneDrive—OneDrive for Business
• ContentHubGDrive—Google Drive
If Chatter is enabled, you can also specify SimpleURL to access data
hosted on a web server that doesn’t require authentication.
• outgoingemail—A data source used for sending an email
through a quick action.
The Identity and Wrapper types are reserved for future use.
username
string
The username to be used by your org to access the external system.
Ensure that the credentials you use have adequate privileges to access
the external system, perform searches, return data, and return information
about the external system’s metadata.
version
string
Reserved for future use.
363
Metadata Types
customConfiguration
ExternalDataSource
for Salesforce Connect—Cross-Org Adapter
The following sample JSON-encoded configuration string defines parameters that apply when the external data source’s type is set
to SfdcOrg.
{"apiVersion":"32.0","environment":"CUSTOM",
"searchEnabled":"true","timeout":"120"}
The parameters correspond to these fields in the user interface:
• apiVersion—API Version
• environment—Connect to
• searchEnabled—Enable Search
• timeout—Connection Timeout
customConfiguration
for Salesforce Connect—OData 2.0 or 4.0 Adapter
The following JSON-encoded configuration string defines parameters that apply when the external data source’s type is set to OData
or OData4.
{"inlineCountEnabled":"true","csrfTokenName":"X-CSRF-Token",
"requestCompression":"false","pagination":"CLIENT",
"noIdMapping":"false","format":"ATOM",
"searchFunc":"","compatibility":"DEFAULT",
"csrfTokenEnabled":"true","timeout":"120",
"searchEnabled":"true"}
The parameters correspond to these fields in the user interface.
• compatibility—Special Compatibility
• csrfTokenEnabled—CSRF Protection
• csrfTokenName—Anti-CSRF Token Name
• format—Format
• inlineCountEnabled—Request Row Counts
• noIdMapping—High Data Volume
• pagination—Server Driven Pagination
• requestCompression—Compress Requests
• searchEnabled—Enable Search
• searchFunc—Custom Query Option for Salesforce Search
• timeout—Connection Timeout
customConfiguration
for Salesforce Connect—Custom Adapter
The following sample JSON-encoded configuration string defines the parameter that applies when the external data source’s type is
set to the ID of a DataSource.Provider class.
{"noIdMapping":"false"}
The noIdMapping parameter corresponds to the High Data Volume field in the user interface.
364
Metadata Types
FlexiPage
Declarative Metadata Sample Definition
The following is the definition of an external data source for Salesforce Connect—OData 2.0 or 4.0 adapter.
FacebookAuth{"compatibility":"DEFAULT",
"noIdMapping":"false","inlineCountEnabled":"true",
"searchEnabled":"true","format":"ATOM",
"requestCompression":"false","pagination":"SERVER",
"timeout":"120"}http://myappname.herokuapp.com/DataHub.svcNamedUserOauthOData
FlexiPage
Represents the metadata associated with a Lightning Page. A Lightning Page represents a customizable screen containing Lightning
components.
Lightning Pages are used in several places.
• In Salesforce1, a Lightning Page is the home page for an app that appears in the navigation menu.
• In Lightning Experience, Lightning Pages can be used as the home page for an app, and to customize the layout of record pages
and the Home page.
This type extends the Metadata metadata type and inherits its fullName field.
Note: These pages are known as FlexiPages in the API, but are referred to as Lightning Pages in the rest of the Salesforce
documentation and UI.
For more information on Lightning Pages, see the Salesforce Help.
File Suffix and Directory Location
FlexiPage components have the suffix .flexipage and are stored in the flexipages folder.
Version
FlexiPage components are available in API version 29.0 and later.
Fields
Field Name
Field Type
Description
description
string
The optional description text of the Lightning Page.
flexiPageRegions
FlexiPageRegion[]
Required. The list of regions of a page.
365
Metadata Types
FlexiPage
Field Name
Field Type
Description
masterLabel
string
Required. The label for this FlexiPage, which displays in Setup.
pageTemplate
string
Deprecated. Use this field in API versions 33.0 to 38.0 only. In
later versions, use template.
Required. The template associated with the FlexiPage.
parentFlexiPage
string
The name of the FlexiPage that this page inherits behavior
from.
This field is available in API version 37.0 or later.
platformActionList
PlatformActionList
The list of all actions, and their order, that display on the
Lightning Page. In Salesforce1, the actions appear in the action
bar.
This field is available in API version 34.0 and later.
quickActionList
QuickActionList
The list of quick actions associated with the Lightning Page.
sobjectType
string
The object the FlexiPage is associated with. For Lightning Pages
of type AppPage or HomePage, this field is null.
After the value of this field is set, it can’t be changed.
This field is available in API version 37.0 or later.
template
FlexiPageTemplateInstance
Required. The template associated with the FlexiPage.
This field is available in API version 39.0 and later.
type
FlexiPageType (enumeration Required. The type of a page. In API versions 32.0 through 36.0,
of type string)
this field can only have a value of AppPage.
Valid values are:
• AppPage—A Lightning Page that is used as the home
page for a custom app.
• CommAppPage—A Lightning Page that is used to
represent a custom page, as created in the Community
Builder, in Communities. This value is available in API
version 37.0 and later.
• CommForgotPasswordPage—A Lightning Page
that’s used to override a forgot-password page, as created
in Community Builder, in Communities. This value is
available in API version 39.0 and later.
• CommLoginPage—A Lightning Page that’s used to
override the login page, as created in Community Builder,
in Communities. This value is available in API version 39.0
and later.
• CommObjectPage—A Lightning Page used to override
an object page, as created in Community Builder, in
366
Metadata Types
Field Name
FlexiPage
Field Type
Description
Communities. This value is available in API version 38.0
and later.
• CommQuickActionCreatePage—A Lightning
Page used to override the create record page, as created
in Community Builder, in Communities. This value is
available in API version 38.0 and later.
• CommRecordPage—A Lightning Page used to override
a record page , as created in the Community Builder, in
Communities. This value is available in API version 38.0
and later.
• CommRelatedListPage—A Lightning Page used
to override a related list page, as created in the Community
Builder, in Communities. This value is available in API
version 38.0 and later.
• CommSearchResultPage—A Lightning Page used
to override the search result page, as created in
Community Builder, in Communities. This value is available
in API version 38.0 and later.
• CommSelfRegisterPage—A Lightning Page used
to override the self-registration page, as created in
Community Builder, in Communities. This value is available
in API version 39.0 and later.
• CommThemeLayoutPage—A Lightning Page used
to override a theme layout page, as created in the
Community Builder, in Communities. This value is available
in API version 38.0 and later.
• HomePage—A Lightning Page that is used to override
the Home page in Lightning Experience. This value is
available in API version 37.0 and later.
• MailAppAppPage—An email application pane used
to override the default layout for Lightning for Outlook.
This value is available in API version 38.0 and later.
• RecordPage—A Lightning Page used to override an
object record page in Lightning Experience. This value is
available in API version 37.0 and later.
• UtilityBar—A Lightning Page used as the utility bar
in Lightning Experience apps. This value is available in API
version 38.0 and later.
This field is available in API version 32.0 and later.
367
Metadata Types
FlexiPage
FlexiPageRegion
FlexiPage Region represents the properties of a region of a page. A region can contain a record list component or a recent items
component that can be scoped to a set of entities.
Field Name
Field Type
Description
appendable
RegionFlagStatus
(enumeration of type string)
This field is reserved for future use.
Valid values are:
• disabled
• enabled
This field is available in API version 35.0 or later.
componentInstances
ComponentInstance[]
Properties and name of the component instance.
mode
FlexiPageRegionMode
(enumeration of type string)
This field is reserved for future use.
Valid values are:
• Append
• Prepend
• Replace
This field is available in API version 35.0 or later.
name
string
Required. Unique name of the FlexiPage region.
prependable
RegionFlagStatus
(enumeration of type string)
This field is reserved for future use.
Valid values are:
• disabled
• enabled
This field is available in API version 35.0 or later.
replaceable
RegionFlagStatus
(enumeration of type string)
This field is reserved for future use.
Valid values are:
• disabled
• enabled
This field is available in API version 35.0 or later.
type
FlexiPageRegionType
(enumeration of type string)
Required. The type of FlexiPage region.
Valid values are:
• Facet
• Region
This field is available in API version 35.0 or later.
368
Metadata Types
FlexiPage
ComponentInstance
Instance of a component in a page, such as a filter list.
Field Name
Field Type
Description
componentInstanceProperties ComponentInstanceProperty[]
componentName
string
The value of a single property in a component instance.
A component instance can have no properties.
Required. The name of a single instance of a
component.
ComponentInstanceProperty
Value of a single property in a component instance.
Field Name
Field Type
Description
name
string
Name of the property, unique within the component instance.
For Lightning components, this value is the
as defined in the .cmp file.
type
ComponentInstancePropertyTypeEnum If this field value is null, then the
(enumeration of type string) ComponentInstanceProperty values apply to the Lightning
component. If this field value is decorator, then the
ComponentInstanceProperty values apply to the component
decorator for the Lightning component.
The component decorator is a wrapper around a Lightning
component. The decorator can apply additional capabilities
to the component when it renders on a specific page in
Lightning Experience. For example, you can configure a
component decorator around a component on the Lightning
Experience utility bar to set the component’s height or width
when opened. The UtilityBar is the only page type that
supports component decorators.
Valid values are:
• decorator
This field is available in API version 38.0 or later.
value
string
Reference or value of the property.
When defining a Related List component, to use a parent
record set the parentFieldApiName value to
object.field_name. If you don’t want to use a parent
record, set the value to object.Id.
When you give a standard label to a tab in a Tabs component—such as Activity, Collaborate, or Details—and when the name field is
set to title, the value field uses a system-defined value instead of the label. Here are some examples of the system-defined values:
369
Metadata Types
FlexiPage
• Standard.Tab.activity
• Standard.Tab.collaborate
• Standard.Tab.detail
• Standard.Tab.feed
• Standard.Tab.preview
• Standard.Tab.relatedLists
For example, let’s say you have a Lightning Page that contains a tab with the standard label “Activity”. If you query the definition that
page, you see the system-defined name of the tab, not the label, in value.
titleStandard.Tab.activityflexipage:tab
PlatformActionList
PlatformActionList represents the list of actions, and their order, that display on the Lightning Page. Available in API version 34.0 and
later.
Field Name
Field Type
Description
actionListContext
PlatformActionListContext Required. The context of the action list. Valid values are:
(enumeration of
• Assistant
type string)
• BannerPhoto
• Chatter
• Dockable
• FeedElement
• FlexiPage
• Global
• ListView
• ListViewDefinition
• ListViewRecord
• Lookup
• MruList
• MruRow
• ObjectHomeChart
• Photo
• Record
• RecordEdit
• RelatedList
• RelatedListRecord
370
Metadata Types
FlexiPage
Field Name
Field Type
Description
platformActionListItems
PlatformActionListItem[] The actions in the PlatformActionList.
relatedSourceEntity
string
When the ActionListContext is RelatedList or RelatedListRecord,
this field represents the API name of the related list to which the action
belongs.
PlatformActionListItem
PlatformActionListItem represents an action in the PlatformActionList. Available in API version 34.0 and later.
Field Name
Field Type
Description
actionName
string
The API name for the action in the list.
actionType
PlatformActionType The type of action. Valid values are:
(enumeration of type • ActionLink—An indicator on a feed element that targets an API, a
string)
web page, or a file, represented by a button in the Salesforce Chatter feed
UI.
• CustomButton—When clicked, opens a URL or a Visualforce page in
a window or executes JavaScript.
• InvocableAction
• ProductivityAction—Productivity actions are predefined by
Salesforce and are attached to a limited set of objects. You can’t edit or
delete productivity actions.
• QuickAction—A global or object-specific action.
• StandardButton—A predefined Salesforce button such as New, Edit,
and Delete.
sortOrder
int
The placement of the action in the list.
subtype
string
The subtype of the action. For quick actions, the subtype is
QuickActionType. For custom buttons, the subtype is
WebLinkTypeEnum. For action links, subtypes are Api, ApiAsync,
Download, and Ui. Standard buttons and productivity actions have no
subtype.
FlexiPageTemplateInstance
FlexiPageTemplateInstance represents an instance of a FlexiPage template.
Field Name
Field Type
Description
name
string
Required. The name of a single instance of a template.
371
Metadata Types
FlexiPage
Field Name
Field Type
Description
properties
ComponentInstanceProperty[]
The value of a single property in a template instance.
Valid only for CommThemeLayoutPage. Contains
a name and value pair for each theme layout property
associated with the FlexiPage template. In Community
Builder, the theme layout and its properties appear in
the Theme area.
Declarative Metadata Sample Definition
Here’s a sample XML FlexiPage component definition for a travel app that tracks the user’s trips, expense reports, and other relevant
data:
Page to view recent tripsentityNameTrips__cfilterNameMy_Tripsflexipage:filterListCardentityNameExpense_Report__cfilterNameMy_Reportsflexipage:filterListCardentityNames["User","Trips__c","Expense__c","Receipt__c"]flexipage:recentItemsmainMy Travel, Inc.
372
Metadata Types
Flow
customAction1customAction2AppPage
And, here’s the sample package.xml file that references the FlexiPage component definition:
Travel, Inc.TravelIncFlexiPageCustomTabTravelIncFlexiPageFlexiPageTravelIncQuickActionsQuickAction29.0
Flow
Represents the metadata associated with a flow. With Flow, you can create an application that navigates users through a series of screens
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. For information about the corresponding UI-based flow building tool, see “Cloud Flow Designer” in the Salesforce
Help.
When using the file-based Metadata API to work with flows, consider that:
• You can’t use Metadata API to access a flow installed from a managed package.
• Flow filenames shouldn’t contain spaces, which can cause errors at deployment. Heading and trailing spaces are allowed, but are
trimmed during deployment.
• You can’t overwrite an active flow or one that was once active when deploying a flow using Metadata API.
• You can create a new version of a flow by giving the file a new version number and deploying it.
Warning: Don't edit the metadata of retrieved Process Builder processes (Flow components whose processType is Workflow or
InvocableProcess.) If you deploy process metadata that you've edited, you might not be able to open the process in the target
org.
Declarative Metadata File Suffix and Directory Location
Flows are stored in the Flow directory of the corresponding package directory. The file name matches the flow’s unique full name,
and the extension is .flow.
373
Metadata Types
Flow
Version
The flow Metadata API is available in API version 24.0 and later.
Flow
This metadata type represents a valid definition of a flow. This type extends the Metadata metadata type and inherits its fullName
field.
Field Name
Field Type
Description
actionCalls
FlowActionCall[]
An array of nodes that define calls to actions. This field is available
in API version 31.0 and later.
apexPluginCalls
FlowApexPluginCall[]
An array of nodes that define calls to Apex plug-ins.
assignments
FlowAssignment[]
An array of assignment nodes.
choices
FlowChoice[]
An array of static choice options.
constants
FlowConstant[]
An array of constants.
decisions
FlowDecision[]
An array of decision nodes.
description
string
Description of the flow.
dynamicChoiceSets
FlowDynamicChoiceSet[]
An array that constructs a set of choice options based on a
database lookup.
formulas
FlowFormula[]
An array of formulas.
fullName
string
Required; inherited from the Metadata component. Name of
the file in Metadata API.
The fullName consists of two parts, separated by a hyphen:
• Unique name for the flow that contains only underscores
and alphanumeric characters. It must be unique across the
organization, begin with a letter, not include spaces, not
end with an underscore, and not contain two consecutive
underscores.
• Version number for the flow.
For example, “sampleFlow-3” specifies version 3 of the flow
whose unique name is sampleFlow.
interviewLabel
string
Label for the interview. This label helps users and administrators
differentiate interviews from the same flow.
In the user interface, this label appears in the Paused Flow
Interviews component on the user’s Home tab and in the Paused
and Waiting Interviews list on the flow management page.
label
string
Required. Label for the flow.
374
Metadata Types
Flow
Field Name
Field Type
Description
loops
FlowLoop[]
An array of nodes for iterating through collections. This field is
available in API version 30.0 and later.
processMetadataValues
FlowMetadataValue[]
Metadata values for the flow.
This field is available in API version 31.0 and later.
processType
FlowProcessType (enumeration The type of the flow, as determined by the active version (or
of type string)
latest version, if there’s no active version). Valid values are:
• AutoLaunchedFlow—A flow that doesn’t require user
interaction
• Flow—A flow that requires user interaction because it
contains one or more screens, choices, or dynamic choices
• InvocableProcess—A process that can be invoked
by another process. This value is available in API version 38.0
and later.
• Workflow—A process created by using Process Builder
These values are reserved for future use.
• ActionPlan
• JourneyBuilderIntegration
• LoginFlow
• UserProvisioningFlow
Across versions, you can change the type from Flow to
AutoLaunchedFlow or vice versa.
This field is available in API version 31.0 and later.
recordCreates
FlowRecordCreate[]
An array of nodes for creating records in the database.
recordDeletes
FlowRecordDelete[]
An array of nodes for deleting records in the database.
recordLookups
FlowRecordLookup[]
An array of nodes for looking up records in the database.
recordUpdates
FlowRecordUpdate[]
An array of nodes for updating records in the database.
screens
FlowScreen[]
An array of screen nodes.
startElementReference
string
Specifies which node or element is the starting point in the flow.
steps
FlowStep[]
An array of step nodes.
subflows
FlowSubflow[]
An array of subflows. This field is available in API version 25.0
and later.
textTemplates
FlowTextTemplate[]
An array of text templates.
variables
FlowVariable[]
An array of variable definitions.
waits
FlowWait[]
An array of wait nodes. This field is available in API version 32.0
and later.
375
Metadata Types
Flow
FlowActionCall
Defines a call to an action from the flow. It extends FlowNode.
Available in API version 31.0 and later.
Field Name
Field Type
Description
actionName
string
Required. Name for the action. Must be unique across
actions with the same actionType.
actionType
InvocableActionType (enumeration of type Required. The action type. Valid values are:
string)
• apex—invokes an Apex method that has the
@invocableMethod annotation
• chatterPost—posts to Chatter
• contentWorkspaceEnableFolders—enables
folders in a library
• emailAlert—sends an email by referencing a
workflow email alert
• emailSimple—sends an email by using flow
resources
• flow—invokes an autolaunched flow. This action type
isn’t available for flows with a processType of “Flow” or
“AutolaunchedFlow”. To invoke an autolaunched flow
from one of those types, use FlowSubflow. Available in
API version 32.0 and later.
• quickAction—invokes a QuickAction
• submit—submits a record for approval
These values are reserved for future use.
• thanks
• metricRefresh
connector
FlowConnector
Specifies which node to execute after this action call.
faultConnector
FlowConnector
Specifies which node to execute if the action call results in
an error.
inputParameters
FlowActionCallInputParameter[]
An array of input parameters from the flow to the action.
outputParameters
FlowActionCallOutputParameter[]
An array of output parameters from the action to the flow.
FlowActionCallInputParameter
Defines an input parameter from the flow to the action. It extends FlowBaseElement and inherits all of its fields. Available in API version
31.0 and later.
376
Metadata Types
Flow
Field Name
Field Type
Description
name
string
Required. Unique name for the input parameter.
value
FlowElementReferenceOrValue
Defines the value of the input parameter.
FlowActionCallOutputParameter
Defines an output parameter from the action to the flow. It extends FlowBaseElement and inherits all of its fields. Available in API version
31.0 and later.
Field Name
Field Type
Description
assignToReference
string
Required. Specifies the variable to which you want to assign the
output parameter value.
name
string
Required. Unique name for the output parameter.
FlowApexPluginCall
Defines a call to an Apex plug-in from the flow. It extends FlowNode and inherits all of its fields.
Field Name
Field Type
Description
apexClass
string
Required. The name of the Apex class.
connector
FlowConnector
Specifies which node to execute after this Apex plug-in call.
faultConnector
FlowConnector
Specifies which node to execute if the Apex plug-in call
results in an error.
inputParameters
FlowApexPluginCallInputParameter[]
An array of input parameters from the flow to the Apex
plug-in.
outputParameters
FlowApexPluginCallOutputParameter[]
An array of output parameters from the Apex plug-in to the
flow.
FlowApexPluginCallInputParameter
Defines an input parameter from the flow to the Apex plug-in. It extends FlowBaseElement and inherits all of its fields.
Field Name
Field Type
Description
name
string
Required. Unique name for the input parameter.
value
FlowElementReferenceOrValue
Defines the value of the input parameter.
FlowApexPluginCallOutputParameter
Defines an output parameter from the Apex plug-in to the flow. It extends FlowBaseElement and inherits all of its fields.
377
Metadata Types
Flow
Field Name
Field Type
Description
assignToReference
string
Required. Specifies the variable to which you want to assign the
output parameter value.
name
string
Required. Unique name for the output parameter.
FlowAssignment
Defines an assignment node that can dynamically change the value of a variable in the flow. It extends FlowNode and inherits all of its
fields.
Field Name
Field Type
Description
assignmentItems
FlowAssignmentItem[]
An array of assignment operations that is executed in the given
order, starting from the index 0.
connector
FlowConnector
Specifies which node to execute after this assignment node.
FlowAssignmentItem
Defines an operation to apply to a variable. It extends FlowBaseElement and inherits all of its fields.
Field Name
Field Type
Description
assignToReference
string
Required. Reference to the variable to which you want to
apply the specified operator.
operator
FlowAssignmentOperator
(enumeration of type string)
Required. Operation to apply to the variable reference in
the assignToReference field. Valid values are:
• Assign–assigns the specified value to the variable in
the assignToReference field.
• Add–adds the specified value to the variable in the
assignToReference field.
• AddItem–adds the specified value as a new item to
the variable in the assignToReference field. Supported
for only variables that have a data type of Multipicklist.
This operator automatically adds the semi-colon
required to mark a value as a separate item. This
operator is available in API version 34.0 and later.
• Subtract–subtracts the specified value from the
variable in the assignToReference field.
value
FlowElementReferenceOrValue
378
Defines the value that you want the operator to apply to
the variable reference in the assignToReference field.
Metadata Types
Flow
FlowChoice
A choice resource is a standalone choice option that you can reference or reuse throughout the flow. It extends FlowElement and inherits
all of its fields.
Field Name
Field Type
Description
choiceText
string
Required. Choice label to display in the screen.
dataType
FlowDataType (enumeration of type
string)
Required. Valid types are:
• Currency
• Date
• Number
• String
• Boolean
userInput
FlowChoiceUserInput
Enables the choice to allow user input when the choice is
selected. Not supported for choices in multi-select fields.
value
FlowElementReferenceOrValue
Actual value that’s used during flow execution, for example,
in assignments, calls to Apex plug-ins, and record elements. If
null, this choice always has the value of null.
FlowChoiceUserInput
Allows the choice to include a user input field that appears when the choice is selected by the user. User input isn’t supported for choices
in multi-select fields. It extends FlowBaseElement and inherits all of its fields.
Field Name
Field Type
Description
isRequired
boolean
Indicates whether users are required to enter something into the
field when they select the choice.
promptText
string
Text that is displayed to prompt the user for input at runtime.
Supports merge fields.
validationRule
FlowInputValidationRule
Rule used at runtime to validate the user input.
FlowCondition
Defines a condition for a rule. It extends FlowBaseElement and inherits all of its fields.
Field Name
Field Type
Description
leftValueReference
string
Required. Unique name of the element that serves as the
left side of the condition expression.
operator
FlowComparisonOperator
(enumeration of type string)
Required. Valid values are:
• EqualTo
379
Metadata Types
Flow
Field Name
Field Type
Description
• NotEqualTo
• GreaterThan
• LessThan
• GreaterThanOrEqualTo
• LessThanOrEqualTo
• StartsWith
• EndsWith
• Contains
• IsNull
• WasSet—This value is available in API version 30.0 and
later.
• WasSelected—Requires a choice on the left side.
• WasVisited—Requires a node on the left side.
FlowElementReferenceOrValue
rightValue
Unique name of an element or the actual value (such as text
or a number) for the right side of the condition expression.
FlowConnector
Connectors determine the order in which the nodes of the flow are executed. A connector defines and links to the subsequent node. It
extends FlowBaseElement and inherits all of its fields.
Field Name
Field Type
Description
targetReference
string
Required. Which node to execute after completing the current
node.
FlowConstant
A constant resource defines a fixed value that can be used throughout your flow. It extends FlowElement and inherits all of its fields.
Field Name
Field Type
Description
dataType
FlowDataType (enumeration of type Required. Valid types are:
string)
• Currency
• Date
• Number
• String
• Boolean
380
Metadata Types
Flow
Field Name
Field Type
Description
value
FlowElementReferenceOrValue
Default value of the constant. This field can't have merge fields, nor
can it reference another resource besides
$GlobalConstant.EmptyString.
FlowDecision
Decision node that evaluates a set of rules and routes the flow execution based on the first rule that evaluates to true. It extends FlowNode
and inherits all of its fields.
Field Name
Field Type
Description
defaultConnector
FlowConnector
Specifies which node to execute if none of the rules evaluate to
true.
defaultConnectorLabel
string
Label for the default connector.
rules
FlowRule[]
An array of rules for the decision. The rules are evaluated in the
order they're listed, and the connector of the first true rule is used.
If no rules are true, then the default connector is used. In the Cloud
Flow Designer, rules are referred to as “outcomes.”
FlowDynamicChoiceSet
Looks up data or metadata from an sObject and dynamically generates a set of choices at run time. It extends FlowElement and inherits
all of its fields. Depending on the fields that are set, this element represents either a record choice or a picklist choice.
• A record choice dynamically generates choices based on records that meet specified filter criteria. If a dynamic choice doesn’t have
the picklistField and picklistObject parameters set, it is a record choice and can’t have a data type of Picklist
or Multipicklist.
• A picklist choice dynamically generates choices based on the available values for a picklist or multi-select picklist field. If a dynamic
choice has the picklistField and picklistObject parameters set, it is a picklist choice and must have a data type of
Picklist or Multipicklist.
Note: You can’t reference sObject custom fields of type Geolocation anywhere in a flow. For example, Geolocation fields can’t
be used in record filters, in input or output field assignments, or as display, value, or sort fields.
Field Name
Field Type
Description
dataType
FlowDataType (enumeration of type Required. Valid types are:
string)
• Currency
• Date
• Number
• String
• Boolean
• Picklist—Picklist choices only
• Multipicklist—Picklist choices only
381
Metadata Types
Field Name
Flow
Field Type
Description
Picklist and Multipicklist are available in API
version 35.0 and later.
displayField
string
Required for record choices. Which field from the sObject
to display to the user as choice labels.
For example, for an account, use the DisplayField “Name” if
you want the dynamically generated choices to be displayed
as the account names from the records that are retrieved
from the database.
Not supported for picklist choices. Picklist choices always
display the labels for the retrieved picklist values.
filters
FlowRecordFilter[]
An array of filters to apply to the records that are retrieved
from the database. For example, you may want to filter
accounts to include only those that were created in the past
three months.
Not supported for picklist choices.
limit
int
Maximum number of choices to include in the generated
set of choices. Maximum and default: 200.
If sortField and sortOrder are also specified, the
records are sorted before the limit takes effect.
This field is available in API version 25.0 and later.
object
string
Required for record choices. The sObject whose fields you
want to retrieve from the database and use to generate the
set of choices. For example, use “Account” to dynamically
generate choices from the information in account records
in the database.
Not supported for picklist choices.
outputAssignments
FlowOutputFieldAssignment[]
An array that assigns fields from the user-selected record to
variables that can be used elsewhere in the flow. For
example, when the user selects an account name from the
dynamically generated list of choice options,
outputAssignments can assign the Id and AnnualRevenue
from the user-selected account to variables that you specify.
Not supported for picklist choices.
picklistField
string
Required for picklist choices. The field whose available values
you want to retrieve from the database and use to generate
the picklist choice. For example, use “Industry” to dynamically
generate one choice for each available value on the Industry
picklist field.
Not supported for record choices.
382
Metadata Types
Field Name
Flow
Field Type
Description
This field is available in API version 35.0 and later.
picklistObject
string
Required for picklist choices. The sObject whose field
metadata you want to retrieve from the database and use
to generate the picklist choice. For example, use “Account”
to dynamically generate choices from a picklist field on the
Account object.
Not supported for record choices.
This field is available in API version 35.0 and later.
sortField
string
Field that is used for sorting the records that meet the filter
criteria. If this field isn’t specified then the returned records
are not sorted.
You can only sort records by fields that have the Sort API
field property, as specified in SOAP API.
Not supported for picklist choices.
This field is available in API version 25.0 and later.
sortOrder
SortOrder (enumeration of type string) Order in which to sort the records. If this field isn’t specified,
then the results are not sorted.
Valid values are:
• Asc—Ascending
• Desc—Descending
Not supported for picklist choices.
This field is available in API version 25.0 and later.
valueField
string
Stored value for the choice, which may differ from what is
displayed to the user as the choice options
(displayField). For example, the displayField
may be the account “Name” while the valueField is the
account “Id.”
Not supported for picklist choices. Picklist choices always
store the API value for the retrieved picklist values.
FlowElement
Base class for all flow elements. This is an abstract class. It extends FlowBaseElement and inherits all of its fields.
Field Name
Field Type
Description
description
string
Description of the flow element.
name
string
Required. Unique name of the flow element.
383
Metadata Types
Flow
FlowBaseElement
Base class for all flow elements that require contextual information in metadata values. This is an abstract class. FlowBaseElement is
available in API version 32.0 and later.
Field Name
Field Type
Description
processMetadataValues
FlowMetadataValue[]
Contextual information for the element.
FlowMetadataValue
Defines contextual information that can be passed between elements in a flow. Flow metadata values can be used in an application
that produces or consumes flows. FlowMetadataValue is available in API version 31.0 and later.
Field Name
Field Type
Description
name
string
Required. Name for the metadata value. This name doesn’t need
to be unique across all elements.
value
FlowElementReferenceOrValue Reference or value for the metadata value.
FlowElementReferenceOrValue
Defines a reference to an existing element or a particular value that you specify. Make sure that you specify only one of the fields.
Field Name
Field Type
Description
booleanValue
boolean
Use this field to specify a boolean value. Do not use this field if you want to
specify a different data type or an element reference.
dateTimeValue
dateTime
Use this field to specify a dateTime value. Do not use this field if you want to
specify a different data type or an element reference. This field is available in API
version 30.0 and later.
dateValue
date
Use this field to specify a date value. Do not use this field if you want to specify
a different data type or an element reference.
elementReference
string
Use this field to specify the name of an existing element. Do not use this field if
you want to specify a value instead of an element reference.
numberValue
double
Use this field to specify a double value. Do not use this field if you want to specify
a different data type or an element reference.
stringValue
string
Use this field to specify a string value. Do not use this field if you want to specify
a different data type or an element reference.
FlowFormula
Calculates a value using functions and elements in the flow. It extends FlowElement and inherits all of its fields.
384
Metadata Types
Flow
Field Name
Field Type
Description
dataType
FlowDataType (enumeration The data type for the formula. Valid values are:
of type string)
• Boolean
• Currency
• Date
• DateTime
• Number
• String
dataType defaults to Number if it isn’t defined in a formula.
This field is available in API version 31.0 and later.
string
expression
Required. Salesforce formula expression. The return value must
match the data type. See “Limitations for Flow Formulas” in the
Salesforce Help.
For API version 30.0 and earlier, the return value must be numeric.
int
scale
Scale of the return value, specifically, the number of digits to the
right of the decimal point. Only supported for Currency and Number
data types.
FlowInputFieldAssignment
Assigns the value for a record field based on a resource or static value. It extends FlowBaseElement and inherits all of its fields.
Note: You can’t reference sObject custom fields of type Geolocation anywhere in a flow. For example, Geolocation fields can’t
be used in record filters, in input or output field assignments, or as display, value, or sort fields.
Field Name
Field Type
Description
field
string
Required. Name of the field that is to be assigned a value while a
record is being created or updated.
value
FlowElementReferenceOrValue
Value that is to be assigned to the field.
FlowInputValidationRule
Validation rules verify that the data entered by the user meets the specified requirements. If the validation rule evaluates to false, then
the specified error message is displayed.
Field Name
Field Type
Description
errorMessage
string
Required. Error message to display when formulaExpression
evaluates to false.
formulaExpression
string
Required. Boolean formula used to validate the user input. See
“Limitations for Flow Formulas” in the Salesforce Help.
385
Metadata Types
Flow
FlowLoop
A construct for iterating through a collection. It extends FlowNode and inherits all of its fields. FlowLoop is available in API version 30.0
and later.
Field Name
Field Type
Description
nextValueConnector
FlowConnector
Points to the element that the flow navigates to for each of the entries in the
collection. This is where the flow goes for the next value in the collection.
noMoreValuesConnector FlowConnector
Points to the element to navigate to when all entries in the collection have been
looped through.
collectionReference string
Required. The collection being looped through.
assignNextValueToReference string
Required. The variable to which the current value in the collection is assigned
before navigating to the target of nextValueConnector.
iterationOrder
iterationOrder
(enumeration of
type string)
Valid values are:
• Asc—Iterate through the collection in the order the values are listed (first
to last).
• Desc—Iterate through the collection in the reverse order the values are
listed (last to first).
FlowNode
A node is a type of element that is visible in the flow diagram. It extends FlowElement and inherits all of its fields.
Field Name
Field Type
Description
label
string
Required. Name of the node. This non-unique label is different from the unique
name of the node, which is inherited from FlowElement.
locationX
int
Required. Horizontal location of the node, in pixels from the left.
locationY
int
Required. Vertical location of the node, in pixels from the top.
FlowOutputFieldAssignment
Assigns an record field’s value from a record to a variable that can be used elsewhere in the flow. The record may be selected by a record
lookup or via a user selection for a choice. It extends FlowBaseElement and inherits all of its fields.
Note: You can’t reference sObject custom fields of type Geolocation anywhere in a flow. For example, Geolocation fields can’t
be used in record filters, in input or output field assignments, or as display, value, or sort fields.
Field Name
Field Type
Description
assignToReference
string
Required. Reference to the variable where you want to store the
value of the record field.
386
Metadata Types
Flow
Field Name
Field Type
Description
field
string
Required. Name of the field whose value is to be assigned after a
record lookup.
FlowRecordCreate
Create a new record in the database using values from the flow. It extends FlowNode and inherits all of its properties.
Note: The flow record create, lookup, update, and delete operations are different from the CRUD-based metadata calls create(),
retrieve(), update(), and delete(). The flow record methods apply to record operations from within a flow, which
aren’t the same as doing any metadata calls to CRUD setup entities.
You can’t reference sObject custom fields of type Geolocation anywhere in a flow. For example, Geolocation fields can’t be used
in record filters, in input or output field assignments, or as display, value, or sort fields.
Field Name
Field Type
Description
assignRecordIdToReference string
Reference to the variable where you want to store the
ID after the record is created.
connector
FlowConnector
Specifies which node to execute after creating the record.
faultConnector
FlowConnector
Specifies which node to execute if the attempt to create
a record results in an error.
inputAssignments
FlowInputFieldAssignment[]
An array that assigns values to the specified fields of the
record being created.
object
string
Required. sObject for the record to be created by this
element
inputReference
string
Specifies the sObject variable whose field values are used
to populate the new record’s fields.
FlowRecordDelete
Deletes one or more records in the database. It extends FlowNode and inherits all of its fields.
Note: The flow record create, lookup, update, and delete operations are different from the CRUD-based metadata calls create(),
retrieve(), update(), and delete(). The flow record methods apply to record operations from within a flow, which
aren’t the same as doing any metadata calls to CRUD setup entities.
You can’t reference sObject custom fields of type Geolocation anywhere in a flow. For example, Geolocation fields can’t be used
in record filters, in input or output field assignments, or as display, value, or sort fields.
Field Name
Field Type
Description
connector
FlowConnector
Specifies which node to execute after deleting the record.
faultConnector
FlowConnector
Specifies which node to execute if the attempt to delete a record results
in an error.
387
Metadata Types
Flow
Field Name
Field Type
Description
filters
FlowRecordFilter[]
An array that specifies the criteria used to select which records to delete
from the database. For example, you may want to delete accounts whose
last activity was older than a specified date.
object
string
Required. The name of the object whose records are deleted.
inputReference
string
Specifies the sObject variable whose record ID is used to identify which
record to delete in the database.
FlowRecordFilter
Sets the criteria for searching records in the database. It extends FlowBaseElement and inherits all of its fields.
Note: You can’t reference sObject custom fields of type Geolocation anywhere in a flow. For example, Geolocation fields can’t
be used in record filters, in input or output field assignments, or as display, value, or sort fields.
Field Name
Field Type
Description
field
string
Required. The field to be used for filtering records.
operator
FlowRecordFilterOperator (enumeration Required. Valid values are:
of type string)
• EqualTo
• NotEqualTo
• GreaterThan
• LessThan
• GreaterThanOrEqualTo
• LessThanOrEqualTo
• StartsWith
• EndsWith
• Contains
• IsNull
value
FlowElementReferenceOrValue
Reference or value used with the field and operator to filter records.
FlowRecordLookup
Finds a record in the database and uses or stores the values from its fields in the flow. It extends FlowNode and inherits all of its fields.
Note: The flow record create, lookup, update, and delete operations are different from the CRUD-based metadata calls create(),
retrieve(), update(), and delete(). The flow record methods apply to record operations from within a flow, which
aren’t the same as doing any metadata calls to CRUD setup entities.
You can’t reference sObject custom fields of type Geolocation anywhere in a flow. For example, Geolocation fields can’t be used
in record filters, in input or output field assignments, or as display, value, or sort fields.
388
Metadata Types
Field Name
Flow
Field Type
Description
assignNullValuesIfNoRecordFound boolean
Specifies that all values are set to null if the record is not
found. This field is available in API version 30.0 and later.
connector
FlowConnector
Specifies which node to execute after completing the record
lookup.
faultConnector
FlowConnector
Specifies which node to execute if the attempt to look up a
record results in an error.
filters
FlowRecordFilter[]
An array that specifies the criteria used to select the record
from the database.
If the filters return more than one record, they are sorted
according to the specified sortField and sortOrder.
The first record in the sorted list is then selected.
If either the sortField or sortOrder is not specified,
then the first record returned is selected. Note, however, that
records are not returned in any particular order.
limit
int
The maximum number of records to return, to limit the
amount of data received. This field is available in API version
30.0 and later.
object
string
Required. Name of the sObject from which to select the
record.
outputAssignments
FlowOutputFieldAssignment[]
An array that assigns fields from the selected record to
variables that can be used elsewhere in the flow.
outputReference
string
Specifies the sObject variable that stores the queried fields’
values.
queriedFields
string[]
An array that specifies which fields from the selected record
is saved to the specified sObject variable.
sortField
string
Field that is used for sorting the records that meet the filter
criteria. If this field isn’t specified then the returned records
are not sorted.
You can only sort records by fields that have the Sort API
field property, as specified in SOAP API.
This field is available in API version 25.0 and later.
sortOrder
SortOrder (enumeration of type
string)
Order in which to sort the records. If this field isn’t specified,
then the results are not sorted.
Valid values are:
• Asc—Ascending
• Desc—Descending
This field is available in API version 25.0 and later.
389
Metadata Types
Flow
FlowRecordUpdate
Finds records in the database and updates them with values from the flow. It extends FlowNode and inherits all of its fields.
Note: The flow record create, lookup, update, and delete operations are different from the CRUD-based metadata calls create(),
retrieve(), update(), and delete(). The flow record methods apply to record operations from within a flow, which
aren’t the same as doing any metadata calls to CRUD setup entities.
You can’t reference sObject custom fields of type Geolocation anywhere in a flow. For example, Geolocation fields can’t be used
in record filters, in input or output field assignments, or as display, value, or sort fields.
Field Name
Field Type
Description
connector
FlowConnector
Specifies which node to execute after completing the record
update.
faultConnector
FlowConnector
Specifies which node to execute if the attempt to update a
record results in an error.
filters
FlowRecordFilter[]
An array that specifies the criteria used to select the records to
update in the database.
inputAssignments
FlowInputFieldAssignment[]
An array that assigns values to the specified fields of the record
being updated.
object
string
Required. Name of the sObject whose records are updated.
inputReference
string
Specifies the sObject variable whose field values is used to
update the record’s fields.
FlowRule
Defines the conditions and logic that would enable a rule to evaluate to true. It extends FlowElement and inherits all of its fields.
Field Name
Field Type
Description
conditionLogic
string
Specifies logic for the conditions. Value can be:
• and—evaluates to true only if all of its conditions evaluate to
true
• or—evaluates to true if any of its conditions evaluate to true
• Advanced logic like 1 AND (2 OR 3)—evaluates to true
if the first condition is true and either the second or third
condition is true
When you use advanced logic, the string must consist of 1,000
or fewer characters.
Advanced logic is available in API version 33.0 and later.
conditions
FlowCondition[]
An array of conditions for the rule.
connector
FlowConnector
Specifies which node to execute if this is the first rule that evaluates
to true in a decision.
390
Metadata Types
Flow
Field Name
Field Type
Description
label
string
Required. Label for the connector.
FlowScreen
Screens provide the ability to capture information from users and display information to users. It extends FlowNode and inherits all of
its fields.
Field Name
Field Type
Description
allowBack
boolean
Indicates whether to show (true) or hide (false) the Previous button
on the screen at runtime. When true, the Previous button appears
only if the user visited a previous screen in the flow path. Set this
to false when revisiting the previous screen would trigger an action
that should not be repeated, such as a credit card transaction.
This field is available in API version 26.0 and later.
Default: true
You can set either allowBack or allowFinish to false, but
not both.
allowFinish
boolean
Indicates whether to show (true) or hide (false) the Finish button
on the screen at runtime. When true, the Finish button appears
only if the screen element is the end of a flow path. Set this to false
if you need the user to go back to a previous screen to continue or
complete the flow. For example, you wouldn’t want to offer a Finish
button on a screen that tells the user to go back and make
corrections on a previous screen.
This field is available in API version 26.0 and later.
Default: true
You can set either allowBack or allowFinish to false, but
not both.
allowPause
boolean
Indicates whether to show (true) or hide (false) the Pause button
on the screen at runtime.
A flow screen displays the Pause button if all of the following
conditions are true.
• In the organization’s process automation settings, “Enable Users
to Pause Flows” is enabled.
• allowPause for the screen is set to true.
• If the flow is embedded in a Visualforce page, the
component has its showAllowPause
attribute set to true.
This field is available in API version 33.0 and later.
Default: true
391
Metadata Types
Flow
Field Name
Field Type
Description
connector
FlowConnector
Specifies which node to execute after the screen node.
fields
FlowScreenField[]
An array of fields to display on the screen.
helpText
string
Text that appears if the end user clicks the “Help for this form” link.
Supports merge fields in API version 26.0 and later.
pausedText
string
Confirmation message that appears when an end-user clicks Pause.
This field is available in API version 33.0 and later.
rules
FlowScreenRule[][]
Reserved for future use.
FlowScreenField
Configurable field on a screen. It extends FlowElement and inherits all of its fields.
Field Name
Field Type
Description
choiceReferences
string[]
An array of references to FlowChoices or
FlowDynamicChoiceSets. The resulting choice
options appear in the order specified in this
array, where the element at index 0 provides
the top-most choice option. Supported for the
following screen field types:
• RadioButtons
• DropdownBox
• MultiSelectCheckboxes
• MultiSelectPicklist
Multi-select checkboxes and multi-select
picklist fields are available in API version 26.0
and later.
dataType
FlowDataType (enumeration of type Required. Data type of this screen field. Only
string)
supported for the InputField, RadioButtons, and
DropdownBox screen field types. Valid types
are:
• Currency
• Date
• Number
• String
• Boolean
A boolean InputField appears as a checkbox
field at runtime. Checkbox input fields are
available in API version 26.0 and later.
392
Metadata Types
Field Name
Flow
Field Type
Description
Only the string data type is supported for
multi-select checkboxes and multi-select
picklist fields. Multi-select fields are available
in API version 26.0 and later.
defaultSelectedChoiceReference string
The name of the FlowChoice element to use
as the default value for the screen field.
Supported for the following screen field types:
• RadioButtons
• DropdownBox
• MultiSelectCheckboxes
• MultiSelectPicklist
For DropdownBox field types only, if the
defaultSelectedChoiceReference is empty or
null, the reference at index 0 of
choiceReferences are used as the default value.
You can specify only one FlowChoice element
as the default value for multi-select checkboxes
and multi-select picklist fields. Multi-select
fields are available in API version 26.0 and later.
defaultValue
FlowElementReferenceOrValue
The value that is used by default when this
screen field requires users to provide input.
Only supported for InputField, LargeTextArea,
and PasswordField.
fieldText
string
Field label that is displayed on the screen.
Supports merge fields.
fieldType
FlowScreenFieldType (enumeration Required. Valid values are:
of type string)
• DisplayText
• InputField
• LargeTextArea
• PasswordField
• RadioButtons
• DropdownBox
• MultiSelectCheckboxes
• MultiSelectPicklist
At runtime, each multi-select field stores its
field value as a concatenation of the
user-selected choice values, separated by
semicolons. Any semicolons in the selected
choice values are removed when added to the
multi-select field value.
393
Metadata Types
Flow
Field Name
Field Type
Description
Multi-select checkboxes and multi-select
picklist fields are available in API version 26.0
and later.
string
helpText
Required. Text that appears if the end user
clicks the help icon ( ) for the screen field.
Supports merge fields in API version 26.0 and
later.
isRequired
boolean
Indicates whether the user must select a choice
or provide input. Not supported for DisplayText
or boolean inputField.
isVisible
boolean
Reserved for future use.
scale
int
The scale of this screen field if its data type is
number or currency. The scale sets the number
of digits to the right of the decimal point.
validationRule
FlowInputValidationRule
Rule used to validate the user input when this
screen field is of type InputField, LargeTextArea,
or PasswordField.
FlowStep
Steps function as placeholders when you're building a flow. It extends FlowNode and inherits all of its fields.
Field Name
Field Type
Description
connectors
FlowConnector[]
Specifies which node to execute after the step node.
FlowSubflow
A subflow element references another flow, which it calls at run time. The flow that contains the subflow element is referred to as the
master flow. FlowSubflow extends FlowNode and inherits all of its fields. It is available in API version 25.0 and later.
Field Name
Field Type
Description
connector
FlowConnector
Specifies which node to execute after the subflow.
flowName
string
References the flow to call at runtime. The value must
be a unique name of a flow and can’t contain an
appended hyphen and version number. The referenced
flow must have been created in the Cloud Flow Designer.
inputAssignments
FlowSubflowInputAssignment[]
An array of input variable assignments that are set at the
start of the referenced flow.
394
Metadata Types
Flow
Field Name
Field Type
Description
outputAssignments
FlowSubflowOutputAssignment[]
An array of output variable assignments that are set at
the end of the referenced flow.
FlowSubflowInputAssignment
Assigns an element or value from the master flow to a variable in the referenced flow. Input assignments occur when the subflow calls
the referenced flow. It extends FlowBaseElement and inherits all of its fields. It is available in API version 25.0 and later.
Field Name
Field Type
Description
name
string
Required. Unique name for the variable in the referenced
flow.
value
FlowElementReferenceOrValue
Defines the value to assign to the variable.
FlowSubflowOutputAssignment
Assigns the value of a variable from the referenced flow to a variable in the master flow. Output assignments occur when the referenced
flow is finished running. It extends FlowBaseElement and inherits all of its fields. It is available in API version 25.0 and later.
Field Name
Field Type
Description
assignToReference
string
Required. Unique name for the variable in the master flow.
name
string
Required. Unique name for the variable in the referenced flow.
FlowTextTemplate
Defines a text template that can be used throughout the flow. It extends FlowElement and inherits all of its fields.
Field Name
Field Type
Description
text
string
Actual text of the template. Supports merge fields.
FlowVariable
Variables allow you to create updatable values to use in the flow. FlowVariable extends FlowElement and inherits all of its fields.
Field Name
Field Type
Description
dataType
FlowDataType (enumeration of type string) Required. Valid types are:
• Boolean
• Currency
• Date
395
Metadata Types
Field Name
Flow
Field Type
Description
• DateTime—This value is available in
API version 30.0 and later.
• Number
• Multipicklist—This value is
available in API version 34.0 and later.
• Picklist—This value is available in
API version 34.0 and later.
• String
• sObject
isCollection
boolean
Indicates whether the variable is a collection
of values. This field is available in API version
30.0 and later. In API version 32.0 and later,
a collection variable can be of any data type.
Default value is False.
isInput
boolean
Indicates whether the variable can be set at
the start of the flow using URL parameters,
Visualforce controllers, or subflow inputs.
This field is available in API version 25.0 and
later.
Default value:
• False for a variable created in API
version 25.0 and later or in the Cloud
Flow Designer in Summer ’12 and later.
• True for a variable created in API
version 24.0 or in the Cloud Flow
Designer in Spring ’12 and earlier.
Warning: Disabling input or output
access for an existing variable can
break the functionality of
applications and pages that call the
flow and access the variable. For
example, you can access variables
from URL parameters, Visualforce
controllers, subflows, and processes.
isOutput
boolean
Indicates whether the variable’s value can
be accessed from Visualforce controllers and
other flows. This field is available in API
version 25.0 and later.
Default value:
396
Metadata Types
Field Name
Flow
Field Type
Description
• False for a variable created in API
version 25.0 and later or in the Cloud
Flow Designer in Summer ’12 and later.
• True for a variable created in API
version 24.0 or in the Cloud Flow
Designer in Spring ’12 and earlier.
Warning: Disabling input or output
access for an existing variable can
break the functionality of
applications and pages that call the
flow and access the variable. For
example, you can access variables
from URL parameters, Visualforce
controllers, subflows, and processes.
objectType
string
Object type of this variable if its data type is
sObject.
scale
int
Scale of this variable if its data type is
Number or Currency.
value
FlowElementReferenceOrValue
Default value of this variable.
Default values aren’t supported if the
variable’s data type is Picklist or
Multipicklist.
FlowWait
Waits for one or more defined events to occur. FlowWait extends FlowNode and inherits all of its fields. FlowWait is available in API
version 32.0 and later.
Field Name
Field Type
Description
defaultConnector
FlowConnector
Specifies which node to execute if the
conditions are false for every event in the
Wait element.
defaultConnectorLabel
string
Label for the default connector.
faultConnector
FlowConnector
Specifies which node to execute if the
attempt to wait results in an error. If any of
the wait events fail, the flow takes the fault
connector.
397
Metadata Types
Flow
Field Name
Field Type
Description
waitEvents
FlowWaitEvent[]
An array of events that the Wait element is
waiting for.
If the conditions for every event evaluate to
false, the defaultConnector is
used.
FlowWaitEvent
An event that a FlowWait element is waiting for. FlowWaitEvent extends FlowElement and inherits all of its fields. FlowWaitEvent is
available in API version 32.0 and later.
Field Name
Field Type
Description
conditionLogic
string
Specifies logic for the conditions. Value can
be:
• and—evaluates to true only if all of its
conditions evaluate to true
• or—evaluates to true if any of its
conditions evaluate to true
• Advanced logic like 1 AND (2 OR
3)—evaluates to true if the first
condition is true and either the second
or third condition is true
When you use advanced logic, the
string must consist of 1,000 or fewer
characters.
Advanced logic is available in API version
33.0 and later.
conditions
FlowCondition
An array of conditions that must be true for
the flow to wait for this event.
connector
FlowConnector
Specifies which node to execute if this is the
first event that occurs.
eventType
string
Required. The event’s type. The type
determines which input parameters are
available to define this event. Valid values
are:
• AlarmEvent—This event is an alarm
based off of an absolute date/time
value.
• DateRefAlarmEvent—This event
is an alarm based off of a date/time field
on a record.
398
Metadata Types
Flow
Field Name
Field Type
Description
inputParameters
FlowWaitEventInputParameter[]
An array of the event’s input parameters.
The parameter values are set by using values
from the flow.
label
string
Required. Label for the wait event.
outputParameters
FlowWaitEventOutputParameter[]
An array of the event’s output parameters.
The parameter values are assigned from the
event to variables in the flow.
FlowWaitEventInputParameter
An input parameter for FlowWaitEvent. The parameter’s value is set by using values from the flow. It extends FlowBaseElement and
inherits all of its fields. FlowWaitEventInputParameter is available in API version 32.0 and later.
Field Name
Field Type
Description
name
string
Required. Unique name for the input
parameter.
value
FlowElementReferenceOrValue
Defines the value of the input parameter.
FlowWaitEventOutputParameter
An output parameter for FlowWaitEvent. The parameter’s value is assigned to a variable in the flow so that it can be referenced in another
part of the flow. It extends FlowBaseElement and inherits all of its fields. FlowWaitEventOutputParameter is available in API version 32.0
and later.
Field Name
Field Type
Description
assignToReference
string
Required. Specifies the variable to which
you want to assign the output parameter
value.
name
string
Required. Unique name for the output
parameter.
Declarative Metadata Sample Definition
A sample XML definition of a flow is shown below.
BadBadNumber
399
Metadata Types
Flow
0.0ExcellentExcellentNumber20.0FairFairNumber10.0GoodGoodNumber15.0Simple Flow app to calculate a Tip according to corporate
policiesfTipAmountNumber{!Bill_Amount} * {!Service_Quality} / 1000fTotalAmountNumber{!fTipAmount} + {!Bill_Amount}0Simple_Tip_Calculator513112TipAmountBill_AmountCurrencyBill Amount
400
Metadata Types
ExternalServiceRegistration
InputFieldfalse2Service_QualityExcellentGoodFairBadNumberService QualityRadioButtonsfalse2TipAmount518266TipSUmmary<TEXTFORMAT
LEADING="2"><P
ALIGN="LEFT"><FONT
FACE="Arial"
STYLE="font-size:12px"
COLOR="#000000"
LETTERSPACING="0"
KERNING="0">If you think the quality of
service is <FONT
KERNING="1">{!Service_Quality},
</FONT>for a meal of {!Bill_Amount} you should tip
{!fTipAmount}, so the total recommended amount should be
{!fTotalAmount}</FONT></P></TEXTFORMAT>DisplayTextSimple_Tip_Calculator
ExternalServiceRegistration
Represents the External Service configuration for an org. This type extends the Metadata metadata type and inherits its fullName
field.
File Suffix and Directory Location
ExternalServiceRegistration components have the suffix .externalServiceRegistration and are stored in the
externalServiceRegistrations folder.
401
Metadata Types
FlowDefinition
Version
ExternalServiceRegistration components are available as a Beta release in API version 39.0.
Note: This release contains a beta version of External Services, which means it’s a high-quality feature with known limitations.
This feature isn’t generally available unless or until Salesforce announces its general availability in documentation or in press
releases or public statements. We can’t guarantee general availability within any particular time frame or at all. Make your purchase
decisions only on the basis of generally available products and features. You can provide feedback and suggestions for External
Services in the IdeaExchange App Cloud (Platform) Integration group in the Success Community.
Fields
Field Name
Field Type
Description
description
string
Required. The external service description defined when the service is
created.
label
string
The service name as it appears on the External Services wizard.
namedCredential
string
Required. The reference of the named credential to be used for the
service.
schema
string
Required. The content of the JSON schema in the Interagent format.
Nillable.
schemaType
string
Required. ID format of the schema, which is InteragentHyperSchema.
Nillable.
schemaUrl
string
Required. The schema URL defined when registering a service. The path
should begin with “/” and be a relative path.
status
string
Indicates whether the service registration is finished (complete) or not
(incomplete).
Declarative Metadata Sample Definition
The following is an example of an ExternalServiceRegistration component that references an external credit service.
AcmeCreditService/schemaInteragentHyperSchemahttp://interagent.github.io/interagent-hyper-schemacomplete
FlowDefinition
Represents the flow definition’s description and active flow version number.
402
Metadata Types
Folder
To activate a flow, modify the metadata object and set the activeVersionNumber to the version number to activate. To deactivate
an active flow version, set the activeVersionNumber to 0 (zero) or omit the value.
Declarative Metadata File Suffix and Directory Location
FlowDefinitions are stored in the flowDefinitions directory of the corresponding package directory. The file name matches the
flow definition’s unique full name, and the extension is .flowDefinition.
Version
FlowDefinition is available in API version 34.0 and later.
Field Name
Field Type
Description
activeVersionNumber
int
The version number of the active flow.
description
string
Description of the flow definition.
masterLabel
string
Label for the flow definition.
Folder
Represents a folder. This type extends the Metadata metadata type and inherits its fullName field. Four folder types currently exist
in Salesforce:
• Document folder
• Email folder
• Report folder
• Dashboard folder
Folder type names end with the “Folder” suffix. For example, the type name of an email folder is “EmailFolder”.
File Suffix and Directory Location
Folders are stored in the corresponding component directory of the package. These directories are named documents, email,
reports, and dashboards. Folders do not have a text file representation—they are containers for files. For each folder, an
accompanying metadata file named FolderName-meta.xml is created at the same directory level. The
FolderName-meta.xml metadata file contains the metadata information for that folder, such as the accessType. For example,
for a documents folder named sampleFolder, there’s a sampleFolder-meta.xml within the documents folder of the package.
Version
Folders are available in API version 11.0 and later.
Fields
This metadata type contains the following fields:
403
Metadata Types
Folder
Field Name
Field Type
Description
accessType
FolderAccessTypes Required. The type of access for this folder. Valid values are:
(enumeration of
• Shared. This folder is accessible only by the specified set of users.
type string)
• Public. This folder is accessible by all users, including portal users.
• PublicInternal. This folder is accessible by all users, excluding
portal users. This setting is available for report and dashboard folders
in organizations with a partner portal or Customer Portal enabled.
• Hidden. This folder is hidden from all users.
fullName
string
The name used as a unique identifier for API access. The fullName
can contain only underscores and alphanumeric characters. It must be
unique, begin with a letter, not include spaces, not end with an
underscore, and not contain two consecutive underscores. This field is
inherited from the Metadata component.
name
string
Required. The name of the document folder.
publicFolderAccess
PublicFolderAccess If Public is the value for accessType, this field indicates the type
(enumeration of
of access all users will have to the contents of the folder. Valid values
type string)
include:
• ReadOnly. All users can read the contents of the folder, but no
user can change the contents.
• ReadWrite. All users can read or change the contents of the
folder.
sharedTo
SharedTo
Sharing access for the folder. See “Sharing Considerations” in the
Salesforce online help.
Declarative Metadata Sample Definition
The following is the package manifest definition of a document folder that contains a document:
basicsampleFoldersampleFolder/TestDocument.txtDocument39.0
The following is an example of the sampleFolder-meta.xml metadata file for the sampleFolder document folder:
PublicsampleFolder
404
Metadata Types
FolderShare
ReadWrite
SEE ALSO:
Dashboard
Document
EmailTemplate
Report
FolderShare
Represents the settings for enhanced analytics folder sharing. Users can control access to reports or dashboards by giving others Viewer,
Editor or Manager access to the folder that contains the report or dashboard.
File Suffix and Directory Location
FolderShare objects are stored in the reports and dashboards directories. For each report or dashboard folder it contains, there
is a metadata file named FolderName-meta.xml. The FolderName-meta.xml metadata file contains the metadata
information for that folder, such as the accessLevel. For example, if the reports directory contains a reports folder named
myReportsFolder, it also has a myReportsFolder-meta.xml file at the same level as myReportsFolder.
Version
FolderShare components are available in API version 28 and later.
Fields
Field Name
Field Type
Description
accessLevel
FolderShareAccessLevel
(enumeration of type string)
Required. Specifies the combination of actions that can be taken on
the folder. Valid values are:
• View. User can run a report or refresh a dashboard, but can’t edit
them. All users have at least Viewer access to report and dashboard
folders that have been shared with them. (Some users may have
administrative permissions that give them greater access.)
• EditAllContents. Users can view and modify the reports or
dashboards in the folder, and move them to and from any other
folders that they have equivalent access to.
• Manage. Users can do everything Viewers and Editors can do,
plus control other users’ access to a folder.
sharedTo
string
Required. Specifies the user, group, or role that has the specified access
level to the folder.
405
Metadata Types
FolderShare
Field Name
Field Type
Description
sharedToType
FolderSharedToType(enumeration Required. Specifies the type of entity that the folder is shared with.
of type string)
Valid values are:
• Group. Users in a specified public group have the specified access
level to the folder.
• Manager. Available in API version 29.0 and later.
• ManagerAndSubordinatesInternal. Available in API
version 29.0 and later.
• Role. Users with a specified role have the specified access level
to the folder.
• RoleAndSubordinates. Users with a specified role, and users
with a role subordinate to that role, have the specified access level
to the folder.
• RoleAndSubordinatesInternal. Users with a specified
role and users with a role subordinate to that role, except public
portal users, have the specified access level to the folder.
• Organization. All internal users have the specified access level
to the folder.
• Territory. Users in a specified territory have the specified
access level to the folder.
• TerritoryAndSubordinates. Users in a specified territory,
and users in territories subordinate to that, have the specified access
level to the folder.
• AllPrmUsers. All PRM Portal users have the specified level of
access to the folder.
• User. The specified individual user has the specified level of access
to the folder.
• PartnerUser. The specified individual user of a partner portal
has the specified level of access to the folder.
• AllCspUsers. All Customer Success Portal users have the
specified level of access to the folder.
• CustomerPortalUser. The specified individual user of a
customer portal has the specified level of access to the folder.
• PortalRole. Users with a specified role in a portal have the
specified access level to the folder.
• PortalRoleAndSubordinates. Portal users with a specified
role, and portal users with a role subordinate to that role, have the
specified access level to the folder.
406
Metadata Types
GlobalPicklist
Declarative Metadata Sample Definition
The following is an example of a FolderShare component for a dashboard folder:
ViewR1Role
This is an example of a FolderShare component for a report folder:
ViewR1Role
GlobalPicklist
Represents a global picklist, or the set of shared picklist values that custom picklist fields can use. (In contrast, the custom picklist fields
that are based on a global picklist are of type CustomValue.) This type extends the Metadata metadata type and inherits its fullName
field.
File Suffix and Directory Location
GlobalPicklist components have the suffix .globalPicklist and are stored in the globalPicklist folder.
Version
GlobalPicklist components are available in API version 37.0 only. In API version 38.0 and later, GlobalPicklist is replaced by the GlobalValueSet
on page 411 type.
Fields
Field Name
Field Type
Description
description
string
It’s useful to state the global picklist’s purpose, and which objects it’s intended
for. Limit: 255 characters.
globalPicklistValues GlobalPicklistValue on Requires at least one value. The list of values (or “picklist value set”) that’s defined
page 408[]
for a global picklist. The picklist value set is inherited by any custom picklist
field that’s based on that global picklist. Each value is of type GlobalPicklistValue.
A global picklist can have up to 1,000 total values (inclusive of inactive values).
407
Metadata Types
GlobalPicklistValue
Field Name
Field Type
Description
masterLabel
string
Required. A global picklist’s name, which is defined when the global picklist is
created. Appears as Label in the user interface.
sorted
string
Indicates whether a global picklist’s value set is sorted in alphabetical order.
By default this value is false.
Declarative Metadata Sample Definition
The following Territories.globalPicklist is an example of a GlobalPicklist component.
Updated:This is a basic global picklistNorthwestfalseNortheastfalseSouthtrueSouthwestfalsefalseTerritoriestrue
The following is an example package.xml that references the previous definition.
TerritoriesGlobalPicklist37.0
GlobalPicklistValue
Represents the definition of a value used in a global picklist. Custom picklist fields can inherit the picklist value set from a global picklist.
This type extends the Metadata metadata type and inherits its fullName field.
408
Metadata Types
GlobalPicklistValue
Note: GlobalPicklistValue components don’t have file suffixes or directories because they’re lists of values and not custom fields.
For file-based operations they can be accessed through GlobalPicklist (which is in API v37.0 only).
Version
GlobalPicklistValue components are available in API version 37.0 only. In API version 38.0 and later, GlobalPicklistValue is replaced by
CustomValue on page 311.
Fields
Field Name
Field Type
Description
color
string
The color assigned to the picklist value when it’s used in charts on reports
and dashboards. The color is in hexadecimal format; for example,
#FF6600. If a color is not specified, it’s assigned dynamically upon chart
generation.
default
boolean
Required. Indicates whether this value is the default selection for the
global picklist and the custom picklists that share its picklist value set.
This field is set to true by default.
description
string
The global picklist value’s description. It’s useful to include a description
for a global picklist value so the reason for creating it can be tracked.
Limit: 255 characters.
isActive
boolean
Indicates whether this value is currently active or inactive. The default
value is true. Users can select only active values from a picklist. An API
retrieve operation for global picklist values returns all active and inactive
values in the picklist. (Meanwhile, retrieving the values of a non-global,
unrestricted picklist returns only the active values.)
PicklistValue
This metadata type defines a value in the picklist and specifies whether this value is the default value. This type extends the
GlobalPicklistValue metadata type and inherits all its fields. In API version 36.0 and earlier, PicklistValue extends the Metadata type and
inherits its fullName field.
Note the following when working with picklist values:
• When you retrieve a standard object, all picklist values are retrieved, not just the customized picklist values.
• When you deploy changes to standard picklist fields, picklist values are added as needed.
• To deactivate a global picklist value, you can invoke an update() call on GlobalPicklist with the value omitted, or with the value’s
isActive field set to false. Or, you can invoke an update() call directly on GlobalPicklistValue with the isActive field
set to false.
• If picklist values are missing from a component definition, they get deactivated when deployed. Deactivation occurs for picklist
values of both standard and custom fields.
409
Metadata Types
GlobalPicklistValue
Field Name
Field Type
Description
allowEmail
boolean
Indicates whether this value lets users email a quote PDF (true), or not
(false). This field is only relevant for the Status field in quotes. This
field is available in API version 18.0 and later.
closed
boolean
Indicates whether this value is associated with a closed status (true),
or not (false). This field is only relevant for the standard Status
field in cases and tasks. This field is available in API version 16.0 and up
to version 36.0. In version 37.0, this field is in GlobalPicklistValue.
controllingFieldValues
string[]
A list of values in the controlling field that are linked to this picklist value.
The controlling field can be a checkbox or a picklist. This field is available
in API version 14.0 and later. The values in the list depend on the field
type:
• Checkbox: checked or unchecked.
• Picklist: The fullname of the picklist value in the controlling
field.
converted
boolean
Indicates whether this value is associated with a converted status (true),
or not (false). This field is relevant for only the standard Lead
Status field in leads. Your organization can set its own guidelines for
determining when a lead is qualified, but typically, you want to convert
a lead as soon as it becomes a real opportunity that you want to forecast.
For more information, see “Convert Qualified Leads” in the Salesforce
online help. This field is available in API version 16.0 and later.
cssExposed
boolean
Indicates whether this value is available in your Self-Service Portal (true),
or not (false). This field is only relevant for the standard Case
Reason field in cases.
Self-Service provides an online support channel for your customers allowing them to resolve their inquiries without contacting a customer
service representative. For more information about Self-Service, see
“Setting Up Self-Service” in the Salesforce online help.
Note: Starting with Spring ’12, the Self-Service portal isn’t
available for new orgs. Existing orgs continue to have access to
the Self-Service portal.
This field is available in API version 16.0 and later.
forecastCategory
ForecastCategories Indicates whether this value is associated with a forecast category
(enumeration of
(true), or not (false). This field is only relevant for the standard
type string)
Stage field in opportunities. For more information about forecast
categories, including the valid string values listed below, see “ Working
with Forecast Categories ” in the Salesforce online help.
• Omitted
• Pipeline
• BestCase
• Forecast
410
Metadata Types
Field Name
GlobalValueSet
Field Type
Description
• Closed
This field is available in API version 16.0 and later.
highPriority
boolean
Indicates whether this value is a high priority item (true), or not
(false). This field is only relevant for the standard Priority field
in tasks. For more information about tasks, see “Considerations for Using
Tasks” in the Salesforce online help. This field is available in API version
16.0 and later.
probability
int
Indicates whether this value is a probability percentage (true), or not
(false). This field is only relevant for the standard Stage field in
opportunities. This field is available in API version 16.0 and later.
reverseRole
string
A picklist value corresponding to a reverse role name for a partner. If the
role is “subcontractor”, then the reverse role might be “general
contractor”. Assigning a partner role to an account in Salesforce creates
a reverse partner relationship so that both accounts list the other as a
partner. This field is only relevant for partner roles.
For more information, see “Partner Fields” in the Salesforce online help.
This field is available in API version 18.0 and later.
reviewed
boolean
Indicates whether this value is associated with a reviewed status (true),
or not (false). This field is only relevant for the standard Status
field in solutions. For more information about opportunities, see “Creating
Solutions” in the Salesforce online help. This field is available in API
version 16.0 and later.
won
boolean
Indicates whether this value is associated with a closed or won status
(true), or not (false). This field is only relevant for the standard
Stage field in opportunities. This field is available in API version 16.0
and later.
Declarative Metadata Sample Definition
For an example of GlobalPicklistValue components with a package.xml that references them, see GlobalPicklist.
GlobalValueSet
Represents the metadata for a global picklist value set, which is the set of shared values that custom picklist fields can use. A global value
set isn't a field itself. (In contrast, the custom picklist fields that are based on a global picklist are of type ValueSet.) This type extends the
Metadata metadata type and inherits its fullName field.
File Suffix and Directory Location
GlobalValueSet components have the suffix .globalValueSet and are stored in the globalValueSets folder.
411
Metadata Types
GlobalValueSet
Version
GlobalValueSet components are available in API version 38.0 and later. In API version 37.0, this is the GlobalPicklist type.
Fields
Field Name
Field Type
Description
customValue
CustomValue[]
Requires at least one value. The list of values (or “global value set”) that’s defined
for a global picklist. The global value set is inherited by any custom picklist field
that uses that value set. Each value is of type customValue. A global value set
can have up to 1,000 total values (inclusive of inactive values).
description
string
It’s useful to state the global value set’s purpose, and which objects it’s intended
for. Limit: 255 characters.
masterLabel
string
Required. A global value set’s name, which is defined when the global value
set is created. Appears as Label in the user interface.
sorted
boolean
Required. Indicates whether a global value set is sorted in alphabetical order.
By default this value is false.
Declarative Metadata Sample Definition
The following Territories.globalValueSet is an example of a GlobalValueSet component.
Updated:This is a basic global value set.TerritoriesNorthtrueSouthEastWesttrue
The following is an example package.xml that references the previous definition.
412
Metadata Types
GlobalValueSetTranslation
TerritoriesGlobalValueSet38.0
GlobalValueSetTranslation
Contains details for a global value set translation. Global value sets are lists of values that can be shared by multiple custom picklist fields,
optionally across objects.This type extends the Metadata metadata type and inherits its fullName field.
File Suffix and Directory Location
GlobalValueSetTranslation components have the suffix .globalValueSetTranslation and are stored in the
globalValueSetTranslations folder.
Translations are stored in a file with a format of ValueSetName-lang.globalValueSetTranslation, where
ValueSetName is the global value set’s name, and lang is the translation language.
Version
GlobalValueSetTranslation components are available in API version 38.0 and later.
Fields
Field
Field Type
Description
valueTranslation
ValueTranslation[]
The translated name of a value in a translated global value set.
Each valueTranslation is paired with a masterLabel,
which is the original (untranslated) name of the value.
ValueTranslation
The original value name and the translated value name in a translated global value set.
Field
Field Type
Description
masterLabel
string
Required. The original (untranslated) name of a value in a global
value set. Each valueTranslation has a masterLabel
paired with its translation..
translation
string
The translated name of a value in a translated global value set.
413
Metadata Types
Group
Declarative Metadata Sample Definition
The following is an example of a GlobalValueSetTranslation component. When a value isn’t translated, its translation becomes a comment
that’s paired with its masterLabel.
ThreeTroisFourQuatreFive
The following is an example package.xml that references the previous definition.
Numbers-frGlobalValueSetTranslation38.0
SEE ALSO:
Translations
Group
Represents a set of public groups, which can have users, roles, and other groups.
Declarative Metadata File Suffix and Directory Location
The file suffix for group components is .group and components are stored in the groups directory of the corresponding package
directory.
Version
Group components are available in API version 24.0 and later.
414
Metadata Types
HomePageComponent
Fields
This metadata type represents the valid values that define a group:
Field Name
Field Type
Description
doesIncludeBosses
boolean
Indicates whether the managers have access (true) or do not have
access (false) to records shared with members of the group. This field
is only available for public groups.
fullName
string
The unique identifier for API access. The fullName can contain only
underscores and alphanumeric characters. It must be unique, begin with
a letter, not include spaces, not end with an underscore, and not contain
two consecutive underscores. This field is inherited from the Metadata
component. Corresponds to Group Name in the user interface.
name
string
Required. The name of the group. Corresponds to Label in the user
interface.
Declarative Metadata Sample Definition
The following is the definition of a group.
trueadmintest
HomePageComponent
Represents the metadata associated with a home page component. You can customize the Home tab to include components such as
sidebar links, a company logo, a dashboard snapshot, or custom components that you create. For more information, see “Customizing
Home Tab Page Layouts” in the Salesforce online help. This type extends the Metadata metadata type and inherits its fullName field.
Use to create, update, or delete home page component definitions.
Declarative Metadata File Suffix and Directory Location
The file suffix for home page components is .homePageComponent and components are stored in the homepagecomponents
directory of the corresponding package directory.
Version
Home page components are available in API version 12.0 and later.
415
Metadata Types
HomePageComponent
HomePageComponent
This metadata type represents the valid values that define a home page component:
Field Name
Field Type
Description
body
string
If this is an HTML page component, this is the body of the HTML.
fullName
string
The name can only contain characters, letters, and the underscore (_)
character, must start with a letter, and cannot end with an underscore
or contain two consecutive underscore characters.
Inherited from the Metadata component, this field is not defined in the
WSDL for this component. It must be specified when creating, updating,
or deleting. See create() to see an example of this field specified for
a call.
height
int
Required for Visualforce Area components. Indicates the height (in pixels)
of the component.
This field is available in API version 31.0 and later.
links
string[]
If the pageComponentType is links, then zero or more names
of custom page links can be specified.
• ObjectWebLink
• CustomPageWebLink
page
string
This field is only available for Visualforce Area components and indicates
the API name of the Visualforce page that is associated with the
component.
This field is available in API version 31.0 and later.
pageComponentType
PageComponentType Required. Valid values are:
(enumeration of type • links
string)
• htmlArea
• imageOrNote
• visualforcePage (This value is available in API version 31.0
and later.)
showLabel
boolean
This field is only available for Visualforce Area components and specifies
whether the component displays with a label (true) or not (false).
This field is available in API version 31.0 and later.
showScrollbars
boolean
This field is only available for Visualforce Area components and specifies
whether the component displays with scrollbars (true) or not (false).
This field is available in API version 31.0 and later.
416
Metadata Types
HomePageLayout
Field Name
Field Type
Description
width
PageComponentWidth This field is only available for HTML and Visualforce Area components,
(enumeration of type and indicates whether this is a narrow or wide home page component.
string)
Valid values are:
• narrowComponents
• wideComponents
Declarative Metadata Sample Definition
The following is the definition of a home page component. See HomePageLayout and WebLink for related samples.
200MyVisualforcePagevisualforcePagetruetruewideComponents
SEE ALSO:
HomePageLayout
WebLink
HomePageLayout
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. For more information, see “Customizing Home Tab Page Layouts” in the Salesforce online help.
File Suffix and Directory Location
Home page layouts are stored in the homePageLayouts directory of the corresponding package directory. The extension is
.homePageLayout.
Version
Home page components are available in API version 12.0 and later. This type extends the Metadata metadata type and inherits its
fullName field.
Fields
This metadata type represents the valid values that define a home page layout:
417
Metadata Types
InstalledPackage
Field Name
Field Type
Description
fullName
string
The name can only contain characters, letters, and the underscore (_)
character, must start with a letter, and cannot end with an underscore
or contain two consecutive underscore characters.
Inherited from the Metadata component, this field is not defined in the
WSDL for this component. It must be specified when creating, updating,
or deleting. See create() to see an example of this field specified for
a call.
narrowComponents
string[]
The list of elements in the narrow column on the left side of the home
page.
wideComponents
string[]
The list of elements in the wide column on the right side of the home
page.
Declarative Metadata Sample Definition
The following is the definition of a home page layout. See HomePageComponent on page 417 and WebLink on page 284 for related
samples.
google
SEE ALSO:
HomePageComponent
WebLink
InstalledPackage
Represents a package to be installed or uninstalled. Deploying a newer version of a currently installed package upgrades the package.
Note: You can’t deploy a package along with other metadata types. Hence, InstalledPackage must be the only metadata
type specified in the manifest file.
File Suffix and Directory Location
The package is specified in the installedPackages directory, in a file named after the package’s namespace prefix. The file
extension is .installedPackage.
Version
InstalledPackage is available in API version 28.0 and later.
418
Metadata Types
KeywordList
Fields
Field Name
Field Type
Description
versionNumber
string
The version number of the package. This has the format
majorNumber.minorNumber.patchNumber (for example,
2.1.3).
password
string
An optional field specifying the package password.
Declarative Metadata Sample Definition
This specifies a sample package to be installed or uninstalled.
1.0optional_password
KeywordList
Represents a list of keywords used in community moderation. This keyword list is a type of moderation criteria that defines offensive
language or inappropriate content that you don’t want in your community. This type extends the Metadata metadata type and inherits
its fullName field.
Keep the following things in mind when creating keyword list criteria:
• Your org can have up to 30 keyword list criteria. This limit is per org, not per community.
• A keyword list can have up to 2,000 keywords.
• Capitalization and trailing punctuation are ignored when matching your keywords to user-generated content. For example, if your
criteria includes BadWord, it’s matched when a user types BADWORD or badword.
File Suffix and Directory Location
KeywordList components have the suffix .keywords and are stored in the moderation directory of the corresponding package
directory. The file name format follows community_name.keyword_list_developer_name.keywords.
Version
KeywordList components are available in API version 36.0 and later.
Special Access Rules
To view, create, edit, and delete a keyword list, you need the Manage Communities or Create and Set Up Communities permission.
419
Metadata Types
KeywordList
Fields
Field Name
Field Type
Description
Description
string
A description of the keyword list.
keywords
Keyword[]
The keywords you want moderate in your community.
masterLabel
string
Required. Label for the keyword list.
Keyword
Keywords in the keyword list.
Field Name
Field Type
Description
keyword
string
Required. Keywords you want to moderate.
• Keywords can only be up to 100 characters and can include letters,
numbers, spaces, and special characters.
• Wildcard characters aren’t supported.
Declarative Metadata Sample Definition
The following is an example of a KeywordList component.
Bad Word ListList of bad words updated by Joe in Nov 2015.bad-wordb a d w o r db@dword
The following is an example package.xml that references the previous definition.
KeywordListcommunity1.badword_list36.0
420
Metadata Types
Layout
Layout
Represents the metadata associated with a page layout. For more information, see “Page Layouts” in the Salesforce online help. This
type extends the Metadata metadata type and inherits its fullName field.
Note: To edit the Ideas layout, specify it by name in the package.xml file. In package.xml, use the following code to
retrieve the Ideas layout:
Idea-Idea LayoutLayout
File Suffix and Directory Location
Layouts are stored in the layouts directory of the corresponding package directory. The extension is .layout.
Note: Retrieving a component of this metadata type in a project makes the component appear in any Profile and PermissionSet
components that are retrieved in the same package.
Version
Layouts are available in API version 13.0 and later.
Fields
This metadata type represents the valid values that define a page layout.
Field Name
Field Type
Description
customButtons
string[]
The custom buttons for this layout. Each button is a
reference to a WebLink on the same object. For example,
a ButtonLink refers to a Weblink on the same standard or
custom object named 'ButtonLink'.
customConsoleComponents
CustomConsoleComponents Represents custom console components (Visualforce pages,
lookup fields, or related lists; Force.com Canvas apps not
available) on a page layout. Custom console components
only display in the Salesforce console.
emailDefault
boolean
Only relevant if showEmailCheckbox is set; indicates
the default value of that checkbox.
excludeButtons
string[]
List of standard buttons to exclude from this layout. For
example,
Delete
excludes the Delete button from this layout.
feedLayout
FeedLayout
Represents the values that define the feed view of a
feed-based page layout. Feed-based layouts are available
421
Metadata Types
Field Name
Layout
Field Type
Description
on Account, Case, Contact, Lead, Opportunity, custom, and
external objects. They include a feed view and a detail view.
headers
LayoutHeader[]
Layout headers are currently only used for tagging, and
(enumeration of type string) only appear in the UI if tagging is enabled. Valid string
values are:
• PersonalTagging—tag is private to user.
• PublicTagging—tag is viewable any other user
who can access the record.
layoutSections
LayoutSection[]
The main sections of the layout containing fields, s-controls,
and custom links. The order here determines the layout
order.
miniLayout
MiniLayout
A mini layout is used in the mini view of a record in the
Console tab, hover details, and event overlays.
multilineLayoutFields
string[]
Fields for the special multiline layout fields which appear
in OpportunityProduct layouts. These fields are otherwise
similar to miniLayoutFields miniLayout.
platformActionList
PlatformActionList
The list of actions, and their order, that display in the
Salesforce1 action bar for the layout.
This field is available in API version 34.0 and later.
quickActionList
QuickActionList
The list of quick actions that display in the full Salesforce
site for the page layout. This field is available in API version
28.0 and later.
relatedContent
RelatedContent
The Related Content section of the page layout. This field
is available in API version 29.0 and later.
relatedLists
RelatedListItem[]
The related lists for the layout, listed in the order they
appear in the user interface.
relatedObjects
string[]
The list of related objects that appears in the mini view of
the console. In database terms, these objects are foreign
key fields on the object for the layout. For more information,
see “Choose Related Objects for the Agent Console's Mini
View” in the Salesforce online help.
runAssignmentRulesDefault
boolean
Only relevant if
showRunAssignmentRulesCheckbox is set;
indicates the default value of that checkbox.
showEmailCheckbox
boolean
Only allowed on Case, CaseClose, and Task layouts. If set, a
checkbox appears to show email.
showHighlightsPanel
boolean
If set, the highlights panel displays on pages in the
Salesforce console. This field is available in API version 22.0
and later.
422
Metadata Types
Layout
Field Name
Field Type
Description
showInteractionLogPanel
boolean
If set, the interaction log displays on pages in the Salesforce
console. This field is available in API version 22.0 and later.
showKnowledgeComponent
boolean
Only allowed on Case layouts. If set, the Knowledge sidebar
displays on cases in the Salesforce console. This field is
available in API version 20.0 and later.
showRunAssignmentRulesCheckbox boolean
Only allowed on Lead and Case objects. If set, a checkbox
appears on the page to show assignment rules.
showSolutionSection
boolean
Only allowed on CaseClose layout. If set, the built-in solution
information section shows up on the page.
showSubmitAndAttachButton
boolean
Only allowed on Case layout. If set, the Submit & Add
Attachment button displays on case edit pages to portal
users in the Customer Portal.
CustomConsoleComponents
Represents custom console components (Visualforce pages, lookup fields, or related lists; Force.com Canvas apps not available) on a
page layout. Custom console components only display in the Salesforce console. Available in API version 25.0 and later.
Field Name
Field Type
Description
primaryTabComponents
PrimaryTabComponents Represents custom console components on primary tabs in the Salesforce
console. Available in API version 25.0 and later.
subtabComponents
SubtabComponents
Represents custom console components on subtabs in the Salesforce
console. Available in API version 25.0 and later.
PrimaryTabComponents
Represents custom console components on primary tabs in the Salesforce console. Available in API version 25.0 and later.
Field Name
Field Type
Description
component
ConsoleComponent[] Represents a custom console component (Visualforce page, lookup field,
or related lists; Force.com Canvas apps not available) on a section of a
page layout. Custom console components only display in the Salesforce
console. This field is available in API version 29.0 and earlier.
containers
Container[]
Represents a location and style in which to display more than one custom
console component on the sidebars of the Salesforce console. You can
specify up to five components for each of the four locations (left, right,
top, and bottom). This field is available in API version 30.0 and later.
423
Metadata Types
Layout
ConsoleComponent
Represents a custom console component (Visualforce page, lookup field, or related lists; Force.com Canvas apps not available) on a
section of a page layout. Custom console components only display in the Salesforce console. Available in API version 25.0 and later.
Field Name
Field Type
Description
height
int
Required for components with a location of top or bottom. The height
of the custom console component. The value must be specified in pixels
and be greater than 0 but less than 999.
location
string
Required. The location of the custom console component on the page
layout. Valid values are right, left, top, and bottom. A component can
have one location for each page layout.
visualforcePage
string
Required. The unique name of the custom console component. For
example, ConsoleComponentPage.
width
int
Required for components with a location of left or right. The width of the
custom console component. The value must be specified in pixels and
be greater than 0 but less than 999.
Container
Represents a location and style in which to display more than one custom console component in the sidebars of the Salesforce console.
For example, you can display multiple components in the right sidebar of the console with a style of either stack, tabs, or accordion.
Available in API version 30.0 and later.
Field Name
Field Type
Description
height
int
Required for components with a location of top or bottom. The height
of the components’ container. The unit field determines the unit of
measurement, in pixels or percent.
isContainerAutoSizeEnabled boolean
region
string
Required. If set to true, stacked console components in the sidebars
autosize vertically. Set to true by default for newly created console
components. Available in API version 32.0 and later.
Required. The location of the components’ container. Valid values include:
• right
• left
• top
• bottom
sidebarComponents
SidebarComponent[]
Represents a specific custom console component to display in the
components’ container.
style
string
Required. The style of the container in which to display multiple
components. Valid values include:
• stack—a content area with multiple frames.
424
Metadata Types
Field Name
Layout
Field Type
Description
• tabs—a single content area with a list of multiple panels.
• accordian—a collapsible content area.
unit
string
Required. The unit of measurement, in pixels or percent, for the height
or width of the components’ container.
Pixel values are simply the number of pixels, for example, 500, and must
be greater than 0 but less than 999. Percentage values must include the
percent sign, for example, 20%, and must be greater than 0 but less than
100.
width
int
Required for components with a location of right or left. The width of the
components’ container. The unit field determines the unit of
measurement, in pixels or percent.
SidebarComponent
Represents a specific custom console component to display in a container that hosts multiple components in one of the sidebars of the
Salesforce console. You can specify up to five components for each of the four container locations (left, right, top, and bottom). Available
in API version 30.0 and later.
Field Name
Field Type
Description
componentType
string
Specifies the component type. Valid values are KnowledgeOne,
Lookup, Milestones, RelatedList, Topics, Files, and
CaseExperts. This field is available in API version 31.0 and later. The
Files and CaseExperts values are available in API version 32.0
and later.
Note: Case Experts is available through a pilot program.
height
int
Required for components with a location of top or bottom. The height
of the component in the container. The unit field determines the unit
of measurement, in pixels or percent.
label
string
The name of the component as it displays to console users. Available for
components in a container with the style of tabs or accordion.
lookup
string
If the component is a lookup field, the name of the field.
page
string
If the component is a Visualforce page, the name of the Visualforce page.
relatedlists
RelatedList[]
If the component is a related list, the name of the list. This field is available
in API version 31.0 and later.
unit
string
The unit of measurement, in pixels or percent, for the height or width of
the component in the container.
Pixel values are simply the number of pixels, for example, 500, and must
be greater than 0 but less than 999. Percentage values must include the
425
Metadata Types
Field Name
Layout
Field Type
Description
percent sign, for example, 20%, and must be greater than 0 but less than
100.
width
int
Required for components with a location of right or left. The width of the
component in the container. The unit field determines the unit of
measurement, in pixels or percent.
RelatedList
Represents related list custom components on the sidebars of the Salesforce console. Available in API version 31.0 and later.
Field Name
Field Type
Description
hideOnDetail
boolean
If set to true, the related list is hidden from detail pages where it
appears as a component to prevent duplicate information from showing.
name
string
The name of the component as it appears to console users.
SubtabComponents
Represents custom console components on subtabs in the Salesforce console. Available in API version 25.0 and later.
Field Name
Field Type
Description
component
ConsoleComponent[] Represents a custom console component (Visualforce page, lookup field,
or related lists; Force.com Canvas apps not available) on a section of a
page layout. Custom console components only display in the Salesforce
console. This field is available in API version 29.0 and earlier.
containers
Container[]
Represents a location and style in which to display more than one custom
console component on the sidebars of the Salesforce console. You can
specify up to five components for each of the four locations (left, right,
top, and bottom). This field is available in API version 30.0 and later.
FeedLayout
Represents the values that define the feed view of a feed-based page layout. Feed-based layouts are available on Account, Case, Contact,
Lead, Opportunity, custom, and external objects. They include a feed view and a detail view. Available in API version 30.0 and later.
Field Name
Field Type
Description
autocollapsePublisher
boolean
Specifies whether the publisher is automatically collapsed when the
page loads (true) or not (false).
compactFeed
boolean
Specifies whether the feed-based page layout uses a compact feed
(true) or not (false). If set to true, feed items on the page are
collapsed by default, and the feed view has an updated design.
426
Metadata Types
Layout
Field Name
Field Type
Description
feedFilterPosition
FeedLayoutFilterPosition Where the feed filters list is included in the layout. Valid values are:
(enumeration of type • centerDropDown—as a drop-down list in the center column.
string)
• leftFixed—as a fixed list in the left column.
• leftFloat—as a floating list in the left column.
feedFilters
FeedLayoutFilter[]
The individual filters displayed in the feed filters list.
fullWidthFeed
boolean
Specifies whether the feed expands horizontally to take up all available
space on the page (true) or not (false).
hideSidebar
boolean
Specifies whether the sidebar is hidden (true) or not (false).
leftComponents
FeedLayoutComponent[] The individual components displayed in the left column of the feed view.
rightComponents
FeedLayoutComponent[] The individual components displayed in the right column of the feed
view.
FeedLayoutComponent
Represents a component in the feed view of a feed-based page layout. Available in API version 30.0 and later.
Field Name
Field Type
Description
componentType
FeedLayoutComponentType Required. The type of component. Valid values are:
(enumeration of type • HelpAndToolLinks—icons that link to the help topic for the
string)
page, the page layout, and, the printable view of the page. Available
only on Case layouts.
• CustomButtons—a custom button.
• Following—an icon that toggles between a Follow button (if
the user viewing a record doesn’t already follow it) and a Following
indicator (if the user viewing a record does follow it).
• Followers—a list of users who follow the record.
• CustomLinks—a custom link.
• Milestones—the milestone tracker, which lets users see the
status of a milestone on a case. Available only on Case layouts.
• Topics—a list of topics related to the record.
• CaseUnifiedFiles—a list of all files that are attached to the
case.
• Visualforce—a custom Visualforce component.
height
int
The height, in pixels, of the component. Doesn’t apply to
standardComponents
page
string
The name of a Visualforce page being used as a custom component.
427
Metadata Types
Layout
FeedLayoutFilter
Represents a feed filter option in the feed view of a feed-based page layout. A filter must have only standardFilter or
feedItemType set. Available in API version 30.0 and later.
Field Name
Field Type
Description
feedFilterName
string
The name of a CustomFeedFilter component. Names are prefixed with
the name of the parent object. For example,
Case.MyCustomFeedFilter.
feedFilterType
FeedLayoutFilterType
(enumeration of type
string)
The type of filter. Valid values are:
FeedItemType
(enumeration of type
string)
The type of feed item to display. Valid values are:
feedItemType
• AllUpdates—shows all feed items on a record.
• FeedItemType—shows feed items only for a particular type of
activity on the record.
• ActivityEvent—feed items related to activity on tasks and
events associated with a case. Available only on Case layouts.
• AdvancedTextPost–feed items related to group
announcements posted on a feed. This value is available in API
version 31.0 and later.
• AnnouncementPost–Not used.
• ApprovalPost—feed items related to approvals that are
submitted on a feed.
• AttachArticleEvent—feed items for activity related to
attaching articles to cases. Available only on Case layouts.
• BasicTemplateFeedItem—Not used.
• CallLogPost—feed items for activity from the Log a Call action.
Available only on layouts for objects that support Activities (tasks
and events).
• CanvasPost—feed items related to posts a canvas app makes
on a feed.
• CaseCommentPost—feed items for activity from the Case Note
action. Available only on Case layouts.
• ChangeStatusPost—feed items for activity from the Change
Status action. Available only on Case layouts.
• ChatTranscriptPost—feed items for activity related to
attaching Live Agent chat transcripts to cases. Available only on Case
layouts.
• CollaborationGroupCreated—feed items related to
creating a public group.
• CollaborationGroupUnarchived—Not used.
• ContentPost—feed items related to attaching a file to a post.
• CreatedRecordEvent—feed items related to creating a record
from the publisher.
428
Metadata Types
Field Name
Layout
Field Type
Description
• DashboardComponentSnapshot—feed items related to
posting a dashboard snapshot on a feed.
• EmailMessageEvent—feed items for activity from the Email
action. Available only on Case layouts.
• FacebookPost—Not used.
• LinkPost—feed items related to attaching a URL to a post.
• MilestoneEvent—feed items for changes to the milestone
status on a case. Available only on Case layouts.
• PollPost—feed items related to posting a poll on a feed.
• ProfileSkillPost—feed items related to skills added to a
user’s Chatter profile. This value is available in API version 31.0 and
later.
• QuestionPost—feed items related to posting a question on a
feed. This value is available in API version 31.0 and later.
• ReplyPost—feed items for activity from the Portal action.
Available only on Case layouts.
• RypplePost—feed items related to creating a Thanks badge in
Work.com.
• SocialPost—feed items for activity on Twitter from the Social
Post action.
• TextPost—feed items for creating a text post from the publisher.
• TrackedChange—feed items related to a change or group of
changes to a tracked field.
• UserStatus—Not used.
MiniLayout
Represents a mini view of a record in the Console tab, hover details, and event overlays.
Field Name
Field Type
Description
fields
string[]
The fields for the mini-layout, listed in the order they appear in the UI.
Fields that appear here must appear in the main layout.
relatedLists
RelatedListItem[]
The mini related list, listed in the order they appear in the UI. You cannot
set sorting on mini related lists. Fields that appear here must appear in
the main layout.
LayoutSection
LayoutSection represents a section of a page layout, such as the Custom Links section.
429
Metadata Types
Layout
Field Name
Field Type
Description
customLabel
boolean
Indicates if this section's label is custom or standard (built-in). Custom
labels can be any text, but must be translated. Standard labels have a
predefined set of valid values, for example 'System Information', which
are automatically translated.
detailHeading
boolean
Controls if this section appears in the detail page. In the UI, this setting
corresponds to the checkbox in the section details dialog.
editHeading
boolean
Controls if this section appears in the edit page.
label
string
The label; either standard or custom, based on the customLabel
flag.
layoutColumns
LayoutColumn[]
The columns of the layout, depending on the style. 1, 2, or 3 columns,
ordered left to right, are possible.
style
LayoutSectionStyle
(enumeration of type
string)
The style of the layout:
• TwoColumnsTopToBottom - Two columns, tab goes top to
bottom
• TwoColumnsLeftToRight - Two columns, tab goes left to
right
• OneColumn - One column
• CustomLinks - Contains custom links only
summaryLayout
SummaryLayout
Reserved for future use.
LayoutColumn
LayoutColumn represents the items in a column within a layout section.
Field Name
Field Type
Description
layoutItems
LayoutItem[]
The individual items within a column (ordered from top to bottom).
reserved
string
This field is reserved for Salesforce. The field resolves an issue with some
SOAP libraries. Any value entered in the field is ignored.
LayoutItem
LayoutItem represents the valid values that define a layout item. An item must have only one of the following values set: component,
customLink, field, scontrol, page, analyticsCloudComponent, or reportChartComponent.
Field Name
Field Type
Description
behavior
UiBehavior (enumeration of type string) Determines the field behavior. Valid string values:
• Edit—The layout field can be edited but is not
required
430
Metadata Types
Field Name
Layout
Field Type
Description
• Required—The layout field can be edited and is
required
• Readonly—The layout field is read-only
canvas
string
Reference to a canvas app.
This field is available in API version 31.0 and later.
component
string
Reference to a component. Value must be
sfa:socialCard.
This field is available in API version 30.0 and later. This is
only allowed inside a RelatedContentItem.
sfa:socialCard is only supported on page layouts
for contacts, accounts, and leads.
customLink
string
The customLink reference. This is only allowed inside
a CustomLink layoutSection.
emptySpace
boolean
Controls if this layout item is a blank space.
field
string
The field name reference, relative to the layout object,
for example Description or MyField__c.
height
int
For s-control and pages only, the height in pixels.
page
string
Reference to a Visualforce page.
analyticsCloudComponent AnalyticsCloudComponentLayoutItem Refers to a Wave Analytics dashboard that you can add
to a standard or custom object page.
This field is available in API version 34.0 and later.
reportChartComponent
ReportChartComponentLayoutItem
Refers to a report chart that you can add to a standard
or custom object page.
scontrol
string
Reference to an s-control.
showLabel
boolean
For s-control and pages only, whether to show the label.
showScrollbars
boolean
For s-control and pages only, whether to show scrollbars.
width
string
For s-control and pages only, the width in pixels or
percent. Pixel values are simply the number of pixels, for
example, 500. Percentage values must include the
percent sign, for example, 20%.
AnalyticsCloudComponentLayoutItem
Represents the settings for a Wave Analytics dashboard on a standard or custom page. Available in API version 34.0 and later.
431
Metadata Types
Layout
Field Name
Field Type
Description
assetType
string
Required. Specifies the type of Wave Analytics asset to add. The available
asset type is dashboard.
devName
string
Required. Unique development name of the dashboard to add.
error
string
Error string; only populated if an error occurred in the underlying
dashboard.
filter
string
Communicates initial dashboard filters for mapping data fields in the
dashboard to the object’s fields, so that the dashboard shows only the
data that’s relevant for the record being viewed.
height
int
Specifies the height of the dashboard, in pixels. The default is 400.
hideOnError
boolean
Controls whether users see a dashboard that has an error. When this
attribute is set to true, if the dashboard has an error, the dashboard
doesn’t appear on the page. When set to false, the dashboard appears
but doesn’t show any data except the error. An error can happen when
a user doesn’t have access to Wave Analytics or to the dashboard. The
default is true.
showSharing
boolean
If set to true, and the dashboard is shareable, then the dashboard
shows the Share icon. Users can click the icon to open the Share dialog
and post or download from the dashboard. If set to false, the
dashboard doesn't show the Share icon. This field is available in API
version 37.0 and later.
showTitle
boolean
If true, includes the dashboard’s title above the dashboard. If false,
the dashboard appears without a title. The default is true.
width
string
Specifies the width of the dashboard, in pixels or percent. Pixel values
are simply the number of pixels, for example, 500. Percentage values
must include the percent sign, for example, 20%. The default is 100%.
ReportChartComponentLayoutItem
Represents the settings for a report chart on a standard or custom page.
Field Name
Field Type
Description
cacheData
boolean
Indicates whether to use cached data when displaying the chart. When
the attribute is set to true, data is cached for 24 hours. If the attribute
is set to false, the report is run every time the page is refreshed.
This field is available in API version 29.0 and later.
contextFilterableField string
Unique development name of the field by which a report chart is filtered
to return data relevant to the page. If set, the ID field for the parent object
of the page or report type is the chart data filter. The parent object for
the report type and the page must match for a chart to return relevant
data.
432
Metadata Types
Layout
Field Name
Field Type
Description
error
string
Error string; only populated if an error occurred in the underlying report.
This field is available in API version 31.0 and later.
hideOnError
boolean
Controls whether users see a chart that has an error. When there’s an
error and this attribute is not set, the chart doesn’t show any data except
the error. An error can happen for many reasons, such as when a user
doesn’t have access to fields used by the chart or a chart has been
removed from the report. Set the attribute to true to hide the chart
from a page on error.
This field is available in API version 29.0 and later.
includeContext
boolean
If true, filters the report chart to return data that’s relevant to the page.
reportName
string
Unique development name of a report that includes a chart.
showTitle
boolean
If true, applies the title from the report to the chart.
size
ReportChartComponentSize The chart size is medium when no value is specified. Valid values:
(enumeration of type • SMALL
string)
• MEDIUM
• LARGE
PlatformActionList
PlatformActionList represents the list of actions, and their order, that display in the Salesforce1 action bar for the layout. Available in API
version 34.0 and later.
Field Name
Field Type
Description
actionListContext
PlatformActionListContext Required. The context of the action list. Valid values are:
(enumeration of
• Assistant
type string)
• BannerPhoto
• Chatter
• Dockable
• FeedElement
• FlexiPage
• Global
• ListView
• ListViewDefinition
• ListViewRecord
• Lookup
• MruList
• MruRow
433
Metadata Types
Layout
Field Name
Field Type
Description
• ObjectHomeChart
• Photo
• Record
• RecordEdit
• RelatedList
• RelatedListRecord
platformActionListItems
PlatformActionListItem[] The actions in the PlatformActionList.
relatedSourceEntity
string
When the ActionListContext is RelatedList or RelatedListRecord,
this field represents the API name of the related list to which the action
belongs.
PlatformActionListItem
PlatformActionListItem represents an action in the PlatformActionList. Available in API version 34.0 and later.
Field Name
Field Type
Description
actionName
string
The API name for the action in the list.
actionType
PlatformActionType The type of action. Valid values are:
(enumeration of type • ActionLink—An indicator on a feed element that targets an API, a
string)
web page, or a file, represented by a button in the Salesforce Chatter feed
UI.
• CustomButton—When clicked, opens a URL or a Visualforce page in
a window or executes JavaScript.
• InvocableAction
• ProductivityAction—Productivity actions are predefined by
Salesforce and are attached to a limited set of objects. You can’t edit or
delete productivity actions.
• QuickAction—A global or object-specific action.
• StandardButton—A predefined Salesforce button such as New, Edit,
and Delete.
sortOrder
int
The placement of the action in the list.
subtype
string
The subtype of the action. For quick actions, the subtype is
QuickActionType. For custom buttons, the subtype is
WebLinkTypeEnum. For action links, subtypes are Api, ApiAsync,
Download, and Ui. Standard buttons and productivity actions have no
subtype.
434
Metadata Types
Layout
QuickActionList
QuickActionList represents the list of actions associated with the page layout. Available in API version 28.0 and later.
Field Name
Field Type
Description
quickActionListItems
QuickActionListItem[] Array of zero or more QuickActionList objects.
QuickActionListItem
QuickActionListItem represents an action in the QuickActionList. Available in API version 28.0 and later.
Field Name
Field Type
Description
quickActionName
string
The API name of the action.
RelatedContent
RelatedContent represents the Mobile Cards section of the page layout. Available in API version 29.0 and later.
Field Name
Field Type
Description
relatedContentItems
RelatedContentItem[] A list of layout items in the Mobile Cards section of the page layout.
RelatedContentItem
RelatedContentItem represents an individual item in the RelatedContentItem list. Available in API version 29.0 and later.
Field Name
Field Type
Description
layoutItem
LayoutItem
An individual LayoutItem in the Mobile Cards section.
RelatedListItem
RelatedListItem represents a related list in a page layout.
Field Name
Field Type
Description
customButtons
string[]
A list of custom buttons used in the related list. For more information,
see “Define Custom Buttons and Links” in the Salesforce online help.
excludeButtons
string[]
A list of excluded related-list buttons.
fields
string[]
A list of fields displayed in the related list.
Retrieval of standard fields on related lists uses aliases instead of field or
API names. For example, the Fax, Mobile, and Home Phone fields
are retrieved as Phone2, Phone3, and Phone4, respectively.
435
Metadata Types
Layout
Field Name
Field Type
Description
relatedList
string
Required. The name of the related list.
sortField
string
The name of the field that is used for sorting.
sortOrder
SortOrder
(enumeration of type
string)
If the sortField is set, the sortOrder field determines the sort
order.
• Asc - sort in ascending order
• Desc - sort in descending order
SummaryLayout
Controls the appearance of the highlights panel, which summarizes key fields in a grid at the top of a page layout, when Case Feed is
enabled. Available in API version 25.0 and later.
Field Name
Field Type
Description
masterLabel
string
Required. The name of the layout label.
sizeX
int
Required. Number of columns in the highlights pane, between 1 and 4
(inclusive).
sizeY
int
Required. Number of rows in each column, either 1 or 2.
sizeZ
int
Reserved for future use. If provided, the setting is not visible to users.
summaryLayoutItems
SummaryLayoutItem[] Controls the appearance of an individual field and its column and row
position within the highlights panel grid, when Case Feed is enabled. At
least one is required.
summaryLayoutStyle
SummaryLayoutStyle
(enumeration of type
string)
Highlights panel style. Valid string values are:
• Default
• QuoteTemplate
• DefaultQuoteTemplate
• CaseInteraction
• QuickActionLayoutLeftRight (Available in API version 28.0 and later.)
• QuickActionLayoutTopDown (Available in API version 28.0 and later.)
SummaryLayoutItem
Controls the appearance of an individual field and its column and row position within the highlights panel grid, when Case Feed is
enabled. You can have two fields per each grid in a highlights panel. Available in API version 25.0 and later.
Field Name
Field Type
Description
customLink
string
If the item is a custom link, this is the customLink reference.
436
Metadata Types
Layout
Field Name
Field Type
Description
field
string
The field name reference, relative to the page layout. Must be a standard
or custom field that also exists on the detail page.
posX
int
Required. The item's column position in the highlights panel grid. Must
be within the range of sizeX.
posY
int
Required. The item's row position in the highlights panel grid. Must be
within the range of sizeY.
posZ
int
Reserved for future use. If provided, the setting is not visible to users.
Declarative Metadata Sample Definition
The following is the definition of a page layout:
leftPixel10160simplepage1Percentage40Hello_WorldPercentagetopConsoleComponentPage2200ButtonLinktrueRequiredName
437
Metadata Types
Layout
180LayoutSControltruetrue50%CUST_IDtrueOpen_Accounts_by_CasesfalseLARGEEditOwnerIdEditCurrencyIsoCodetrueReadonlyCreatedByIdReadonlyAlpha1__c200mcanvasPagetruefalse100%ReadonlyLastModifiedById
438
Metadata Types
Layout
EditTextArea__ctruetrueCustomWebLinkFeedItem.TextPostFeedItem.ContentPostFeedItem.LinkPostFeedItem.PollPostsfa:socialPanelNameOwnerIdCurrencyIsoCodeAlpha1__cTextArea__cRelatedNoteListStepStatusCreatedDateOriginalActorActorComments
439
Metadata Types
Layout
Actor.AliasOriginalActor.AliasRelatedProcessHistoryListRelatedNoteList
The following is an example of a layout using :
trueReadonlyCreatedByIdRequiredNameReadonlyLastModifiedByIdGreat Name4200Name
The following is an example of a feed-based layout:
...
customLinks
440
Metadata Types
Letterhead
followfollowersvisualforceaccountCustomWidget200truecenterDropDownallUpdatesfeedItemTypeCallLogPostfeedItemTypeTextPost
...
Letterhead
Represents formatting options for the letterhead in an email template. Letterheads define the look and feel of your HTML email templates.
Your HTML email templates can inherit the logo, color, and text settings from a letterhead. For more information, see “Create a Letterhead”
in the Salesforce online help. This type extends the Metadata metadata type and inherits its fullName field.
File Suffix and Directory Location
The file suffix for letterheads is .letter and components are stored in the letterhead directory of the corresponding package
directory.
Version
Letterheads are available in API version 12.0 and later.
Fields
With the exception of logo, and horizontal and vertical alignment, all of these fields are required.
Field Name
Field Type
Description
available
boolean
Required. Indicates whether this letterhead can be used
(true) or not (false), for example, in an email template.
441
Metadata Types
Letterhead
Field Name
Field Type
Description
backgroundColor
string
Required. The background color, in hexadecimal, for example
#FF6600.
bodyColor
string
Required. The body color in hexadecimal.
bottomLine
LetterheadLine (enumeration of type string)
Required. The style for the bottom line. Valid style values
include:
• color. The color of the line in hexadecimal, as a string
value.
• height. The height of the line, as an int value.
description
string
Text description of how this letterhead differs from other
letterheads.
fullName
string
The internal name of the letterhead, based on the name,
but with white spaces and special characters escaped out
for validity.
footer
LetterheadHeaderFooter
Required. The style for the footer.
header
LetterheadHeaderFooter
Required. The style for the header.
middleLine
LetterheadLine
Required. The style for the middle border line in your
letterhead. Valid style values include:
• color. The color of the line in hexadecimal, as a string
value.
• height. The height of the line, as an int value.
name
string
Required. The name of the letterhead.
topLine
LetterheadLine
Required. The style for the top horizontal line below the
header. Valid style values include:
• color. The color of the line in hexadecimal, as a string
value.
• height. The height of the line, as an int value.
LetterheadHeaderFooter
LetterheadHeaderFooter represents the properties of a header or footer.
Field
Field Type
Description
backgroundColor
string
Required. The background color of the header or footer in
hexadecimal format.
height
DashboardComponent[]
Required. The height of the header or footer.
442
Metadata Types
Letterhead
Field
Field Type
Description
horizontalAlignment
LetterheadHorizontalAlignment The horizontal alignment of the header or footer. Valid values
(enumeration of type string)
are:
• None
• Left
• Center
• Right
logo
string
The logo which is a reference to a document, for example
MyFolder/MyDocument.gif.
verticalAlignment
LetterheadVerticalAlignment
(enumeration of type string)
The vertical alignment of the header or footer. Valid values are:
• None
• Top
• Middle
• Bottom
LetterheadLine
LetterheadLine represents the properties of a line.
Field
Field Type
Description
color
string
Required. The color of the line in hexadecimal format.
height
int
Required. The height of the line.
Declarative Metadata Sample Definition
true#CCCCCC#33FF33#3333FF5INITIAL#FFFFFF
443
Metadata Types
LiveChatAgentConfig
100LeftTop#AAAAFF5SimpleLetterheadLabel#FF99FF5
LiveChatAgentConfig
Represents the configuration of an organization’s Live Agent deployment, such as how many chats can be assigned to an agent and
whether or not chat sounds are enabled. This type extends the Metadata metadata type and inherits its fullName field.
File Suffix and Directory Location
LiveChatAgentConfig configurations are referenced in the .liveChatAgentConfig file in the
liveChatAgentConfigs directory.
Version
LiveChatAgentConfig is available in API version 28.0 and later.
Fields
Field Name
Field Type
Description
assignments
AgentConfigAssignments Specifies how agent configurations are assigned to Live
Agent users. Agent configurations can be assigned to sets
of users or sets of profiles.
autoGreeting
string
Specifies the greeting that displays when a customer begins
a chat with an agent.
capacity
int
Specifies the maximum number of chats in which an agent
can be engaged at a time.
criticalWaitTime
int
Specifies the number of seconds an agent can wait to answer
an engaged chat before the chat tab flashes to alert the agent
to answer it.
enableAgentSneakPeek
boolean
Specifies whether a supervisor can see the content of an
agent’s message before they send it to a customer (true)
or not (false).
444
Metadata Types
LiveChatAgentConfig
Field Name
Field Type
Description
enableAssistanceFlag
boolean
Indicates whether agents can raise an assistance flag to notify
a supervisor that they need help. Available in API version
35.0 and later.
enableAutoAwayOnDecline
boolean
Indicates whether an agent appears as “away” (true) or
not (false) when an agent declines a chat with a customer.
enableAutoAwayOnPushTimeout
boolean
Indicates whether an agent appears as “away” (true) or
not (false) when a chat request that's been pushed to the
agent times out. Available in API version 34.0 and later.
enableAgentFileTransfer
boolean
Indicates whether file transfer is enabled for agents (true)
or not (false). Available in API version 31.0 and later.
enableChatConferencing
boolean
Indicates whether chat conferencing is enabled for agents
(true) or not (false). Available in API version 34.0 and
later.
enableChatTransfer
boolean
Indicates whether chat transfer is enabled for agents (true)
or not (false). Available in API version 31.0 and later.
enableLogoutSound
boolean
Indicates whether a sound will play (true) or not (false)
when an agent logs out of Live Agent.
enableNotifications
boolean
Indicates whether notifications of incoming chats appear for
agents (true) or not (false).
enableRequestSound
boolean
Indicates whether a sound will play (true) or not (false)
when a customer requests to chat with an agent.
enableSneakPeek
boolean
Indicates whether previews of customers’ messages are
displayed as customers type (true) or not (false) in the
agent’s Live Agent window. Available in API version 29.0 and
later.
enableVisitorBlocking
boolean
Indicates whether an agent can block a visitor by IP address
(true) or not (false). Available in API version 34.0 and
later.
label
string
Specifies the name of the configuration for agents’ default
chat settings.
supervisorDefaultAgentStatusFilter SupervisorAgentStatusFilter Specifies the Live Agent status for filtering the Agent Status
(enumeration of type
string)
list in the Supervisor Panel. Valid values are:
• Online
• Away
• Offline
Available in API version 29.0 and later.
445
Metadata Types
LiveChatAgentConfig
Field Name
Field Type
Description
supervisorDefaultButtonFilter string
Specifies the default button for filtering the Agent Status list
in the Supervisor Panel. Available in API version 29.0 and
later.
supervisorDefaultSkillFilter string
Specifies the default skill for filtering the Agent Status list in
the Supervisor Panel. Available in API version 29.0 and later.
supervisorSkills
SupervisorAgentConfigSkills Specifies the list of agent skills that are assigned to a
supervisor, as specified in their assigned Live Agent
configuration. Available in API version 29.0 and later.
transferableButtons
AgentConfigButtons
Specifies the list of chat buttons that agents can transfer
chats to. Available in API version 31.0 and later.
transferableSkills
AgentConfigSkills
Specifies the list of skill groups that agents can transfer chats
to. Available in API version 31.0 and later.
AgentConfigAssignments
Represents the assignments of an organization’s profiles and users to a Live Agent configuration.
Fields
Field Name
Field Type
Description
profiles
AgentConfigProfileAssignments
Specifies the profiles that are associated with a specific
agent configuration.
users
AgentConfigUserAssignments
Specifies the users that are associated with a specific agent
configuration.
AgentConfigButtons
Represents the chat buttons that agents who are associated with the Live Agent configuration can transfer chats to.
Fields
Field Name
Field Type
Description
button
string[]
Specifies the chat buttons that agents can transfer chats
to.
AgentConfigProfileAssignments
Represents the profiles associated with a specific Live Agent configuration.
446
Metadata Types
LiveChatAgentConfig
Fields
Field Name
Field Type
Description
profile
string
Specifies the custom name of the profile associated with a
specific agent configuration.
AgentConfigSkills
Represents the skill groups that agents who are associated with the Live Agent configuration can transfer chats to.
Fields
Field Name
Field Type
Description
skill
string[]
Specifies the skill groups that agents can transfer chats to.
AgentConfigUserAssignments
Represents the users associated with a specific Live Agent configuration.
Fields
Field Name
Field Type
Description
user
string
Specifies the username of the user associated with a specific
agent configuration.
SupervisorAgentConfigSkills
Represents the agent skills associated with a supervisor’s Live Agent configuration. Available in API version 29.0 and later.
Fields
Field Name
Field Type
Description
skill
string
Specifies the agent skills available for filtering the Agent
Status list in the Supervisor Panel.
447
Metadata Types
LiveChatButton
Declarative Metadata Sample Definition
This is a sample of a liveChatAgentConfig file.
Hi, how can I help you?5truetruetruetruetruestandardjdoe@acme.com
LiveChatButton
Represents a Live Agent deployment’s settings for the button that customers click to chat with an agent and the chat window, such as
the label that appears on the button and the pre-chat form that appears before a live chat begins. This type extends the Metadata
metadata type and inherits its fullName field.
File Suffix and Directory Location
LiveChatButton configurations are stored in the .liveChatButton file in the liveChatButtons
directory.
Version
LiveChatButton is available in API version 28.0 and later.
Fields
Field Name
Field Type
Description
chasitorIdleTimeout
int
Specifies the amount of idle time before the chat
times out. The idle time starts being counted
after the agent sends the last chat message.
Available in API version 35.0 and later.
448
Metadata Types
Field Name
LiveChatButton
Field Type
Description
chasitorIdleTimeoutWarning int
Specifies the amount of idle time before a
warning appears. The idle time starts being
counted after the agent sends the last chat
message. Available in API version 35.0 and later.
chatPage
string
Specifies the page that hosts your chat if that
page differs from the Live Agent chat window.
enableQueue
boolean
Indicates whether queuing is enabled (true)
or not (false).
label
string
Specifies the text that appears on the button.
numberOfReroutingAttempts int
Specifies the number of times a chat request can
be rerouted to available agents if all agents reject
the chat request. Available in API version 30.0
and later.
offlineImage
string
Specifies the image that appears on the button
when no agents are available to chat.
onlineImage
string
Specifies the image that appears on the button
when agents are available to chat.
optionsCustomRoutingIsEnabled boolean
Indicates whether custom routing is enabled for
incoming chat requests (true) or not (false).
Available in API version 30.0 and later.
optionsHasChasitorIdleTimeout boolean
Indicates whether the visitor idle timeout feature
is enabled. Available in API version 35.0 and later.
optionsHasInviteAfterAccept boolean
Indicates whether a new chat invitation triggers
after a customer accepts a previous chat
invitation (true) or not (false).
optionsHasInviteAfterReject boolean
Indicates whether a new chat invitation triggers
after a customer rejects a previous chat invitation
(true) or not (false).
optionsHasRerouteDeclinedRequest boolean
Indicates whether a chat request, which has been
rejected by all available agents, should be
rerouted to available agents again (true) or not
(false). Available in API version 30.0 and later.
boolean
Indicates whether a chat request should be
automatically accepted by the agent it’s assigned
to (true) or not (false). For chat buttons and
automated chat invitations with
routingType set to MostAvailable or
LeastActive. Available in API version 30.0
and later.
optionsIsAutoAccept
449
Metadata Types
Field Name
LiveChatButton
Field Type
Description
optionsIsInviteAutoRemove boolean
Indicates whether a chat invitation is set to
automatically disappear from a customer’s screen
after a certain amount of time (true) or not
(false).
overallQueueLength
int
Specifies the maximum number of chat requests
that are allowed to queue.
perAgentQueueLength
int
Specifies the number of chat requests that are
allowed to queue for an agent with the required
skills.
postChatPage
string
Specifies the name of the post-chat form to
which customers are routed when the chat ends.
postChatUrl
string
Specifies the URL of the post-chat form to which
customers are routed when the chat ends.
preChatFormPage
string
Specifies the name of the pre-chat form to which
customers are routed before a chat begins.
preChatFormUrl
string
Specifies the URL of the pre-chat form to which
customers are routed when the chat begins.
pushTimeOut
int
Specifies the number of seconds an agent has
to answer an incoming chat request before the
request is routed to another agent.
routingType
LiveChatButtonRoutingType (enumeration
of type string)
Specifies how incoming chats should be routed
to agents when a customer pushes a button.
Valid values are:
• Choice
• LeastActive
• MostAvailable
site
string
Specifies the Force.com site that hosts your
custom chat button images or custom chat page.
Note: You must have the
“CustomDomain” permission enabled in
your organization before you can use a
Force.com site with Live Agent.
skills
LiveChatButtonSkills
Specifies the skills associated with the button.
When a customer clicks the button to chat, they
are automatically routed to agents with those
skills.
windowLanguage
Language
Specifies the language preferences for the chat
window associated with the button.
450
Metadata Types
LiveChatDeployment
LiveChatButtonSkills
Represents the skills associated with a chat button.
Fields
Field Name
Field Type
Description
skill
string
Specifies the name of the skill.
Declarative Metadata Sample Definition
This is a sample of a liveChatButton file.
ChatterAnswersLogintrueMyOfflineButtonMyOnlineButton5AnswersHomeAccountVF300LeastActiveLiveAgentSiteSkill1Skill2
Note: If you update your chat button through the Metadata API, be sure to update all Web pages that use the same chat button
code.
LiveChatDeployment
Represents the configuration settings for a specific Live Agent deployment, such as the branding image for the deployment and whether
or not chat transcripts are automatically saved. This type extends the Metadata metadata type and inherits its fullName field.
File Suffix and Directory Location
LiveChatDeployment values are stored in the .liveChatDeployment file in the
liveChatDeployments directory.
451
Metadata Types
LiveChatDeployment
Version
LiveChatDeployment is available in API version 28.0 and later.
Fields
Field Name
Field Type
Description
brandingImage
string
Specifies the branding image for the
deployment.
connectionTimeoutDuration int
Indicates the amount of time before the chat
times out, in seconds.
ConnectionWarningDuration int
Indicates the amount of time before a time-out
warning is displayed to the agent, in seconds.
displayQueuePosition
boolean
(Pilot) Determines whether a customer’s queue
position is displayed in a standard chat window
while the customer waits for an agent to
respond to the chat request (true) or not
(false). This field is available as a pilot in API
version 32.0. To enable this field, contact
Salesforce.
domainWhiteList
LiveChatDeploymentDomainWhiteList
Specifies the list of domains that can host the
deployment.
enablePrechatApi
boolean
Indicates whether or not the pre-chat API is
enabled for the deployment (true) or not
(false).
enableTranscriptSave
boolean
Indicates whether chat transcripts are
automatically saved after a chat ends (true)
or not (false).
label
string
Specifies the name of the deployment.
mobileBrandingImage
string
Specifies the branding image for the
deployment that appears when customers
access the deployment on a mobile device.
site
string
Specifies the site that hosts the images for the
deployment.
Note: You must have the
“CustomDomain” permission enabled
in your organization before you can use
a Force.com site with Live Agent.
windowTitle
string
Specifies the title of the window associated
with the deployment.
452
Metadata Types
LiveChatSensitiveDataRule
LiveChatDeploymentDomainWhiteList
Represents a Live Agent deployment’s domain whitelist.
Fields
Field Name
Field Type
Description
domain
string
Specifies a domain that can host the deployment.
Declarative Metadata Sample Definition
This is a sample of a liveChatDeployment file.
pkb_image_bannerBgpkb_image_bgBottommydomaintesttrueGL_Knowledge_BaseMy window title
Note: If you update your deployment through the Metadata API, be sure to update all Web pages that use the same deployment
code.
LiveChatSensitiveDataRule
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, phone and account numbers, or even
profanity. This type extends the Metadata metadata type and inherits its fullName field.
File Suffix and Directory Location
LiveChatSensitiveDataRule components have the suffix .liveChatSensitiveDataRule and are stored in the
liveChatSensitiveDataRule folder.
Version
LiveChatSensitiveDataRule components are available in API version 35.0 and later.
453
Metadata Types
LiveChatSensitiveDataRule
Fields
Field Name
Field Type
Description
actionType
SensitiveDataActionType Required. The action to take on the text when the sensitive data rule is
(enumeration of
triggered. Possbile values are:
type string)
• Remove
• Replace
description
string
The description of the sensitive data rule—for example, “Block social
security numbers.”
enforceOn
int
Required. Determines the roles on which the rule is enforced. The value
is determined using bitwise OR operation. There are seven possible
values:
1. Rule enforced on Agent
2. Rule enforced on Visitor
3. Rule enforced on Agent and Visitor
4. Rule enforced on Supervisor
5. Rule enforced on Agent and Supervisor
6. Rule enforced on Visitor and Supervisor
7. Rule enforced on Agent, Visitor, and Supervisor
isEnabled
boolean
Required. Specifies whether a sensitive data rule is active (true) or not
(false). Default value (if none is provided) is false.
pattern
string
Required. The pattern of text blocked by the rule. Written as a JavaScript
regular expression (regex).
replacement
string
The string of characters that replaces the blocked text (if ActionType
Replace is selected).
Declarative Metadata Sample Definition
The following is an example of a LiveChatSensitiveDataRule component.
REPLACE7true[aeiou]œ
The following is an example package.xml that references the previous definition.
UnrestrictedChange_For_allLiveChatSensitiveDataRule35.0
ManagedTopics
Represents navigational and featured topics managed in a community. A specific community is represented by the Network component.
Note: The related network must exist before you deploy managed topics. (This occurs automatically when deploying an entire
organization.)
File Suffix and Directory Location
Components have the suffix managedTopics and are stored in the managedTopics folder. In that folder, you’ll find separate files for each
network (for example, NetworkNameA.managedTopics and NetworkNameB.managedTopics).
Version
ManagedTopics components are available in API version 32.0 and later.
Fields
Field Name
Field Type
Description
ManagedTopic
ManagedTopic
Represents a specific navigational or featured topic.
ManagedTopic
Field Name
Field Type
Description
name
string
The topic name.
managedTopicType
string
The topic type: “Navigational” or “Featured”
topicDescription
string
An optional description of topic contents. This field is accessible only via
the API; there is no corollary in the user interface.
parentName
string
The name of a parent topic for which this topic is a child. Child topics are
accessible from the subtopics section of the parent topic page and their
feeds are added to the parent topic feed.
Only navigational topics support parent-child relationships.
455
Metadata Types
ManagedTopics
Field Name
Field Type
Description
position
int
The placement of this topic relative to others of the same type. The results
differ depending on topic type:
• For top-level navigational topics, position arranges the Topics
menu in the community.
• For child navigational topics, it arranges sibling topics in the subtopics
section.
• For featured topics, it arranges topic thumbnail images on the
community home page.
Enter a number between 0 and 24. (The maximum amount of navigational
or featured topics is 25.)
Declarative Metadata Sample Definition
The following example retrieves or deploys managed topics for all networks:
*ManagedTopics32.0
The following example shows a package.xml file referencing the ManagedTopics component:
NetworkNameManagedTopics32.0
The following example shows the ManagedTopics component itself:
RunningNavigationalTraining advice0HikingNavigationalRoutes and gear
456
Metadata Types
MatchingRule
1TrailsNavigationalMaps for local favoritesHiking0BackpacksNavigationalRecommended modelsHiking1FootwearFeaturedSuggested types for each sport0ConditioningFeaturedHow to get fit for any activity1
MatchingRule
Represents a matching rule that is used to identify duplicate records. This type extends the Metadata metadata type and inherits its
fullName field.
File Suffix and Directory Location
Matching rule components have the .matchingRule suffix and are stored in the matchingRules folder. The name of the
component file is the standard or custom object name that is associated with the matching rule.
In API version 39.0 and later, MatchingRule supports the Person Account object.
• The component file name is PersonAccount.matchingRule.
• The component directory is matchingRules.
Version
MatchingRule is available in API version 33.0 and later.
457
Metadata Types
MatchingRule
Fields
Field Name
Field Type
Description
booleanFilter
string
Specifies filter logic conditions. For more information on filter logic, see
“Getting the Most Out of Filter Logic” in the Salesforce Help.
description
string
The description of the matching rule.
label
string
Required. The name of the matching rule.
matchingRuleItems
MatchingRuleItem
The criteria that make up a matching rule.
ruleStatus
MatchingRuleStatus Required. The activation status of the matching rule. Values are:
(enumeration of
• Inactive
type string)
• Deactivating
• DeactivationFailed
• Active
• Activating
• ActivationFailed
Important: The only valid values you can declare when
deploying a package are Active and Inactive.
MatchingRuleItem
Field Name
Field Type
Description
blankValueBehavior
BlankValueBehavior Specifies how blank fields affect whether the fields being compared are
(enumeration of type considered matches. Valid values are:
string)
• MatchBlanks
• NullNotAllowed (default)
fieldName
string
Required. Indicates which field to compare when determining if a record is
similar enough to an existing record to be considered a match.
matchingMethod
MatchingMethod
Required. Defines how the fields are compared. Choose between the exact
(enumeration of type matching method and various fuzzy matching methods. Valid values are:
string)
• Exact
• FirstName
• LastName
• CompanyName
• Phone
• City
• Street
• Zip
458
Metadata Types
Field Name
MatchingRule
Field Type
Description
• Title
For details on each matching method, see “Matching Methods Used with
Matching Rules” in the Salesforce Help.
Declarative Metadata Sample Definition
The following is a sample XML definition of a matching rule. A matching rule can be associated with either a standard or a custom object.
AccountMatchingRulethis is sample rule descriptionNullNotAllowedBillingCityCityNullNotAllowedNameCompanyNameInactive
The following package.xml shows how to reference a matching rule by name. It specifies the type name of MatchingRule.
Account.AccountMatchingRuleMatchingRule39.0
The following package.xml shows how to reference all matching rules by specifying the plural MatchingRules type name and using
a wildcard to include all members.
*MatchingRules
459
Metadata Types
Metadata
39.0
Metadata
This is the base class for all metadata types. You cannot edit this object. A component is an instance of a metadata type.
Metadata is analogous to sObject, which represents all standard objects. Metadata represents all components and fields in Metadata
API. Instead of identifying each component with an ID, each custom object or custom field has a unique fullName, which must be
distinct from standard object names, as it must be when you create custom objects or custom fields in the Salesforce user interface.
Version
Metadata components are available in API version 10.0 and later.
Fields
Field Name
Field Type
Description
fullName
string
Required. The name of the component. If a field, the name must specify
the parent object, for example Account.FirstName. The __c suffix
must be appended to custom object names and custom field names
when you are setting the fullName. For example, a custom field in a
custom object could have a fullName of
MyCustomObject__c.MyCustomField__c.
To reference a component in a package, prepend the package’s
namespace prefix to the component name in the fullName field. Use
the following syntax: namespacePrefix__ComponentName.
For example, for the custom field component
MyCustomObject__c.MyCustomField__c and the namespace
MyNS, the full name is
MyNS__MyCustomObject__c.MyCustomField__c.
Note: A namespace prefix is a 1 to 15-character alphanumeric
identifier that distinguishes your package and its contents from
other publishers’ packages. For more information, see “Register a
Namespace Prefix” in the Salesforce Help.
SEE ALSO:
CustomObject
CustomField
MetadataWithContent
460
Metadata Types
MetadataWithContent
MetadataWithContent
This is the base type for all metadata types that contain content, such as documents or email templates. It extends Metadata. You cannot
edit this object.
Version
MetadataWithContent components are available in API version 14.0 and later.
Fields
Field Name
Field Type
Description
content
base64Binary
Base 64-encoded binary data. Prior to making an API call, client
applications must encode the binary attachment data as base64. Upon
receiving a response, client applications must decode the base64 data
to binary. This conversion is usually handled for you by a SOAP client.
fullName
string
Required. The name of the component. The fullName can contain
only underscores and alphanumeric characters. It must be unique, begin
with a letter, not include spaces, not end with an underscore, and not
contain two consecutive underscores.
Inherited from the Metadata component, this field is not defined in the
WSDL for this component. It must be specified when creating, updating,
or deleting. See create() to see an example of this field specified for
a call.
SEE ALSO:
Metadata
MilestoneType
Represents the name and description of a milestone, which you can use in an entitlement process to track important steps in cases. This
type extends the Metadata metadata type and inherits its fullName field.
File Suffix and Directory Location
Milestone types are stored in the milestoneTypes directory of the corresponding package directory. The extension is
.milestoneType.
Version
MilestoneType is available in API version 27.0 and later.
461
Metadata Types
ModerationRule
Fields
Field Name
Field Type
Description
description
string
The description of the milestone.
RecurrenceType
MilestoneTypeRecurrenceType The type of recurrence for the milestone. Available in API version 29.0
(enumeration of
type string)
and later. Valid values are:
• none—Specifies no recurrence for the milestone. The milestone
occurs only once until the entitlement process exits.
• recursIndependently—Specifies independent recurrence
for the milestone.
• recursChained—Specifies sequential recurrence for the
milestone.
Declarative Metadata Sample Definition
This is a sample milestone type.
First Response Time
And, here’s the sample package.xml file that references the MilestoneType component definition:
* or a valid name of a milestone typeMilestoneType29.0
ModerationRule
Represents a rule used in your community to moderate member-generated content.Each rule specifies the member-generated content
the rule applies to, the criteria to enforce the rule on, and the moderation action to take. Moderation rules help protect your community
from spammers, bots, and offensive or inappropriate content. This type extends the Metadata metadata type and inherits its fullName
field.
Community moderation rules created with the Metadata API are more powerful than moderation rules set up in the Community
Management UI. For example, in the UI you could create a rule that moderates posts and comments. In the Metadata API you could
create a rule that moderates only the Link Name of a Link feed type. Use the Metadata API to express complex moderation rules.
Important: Don’t update moderation rules you create using the Metadata API in the Community Management UI. If you do, you
overwrite relevant Metadata API fields or the fields are ignored.
Keep the following things in mind when creating moderation rules:
462
Metadata Types
ModerationRule
• Your org can have up to 30 rules. This limit is per org, not per community. This limit includes both content rules and rate rules.
• Each rule can have up to three keyword criteria.
• Rules that block content run first, followed by rules to review and approve content, then rules that replace content, and last by rules
that flag content. If two or more rules perform the same action, the oldest rule runs first, based on the date the rule was created.
Rules to replace content don’t run when the content also applies to a review rule—we want community managers to review the
original content.
File Suffix and Directory Location
ModerationRule components have the suffix .rule and are stored in the moderation directory of the corresponding package
directory. The file name format follows community_name.moderation_rule_developer_name.rule.
Version
ModerationRule components are available in API version 36.0 and later.
Special Access Rules
To view, create, edit, and delete moderation rules, you need the Manage Communities or Create and Set Up Communities permission.
Fields
Field Name
Field Type
Description
action
ModerationRuleAction Required. Indicates the moderation action that you want to take. The
(enumeration of
valid values are:
type string)
• Block
• Review
• Replace
• Flag
• FreezeAndNotify (Reserved for future use.)
actionLimit
int
Indicates the moderation action limit. Available in API 39.0 and later.
active
boolean
Required. Indicates whether the moderation rule is active (true) or
inactive (false).
description
string
A description of the moderation rule.
entitiesAndFields
ModeratedEntityField[] Indicates the types of user-generated content this moderation rule
applies to.
masterLabel
string
Required. Label for the moderation rule.
notifyLimit
int
Indicates the notification limit of the moderation rule. Available in API
39.0 and later.
463
Metadata Types
ModerationRule
Field Name
Field Type
Description
userCriteria
string
Represents the member criteria to use in community moderation rules.
Available in API 39.0 and later.
userMessage
string
The message you want your community members to see when their
content is blocked. Use the %BLOCKED_KEYWORD% variable to display
up to five blocked words in the user message. If you don’t specify a
message, the member sees the standard message: “You can’t use
%BLOCKED_KEYWORD% or other inappropriate words in this
community. Review your content and try again.”
ModeratedEntityField
The fields and entities you want to moderate.
Field Name
Field Type
Description
entityName
string
Required. Indicates the types of user-generated content the moderation rule
applies to. Post and comments only apply to content created in groups and
user profiles. All feed types, such as polls and links, are supported.
fieldName
string
Indicates the field the moderation rule applies to.
Note: To moderate feed posts, use entityName FeedItem with
fieldName RawBody. To moderate feed comments, use
entityName FeedComment with fieldName
RawCommentBody. The RawBody and RawCommentBody
fields aren’t available in any other API.
keywordList
KeywordList string
Indicates the keyword list that you want to moderate against.
ModerationRuleType
Required. Indicates the type of rule to run on user-generated content.
Field Name
Field Type
Description
type
(enumeration of type Required. Indicates the type of rule to run on user-generated content. Valid
string)
values are:
• Content
• Rate
Available in API 39.0 and later.
RateLimitTimePeriod
Required. Indicates the time period that is applied to the rate limit.
464
Metadata Types
ModerationRule
Field Name
Field Type
Description
timePeriod
(enumeration of type Required. Indicates the time period that is applied to the rate limit. Valid values
string)
are:
• Short
• Medium
Available in API 39.0 and later.
Declarative Metadata Sample Definition
The following is an example of a ModerationRule component.
Blocks Bad Word List in posts, comments, Link URLs, titles, and poll
choices.Blocking RuleBlocktrueYou can't use %BLOCKED_KEYWORD% or other inappropriate words in this
community. Review your content and try again.FeedCommentRawCommentBodycommunity1.badword_listFeedItemLinkUrlcommunity1.badword_listFeedItemRawBodycommunity1.badword_listFeedItemTitlecommunity1.badword_listFeedPollChoiceChoiceBodycommunity1.badword_list
465
Metadata Types
NamedCredential
The following is an example package.xml that references the previous definition.
ModerationRulecommunity1.blocking_rule36.0
NamedCredential
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.
This type extends the Metadata metadata type and inherits its fullName field.
File Suffix and Directory Location
NamedCredential components have the suffix .namedCredential and are stored in the namedCredentials folder.
Version
NamedCredential components are available in API version 33.0 and later.
Fields
Field Name
Field Type
Description
authProvider
string
The authentication provider that the AuthProvider component represents.
certificate
string
If you specify a certificate, your Salesforce org supplies it when
establishing each two-way SSL connection with the external system.
The certificate is used for digital signatures, which verify that requests
are coming from your Salesforce org.
endpoint
string
The URL or root URL of the callout endpoint. Corresponds to URL in the
user interface.
label
string
A user-friendly name for the named credential that appears in the
Salesforce user interface, such as in list views.
oauthRefreshToken
string
The OAuth refresh token. Used to obtain a new access token for an end
user when a token expires.
oauthScope
string
Specifies the scope of permissions to request for the access token.
Corresponds to Scope in the user interface.
oauthToken
string
The access token that’s issued by your authorization server.
466
Metadata Types
Network
Field Name
Field Type
Description
password
string
The password to be used by your org to access the external system.
Ensure that the credentials have adequate privileges to access the
external system. Depending on how you set up access, you might need
to provide the administrator password.
principalType
External
Determines whether you're using one set or multiple sets of credentials
PrincipalType to access the external system. Corresponds to Identity Type in
(enumeration of
type string)
the user interface. The valid values are:
• Anonymous
• PerUser
• NamedUser
protocol
Authentication The authentication protocol for accessing the external system. The valid
values are:
Protocol
(enumeration of
type string)
• NoAuthentication
• Oauth
• Password
username
string
The username to be used by your org to access the external system.
Ensure that the credentials have adequate privileges for performing
callouts to the external system. Depending on how you set up access,
you might need to provide the administrator username.
Declarative Metadata Sample Definition
The following is an example of a NamedCredential component.
https://my_endpoint.example.comPerUserNoAuthentication
Network
Represents a community. Communities are branded spaces for your employees, customers, and partners to connect. You can customize
and create communities to meet your business needs, then transition seamlessly between them. Use the Network component for
Salesforce Communities. If you want to create zones that contain Chatter Answers and Ideas, use the Community (Zone) component.
This type extends the Metadata metadata type and inherits its fullName field.
467
Metadata Types
Network
Declarative Metadata File Suffix and Directory Location
Network components are stored in the networks directory of the corresponding package directory. The file name matches the
community name, and the extension is .network.
Version
This object is available in API version 28.0 and later.
Fields
Field
Field Type
Description
allowedExtensions
string
Specifies the types of files allowed in your community.
This whitelist of file types lets you control what your
community members upload and also prevents spammers
from polluting your community with inappropriate files.
Available in API version 36.0 and later.
allowMembersToFlag
boolean
Determines whether users in the community can flag
posts or comments as inappropriate. Flagged items are
sent to a community moderator for review. Available in
API version 29.0 and later.
branding
Branding
The color scheme, header, and footer used in the
community.
caseCommentEmailTemplate
string
Email template used when notifying community members
when a case comment has been modified or added to a
case.
changePasswordTemplate
string
Email template used when notifying a user that their
password has been reset.
description
string
Description of the community.
emailSenderAddress
string
Email address from which community emails are sent.
emailSenderName
string
Name from which community emails are sent.
enableGuestChatter
boolean
Specifies whether guest users can access public Chatter
groups in the community without logging in.
enableInvitation
boolean
Determines whether users can invite others to the
community.
enableKnowledgeable
boolean
Determines if community members can see who’s
knowledgeable on topics and endorse people for their
knowledge on a topic. Available in API version 30.0 and
later.
468
Metadata Types
Network
Field
Field Type
Description
enableNicknameDisplay
boolean
Determines if user nicknames display instead of their first
and last names in most places in the community. Set to
false by default. Available in API version 32.0 and later.
enablePrivateMessages
boolean
Determines if community members can send and receive
private messages. Available in API version 30.0 and later.
enableReputation
boolean
Determines if reputation is calculated and displayed for
community members. Available in API version 31.0 and
later.
If enabled, reputationLevels and
reputationPointsRules are used. If no
reputationLevels or
reputationPointsRules are not defined in the
data file, the default values are used.
enableSiteAsContainer
boolean
Determines whether the community uses Site.com pages
instead of tabs.
forgotPasswordTemplate
string
The email template used when a user forgets their
password.
maxFileSizeKb
int
Specifies the maximum file size (in KBs) that members can
upload in your community. Available in API version 36.0
and later. Enter a number between 3072 KB and your org’s
maximum file size. To use the default limit of 2 GB, leave
this field empty.
navigationLinkSet
NavigationLinkSet
Represents the navigation menu in a community. A
navigation menu consists of items that users can click to
go to other parts of the community. This field is available
in API version 37.0 and later.
networkMemberGroups
NetworkMemberGroups
The profiles and permission sets that have access to the
community. Users with these profiles or permission sets
are members of the community.
Note: If a Chatter customer (from a customer
group) is assigned a permission set that is also
associated with a community, the Chatter customer
isn’t added to the community.
newSenderAddress
string
Email address that has been entered as the new value for
EmailSenderAddress but has not been verified
yet. After a user has requested to change the sender email
address and has successfully responded to the verification
email, the NewSenderAddress value overwrites the
value in EmailSenderAddress. This becomes the
email address from which community emails are sent.
469
Metadata Types
Network
Field
Field Type
Description
picassoSite
string
Name of the Site.com site linked to the community.
reputationLevels
ReputationLevelDefinitions
The reputation levels assigned to members when they
accrue points by performing certain actions.
reputationPointsRules
ReputationPointsRules
The points members accrue when they perform certain
defined actions.
selfRegProfile
string
The profile assigned to users who self register. This value
is used only if selfRegistration is enabled for the
community. Available in API version 29.0 and later.
selfRegistration
boolean
Determines whether self-registration is available for the
community.
sendWelcomeEmail
boolean
Determines whether a welcome email is sent when a new
user is added to the community.
site
string
The CustomSite associated with the community.
status
NetworkStatus[]
Status of the community. Available values are:
• Live—The community is online and members can
access it.
• DownForMaintenance—The community was
previously published, but was taken offline. Members
with “Create and Set Up Communities” can still access
the setup for offline communities regardless of profile
or membership. Members are not able to access offline
communities, but they still appear in the user interface
drop-down as CommunityName (Offline).
• UnderConstruction—The community has not yet
been published. Users with “Create and Set Up
Communities” can access communities in this status
if their profile is associated with the community.
Once a community is published, it can never be in
this status again.
tabs
NetworkTabSet
The tabs that are available in the community. The user
that created the community selected these tabs.
urlPathPrefix
string
The first part of the path on the site's URL that
distinguishes this site from other sites. For example, if your
site URL is mycompany.force.com/partners,
then partners is the urlPathPrefix.
welcomeTemplate
string
The email template used when sending welcome emails
to new community members.
470
Metadata Types
Network
Branding
Represents the branding and color scheme applied to the community.
Field
Field Type
Description
loginFooterText
string
The text that appears in the footer of the
community login page.
loginLogo
string
The logo that appears on the community
login page for external users.
pageFooter
string
An image that appears on the footer of the
community pages. Must be an .html file.
pageHeader
string
An image that appears on the header of the
community pages. Can be an .html, .gif, .jpg,
or .png file.
primaryColor
string
The color used for the active tab.
primaryComplementColor
string
Font color used with primaryColor.
quaternaryColor
string
The background color for pages in the
community.
quaternaryComplementColor
string
Font color used with
quaternaryColor.
secondaryColor
string
The color used for the top borders of lists
and tables.
tertiaryColor
string
The background color for section headers
on edit and detail pages.
tertiaryComplementColor
string
Font color used with tertiaryColor.
zeronaryColor
string
The background color for the header.
zeronaryComplementColor
string
Font color used with zeronaryColor.
NavigationLinkSet
Represents the navigation menu in a community. A navigation menu consists of items that users can click to go to other parts of the
community.
Field
Field Type
Description
navigationMenuItem
NavigationMenuItem[]
A list of menu items in a NavigationLinkSet.
Use this object to create, delete, or update
menu items in your community’s navigation
menu.
471
Metadata Types
Network
NavigationMenuItem
Represents a single menu item in a NavigationLinkSet. Use this object to create, delete, or update menu items in your community’s
navigation menu.
Field
Field Type
Description
defaultListViewId
string
If the value of the type field is
SalesforceObject, the value is the
ID of the default list view for the object.
label
string
Required. The text that appears in the
navigation menu for this item.
position
int
Required. The location of the menu item in
the navigation menu.
publiclyAvailable
boolean
When set to true, gives access to guest
users.
subMenu
NavigationSubMenu
A list of child menu items. This field is
available in API 39.0 and later.
target
string
Required if type is ExternalLink,
InternalLink, or
SalesforceObject. If type is
ExternalLink or InternalLink,
the target is the URL that the link points to.
For ExternalLink, your entry looks like
this: http://www.salesforce.com.
For InternalLink, use a relative URL,
such as /contactsupport. If type
is MenuLabel or
NavigationalTopic, target is not
used.
targetPreference
string
Backed by a picklist that includes
preferences for the target field. Valid values
are:
• None
• OpenInExternalTab—Used for
external links to determine whether to
open in an external tab.
type
string
Required. The type of navigation menu item.
Valid values are:
• SalesforceObject—Available
objects include accounts, cases,
contacts, and custom objects.
• ExternalLink—Links to a URL
outside of your community. For
472
Metadata Types
Field
Network
Field Type
Description
example,
http://www.salesforce.com.
• InternalLink—Links to a relative
URL inside your community. For
example, /contactsupport.
• MenuLabel—A parent heading for
your navigation menu. See
NavigationSubMenufor how to nest
items underneath the menu label. This
value is available in API 39.0 and later.
• NavigationalTopic—A
drop-down list with links to the
navigational topics in your community.
You cannot nest other items of type
MenuLabel or items of type
NavigationalTopic under
MenuLabel.
NavigationSubMenu
A list of child menu items. Only NavigationMenuItem items of type MenuLabel can have items in a NavigationSubMenu. Available
in API 39.0 and later.
Field
Field Type
Description
navigationMenuItem
NavigationMenuItem[]
A list of menu items in a
NavigationSubMenu. Use
navigationMenuItem to create,
delete, or update child items under a parent
heading.
NetworkMemberGroup
Represents the profiles and permission sets that are assigned to the community. Users with one of the profiles or permission sets are
members of the community, unless the user is a Chatter customer (from a customer group).
Field
Field Type
Description
permissionSet
string
A permission set that is assigned to the
community.
Note: If a Chatter customer (from a
customer group) is assigned a
permission set that is also associated
with a community, the Chatter
473
Metadata Types
Field
Network
Field Type
Description
customer isn’t added to the
community.
string
A profile that is part of the community.
Field
Field Type
Description
smallImage
string
Custom image associated with a reputation
level. Use files with these extensions: .jpeg,
.png, or .gif. Images are stored as
documents. If not specified, the default
reputation level image is used. Available in
API version 32.0 and later.
profile
ReputationBranding
Branding for the reputation level.
ReputationLevelDefinitions
Represents reputation levels members can achieve by performing certain defined actions in a community.
Field
Field Type
Description
level
ReputationLevel[]
Represents reputation levels.
ReputationLevel
Represents the name and lower value of the reputation level. The upper value is calculated by the application.
Field
Field Type
Description
branding
ReputationBranding[]
Represents any branding associated with
the reputation level, specifically, the custom
image for the reputation level.
This field is optional. If not specified, the
default reputation level image is used.
Available in API version 32.0 and later.
label
string
Name of the reputation level.
This field is optional. If not specified, one of
the 10 defaults are used.
• Level 1
• Level 2
474
Metadata Types
Network
Field
Field Type
Description
• Level 3
• Level 4
• Level 5
• Level 6
• Level 7
• Level 8
• Level 9
• Level 10
double
lowerThreshold
Required. The lower value in the range for
this reputation level. For example, if this
reputation level is for points 1–50, 1 is the
lowerThreshold.
ReputationPointsRules
Represents points rules in a community’s point system.
Field
Field Type
Description
pointsRule
ReputationPointsRule[]
Represents events and their associated
points.
ReputationPointsRule
Represents the event and associated point value for a points rule. When a user acts, they accrue the associated points.
Field
Field Type
Description
eventType
string
Required. The type of event a member has to perform to get points.
The available values are:
• FeedItemWriteAPost
• FeedItemWriteAComment
• FeedItemReceiveAComment
• FeedItemLikeSomething
• FeedItemReceiveALike
• FeedItemMentionSomeone
• FeedItemSomeoneMentionsYou
• FeedItemShareAPost
• FeedItemSomeoneSharesYourPost
• FeedItemPostAQuestion
• FeedItemAnswerAQuestion
475
Metadata Types
Field
Network
Field Type
Description
• FeedItemReceiveAnAnswer
• FeedItemMarkAnswerAsBest
• FeedItemYourAnswerMarkedBest
• FeedItemEndorseSomeoneForKnowledgeOnATopic
• FeedItemEndorsedForKnowledgeOnATopic
points
int
Required. The number of points a member gets for performing the
event. The default number of points per event is:
• FeedItemWriteAPost +1
• FeedItemWriteAComment: +1
• FeedItemReceiveAComment: +5
• FeedItemLikeSomething: +1
• FeedItemReceiveALike: +5
• FeedItemMentionSomeone: +1
• FeedItemSomeoneMentionsYou: +5
• FeedItemShareAPost: +1
• FeedItemSomeoneSharesYourPost: +5
• FeedItemPostAQuestion: +1
• FeedItemAnswerAQuestion: +5
• FeedItemReceiveAnAnswer: +5
• FeedItemMarkAnswerAsBest: +5
• FeedItemYourAnswerMarkedBest: +20
• FeedItemEndorseSomeoneForKnowledgeOnATopic: +5
• FeedItemEndorsedForKnowledgeOnATopic: +20
NetworkTabSet
Field
Field Type
Description
customTab
string
Custom tab that is part of the community.
defaultTab
string
The Home tab for the community. When
members log in, this tab is the first page
they see.
standardTab
string
Standard tab that is part of the community.
476
Metadata Types
Network
Declarative Metadata Sample Definition
A sample XML definition of a network.
truesalesforce.comCommunities_Shared_Document_Folder/header2_png.pngBranding/footer_html.htmlBranding/header_Image.jpg#AF5800#FFFFFF#286FB8#FFFFFF#000000#FFFFFF#222222#0A3764#FFFFFFunfiled$public/CommunityChangePasswordEmailTemplateMetadata Communityadmin@networkMetadata.comAdmin Userfalsetruefalsetruetrueunfiled$public/CommunityForgotPasswordEmailTemplateAdminStandardReadOnlyAdminStandardReadOnlycommunities_shared
_document_folder/replevel_beginner.png0
477
Metadata Types
Network
communities_shared
_document_folder/replevel_apprentice.png51communities_shared
_document_folder/replevel_gettingthere.png101communities_shared
_document_folder/replevel_skilled.png151communities_shared
_document_folder/replevel_expert.png201communities_shared
_document_folder/replevel_mentor.png251communities_shared
_document_folder/replevel_guru.png301FeedItemWriteAPost5FeedItemWriteAComment
478
Metadata Types
Network
3FeedItemReceiveAComment10FeedItemLikeSomething3FeedItemReceiveALike5FeedItemMentionSomeone5FeedItemSomeoneMentionsYou10FeedItemShareAPost5FeedItemSomeoneSharesYourPost10falsetrueNetwork_11UnderConstructionChatterChatterAccountCampaignCaseConsoleContactContractDashboardJigsawSearchFileCollaborationGrouphomeIdeaLeadOpportunityProduct2UserProfile
479
Metadata Types
Package
reportSolutionnetwork1unfiled$public/CommunityWelcomeEmailTemplate
SEE ALSO:
Community (Zone)
Package
Specifies which metadata components to retrieve as part of a retrieve() call or defines a package of components.
Name
Type
Description
apiAccessLevel
APIAccessLevel (enumeration of
type string)
Package components have access via dynamic Apex and the
API to standard and custom objects in the organization where
they are installed. Administrators who install packages may
wish to restrict this access after installation for improved
security. The valid values are:
• Unrestricted—Package components have the same API
access to standard objects as the user who is logged in
when the component sends a request to the API.
• Restricted—The administrator can select which standard
objects the components can access. Further, the
components in restricted packages can only access custom
objects in the current package if the user's permissions
allow access to them.
For more information, see “About API and Dynamic Apex Access
in Packages” in the Salesforce online help.
description
string
A short description of the package.
fullName
string
The package name used as a unique identifier for API access.
The fullName can contain only underscores and
alphanumeric characters. It must be unique, begin with a letter,
not include spaces, not end with an underscore, and not
contain two consecutive underscores. This field is inherited
from the Metadata component.
namespacePrefix
string
The namespace of the developer organization where the
package was created.
objectPermissions
ProfileObjectPermissions[]
Indicates which objects are accessible to the package, and the
kind of access available (create, read, update, delete).
packageType
string
Reserved for future use.
480
Metadata Types
Package
Name
Type
Description
postInstallClass
string
The name of the Apex class that specifies the actions to execute
after the package has been installed or upgraded. The Apex
class must be a member of the package and must implement
the Apex InstallHandler interface. In patch upgrades,
you can't change the class name in this field but you can
change the contents of the Apex class. The class name can be
changed in major upgrades.
This field is available in API version 24.0 and later.
setupWeblink
string
The weblink used to describe package installation.
types
PackageTypeMembers[]
The type of component being retrieved.
uninstallClass
string
The name of the Apex class that specifies the actions to execute
after the package has been uninstalled. The Apex class must
be a member of the package and must implement the Apex
UninstallHandler interface. In patch upgrades, you
can't change the class name in this field but you can change
the contents of the Apex class. The class name can be changed
in major upgrades.
This field is available in API version 25.0 and later.
version
string
Required. The version of the component type.
PackageTypeMembers
Use to specify the name and type of components to be retrieved in a package.
Name
Type
Description
members
string
One or more named components, or the wildcard character
(*) to retrieve all metadata components of the type specified
in the element. To retrieve a standard object, specify
it by name. For example,
Account retrieves the standard
Account object.
name
string
The type of metadata component to be retrieved. For example,
CustomObject retrieves one or more
custom objects as specified in the element.
SEE ALSO:
Sample package.xml Manifest Files
481
Metadata Types
PathAssistant
PathAssistant
Represents Path records.This type extends the Metadata metadata type and inherits its fullName field.
Note the following when working with PathAssistant:
• Only one path can be created per record type for each object, including __Master__ record type.
• Rich text guidance information cannot be retrieved or deployed from or to translation workbench.
• The preference does not need to be on to retrieve or deploy PathAssistant.
File Suffix and Directory Location
PathAssistant components have the suffix .pathAssistant and are stored in the pathAssistants folder.
Version
PathAssistant components are available in API version 34.0 and later.
Fields
Field Name
Field Type
Description
active
boolean
Indicates whether the path is active (true) or not (false).
entityName
string
Required. The entity name. This is hard coded for Opportunity, Lead, and
Quote. For a custom object, this field must be specified and should be
the name of the custom object. This field is not updateable.
fieldName
string
Required. The field name. This is hard coded for StageName and Status.
For a custom object, this field must be specified and should be the name
of the picklist field that determines the steps in the path. This field is not
updateable.
masterLabel
string
Required. The master label of the path.
pathAssistantSteps
PathAssistantStep[] List of all the steps that have been configured with fields and guidance
on page 482
information. Note that a missing step in the .xml file means it has not
been configured, not that it doesn’t exist.
recordTypeName
string
Required. The name of the record type associated with the path. This
field is not updateable.
PathAssistantStep
Represents the steps or stages in a Path.
Field Name
Field Type
Description
fieldNames
string
All the fields in entityName that will display in this step.
482
Metadata Types
PathAssistant
Field Name
Field Type
Description
info
string
The guidance information displayed in this step.
picklistValueName
string
Required. The picklist value associated with the step.
Declarative Metadata Sample Definition
The following is an example of a PathAssistant component.
trueOpportunityStageNameTest PathAmountCloseDateSome TextId. Decision MakersAmountCloseDateSome TextProposal/Price QuoteTest_Record_Type
The following is an example package.xml that references the previous definition.
Opportunity.Test_Busines_ProcessBusinessProcessOpportunity.StageNameLead.LeadSourceOpportunity.TypeCustomFieldTest_PathPathAssistantOpportunity.Test_Record_TypeRecordType
483
Metadata Types
PermissionSet
PathAssistantSettings39.0
PermissionSet
Represents a set of permissions that's used to grant additional 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. This type extends the Metadata metadata type and inherits
its fullName field.
In API version 29.0 and later, you can retrieve and deploy access settings for the following managed components in profiles and permission
sets:
• Apex classes
• Apps
• Custom field permissions
• Custom object permissions
• Custom tab settings
• External data sources
• Record types
• Visualforce pages
For more information, see Managed Component Access in Sample package.xml Manifest Files on page 22.
Declarative Metadata File Suffix and Directory Location
Permission sets are stored in the permissionsets directory. The file name matches the permission set API name and the extension
is .permissionset. For example, a permission set with the name User_Management_Perms is stored in
permissionsets/User_Management_Perms.permissionset.
Version
Permission sets are available in API version 22.0 and later.
Fields
Field
Field Type
Description
applicationVisibilities PermissionSetApplicationVisibility[]
484
Indicates which apps are visible to users assigned to this
permission set. Available in API version 29.0 and later. In
API version 29.0, this field supports custom apps only. In
API version 30.0 and later, this field supports both
standard and custom apps.
Metadata Types
PermissionSet
Field
Field Type
Description
classAccesses
PermissionSetApexClassAccess[]
Indicates which top-level Apex classes have methods
that users assigned to this permission set can execute.
Available in API version 23.0 and later.
customPermissions
PermissionSetCustomPermissions[]
Indicates which custom permissions are available to users
assigned to this permission set. Available in API version
31.0 and later.
description
string
The permission set description. Limit: 255 characters.
externalDataSourceAccesses PermissionSetExternal
Indicates which data sources with identity type of Per
User are available to users assigned to this permission
set. Available in API version 27.0 and later.
DataSourceAccess[]
fieldPermissions
PermissionSetFieldPermissions[]
Indicates which fields are accessible to a user assigned
to this permission set, and the kind of access available
(readable or editable). Available in API version 23.0 and
later.
hasActivationRequired
boolean
Indicates whether the permission set requires an
associated active session (true) or not (false).
Available in API version 37.0 and later.
label
string
Required. The permission set label. Limit: 80 characters.
objectPermissions
PermissionSetObjectPermissions[]
Indicates the objects that are accessible to a user assigned
to this permission set, and the kind of access available
(create, read, edit, delete, and so on). Available in API
version 23.0 and later.
pageAccesses
PermissionSetApexPageAccess[]
Indicates which Visualforce pages that users assigned to
this permission set can execute. Available in API version
23.0 and later.
recordTypeVisibilities
PermissionSetRecordTypeVisibility[] Indicates which record types are visible to users assigned
to this permission set. Available in API version 29.0 and
later. This field is never retrieved or deployed for inactive
record types.
tabSettings
PermissionSetTabSetting[]
Indicates the tab visibility settings for this permission set.
Available in API version 26.0 and later.
license
string
Either the related permission set license or the user
license associated with this permission set. Available in
API version 38.0 and later. Use this field instead of
userLicense, which is deprecated and only available
up to API Version 37.0.
userLicense
string
Deprecated. The user license for the permission set. A
user license determines the baseline of features that the
user can access. Every user must have exactly one user
485
Metadata Types
Field
PermissionSet
Field Type
Description
license. Available up to API version 37.0. In API version
38.0 and later, use license.
userPermissions
PermissionSetUserPermission[]
Specifies an app or system permission (such as “API
Enabled”) and whether it's enabled for this permission
set. In API version 28.0 and earlier, this field retrieves all
user permissions, enabled or disabled. In API version 29.0
and later, this field retrieves only enabled user
permissions.
PermissionSetApplicationVisibility
PermissionSetApplicationVisibility determines whether an app is visible to a user assigned to this permission set.
Field Name
Field Type
Description
application
string
Required. The app name.
visible
boolean
Required. Indicates whether this app is visible to users assigned to this
permission set (true) or not (false).
PermissionSetApexClassAccess
PermissionSetApexClassAccess represents the Apex class access for users assigned to a permission set.
Field
Field Type
Description
apexClass
string
Required. The Apex class name.
enabled
boolean
Required. Indicates whether users assigned to this permission set
can execute methods in the top-level class (true) or not (false).
PermissionSetCustomPermissions
PermissionSetCustomPermissions represents the custom permissions access for users assigned to a permission set. Only enabled custom
permissions are retrieved.
Field Name
Field Type
Description
enabled
boolean
Required. Indicates whether the custom permission is enabled (true)
or not (false).
name
string
Required. The custom permission name.
486
Metadata Types
PermissionSet
PermissionSetExternalDataSourceAccess
PermissionSetExternalDataSourceAccess represents the data source access for users with identity type of Per User. Available in API
version 27.0 and later.
Field
Field Type
Description
enabled
boolean
Required. Indicates whether the data source is enabled (true) or
not (false).
externalDataSource
string
The name of the external data source.
PermissionSetFieldPermissions
PermissionSetFieldPermissions represents the field permissions for users assigned to a permission set. In API version 30.0 and later,
permissions for required fields can’t be retrieved or deployed.
Note: As of API version 38.0, you can change field permissions to make a field editable using the Metadata API for fields that you
can't change through the user interface. For example, you can deploy Asset.ProductCode as an editable field even though
you can't through the user interface.
Field
Field Type
Description
editable
boolean
Required. Indicates whether the field can be edited by the users
assigned to this permission set (true) or not (false).
field
string
Required. The API name of the field (such as
Warehouse__c.Description__c).
readable
boolean
Indicates whether the field can be read by the users assigned to
this permission set (true) or not (false).
PermissionSetObjectPermissions
PermissionSetObjectPermissions represents the object permissions for a permission set. Use one of these elements for each permission.
Field
Field Type
Description
allowCreate
boolean
Required. Indicates whether the object referenced by the object
field can be created by the users assigned to this permission set
(true) or not (false).
allowDelete
boolean
Required. Indicates whether the object referenced by the object
field can be deleted by the users assigned to this permission set
(true) or not (false).
allowEdit
boolean
Required. Indicates whether the object referenced by the object
field can be edited by the users assigned to this permission set
(true) or not (false).
487
Metadata Types
PermissionSet
Field
Field Type
Description
allowRead
boolean
Required. Indicates whether the object referenced by the object
field can be viewed by the users assigned to this permission set
(true) or not (false).
modifyAllRecords
boolean
Required. Indicates whether the object referenced by the object
field can be viewed, edited, or deleted by the users assigned to
this permission set (true) or not (false), regardless of the
sharing settings for the object. This includes private records (records
with no parent object). This is similar to the “Modify All Data” user
permission, but limited to the individual object level.
object
string
Required. The API name of the object (such as Warehouse__c).
viewAllRecords
boolean
Required. Indicates whether the object referenced by the object
field can be viewed by the users assigned to this permission set
(true) or not (false), regardless of the sharing settings for the
object. This includes private records (records with no parent object).
This is similar to the “View All Data” user permission, but limited
to the individual object level.
PermissionSetApexPageAccess
PermissionSetApexPageAccess represents the Visualforce page access for users assigned to a permission set.
Field
Field Type
Description
apexPage
string
Required. The Visualforce page name.
enabled
boolean
Required. Indicates whether users assigned to this permission set
can execute the Visualforce page (true) or not (false).
PermissionSetRecordTypeVisibility
PermissionSetRecordTypeVisibility represents the visibility of record types for this permission set.
Field
Field Type
Description
recordType
string
Required. The record type name, for example
Account.MyRecordType.
visible
boolean
Required. Indicates whether the record type is visible to users
assigned to this permission set (true) or not (false).
PermissionSetTabSetting
PermissionSetTabSetting represents the tab settings for a permission set.
488
Metadata Types
PermissionSet
Field
Field Type
Description
tab
string
Required. The tab name.
visibility
PermissionSetTabVisibility
(enumeration of type string)
Required. Indicates the visibility settings for the tab. Valid values
are:
• Available—The tab is available on the All Tabs page.
Individual users can customize their display to make the tab
visible in any app.
• None—The tab isn’t available on the All Tabs page or visible
in any apps.
• Visible—The tab is available on the All Tabs page and
appears in the visible tabs for its associated app. Individual
users can customize their display to hide the tab or make it
visible in other apps.
PermissionSetUserPermission
PermissionSetUserPermission represents an app or system permission for a permission set. Use one of these elements for each permission.
Field
Field Type
Description
enabled
boolean
Required. Indicates whether the permission is enabled (true) or
disabled (false).
name
string
Required. The name of the permission.
Declarative Metadata Sample Definition
When adding or changing a permission set, you don't need to include all permissions—you only need to include the permissions you're
adding or changing.
Grants all rights needed for an HR administrator to manage
employees.SalesforceJobApps__RecruitingtruetrueAPIEnabledtruetrue
489
Metadata Types
PermissionSet
truetruetruetruetrueJob_Request__c.Salary__ctrueJob_Request_Web_FormtrueSend_Email_ConfirmationtrueJob_Request__cAvailableRecruiting.DevManagertrue
The following is an example package.xml manifest used to retrieve the PermissionSet metadata for an organization. When you retrieve
permission sets, you should also retrieve the related components with assigned permissions. For example, to retrieve
objectPermissions and fieldPermissions for a custom object, you must also retrieve the CustomObject component.
Job_Request__cCustomTabJob_Request__cCustomObjectJobApps__RecruitingCustomApplicationRecruiting.DevManagerRecordType*PermissionSet
490
Metadata Types
PlatformCachePartition
39.0
PlatformCachePartition
Represents a partition in the Platform Cache. This type extends the Metadata metadata type and inherits its fullName field.
File Suffix and Directory Location
PlatformCachePartition components have the suffix .cachePartition and are stored in the cachePartitions folder.
Version
PlatformCachePartition components are available in API version 35.0 and later.
Special Access Rules
The “Author Apex” permission is required to deploy and retrieve PlatformCachePartition components.
Fields
Field Name
Field Type
Description
description
string
Describes the cache partition.
isDefaultPartition
boolean
Required. Indicates whether this cache partition is the default
partition in your organization (true) or not (false).
masterLabel
string
Required. The label of the cache partition that appears in the
Salesforce user interface.
platformCachePartitionTypes PlatformCachePartitionType[] An array of cache types that the partition can store.
PlatformCachePartitionType
Contains information about a partition type, including its minimum and allocated capacity.
Field Name
Field Type
Description
allocatedCapacity
int
Required. The total storage capacity, in MB, that is allocated for the cache
type, including free, purchased, and trial cache. Purchased capacity
includes organization-wide cache, which can be used in any partition,
and namespace-specific cache, which can be used only in partitions
associated with a namespace.
allocatedPurchasedCapacity int
Required. The amount of namespace-specific purchased storage capacity,
in MB, that is allocated for the cache type.
491
Metadata Types
PlatformCachePartition
Field Name
Field Type
Description
allocatedTrialCapacity
int
Required. The amount of trial cache space, in MB, that is allocated for the
cache type.
cacheType
PlatformCacheType The type of cache. Valid values are:
(enumeration of type • Session—Session cache
string)
• Organization—Org cache
Declarative Metadata Sample Definition
The following is an example of a PlatformCachePartition component.
Custom partition and marked as default.truemyPartition105Session55Organization
The following is an example package.xml that references the previous definition.
myPartitionPlatformCachePartition39.0
If a namespace is defined in your organization, add the namespace prefix to your partition name. For example:
Namespace.myPartition
To retrieve all cache partitions from your organization, use the wildcard character (*) as follows.
*PlatformCachePartition
492
Metadata Types
Portal
39.0
Portal
The Portal metadata type represents a partner portal or Customer Portal. It extends Metadata and inherits its fullName field. To use
this metadata type, you must have a partner portal or Customer Portal enabled for your organization. For more information, see “Partner
Portal Overview” and “Enabling Your Customer Portal” in the Salesforce online help.
Declarative Metadata File Suffix and Directory Location
Force.com Portal components are stored in the portals directory of the corresponding package directory. The file name matches
the portal name, and the extension is .portal.
Version
Force.com Portal components are available in API version 15.0 and later.
Fields
Field
Field Type
Description
active
boolean
Required. Denotes whether this portal is active.
admin
string
The full name of the user designated to administer the portal.
defaultLanguage
string
The default language for HTML messages for the portal. Use the
abbreviation for the language, for example, en_US for United
States English.
description
string
The portal description.
emailSenderAddress
string
Required. The email address used when sending emails using
templates configured from the portal (for example, for resetting
the password).
emailSenderName
string
Required. The name to display when sending emails using
templates configured from the portal (for example, for resetting
the password).
enableSelfCloseCase
boolean
For the Customer Portal, allows portal users to close their own
cases.
footerDocument
string
The file to be used as the footer for this portal.
forgotPassTemplate
string
The email template to use when a user clicks the Forgot
Password link.
493
Metadata Types
Portal
Field
Field Type
Description
fullName
string
Required. The name of the portal.
Inherited from Metadata, this field is not defined in the WSDL
for this metadata type. It must be specified when creating,
updating, or deleting. See create() to see an example of
this field specified for a call.
headerDocument
string
The file to be used as the header for this portal.
isSelfRegistrationActivated boolean
Determines whether self-registration is active or not for this
portal.
loginHeaderDocument
string
The file to be used as the header for this portal's login page.
logoDocument
string
The file to be used as the logo for this portal.
logoutUrl
string
The URL that the user should be redirected to on logout.
newCommentTemplate
string
The email template to be used for auto-notifications on new
case comments.
newPassTemplate
string
The email template to be used for auto-notifications on
password reset.
newUserTemplate
string
The email template to be used for auto-notifications on new
user creation.
ownerNotifyTemplate
string
The email template to be used for auto-notifications on owner
change.
selfRegNewUserUrl
string
The URL of the self-registration page.
selfRegUserDefaultProfile string
The default profile for self-registered users.
selfRegUserDefaultRole PortalRoles (enumeration of
The default role for self-registered users. The valid values are:
type string)
• Executive
• Manager
• User
• PersonAccount
selfRegUserTemplate
string
The email template to be used for auto-notifications on
self-registration.
showActionConfirmation boolean
Determines whether or not confirmation messages are displayed
for actions in the portal.
stylesheetDocument
string
The Document object to be used as the CSS stylesheet for this
portal.
type
PortalType (enumeration of type Required. The type for this portal. The valid values are:
string)
• CustomerSuccess
• Partner
494
Metadata Types
PostTemplate
Declarative Metadata Sample Definition
A sample XML definition of a portal is shown below.
trueCustomer Portalrguest@albany.comfalseunfiled$public/ChangePwdEmailfalseunfiled$public/ChangePwdEmailunfiled$public/NewUserEmailunfiled$public/SelfRegUserEmailfalseCustomerSuccess
SEE ALSO:
CustomSite
PostTemplate
Represents the metadata associated with an approval post template for Approvals in Chatter. With approval post templates, you can
customize the information included in approval request posts that appear in Chatter feeds. This type extends the Metadata metadata
type and inherits its fullName field.
Note: Review Chatter Post Templates for Approval Requests in the Salesforce Help before you create a post template.
File Suffix and Directory Location
PostTemplate components have the suffix .postTemplate and are stored in the postTemplates folder.
Version
PostTemplate components are available in API version 29.0 and later.
Fields
Field Name
Field Type
Description
default
boolean
Required. Specifies whether this is the default post template for the given object.
When set to true, this post template is used by approval processes that are
associated with the same object and don’t specify a post template.
495
Metadata Types
Field Name
Profile
Field Type
Description
When an object has no default post template, each of its approval processes uses
the system default post template, unless the approval process specifies its own
post template.
description
string
Optional description of the post template.
fields
string[]
Required. An array of up to four fields to include in approval request posts.
If the approval object is a detail object in a master-detail relationship, Owner
isn’t available for approval page layouts or approval post templates.
label
string
Required. Name of the post template. This non-unique label is different from the
unique name of the post template.
Declarative Metadata Sample Definition
The following is an example of a PostTemplate component:
falseNumberOfEmployeesNumberofLocations__cPartnerAccountLeadCustomFieldNumber__c
The following is an example package manifest that references the previous PostTemplate component.
Lead.leadtemplatePostTemplate29.0
Profile
Represents a user profile. A profile defines a user’s permission to perform different functions within Salesforce. This type extends the
Metadata metadata type and inherits its fullName field.
In API version 29.0 and later, you can retrieve and deploy access settings for the following managed components in profiles and permission
sets:
• Apex classes
• Apps
• Custom field permissions
• Custom object permissions
496
Metadata Types
Profile
• Custom tab settings
• External data sources
• Record types
• Visualforce pages
For more information, see Managed Component Access in Sample package.xml Manifest Files on page 22.
Declarative Metadata File Suffix and Directory Location
The file suffix is .profile. There is one file for each profile, stored in the profiles folder in the corresponding package directory.
Version
Profiles are available in API version 10.0 and later.
Fields
The content of a profile returned by Metadata API depends on the content requested in the RetrieveRequest message. For example,
profiles only include field-level security for fields included in custom objects returned in the same RetrieveRequest as the profiles.
Note: As of API version 38.0, you can change field permissions to make a field editable using the Metadata API for fields that you
can't change through the user interface. For example, you can deploy Asset.ProductCode as an editable field even though
you can't through the user interface.
The profile definition contains the following fields:
Field Name
Field Type
Description
applicationVisibilities ProfileApplicationVisibility[]
Indicates which apps are visible to users assigned to this
profile. In API version 29.0 and earlier, this field supports
custom apps only. In API version 30.0 and later, this field
supports both standard and custom apps.
classAccesses
ProfileApexClassAccess[]
Indicates which top-level Apex classes have methods
that users assigned to this profile can execute.
custom
boolean
Indicates whether the profile is a custom (true) or
standard (false) profile. Available in API version 30.0
and later.
customPermissions
ProfileCustomPermissions[]
Indicates which custom permissions are available to users
assigned to this profile. Available in API version 31.0 and
later.
description
string
The profile description. Limit: 255 characters. Available
in API version 30.0 and later.
externalDataSourceAccesses ProfileExternalDataSourceAccess[]
497
Indicates which data sources with identity type of Per
User are available to users assigned to this profile.
Available in API version 27.0 and later.
Metadata Types
Profile
Field Name
Field Type
Description
fieldLevelSecurities
ProfileFieldLevelSecurity[]
Indicates which fields are visible to a user assigned to this
profile, and the kind of access available (editable or
hidden). This field is available in API version 22.0 and
earlier.
fieldPermissions
ProfileFieldLevelSecurity[]
Indicates which fields are visible to a user assigned to this
profile, and the kind of access available (editable or
readable). This field is available in API version 23.0 and
later.
fullName
string
The name can only contain characters, letters, and the
underscore (_) character, must start with a letter, and
cannot end with an underscore or contain two
consecutive underscore characters.
Inherited from the Metadata component, this field is not
defined in the WSDL for this component. It must be
specified when creating, updating, or deleting. See
create() to see an example of this field specified for
a call.
layoutAssignments
ProfileLayoutAssignments[]
Indicates which layout to use for this profile.
loginHours
ProfileLoginHours[]
Indicates the hours within which a user with this profile
may log in. If not specified, the profile doesn’t restrict a
user’s login hours.
This field is available in API version 25.0 and later.
loginIpRanges
ProfileLoginIpRange[]
The list of IP address ranges from which users with a
particular profile can log in.
This field is available in API version 17.0 and later.
objectPermissions
ProfileObjectPermissions[]
Indicates which objects are accessible to a user assigned
to this profile, and the kind of access available (create,
read, edit, delete, and so on). In API version 28.0 and later,
this field is only retrieved when allowRead is true.
pageAccesses
ProfileApexPageAccess[]
Indicates which Visualforce pages that users assigned to
this profile can execute.
profileActionOverrides
ProfileActionOverride[]
A list of the Lightning Experience Home page action
overrides that are assigned to this profile. When a user
logs in with a profile, a matching ProfileActionOverride
assignment takes precedence over existing overrides for
the Home tab specified in ActionOverride.
This field is available in API version 37.0 and later.
498
Metadata Types
Profile
Field Name
Field Type
Description
recordTypeVisibilities
ProfileRecordTypeVisibility[]
Indicates the visibility of record types for users assigned
to this profile. In API version 29.0 and later, this field is
not retrieved or deployed for inactive record types.
tabVisibilities
ProfileTabVisibility[]
Indicates which record types are visible to a user assigned
to this profile, and therefore which tabs within an app
are visible.
userLicense
string
The User License for the profile. A user license
determines the baseline of features that the user can
access. Every user must have exactly one user license.
This field is available in API version 17.0 and later.
ProfileUserPermission[]
userPermissions
Specifies a user permission (such as “API Enabled”) and
whether it’s enabled for this profile. This field retrieves
only enabled user permissions. Available in API version
29.0 and later.
ProfileActionOverride
ProfileActionOverride represents a user profile-based override of an ActionOverride on a standard Home tab in Lightning Experience.
Field Name
Field Type
Description
actionName
string
Required. The possible values are the same as the actions you can
override:
• accept
• clone
• delete
• edit
• list
• new
• tab
• view
content
string
Set this field if type is set to flexipage, scontrol, or
visualforce. It refers to the name of the Lightning Page, s-control,
or Visualforce page to use as the override. To reference installed
components, use the format of
Component_namespace__Component_name.
499
Metadata Types
Profile
Field Name
Field Type
Description
formFactor
FormFactor
(enumeration of type
string)
The size of the page being overridden. Only the Large value is
supported. The other values, Small and Medium, are reserved for
future use.
The Large value represents the Lightning Experience desktop
environment, and is only valid for the flexipage type. For the
scontrol and visualforce types, this field defaults to null.
pageOrSobjectType
string
The name of the sObject type being overridden. Valid values are
standard and custom.
recordType
string
The record type assigned to the ProfileActionOverride. If the
PageOrSobjectType is standard-home, this field is null.
type
ActionOverrideType
(enumeration of type
string)
Required. Represents the type of action override. Valid values are
described in ActionOverrideType.
ProfileApplicationVisibility
ProfileApplicationVisibility determines whether an app is visible to a user assigned to this profile.
Field Name
Field Type
Description
application
string
Required. The name of the app.
default
boolean
Required. Indicates whether the app is the default app (true) or not
(false). Only one app per profile can be set to true.
visible
boolean
Required. Indicates whether this app is visible to users assigned to this
profile (true) or not (false).
ProfileApexClassAccess
ProfileApexClassAccess determines which top-level Apex classes have methods that users assigned to this profile can execute.
Field Name
Field Type
Description
apexClass
string
Required. The Apex class name.
enabled
boolean
Required. Indicates whether users assigned to this profile can execute
methods in the top-level class (true) or not (false).
ProfileCustomPermissions
ProfileCustomPermissions represents the custom permissions access for users assigned to a profile. Only enabled custom permissions
are retrieved.
500
Metadata Types
Profile
Field Name
Field Type
Description
enabled
boolean
Required. Indicates whether the custom permission is enabled (true)
or not (false).
name
string
Required. The custom permission name.
ProfileExternalDataSourceAccess
ProfileExternalDataSourceAccess represents the data source access for users with identity type of Per User. Available in API version
27.0 and later.
Field Name
Field Type
Description
enabled
boolean
Required. Indicates whether the data source is enabled (true) or not
(false).
externalDataSource
string
The name of the external data source.
ProfileFieldLevelSecurity
ProfileFieldLevelSecurity represents the field level security for users assigned to a profile. In API version 30.0 and later, permissions for
required fields can’t be retrieved or deployed.
Field Name
Field Type
Description
editable
boolean
Required. Indicates whether this field is editable (true) or not (false).
In API version 30.0 and later, when deploying a new custom field, this
field is false by default.
field
string
Required. Indicates the name of the field.
hidden
boolean
Indicates whether this field is hidden (true) or not (false). This field
is available in API version 22.0 and earlier.
For portal profiles, this is set to true by default in API version 19.0 and
later.
readable
boolean
Indicates whether this field is readable (true) or not (false). This field
is available in API version 23.0 and later. It replaces the hidden field.
In API version 30.0 and later, when deploying a new custom field, this
field is false by default.
For portal profiles, this is set to false by default.
ProfileLayoutAssignments
ProfileLayoutAssignments determines which layout to use for a profile and a given entity.
501
Metadata Types
Profile
Field Name
Field Type
Description
layout
string
Required. Indicates the layout for this particular entity.
recordType
string
This field is optional. If the recordType of the record matches a layout
assignment rule, it will use the specified layout.
ProfileLoginHours
ProfileLoginHours restricts the days and times within which users with a particular profile can log in.
Field Name
Field Type
Description
weekdayStart
string
Specifies the earliest time on that day that a user with this profile may
log in. If a start time for a particular day is specified, an end time for that
day must be specified as well. Start can’t be greater than end for a
particular day.
• Valid values for weekday: monday, tuesday, wednesday,
thursday, friday, saturday, or sunday. For example,
mondayStart indicates the beginning of the login period for
Monday.
• Valid values for Start: the number of minutes since midnight. Must
be evenly divisible by 60 (full hours). For example, 300 is 5:00 a.m.
string
weekdayEnd
Specifies the time on that day by which a user with this profile must log
out.
• Valid values for weekday: monday, tuesday, wednesday,
thursday, friday, saturday, or sunday. For example,
mondayEnd indicates the close of the login period for Monday.
• Valid values for End: the number of minutes since midnight. Must be
evenly divisible by 60 (full hours). For example, 1020 is 5:00 p.m.
To delete login hour restrictions from a profile that previously had them, you must explicitly include an empty loginHours tag without
any start or end times.
ProfileLoginIpRange
ProfileLoginIpRange IP defines an IP address ranges from which users with a particular profile can log in.
Field Name
Field Type
Description
description
string
Use this field to identify the purpose of the range, such as which part of
a network corresponds to this range. This field is available in API version
31.0 and later.
endAddress
string
Required. The end IP address for the range.
startAddress
string
Required. The start IP address for the range.
502
Metadata Types
Profile
ProfileObjectPermissions
ProfileObjectPermissions represents a user's access to objects.
Note: In API version 18.0 and later, these permissions are disabled in new custom objects for any profiles in which “View All Data”
or “Modify All Data” is disabled.
Field Name
Field Type
Description
allowCreate
boolean
Indicates whether the object referenced by the object field can be
created by the users assigned to this profile (true) or not (false).
This field is named revokeCreate before version 14.0 and the logic
is reversed. The field name change and the update from true to
false and vice versa is automatically handled between versions and
does not require any manual editing of existing XML component files.
The field name change and the update from true to false and vice
versa is automatically handled between versions and does not require
any manual editing of existing XML component files.
allowDelete
boolean
Indicates whether the object referenced by the object field can be
deleted by the users assigned to this profile (true) or not (false).
This field is named revokeDelete before version 14.0 and the logic
is reversed. The field name change and the update from true to
false and vice versa is automatically handled between versions and
does not require any manual editing of existing XML component files.
allowEdit
boolean
Indicates whether the object referenced by the object field can be
edited by the users assigned to this profile (true) or not (false).
This field is named revokeEdit before version 14.0 and the logic is
reversed. The field name change and the update from true to false
and vice versa is automatically handled between versions and does not
require any manual editing of existing XML component files.
allowRead
boolean
Indicates whether the object referenced by the object field can be
seen by the users assigned to this profile (true) or not (false).
This field is named revokeRead before version 14.0 and the logic is
reversed. The field name change and the update from true to false
and vice versa is automatically handled between versions and does not
require any manual editing of existing XML component files.
modifyAllRecords
boolean
Indicates whether the object referenced by the object field can be
read, edited, or deleted by the users assigned to this profile (true) or
not (false), regardless of the sharing settings for the object. This is
equivalent to the “Modify All Data” user permission limited to the
individual object level. This is a new field in API version 15.0.
Note: This field is not available for all objects. Refer to the profile
in the user interface to determine which objects currently support
these permissions. Profiles with "Modify All Data" ignore
503
Metadata Types
Field Name
Profile
Field Type
Description
modifyAllRecords entries in Metadata API and don't return
an error if "Modify All Data" is enabled on the profile.
object
string
Required. The name of the object whose permissions are altered by this
profile, for example, MyCustomObject__c.
viewAllRecords
boolean
Indicates whether the object referenced by the object field can be
read by the users assigned to this profile (true) or not (false),
regardless of the sharing settings for the object. This includes private
records (records with no parent object). This is equivalent to the “View
All Data” user permission limited to the individual object level. This is a
new field in API version 15.0.
Note: This field is not available for all objects. Refer to the profile
in the user interface to determine which objects currently support
these permissions. Profiles with "View All Data" ignore
viewAllRecords entries in the Metadata API and don't return
an error if "View All Data" is enabled on the profile.
ProfileApexPageAccess
ProfileApexPageAccess determines which Visualforce pages that users assigned to this profile can execute.
Field Name
Field Type
Description
apexPage
string
Required. The Visualforce page name.
enabled
boolean
Required. Indicates whether users assigned to this profile can execute
the Visualforce page (true) or not (false).
ProfileRecordTypeVisibility
ProfileRecordTypeVisibility represents the visibility of record types for this profile. Record types let you offer different business processes,
picklist values, and page layouts to different users.
Field Name
Field Type
Description
default
boolean
Required. Indicates whether the record type is the default for this pair of
profile and object (true) or not (false). Only one default is allowed
per object.
personAccountDefault
boolean
Indicates whether the record type is the default person account record
type for this pair of profile and object (true) or not (false). Only one
person account record type default is allowed per object. This field is
only relevant for record types for account or contact objects.
504
Metadata Types
Field Name
Profile
Field Type
Description
For more information about person accounts, see “What Is a Person
Account?” in the Salesforce online help. Person accounts are not enabled
by default in Salesforce. To request person accounts, contact Salesforce.
recordType
string
Required. The record type name, for example
Account.MyRecordType.
visible
boolean
Required. Indicates whether this record type is visible to users assigned
to this profile (true) or not (false).
ProfileTabVisibility
ProfileTabVisibility represents the visibility of tabs for this profile. For version 17.0 and later, ProfileTabVisibility supports visibility of tabs
for standard objects. The manifest file must include the standard object corresponding to a standard tab to retrieve the tab visibility in
a profile.
Field Name
Field Type
Description
tab
string
Required. The name of the tab.
visibility
TabVisibility
(enumeration of type
string)
Required. Indicates the visibility of the tab. Valid values are:
• DefaultOff—The tab is available on the All Tabs page. Users
can individually customize their display to make the tab visible in
any app.
• DefaultOn—The tab is available on the All Tabs page and appears
in the visible tabs for its associated app. Users can individually
customize their display to hide the tab or make it visible in other
apps.
• Hidden—The tab isn’t available on the All Tabs page or visible in
any apps.
Note: In version 36.0 and earlier, Hidden is returned only if
visibility was set using the API. If it was set to Hidden
from the profile in Salesforce, the API doesn’t return a visibility
value. For version 37.0 and later, when tab visibility is set to hidden,
the API returns Hidden, regardless of how the value was set.
ProfileUserPermission
ProfileUserPermission represents an app or system permission for a profile. Use one of these elements for each permission.
Field
Field Type
Description
enabled
boolean
Required. Indicates whether the permission is enabled (true) or
disabled (false).
name
string
Required. The permission name.
505
Metadata Types
Profile
Java Sample
The following sample uses picklists, profiles, record types, and a custom app:
public void profileSample() {
try {
// Create an expense report record, tab and app...
CustomObject expenseRecord = new CustomObject();
expenseRecord.setFullName("ExpenseReport__c");
expenseRecord.setLabel("Expense Report");
expenseRecord.setPluralLabel("Expense Reports");
expenseRecord.setDeploymentStatus(DeploymentStatus.Deployed);
expenseRecord.setSharingModel(SharingModel.ReadWrite);
CustomField nameField = new CustomField();
nameField.setType(FieldType.AutoNumber);
nameField.setLabel("Expense Report Number");
nameField.setDisplayFormat("ER-{0000}");
expenseRecord.setNameField(nameField);
AsyncResult[] arsExpenseRecord =
metadataConnection.create(new Metadata[] {expenseRecord});
Picklist expenseStatus = new Picklist();
PicklistValue unsubmitted = new PicklistValue();
unsubmitted.setFullName("Unsubmitted");
PicklistValue submitted = new PicklistValue();
submitted.setFullName("Submitted");
PicklistValue approved = new PicklistValue();
approved.setFullName("Approved");
PicklistValue rejected = new PicklistValue();
rejected.setFullName("Rejected");
expenseStatus.setPicklistValues(new PicklistValue[] {
unsubmitted, submitted, approved, rejected}
);
CustomField expenseStatusField = new CustomField();
expenseStatusField.setFullName(
"ExpenseReport__c.ExpenseStatus__c"
);
expenseStatusField.setLabel("Expense Report Status");
expenseStatusField.setType(FieldType.Picklist);
expenseStatusField.setPicklist(expenseStatus);
AsyncResult[] arsStatusField =
metadataConnection.create(new Metadata[]
{expenseStatusField});
CustomTab expenseTab = new CustomTab();
expenseTab.setFullName("ExpenseReport__c");
expenseTab.setMotif("Custom70: Handsaw");
expenseTab.setCustomObject(true);
AsyncResult[] arsTab =
metadataConnection.create(new Metadata[] {expenseTab});
506
Metadata Types
Profile
CustomApplication application = new CustomApplication();
application.setFullName("ExpenseForce");
application.setTab(new String[] {expenseTab.getFullName()});
AsyncResult[] arsApp =
metadataConnection.create(new Metadata[] {application});
// Employees and managers have the same app visibility...
ProfileApplicationVisibility appVisibility =
new ProfileApplicationVisibility();
appVisibility.setApplication("ExpenseForce");
appVisibility.setVisible(true);
Profile employee = new Profile();
employee.setFullName("Employee");
employee.setApplicationVisibilities(
new ProfileApplicationVisibility[] {appVisibility}
);
AsyncResult[] arsProfileEmp =
metadataConnection.create(new Metadata[] {employee});
Profile manager = new Profile();
manager.setFullName("Manager");
manager.setApplicationVisibilities(
new ProfileApplicationVisibility[] {appVisibility}
);
AsyncResult[] arsProfileMgr =
metadataConnection.create(new Metadata[] {manager});
// But employees and managers have different access
// to the state of the expense sheet
RecordType edit = new RecordType();
edit.setFullName("ExpenseReport__c.Edit");
RecordTypePicklistValue editStatuses =
new RecordTypePicklistValue();
editStatuses.setPicklist("ExpenseStatus__c");
editStatuses.setValues(new PicklistValue[]
{unsubmitted, submitted});
edit.setPicklistValues(new RecordTypePicklistValue[]
{editStatuses});
AsyncResult[] arsRecTypeEdit =
metadataConnection.create(new Metadata[] {edit});
RecordType approve = new RecordType();
approve.setFullName("ExpenseReport__c.Approve");
RecordTypePicklistValue approveStatuses =
new RecordTypePicklistValue();
approveStatuses.setPicklist("ExpenseStatus__c");
approveStatuses.setValues(new PicklistValue[]
{approved, rejected});
approve.setPicklistValues(new RecordTypePicklistValue[]
{approveStatuses});
AsyncResult[] arsRecTypeApp =
metadataConnection.create(new Metadata[] {approve});
} catch (ConnectionException ce) {
507
Metadata Types
Profile
ce.printStackTrace();
}
}
Declarative Metadata Sample Definition
The following is the definition of a profile in an organization with a custom app, custom object, record type, tab, and user permission:
PubApps__Myriad_PublishingfalsetruetruetrueTestWeblinks__c.My First RecordtypetrueMyriad PublicationsDefaultOntrueAPIEnabled
Usage
When you use the retrieve() call to get information about profiles in your organization, the returned .profile files only include
security settings for the other metadata types referenced in the retrieve request (with the exception of user permissions, IP address
ranges, and login hours, which are always retrieved). For example, the package.xml file below contains a types element that
matches all custom objects, so the returned profiles contain object and field permissions for all custom objects in your organization, but
do not include permissions for standard objects, such as Account, and standard fields.
*CustomObject*Profile
508
Metadata Types
ProfileActionOverride
39.0
The wildcard “*” on CustomObject does not match standard objects and this helps to avoid making unintended, high-impact profile
changes. If you create a few custom objects in a Developer Edition organization, retrieve() the information, and subsequently
deploy() the custom objects to your production organization, the profile and field-level security for all your standard objects, such
as Account, and standard fields are not overwritten unless you explicitly create separate types elements for the standard objects or
fields.
Metadata API intentionally makes it somewhat difficult to include standard fields in retrieve() calls in order to prevent unexpected
profile changes. However, you can still retrieve and deploy profile permissions for custom and standard fields in standard objects, such
as Account.
The next package.xml file allows you to return profile permissions for Account standard and custom fields. Note how the standard
Account object is defined in a types element by specifying it as a member of a CustomObject type.
AccountCustomObject*Profile39.0
The final package.xml file allows you to return profile permissions for the MyCustomField__c custom field in the Account
object.
Account.MyCustomField__cCustomField*Profile39.0
ProfileActionOverride
Represents an override of an ActionOverride by a user profile. You can use it to override an ActionOverride on a standard Home tab or
object record page in Lightning Experience. When a user logs in with a profile, a matching ProfileActionOverride assignment takes
precedence over existing overrides for the Home tab or record page specified in ActionOverride. You can only access ProfileActionOverride
by accessing its encompassing CustomApplication or Profile. Available in API version 39.0 and later.
509
Metadata Types
ProfileActionOverride
File Suffix and Directory Location
Profile-based action overrides are defined as part of a custom application or profile.
Version
ProfileActionOverrides are available in API version 39.0 and later.
Fields
Field Name
Field Type
Description
actionName
string
The name of the action. The only valid values are Tab.and View.
If pageOrSobjectType is standard-home, this field must be
Tab. The Tab action is supported only when ProfileActionOverride is
being specified as part of a Profile.
If pageOrSobjectType is record-home, this field must be
View. The View action is supported only when ProfileActionOverride
is being specified as part of a CustomApplication.
content
string
Read-only. Represents the name of the Lightning Page being used as
the override.
formFactor
FormFactor
(enumeration of
type string)
The size of the page being overridden. Only the Large value is
supported. The other values, Small and Medium, are reserved for
future use. The Large value represents the Lightning Experience
desktop environment.
pageOrSobjectType
string
The name of the page being overridden. The only valid values are
record-home and standard-home.
recordType
string
The record type associated with the override. If
pageOrSobjectType is standard-home, this field must be
null. This field is required when actionName is set to View.
type
ActionOverrideType Read-only. The type of action override. The only valid value is
(enumeration of
flexipage.
type string)
Declarative Metadata Sample Definition
You can define a ProfileActionOverride like this.
ViewCustomObjectFlexiPageLargeTestObj__c
510
Metadata Types
Queue
FlexipagestandardTestObj__c.TestRecordTypestandard-homeLargestandard-Accountstandard-OpportunityLightningStandard
Here is an example package.xml.
MyCustomAppCustomApplication39.0
Queue
Represents a holding area for items before they are processed.
Declarative Metadata File Suffix and Directory Location
The file suffix for queue components is .queue and components are stored in the queues directory of the corresponding package
directory. This component supports cases, leads, service contracts (if Entitlements are enabled), and custom objects.
Version
Queue components are available in API version 24.0 and later.
Fields
This metadata type represents the valid values that define a queue:
Field Name
Field Type
doesSendEmailToMembers boolean
Description
Indicates whether emails are sent to queue members (true) or not
(false) when a new record is added to the queue.
email
string
The email address of the queue owner.
fullName
string
The unique identifier for API access. The fullName can contain only
underscores and alphanumeric characters. It must be unique, begin with
a letter, not include spaces, not end with an underscore, and not contain
511
Metadata Types
Field Name
QuickAction
Field Type
Description
two consecutive underscores. This field is inherited from the Metadata
component. Corresponds to Queue Name in the user interface.
name
string
Required. The name of the queue. Corresponds to Label in the user
interface.
queueSobject
QueueSobject[]
Indicates the supported entity types.
QueueSobject
QueueSobject represents an entity type that the queue supports.
Field Name
Field Type
Description
sobjectType
string
Valid values are:
• Case
• Lead
• ServiceContract
• Custom objects (e.g. ObjA_c)
Declarative Metadata Sample Definition
The following is the definition of a queue, which supports Case, Lead, and a custom object named ObjA.
truemember@company.comYour NamememberQueueCaseLeadObjA_c
QuickAction
Represents a specified create or update quick action for an object that then becomes available in the Chatter publisher. For example,
you can create an action that, on the detail page of an account, allows a user to create a contact related to that account from the Chatter
feed on that page. QuickAction can be created on objects that allow custom fields. The parent objects supported include:
512
Metadata Types
QuickAction
• Account
• Campaign
• Case
• Contact
• Custom objects
• Group
• Lead
• Opportunity
File Suffix and Directory Location
QuickAction components have the suffix quickAction and are stored in the quickActions folder.
Version
QuickAction components are available in API version 28.0 and later.
Fields
Field Name
Field Type
Description
canvas
string
If the custom action invokes a canvas app, the app name. Returns the
fully qualified name of the canvas app in the format
__, if the quick action type is Canvas;
otherwise, returns null.
This field is available in API version 29.0 and later.
description
string
The description of the action.
fieldOverrides
FieldOverride on
page 515[]
The specific field that may be overridden within a QuickAction.
height
int
If a custom action is created, this field represents the height in pixels of
the action pane.
icon
string
The icon used to identify the action.
API version 32.0 and later returns different icons than in earlier API
versions.
isProtected
boolean
Indicates whether this component is protected (true) or not (false).
Protected components cannot be linked to or referenced by components
created in the installing organization.
label
string
Identifies the action and displays to users. This is also the default identifier
used for the API and managed packages.
513
Metadata Types
QuickAction
Field Name
Field Type
Description
lightningComponent
string
If the custom action invokes a Lightning component, this field represents
the fully qualified name of the component. Otherwise, this field is null.
Available in API version 38.0 and later.
optionsCreateFeedItem
boolean
Required. Indicates whether successful completion of the action creates
a feed item (true) or not (false). Applies only to Create Record,
Update Record, and Log a Call quick action types.
Available in API version 36.0 and later.
page
string
If the custom action invokes a Visualforce page, this field identifies the
page.
quickActionLayout
QuickActionLayout The layout of fields on the action.
standardLabel
QuickActionLabel
(enumeration of
type string)
Specifies the standard label to use for the action. The valid values are:
• LogACall
• LogANote
• New (A new record)
• NewRecordType (For example, a label with something like “New
Idea”)
• Update
• UpdateRecordType
• NewChild (A new child record)
• NewChildRecordType
• CreateNew
• CreateNewRecordType (For example, a label with something
like “Create New Idea”)
• SendEmail (This value is available in API version 31.0 and later.)
• QuickRecordType
• Quick (A quick record)
successMessage
string
The message that displays to the user upon successful completion of
the action.
Available in API version 36.0 and later.
targetObject
string
The object for which the action is created and performed.
For example, you can create an action that, on the detail page of an
account, allows a user to create a contact related to that account from
the Chatter feed on that page. In this case, Contact is the
targetObject.
targetParentField
string
The parent object type of the action. Links the target object to the parent
object. For example, use Account if the target object is Contact and the
parent object is Account.
514
Metadata Types
QuickAction
Field Name
Field Type
Description
targetRecordType
string
Specifies which record type to create. Valid values are:
• Business Account
• Person Account
• Master
type
QuickActionType
(enumeration of
type string)
Required. The type of quick action. Valid values are:
• Canvas
• Create
• LightningComponent (This value is available in API version
38.0 and later.)
• LogACall
• Post
• SendEmail (This value is available in API version 31.0 and later.)
• SocialPost
• Update
• VisualforcePage
width
int
If a custom action is created, this field represents the width in pixels of
the action pane.
FieldOverride
Represents the field names and their respective formulas and literal values that comprise overrides in a QuickAction.
Field Name
Field Type
Description
field
string
The name of the specific field to allow overrides on.
formula
string
Specifies the formula to use when overriding a field.
literalValue
string
The value of the field without overrides.
QuickActionLayout
The layout of fields on the action. There is no hard limit to the number of fields you can add to an action layout. However, for optimum
usability, we recommend a maximum of eight fields. Adding more than 20 fields can severely affect user efficiency.
Field Name
Field Type
Description
layoutSectionStyle
LayoutSectionStyle
(enumeration of type
string)
The type of layout structure used. The valid values are:
• TwoColumnsTopToBottom
• TwoColumnsLeftToRight
• OneColumn
515
Metadata Types
Field Name
QuickAction
Field Type
Description
• CustomLinks
quickActionLayoutColumns QuickActionLayoutColumn[] Specifies columns in a QuickActionLayout.
QuickActionLayoutColumn
A column defined for a QuickActionLayout.
Field Name
Field Type
Description
quickActionLayoutItems QuickActionLayoutItem Specifies row items in a QuickActionLayoutColumn.
[]
QuickActionLayoutItem
A row item comprised of fields and defined for a QuickActionLayoutColumn.
Field Name
Field Type
Description
emptySpace
boolean
Controls if this layout item is a blank space (true) or not (false).
field
string
Represents a specific field in QuickActionLayoutItem. There is no hard
limit to the number of fields you can add to an action layout. However,
for optimum usability, we recommend a maximum of eight fields. Adding
more than 20 fields can severely affect user efficiency.
uiBehavior
UiBehavior
(enumeration of type
string)
Specifies user input behavior for specific fields in QuickActionLayoutItem.
The valid values are:
• Edit
• Required
• Readonly
Declarative Metadata Sample Definition
The following is an example of a QuickAction component:
testActionDefinitionTypesCreateTasktrueTwoColumnsLeftToRight
516
Metadata Types
RemoteSiteSetting
falseOwnerIdRequiredfalseWhoIdEditfalseWhatIdEditfalseActivityDateEditfalseSubjectEditfalseStatusRequiredfalsePriorityRequiredThis is a success messageTaskWhatCreate
RemoteSiteSetting
Represents a remote site setting. Before any Visualforce page, Apex callout, or JavaScript code using XmlHttpRequest in an s-control or
custom button can call an external site, that site must be registered in the Remote Site Settings page, or the call fails. RemoteSiteSetting
extends the Metadata metadata type and inherits its fullName field.
517
Metadata Types
RemoteSiteSetting
Declarative Metadata File Suffix and Directory Location
RemoteSiteSetting components are stored in the remoteSiteSettings directory of the corresponding package directory. The
file name matches the unique name of the remote site setting, and the extension is .remoteSite.
Version
RemoteSiteSetting components are available in API version 19.0 and later.
Fields
Field
Field Type
Description
description
string
The description explaining what this remote site setting is used
for.
disableProtocolSecurity boolean
Required. Indicates whether code within Salesforce can access
the remote site regardless of whether the user's connection is
over HTTP or HTTPS (true) or not (false). When true, code
within Salesforce can pass data from an HTTPS session to an
HTTP session, and vice versa.
Warning: Only set to true if you understand the
security implications.
fullName
string
The name can only contain characters, letters, and the
underscore (_) character, must start with a letter, and cannot
end with an underscore or contain two consecutive underscore
characters.
Inherited from the Metadata component, this field is not defined
in the WSDL for this component. It must be specified when
creating, updating, or deleting. See create() to see an
example of this field specified for a call.
isActive
boolean
Required. Indicates if the remote site setting is active (true) or
not (false).
url
string
Required. The URL for the remote site.
Declarative Metadata Sample Definition
A sample XML definition of a remote site setting is shown below.
Used for Apex callout to mapping web servicefalsetrue
518
Metadata Types
Report
https://www.maptestsite.net/mapping1
Report
Represents a custom report. This type extends the Metadata metadata type and inherits its fullName field. This metadata type only
supports custom reports; standard reports are not supported.
Declarative Metadata File Suffix and Directory Location
Reports are stored in the reports directory of the corresponding package directory. The file name matches the report title and the
extension is .report.
Retrieving Reports
You can’t use the wildcard (*) symbol with reports in package.xml. To retrieve the list of reports for populating package.xml
with explicit names, call listMetadata() and pass in ReportFolder as the type. Note that ReportFolder is not returned as a
type in describeMetadata(). Report is returned from describeMetadata() with an associated attribute of inFolder
set to true. If that attribute is set to true, you can construct the type by using the component name with the word Folder, such as
ReportFolder.
The following example shows folders in package.xml:
MyDBFolder/MyDBNameDashboardMyDocumentFolder/MyDocumentNameDocumentunfiled$public/MarketingProductInquiryResponseunfiled$public/SalesNewCustomerEmailEmailTemplateMyReportFolder/MyReportNameReport39.0
Version
Report components are available in API version 14.0 and later.
519
Metadata Types
Report
Fields
The following information assumes that you are familiar with creating and running reports. For more information on these fields, see
“Create a Report” in the Salesforce online help.
Field
Field Type
Description
aggregates
ReportAggregate[]
List that defines custom summary formulas for
summary, matrix, and joined reports.
block
Report[]
Represents each block in a joined report where
every block can be of a different report type.
blockInfo
ReportBlockInfo
Defines attributes for each block in a joined
report.
buckets
ReportBucketField[]
Defines a bucket field to be used in the report.
This field is available in API version 24.0 and later.
chart
ReportChart
Defines a chart for summary and matrix reports
.
colorRanges
ReportColorRange[]
List that specifies conditional highlighting for
report summary data.
columns
ReportColumn[]
List that specifies the fields displayed in the
report. Fields appear in the report in the same
order as they appear in the Metadata API file.
crossFilters
ReportCrossFilter[]
Defines a cross filter's object, related object, and
condition (WITH or WITHOUT). This field is
available in API version 39.0 and later.
currency
CurrencyIsoCode (enumeration of type
When using multiple currencies, some reports
allow you to display converted amounts by
selecting the appropriate column to display. For
example, in opportunity reports, you can include
the Amount (converted) column on the report.
This field is an enumeration of type string that
defines the currency in which to display
converted amounts. Valid values: Must be one
of the valid alphabetic, three-letter currency ISO
codes defined by the ISO 4217 standard, such
as USD, GBP, or JPY.
string)
description
string
Specifies a general description, which is
displayed with the report name. Maximum
characters: 255 characters.
division
string
If your organization uses divisions to segment
data and you have the “Affected by Divisions”
permission, records in the report must match
this division.
This field is available in API version 17.0 and later.
520
Metadata Types
Report
Field
Field Type
Description
filter
ReportFilter
Limits report results to records with specific data.
For example, you can limit report results to
opportunities for which the amount is greater
than $1,000:
AMOUNTgreaterThan1000
For more information, see “Enter Filter Criteria”
in the Salesforce online help.
folderName
string
Name of the folder that houses the report.
This field is available in API version 35.0 and later.
format
ReportFormat (enumeration of type string)
Defines the report format. For example,
Tabular for a simple data list without
subtotals.
fullName
string
The report unique developer name used as an
identifier for API access. The fullName can
contain only underscores and alphanumeric
characters. It must be unique, begin with a letter,
not include spaces, not end with an underscore,
and not contain two consecutive underscores.
This field is inherited from the Metadata
component.
groupingsAcross
ReportGrouping[]
List that defines the fields by which you want to
group and subtotal data across a matrix report
(row headings). When grouping by a date field,
you can further group the data by a specific time
period such as days, weeks, or months.
Maximum: 2 fields.
groupingsDown
ReportGrouping[]
For Summary and Matrix reports: List that defines
the fields by which you want to group and
subtotal. For summary reports, choosing more
than one sort field allows you to subsort your
data. For matrix reports, specifies summary fields
for column headings. When grouping by a date
field, you can further group the data by a specific
time period such as days, weeks, or months.
521
Metadata Types
Field
Report
Field Type
Description
Maximum for matrix reports: 2. Maximum for
summary reports: 3
historicalSelector
ReportHistoricalSelector
Defines a date range for which historical trend
reporting data is to be captured. Default is “Any
Historical Date.”
Available in API version 29.0 and later.
name
string
Required. The report name. For example,
Opportunity Pipeline
numSubscriptions
int
Indicates whether a user has subscribed to this
report Lightning Experience (1) or not (0). Tied
to user context.
This field is available in API version 38.0 and later.
params
ReportParam[]
List that specifies settings specific to each report
type, in particular options that let you filter a
report to obtain useful subsets. For example, the
Activities report type lets you specify whether
you want to see open or closed activities or both
and whether you want to see tasks or events or
both. Valid values depend on the report type.
reportType
string
Required. Defines the type of data in the report.
For example, Opportunity to create a report
of opportunities data.
roleHierarchyFilter
string
The role name for a report drill down. Some
reports, such as opportunity and activity reports,
display Hierarchy links that allow you to drill
down to different data sets based on the role
hierarchy.
This field is available in API version 17.0 and later.
rowLimit
int
Defines the maximum number of rows that can
be returned for the report.
scope
string
Defines the scope of data on which you run the
report. For example, whether you want to run
the report against all opportunities,
opportunities you own, or opportunities your
team owns. Valid values depend on the
reportType. For example, for Accounts
reports:
• MyAccounts
• MyTeamsAccounts
• AllAccounts
522
Metadata Types
Report
Field
Field Type
Description
showCurrentDate
boolean
Can be set to true for historical trending
reports in matrix format.
Available in API version 29.0 and later.
showDetails
boolean
false shows a collapsed view of the report
with only the headings, subtotals, and total.
Default: true
sortColumn
string
Specifies the field on which to sort data in the
report. Use sortOrder to specify the sort
order.
sortOrder
SortOrder (enumeration of type string)
Specifies the sort order. Use sortColumn to
specify the field on which to sort.
territoryHierarchyFilter string
The territory name for a report drill down. If your
organization uses territory management, some
reports display Hierarchy links that allow you to
drill down to different data sets based on the
territory hierarchy.
This field is available in API version 17.0 and later.
timeFrameFilter
ReportTimeFrameFilter
Limits report results to records within a specified
time frame.
userFilter
string
The user name for a report drill down. Some
reports, such as opportunity and activity reports,
display Hierarchy links that allow you to drill
down to different data sets based on the user
hierarchy.
This field is available in API version 17.0 and later.
ReportAggregate
ReportAggregate defines custom summary formulas on summary, matrix, and joined reports. For more information on these fields, see
“Build a Custom Summary Formula” in the Salesforce online help.
Field
Field Type
Description
acrossGroupingContext
string
Defines the row grouping level at which you want your custom
summary formula to be displayed. This is a new field in API
version 15.0.
calculatedFormula
string
Required. The custom summary formula. For example,
AMOUNT:SUM + OPP_QUANTITY:SUM
datatype
ReportAggregateDatatype
(enumeration of type string)
523
Required. Specifies the data type for formatting and display of
the custom summary formula results.
Metadata Types
Report
Field
Field Type
Description
description
string
The custom summary formula description. Maximum: 255
characters.
developerName
string
Required. The internal development name of the custom
summary formula, for example, FORMULA1. This is used to
reference custom summary formulas from other report
components, including conditional highlighting.
downGroupingContext
string
Defines the column grouping level at which you want your
custom summary formula to be displayed. This field is available
in API version 15.0 and later.
isActive
booleanblo
Required. true displays the formula result in the report.
false does not display the result in the report.
isCrossBlock
boolean
Determines whether the custom summary formula is a
cross-block formula, which is available with joined reports.
true indicates a cross-block custom summary formula.
false indicates a standard custom summary formula.
This field is available in API version 25.0 and later.
masterLabel
string
Required. The custom summary formula label (name).
reportType
string
Required for joined reports. Specifies the reportType of the
blocks to which the aggregate can be added.
scale
int
The formula result is calculated to the specified number of
decimal places. Valid values 0 through 18.
ReportBlockInfo
ReportBlockInfo defines blocks in a joined report.
Field
Field Type
Description
aggregateReferences
ReportAggregateReference[]
Lists the aggregates that represent the custom summary
formulas used in a joined report block.
blockId
string
Required. blockId is used in cross-block custom summary
formulas and joined report charts to identify the block containing
each summary field. blockId is assigned automatically. Valid
values are B1 through B5.
This field is available in API version 25.0 and later.
joinTable
string
Required. Refers to the entity used to join blocks in a joined
report. The entity provides a list of fields that are available for
globally grouping across the blocks.
524
Metadata Types
Report
ReportAggregateReference
ReportAggregateReference defines the developer name used for custom summary formulas in joined reports.
Field
Field Type
Description
aggregate
string
Required. The developerName of the ReportAggregate,
which specifies the custom summary formula used in a block
of a joined report.
ReportBucketField
ReportBucketField defines a bucket to be used in the report.
Field
Field Type
Description
bucketType
ReportBucketFieldType
(enumeration of type string)
Required. Specifies the type of bucket. Valid values:
• text
• number
• picklist
developerName
string
Required. A unique name used as the value to
display a bucket field in the column list and other report
components, including sort, filter, list, group, and chart. Must
be of the format BucketField_name. For example,
BucketField_BusinessSize.
masterLabel
string
Required. The bucket field label. Maximum 40 characters. Any
line breaks, tabs, or multiple spaces at the beginning or end of
the label are removed. Any of these characters within the label
are reduced to a single space.
nullTreatment
ReportBucketFieldNullTreatment For numeric bucket fields only. Specifies whether empty values
(enumeration of type string)
are treated as zeros (z) or not (n).
otherBucketLabel
string
The label of the container for unbucketed values.
sourceColumnName
string
Required. The source field that the bucket is applied to. For
example, SALES or INDUSTRY.
values
ReportBucketFieldValue
(enumeration of type string)
Defines one bucket value used in the bucket field.
ReportBucketFieldValue
ReportBucketFieldValue defines a bucket value used in the bucket field.
525
Note: While this name is plural, it represents a single
bucket. In typical use, a bucket field contains multiple
buckets.
Metadata Types
Report
Field
Field Type
Description
sourceValues
ReportBucketFieldSourceValue The value of a bucket in the bucket field. Valid values:
(enumeration of type string)
• sourceValue—Used for picklist and text bucket fields.
For picklists, describes the picklist item in the bucket. For
example, the sourceValue of a bucket on TYPE could be
Customer. For text, the full string for the item in the
bucket. For example, the sourceValue of a bucket on
ADDRESS_STATE1 could be NY.
• from—Used only on numeric bucket fields. A non-inclusive
lower bound for a numeric bucket range. This value must
be a number.
• to—Used only on numeric bucket fields. The inclusive
upper bound for a numeric bucket range. This value must
be a number.
In numeric buckets, the first value must only have to and last
value must only have from. All other values must have both
to and from.
value
string
Required. The name of a specific bucket value within the bucket
field.
ReportGrouping
ReportGrouping defines how to group, subtotal, and sort data for summary, matrix, and joined reports.
Field
Field Type
Description
aggregateType
ReportAggrType (enumeration The type of aggregate value to sort by. Valid values are:
of type string)
• Sum
• Average
• Maximum
• Minimum
• RowCount
dateGranularity
UserDateGranularity
(enumeration of type string)
When grouping by a date field, the time period by which to
group.
field
string
Required. The field by which you want to summarize data. For
example, CAMPAIGN_SOURCE
sortByName
string
The API name of the column, aggregate or custom summary
field used to order the grouping.
sortOrder
SortOrder
Required. Whether to sort data in ascending or descending
alphabetical and numerical order.
526
Metadata Types
Report
Field
Field Type
Description
sortType
ReportSortType (enumeration
of type string)
Indicates if the grouping is sorted by a column, aggregate or
custom summary field. Valid values are:
• Column
• Aggregate
• CustomSummaryFormula
ReportHistoricalSelector
ReportHistoricalSelector defines a date range for historical data.
Field
Field Type
Description
snapshot
string
Represents the date value to apply a historical filter, either
relative (in the format N_DAYS_AGO:2) or absolute (in the
format yyyy-MM-dd). If unspecified, it’s assumed that the
filter will be applied to all the columns the user sees.
Available in API version 29.0 and later.
SortOrder
An enumeration of type string that defines the order in which data is sorted in the report fields. Valid values:
Field
Description
Asc
Sorts data in ascending alphabetical and numerical order.
Desc
Sorts data in descending alphabetical and numerical order.
UserDateGranularity
An enumeration of type string that defines the time period by which to group data. Valid values:
Enumeration Value
Description
None
No grouping by date
Day
By day
Week
By week
Month
By month
Quarter
By quarter
Year
By year
527
Metadata Types
Report
Enumeration Value
Description
FiscalQuarter
By fiscal quarter. You can set the fiscal year for your organization. See “Set the Fiscal Year” in the
Salesforce online help.
FiscalYear
By fiscal year
MonthInYear
By calendar month in year
DayInMonth
By calendar day in month
FiscalPeriod
When custom fiscal years are enabled: By fiscal period
FiscalWeek
When custom fiscal years are enabled: By fiscal week
ReportSummaryType
An enumeration of type string that defines how report fields are summarized. Valid values:
Enumeration Value
Description
Sum
Total
Average
Average
Maximum
Largest value
Minimum
Smallest value
None
The field is not summarized.
ReportColorRange
ReportColorRange defines conditional highlighting for report summary data.
Field
Field Type
Description
aggregate
ReportSummaryType
(enumeration of type string)
Required. Defines how the field specified in columnName is
summarized. For example, Sum.
columnName
string
Required. Specifies the field whose value ranges are represented
by colors.
highBreakpoint
double
Required. Specifies the number that separates the mid color
from the high color.
highColor
string
Required. Specifies the color (in HTML format) to represent data
that falls into the high number range. This color spans from the
highBreakpoint value.
lowBreakpoint
double
Required. Specifies the number that separates the low color
from the mid color.
528
Metadata Types
Report
Field
Field Type
Description
lowColor
string
Required. Specifies a color (in HTML format) to represent data
that falls into the low value range, below the
lowBreakpoint value.
midColor
string
Required. Specifies a color (in HTML format) to represent data
that falls into the mid value range.
ReportColumn
ReportColumn defines how fields (columns) are displayed in the report.
Field
Field Type
Description
aggregateTypes
ReportSummaryType[]
(enumeration of type string)
List that defines if and how each report field is summarized.
field
string
Required. The field name. For example, AGE or
OPPORTUNITY_NAME
reverseColors
boolean
In historical trend reports, displays greater Date values as green
and greater Amount values as red, reversing the default colors.
Available in API version 29.0 and later.
showChanges
boolean
In historical trend reports, adds a column displaying the
difference between current and historical Date and Amount
values.
Available in API version 29.0 and later.
ReportFilter
ReportFilter limits the report results by filtering data on specified fields.
Field
Field Type
Description
booleanFilter
string
Specifies filter logic conditions. For more information on filter
logic, see “Getting the Most Out of Filter Logic” in the Salesforce
online help.
criteriaItems
ReportFilterItem
The criteria by which you want to filter report data, either by
comparing historical values or by applying a date range.
criteriaItems ReportFilterItem
Opportunity.Opportunity__hd$Amount__hstfalse
529
Metadata Types
Field
Report
Field Type
Description
equalsN_DAYS_AGO:90100
language
Language (enumeration of type The language used when a report filters against a picklist value
string)
using the operators contains or startsWith. For a list
of valid language values, see Language.
ReportFilterItem
ReportFilterItem limits the report results by filtering data on specified fields.
Field
Field Type
Description
column
string
Required. The field on which you want to filter data. For example,
AMOUNT
columnToColumn
boolean
Indicates that the field contains data from a historical snapshot.
Available in API version 29.0 and later.
isUnlocked
boolean
Optional. Indicates whether the report filter is unlocked (true)
or locked (false). You can edit unlocked filters on the report
run page in Lightning Experience. If unspecified, the default
value is false.
Available in API version 38.0 and later.
operator
FilterOperation (enumeration of Required. An enumeration of type string that defines the
type string)
operator used to filter the data, for example, greaterThan.
For valid values, see FilterOperation.
snapshot
string
Represents the date value, either relative (in the format
N_DAYS_AGO:2) or absolute (in the format yyyy-MM-dd).
Available in API version 29.0 and later.
value
string
The value by which you want to filter the data, for example,
1000. Note that the Metadata API filter condition values do
not always match those that you enter in the report wizard. For
example, in the Metadata API dates are always converted to the
US date format and values entered in a non-US English language
may be converted to a standard US English equivalent.
ReportFormat
An enumeration of type string that defines the report format. Valid values:
530
Metadata Types
Report
Enumeration Value
Description
Matrix
Summarizes data in a grid. Use to compare related totals.
Summary
Lists, sorts, and subtotals data.
Tabular
Lists data with no sorting or subtotals.
Joined
Joins data from different report types storing each report’s data in its own block.
ReportParam
ReportParam represents settings specific to a report type, especially options that let you filter a report to certain useful subsets.
Field
Field Type
Description
name
string
Required. Specifies a specific reportType setting.
value
string
Required. The setting value.
ReportAggregateDatatype
An enumeration of type string that specifies the data type for formatting and display of custom summary formula results. Valid values:
Enumeration Value
currency
number
percent
ReportChart
ReportChart represents charts on summary, matrix, and joined reports.
Field
Field Type
Description
backgroundColor1
string
Specifies the beginning color (in HTML format) for a gradient
color background.
backgroundColor2
string
Specifies the end color (in HTML format) for a gradient color
background.
backgroundFadeDir
ChartBackgroundDirection
(enumeration of type string)
Specifies the direction for a gradient color background. Use with
backgroundColor1 to specify the beginning color and
backgroundColor2 to specify the end color for the gradient
design. Use white for both if you do not want a background
design. Valid values:
• diagonal
531
Metadata Types
Field
Report
Field Type
Description
• leftToRight
• topToBottom
chartSummaries
ChartSummary[]
Specifies the summaries you want to use for the chart. Invalid
summaries are ignored without notification. If there are no valid
summaries, RowCount is used by default for the axis value. This
field is available in API version 17.0 and later.
chartType
ChartType (enumeration of type Required. Specifies the chart type. Available chart types depend
string)
on the report type.
enableHoverLabels
boolean
Specifies whether to display values, labels, and percentages
when hovering over charts. Hover details depend on chart type.
Percentages apply to pie, donut, and funnel charts only. This
field is available in API version 17.0 and later.
expandOthers
boolean
Specifies whether to combine all groups less than or equal to
3% of the total into a single 'Others' wedge or segment. This
only applies to pie, donut, and funnel charts. Set to true to
show all values individually on the chart; set to false to
combine small groups into 'Others.' This field is available in API
version 17.0 and later.
groupingColumn
string
Specifies the field by which to group data. This data is displayed
on the X-axis for vertical column charts and on the Y-axis for
horizontal bar charts.
legendPosition
ChartLegendPosition
(enumeration of type string)
Required.
The location of the legend with respect to the chart. The valid
values are:
• Bottom
• OnChart
• Right
location
ChartPosition (enumeration of
type string)
secondaryGroupingColumn string
Required. Specifies whether the chart is displayed at the top or
bottom of the report.
For grouped chart types: Specifies the field by which to group
the data.
showAxisLabels
boolean
For bar and line charts: Specifies whether the chart displays
names for each axis.
showPercentage
boolean
Indicates if percentages are displayed for wedges and segments
of pie, donut, and funnel charts, as well as for gauges (true),
or not (false).
showTotal
boolean
Indicates if the total is displayed for donut charts and gauges
(true), or not (false).
532
Metadata Types
Report
Field
Field Type
Description
showValues
boolean
Indicates if the values of individual records or groups are
displayed for charts (true), or not (false).
size
ReportChartSize (enumeration
of type string)
Required. Specifies the chart size.
summaryAggregate
ReportSummaryType
(enumeration of type string)
Defines how to summarize the chart data. For example, Sum.
No longer supported in version API 17.0 and later. See
chartSummaries.
summaryAxisManualRangeEnd double
When specifying the axis range manually: Defines the ending
value.
summaryAxisManualRangeStart double
When specifying the axis range manually: Defines the starting
value.
summaryAxisRange
ChartRangeType (enumeration Required. For bar, line, and column charts: Defines whether to
of type string)
specify the axis range manually or automatically.
summaryColumn
string
Required. Specifies the field by which to summarize the chart
data. Typically this field is displayed on the Y-axis. No longer
supported in version API 17.0 and later. See
chartSummaries.
textColor
string
The color (in HTML format) of the chart text and labels.
textSize
int
The size of the chart text and labels. Valid values:
• 8
• 9
• 10
• 12
• 14
• 18
• 24
• 36
The maximum size is 18. Larger values are shown at 18 points.
title
string
The chart title. Max 255 characters.
titleColor
string
The color (in HTML format) of the title text.
titleSize
int
The size of the title text. Valid values:
• 8
• 9
• 10
• 12
• 14
• 18
533
Metadata Types
Field
Report
Field Type
Description
• 24
• 36
The maximum size is 18. Larger values are shown at 18 points.
ChartType
An enumeration of type string that defines the chart type. For information on each of these chart types, see “Chart Types” in the Salesforce
online help. Valid values:
Enumeration Value
None
HorizontalBar
HorizontalBarGrouped
HorizontalBarStacked
HorizontalBarStackedTo100
VerticalColumn
VerticalColumnGrouped
VerticalColumnStacked
VerticalColumnStackedTo100
Line
LineGrouped
LineCumulative
LineCumulativeGrouped
Pie
Donut
Funnel
Scatter
ScatterGrouped
VerticalColumnLine
VerticalColumnGroupedLine
VerticalColumnStackedLine
Plugin
534
Metadata Types
Report
Enumeration Value
Reserved for future use. This value is available in API version 31.0 and later.
ChartPosition
An enumeration of type string that specifies the position of the chart in the report. Valid values:
Enumeration Value
CHART_TOP
CHART_BOTTOM
ChartSummary
ChartSummary defines how data in the chart is summarized. Valid values:
Field
Field Type
Description
aggregate
ReportSummaryType
Specifies the aggregation method—such as Sum, Average,
Min, and Max—for the summary value. Use the column field
to specify the summary value to use for the aggregation. You
don't need to specify this field for RowCount or custom summary
formulas.
axisBinding
ChartAxis
Specifies the axis or axes to use on the chart. Use the column
field to specify the summary value to use for the axis.
column
string
Required. Specifies the summary field for the chart data. If all
columns are invalid, RowCount is used by default for the axis
value. For vertical column and horizontal bar combination charts,
you can specify up to four values.
ChartAxis
An enumeration of type string that specifies the axis or axes to be used in charts. Valid values:
Enumeration Value
Description
x
The summary value to use for the X-axis of a scatter chart.
y
The Y-axis for the chart.
y2
The secondary Y-axis for vertical column combination charts with a line added.
ReportChartSize
An enumeration of type string that specifies the chart size. Valid values:
535
Metadata Types
Report
Enumeration Value
Tiny
Small
Medium
Large
Huge
ChartRangeType
An enumeration of type string that defines the report format. Valid values:
Enumeration Value
Auto
Manual
ReportTimeFrameFilter
ReportTimeFrameFilter represents the report time period.
Field
Field Type
Description
dateColumn
string
Required. The date field on which to filter data. For example,
CLOSE_DATE
endDate
date
When interval is INTERVAL_CUSTOM, specifies the end
of the custom time period.
interval
UserDateInterval (enumeration Required. Specifies the period of time.
of type string)
startDate
date
When interval is INTERVAL_CUSTOM, specifies the start
of the custom time period.
ReportCrossFilter
ReportCrossFilter represents the cross filter functionality in reports.
Field
Field Type
Description
criteriaItems
ReportFilterItem
Represents the subfilters of a cross filter. There can be up to five
subfilters. This field requires the following attributes.
• Column
• Operator
536
Metadata Types
Field
Report
Field Type
Description
• Value
operation
ObjectFilterOperator.
Enumeration of type string
The action indicating whether to include or exclude an object.
Valid values: with and without.
primaryTableColumn
string
The parent object used for the cross filter.
relatedTable
string
The child object used for the cross filter.
relatedTableJoinColumn string
The field from the child object that is used to join the parent.
Declarative Metadata Sample Definition
A sample XML snippet using cross filters to build an Accounts report for cases where case status is not closed:
StatusnotequalClosedwithACCOUNT_IDCaseAccount
Note: This sample was generated using the API version 23.0.
UserDateInterval
An enumeration of type string that defines the period of time. Valid values:
Enumeration Value
Description
INTERVAL_CURRENT
Current fiscal quarter
INTERVAL_CURNEXT1
Current and next fiscal quarters
INTERVAL_CURPREV1
Current and previous fiscal quarters
INTERVAL_NEXT1
Next fiscal quarter
INTERVAL_PREV1
Previous fiscal quarter
INTERVAL_CURNEXT3
Current and next three fiscal quarters
INTERVAL_CURFY
Current fiscal year
INTERVAL_PREVFY
Previous fiscal year
INTERVAL_PREV2FY
Previous two fiscal years
537
Metadata Types
Report
Enumeration Value
Description
INTERVAL_AGO2FY
Two fiscal years ago
INTERVAL_NEXTFY
Next fiscal year
INTERVAL_PREVCURFY
Current and previous fiscal years
INTERVAL_PREVCUR2FY
Current and previous two fiscal years
INTERVAL_CURNEXTFY
Current and next fiscal year
INTERVAL_CUSTOM
A custom time period. Use startDate and endDate fields to specify the
time period's start date and end date.
INTERVAL_YESTERDAY
Yesterday
INTERVAL_TODAY
Today
INTERVAL_TOMORROW
Tomorrow
INTERVAL_LASTWEEK
Last calendar week
INTERVAL_THISWEEK
This calendar week
INTERVAL_NEXTWEEK
Next calendar week
INTERVAL_LASTMONTH
Last calendar month
INTERVAL_THISMONTH
This calendar month
INTERVAL_NEXTMONTH
Next calendar month
INTERVAL_LASTTHISMONTH
Current and previous calendar months
INTERVAL_THISNEXTMONTH
Current and next calendar months
INTERVAL_CURRENTQ
Current calendar quarter
INTERVAL_CURNEXTQ
Current and next calendar quarters
INTERVAL_CURPREVQ
Current and previous calendar quarters
INTERVAL_NEXTQ
Next calendar quarter
INTERVAL_PREVQ
Previous calendar quarter
INTERVAL_CURNEXT3Q
Current and next three calendar quarters
INTERVAL_CURY
Current calendar year
INTERVAL_PREVY
Previous calendar year
INTERVAL_PREV2Y
Previous two calendar years
INTERVAL_AGO2Y
Two calendar years ago
INTERVAL_NEXTY
Next calendar year
INTERVAL_PREVCURY
Current and previous calendar years
INTERVAL_PREVCUR2Y
Current and previous two calendar years
538
Metadata Types
Report
Enumeration Value
Description
INTERVAL_CURNEXTY
Current and next calendar years
INTERVAL_LAST7
Last 7 days
INTERVAL_LAST30
Last 30 days
INTERVAL_LAST60
Last 60 days
INTERVAL_LAST90
Last 90 days
INTERVAL_LAST120
Last 120 days
INTERVAL_NEXT7
Next 7 days
INTERVAL_NEXT30
Next 30 days
INTERVAL_NEXT60
Next 60 days
INTERVAL_NEXT90
Next 90 days
INTERVAL_NEXT120
Next 120 days
LAST_FISCALWEEK
When custom fiscal years are enabled: Last fiscal week
THIS_FISCALWEEK
When custom fiscal years are enabled: This fiscal week
NEXT_FISCALWEEK
When custom fiscal years are enabled: Next fiscal week
LAST_FISCALPERIOD
When custom fiscal years are enabled: Last fiscal period
THIS_FISCALPERIOD
When custom fiscal years are enabled: This fiscal period
NEXT_FISCALPERIOD
When custom fiscal years are enabled: Next fiscal period
LASTTHIS_FISCALPERIOD
When custom fiscal years are enabled: This fiscal period and last fiscal period
THISNEXT_FISCALPERIOD
When custom fiscal years are enabled: This fiscal period and next fiscal period
CURRENT_ENTITLEMENT_PERIOD
Current entitlement period
PREVIOUS_ENTITLEMENT_PERIOD
Previous entitlement period
PREVIOUS_TWO_ENTITLEMENT_PERIODS
Previous two entitlement periods
TWO_ENTITLEMENT_PERIODS_AGO
Two entitlement periods ago
CURRENT_AND_PREVIOUS_ENTITLEMENT_PERIOD Current and previous entitlement period
CURRENT_AND_PREVIOUS_TWO_ENTITLEMENT_PERIODS Current and previous two entitlement periods
Declarative Metadata Sample Definition
A sample XML report definition:
539
Metadata Types
Report
CRT_Object__c$IdPREVGROUPVAL(CRT_Object__c.Currency__c:AVG, CRT_Object__c.Id)
*
PARENTGROUPVAL(CRT_Object__c.Number__c:MAX, CRT_Object__c.CreatedBy.Name,
COLUMN_GRAND_SUMMARY)/RowCountnumberFORMULA1CRT_Object__c$CreatedBytrueCurrCSF2CRT_Object__c$LastModifiedDateIF(RowCount>10,
BLANKVALUE(ROUND(PREVGROUPVAL(CRT_Object__c.Currency__c:SUM,
CRT_Object__c.LastModifiedDate),3),
PARENTGROUPVAL(CRT_Object__c.Number__c:SUM, ROW_GRAND_SUMMARY,
CRT_Object__c.Id)) , 1000)numberFORMULA2GRAND_SUMMARYtruenumCSF2numberBucketField_BusinessSizeNumericBucketzSALES10000low1000025000mid25000high
540
Metadata Types
Report
textBucketField_RegionTextBucketnOtherADDRESS1_STATECAwestNYOntarioeast#FFFFFF#FFFFFFDiagonalyFORMULA1yFORMULA2MaximumyCRT_Object__c$Number__cyRowCountVerticalColumnCRT_Object__c$LastModifiedDateRightCHART_TOPMediumAuto#00000012#00000018
541
Metadata Types
Report
CRT_Object__c$NameAverageCRT_Object__c$Currency__cMaximumCRT_Object__c$Number__cBucketField__RegionMatrixDayCRT_Object__c$IdAscYearCRT_Object__c$LastModifiedDateAscDayCRT_Object__c$CreatedByAscDayCRT_Object__c$Currency__cDescCrtMMVCCRT1__corganizationfalseCRT_Object__c$CreatedDateINTERVAL_CUSTOM
Declarative Metadata Sample Definition for a Joined Report
A sample XML report definition:
542
Metadata Types
Report
B1#AMOUNT:SUM+B2#EMPLOYEES:SUMnumberFORMULAtruetrueCross-Block CSF Example2AMOUNT:SUMFORMULA2truefalseStandard CSF ExampleOpportunity2FORMULA2B1aTYPESummaryOpportunities BLock 3role_territoryroleterrallopenallprobability0co
543
Metadata Types
Report
1OpportunityorganizationCLOSE_DATEINTERVAL_CUSTOMFORMULA1B2aUSERS.NAMETYPEDUE_DATELAST_UPDATEADDRESS1_STATESummaryAccounts block 5terrallco1AccountListorganizationCREATED_DATEINTERVAL_CUSTOM
544
Metadata Types
ReportType
a#FFFFFF#FFFFFFDiagonalyB1#RowCountHorizontalBarfalsetrueACCOUNT_NAMECHART_TOPtruefalsefalsefalseMediumAuto#00000012#00000018MultiBlockDayACCOUNT_NAMEAscmb_mbapiOpportunitytrue
SEE ALSO:
Dashboard
ReportType
Represents the metadata associated with a custom report type. This type extends the Metadata metadata type and inherits its fullName
field. Custom report types allow you to build a framework from which users can create and customize reports. For more information,
see “Set Up a Custom Report Type” in the Salesforce online help.
545
Metadata Types
ReportType
Declarative Metadata File Suffix and Directory Location
The file suffix is .reportType for the custom report type definition. There is one file per custom report type. Report types are stored
in the reportTypes directory of the corresponding package directory.
Version
Custom report types are available in API version 14.0 and later.
Fields
Field Name
Field Type
Description
autogenerated
boolean
Indicates that the report type was automatically generated when historical
trending was enabled for an entity.
Available in API version 29 and later.
baseObject
string
Required. The primary object for the custom report type, for example,
Account. All objects, including custom and external objects, are supported.
You cannot edit this field after initial creation.
Support for external objects is available in API version 38.0 and later.
category
ReportTypeCategory
(enumeration of type string)
Required. This field controls the category for the report. The valid values
are:
• accounts
• opportunities
• forecasts
• cases
• leads
• campaigns
• activities
• busop
• products
• admin
• territory
• territory2 (This value is available in API version 31.0 and later.)
• usage_entitlement
• wdc (This value is available in API version 29.0 and later.)
• calibration (This value is available in API version 29.0 and later.)
• other
• content
deployed
boolean
Required. Indicates whether the report type is available to users (true)
or whether it's still in development (false).
546
Metadata Types
ReportType
Field Name
Field Type
Description
description
string
The description of the custom report type.
fullName
string
The report type developer name used as a unique identifier for API access.
The fullName can contain only underscores and alphanumeric
characters. It must be unique, begin with a letter, not include spaces, not
end with an underscore, and not contain two consecutive underscores.
join
ObjectRelationship
The object joined to the baseObject. For example, Contacts may be
joined to the primary Accounts object.
label
string
Required. The report type label.
sections
ReportLayoutSection[]
The groups of columns available for the report type. Though columns are
not strictly required, a report without columns is not very useful.
ObjectRelationship
ObjectRelationship represents a join to another object. For more information, see “Add Child Objects To Your Custom Report Type” in
the Salesforce online help.
Field Name
Field Type
Description
join
ObjectRelationship
This field is a recursive reference that allows you to join more than two objects.
A maximum of four objects can be joined in a custom report type. When more
than two objects are joined, an inner join is not allowed if there has been an
outer join earlier in the join sequence. The baseObject is first joined to the
object specified in relationship; the resulting data set is then joined with
any objects specified in this field.
outerJoin
boolean
Required. Indicates whether this is an outer join (true) or not (false). An
outer join returns a row even if the joined table does not contain a matching
value in the join column.
relationship
string
Required. The object joined to the primary object; for example, Contacts.
ReportLayoutSection
ReportLayoutSection represents a group of columns used in the custom report type.
Field Name
Field Type
Description
columns
ReportTypeColumn[]
The list of columns projected from the query, defined by
this custom report type.
masterLabel
string
Required. The label for this group of columns in the report
wizard.
547
Metadata Types
ReportType
ReportTypeColumn
ReportTypeColumn represents a column in the custom report type.
Field Name
Field Type
Description
checkedByDefault boolean
Required. Indicates whether this column is selected be default (true) or not
(false).
displayNameOverride string
A customized column name, if desired.
field
string
Required. The field name associated with the report column.
table
string
Required. The table associated with the field; for example, Account.
Declarative Metadata Sample Definition
The definition of a custom report type is shown below. Account is joined to Contacts and the resulting data set is joined with Assets.
AccountaccountstrueAccount linked to Contacts and AssetsfalseAssetsfalseContactstrueobj_lookup__c.Id
Account
falseobj_lookup__c.Name
Account
falseOpportunity__c.Amount
Account
falseOwner.IsActive
Account
548
Metadata Types
Role
AccountsfalseOwner.Email
Account.Contacts
falsebyr__c
Account.Contacts
trueReportsTo.CreatedBy.Contact.Owner.MobilePhone
Account.Contacts
Contacts
Usage
The custom report type refers to fields by using their API names. For a historical field (one that has trackTrending set to true)
the API name includes hst, such as Field2__c_hst.
falseField2__c_hst
CustomTrendedObject__c.CustomTrendedObject__c_hst
History
For more information, see trackTrending on page 256.
Role
Represents a role in your organization.
Declarative Metadata File Suffix and Directory Location
The file suffix for role components is .role and components are stored in the roles directory of the corresponding package
directory.
Version
Role components are available in API version 24.0 and later.
549
Metadata Types
RoleOrTerritory
Fields
This metadata type extends to subtype RoleOrTerritory on page 550.
Field Name
Field Type
Description
fullName
string
The unique identifier for API access. The fullName can contain only
underscores and alphanumeric characters. It must be unique, begin with
a letter, not include spaces, not end with an underscore, and not contain
two consecutive underscores. This field is inherited from the Metadata
component. Corresponds to Role Name in the user interface.
parentRole
string
The role above this role in the hierarchy.
Declarative Metadata Sample Definition
The following is the definition of a role.
EditEditSample RolefalseR22Read
RoleOrTerritory
Represents the common base type and valid values for role or territory.
Version
RoleOrTerritory components are available in API version 24.0 and later.
Note: You can’t create a RoleOrTerritory component directly. Use the Role or Territory metadata types instead.
Fields
Field Name
Field Type
Description
caseAccessLevel
string
Specifies whether a user can access other users’ cases that are associated
with accounts the user owns. Valid values are:
• Read
• Edit
• None
550
Metadata Types
Field Name
RoleOrTerritory
Field Type
Description
This field is not visible if your organization’s sharing model for cases is
Public Read/Write.
If no value is set for this field, this field value uses the default access level
that is specified in the Manage Territory page in Setup.
contactAccessLevel
string
Specifies whether a user can access other users’ contacts that are
associated with accounts the user owns. Valid values are:
• Read
• Edit
• None
This field is not visible if your organization’s sharing model for contacts
is Public Read/Write or Controlled by Parent.
If no value is set for this field, this field value uses the default access level
that is specified in the Manage Territory page in Setup.
description
string
The description of the role or territory.
fullName
string
The unique identifier for API access. The fullName can contain only
underscores and alphanumeric characters. It must be unique, begin with
a letter, not include spaces, not end with an underscore, and not contain
two consecutive underscores. This field is inherited from the Metadata
component.
mayForecastManagerShare boolean
name
string
opportunityAccessLevel string
Indicates whether the forecast manager can manually share their own
forecast.
Required. The name of the role or territory.
Specifies whether a user can access other users’ opportunities that are
associated with accounts the user owns. Valid values are:
• Read
• Edit
• None
This field is not visible if your organization’s sharing model for
opportunities is Public Read/Write.
If no value is set for this field, this field value uses the default access level
that is specified in the Manage Territory page in Setup.
Declarative Metadata Sample Definition
The following is the definition of a role.
Edit
551
Metadata Types
SamlSsoConfig
EditSample RolefalseR22Read
The following is the definition of a territory.
EditEditEditSample TerritoryfalseT22nameRead
SEE ALSO:
Role
Territory
SamlSsoConfig
Represents a SAML Single Sign-On configuration. This type extends the Metadata metadata type and inherits its fullName field.
Single sign-on (SSO) lets users access authorized network resources with one login. You validate usernames and passwords against your
corporate user database or other client app rather than Salesforce managing separate passwords for each resource.
File Suffix and Directory Location
SamlSsoConfig components have the suffix .samlssoconfig and are stored in the samlssoconfigs folder.
Version
SamlSsoConfig components are available in API version 28.0 and later.
Fields
Field Name
Field Type
Description
attributeName
string
The name of the identity provider’s application. Get this from your identity
provider.
attributeNameIdFormat string
For SAML 2.0 only and when identityLocation is set to
Attribute. Possible values include unspecified,
emailAddress or persistent. All legal values can be found in
552
Metadata Types
Field Name
SamlSsoConfig
Field Type
Description
the “Name Identifier Format Identifiers” section of the Assertions and
Protocols SAML 2.0 specification.
decryptionCertificate string
The name of the certificate to use for decrypting incoming SAML
assertions. This certificate is saved in the organization’s Certificate and
Key Management list. Available in API version 30.0 and later.
errorUrl
string
The URL of the page users should be directed to if there’s an error during
SAML login. It must be a publicly accessible page, such as a public site
Visualforce page. The URL can be absolute or relative.
executionUserId
string
The user that runs the Apex handler class. The user must have the
“Manage Users” permission. A user is required if you specify a SAML JIT
handler class.
identityLocation
SamlIdentityLocationType The location in the assertion where a user should be identified. Valid
(enumeration of type
values are:
string)
• SubjectNameId — The identity is in the
statement of the assertion.
• Attribute — The identity is specified in an
, located in the of the
assertion.
identityMapping
SamlIdentityType
(enumeration of type
string)
The identifier the service provider uses for the user during Just-in-Time
user provisioning. Valid values are:
• Username — The user’s Salesforce username.
• FederationId — The federation ID from the user object; the
identifier used by the service provider for the user.
• UserId — The user ID from the user’s Salesforce organization.
issuer
string
The identification string for the Identity Provider.
loginUrl
string
For SAML 2.0 only: The URL where Salesforce sends a SAML request to
start the login sequence.
logoutUrl
string
For SAML 2.0 only: The URL to direct the user to when they click the
Logout link. The default is http://www.salesforce.com.
name
string
The unique name used by the API and managed packages. The name
must begin with a letter and use only alphanumeric characters and
underscores. The name cannot end with an underscore or have two
consecutive underscores.
oauthTokenEndpoint
string
For SAML 2.0 only: The ACS URL used with enabling Salesforce as an
identity provider in the Web single sign-on OAuth assertion flow.
redirectBinding
boolean
If you’re using My Domain, chose the binding mechanism your identity
provider requests for your SAML messages. Values are:
• HTTP POST — HTTP POST binding sends SAML messages using
base64-encoded HTML forms.
553
Metadata Types
Field Name
SamlSsoConfig
Field Type
Description
• HTTP Redirect — HTTP Redirect binding sends base64-encoded
and URL-encoded SAML messages within URL parameters.
requestSignatureMethod string
The method that’s used to sign the SAML request. Valid values are
RSA-SHA1 and RSA-SHA256.
salesforceLoginUrl
string
The URL associated with login for the Web single sign-on flow.
samlEntityId
string
The issuer in SAML requests generated by Salesforce, and is also the
expected audience of any inbound SAML Responses. If you don’t have
domains deployed, this value is always
https://saml.salesforce.com. If you have domains deployed,
Salesforce recommends that you use your custom domain name.
samlJitHandlerId
string
The name of an existing Apex class that implements the
Auth.SamlJitHandler interface.
samlVersion
SamlType (enumeration of The SAML version in use. Valid values are:
type string)
• SAML1_1 — SAML 1.1
• SAML2_0 — SAML 2.0
userProvisioning
boolean
If true, Just-in-Time user provisioning is enabled, which creates users
on the fly the first time they try to log in. Specify Federation ID
for the identityMapping value to use this feature.
validationCert
string
The certificate used to validate the request. Get this from your identity
provider.
Declarative Metadata Sample Definition
The following is an example of a SamlSsoConfig component. The validation certificate string has been truncated for readability.
SubjectNameIdFederationIdhttps://my-idp.my.salesforce.com
https://my-idp.my.salesforce.com/idp/endpoint/HttpRedirect
https://www.salesforce.comSomeCompany
https://login.salesforce.com/services/oauth2/token?so=00DD0000000JxeI
trueRSA-SHA1
https://login.salesforce.com?so=00DD0000000JxeI
554
Metadata Types
Scontrol
https://saml.salesforce.com/customPath
SAML2_0false
MIIEojCCA4qgAwIBAgIOATtxsoBFAAAAAD4...
Scontrol
Important: Visualforce pages supersede s-controls. Organizations that haven’t previously used s-controls can’t create them.
Existing s-controls are unaffected, and can still be edited.
Deprecated. Represents an Scontrol component, corresponding to an s-control in the Salesforce user interface. For more information,
see “About S-Controls” in the Salesforce online help. This type extends the MetadataWithContent metadata type and inherits its content
and fullName fields.
Declarative Metadata File Suffix and Directory Location
The file suffix is .scf for the s-control file. The accompanying metadata file is named ScontrolName-meta.xml.
Scontrol components are stored in the scontrols folder in the corresponding package directory.
Version
Scontrols are available in API version 10.0 and later.
Fields
This metadata type contains the following fields:
Field Name
Field Type
Description
content
base64Binary
Content of the s-control. Base 64-encoded binary data. Prior to making
an API call, client applications must encode the binary attachment
data as base64. Upon receiving a response, client applications must
decode the base64 data to binary. This conversion is usually handled
for you by a SOAP client. This field is inherited from the
MetadataWithContent component.
contentSource SControlContentSource (enumeration
of type string)
Required. Determines how you plan to use the s-control:
• HTML: Select this option if you want to enter the content for your
s-control in content.
• URL: Select this option if you want to enter the link or URL of an
external website in content.
555
Metadata Types
Field Name
Scontrol
Field Type
Description
• Snippet: Snippets are s-controls that are designed to be
included in other s-controls. Select this option if you want to enter
the content for your s-control snippet in content.
description
string
encodingKey
Encoding (enumeration of type string) Required. The default encoding setting is Unicode: UTF-8. Change
it if you are passing information to a URL that requires data in a different
format. This option is available when you select URL as the value for
contentSource.
fileContent
base64
File contents displayed if you add this s-control to a custom link. The
file can contain a Java applet, Active-X control, or any other type of
content you want. This option only applies to s-controls with a value
of HTML for contentSource.
fileName
string
The unique name for the s-control. This name can contain only
underscores and alphanumeric characters, and must be unique in
your org. It must begin with a letter, not include spaces, not end with
an underscore, and not contain two consecutive underscores. This
field cannot be changed for components installed by a managed
package. It is only relevant if the fileContent field also has a value.
This is a new field in API version 14.0.
fullName
string
The s-control developer name used as a unique identifier for API access.
The fullName can contain only underscores and alphanumeric
characters. It must be unique, begin with a letter, not include spaces,
not end with an underscore, and not contain two consecutive
underscores. If this field contained characters before version 14.0 that
are no longer allowed, the characters were stripped out of this field,
and the previous value of the field was saved in the name field. This
field is inherited from the Metadata component.
name
string
Required. The unique name for the s-control. It must contain
alphanumeric characters only and begin with a letter. For example
example_s_control.
supportsCaching boolean
Optional text that describes the s-control. This only displays to users
with “View All Data” permission (administrator).
Required. Indicates whether the s-control supports caching (true)
or not (false). Caching optimizes the page so that it remembers
which s-controls are on the page when it reloads. This option only
applies to HTML s-controls.
Declarative Metadata Sample Definition
The following sample creates the Myriad_Publishing.scf s-control, which creates a link to the website specified in the s-control.
The corresponding Myriad_Publishing.scf-meta.xml metadata file follows the s-control file.
556
Metadata Types
Settings
Myriad_Publishing.scf file:
http://www.myriadpubs.com
Myriad_Publishing.scf-meta.xml:
URLs-control to open Myriad Publishing website.UTF-8Myriad Publishingtrue
Settings
Represents the organization settings related to a feature. For example, your password policies, session settings and network access
controls are all available in the SecuritySettings component type. Not all feature settings are available in the Metadata API. See Unsupported
Metadata Types on page 118 for information on which feature settings are not available.
Settings can be accessed using the specific component member or via wildcard. For example, in the package manifest file you would
use the following section to access SecuritySettings:
SecuritySettings
The member format when used in the package manifest is the component metadata type name without the “Settings” suffix, so in the
preceding example “Security” is used instead of “SecuritySettings”.
File Suffix and Directory Location
Each settings component gets stored in a single file in the settings directory of the corresponding package directory. The filename
uses the format Setting feature.settings. For example, the SecuritySettings file would be Security.settings. See
“File Suffix and Directory Location” information for the individual settings components to determine the exact filename.
Version
Settings is available in API version 27.0 and later. See the version information for the individual setting component to determine which
API version the settings component became available.
Declarative Metadata Sample Definition
The following is an example package manifest used to deploy or retrieve only the MobileSettings for an organization:
MobileSettings
557
Metadata Types
AccountSettings
27.0
The following is an example package manifest used to deploy or retrieve all the available settings metadata for an organization, using
a wildcard:
*Settings27.0
SEE ALSO:
AccountSettings
ActivitiesSettings
AddressSettings
CaseSettings
ChatterAnswersSettings
CompanySettings
ContractSettings
EntitlementSettings
ForecastingSettings
IdeasSettings
KnowledgeSettings
MobileSettings
SecuritySettings
AccountSettings
Represents an organization’s account settings for account teams, account owner report, and the View Hierarchy link. This type extends
the Metadata metadata type and inherits its fullName field.
In the package manifest, all organization settings metadata types are accessed using the “Settings” name. See Settings for more details.
File Suffix and Directory Location
AccountSettings values are stored in the Account.settings file in the settings folder. The .settings files are different
from other named components because there is only one settings file for each settings component.
Version
AccountSettings is available in API versions 29.0 and later.
558
Metadata Types
ActivitiesSettings
Fields
Field Name
Field Type
enableAccountOwnerReport boolean
enableAccountTeams
boolean
Description
Indicates whether Account Owner Report may (true) or may not
(false) be run by all users.
Indicates whether Account Teams are enabled (true) or not (false).
The Metadata API cant’ be used to disable Account Teams.
showViewHierarchyLink
boolean
Indicates whether the default View Hierarchy link on all business
account detail pages is visible (true) or hidden (false).
Declarative Metadata Sample Definition
The following is an example of the Account.settings file:
truetruetrue
Example Package Manifest
The following is an example package manifest used to deploy or retrieve the Account settings metadata for an organization:
AccountSettings29.0
SEE ALSO:
Settings
ActivitiesSettings
Represents an organization’s activity settings, and its user interface settings for the calendar. Use the ActivitiesSettings component type
to control the following activity settings:
• Configure group and recurring tasks, recurring and multiday events, and email tracking
• Relate multiple contacts to tasks and events (shared activities)
• Display custom logos in meeting requests
559
Metadata Types
ActivitiesSettings
Also use the ActivitiesSettings component type to control user interface settings for the calendar, including hover links and drag-and-drop
editing.
In the package manifest, all organization settings metadata types are accessed using the “Settings” name. See Settings for more details.
File Suffix and Directory Location
ActivitiesSettings values are stored in the Activities.settings file in the settings directory. The .settings files are
different from other named components because there is only one settings file for each settings component.
Version
ActivitiesSettings is available in API versions 28.0 and later.
Fields
Settings for all types listed below are controlled on the Activity settings page or the User Interface settings page as noted.
Field Name
Field Type
allowUsersToRelateMultipleContactsToTasksAndEvents boolean
Description
This read only field indicates whether Shared Activities is enabled. When
the value is true, allows users to relate multiple contacts to a task or
event.
Important: Beginning with API v36.0, this field is read-only in
all versions of the API. You can’t change the value of this field.
Even though this field was updateable before Spring '16, changing
this field’s value wasn't supported and could have resulted in an
incorrect integration. If you have code in older API versions that
changes the value of this field, ensure you update that code to
prevent any errors.
enableActivityReminders
boolean
Enables popup activity reminders for an organization.
Administrators control this field on the Activity settings page.
enableClickCreateEvents
boolean
Lets users create events in day and weekly calendar views by
double-clicking a specific time slot and entering the details of the event
in an overlay. Hovering over an event displays an overlay where users
can view the event details or delete the event without leaving the page.
Administrators use a mini page layout to configure the fields shown in
the overlays. Does not support recurring events or multi-person events.
Administrators control this field on the User Interface settings page.
enableDragAndDropScheduling boolean
Lets users create events associated with records by dragging a record
from a list view onto a calendar view and entering the details of the
event in an overlay. Hovering over an event displays an overlay where
users can view the event details or delete the event without leaving the
page. Administrators use a mini page layout to configure the fields shown
in the overlays.
560
Metadata Types
Field Name
ActivitiesSettings
Field Type
Description
Administrators control this field on the User Interface settings page.
enableEmailTracking
boolean
Enables tracking of outbound HTML emails if an organization uses HTML
email templates.
Administrators control this field on the Activity settings page.
enableGroupTasks
boolean
Lets users assign independent copies of a new task to multiple users.
Administrators control this field on the Activity settings page.
enableListViewScheduling boolean
Extends the functionality of enableDragAndDropScheduling
and enableClickCreateEvents to list view calendars.
Administrators control this field on the User Interface settings page.
enableMultidayEvents
boolean
Enables creation of events that end more than 24 hours after they start.
Administrators control this field on the Activity settings page.
enableRecurringEvents
boolean
Enables creation of events that repeat at specified intervals.
Administrators control this field on the Activity settings page.
enableRecurringTasks
boolean
Enables creation of tasks that repeat at specified intervals.
Administrators control this field on the Activity settings page.
enableSidebarCalendarShortcut boolean
In the sidebar, displays a shortcut link to a user’s last-used calendar view.
Administrators control this field on the Activity settings page.
enableSimpleTaskCreateUI boolean
Allows administrators to specify whether tapping New Task in Salesforce1
opens a regular task record edit page or a page that displays key task
fields first.
Administrators control this field on the Activity settings page.
enableUNSTaskDelegatedToNotifications boolean
meetingRequestsLogo
string
On the Activity settings page, exposes a setting for administrators to
hide or show a user setting that lets individual users enable or disable
email notifications when tasks are assigned to them.
Available when showCustomLogoMeetingRequests is enabled.
Uploads a custom logo. An administrator can select only a logo that has
been uploaded to certain folders in the Documents tab.
Administrators control this field on the Activity settings page.
showCustomLogoMeetingRequests boolean
Displays a custom logo in meeting request emails and on a meeting’s
Web page. Invitees see the logo when a user either invites them to an
event or requests a meeting.
Administrators control this field on the Activity settings page.
561
Metadata Types
Field Name
ActivitiesSettings
Field Type
showEventDetailsMultiUserCalendar boolean
Description
Displays event details on-screen rather than in hover text.
Administrators control this field on the Activity settings page.
showHomePageHoverLinksForEvents boolean
In the calendar section of the Home tab:
• When a user hovers over the subject of an event, a hover link displays
an overlay with selected event details. (Hover links are always
available in other calendar views.)
• When a user clicks the subject of an event, displays the event detail
page.
Administrators use a mini page layout to configure the fields shown in
the overlay.
Administrators control this field on the User Interface settings page.
showMyTasksHoverLinks
boolean
In the My Tasks section of the Home tab and on the calendar day view:
• When a user hovers over the subject of a task, a hover link displays
an overlay with selected task details.
• When a user clicks the subject of a task, displays the task detail page.
Administrators use a mini page layout to configure the fields shown in
the overlay.
Administrators control this field on the User Interface settings page.
showRequestedMeetingsOnHomePage boolean
In the Calendar on the Home tab, displays the Requested Meetings
subtab, listing the meetings a user has requested but not confirmed.
Disabling this feature removes the New Meeting Request button from
the calendar on the Home tab.
Administrators control this field on the Activity settings page.
Example Package Manifest
The following is an example package manifest used to deploy or retrieve the Activity settings metadata for an organization:
ActivitiesSettings28.0
562
Metadata Types
AddressSettings
Declarative Metadata Sample Definition
The following is an example of an activity settings file:
truetruetruetruetruetruetruetruetruetrueFolder02/logo03.pngtruetruetruetruetrue
SEE ALSO:
Document
AddressSettings
Represents the configuration of country and state picklists. Use the AddressSettings component type to configure state and country
data in your organization so that you can convert text-based values into standard picklist values. To convert your state and country
values, from Setup, enter State and Country Picklists in the Quick Find box, then select State and Country Picklists
. For more information, see “Let Users Select State and Country from Picklists” in the Salesforce online help.
This type extends the Metadata metadata type and inherits its fullName field.
In the package manifest, all organization settings metadata types are accessed using the “Settings” name. See Settings for more details.
Declarative Metadata File Suffix and Directory Location
AddressSettings values are stored in a single file named Address.settings in the settings directory. The .settings files
are different from other named components because there is only one settings file for each settings component.
Version
AddressSettings is available in API versions 27.0 and later.
CountriesAndStates
This complex metadata type represents valid definitions of states and countries in picklists.
563
Metadata Types
AddressSettings
Note: You can use the Metadata API to edit existing states and countries in state and country picklists. You can’t use the Metadata
API to create or delete new states or countries.
Field
Field Type
Description
countries
Country[]
The countries available in picklists.
Country
This metadata type provides the definition for a country in a picklist.
Field
Field Type
Description
active
boolean
Determines whether the value is available in the API.
Important: After you enable state and country picklists
in your Salesforce organization, you can’t set the
active status to false.
integrationValue
string
A customizable text value that is linked to a state or country
code. Integration values for standard states and countries default
to the full ISO-standard state and country names. Integration
values function similarly to the API names of custom fields and
objects. Configuring integration values allows integrations that
you set up before enabling state and country picklists to
continue to work.
Important: If you don’t specify integration values before
enabling state and country picklists in your organization,
records use the default value provided by Salesforce. If
you change integration values later, records created or
updated from that point on use your edited values.
isoCode
string
The ISO-standard code populates this field when you issue a
retrieve() call. This field is read only in the API but you
can edit the label in Setup. You can’t edit the isoCode of
standard states and countries.
label
string
The label is what users see in picklists in Salesforce. This field is
read only in the API but you can edit the label in Setup.
orgDefault
boolean
Sets a country as the default value for new records in the
Salesforce organization.
standard
boolean
Standard states and countries are states and countries that are
included with Salesforce. You can’t edit the standard
attribute.
states
State[]
The states or provinces that are part of the country.
visible
boolean
Makes the state or country available to users in Salesforce. States
or countries that are visible must also be active.
564
Metadata Types
AddressSettings
State
This metadata type provides the definition for a state in a picklist.
Field
Field Type
Description
active
boolean
Determines whether the value is available in the API.
Important: After you enable state and country picklists
in your Salesforce organization, you can’t set the
active status to false.
integrationValue
string
A customizable text value that is linked to a state or country
code. Integration values for standard states and countries default
to the full ISO-standard state and country names. Integration
values function similarly to the API names of custom fields and
objects. Configuring integration values allows integrations that
you set up before enabling state and country picklists to
continue to work.
Important: If you don’t specify integration values before
enabling state and country picklists in your organization,
records use the default value provided by Salesforce. If
you change integration values later, records created or
updated from that point on use your edited values.
isoCode
string
The ISO-standard code populates this field when you issue a
retrieve() call. This field is read only in the API but you
can edit the label in Setup.
label
string
The label is what users see in picklists in Salesforce. This field is
read only in the API but you can edit the label in Setup.
standard
boolean
Standard states and countries are states and countries that are
included with Salesforce. You can’t edit the standard
attribute.
visible
boolean
Makes the state or country available to users in Salesforce. States
or countries that are visible must also be active.
Declarative Metadata Sample Definition
The following is sample XML that configures state and country picklists for the United States and Canada for use in an organization. It
also makes the country of Greenland available only in the API. This example is supported in API version 39.0.
trueUnited States
565
Metadata Types
AddressSettings
UStruetruetrueAlabamaALtruetruetrueAlaskaAKtruetruetruetrueCanadaCAfalsetrueAlbertaABtruetruetrueBritish ColumbiaBCtruetruetruetrueGreenlandGL
566
Metadata Types
BusinessHoursSettings
truefalse
SEE ALSO:
Settings
BusinessHoursSettings
Represents the metadata used to manage settings for business hours and holidays in entitlements, entitlement templates, campaigns,
and cases. This type extends the Metadata metadata type and inherits its fullName field.
In the package manifest, all organization settings metadata types are accessed using the “Settings” name. See Settings for more details.
File Suffix and Directory Location
Business hours and holidays settings are stored in a single file named businessHours.settings in the settings directory.
The .settings files are different from other named components because there is only one settings file for each settings component.
Version
BusinessHoursSettings is available in API version 29.0 and later.
Fields
Field Name
Field Type
Description
businessHours
BusinessHoursEntry[]
Represents the application of business hours to entitlements,
entitlement templates, campaigns, and cases.
holidays
Holidays[]
Represents a holiday and its usage in businessHours.
BusinessHoursEntry
Represents the application of business hours to entitlements, entitlement templates, campaigns, and cases.
Field Name
Field Type
Description
timeZoneId
string
The time zone for the time that defines business hours.
name
string
Name of the business hours. This name should be unique.
active
string
Indicates whether the business hours are active.
default
string
Indicates whether the business hours are used as the default business
hours.
567
Metadata Types
BusinessHoursSettings
Field Name
Field Type
Description
mondayStartTime
string
Start time for the business hours on Monday. Uses the format
HH:mm:ss.SSSZ.
mondayEndTime
string
End time for the business hours on Monday. Uses the format
HH:mm:ss.SSSZ. The value 00:00:00.000Z specifies midnight
on Monday.
tuesdayStartTime
string
Start time for the business hours on Tuesday. Uses the format
HH:mm:ss.SSSZ.
tuesdayEndTime
string
End time for the business hours on Tuesday. Uses the format
HH:mm:ss.SSSZ. The value 00:00:00.000Z specifies midnight
on Tuesday.
wednesdayStartTime
string
Start time for the business hours on Wednesday. Uses the format
HH:mm:ss.SSSZ.
wednesdayEndTime
string
End time for the business hours on Wednesday. Uses the format
HH:mm:ss.SSSZ. The value 00:00:00.000Z specifies midnight
on Wednesday.
thursdayStartTime
string
Start time for the business hours on Thursday. Uses the format
HH:mm:ss.SSSZ.
thursdayEndTime
string
End time for the business hours on Thursday. Uses the format
HH:mm:ss.SSSZ. The value 00:00:00.000Z specifies midnight
on Thursday.
fridayStartTime
string
Start time for the business hours on Friday. Uses the format
HH:mm:ss.SSSZ.
fridayEndTime
string
End time for the business hours on Friday. Uses the format
HH:mm:ss.SSSZ. The value 00:00:00.000Z specifies midnight
on Friday.
saturdayStartTime
string
Start time for the business hours on Saturday. Uses the format
HH:mm:ss.SSSZ.
saturdayEndTime
string
End time for the business hours on Saturday. Uses the format
HH:mm:ss.SSSZ. The value 00:00:00.000Z specifies midnight
on Saturday.
sundayStartTime
string
Start time for the business hours on Sunday. Uses the format
HH:mm:ss.SSSZ.
sundayEndTime
string
End time for the business hours on Sunday. Uses the format
HH:mm:ss.SSSZ. The value 00:00:00.000Z specifies midnight
on Sunday.
Holidays
Represents a holiday and its usage in businessHours.
568
Metadata Types
BusinessHoursSettings
Field Name
Field Type
Description
name
string
Name of the holiday. This name does not have to be unique.
description
string
The description of the holiday.
isRecurring
string
Indicates whether the holiday is recurring.
activityDate
string
The date of the holiday. Use for non-recurring holidays. Uses the format
HH:mm:ss.SSSZ.
recurrenceStartDate
string
The date the holiday starts recurring. Uses the format yyyy-mm-dd.
recurrenceEndDate
string
The date the holiday stops recurring. Uses the format yyyy-mm-dd.
Optional.
startTime
string
The start time on the date of the holiday. Uses the format
HH:mm:ss.SSSZ. startTime and endTime must be both null
or both not null. If they are both null, indicates the whole day.
endTime
string
The end time on the date of the holiday. Uses the format
HH:mm:ss.SSSZ. startTime and endTime must be both null
or both not null. If they are both null, indicates the whole day.
recurrenceType
string
The recurrence type of the holiday. Valid values are: RecursDaily,
RecursEveryWeekday, RecursMonthly, RecursMonthlyNth, RecursWeekly,
RecursYearly, RecursYealyNth.
recurrenceInterval
string
The interval of weeks, months, or years the holiday recurs.
recurrenceDayOfWeek
string
The day of week the holiday recurs. Valid values: Monday, Tuesday,
Wednesday, Thursday, Friday, Saturday, Sunday.
recurrenceDayOfMonth
string
The day of month the holiday recurs. Valid values: integers 1-31.
recurrenceInstance
string
Valid values: First, Second, Third, Fourth, Last. Only used for
recurrenceType RecursMonthlyNth and RecursYearlyNth. For example,
if the recurenceInstance value is First, the holiday recurs on the
first Monday of the month every 3 months.
recurrenceMonthOfYear
string
Valid values: January, February, March, April, May, June, July, August,
September, October, November, December.
businessHours
string
The name of the business hours setting that applies to this holiday.
Declarative Metadata Sample Definition
The following is an example businesshours.settings metadata file:
truetrue00:00:00.000Z
569
Metadata Types
BusinessHoursSettings
00:00:00.000Z00:00:00.000Z00:00:00.000ZDefault00:00:00.000Z00:00:00.000Z00:00:00.000Z00:00:00.000Z00:00:00.000Z00:00:00.000ZAmerica/Los_Angeles00:00:00.000Z00:00:00.000Z00:00:00.000Z00:00:00.000Ztruefalse00:00:00.000Z00:00:00.000Z15:00:00.000Z09:00:00.000Zbh100:00:00.000Z00:00:00.000Z00:00:00.000Z00:00:00.000Z17:00:00.000Z10:50:00.000ZAmerica/Los_Angeles13:00:00.000Z09:00:00.000Z15:00:00.000Z09:00:00.000Z2013-09-02Defaultbh1falseLabor Daybh1trueThanksgiving21November2013-11-21RecursYearly
570
Metadata Types
CaseSettings
The following is an example package.xml manifest that references the BusinessHoursSettings definitions:
BusinessHoursSettings29.0
CaseSettings
Represents an organization’s case settings, such as the default case owner, which case-related features are enabled, and which email
templates are used for various case activities.
In the package manifest, all organization settings metadata types are accessed using the “Settings” name. See Settings for more details.
File Suffix and Directory Location
CaseSettings values are stored in the Case.settings file in the settings directory. The .settings files are different from
other named components because there is only one settings file for each settings component.
Version
CaseSettings is available in API version 27.0 and later.
Fields
Field Name
Field Type
Description
caseAssignNotificationTemplate string
Specifies the email template used for case assignment
notifications. The format must be
folderName/emailTemplateName.
caseCloseNotificationTemplate string
Specifies the email template used for case close notifications.
The format must be
folderName/emailTemplateName.
caseCommentNotificationTemplate string
Specifies the email template used for case comment
notifications. The format must be
folderName/emailTemplateName.
caseCreateNotificationTemplate string
Specifies the email template used for case create
notifications. The format must be
folderName/emailTemplateName.
caseFeedItemSettings
FeedItemSettings[]
closeCaseThroughStatusChange boolean
Specifies the settings for feed items in feed-based case page
layouts. This field is available in API version 32.0 and later.
Indicates whether Closed is included in the Case Status
field on case edit pages (true) or not (false).
571
Metadata Types
CaseSettings
Field Name
Field Type
Description
defaultCaseOwner
string
Specifies the default owner of a case when assignment rules
fail to locate an owner.
defaultCaseOwnerType
string
Specifies whether the default case owner is a user or a queue.
defaultCaseUser
string
Specifies the user listed in the Case History related list for
automated case changes from:
• Assignment rules
• Escalation rules
• On-Demand Email-to-Case
• Cases logged in the Self-Service portal
emailToCase
EmailToCaseSettings
The organization’s Email-to-Case settings.
enableCaseFeed
boolean
Indicates whether Case Feed is enabled (true) or not
(false).
enableDraftEmails
boolean
Indicates whether draft emails are enabled (true) or not
(false). Enabling email drafts requires that Case Feed and
Email-to-Case are also enabled.
enableEarlyEscalationRuleTriggers boolean
Indicates whether early triggers on escalation rules are
enabled (true) or not (false).
enableNewEmailDefaultTemplate boolean
Indicates whether default email templates are enabled
(true) or not (false). Default email templates are
available only if draft emails are enabled.
enableSuggestedArticlesApplication boolean
Indicates whether the Suggested Articles list appears on case
pages.(true) or not (false). Is only valid if
enableSuggestedSolutions=false.
enableSuggestedArticlesCustomerPortal boolean
Indicates whether the Suggested Articles list appears on
customer portal pages (true) or not (false). Is only valid
if enableSuggestedSolutions=false.
enableSuggestedArticlesPartnerPortal boolean
Indicates whether the Suggested Articles list appears on
partner portal pages (true) or not (false). Is only valid if
enableSuggestedSolutions=false.
boolean
Indicates whether the View Suggested Solutions or Find
Articles button appears on case detail pages (true) or not
(false). Is only valid if
enableSuggestedArticlesApplication,
enableSuggestedArticlesCustomerPortal,
and
enableSuggestedArticlesPartnerPortal=false.
enableSuggestedSolutions
keepRecordTypeOnAssignmentRule boolean
Indicates whether, when applying assignment rules to
manually created records, to keep the existing record type
572
Metadata Types
Field Name
CaseSettings
Field Type
Description
(true) or to override the existing record type with the
assignee’s default record type (false).
newEmailDefaultTemplateClass string
Specifies the Apex class that defines the default email
template for new email messages in Case Feed. This field
appears only when
enableNewEmailDefaultTemplate=true.
notifyContactOnCaseComment
boolean
Indicates whether contacts who are not members of your
Self-Service portal can be notified when a new comment is
added to a case.(true) or not (false).
notifyDefaultCaseOwner
boolean
Indicates whether the default case owner is notified when
assigned a new case (true) or not (false).
notifyOwnerOnCaseComment
boolean
Indicates whether the case owner is notified when a
comment is added to a case (true) or not (false).
notifyOwnerOnCaseOwnerChange boolean
Indicates whether the Send Notification Email
checkbox on cases is automatically selected when users
change a case owner to another user (true).
showFewerCloseActions
boolean
Indicates whether the Save & Close button on case edit
pages and the Cls link on Cases related lists are hidden
(true) or shown (false).
systemUserEmail
string
Specifies the email address used when the default case user
is the system user.
useSystemEmailAddress
boolean
Indicates whether case comment, case attachment, and case
assignment email notifications are sent from a system
address (true) or whether case notifications appear to be
sent from the user or contact updating the case (false).
useSystemUserAsDefaultCaseUser boolean
Indicates whether the system user is used as the automated
case user (true) or not (false). If false, then you must
specify a value for the defaultCaseUser field.
webToCase
WebToCaseSettings
EmailToCaseSettings
Represents an organization’s Email-to-Case settings.
573
The organization’s Web-to-Case settings.
Metadata Types
CaseSettings
Fields
Field Name
Field Type
Description
enableEmailToCase
boolean
Indicates whether Email-to-Case is enabled (true) or not
(false). Note: once Email-to-Case is enabled, it can’t be
disabled.
enableHtmlEmail
boolean
Indicates whether HTML email is enabled (true) or not
(false).
enableOnDemandEmailToCase boolean
Indicates whether On-Demand Email-to-Case is enabled
(true) or not (false).
boolean
Indicates whether the Thread ID for a case is inserted in the
body of an email (true) or not (false).
enableThreadIDInSubject boolean
Indicates whether the Thread ID for a case is inserted in the
subject line of an email (true) or not (false).
notifyOwnerOnNewCaseEmail boolean
Indicates whether the owner of a case receives a notification
when a new email related to the case is received (true) or
not (false).
enableThreadIDInBody
overEmailLimitAction
EmailToCaseOnFailureActionType Specifies what happens to email messages received after an
(enumeration of type string)
organization exceeds its daily Email-to-Case limits. Valid values
are:
• Bounce
• Discard
• Requeue
preQuoteSignature
boolean
Indicates whether the user signature is inserted after the reply
but before the email thread in an outbound email (true) or
at the end of the email (false).
routingAddresses
EmailToCaseRoutingAddress[]
The organization’s Email-to-Case routing address settings.
unauthorizedSenderAction EmailToCaseOnFailureActionType Specifies what happens to email messages received from
(enumeration of type string)
invalid senders. Valid values are:
• Bounce
• Discard
EmailToCaseRoutingAddress
Represents an organization’s Email-to-Case routing address.
574
Metadata Types
CaseSettings
Fields
Field Name
Field Type
Description
addressType
EmailToCaseRoutingAddressType Specifies the type of Email-to-Case routing address. Valid
(enumeration of type string)
values are:
• EmailToCase—A routing address used with
Email-to-Case or On-Demand Email-to-Case.
• Outlook—A routing address used with
Salesforce for Outlook to create cases from Outlook.
Requires that On-Demand Email-to-Case is enabled.
authorizedSenders
string
Specifies the email addresses or domains from which
On-Demand Email-to-Case can receive email. Include multiple
entries in a comma-separated list.
caseOrigin
string
Specifies the default case origin for cases created through this
routing address.
caseOwner
string
Specifies the default owner of cases created through this
routing address. The case owner can be either a user or a
queue. Specify the case owner using a Salesforce username.
Specifying a case owner here in the routing address settings
value of defaultCaseOwner in CaseSettings.
caseOwnerType
string
Specifies whether the default case owner is a user or a queue.
casePriority
string
Specifies the default case priority for cases created through
this routing address.
createTask
boolean
Indicates whether a task is automatically assigned to the case
owner when a case is created through an email (true) or
not (false).
emailAddress
string
Specifies the email address used to route email messages that
are submitted as cases.
emailServicesAddress
string
Reserved for future use.
isVerified
boolean
Reserved for future use.
routingName
string
Specifies the name of the Email-to-Case routing address.
saveEmailHeaders
boolean
Indicates whether email routing and envelope information
are saved (true) or not (false).
taskStatus
string
Specifies the default status on tasks automatically assigned
to the case owner when email is submitted as a case. Only
applies if createTask is set to true.
575
Metadata Types
CaseSettings
FeedItemSettings
Represents an organization’s feed item settings. Available in API version 32.0 and later.
Field Name
Field Type
Description
characterLimit
int
Specifies the maximum number of characters displayed for
each feed item.
collapseThread
boolean
Indicates whether earlier messages in an email thread are
removed from email feed items(true) or not (false).
displayFormat
FeedItemDisplayFormat
(enumeration of type string)
Indicates how email feed items are displayed. Valid values are:
• Default—Blank lines in email feed items are displayed.
• HideBlankLines—Blank lines in email feed items
are not displayed.
feedItemType
FeedItemType (enumeration of The type of feed item to which the settings apply. For
type string)
FeedItemSettings, the only valid feedItemType
value is EmailMessageEvent.
WebToCaseSettings
Represents an organization’s Web-to-Case settings.
Fields
Field Name
Field Type
Description
caseOrigin
string
Specifies the default case origin for cases created through this web form.
Only applies if enableWebToCase is set to true.
defaultResponseTemplate
string
Specifies the default template used for email responses to cases
submitted through a Self-Service portal. Only applies if
enableWebToCase is set to true.
enableWebToCase
boolean
Indicates whether Web-to-Case is enabled (true) or not (false).
Declarative Metadata Sample Definition
This code sample is an example of a case settings file.
unfiled$public/SupportCaseAssignmentNotification
unfiled$public/SupportCaseCloseNotification
576
Metadata Types
CaseSettings
unfiled$public/SupportCaseCommentNotification
unfiled$public/SupportCaseCreateNotification
trueadmin@acme.comUseradmin@acme.comtruefalsetruetruetruefalseBouncetrueEmailToCaseuser@acme.comEmailMediumtruesupport@acme.comEmailToCaseRoutingAddress1trueNot StartedOutlookuser@acme.comEmailadmin@acme.comUserHighOutlookRoutingAddress1DiscardtruetruetruetruetruetruefalsefalsetrueCaseTemplateControllertruetruetrue
577
Metadata Types
ChatterAnswersSettings
falsefalsetrueWebunfiled$public/SupportCaseResponsetrue
SEE ALSO:
Settings
ChatterAnswersSettings
Represents the metadata used to manage settings for Chatter Answers.
In the package manifest, all organization settings metadata types are accessed using the “Settings” name. See Settings for more details.
File Suffix and Directory Location
Chatter Answers settings are stored in a single file named ChatterAnswers.settings in the settings directory. The
.settings files are different from other named components because there is only one settings file for each settings component.
Version
ChatterAnswersSettings is available in API version 27.0 and later.
Fields
Field Name
Field Type
Description
emailFollowersOnBestAnswer boolean
Indicates whether users are notified when a best answer is selected for
a question that they’re following (true) or not (false).
boolean
Indicates whether users are notified when other users reply to questions
they’re following (true) or not (false).
emailOwnerOnPrivateReply boolean
Indicates whether users are notified when customer support responds
to their questions privately (true) or not (false).
emailFollowersOnReply
emailOwnerOnReply
boolean
Indicates whether users are notified when other users reply to their
questions (true) or not (false).
enableAnswerViaEmail
boolean
Indicates whether users can post answers by replying to email
notifications (true) or not (false). This field is available in API version
29.0 and later.
enableChatterAnswers
boolean
Indicates whether Chatter Answers is enabled in the organization (true)
or not (false).
578
Metadata Types
ChatterAnswersSettings
Field Name
Field Type
Description
enableFacebookSSO
boolean
Indicates whether users sign in to your Chatter Answers communities
with their Facebook logins (true) or not (false). To enable this
feature, you must define and enable a Facebook authentication provider
in your organization’s security controls and enable Auth Providers in
your organization.
enableInlinePublisher
boolean
Indicates whether users can filter search results by articles or questions
before they post a question to any of your Chatter Answers communities
(true) or not (false). Also, adds Title and Body fields to
questions for easier text input and scanning. This field is available in API
version 29.0 and later.
enableReputation
boolean
Indicates whether reputations display for users as hover text on their
profile pictures (true) or not (false). Reputation is enabled across
all zones. To enable the reputation setting, you must enable Reputation
in your organization.
enableRichTextEditor
boolean
Indicates whether the rich text editor is enabled for users to format text
and upload images when posting questions (true) or not (false).
To enable rich text editor, you must enable Optimize Question Flow.
facebookAuthProvider
string
The name of an existing Facebook authentication provider. You must
choose a Facebook authentication provider to implement Facebook
Single Sign On for your Chatter Answers communities.
showInPortals
boolean
Indicates whether Chatter Answers can be added as a tab to your
Customer portal or partner portal (true) or not (false).
Declarative Metadata Sample Definition
The following is an example chatteranswers.settings metadata file:
truetruetruetruetruetruetruetruetrueFacebookAuthProvidertrue
The following is an example package.xml manifest that references the ChatterAnswersSettings definitions:
579
Metadata Types
CompanySettings
ChatterAnswersSettings29.0
SEE ALSO:
Settings
CompanySettings
Represents global settings that affect multiple features in your organization.
In the package manifest, all organization settings metadata types are accessed using the “Settings” name. See Settings for more details.
Declarative Metadata File Suffix and Directory Location
CompanySettings values are stored in a single file named Company.settings in the settings directory of the corresponding
package directory. The .settings files are different from other named components because there is only one settings file for each
settings component.
Version
Company Profile Settings are available in API version 27.0 and later.
Fields
Field Name
Field Type
Description
fiscalYear
FiscalYearSetting
The organization’s fiscal year setting based on year and start
month. Not available if Custom Fiscal Year or Forecasts (Classic)
is enabled. When changing fiscal year settings, quotas and
adjustments can be purged. For example changing your start
month results in purging this data.
FiscalYearSetting
Represents your organization’s fiscal year setting.
Field
Field Type
Description
fiscalYearNameBasedOn
string
This field is used to determine the fiscal year name. Valid values
are endingMonth or startingMonth. For example, if
your fiscal year starts in April 2012 and ends in March 2013, and
this value is:
• endingMonth, then 2013 is used for the fiscal year name.
580
Metadata Types
Field
ContractSettings
Field Type
Description
• startingMonth, then 2012 is used for the fiscal year
name.
startMonth
string
The month on which the fiscal year is based.
Declarative Metadata Sample Definition — Fiscal Year Setting
A sample XML definition of a fiscal year setting is shown below. Note that this example is supported in API version 27.0 and later.
endingMonthJanuary
SEE ALSO:
Settings
ContractSettings
Represents contract settings. For more information, see “Customize Contracts” in the Salesforce online help.
In the package manifest, all organization settings metadata types are accessed using the “Settings” name. See Settings for more details.
File Suffix and Directory Location
There is one contract settings file stored in a file named Contract.settings in the settings directory. The .settings
files are different from other named components because there is only one settings file for each settings component.
Version
ContractSettings is available in API version 27.0 and later.
Fields
Field Name
Field Type
Description
autoCalculateEndDate
boolean
Indicates whether the end date of a contract is automatically calculated
(true) or not (false).
notifyOwnersOnContractExpiration boolean
Indicates whether account and contract owners are automatically sent
email notifications when a contract expires (true) or not (false).
581
Metadata Types
EntitlementSettings
Declarative Metadata Sample Definition
This is a sample contract settings file.
truefalse
SEE ALSO:
Settings
EntitlementSettings
Represents an organization’s entitlement settings.
In the package manifest, all organization settings metadata types are accessed using the “Settings” name. See Settings for more details.
File Suffix and Directory Location
EntitlementSettings values are stored in the Entitlements.settings file in the settings directory. The .settings files
are different from other named components because there is only one settings file for each settings component.
Version
EntitlementSettings is available in API version 27.0 and later.
Fields
Field Name
Field Type
Description
assetLookupLimitedToActiveEntitlementsOnAccount boolean
Indicates whether entitlements-related lookup filters on
cases return only the assets related to the active
entitlements on the case’s account (true) or not (false).
assetLookupLimitedToActiveEntitlementsOnContact boolean
Indicates whether entitlements-related lookup filters on
cases return only the assets related to the active
entitlements on the case’s contact (true) or not (false).
assetLookupLimitedToSameAccount
boolean
Indicates whether entitlements-related lookup filters on
cases return only the assets related to the case’s account
(true) or not (false).
assetLookupLimitedToSameContact
boolean
Indicates whether entitlements-related lookup filters on
cases return only the assets related to the case’s contact
(true) or not (false).
enableEntitlements
boolean
Indicates whether entitlements are enabled (true) or not
(false).
582
Metadata Types
EntitlementSettings
Field Name
Field Type
Description
enableEntitlementVersioning
boolean
Indicates whether entitlement versioning is enabled
(true) or not (false).
This field is available in API version 28.0 and later.
entitlementLookupLimitedToActiveStatus boolean
Indicates whether entitlements-related lookup filters on
cases return only active entitlements (true) or not
(false).
entitlementLookupLimitedToSameAccount boolean
Indicates whether entitlements-related lookup filters on
cases return only the entitlements related to the case’s
account (true) or not (false).
entitlementLookupLimitedToSameAsset boolean
Indicates whether entitlements-related lookup filters on
cases return only the entitlements related to the case’s
asset (true) or not (false).
entitlementLookupLimitedToSameContact boolean
Indicates whether entitlements-related lookup filters on
cases return only the entitlements related to the case’s
contact (true) or not (false).
Declarative Metadata Sample Definition
This is a sample entitlements settings file.
false
false
false
false
true
false
false
false
583
Metadata Types
FileUploadAndDownloadSecuritySettings
false
SEE ALSO:
Settings
FileUploadAndDownloadSecuritySettings
Represents the security settings for uploading and downloading files. This type extends the Metadata metadata type and inherits its
fullName field.
File Suffix and Directory Location
FileUploadAndDownloadSecuritySettings components have the suffix .settings and are stored in the settings folder.
Version
FileUploadAndDownloadSecuritySettings components are available in API version 39.0 and later.
Fields
Field Name
Field Type
Description
dispositions
FileTypeDispositionAssignmentBean[] Represents the metadata used to manage filetype behavior.
This field is available in API version 39.0 and later.
noHtmlUploadAsAttachment boolean
Indicates whether to allow HTML uploads as attachments or
document records. This field is available in API version 39.0 and
later.
FileTypeDispositionAssignmentBean
Represents the metadata used to manage filetype behavior.
Field Name
Field Type
Description
behavior
FileDownloadBehavior
(enumeration of type string)
One of the following values:
• DOWNLOAD
• EXECUTE
• HYBRID
The following filetypes are a security risk and can not have EXECUTE
behavior:
• EXE
• FLASH
584
Metadata Types
Field Name
FileUploadAndDownloadSecuritySettings
Field Type
Description
• HTML
• RFC822
• SVG
• TXML
• UNKNOWN
• WEBVIEW
• XHTML
• XML
filetype
FileType (enumeration of type
string)
Although more filetypes exist, these are the only ones supported
by FileTypeDispositionAssignmentBean:
• AVI
• EXCEL
• EXCEL_X
• EXE
• FLASH
• HTML
• MOV
• MP3
• MP4
• MPEG
• PDF
• POWER_POINT
• POWER_POINT_X
• RFC822
• SVG
• TXML
• UNKNOWN
• WAV
• WEBVIEW
• WMA
• WMV
• WORD
• WORD_X
• XHTML
• XML
securityRiskFileType boolean
Indicates filetypes that cannot have behavior set to EXECUTE, due
to security risks. This field is read-only.
585
Metadata Types
FileUploadAndDownloadSecuritySettings
Declarative Metadata Sample Definition
The following is an example of a FileUploadAndDownloadSecuritySettings component.
HYBRIDAVIfalseHYBRIDWORDfalseHYBRIDWORD_XfalseDOWNLOADEXEtrueDOWNLOADHTMLtrueDOWNLOADWEBVIEWtrueDOWNLOADRFC822trueHYBRIDMOVfalseHYBRIDMP3falseHYBRIDMP4false
586
Metadata Types
FileUploadAndDownloadSecuritySettings
HYBRIDMPEGfalseHYBRIDPDFfalseHYBRIDPOWER_POINTfalseHYBRIDPOWER_POINT_XfalseDOWNLOADSVGtrueDOWNLOADFLASHtrueDOWNLOADTXMLtrueDOWNLOADUNKNOWNtrueHYBRIDWAVfalseHYBRIDWMAfalseHYBRIDWMVfalse
587
Metadata Types
ForecastingSettings
DOWNLOADXHTMLtrueHYBRIDEXCELfalseHYBRIDEXCEL_XfalseDOWNLOADXMLtruefalse
The following is an example package.xml that references the previous definition.
FileUploadAndDownloadSecuritySettings39.0
ForecastingSettings
Represents the Collaborative Forecasts settings options. This type extends the Metadata metadata type and inherits its fullName
field.
Note: This information only applies to Collaborative Forecasts.
File Suffix and Directory Location
ForecastingSettings values are stored in a single file named Forecasting.settings in the settings directory of the
corresponding package directory. The .settings files are different from other named components because there is only one settings
file for each settings component.
Version
ForecastingSettings components are available in API version 28 and later. The structure of the ForecastingSettings type changed
significantly in API version 30.0.
588
Metadata Types
ForecastingSettings
Fields
Field Name
Field Type
Description
displayCurrency
DisplayCurrency
(enumeration of
type string)
The currency for displaying forecasts; either the organization's corporate
currency or each forecast owner's personal currency setting. This is the
default currency used in Collaborative Forecasts and selected in setup.
The selection must be one of the currencies enabled for use in the
organization, and only one selection is allowed. The default is
Corporate. The valid values are:
• Corporate
• Personal
enableForecasts
boolean
Indicates if Collaborative Forecasts is enabled or not. Set to true to
enable Collaborative Forecasts and false to disable the functionality.
Warning: Disabling Forecasts can result in data loss. Refer to
the online Help before disabling any functionality.
forecastingTypeSettings
ForecastingType
Settings[]
A list of forecast types. For field values, see ForecastingTypeSettings. The
maximum number of forecast types is four.
forecastingCategoryMappings ForecastingCategoryMappings[] A list of mappings associating forecast types with forecast rollups.
ForecastingTypeSettings
The settings for each forecast type. An organization can have up to 4 forecast types active. Omitting a previously enabled forecast type
that has a minimum API version less than or equal to the metadata package version deletes its quota and adjustment data from the
organization.
Warning: Omitting a forecast type field from the XML can deactivate that forecast type: if the forecast type was available in the
release specified by the XML package version, that forecast type is deactivated and its quota and adjustment data are deleted.
Field Name
Field Type
Description
active
boolean
This indicates whether the forecast type specified in the name field is
active.
Note: Setting the active field to false purges all forecasting
data, adjustments, and quotas for the forecast type. When
active is set to true, some values on the Forecasts tab may
not appear immediately. An in-process icon appears to indicate
that the values are being calculated.
adjustmentsSettings
AdjustmentsSettings This enables or disables the Forecasts adjustments option in Forecasts.
forecastRangeSettings
ForecastRangeSettings The default periods and range selections in Collaborative Forecasts.
name
string
The name of the forecast type. Each forecast type requires a specific
string.
Valid values include:
589
Metadata Types
Field Name
ForecastingSettings
Field Type
Description
• OpportunityRevenue : Opportunities - Revenue
• OpportunityQuantity : Opportunities - Quantity
• OpportunitySplitRevenue : Opportunity Revenue Splits Revenue
• OpportunityOverlayRevenue : Opportunity Overlay Splits
- Revenue
• OpportunityLineItemRevenue : Product Families Revenue
• OpportunityLineItemQuantity : Product Families Quantity
• The name of a custom opportunity split type that has been enabled
as a forecast type. Custom split types are based on currency fields,
which can contain revenue amounts only.
opportunityListFieldsLabelMappings OpportunityListFieldsLabelMappings A read-only list of the API names and UI labels for all fields on the
Opportunity object.
opportunityListFields
SelectedSettings
OpportunityListFields The fields selected to appear in the opportunity pane of the forecast
SelectedSettings
page for the forecast type. Opportunity Name is required. You
can select up to 15 fields.
opportunityListFields
UnselectedSettings
OpportunityListFields The fields not selected to appear in the opportunity pane of the forecast
UnselectedSettings page for the forecast type.
quotasSettings
QuotasSettings
forecastedCategoryApiNames string
This enables or disables the quota option in Forecasts.
This field appears four times to specify the four forecast rollup categories
used in the organization, for either cumulative forecast rollups, or
individual forecast category rollups.
Valid values for organizations using cumulative forecast rollups:
• openpipeline
• bestcaseforecast
• commitforecast
• closedonly
Valid values for organizations using individual forecast category rollups:
• pipelineonly
• bestcaseonly
• commitonly
• closedonly
Changing from one set of four values to the other changes the
organization setting for Enable Cumulative Forecast Rollups in Setup. If
this field is omitted, the setting is not changed.
590
Metadata Types
ForecastingSettings
Field Name
Field Type
Description
isAmount
boolean
This read-only field indicates whether the forecast type is based on
revenue amounts. The value of isAmount is always the opposite of
the value of isQuantity.
isAvailable
boolean
This read-only field indicates whether the forecast type can currently be
used in the organization. For example, the revenue splits forecast type
can’t be used in an organization that doesn’t have Opportunity Splits
enabled.
isQuantity
boolean
This read-only field indicates whether the forecast type is based on
product quantities. The value of isQuantity is always the opposite
of the value of isAmount.
displayedCategoryApiNames string
This read-only field appears four times to specify the four forecast rollup
categories displayed in the Forecasts tab, for either cumulative forecast
rollups, or individual forecast category rollups. Always use the same 4
values for both displayedCategoryApiNames and
forecastedCategoryApiNames.
Valid values for organizations using cumulative forecast rollups:
• openpipeline
• bestcaseforecast
• commitforecast
• closedonly
Valid values for organizations using individual forecast category rollups:
• pipelineonly
• bestcaseonly
• commitonly
• closedonly
managerAdjustableCategoryApiNames string
This read-only field appears twice to specify the two forecast rollup
categories that forecast managers can adjust in the organization for
either cumulative forecast rollups or individual forecast category rollups.
This field can only be used when the enableAdjustments field
contains a value of true. If both the
managerAdjustableCategoryApiNames and
ownerAdjustableCategoryApiNames fields are being used,
they must contain the same two values. Their values must also be
consistent with the values of the enableAdjustments and
enableOwnerAdjustments fields.
Valid values for organizations using cumulative forecast rollups:
• bestcaseforecast
• commitforecast
Valid values for organizations using individual forecast category rollups:
• bestcaseonly
591
Metadata Types
Field Name
ForecastingSettings
Field Type
Description
• commitonly
masterLabel
string
ownerAdjustableCategoryApiNames string
This read-only field indicates the UI label for the forecast type.
This read-only field appears twice to specify the two forecast rollup
categories that forecast owners can adjust in the organization, for either
cumulative forecast rollups, or individual forecast category rollups. This
field can only be used when the enableOwnerAdjustments field
contains a value of true. If both the
managerAdjustableCategoryApiNames and
ownerAdjustableCategoryApiNames fields are being used,
they must contain the same two values. Their values must also be
consistent with the values of the enableAdjustments and
enableOwnerAdjustments fields.
Valid values for organizations using cumulative forecast rollups:
• bestcaseforecast
• commitforecast
Valid values for organizations using individual forecast category rollups:
• bestcaseonly
• commitonly
AdjustmentsSettings
The adjustment options for Collaborative Forecasts.
Field
Field Type
Description
enableAdjustments
boolean
Set to true to enable Collaborative Forecasts manager
adjustments and false to disable them. All forecast types
must contain the same enableAdjustments value.
Warning: Disabling adjustments results in Collaborative
Forecasts adjustment data being purged.
enableOwnerAdjustments boolean
Set to true to enable Collaborative Forecasts owner
adjustments and false to disable them. All forecast types
must contain the same enableAdjustments value.
Warning: Disabling adjustments results in Collaborative
Forecasts adjustment data being purged.
ForecastRangeSettings
The default periods and range selections in Collaborative Forecasts. Users can forecast up to 12 months or eight quarters in the future
or past. If your forecast range includes the current month or quarter, the forecasts page displays the current month or quarter by default.
592
Metadata Types
ForecastingSettings
If not, the first month or quarter of the range is selected. All forecast types must contain the same forecastRangeSettings field
values.
Warning: If you change the time period from monthly to quarterly or quarterly to monthly, or you change the standard fiscal
year, all adjustments and quotas are purged. If you enable custom fiscal years, creating the first custom fiscal year deletes any
quotas and adjustments in the corresponding and subsequent standard fiscal years. These changes trigger a forecast recalculation
that can take significant time, depending on the quantity of your data.
Field
Field Type
Description
beginning
int
Indicates the beginning month or quarter to display by default.
displaying
int
Indicates the number of months or quarters to display by default.
The maximum number of months is 12 and quarters is 8.
periodType
PeriodTypes (enumeration of
type string)
Indicates what type of period to use. Valid values are:
• Month
• Quarter
OpportunityListFieldsLabelMappings
A read-only list of the API names and UI labels for all fields on the Opportunity object.
Field
Field Type
Description
field
string
The API name of the Opportunity field.
label
string
The UI label of the Opportunity field.
OpportunityListFieldsSelectedSettings
The fields selected to appear in the opportunity pane of the forecast page for the forecast type. Opportunity Name is required.
You can select up to 15 fields.
Field
Field Type
Description
field
string
Specifies names of fields to display in the opportunity pane.
OpportunityListFieldsUnselectedSettings
The fields not selected to appear in the opportunity pane of the forecast page for the forecast type.
Field
Field Type
Description
field
string
Specifies names of fields not displayed in the opportunity pane.
QuotasSettings
QuotasSettings indicates if quotas are available in Collaborative Forecasts.
593
Metadata Types
ForecastingSettings
Field
Field Type
Description
showQuotas
boolean
Set to true to enable quotas. All forecast types must contain
the same showQuotas field value.
ForecastingCategoryMappings
The forecasting category mappings for Collaborative Forecasts. This subtype appears eight times within the ForecastingSettings
type. Each occurrence includes fields that specify a type of forecast category rollup, which forecast categories each rollup includes, and
the weight of each forecast category in the rollup. Organizations using either cumulative forecast rollups or individual forecast category
columns must include all eight occurrences of this subtype.
Field
Field Type
Description
forecastingItemCategoryApiName string
This field specifies the API name of the rollup type. The valid
values are:
• openpipeline
• bestcaseforecast
• commitforecast
• pipelineonly
• bestcaseonly
• commitonly
• closedonly
• omittedonly
weightedSourceCategories WeightedSourceCategories[]
This field can occur more than once when specifying more than
one forecast category to include in the rollup type. Each
occurrence contains two subfields that specify a forecast
category to include in the forecast rollup type and its weight.
Some rollup types include more than one forecast category. This
list shows the forecast categories that are included in each rollup
type.
• Rollup: openpipeline, Forecast categories: pipeline, best
case, commit
• Rollup: bestcaseforecast, Forecast categories: best case,
commit, closed
• Rollup: commitforecast, Forecast categories: commit, closed
• Rollup: pipelineonly, Forecast categories: pipeline
• Rollup: bestcaseonly, Forecast categories: best case
• Rollup: commitonly, Forecast categories: commit
• Rollup: closedonly, Forecast categories: closed
• Rollup: omittedonly, Forecast categories: omitted
594
Metadata Types
ForecastingSettings
WeightedSourceCategories
This field can occur more than once when specifying more than one forecast category to include in the rollup type. Each occurrence
contains two subfields that specify a forecast category to include in the forecast rollup type and its weight. Some rollup types include
more than one forecast category. This table shows the forecast categories that are included in each rollup type.
Field
Field Type
Description
sourceCategoryApiName
string
Specifies the API name of a forecast category to include in the
rollup type. The valid values are.
• pipeline
• best case
• commit
• closed
• omitted
weight
double
Specifies the weight given to the forecast category when
calculating the forecast for the rollup type. The only supported
value is 1.0.
Declarative Metadata Sample Definition
The following is an example of a ForecastingSettings component that enables the Opportunity-Revenue and Product Family-Quantity
forecast types:
truetruetrueOpportunityRevenue06MonthOPPORTUNITY.NAMEtruefalse
595
Metadata Types
ForecastingSettings
trueOpportunityLineItemQuantity06MonthOPPORTUNITY.NAMEtruepipelineonlybestcaseonlycommitonlyclosedonlycommitonlyclosedonlybestcaseonlypipelineonlycommitonlybestcaseonlycommitonlybestcaseonlycommitonlycommit1.0closedonlyclosed1.0bestcaseforecastcommit1.0best case1.0
596
Metadata Types
ForecastingSettings
closed1.0omittedonlyomitted1.0openpipelinecommit1.0best case1.0pipeline1.0bestcaseonlybest case1.0commitforecastclosed1.0commit1.0pipelineonlypipeline1.0
597
Metadata Types
IdeasSettings
SEE ALSO:
Settings
IdeasSettings
Represents the metadata used to manage settings for Ideas.
In the package manifest, all organization settings metadata types are accessed using the “Settings” name. See Settings for more details.
File Suffix and Directory Location
IdeasSettings is stored in one file named Ideas.settings in the settings folder of the corresponding package directory. The
.settings files are different from other named components because there is only one settings file for each settings component.
Version
IdeasSettings is available in API version 27.0 and later.
Ideas
Represents settings for Ideas and Idea Themes.
Fields
Field Name
Field Type
Description
enableIdeaThemes
boolean
Indicates whether Idea Themes is enabled (true) or not (false).
enableIdeas
boolean
Indicates whether Ideas is enabled (true) or not (false).
enableIdeasReputation
boolean
Indicates whether Reputation is enabled (true) or not (false). You
can’t enable IdeasReputation without enabling the Ideas Reputation
permission in your organization. This field is available in API version 28.0
and later.
enableChatterProfile
boolean
Indicates that the Chatter user profile is used for Ideas user profiles. If
enableChatterProfile is true, the ideasProfilePage
value must not be specified. If enableChatterProfile is false,
then specify a ideasProfilePage value, otherwise the Ideas zone
profile is used. This field is available in API version 29.0 and later.
ideasProfilePage
string
The name of the Visualforce page to use for a custom Ideas user profile,
if enableChatterProfile is false. If
enableChatterProfile is false, then specify a
ideasProfilePage value, otherwise the Ideas zone profile is used.
This field is available in API version 29.0 and later.
598
Metadata Types
KnowledgeSettings
Field Name
Field Type
Description
halfLife
double
Indicates how quickly old ideas drop in ranking on the Popular Ideas
subtab. The half-life setting determines how the number of days after
which old ideas drop in ranking on the Popular Ideas subtab, to make
room for ideas with more recent votes. A shorter half-life moves older
ideas down the page faster than a longer half-life.
Declarative Metadata Sample Definition
The following is an example ideas.settings metadata file:
truetruetruefalsename of Visualforce page2.6
SEE ALSO:
Settings
KnowledgeSettings
Represents the metadata used to manage settings for Salesforce Knowledge.
This type extends the Metadata metadata type and inherits its fullName field.
In the package manifest, all organization settings metadata types are accessed using the “Settings” name. See Settings for more details.
File Suffix and Directory Location
KnowledgeSettings values are stored in a single file named Knowledge.settings in the settings directory. The .settings
files are different from other named components because there is only one settings file for each settings component.
Version
KnowledgeSettings is available in API version 27.0 and later.
Fields
Field Name
Field Type
Description
answers
KnowledgeAnswerSettings
Represents the metadata used to manage settings
for Salesforce Knowledge and Answers.
599
Metadata Types
KnowledgeSettings
Field Name
Field Type
Description
cases
KnowledgeCaseSettings
Represents the metadata used to manage settings
for Salesforce Knowledge and Cases.
defaultLanguage
string
Required. The default language for Salesforce
Knowledge. Use the abbreviation for the
language, for example, en_US for United States
English.
languages
KnowledgeLanguageSettings
A list of languages enabled for Salesforce
Knowledge.
enableChatterQuestionKBDeflection boolean
Indicates whether tracking for case deflection via
Chatter is enabled (true) or not (false).
enableCreateEditOnArticlesTab boolean
Indicates whether users can create and edit
articles on the articles tab (true) or not
(false).
enableExternalMediaContent
boolean
Indicates whether connecting to external media
is enabled (true) or not (false).
enableKnowledge
boolean
Indicates whetherSalesforce Knowledge is
enabled (true) or not (false).
showArticleSummariesCustomerPortal boolean
Indicates whether article summaries appear in
the Customer Portal (true) or not (false).
showArticleSummariesInternalApp boolean
Indicates whether article summaries appear in
the internal knowledge base (true) or not
(false).
showArticleSummariesPartnerPortal boolean
Indicates whether article summaries appear in
the partner portal (true) or not (false).
showValidationStatusField
boolean
Indicates whether validation status appears on
articles (true) or not (false).
suggestedArticles
KnowledgeSuggestedArticlesSettings Represents the metadata used to manage settings
for the case fields used to suggest articles for
cases. Available in API version 37.0 and later.
KnowledgeAnswerSettings
Represents the metadata used to manage settings for Salesforce Knowledge and Answers.
Field Name
Field Type
Description
assignTo
string
Specifies the username an article is assigned to from Answers.
defaultArticleType
string
The default article type for articles created from Answers. Uses the API
name of the article type.
600
Metadata Types
KnowledgeSettings
Field Name
Field Type
Description
enableArticleCreation
boolean
Indicates whether users can create articles from Answers (true) or not
(false).
KnowledgeCaseField
Represents the name of the case field used to suggest articles for the case. Available in API version 37.0 and later.
Field Name
Field Type
Description
name
string
Specifies the name of the case field used to suggest
articles for the case.
KnowledgeCaseFieldsSettings
Represents a list of the case fields used to suggest articles for the case. Available in API version 37.0 and later.
Field Name
Field Type
Description
field
KnowledgeCaseField[]
Specifies the names of the case fields used to suggest
articles for the case.
KnowledgeWorkOrderField
Represents the name of the work order field used to suggest articles for the work order. Available in API version 39.0 and later.
Field Name
Field Type
Description
name
string
Specifies the name of the work order field used to
suggest articles for the work order.
KnowledgeWorkOrderFieldsSettings
Represents a list of the work order fields used to suggest articles for the work order. Available in API version 39.0 and later.
Field Name
Field Type
Description
field
KnowledgeWorkOrderField[]
Specifies the names of the work order fields used to
suggest articles for the work order.
KnowledgeWorkOrderLineItemField
Represents the name of the work order line item field used to suggest articles for the work order line item. Available in API version 39.0
and later.
601
Metadata Types
KnowledgeSettings
Field Name
Field Type
Description
name
string
Specifies the name of the work order line item field
used to suggest articles for the work order line item.
KnowledgeWorkOrderLineItemFieldsSettings
Represents a list of the work order line item fields used to suggest articles for the work order line item. Available in API version 39.0 and
later.
Field Name
Field Type
Description
field
KnowledgeWorkOrderLineItemField[]
Specifies the names of the work order line item fields
used to suggest articles for the work order line item.
KnowledgeSuggestedArticlesSettings
Represents the metadata used to manage settings for the articles suggested for cases, work orders, and work order line items.
Field Name
Field Type
Description
caseFields
KnowledgeCaseFieldsSettings
Represents a list of the case fields used to suggest
articles for the case.
useSuggestedArticlesForCase boolean
workOrderFields
Indicates whether case content is used to suggest
articles for cases (true) or not (false).
KnowledgeWorkOrderFieldsSettings
Represents a list of the work order fields used to
suggest articles for the work order.
workOrderLineItemFields KnowledgeWorkOrderLineItemFieldsSettings Represents a list of the work order line item fields used
to suggest articles for the work order line item.
KnowledgeCaseSettings
Represents the metadata used to manage settings for Salesforce Knowledge and Cases.
Field Name
Field Type
Description
articlePDFCreationProfile
string
The profile used to create a PDF of an article from
Cases.
articlePublicSharingSites
KnowledgeSitesSettings
Represents the metadata used to manage settings
for Salesforce Knowledge and Sites.
articlePublicSharingCommunities KnowledgeSitesSettings
Represents the metadata used to manage settings
for Salesforce Knowledge and Communities.
articlePublicSharingSitesChatterAnswers KnowledgeSitesSettings
Represents the metadata used to manage settings
for Salesforce Knowledge and Sites with Chatter
Answers.
602
Metadata Types
KnowledgeSettings
Field Name
Field Type
Description
assignTo
string
Specifies the username an article is assigned to from
Cases.
customizationClass
string
Specifies the Apex class used for customization.
defaultContributionArticleType
string
The default article type for articles created from
Cases.
editor
KnowledgeCaseEditor
(enumeration of type string)
Indicates the rich text editor type. Valid values are:
• simple
• standard
boolean
Indicates whether users can create articles from
Cases (true) or not (false). Controls whether
other fields on KnowledgeCaseSettings can be set.
enableArticlePublicSharingSites boolean
Indicates whether articles can be shared via a public
site (URL) from Cases (true) or not (false).
boolean
Indicates whether a profile is used to create a PDF
of an article from Cases (true) or not (false).
enableArticleCreation
useProfileForPDFCreation
KnowledgeSitesSettings
Represents the metadata used to manage settings for Salesforce Knowledge and Sites.
Field Name
Field Type
Description
site
string[]
Specifies the site used for Salesforce Knowledge and Sites.
KnowledgeLanguageSettings
A list of languages enabled for Salesforce Knowledge. KnowledgeLanguageSettings is available in API version 28.0 and later.
Field Name
Field Type
Description
language
KnowledgeLanguage
Represents the metadata used to manage settings for
the languages enabled for Salesforce Knowledge.
KnowledgeLanguage
Represents the metadata used to manage settings for the languages enabled for Salesforce Knowledge. KnowledgeLanguage is available
in API version 28.0 and later.
Field Name
Field Type
Description
active
boolean
Indicates whether the language is enabled (true) or
not (false).
603
Metadata Types
KnowledgeSettings
Field Name
Field Type
Description
defaultAssignee
string
The default assignee for articles in the language.
defaultAssigneeType
KnowledgeLanguageLookupValueType
(enumeration of type string)
Indicates the default assignee type. Valid values are:
• user
• queue
defaultReviewer
string
The default reviewer for articles in the language.
defaultReviewerType
KnowledgeLanguageLookupValueType
(enumeration of type string)
Indicates the default reviewer type. Valid values are:
• user
• queue
name
string
The code for the language name, for example: English
is en. See “What languages does Salesforce support?”
in the Salesforce online help for a list of supported
languages and their codes.
Declarative Metadata Sample Definition
This is a sample Knowledge settings file.
falsepartner portal knowledge
profileKnowledgeSitePKB2SiteChatterAnswersSiteChatterAnswersSitetestall@kb.orgSupportsimpletruetruetruejatruetruetruetruetrue
604
Metadata Types
LeadConvertSettings
truetrueSubjectSuppliedEmailtrue
SEE ALSO:
Settings
LeadConvertSettings
Represents an organization’s custom field mappings for lead conversion. Custom fields can be mapped from Leads to Accounts, Contacts,
and Opportunities. Options for creating opportunities during lead conversion can also be specified. This type extends the Metadata
metadata type and inherits its fullName field.
Version
LeadConvertSettings is available in API versions 39.0 and later.
Fields
Field Name
Field Type
Description
allowOwnerChange
boolean
Indicates whether to include the RecordOwner field in the Convert Lead
dialog box (true) or not (false).
objectMapping
metadata type
A set of inputObject, mappingFields, and outputObject
entries. Up to three objectMapping types can be declared—one
each for Account, Contact, and Opportunity.
inputObject
string
The name of the object type containing the source fields for mapping.
The value will always be Lead.
mappingFields
metadata type
A set of inputField and outputField entries.
inputField
string
The name of a custom lead field supplying source data during lead
conversion.
outputField
string
The name of a custom account, contact, or opportunity field that will
receive data from source field named in the accompanying
inputField entry.
605
Metadata Types
LeadConvertSettings
Field Name
Field Type
Description
outputObject
string
The name of the object type receiving data during lead
conversion—Account, Contact, or Opportunity.
opportunityCreationOptions string
This optional field determines whether the Opportunity field is visible
or required in the Convert Lead dialog box. Valid values include:
• VisibleOptional—The Opportunity field is included in the
dialog box but not required. A new opportunity is created if the user
enters an opportunity name. This is the default value.
• VisibleRequired—The Opportunity field is included in the
dialog box and is required. A new opportunity is created based on
the name entered by the user.
• NotVisible—The Opportunity field is not included in the dialog
box. No opportunity is created.
Declarative Metadata Sample Definition
The following is an example of the LeadConvertSettings type:
falseLeadcustom_lead_field_1custom_account_field_1custom_lead_field_2custom_account_field_2custom_lead_field_3custom_account_field_3AccountLeadcustom_lead_field_4custom_opportunity_field_1OpportunityVisibleOptional
606
Metadata Types
LiveAgentSettings
LiveAgentSettings
Represents an organization’s Live Agent settings, such as whether or not Live Agent is enabled. This type extends the Metadata metadata
type and inherits its fullName field.
File Suffix and Directory Location
LiveAgentSettings values are stored in the LiveAgent.settings file in the settings directory. The .settings files are
different from other named components because there is only one settings file for each settings component.
In the package manifest, all organization settings metadata types are accessed using the “Settings” name. See Settings for more details.
Version
LiveAgentSettings is available in API version 28.0 and later.
Fields
Field Name
Field Type
Description
enableLiveAgent
boolean
Indicates whether Live Agent is enabled (true) or not
(false).
Declarative Metadata Sample Definition
This is a sample Live Agent settings file.
true
MobileSettings
Represents an organization’s mobile settings. For more information, see “Manage Salesforce Mobile Classic Devices” in the Salesforce
online help.
In the package manifest, all organization settings metadata types are accessed using the “Settings” name. See Settings for more details.
Declarative Metadata File Suffix and Directory Location
MobileSettings values are stored in a single file named Mobile.settings in the settings directory. The .settings files
are different from other named components because there is only one settings file for each settings component.
Note: MobileSettings is no longer available in API versions 25.0 and 26.0.
Version
Mobile settings are available in API version 27.0 and later.
607
Metadata Types
MobileSettings
Fields
Field
Field Type
Description
chatterMobile (Deprecated)
ChatterMobileSettings
The settings for devices running Chatter
mobile.
dashboardMobile (Deprecated)
DashboardMobileSettings
The settings for devices running the mobile
dashboards app.
salesforceMobile
SFDCMobileSettings
The settings for devices running Salesforce
Classic Mobile.
touchMobile (Deprecated)
TouchMobileSettings
The settings for devices running Salesforce
Touch.
ChatterMobileSettings
These fields are deprecated. Represents your organization’s Chatter Mobile settings.
Field
Field Type
Description
IPadAuthorized
boolean
Indicates whether iPad devices are enabled
for Chatter Mobile (true) or not (false).
IPhoneAuthorized
boolean
Indicates whether iPhone devices are
enabled for Chatter Mobile (true) or not
(false).
androidAuthorized
boolean
Indicates whether Android devices are
enabled for Chatter Mobile (true) or not
(false).
blackBerryAuthorized
boolean
Indicates whether Blackberry devices are
enabled for Chatter Mobile (true) or not
(false).
enableChatterMobile
boolean
Indicates whether Chatter Mobile has been
enabled for your organization (true) or
not (false).
Note: Setting this to true enables
you to set all of the other settings. If
you change this setting from true
to false, and also try to change
any of the other ChatterMobile
settings, your deploy will fail with an
error.
enablePushNotifications
boolean
Indicates whether Chatter push notifications
have been enabled for your organization
(true) or not (false)
608
Metadata Types
MobileSettings
Field
Field Type
Description
sessionTimeout
MobileSessionTimeout (enumeration of type The length of time after which users without
string)
activity are prompted to log out or continue
working. Valid values are:
• Never
• OneMinute
• FiveMinutes
• TenMinutes
• ThirtyMinutes
DashboardMobileSettings
These fields are deprecated. Represents your organization’s Mobile Dashboards iPad app settings.
Field
Field Type
Description
enableDashboardIPadApp
boolean
Indicates whether Mobile Dashboards iPad
app has been enabled for your organization
(true) or not (false)
SFDCMobileSettings
Represents your organization’s Salesforce Classic Mobile app settings.
Field
Field Type
Description
enableUserToDeviceLinking
boolean
Permanently link users to their mobile
devices. Set this option to true only if you
want to prevent your users from switching
devices without administrative intervention..
enableMobileLite
boolean
Indicates whether your organization has the
free version of Salesforce Mobile Classic
enabled (true) or not (false).
Note that the free version of Salesforce
Mobile Classic is available only for orgs that
turned on this option prior to Summer ’16.
TouchMobileSettings
These fields are deprecated. Salesforce Touch has been upgraded to the Salesforce1 app.
609
Metadata Types
NameSettings
Field
Field Type
Description
enableTouchBrowserIPad
boolean
Indicates whether your organization has the
Salesforce Touch mobile browser app
enabled (true) or not (false).
enableTouchAppIPad
boolean
Indicates whether your organization has the
Salesforce Touch downloadable app
enabled (true) or not (false)
Declarative Metadata Sample Definition
This is a sample mobile.settings metadata file.
truetruetruetruetruetrueNevertruefalsefalsefalsetrue
SEE ALSO:
Settings
NameSettings
Enables or disables middle name and suffix attributes for the following person objects: Contact, Lead, Person Account, and User.
File Suffix and Directory Location
NameSettings values are stored in a single file named Name.settings in the settings folder. The .settings files are
different from other named components because there is only one settings file for each settings component.
610
Metadata Types
OpportunitySettings
Version
NameSettings components are available in API version 31.0 and later.
Fields
Field Name
Field Type
Description
enableMiddleName
boolean
Indicates whether middle names are enabled (true) or disabled
(false) for person objects.
enableNameSuffix
boolean
Indicates whether suffixes are enabled (true) or disabled (false) for
person objects.
Declarative Metadata Sample Definition
The following is an example of a NameSettings component.
truefalse
The following is an example package.xml manifest that references the NameSettings definitions.
NameSettings31.0
OpportunitySettings
Represents organization preferences for features such as automatic opportunity updates and similar-opportunity filters. This type extends
the Metadata metadata type and inherits its fullName field.
File Suffix and Directory Location
Opportunities values are stored in a single file named Opportunity.settings in the settings directory of the corresponding
package directory. The .settings files are different from other named components because there is only one settings file for each
settings component.
Version
OpportunitySettings is available in API version 28.0 and later.
611
Metadata Types
OpportunitySettings
Fields
Field Name
Field Type
Description
enableUpdateReminders
boolean
Lets users enable automatic, scheduled updates on opportunities.
autoActivateNewReminders boolean
Automatically uses scheduled updates for new opportunities.
enableFindSimilarOpportunities boolean
Lets users see related or similar existing opportunities.
findSimilarOppFilter
multipicklist
Defines parameters for similar opportunities.
enableOpportunityTeam
boolean
Lets users associate team members with opportunities.
promptToAddProducts
boolean
Prompts users to add related products to an opportunity.
FindSimilarOppFilter
Defines whether to match by entire columns or fields.
Field
Field Type
Description
similarOpportunitiesDisplayColumns string
The columns to compare.
similarOpportunitiesMatchFields string
The fields to compare.
Declarative Metadata Sample Definition
The following is an example of the package file.
OpportunitySettings28.0
The package file references the following Opportunity.settings file.
truetrueOPPORTUNITY.AccountOPPORTUNITY.OpportunityCompetitorsCustomField__c
612
Metadata Types
OrderSettings
CustomField__ctruetruefalse
OrderSettings
Represents order settings. This type extends the Metadata metadata type and inherits its fullName field. For more information, see
“Customize Order Settings” in the Salesforce Help.
In the package manifest, all organization settings metadata types are accessed using the “Settings” name. See Settings for more details.
File Suffix and Directory Location
There is one OrderSettings component in a file named Order.settings in the settings folder. The .settings files are
different from other named components because there is only one settings file for each settings component.
Version
OrderSettings components are available in API version 30.0 and later.
Fields
Field Name
Field Type
Description
enableNegativeQuantity
boolean
Indicates whether users in the organization can add order products with
quantities of less than zero (true) or not (false).
To enable this preference, enableOrders must be set to true.
enableOrders
boolean
Indicates whether orders are enabled for the organization (true) or
not (false).
enableReductionOrders
boolean
Indicates whether reduction orders are enabled for the organization
(true) or not (false). For more information, see “Reduction Orders”
in the Salesforce Help.
To enable this preference, enableOrders must be set to true.
Declarative Metadata Sample Definition
This is a sample OrderSettings component.
truefalse
613
Metadata Types
OrgPreferenceSettings
true
The following is an example package.xml that references the previous definition.
OrderSettings30.0
OrgPreferenceSettings
Represents the unique org preference settings in a Salesforce org. This type extends the Metadata metadata type and inherits its
fullName field.
File Suffix and Directory Location
OrgPreferenceSettings values are stored in the OrgPreference.settings file in the settings directory. The .settings files
are different from other named components because there is only one settings file for each settings component.
Version
OrgPreferenceSettings components are available in API version 37.0 and later.
Fields
Field Name
Field Type
Description
preferences
OrganizationSettingsDetail[] The preferences associated with the org settings. Possible values are:
• ChatterEnabled
• EnhancedEmailEnabled
• EventLogWaveIntegEnabled
• LoginForensicsEnabled
• NotesReservedPref01
• OfflineDraftsEnabled
• PathAssistantsEnabled
• S1DesktopEnabled
• S1EncryptedStoragePref2
• S1OfflinePref
• SendThroughGmailPref
• SocialProfilesEnable
• VoiceEnabled
614
Metadata Types
OrgPreferenceSettings
OrganizationSettingsDetail
Field Name
Field Type
Description
settingName
string
The name of the setting. For example,
“S1EncryptedStoragePref2.”
setttingValue
boolean
Indicates whether the setting is enabled
(true) or not (false).
Declarative Metadata Sample Definition
The following is an example of a OrgPreferenceSettings component.
EventLogWaveIntegEnabledtrueSendThroughGmailPreffalseLoginForensicsEnabledfalseEnhancedEmailEnabledtrueNotesReservedPref01falseS1OfflinePreftrueS1EncryptedStoragePref2trueOfflineDraftsEnabledfalseChatterEnabledtrue
615
Metadata Types
PathAssistantSettings
SocialProfilesEnabletruePathAssistantsEnabledfalseS1DesktopEnabledtrueVoiceEnabledfalse
PathAssistantSettings
Represents the Path preference setting. This type extends the Metadata metadata type and inherits its fullName field.
In the package manifest, all organization settings metadata types are accessed using the “Settings” name. See Settings for more details.
File Suffix and Directory Location
PathAssistantSettings components have the suffix .settings and are stored in the settings folder.
Version
PathAssistantSettings components are available in API version 34.0 and later.
Fields
Field Name
Field Type
Description
pathAssistantForOpportunityEnabled boolean
Determines whether the preference is enabled for Path in Opportunity
or not. Available in API version 34.0 only.
boolean
Determines whether the preference is enabled for Path or not. Available
in API version 35.0 and later.
pathAssistantEnabled
Declarative Metadata Sample Definition
The following is an example of a PathAssistantSettings component.
true
616
Metadata Types
PersonalJourneySettings
The following is an example package.xml that references the previous definition.
PathAssistantSettingsAPIProductSettings28.0
The package file references the following Product.settings file.
truefalsefalse
QuoteSettings
Enables or disables Quotes, which show proposed prices for products and services. This type extends the Metadata metadata type and
inherits its fullName field.
618
Metadata Types
SearchSettings
File Suffix and Directory Location
QuoteSettings values are stored in a single file named Quote.settings in the settings directory of the corresponding package
directory. The .settings files are different from other named components because there is only one settings file for each settings
component.
Version
QuoteSettings is available in API version 28.0 and later.
Fields
Field Name
Field Type
Description
enableQuote
boolean
When set to true, users can access Quotes.
Declarative Metadata Sample Definition
The following is an example of the package file.
QuoteSettings28.0
The package file references the following Quote.settings file.
true
SearchSettings
Represents an org's search settings.
This type extends the Metadata metadata type and inherits its fullName field.
In the package manifest, all organization settings metadata types are accessed using the “Settings” name. See Settings for more details.
File Suffix and Directory Location
SearchSettings values are stored in a single file named Search.settings in the settings folder. The .settings files are
different from other named components because there is only one settings file for each settings component.
619
Metadata Types
SearchSettings
Version
SearchSettings is available in API version 37.0 and later.
Fields
Field Name
Field Type
Description
documentContentSearchEnabled
boolean
Indicates if a full-text document search is performed.
optimizeSearchForCJKEnabled
boolean
Indicates whether the search is optimized for the Japanese,
Chinese, and Korean languages. This setting affects sidebar
search and the account search for Find Duplicates on a lead
record in sidebar search and global search. Enable this option
if users are searching mostly in Japanese, Chinese, or Korean,
and if the text in searchable fields is mostly in those languages.
recentlyViewedUsersForBlankLookupEnabled boolean
Indicates whether the list of records that are returned from a
user autocomplete lookup and from a blank user lookup is
taken from the user’s recently viewed user records. Otherwise
this setting is false if the lookup shows a list of recently
accessed user records from across your org (false). Only
applies to User object blank lookup searches.
searchSettingsByObject
SearchSettingsByObject Represents a list of search settings for each object.
sidebarAutoCompleteEnabled
boolean
Indicates if autocomplete is enabled for sidebar search.
Autocomplete is when users start typing search terms and
sidebar search displays a matching list of recently viewed
records.
sidebarDropDownListEnabled
boolean
Indicates if a drop-down list appears in the sidebar search
section. From this list, users can select to search within tags,
within a specific object, or across all objects.
sidebarLimitToItemsIOwnCheckboxEnabled boolean
Indicates if the Limit to Items I Own checkbox appears. The
checkbox allows your users to include only records for which
they are the record owner when entering search queries in
the sidebar.
singleSearchResultShortcutEnabled boolean
Indicates if a shortcut is enabled. With the shortcut, users skip
the search results page and go directly to the record’s detail
page when their search returns only a single item. This setting
doesn't apply to tags, case comments (in advanced search),
and global search.
spellCorrectKnowledgeSearchEnabled boolean
Indicates if spell check is enabled for Knowledge search.
SearchSettingsByObject
Includes ObjectSearchSetting field type, which is a list of search settings for each object.
620
Metadata Types
SearchSettings
Field Name
Field Type
Description
searchSettingsByObject
ObjectSearchSetting Contains a list of search settings for each object.
ObjectSearchSetting
A list of search settings for each object.
Field Name
Field Type
Description
enhancedLookupEnabled
boolean
Indicates if enhanced lookups is enabled for the object.
lookupAutoCompleteEnabled boolean
Indicates if autocomplete is enabled for lookup search. Autocomplete
is when users edit the lookup field inline by choosing an autosuggestion.
name
string
The entity name of the object being configured.
resultsPerPageCount
int
The number of search results per page.
Declarative Metadata Sample Definition
The following is an example of the Search.settings file.
truetruetruefalsefalseAccount25falsefalseActivity25falsefalseAsset25truetruetrue
621
Metadata Types
SecuritySettings
truetrue
Example Package Manifest
The following is an example package manifest used to deploy or retrieve the Account settings metadata for an organization.
SearchSettings37.0
SecuritySettings
Represents an organization’s security settings. Security settings define trusted IP ranges for network access, password and login
requirements, and session expiration and security settings.
In the package manifest, all organization settings metadata types are accessed using the “Settings” name. See Settings for more details.
Declarative Metadata File Suffix and Directory Location
SecuritySettings values are stored in a single file named Security.settings in the settings directory. The .settings
files are different from other named components because there is only one settings file for each settings component.
Note: SecuritySettings is no longer available in API versions 25.0 and 26.0.
Version
Security settings are available in API version 27.0 and later.
Fields
Field Name
Field Type
Description
networkAccess
NetworkAccess
The trusted IP address ranges from which users can always log
in without requiring computer activation.
passwordPolicies
PasswordPolicies
The requirements for passwords and logins, and assistance with
retrieving forgotten passwords.
sessionSettings
SessionSettings
The settings for session expiration and security.
622
Metadata Types
SecuritySettings
NetworkAccess
Represents your organization’s trusted IP address ranges for network access.
Field
Field Type
Description
ipRanges
IpRange[]
The trusted IP address ranges from which users can always log
in without requiring computer activation.
Note: In order to add an IP range, deploy all existing IP
ranges, as well as the one you want to add. Otherwise,
the existing IP ranges are replaced with the ones you
deploy. To remove all the IP ranges in an organization,
leave the networkAccess field blank
().
IpRange
Defines a range of trusted IP addresses for network access.
Field
Field Type
Description
description
string
The description of the trusted IP range. Use this field to identify
the range, such as which corporate network corresponds to this
range. This field is available in API version 34.0 and later.
end
string
The IP address that defines the high end of a range of trusted
addresses.
start
string
The IP address that defines the low end of a range of trusted
addresses.
PasswordPolicies
Represents your organization’s password and login policies.
Field
Field Type
Description
apiOnlyUserHomePageURL string
complexity
The URL to which users with the “API Only User” permission are
redirected instead of the login page.
Complexity (enumeration of
type string)
Required. The requirement for which types of characters must
be used in a user’s password. Valid values are:
• NoRestriction—allows any password value and is
the least secure option.
• AlphaNumeric—requires at least one alphabetic
character and one number. This value is the default value.
• SpecialCharacters—requires at least one alphabetic
character, one number, and one of the following special
characters: ! # $ % - _ = + < >.
623
Metadata Types
Field
SecuritySettings
Field Type
Description
• UpperLowerCaseNumeric—requires at least one
number, one uppercase letter, and one lowercase letter.
This value is available in API version 31.0 and later.
• UpperLowerCaseNumericSpecialCharacters—requires
at least one number, one uppercase letter, and one
lowercase letter, and one of the following special characters:
! # $ % - _ = + < >. This value is available in API
version 31.0 and later.
expiration
Expiration (enumeration of type Required. The length of time until user passwords expire and
string)
must be changed. Valid values are:
• Never
• ThirtyDays
• SixtyDays
• NinetyDays. This value is the default value.
• SixMonths
• OneYear
minimumPasswordLifetime boolean
passwordAssistanceURL
Indicates whether a one-day minimum password lifetime is
required (true) or not (false). This field is available in API
version 31.0 and later.
string
The URL that users can click to retrieve forgotten passwords.
passwordAssistanceMessage string
The text that appears in the Account Lockout email and at the
bottom of the Confirm Identity screen for users resetting their
passwords.
historyRestriction
string
Required. The number of previous passwords saved for users so
that they must always reset a new, unique password. Valid values
are 0 through 24 passwords remembered. The maximum
value of 24 applies to API version 31.0 and later. In earlier
versions, the maximum value is 16. The default value is 3.
lockoutInterval
LockoutInterval (enumeration
of type string)
Required. The duration of the login lockout. Valid values are:
• FifteenMinutes. This value is the default value.
• ThirtyMinutes
• SixtyMinutes
• Forever (must be reset by admin)
maxLoginAttempts
MaxLoginAttempts
(enumeration of type string)
Required. The number of login failures allowed for a user before
they become locked out. Valid values are:
• NoLimit
• ThreeAttempts
• FiveAttempts
624
Metadata Types
Field
SecuritySettings
Field Type
Description
• TenAttempts. This value is the default value.
minimumPasswordLength
string
Required. The minimum number of characters required for a
password. Valid values are from 5 to 50. The default value is 8.
This field is available in API version 35.0 and later.
Before API version 35.0, specify minimum password length with
the enumeration minPasswordLength, with valid values
FiveCharacters, EightCharacters (default),
TenCharacters, TwelveCharacters (API version
31.0 and later), and FifteenCharacters ( API version
34.0 and later).
obscureSecretAnswer
boolean
Hides the secret answer associated with a password (true) or
not (false).
Note: If your org uses the Microsoft Input Method Editor
(IME) with the input mode set to Hiragana, when you
type ASCII characters, they’re converted in Japanese
characters in normal text fields. However, the IME doesn’t
work properly in fields with obscured text. If your org’s
users cannot properly enter their passwords or other
values after enabling this feature, disable the feature.
questionRestriction
QuestionRestriction
(enumeration of type string)
Required. The restriction on whether the answer to the password
hint question can contain the password itself. Valid values are:
• None
• DoesNotContainPassword. This value is the default
value.
SessionSettings
Represents your organization’s session expiration and security settings.
Field
Field Type
Description
disableTimeoutWarning
boolean
Indicates whether the session timeout warning popup is
disabled (true) or enabled (false).
enableCSPOnEmail
boolean
Indicates whether a content security policy is enabled for the
email template. A content security policy helps prevent
cross-site scripting attacks by whitelisting sources of images
and other content.
enableCSRFOnGet
boolean
Indicates whether Cross-Site Request Forgery (CSRF) protection
on GET requests on non-setup pages is enabled (true) or
disabled (false).
625
Metadata Types
SecuritySettings
Field
Field Type
Description
enableCSRFOnPost
boolean
Indicates whether Cross-Site Request Forgery (CSRF) protection
on POST requests on non-setup pages is enabled (true) or
disabled (false).
enableCacheAndAutocomplete boolean
Indicates whether the user’s browser is allowed to store user
names and auto-fill the User Name field on the login page
(true) or not (false).
enableClickjackNonsetupSFDC boolean
Indicates whether clickjack protection for non-setup Salesforce
pages is enabled (true) or disabled (false).
enableClickjackNonsetupUser boolean
Indicates whether clickjack protection for customer Visualforce
pages with standard headers turned on is enabled (true) or
disabled (false).
enableClickjackNonsetupUserHeaderless boolean
Indicates whether clickjack protection for customer Visualforce
pages with standard headers turned off is enabled (true) or
disabled (false). Available in API version 34.0 and later.
enableClickjackSetup
boolean
Indicates whether clickjack protection for setup pages is enabled
(true) or disabled (false).
enablePostForSessions
boolean
Indicates whether cross-domain session information is
exchanged using a POST request instead of a GET request, such
as when a user is using a Visualforce page. In this context, POST
requests are more secure than GET requests. Available in API
version 31.0 and later.
enableSMSIdentity
boolean
Indicates whether users can receive a one-time PIN delivered
via SMS (true) or not (false).
enforceIpRangesEveryRequest boolean
If true, the IP addresses in Login IP Ranges are enforced when
a user accesses Salesforce (on every page request), including
access from a client application. If false, the IP addresses in
Login IP Ranges are enforced only when a user logs in. This field
affects all user profiles that have login IP restrictions. Available
in API version 34.0 and later.
forceLogoutOnSessionTimeout boolean
Indicates that when sessions time out for inactive users, current
sessions become invalid. The browser refreshes and returns to
the login page. To access the org, the user must log in again.
Enabled (true) or not (false). Available in API version 31.0
and later.
forceRelogin
boolean
If true, an administrator that is logged in as another user is
required to log in again to their original session, after logging
out as the secondary user. If false, the administrator is not
required to log in again.
lockSessionsToDomain
boolean
Indicates whether the current UI session for a user, such as a
community user, is associated with a specific domain. This check
helps prevent unauthorized use of the session ID in another
626
Metadata Types
Field
SecuritySettings
Field Type
Description
domain. The value is true by default for organizations created
with the Spring ’15 release or later. Available in API version 33.0
and later.
lockSessionsToIp
boolean
Indicates whether user sessions are locked to the IP address
from which the user logged in (true) or not (false).
logoutURL
string
The URL to which users are redirected when they log out of
Salesforce. If no value is specified, the default is
https://login.salesforce.com unless MyDomain
is enabled. If My Domain is enabled, the default is
https://customdomain.my.salesforce.com.
Available in API version 34.0 and later.
sessionTimeout
SessionTimeout (enumeration
of type string)
The length of time after which users without activity are
prompted to log out or continue working. Valid values are:
• FifteenMinutes
• ThirtyMinutes
• SixtyMinutes
• TwoHours
• FourHours
• EightHours
• TwelveHours
Declarative Metadata Sample Definition
The following is a sample security.settings metadata file.
127.0.0.1127.0.0.1http://www.altPage.comSpecialCharactersOneYearhttp://www.acme.com/forgotpasswordForgot your password? Reset it
here.3ThirtyMinutesThreeAttempts10
627
Metadata Types
Territory2Settings
NonetruefalsefalsefalsetruetruetruetruetruetrueTwelveHours
SEE ALSO:
Settings
Territory2Settings
Represents the metadata for the default settings for Territory Management 2.0 users to access and modify records associated with sales
territories. The standard record access settings apply to accounts and opportunities. If your Salesforce org uses Private default internal
access for contacts or cases, you can also set access for those records. This type extends the Metadata metadata type and inherits its
fullName field. Available only if Territory Management 2.0 has been enabled for your org.
File Suffix and Directory Location
Territory2Settings components have the suffix settings and are stored in the Settings folder.
Version
Territory2Settings components are available in API version 32.0 and later.
Special Access Rules
The Territory2Model object has a State field in the SOAP API. States include Planning, Active, Archived, and a number of
other states, such as Cloning, that indicate that a process is underway. Users who do not have the “Manage Territories” permission
can access only territories that belong to the model in Active state. The “Manage Territories” permission is required for deploy()
calls for all territory management entities, in addition to the “Modify All Data” permission required by Metadata API. Using retrieve()
without the “Manage Territories” permission will return only entities that belong to a Territory2Model in Active state. We recommend
against retrieving without the “Manage Territories” permission because the call will retrieve only partial data.
628
Metadata Types
SharedTo
Fields
Field Name
Field Type
defaultAccountAccessLevel string
defaultCaseAccessLevel
string
Description
The default level of access users will have to account records in territories:
view and edit accounts assigned to territories or view, edit,
transfer, and delete accounts assigned to territories.
The default level of access users will have to case records in territories:
view and edit accounts assigned to territories or view, edit,
transfer, and delete accounts assigned to territories.
defaultContactAccessLevel string
The default level of access users will have to contact records in territories:
view and edit accounts assigned to territories or view, edit,
transfer, and delete accounts assigned to territories.
defaultOpportunityAccessLevel string
The default level of access users will have to opportunity records in
territories: view and edit accounts assigned to territories or view,
edit, transfer, and delete accounts assigned to territories.
Declarative Metadata Sample Definition
The following example shows the definition of a Territory2Settings component.
OwnerReadNoneEdit
Usage
Territory Management 2.0 components don’t support packaging or change sets and aren’t supported in CRUD calls.
SharedTo
SharedTo defines the sharing access for a list view or a folder. It can be used to specify the target and source for owner-based sharing
rules. See “Sharing Considerations” and “What Is a Group?” in the Salesforce online help.
Declarative Metadata File Suffix and Directory Location
SharedTo is used with ListView, Folder, and SharingRules.
Version
SharedTo is available in API version 17.0 and later.
629
Metadata Types
SharedTo
Fields
Field
Field Type
Description
allCustomerPortalUsers string
A group containing all customer portal users.
This field is available in API version 24.0 and later.
allInternalUsers
string
A group containing all internal and nonportal users.
This field is available in API version 24.0 and later.
allPartnerUsers
string
A group containing all partner users.
This field is available in API version 24.0 and later.
group
string[]
A list of groups with sharing access. Use this field instead of the
groups field.
This field is available in API version 22.0 and later.
groups
string[]
A list of groups with sharing access.
Use the group field instead for API version 22.0 and later.
managerSubordinates
string[]
A list of users whose direct and indirect subordinates receive
sharing access. This field is available in API version 24.0 and later.
managers
string[]
A list of users whose direct and indirect managers receive sharing
access. This field is available in API version 24.0 and later.
portalRole
string[]
A list of groups with sharing access containing all users in a
portal role.
This field is available in API version 24.0 and later.
portalRoleandSubordinates string[]
A list of groups with sharing access containing all users in a
portal role or those under that role.
This field is available in API version 24.0 and later.
role
string[]
A list of roles with sharing access. Use this field instead of the
roles field.
This field is available in API version 22.0 and later.
roleAndSubordinates
string[]
A list of roles with sharing access. All roles below each of these
roles in the role hierarchy also have sharing access. If portal
accounts are enabled, then all roles and portal accounts below
each of these roles in the role hierarchy also have sharing access.
Use this field instead of the rolesAndSubordinates field
.
This field is available in API version 22.0 and later.
630
Metadata Types
Field
SharingBaseRule
Field Type
Description
roleAndSubordinatesInternal string[]
A list of roles with sharing access. All roles below each of these
roles in the role hierarchy also have sharing access.
This field is available in API version 22.0 and later.
roles
string[]
A list of roles with sharing access.
Use the role field instead for API version 22.0 and later.
rolesAndSubordinates
string[]
A list of roles with sharing access. All roles below each of these
roles in the role hierarchy also have sharing access. If portal
accounts are enabled, then all roles and portal accounts below
each of these roles in the role hierarchy also have sharing access.
Use the roleAndSubordinates field instead for API
version 22.0 and later.
territories
string[]
A list of territories with sharing access.
Use the territory field instead for API version 22.0 and
later.
territoriesAndSubordinates string[]
A list of territories with sharing access. All territories below each
of these territories in the territory hierarchy also have sharing
access.
Use the territoryAndSubordinates field instead for
API version 22.0 and later.
territory
string[]
A list of territories with sharing access. Use this field instead of
the territories field.
This field is available in API version 22.0 and later.
territoryAndSubordinates string[]
A list of territories with sharing access. All territories below each
of these territories in the territory hierarchy also have sharing
access. Use this field instead of the
territoriesAndSubordinates field.
This field is available in API version 22.0 and later.
queue
string[]
A list of queues with sharing access. Applies only to lead, case,
and CustomObject sharing rules.
This field is available in API version 24.0 and later.
SharingBaseRule
Represents sharing rule settings such as access level and to whom access is granted. This type extends the Metadata metadata type and
inherits its fullName field.
631
Metadata Types
SharingBaseRule
Note: You can’t create a SharingBaseRule component directly. Use the components under SharingRules instead.
Version
SharingBaseRule replaces BaseSharingRule and is available in API version 33.0 and later.
Fields
Field
Field Type
Description
accessLevel
string
Required. The access level that the sharing rule
grants.
accountSettings
AccountSharingRuleSettings[]
The access level for the account’s children (case,
contact, and opportunity).
description
string
Describes the sharing rule. Maximum of 1000
characters.
label
string
Required. Label for the sharing rule.
sharedTo
SharedTo
Required. Specifies who the record should be
shared with.
AccountSharingRuleSettings
Defines the access level for the case, contact, and opportunity associated with the account.
Field
Field Type
Description
caseAccessLevel
string
Required. The access level that the user or group
has to cases associated with the account.
Possible values are:
• None
• Read
• Edit
contactAccessLevel
string
Required. The access level that the user or group
has to contacts associated with the account.
Possible values are:
• None
• Read
• Edit
632
Metadata Types
Field
SharingRules
Field Type
Description
opportunityAccessLevel string
Required. The access level that the user or group
has to opportunities associated with the account.
Possible values are:
• None
• Read
• Edit
SharingRules
Represents the base container for sharing rules, which can be criteria-based, ownership-based, or territory-based. SharingRules enables
you to share records with a set of users, using rules that specify the access level for the target user group.
This type extends the Metadata metadata type and inherits its fullName field. For more information, see “Sharing Rules” in the
Salesforce online help.
In API version 33.0 and later, retrieving, deleting, or deploying of all sharing rules in an organization is available . Wildcard support is also
available. You can’t retrieve, delete, or deploy manual sharing rules or sharing rules by their type (owner, criteria-based, or territory).
Declarative Metadata File Suffix and Directory Location
In API version 33.0 and later, components are stored in the sharingRules folder and their file name matches the object name with the
suffix .sharingRules. Criteria-based, owner-based, and territory-based sharing rules are all contained in a object.sharingRule
file.
Prior to API version 33.0, SharingRules components are stored in their corresponding object directory and the file name matches the
object name. For example, the accountSharingRules directory contains an Account.sharingRules file for account
sharing rules. SharingRules for custom objects are stored in the customObjectSharingRules directory, which contains files
with the .sharingRules extension such as ObjA__c.sharingRules, where ObjA refers to the developer name of a custom
object type.
Version
SharingRules components are available in API version 24.0 and later, but these components are no longer available in API version 33.0
and later: AccountSharingRules, CampaignSharingRules, CaseSharingRules, ContactSharingRules, LeadSharingRules,
OpportunitySharingRules, AccountTerritorySharingRules, CustomObjectSharingRules, UserSharingRules.
In API version 33.0 and later, use SharingCriteriaRule, SharingOwnerRule and SharingTerritoryRule.
Fields
The following information assumes that you are familiar with implementing sharing rules for standard objects and custom objects. For
more information on these fields, see “Sharing Settings” in the Salesforce online help.
633
Metadata Types
Field
SharingRules
Field Type
Description
sharingCriteriaRules SharingCriteriaRule[]
An array of criteria-based sharing rules. Available in API
version 33.0 and later.
SharingOwnerRule[]
An array of ownership-based sharing rules. Available in
API version 33.0 and later.
sharingOwnerRules
sharingTerritoryRules SharingTerritoryRule[]
An array of territory-based sharing rules. Available in API
version 33.0 and later.
SharingCriteriaRule
Defines a criteria-based sharing rule. It extends SharingBaseRule and inherits all its fields. Available in API version 33.0 and later.
Field
Field Type
Description
booleanFilter
string
Advanced filter conditions that are specified for the sharing
rule.
criteriaItems
FilterItem[]
An array of the boolean criteria (conditions) for the sharing
rule.
SharingOwnerRule
Defines a ownership-based sharing rule. It extends SharingBaseRule and inherits all its fields. Available in API version 33.0 and later.
Field
Field Type
Description
sharedFrom
SharedTo
Required. Specifies the record owners.
SharingTerritoryRule
Defines a territory-based sharing rule. It extends SharingOwnerRule and inherits all its fields. Available in API version 33.0 and later.
AccountSharingRules
Represents the sharing rules for accounts. It extends the SharingRules metadata type and inherits its fullName field. Only available
in API version 32.0 and earlier.
Field
Field Type
Description
criteriaBasedRules
AccountCriteriaBasedSharingRule[]
List that defines user criteria-based rules.
ownerRules
AccountOwnerSharingRule[]
List that defines user membership-based rules.
634
Metadata Types
SharingRules
CampaignSharingRules
Represents the sharing rules for campaigns. It extends the SharingRules metadata type and inherits its fullName field. Only available
in API version 32.0 and earlier.
Field
Field Type
Description
criteriaBasedRules
CampaignCriteriaBasedSharingRule[]
List that defines user criteria-based rules.
ownerRules
CampaignOwnerSharingRule[]
List that defines user membership-based rules.
CaseSharingRules
Represents the sharing rules for cases. It extends the SharingRules metadata type and inherits its fullName field. Only available in
API version 32.0 and earlier.
Field
Field Type
Description
criteriaBasedRules
CaseCriteriaBasedSharingRule[]
List that defines user criteria-based rules.
ownerRules
CaseOwnerSharingRule[]
List that defines user membership-based rules.
ContactSharingRules
Represents the sharing rules for contacts. It extends the SharingRules metadata type and inherits its fullName field. Only available
in API version 32.0 and earlier.
Field
Field Type
Description
criteriaBasedRules
ContactCriteriaBasedSharingRule[]
List that defines user criteria-based rules.
ownerRules
ContactOwnerSharingRule[]
List that defines user membership-based rules.
LeadSharingRules
Represents the sharing rules for leads. It extends the SharingRules metadata type and inherits its fullName field. Only available in
API version 32.0 and earlier.
Field
Field Type
Description
criteriaBasedRules
LeadCriteriaBasedSharingRule[]
List that defines user criteria-based rules.
ownerRules
LeadOwnerSharingRule[]
List that defines user membership-based rules.
OpportunitySharingRules
Represents the sharing rules for opportunities. It extends the SharingRules metadata type and inherits its fullName field. Only available
in API version 32.0 and earlier.
635
Metadata Types
SharingRules
Field
Field Type
Description
criteriaBasedRules
OpportunityCriteriaBasedSharingRule[]
List that defines user criteria-based rules.
ownerRules
OpportunityOwnerSharingRule[]
List that defines user membership-based rules.
AccountTerritorySharingRules
Represents the sharing rules for account territories. It extends the SharingRules metadata type and inherits its fullName field. Only
available in API version 32.0 and earlier.
Field
Field Type
Description
rules
AccountTerritorySharingRule[]
List that defines user membership-based rules. The list of
acceptable values for the sharedFrom fields are:
• territory
• territoryAndSubordinates
CustomObjectSharingRules
Represents the sharing rules for custom objects. It extends the SharingRules metadata type and inherits its fullName field. Only
available in API version 32.0 and earlier.
Field
Field Type
Description
criteriaBasedRules
CustomObjectCriteriaBasedSharingRule[] List that defines user criteria-based rules.
ownerRules
CustomObjectOwnerSharingRule[]
List that defines user membership-based rules.
UserSharingRules
Represents the sharing rules for users. With user sharing rules, you can share members of a group with members of another group. It
extends the SharingRules metadata type and inherits its fullName field. Only available in API version 32.0 and earlier.
Field
Field Type
Description
criteriaBasedRules
UserCriteriaBasedSharingRule[]
List that defines user criteria-based rules.
membershipRules
UserMembershipSharingRule[]
List that defines user membership-based rules.
Declarative Metadata Sample Definition
For retrieving sharing rules, see package.xml sample at Sharing Rules.
The following sample XML definition represents a criteria-based sharing rule in API version 33.0.
636
Metadata Types
SharingRules
AccountCriteriaShareWithCEOEditReadEditEditNamestartsWithTestmy account criteria rule descriptionCEO
The following sample XML definition represents an ownership-based sharing rule in API version 33.0.
MyCaseEditmy case test owner sharing rule descCOOCEO
The following sample XML definition represents a territory-based sharing rule in API version 33.0.
MyAccountTerritoryRuleReadNoneReadNoneMyAccountTerritoryRule descMy_territory
637
Metadata Types
SharingRules
CEO
The following is the definition of two account owner-based sharing rules in API version 32.0 and earlier. The file name corresponds to
Account.sharingRules under the accountSharingRules directory. In this definition, ownerRules corresponds to
AccountOwnerSharingRule.
G1Dev_G2NewG1DevG2NewRead
NoneReadG1Dev_G2NewEditG2New_R1NewG2NewR1NewEditReadEditG2New_R1NewNone
The following is the definition of a user criteria-based sharing rule and a user membership-based sharing rule in API version 32.0 and
earlier. The file name corresponds to User.sharingRules under the userSharingRules directory.
shareUsers2Asia_DivisionFirstName
638
Metadata Types
BaseSharingRule
equalsJohnshareUsers2ReadshareUsers1South_America_DivisionAsia_DivisionshareUsers1Read
The following shows a sample package.xml file.
ObjA__c.*SharingCriteriaRuleObjA__c.*SharingOwnerRule39.0
BaseSharingRule
This component is removed as of API version 33.0 and is available in earlier versions only. Use SharingBaseRule instead.
Represents the base container for criteria-based and owner-based sharing rules. This type extends the Metadata metadata type and
inherits its fullName field.
Note: You can’t create a BaseSharingRule component directly. Use the components under the CriteriaBasedSharingRule or
OwnerSharingRule metadata types instead.
Version
BaseSharingRule components are available in API version 24.0 and later.
Fields
For more information on these fields, see “Sharing Settings” in the Salesforce online help.
639
Metadata Types
CriteriaBasedSharingRule
Field
Field Type
Description
sharedTo
SharedTo
Required. Specifies who the record should be
shared with.
fullName
string
The unique identifier for API access. The
fullName can contain only underscores and
alphanumeric characters. It must be unique,
begin with a letter, not include spaces, not end
with an underscore, and not contain two
consecutive underscores. This field is inherited
from the Metadata component.
CriteriaBasedSharingRule
This component is removed as of API version 33.0 and is available in earlier versions only. Use SharingRules instead.
Represents a criteria-based sharing rule. CriteriaBasedSharingRule enables you to share records based on specific criteria. It extends the
BaseSharingRule metadata type and inherits its sharedTo field. For more information, see “Criteria-Based Sharing Rules Overview”
in the Salesforce online help.
Note: You can’t create a CrteriaBasedSharingRule component directly. Use the child components instead.
Declarative Metadata File Suffix and Directory Location
CriteriaBasedSharingRule components are stored within the SharingRules component in the criteriaBasedRules field.
Version
CriteriaBasedSharingRule components are available in API version 24.0 and later.
Fields
The following information assumes that you are familiar with implementing sharing rules for standard objects and custom objects. For
more information on these fields, see “Sharing Settings” in the Salesforce online help.
Field
Field Type
Description
criteriaItems
FilterItem[]
List that represents the criteria for the sharing
rule. The possible values are:
• field
• operation
• value
AccountCriteriaBasedSharingRule
Represents a criteria-based sharing rule for accounts. It extends the CriteriaBasedSharingRule metadata type and inherits its
criteriaItems field.
640
Metadata Types
CriteriaBasedSharingRule
AccountCriteriaBasedSharingRule is used by the criteriaBasedRules field in AccountSharingRules.
Field
Field Type
Description
accountAccessLevel
ShareAccessLevelNoNone Required. A value that represents the level of access that the
(enumeration of type string)
user or group has to the account. The possible values are:
• Read
• Edit
• All
booleanFilter
string
Represents the filter logic of the sharing rule.
caseAccessLevel
ShareAccessLevelNoAll Required. A value that represents the level of access that the
(enumeration of type string)
user or group has to cases associated with the account. The
possible values are:
• None
• Read
• Edit
contactAccessLevel
ShareAccessLevelNoAll Required. A value that represents the level of access that the
(enumeration of type string)
user or group has to contacts associated with the account. The
possible values are:
• None
• Read
• Edit
description
string
Represents the description of the sharing rule. Maximum of 1000
characters.
This field is available in API version 29.0 and later.
name
string
Required. Name for the sharing rule. Corresponds to Label in
the user interface.
opportunityAccessLevel ShareAccessLevelNoAll Required. A value that represents the level of access that a target
(enumeration of type string)
group is granted for any associated opportunity. The possible
values are:
• None
• Read
• Edit
CampaignCriteriaBasedSharingRule
Represents a criteria-based sharing rule for campaigns. It extends the CriteriaBasedSharingRule metadata type and inherits its
criteriaItems field.
CampaignCriteriaBasedSharingRule is used by the criteriaBasedRules field in CampaignSharingRules.
641
Metadata Types
CriteriaBasedSharingRule
Field
Field Type
Description
booleanFilter
string
Represents the filter logic of the sharing rule.
description
string
Represents the description of the sharing rule. Maximum of 1000
characters.
This field is available in API version 29.0 and later.
campaignAccessLevel
ShareAccessLevelNoNone Required. A value that represents the level of access that a target
(enumeration of type string)
group is granted for a campaign. The possible values are:
• Read
• Edit
• All
name
string
Required. Name for the sharing rule. Corresponds to Label in
the user interface.
CaseCriteriaBasedSharingRule
Represents a criteria-based sharing rule for cases. It extends the CriteriaBasedSharingRule metadata type and inherits its
criteriaItems field.
CaseCriteriaBasedSharingRule is used by the criteriaBasedRules field in CaseSharingRules.
Field
Field Type
Description
booleanFilter
string
Represents the filter logic of the sharing rule.
description
string
Represents the description of the sharing rule. Maximum of 1000
characters.
This field is available in API version 29.0 and later.
caseAccessLevel
ShareAccessLevelReadEdit Required. A value that represents the level of access being
(enumeration of type string)
granted for a case. The possible values are:
• Read
• Edit
name
string
Required. Name for the sharing rule. Corresponds to Label in
the user interface.
ContactCriteriaBasedSharingRule
Represents a criteria-based sharing rule for contacts. It extends the CriteriaBasedSharingRule metadata type and inherits its
criteriaItems field.
ContactCriteriaBasedSharingRule is used by the criteriaBasedRules field in ContactSharingRules.
642
Metadata Types
CriteriaBasedSharingRule
Field
Field Type
Description
booleanFilter
string
Represents the filter logic of the sharing rule.
description
string
Represents the description of the sharing rule. Maximum of 1000
characters.
This field is available in API version 29.0 and later.
contactAccessLevel
ShareAccessLevelReadEdit Required. A value that represents the level of access being
(enumeration of type string)
granted to the target group, role, or user for a contact. The
possible values are:
• Read
• Edit
name
string
Required. Name for the sharing rule. Corresponds to Label in
the user interface.
LeadCriteriaBasedSharingRule
Represents a criteria-based sharing rule for leads. It extends the CriteriaBasedSharingRule metadata type and inherits its criteriaItems
field.
LeadCriteriaBasedSharingRule is used by the criteriaBasedRules field in LeadSharingRules.
Field
Field Type
Description
booleanFilter
string
Represents the filter logic of the sharing rule.
description
string
Represents the description of the sharing rule. Maximum of 1000
characters.
This field is available in API version 29.0 and later.
leadAccessLevel
ShareAccessLevelReadEdit Required. A value that represents the level of allowed access.
(enumeration of type string)
The possible values are:
• Read
• Edit
name
string
Required. Name for the sharing rule. Corresponds to Label in
the user interface.
OpportunityCriteriaBasedSharingRule
Represents a criteria-based sharing rule for opportunities. It extends the CriteriaBasedSharingRule metadata type and inherits its
criteriaItems field.
OpportunityCriteriaBasedSharingRule is used by the criteriaBasedRules field in OpportunitySharingRules.
643
Metadata Types
CriteriaBasedSharingRule
Field
Field Type
Description
booleanFilter
string
Represents the filter logic of the sharing rule.
description
string
Represents the description of the sharing rule. Maximum of 1000
characters.
This field is available in API version 29.0 and later.
opportunityAccessLevel ShareAccessLevelReadEdit Required. A value that represents the level of allowed access.
(enumeration of type string)
The possible values are:
• Read
• Edit
name
string
Required. Name for the sharing rule. Corresponds to Label in
the user interface.
CustomObjectCriteriaBasedSharingRule
Represents a criteria-based sharing rule for custom objects. It extends the CriteriaBasedSharingRule metadata type and inherits its
criteriaItems field.
CustomObjectCriteriaBasedSharingRule is used by the criteriaBasedRules field in CustomObjectSharingRules.
Field
Field Type
Description
accessLevel
string
Required. A value that represents the type of allowed sharing.
The possible values are:
• Read
• Edit
• All
booleanFilter
string
Represents the filter logic of the sharing rule.
description
string
Represents the description of the sharing rule. Maximum of 1000
characters.
This field is available in API version 29.0 and later.
name
string
Required. Name for the sharing rule. Corresponds to Label in
the user interface.
UserCriteriaBasedSharingRule
Represents a criteria-based sharing rule for users. It extends the CriteriaBasedSharingRule metadata type and inherits its criteriaItems
field.
UserCriteriaBasedSharingRule is used by the criteriaBasedRules field in UserSharingRules.
644
Metadata Types
CriteriaBasedSharingRule
Field
Field Type
Description
booleanFilter
string
Represents the filter logic of the sharing rule.
description
string
Represents the description of the sharing rule. Maximum of 1000
characters.
This field is available in API version 29.0 and later.
name
string
Required. Name for the sharing rule. Corresponds to Label in
the user interface.
userAccessLevel
ShareAccessLevelReadEdit Required. A value that represents the type of allowed sharing.
(enumeration of type string)
The possible values are:
• Read
• Edit
Declarative Metadata Sample Definition
The following is the definition of two owner-based sharing rules and one criteria-based sharing rule containing two criteria items. The
file name corresponds to the Account.sharingRules file under the accountSharingRules directory.
G1Dev_G2NewG2NewG1DevReadNoneReadG2New_R1NewR1NewG2NewEditReadEditG2New_R1NewNoneAccountCriteriaG1
645
Metadata Types
OwnerSharingRule
BillingCityequalsSan FranciscoMyChkBox__cnotEqualFalseRead1 OR 2NoneReadAccountCriteriaNone
OwnerSharingRule
This component is removed as of API version 33.0 and is available in earlier versions only.
Represents an ownership-based sharing rule. OwnerSharingRule enables you to share records owned by a set of users with another set,
using rules that specify the access level of the target user group. It extends the BaseSharingRule metadata type and inherits its SharedTo
field. For more information, see “Sharing Rules” in the Salesforce online help.
Note: You can’t create a OwnerSharingRule component directly. Use the child components instead.
Declarative Metadata File Suffix and Directory Location
OwnerSharingRules components are stored within the SharingRules component in the ownerRules field.
Version
OwnerSharingRules components are available in API version 24.0 and later.
Fields
The following information assumes that you are familiar with implementing sharing rules for standard objects and custom objects. For
more information on these fields, see “Sharing Settings” in the Salesforce online help.
Field
Field Type
Description
sharedFrom
SharedTo
Required. Specifies the record owners.
sharedTo
SharedTo
Required. Specifies who the record should be
shared with.
fullName
string
The unique identifier for API access. The
fullName can contain only underscores and
646
Metadata Types
Field
OwnerSharingRule
Field Type
Description
alphanumeric characters. It must be unique,
begin with a letter, not include spaces, not end
with an underscore, and not contain two
consecutive underscores. This field is inherited
from the Metadata component.
AccountOwnerSharingRule
Represents a sharing rule for an account with users other than the owner. It extends the OwnerSharingRule metadata type and inherits
its fullName, sharedFrom, and sharedTo fields.
AccountOwnerSharingRule is used by the ownerRules field in AccountSharingRules.
Field
Field Type
Description
accountAccessLevel
ShareAccessLevelNoNone Required. A value that represents the level of access that a group
(enumeration of type string)
or role has to the account. The possible values are:
• Read
• Edit
• All
caseAccessLevel
ShareAccessLevelNoAll Required. A value that represents the level of access that a group
(enumeration of type string)
or role has to cases associated with the account. The possible
values are:
• None
• Read
• Edit
contactAccessLevel
ShareAccessLevelNoAll Required. A value that represents the level of access that a group
(enumeration of type string)
or role has to contacts associated with the account. The possible
values are:
• None
• Read
• Edit
description
string
Represents the description of the sharing rule. Maximum of 1000
characters.
This field is available in API version 29.0 and later.
name
string
Required. Name for the sharing rule. Corresponds to Label in
the user interface.
647
Metadata Types
Field
OwnerSharingRule
Field Type
Description
opportunityAccessLevel ShareAccessLevelNoAll Required. A value that represents the level of access that a group
(enumeration of type string)
or role is granted for any associated opportunity. The possible
values are:
• None
• Read
• Edit
CampaignOwnerSharingRule
Represents a sharing rule for a campaign with users other than the owner. It extends the OwnerSharingRule metadata type and inherits
its fullName, sharedFrom, and sharedTo fields.
CampaignOwnerSharingRule is used by the ownerRules field in CampaignSharingRules.
Field
Field Type
Description
campaignAccessLevel
ShareAccessLevelNoNone A value that represents the level of access that a group or role
(enumeration of type string)
is granted for a campaign. The possible values are:
• Read
• Edit
• All
description
string
Represents the description of the sharing rule. Maximum of 1000
characters.
This field is available in API version 29.0 and later.
name
string
Name for the sharing rule. Corresponds to Label in the user
interface.
CaseOwnerSharingRule
Represents a sharing rule for a case with users other than the owner. It extends the OwnerSharingRule metadata type and inherits its
fullName, sharedFrom, and sharedTo fields.
CaseOwnerSharingRule is used by the ownerRules field in CaseSharingRules. All the following fields are required.
Field
Field Type
Description
caseAccessLevel
ShareAccessLevelReadEdit Required. A value that represents the level of access that a group
(enumeration of type string)
or role is granted for a case. The possible values are:
• Read
• Edit
648
Metadata Types
OwnerSharingRule
Field
Field Type
Description
description
string
Represents the description of the sharing rule. Maximum of 1000
characters.
This field is available in API version 29.0 and later.
name
string
Required. Name for the sharing rule. Corresponds to Label in
the user interface.
ContactOwnerSharingRule
Represents a sharing rule for a contact with users other than the owner. It extends the OwnerSharingRule metadata type and inherits
its fullName, sharedFrom, and sharedTo fields.
ContactOwnerSharingRule is used by the ownerRules field in ContactSharingRules.
Field
Field Type
Description
contactAccessLevel
ShareAccessLevelReadEdit Required. A value that represents the level of access that a group
(enumeration of type string)
or role is granted for a contact. The possible values are:
• Read
• Edit
description
string
Represents the description of the sharing rule. Maximum of 1000
characters.
This field is available in API version 29.0 and later.
name
string
Required. Name for the sharing rule. Corresponds to Label in
the user interface.
LeadOwnerSharingRule
Represents a sharing rule for a lead with users other than the owner. It extends the OwnerSharingRule metadata type and inherits its
fullName, sharedFrom, and sharedTo fields.
LeadOwnerSharingRule is used by the ownerRules field in LeadSharingRules.
Field
Field Type
Description
leadAccessLevel
ShareAccessLevelReadEdit Required. A value that represents the level of access that a group
(enumeration of type string)
or role is granted for a lead. The possible values are:
• Read
• Edit
description
string
Represents the description of the sharing rule. Maximum of 1000
characters.
This field is available in API version 29.0 and later.
649
Metadata Types
OwnerSharingRule
Field
Field Type
Description
name
string
Required. Required. Name for the sharing rule. Corresponds to
Label in the user interface.
OpportunityOwnerSharingRule
Represents a sharing rule for an opportunity with users other than the owner. It extends the OwnerSharingRule metadata type and
inherits its fullName, sharedFrom, and sharedTo fields.
OpportunityOwnerSharingRule is used by the ownerRules field in OpportunitySharingRules.
Field
Field Type
Description
name
string
Required. Name for the sharing rule. Corresponds to Label in
the user interface.
description
string
Represents the description of the sharing rule. Maximum of 1000
characters.
This field is available in API version 29.0 and later.
opportunityAccessLevel ShareAccessLevelReadEdit Required. A value that represents the level of access that a group
(enumeration of type string)
or role is granted for an opportunity. The possible values are:
• Read
• Edit
AccountTerritorySharingRule
Represents a rule for sharing an account within a territory. It extends the OwnerSharingRule metadata type and inherits its fullName,
sharedFrom, and sharedTo fields.
AccountTerritorySharingRule is used by the ownerRules field in AccountTerritorySharingRules.
Field
Field Type
Description
accountAccessLevel
ShareAccessLevelNoNone Required. A value that represents the level of access that a
(enumeration of type string)
Territory or TerritoryAndSubordinates group is granted for an
account territory. The possible values are:
• Read
• Edit
• All
caseAccessLevel
ShareAccessLevelNoAll Required. A value that represents the level of access that a
(enumeration of type string)
Territory or TerritoryAndSubordinates group is granted for all
child cases to an account. The possible values are:
• None
• Read
650
Metadata Types
Field
OwnerSharingRule
Field Type
Description
• Edit
contactAccessLevel
ShareAccessLevelNoAll Required. A value that represents the level of access that a
(enumeration of type string)
Territory or TerritoryAndSubordinates group is granted for all
related contacts on an account. The possible values are:
• None
• Read
• Edit
description
string
Represents the description of the sharing rule. Maximum of 1000
characters.
This field is available in API version 29.0 and later.
name
string
Required. Name for the sharing rule. Corresponds to Label in
the user interface.
opportunityAccessLevel ShareAccessLevelNoAll Required. A value that represents the level of access that a
(enumeration of type string)
Territory or TerritoryAndSubordinates group is granted for all
opportunities associated with an account. The possible values
are:
• None
• Read
• Edit
CustomObjectOwnerSharingRule
Represents a sharing rule for custom objects. It extends the OwnerSharingRule metadata type and inherits its fullName, sharedFrom,
and sharedTo fields.
CustomObjectOwnerSharingRule is used by the ownerRules field in CustomObjectSharingRules.
Field
Field Type
Description
accessLevel
string
Required. A value that represents the level of access that a group
or role is granted to a custom object. The possible values are:
• Read
• Edit
• All
description
string
Represents the description of the sharing rule. Maximum of 1000
characters.
This field is available in API version 29.0 and later.
name
string
Required. Name for the sharing rule. Corresponds to Label in
the user interface.
651
Metadata Types
SharingSet
UserMembershipSharingRule
Represents a sharing rule to share members of a group with another group of users. It extends the OwnerSharingRule metadata type
and inherits its fullName, sharedFrom, and sharedTo fields.
UserMembershipSharingRule is used by the ownerRules field in UserSharingRules on page 636.
Field
Field Type
Description
description
string
Represents the description of the sharing rule. Maximum of 1000
characters.
This field is available in API version 29.0 and later.
name
string
Required. Name for the sharing rule. Corresponds to Label in
the user interface.
userAccessLevel
ShareAccessLevelReadEdit Required. A value that represents the level of access that a group
(enumeration of type string)
or role is granted for a user. The possible values are:
• Read
• Edit
SharingSet
Represents a sharing set. A sharing set defines an access mapping that grants portal or community users access to objects that are
associated with their accounts or contacts. This type extends the Metadata metadata type and inherits its fullName field.
For example, you can grant portal or community users access to all cases related to their account record. Similarly, you can grant portal
or community users access to all cases related to a parent account that is identified on the user’s account record. For more information,
see “Sharing Set Overview” in the Salesforce Help.
File Suffix and Directory Location
SharingSet components have the suffix .sharingSet and are stored in the sharingSets folder.
Version
SharingSet components are available in API version 30.0 and later.
Fields
Field Name
Field Type
Description
accessMappings
AccessMapping[]
A list of access mappings on a sharing set.
description
string
The sharing set description. Limit: 255 characters.
name
string
Required. The unique identifier for API access. Corresponds to Sharing
Set Name on the user interface.
652
Metadata Types
SharingSet
Field Name
Field Type
Description
profiles
string[]
The profiles of users that are granted access to the target objects. Valid
values are:
• Authenticated Website
• Customer Community User
• Customer Community Login User
• High Volume Customer Portal User
• Overage Authenticated Website User
• Overage High Volume Customer Portal User
AccessMapping
AccessMapping represents an access mapping in the sharing set, which grants access to a target object by looking up to an account or
contact associated with the user.
You can grant portal users access to a target object, or to both a target object and its associated objects, such as an account and its
contacts and cases.
Field Name
Field Type
Description
accessLevel
string
The target object access level granted to the portal user. Valid values are:
• Read
• Edit
objectField
string
A lookup to the target object, which supports standard or custom fields, or an
Id. For accounts or cases associated with entitlements, use
Entitlement.Account or Entitlement.Case.
object
string
The target object to which the portal user is gaining access, and refers to one
of the following:
• Account
• Contact
• Case
• ServiceContract
• User
• Custom Objects (e.g. ObjA__c)
Portal users gain access to all order entitlements and order items under an
account to which they have access.
userField
string
The user’s lookup to an account, contact, or a standard or custom field derived
from an account or contact. Either the user or the user’s manager can be used
in the lookup. Valid values are:
• Account
• Account.Field
653
Metadata Types
Field Name
SharingSet
Field Type
Description
• Contact
• Contact.Field
• Manager.Account
• Manager.Contact
Field refers to a standard or custom field based on an account or contact.
Declarative Metadata Sample Definition
The following is an example of a SharingSet component that grants users access to all contacts whose ReportsTo fields match the
users’ contacts.
ReadReportsToContactUser Access MappingUsercustomer community user
The following is an example of a SharingSet component that grants users access to all cases that are related to an entitlement, which is
associated with the user’s account.
CaseEditEntitlement.AccountAccount
The following is an example of a SharingSet component with a list of access mappings.
This is a basic sharing set with several access mappings.Basiccustomer community userReadIdAccount
654
Metadata Types
SiteDotCom
EditAccountAccountEditContactContactReadAccountLookup__cAccount
The following is an example package.xml that references the previous definition.
SharingSetBasicHVPUAccessible__c.AccountLookup__cHVPUAccessible__c.ContactLookup__cCustomFieldHVPUAccessible__cCustomObjectBasicSharingSet30.0
SiteDotCom
Represents a site for deployment. It extends the MetadataWithContent type and inherits its fullName and content fields.
Declarative Metadata File Suffix and Directory Location
SiteDotCom components are stored in the siteDotComSites directory of the corresponding package directory. The file name for
the metadata .xml file is [sitename].site-meta.xml. The file name for the site file is [sitename].site
655
Metadata Types
Skill
Note: There is a file size limitation when using the Metadata API to deploy a site from sandbox to production. The assets in the
.site file can’t be larger than 40 MB. The site gets created, but the assets show in the new site as broken. To fix the assets, export
the assets from the sandbox environment separately and then import them into your new site.
Version
SiteDotCom components are available in API version 30.0 and later.
Fields
Field
Field Type
Description
label
string
The name of the site you are deploying.
siteType
(enumeration of type
string)
Required. Identifies whether the site is a
ChatterNetworkPicasso site for Salesforce
Communities sites, or a Siteforce site for
Site.com sites.
Declarative Metadata Sample Definition
Sample XML definitions for SiteDotCom are shown below.
SiteforceChatterNetworkPicasso
Skill
Represents the settings for a skill used for field service or to route chats to agents in Live Agent, such as the name of the skill and which
agents the skills are assigned to. This type extends the Metadata metadata type and inherits its fullName field.
File Suffix and Directory Location
Skill values are stored in the .skill file in the skills directory.
656
Metadata Types
Skill
Version
Skill is available in API version 28.0 and later.
Fields
Field Name
Field Type
Description
assignments
SkillAssignments
Specifies how skills are assigned to Live Agent users. Skills
can be assigned to sets of users or sets of profiles.
description
string
Specifies the description of the skill. This field is available in
API version 38.0 and later.
label
string
Specifies the name of the skill.
SkillAssignments
Represents which users and user profiles to whom specific skills are assigned.
Fields
Field Name
Field Type
Description
profiles
SkillProfileAssignments
Specifies the profiles that are associated with a specific skill.
users
SkillUserAssignments
Specifies the users that are associated with a specific skill.
SkillProfileAssignments
Represents the profiles that are associated with a specific skill.
Fields
Field Name
Field Type
Description
profile
string
Specifies the custom name of the profile associated with a
specific skill.
SkillUserAssignments
Represents the users that are associated with a specific skill.
657
Metadata Types
StandardValueSet
Fields
Field Name
Field Type
Description
user
string
Specifies the username of the user associated with a specific
skill.
Declarative Metadata Sample Definition
This is a sample of a skill file.
LiveAgentOperatorLiveAgentSupervisorjdoe@acme.com
StandardValueSet
Represents the set of values in a standard picklist field. This type extends the Metadata metadata type and inherits its fullName field.
File Suffix and Directory Location
StandardValueSet components have the suffix .standardValueSet and are stored in the standardValueSets folder.
Version
StandardValueSet components are available in API version 38.0 and later.
Note: StandardValueSet isn’t available in Tooling API. Picklist elements in Tooling API are represented as in API version 37.0.
Fields
Field Name
Field Type
Description
sorted
boolean
Required. Indicates whether a global value set is sorted in alphabetical
order. By default, this value is false.
standardValue
StandardValue[]
Defines each value in a standard picklist’s value set.
658
Metadata Types
StandardValueSetTranslation
Declarative Metadata Sample Definition
The following example shows a StandardValueSet component that’s defined as the Stage standard picklist on a customized opportunity
object.
OpportunityStageClosed AbandonedClosed WonClosed LostOpportunityStageNamePicklistObjectWithValueSetReadWrite
For a list of standard value set names for standard picklists, see StandardValueSet Names and Standard Picklist Fields.
StandardValueSetTranslation
Contains details for a standard picklist translation. It returns a translated standard value set.This type extends the Metadata metadata
type and inherits its fullName field.
File Suffix and Directory Location
StandardValueSetTranslation components have the suffix .standardValueSetTranslation and are stored in the
standardValueSetTranslations folder.
Translations are stored in a file with a format of ValueSetName-lang.standardValueSetTranslation, where
ValueSetName is the global value set’s name, and lang is the translation language.
Version
StandardValueSetTranslation components are available in API version 38.0 and later.
659
Metadata Types
StaticResource
Fields
Field
Field Type
Description
valueTranslation
ValueTranslation[]
A list of values from global value sets to be translated.
Declarative Metadata Sample Definition
The following is an example of a StandardValueSetTranslation component. When a value isn’t translated, its translation becomes a
comment that’s paired with its masterLabel.
ColdHotWarm
The following is an example package.xml that references the StandardValueSetTranslation definition.
AccountRating-frStandardValueSetTranslation38.0
SEE ALSO:
Translations
StaticResource
Represents a static resource file, often a code library in a ZIP file. This type extends the MetadataWithContent metadata type and inherits
its content and fullName fields.
Static resources allow you to upload content that you can reference in a Visualforce page, including archives (such as .zip and .jar files),
images, style sheets, JavaScript, and other files.
660
Metadata Types
StaticResource
File Suffix and Directory Location
The file suffix is .resource for the template file. The accompanying metadata file is named resource-meta.xml.
Static resource components are stored in the staticresources folder in the corresponding package directory.
Version
Static resources are available in API version 12.0 and later.
Fields
This metadata type contains the following fields:
Field Name
Field Type
cacheControl StaticResourceCacheControl
(enumeration of type string)
Description
Required. Indicates whether the static resource is marked with a public caching
tag so that a third-party delivery client can cache the content. This is a new field
in API version 14.0. The valid values are:
• Private
• Public
content
base64Binary
The static resource content. Base 64-encoded binary data. Prior to making an
API call, client applications must encode the binary attachment data as base64.
Upon receiving a response, client applications must decode the base64 data to
binary. This conversion is usually handled for you by a SOAP client. This field is
inherited from the MetadataWithContent component.
contentType
string
Required. The content type of the file, for example text/plain.
description
string
The description of the static resource.
fullName
string
The static resource name. The name can only contain characters, letters, and the
underscore (_) character, must start with a letter, and cannot end with an
underscore or contain two consecutive underscore characters.
Inherited from the Metadata component, this field is not defined in the WSDL
for this component. It must be specified when creating, updating, or deleting.
See create() to see an example of this field specified for a call.
Declarative Metadata Sample Definition
text/plainTest Resource
661
Metadata Types
SynonymDictionary
SynonymDictionary
Represents a set of synonym groups, which are groups of words or phrases that are treated as equivalent in users’ searches. You can
define synonym groups to optimize search results for acronyms, variations of product names, and other terminology unique to your
organization.
Synonyms are available in Service Cloud features such as Salesforce Knowledge. This type extends the Metadata metadata type and
inherits its fullName field.
File Suffix and Directory Location
SynonymDictionary components have the suffix .synonymDictionary and are stored in the synonymDictionaries folder.
Version
SynonymDictionary components are available in API version 29.0 and later.
Special Access Rules
Synonyms must be enabled in your organization. Only users with the “Manage Synonyms” permission can access this object.
Fields
Field Name
Field Type
Description
groups
SynonymGroup
The synonym groups defined in this dictionary.
isProtected
boolean
Indicates whether this component is protected (true) or not (false).
Protected components cannot be linked to or referenced by components
created in the installing organization.
label
string
Required. Specifies the display name of the synonym dictionary.
SynonymGroup
Represents a group of synonymous words or phrases.
Field Name
Field Type
Description
languages
Language
Required. Specifies the languages the synonym group applies to. If synonyms
are specific to a single language, specify only that language. If the synonyms
apply to multiple languages, specify multiple languages for one synonym
group.
662
Metadata Types
SynonymDictionary
Field Name
Field Type
Description
terms
string
Required. A word or phrase synonymous with other terms in the group.
Maximum of 50 characters. Minimum of two terms per group.
Synonym groups are symmetric, which means that if oranges and apples are
defined in a synonym group, a search for oranges will return a match for
apples, and vice versa for a search for apples.
Declarative Metadata Sample Definition
The following is an example of a SynonymDictionary component:
en_USSalesforcesalesforce.comThe Customer CompanySFDCfrrenaultclio
The following is an example package.xml that references the SynonymDictionary component.
Sample DictionarySynonymDictionary39.0
Usage
If you have existing synonym groups defined before API version 29.0, your existing groups are associated with a default dictionary called
_Default.
If you have a set of synonyms that require frequent updates, we recommend assigning the synonym group or groups to a dedicated
dictionary with a small number of groups. Each time you deploy an existing dictionary, all of its synonym groups are overwritten. We
don’t support deploying updates to only a single synonym group within a dictionary.
663
Metadata Types
Territory
Territory
Represents a territory in your organization.
Declarative Metadata File Suffix and Directory Location
The file suffix for territory components is .territory and components are stored in the territories directory of the
corresponding package directory.
Version
Territory components are available in API version 24.0 and later.
Fields
This metadata type extends to subtype RoleOrTerritory.
Field Name
Field Type
Description
accountAccessLevel
string
Specifies whether users in this territory can access accounts that are
assigned to this territory and are otherwise inaccessible. Valid values are:
• Read
• Edit
• All
If your organization’s sharing model for accounts is Public Read/Write,
valid values are only Edit and All.
If no value is set for this field, this field value uses the default access level
that is specified in the Manage Territory page in Setup.
This field is available in API version 31.0 and later.
fullName
string
The unique identifier for API access. The fullName can contain only
underscores and alphanumeric characters. It must be unique, begin with
a letter, not include spaces, not end with an underscore, and not contain
two consecutive underscores. This field is inherited from the Metadata
component. Corresponds to Territory Name in the user interface.
parentTerritory
string
The territory above this territory in the territory hierarchy.
Declarative Metadata Sample Definition
The following is the definition of a territory.
EditEdit
664
Metadata Types
Territory2
EditSample TerritoryfalseT22nameRead
Territory2
Represents the metadata associated with a sales territory in Territory Management 2.0. This type extends the Metadata metadata type
and inherits its fullName field.Available only if Territory Management 2.0 has been enabled for your organization.
File Suffix and Directory Location
Territory2 components have the suffix territory2 and are stored in the territories folder under the folder for the corresponding
Territory2Model.
Version
Territory2 components are available in API version 32.0 and later.
Special Access Rules
The Territory2Model object has a State field in the SOAP API. States include Planning, Active, Archived, and a number of
other states, such as Cloning, that indicate that a process is underway. Users who do not have the “Manage Territories” permission
can access only territories that belong to the model in Active state. The “Manage Territories” permission is required for deploy()
calls for all territory management entities, in addition to the “Modify All Data” permission required by Metadata API. Using retrieve()
without the “Manage Territories” permission will return only entities that belong to a Territory2Model in Active state. We recommend
against retrieving without the “Manage Territories” permission because the call will retrieve only partial data.
Fields
Field Name
Field Type
Description
accountAccessLevel
string
Specifies whether users in this territory can access accounts that are
assigned to this territory and are otherwise inaccessible. Valid values
are:
• Read
• Edit
• All
If your organization’s sharing model for accounts is Public Read/Write,
valid values are only Edit and All. If no value is set for this field,
this field value uses the default access level that is specified in
Territory2Settings as permitted by the organization’s sharing settings.
665
Metadata Types
Territory2
Field Name
Field Type
Description
caseAccessLevel
string
Specifies whether users in this territory can access cases that are
assigned to this territory and are otherwise inaccessible. Valid values
are:
• None
• Read
• Edit
No value should be specified if your organization’s sharing model for
cases/opportunities is Public Read/Write,If no value is set for this field,
this field value uses the default access level that is specified in
Territory2Settings as permitted by the organization’s sharing settings.
contactAccessLevel
string
Specifies whether users in this territory can access contacts that are
assigned to this territory and are otherwise inaccessible. Valid values
are:
• None
• Read
• Edit
No value should be specified if your organization’s sharing model for
contacts is Public Read/Write or Controlled By Parent,
customFields
FieldValue
Values for custom fields defined on the Territory2 object and used by
this territory. Their metadata is captured separately in CustomObject
on page 233. Note the following:
• Territory2 and Territory2Model objects do not handle values for
Text Area (Long), Text Area (Rich), and text-encrypted custom fields.
• Fields are referenced using their API names. Compound field types
like Geolocation will appear as their constituent column fields. For
example, nnn_Latitude__s, nnn_Longitude__s where
“nnn” is the field name and the suffixes are the Geolocation
components.
• Values of required custom fields are enforced during the
deploy() operation.
description
string
A description of the territory.
name
string
Required. The user interface label for the territory.
opportunityAccessLevel
string
Specifies whether users in this territory can access opportunities that
are assigned to this territory and are otherwise inaccessible. Valid values
are:
• None
• Read
• Edit
No value should be specified if your organization’s sharing model for
cases/opportunities is Public Read/Write,If no value is set for this field,
666
Metadata Types
Territory2
Field Name
Field Type
Description
this field value uses the default access level that is specified in
Territory2Settings as permitted by the organization’s sharing settings.
parentTerritory
string
The name of the territory’s parent. When you specify the parent territory,
use the developer name. Do not use the “fully qualified” name. Custom
fields with no values are retrieved with values of type: . You can also use syntax to remove existing values in custom
fields.
ruleAssociations
Territory2RuleAssociation Represents an object assignment rule and its association to a territory.
Use the developer name of the rule.
territory2Type
string
Required. The territory type that the territory belongs to.
FieldValue
Represents the values of custom fields on the Territory2 object. Available in API version 32.0 and later.
Field Name
Field Type
Description
name
string
Required. The user interface label for the territory.
value
any type
The value of the field, which can also be null. The field type is specified in
the XML and depends on the field value.
Territory2RuleAssociation
Represents the association of an object assignment rule to a territory. Available in API version 32.0 and later.
Field Name
Field Type
Description
inherited
boolean
Required. Indicates whether the rule is inherited from a parent territory (true)
or local to the current territory (false).
Rule inheritance flows from the parent territory where the rule is created to
the rule’s descendent territories (if any) in the territory model hierarchy. A local
rule is created within a single territory and affects that territory only.
ruleName
string
Required. The name of a rule associated with the territory. ruleName doesn’t
need to be fully qualified because Metadata API assumes that the rule belongs
to the same model as the territory.
667
Metadata Types
Territory2
Declarative Metadata Sample Definition
The following example shows the definition of a Territory2 component.
USAUnited States salesEditReadEditEditWorldwide_SalesGeoAccRule1TrueAccRule2
FalseActivation_DateTime__c2014-07-16T05:05:00.000ZAutoNumber__cT# 000001DeactivationDate__c2016-07-12External_Id__cAB2345ManagersPhone__c
The following is a package.xml sample. FY13 and FY14 represent the names of territory models and demonstrate that rules
can have identical developer names within different models. A wildcard character (*) in place of the model name can be used to retrieve
all rules in all models in an organization.
FY13
668
Metadata Types
Territory2Model
FY14Territory2ModelFY13.USAFY13.Worldwide_SalesFY14.APACFY14.USATerritory239.0
Usage
• Triggers defined on Territory2 will not fire during a deploy() operation.
• Territory Management 2.0 components don’t support packaging or change sets and aren’t supported in CRUD calls.
Territory2Model
Represents the metadata associated with a territory model in Territory Management 2.0. This type extends the Metadata metadata type
and inherits its fullName field.Available only if Territory Management 2.0 has been enabled for your Salesforce org.
File Suffix and Directory Location
Territory2Model components have the suffix territory2Model and are stored in the territory2Models folder.
Version
Territory2Model components are available in API version 32.0 and later.
Special Access Rules
The Territory2Model object has a State field in the SOAP API. States include Planning, Active, Archived, and a number of
other states, such as Cloning, that indicate that a process is underway. Users who do not have the “Manage Territories” permission
can access only models in Active state. The “Manage Territories” permission is required for deploy() calls for all territory
management entities, in addition to the “Modify All Data” permission required by Metadata API. Using retrieve() without the
“Manage Territories” permission will return only entities that belong to a Territory2Model in Active state. We recommend against
retrieving without the “Manage Territories” permission because the call will retrieve only partial data.
669
Metadata Types
Territory2Model
Fields
Field Name
Field Type
Description
customFields
FieldValue
Custom fields defined on the Territory2Model object and used by this
model. Their metadata is captured separately.
• Territory2 and Territory2Model objects do not handle values for Text
Area (Long), Text Area (Rich), and text-encrypted custom fields.
• Fields are referenced using their API names. Compound field types
like Geolocation will appear as their constituent column fields. For
example, nnn_Latitude__s, nnn_Longitude__s where
“nnn” is the field name and the suffixes are the Geolocation
components.
• Values of required custom fields are enforced during the
deploy() operation.
description
string
A description for the territory model.
name
string
Required. The user interface label for the territory model..
Declarative Metadata Sample Definition
The following example shows the definition of a Territory2Model component.
FY13Geographic allocationActivation_DateTime__c2014-07-16T05:05:00.000ZAutoNumber__cM# 000001DeactivationDate__c2016-07-12External_Id__c
670
Metadata Types
Territory2Rule
Usage
• The retrieve() call will not return models in these four states: Cloning, Cloning Failed, Deleting, and Deletion
Failed.
• Whenever a model is created, its initial state is Planning. You can only do a deploy() operation for models in Planning
or Active state. The same requirement applies to territories and rules associated with those models. For example, you might have
a model in Planning state on a sandbox org, and a model with the same developer name in Archived state on your production
org. The deploy() operation on production will fail because that model’s state is Archived and that state prevents changes
to the model.
• Because of the state restrictions, if you have territory models in different orgs with identical developer names and you attempt a
deploy() operation, Metadata API will attempt to create new models, but that operation will fail because of the developer name
conflict. For example, you might have a model in Planning state on a sandbox org, and a model with the same developer name
in Archived state on your production org. The deploy() operation on production will fail because that model’s state is
Archived and that state prevents changes to the model.
• If you try to delete a model that has territories, then the delete() call will change the model’s state to Deleting and cascade
delete all territories, rules, and user associations in the model. Deleting may take some time depending on the number of territries
in the model.
• Whenever a model is created, its initial state is Planning. If a model with the same developer name already exists, it will already
have a state, so we do not include the State field in Territory2.
• Territory Management 2.0 components don’t support packaging or change sets and aren’t supported in CRUD calls.
Territory2Rule
Represents the metadata associated with a territory assignment rule associated with an object, such as Account, in Territory Management
2.0. This type extends the Metadata metadata type and inherits its fullName field.Available only if Territory Management 2.0 has
been enabled for your Salesforce org.
File Suffix and Directory Location
Territory2Rule components have the suffix territory2Rule and are stored in the rules folder under the folder for the
corresponding Territory2Model.
Version
Territory2Rule components are available in API version 32.0 and later.
Special Access
The Territory2Model object has a State field in the SOAP API. States include Planning, Active, Archived, and a number of
other states, such as Cloning, that indicate that a process is underway. Users who do not have the “Manage Territories” permission
can access only rules that belong to the model in Active state. The “Manage Territories” permission is required for deploy() calls
for all territory management entities, in addition to the “Modify All Data” permission required by Metadata API. Using retrieve()
without the “Manage Territories” permission will return only entities that belong to a Territory2Model in Active state. We recommend
against retrieving without the “Manage Territories” permission because the call will retrieve only partial data.The SOAP API and the user
interface require that a user attempting to create or edit a rules has field-level security access to the fields referenced in the rule item.
671
Metadata Types
Territory2Rule
This restriction is relaxed for Metadata API deploy() operations, as those require “Modify All Data” and “Manage Territories” permissions.
“Modify All Data” is the base permission requirement for all Metadata API operations.
Fields
Field Name
Field Type
Description
active
boolean
Required. Indicates whether the rule is active (true) or inactive
(false). Via the API, active rules run automatically when object records
are created and edited. The exception is when the value of the
IsExcludedFromRealign field on an object record is true,
which prevents record assignment rules from evaluating that record.
booleanFilter
string
An advanced filter condition. For example: (1 AND 2) OR 3.
Numbering must start at 1 and must be contiguous.
name
string
Required. The user interface label for the rule.
objectType
string
Required. The object that the rule is defined for. For API version 32.0, the
only available object is Account.
ruleItems
Territory2RuleItem
on page 672
The items that define a rule’s the selection criteria, such as Billing
State equals California.
Territory2RuleItem
Represents the association of a rule item to a rule. Available in API version 32.0 and later.
Field Name
Field Type
Description
field
string
The standard or custom object field that the rule item operates on.
operation
FilterOperation
The criterion to apply for the rule item. For example: equals or starts
(enumeration of type with.
string)
value
string
The field value or values to evaluate. For example: if the field is Billing
ZIP/Postal Code, a value might be 94105.
Declarative Metadata Sample Definition
The following example shows the definition of a Territory2RuleItem component.
To capture northern CA based accountsAccountTrue
672
Metadata Types
Territory2Type
BillingZipcontains<94105,94404,94536/value>
IndustryequalsITsomeCustomField__cgreater_than50000(1 OR 2) AND 3
The following is a package.xml sample. FY13 and FY14 represent names of territory models and demonstrate that rules can
have identical developer names within different models. A wildcard character (*) in place of the model name can be used to retrieve all
rules in all models in an org.
FY13FY14Territory2ModelFY13.AccRule1FY14.AccRule1Territory2Rule39.0
Usage
• A territory rule can have up to 10 rule items.
• The sort order of rule items is implicitly derived from the position of the rule items in the XML
• Rules can’t be run via Metadata API.
• Territory Management 2.0 components don’t support packaging or change sets and aren’t supported in CRUD calls.
Territory2Type
Represents the metadata for a category of territories in Territory Management 2.0. Every Territory2 must have a Territory2Type. This type
extends the Metadata metadata type and inherits its fullName field.Available only if Enterprise Territory Management has been
enabled for your Salesforce org.
673
Metadata Types
Territory2Type
File Suffix and Directory Location
Territory2Type components have the suffix territory2Type and are stored in the territory2Types folder.
Version
Territory2Type components are available in API version 32.0 and later.
Special Access Rules
Users without the “Manage Territories” permission will be able to retrieve all the Territory2Types in the org. “Manage Territories” permission
is required for the deploy() operation, in addition to the “Modify All Data” permission required by the Metadata API.
Fields
Field Name
Field Type
Description
description
string
A description of the territory type.
name
string
Required. The user interface label for the territory type.
priority
int
Required. Used for Filter-Based Opportunity Territory Assignment
(Pilot in Spring ’15 / Metadata API version 33). Lets you specify a
priority for a territory type. For opportunity assignments, the filter
examines all territories assigned to the account that the opportunity
is assigned to. The account-assigned territory whose territory type
priority is highest is then assigned to the opportunity. The
priority field value on each territory type must be unique.
Further, if there are multiple territories with the same territory type
(and therefore the same priority) assigned to the account, no territory
is not assigned to the opportunity.
Declarative Metadata Sample Definition
The following example shows the definition of a Territory2Type component.
GeoGeographic allocation
Usage
Territory Management 2.0 components don’t support packaging or change sets and aren’t supported in CRUD calls.
674
Metadata Types
TransactionSecurityPolicy
TransactionSecurityPolicy
Represents a transaction security policy definition. Transaction Security policies give you a way to look through events in your organization
and specify actions to take when certain combinations occur.
This type extends the Metadata metadata type and inherits its fullName field.
File Suffix and Directory Location
TransactionSecurityPolicy components have the suffix .transactionSecurityPolicy and are stored in the
transactionSecurityPolicies folder.
Version
TransactionSecurityPolicy components are available in API version 35.0 and later.
Fields
Field Name
Field Type
Description
action
TransactionSecurityAction
Required. Describes the action to take when the matching
Transaction Security policy is triggered.
active
boolean
Required. If true, the policy is enabled and is actively monitoring
its event.
apexClass
string
Required. The name of the class that implements the
TxnSecurity.PolicyCondition interface for this policy.
description
string
Optional. A description of the policy.
developerName
string
Optional. This unique name prevents conflicts with other policies
that have the same masterLabel. This name can contain only
underscores and alphanumeric characters, and must be unique in
your org. It must begin with a letter, not include spaces, not end
with an underscore, and not contain two consecutive underscores.
eventType
MonitoredEvents (enumeration Indicates which type of event is being monitored. Valid values are:
of type string)
• AccessResource—Notifies you when the selected
resource has been accessed.
• AuditTrail—Reserved for future use.
• DataExport—Notifies you when the selected object type
has been exported using the Data Loader API client.
• Entity—Notifies you on use of an object type such as an
authentication provider or client browser.
• Login—Notifies you when a user logs in.
675
Metadata Types
TransactionSecurityPolicy
Field Name
Field Type
Description
executionUser
string
Required. The name of the user to notify when the policy is
triggered, if any notifications have been selected. This user must
have the System Administrator profile.
masterLabel
string
Optional. The master label for this object. This display value is the
internal label that is not translated.
resourceName
string
Required. A resource used to narrow down the conditions under
which the policy triggers. For example, with a Login event, you
can add a resource to specify that only a specific login URL triggers
the policy. The resources available depend on the Event Type
field. Valid resources are grouped below by event type.
• AccessResource—EventTimestamp, SessionLevel, SourceIp
• DataExport—EventTimestamp, SessionLevel, SourceIp
• Entity—AuthorizeUrl, ConsumerKey, ConsumerSecret,
DefaultScopes, DeveloperName, ErrorUrl, FriendlyName,
IconUrl, IdTokenIssuer, LogoutUrl, TokenUrl, UserInfoUrl
• Login—ApiType, ApiVersion, Application, Browser,
ClientVersion, LoginUrl, Platform, Status
TransactionSecurityAction
Describes the action to take when the matching Transaction Security policy is triggered.
Field Name
Field Type
Description
block
boolean
Required. If true, the requested operation is blocked. This action
only applies to Login and AccessResource events.
endSession
boolean
Required. If true, a current session must be closed before a new
session can be started. This action only applies to Login events.
notifications
TransactionSecurityNotification[] Specifies how to notify the ystem administrator when the action
is triggered. There can be none, one, or multiple notifications.
twoFactorAuthentication boolean
Required. If true, two-factor authentication is required for a
higher level of access before the requested operation can continue.
This action only applies to Login and AccessResource events.
TransactionSecurityNotification
Describes who to notify and how to notify them when the matching Transaction Security policy is triggered.
Field Name
Field Type
Description
inApp
boolean
True if an in-app notification is selected.
676
Metadata Types
Translations
Field Name
Field Type
Description
sendEmail
boolean
True if an email notification is selected.
user
string
The administrator to receive the notification. This user must belong
to the System Administrator profile.
Declarative Metadata Sample Definition
The following is an example of a TransactionSecurityPolicy component.
truefalsefalsetrueadmin@your.orgfalsetrueTxnSecurityMdApiPolicyLoginadmin@your.orgLoginHistory
The following is an example package manifest used to deploy or retrieve the transaction security metadata for an organization.
MySecurityPolicyTransactionSecurityPolicy35.0
Translations
This metadata type allows you to work with translations for various supported languages. This type extends the Metadata metadata
type and inherits its fullName field. The ability to translate component labels is part of the Translation Workbench. For more information,
see “Enable and Disable the Translation Workbench” in the Salesforce online help.
Language
A two-character language code identifies each language, such as en, or a five-character locale code, such as en_AU.
677
Metadata Types
Translations
Note: Setting a default locale is different from setting a default language.
Salesforce offers full support for the following languages.
• Chinese (Simplified): zh_CN
• Chinese (Traditional): zh_TW
• Danish: da
• Dutch: nl_NL
• English: en_US
• Finnish: fi
• French: fr
• German: de
• Italian: it
• Japanese: ja
• Korean: ko
• Norwegian: no
• Portuguese (Brazil): pt_BR
• Russian: ru
• Spanish: es
• Spanish (Mexico): es_MX
• Swedish: sv
• Thai: th
End-user languages are useful if you have a multilingual organization or partners who speak languages other than your company’s
default language. For end-user languages, Salesforce provides translated labels for all standard objects and pages, except administrative
pages, Setup, and Help. When you specify an end-user language, labels and Help that aren’t translated appear in English. End-user
languages are intended only for personal use by end users. Don’t use end-user languages as corporate languages. Salesforce doesn’t
provide customer support in end-user languages.
End-user languages include:
• Arabic: ar
• Bulgarian: bg
• Croatian: hr
• Czech: cs
• English (UK): en_GB
• Greek: el
• Hebrew: iw
• Hungarian: hu
• Indonesian: in
• Polish: pl
• Portuguese (Portugal): pt_PT
• Romanian: ro
• Slovak: sk
• Slovenian: sl
678
Metadata Types
Translations
• Turkish: tr
• Ukrainian: uk
• Vietnamese: vi
Note: Salesforce provides limited support for right-to-left languages—Arabic and Hebrew—for the following features.
• Live Agent
• Cases
• Accounts
These features are not supported in Lightning Experience, the Salesforce1 mobile app, any other mobile app or mobile browser,
or any user interface except Salesforce Classic. There is no guarantee that right-to-left languages function correctly with any other
Salesforce features. There are no plans to expand the list of supported features.
Features that aren’t supported for right-to-left languages include, but are not limited to, the following.
• Report Builder
• Generating quote PDFs
• Customizable forecasting
• Emails
• Salesforce Knowledge
• Feeds
• Communities
The absence of a feature from this list does not imply support. Only Live Agent, Cases, and Accounts are supported with right-to-left
languages.
In situations where Salesforce doesn’t provide default translations, use platform-only languages to localize apps and custom functionality
that you’ve built on the Salesforce App Cloud. You can translate items such as custom labels, custom objects, and field names. You can
also rename most standard objects, labels, and fields. Informative text and non-field label text aren’t translatable.
Platform-only languages are available in all places where you can select a language in the application. However, when you select a
platform-only language, all standard Salesforce labels default to English or, in select cases, to an end-user or fully supported language.
• Albanian: sq
• Arabic (Algeria): ar_DZ
• Arabic (Bahrain): ar_BH
• Arabic (Egypt): ar_EG
• Arabic (Iraq): ar_IQ
• Arabic (Jordan): ar_JO
• Arabic (Kuwait): ar_KW
• Arabic (Lebanon): ar_LB
• Arabic (Libya): ar_LY
• Arabic (Morocco): ar_MA
• Arabic (Oman): ar_OM
• Arabic (Qatar): ar_QA
• Arabic (Saudi Arabia): ar_SA
• Arabic (Sudan): ar_SD
• Arabic (Syria): ar_SY
679
Metadata Types
Translations
• Arabic (Tunisia): ar_TN
• Arabic (United Arab Emirates): ar_AE
• Arabic (Yemen): ar_YE
• Armenian: hy
• Basque: eu
• Bosnian: bs
• Bengali: bn
• Chinese (Simplified—Singapore): zh_SG
• Chinese (Traditional—Hong Kong): zh_HK
• English (Australia): en_AU
• English (Canada): en_CA
• English (Hong Kong): en_HK
• English (India): en_IN
• English (Ireland): en_IE
• English (Malaysia): en_MY
• English (Philippines): en_PH
• English (Singapore): en_SG
• English (South Africa): en_ZA
• Estonian: et
• French (Belgium): fr_BE
• French (Canada): fr_CA
• French (Luxembourg): fr_LU
• French (Switzerland): fr_CH
• Georgian: ka
• German (Austria): de_AT
• German (Luxembourg): de_LU
• German (Switzerland): de_CH
• Hindi: hi
• Icelandic: is
• Irish: ga
• Italian (Switzerland): it_CH
• Latvian: lv
• Lithuanian: lt
• Luxembourgish: lb
• Macedonian: mk
• Malay: ms
• Maltese: mt
• Romanian (Moldova): ro_MD
• Montenegrin: sh_ME
• Romansh: rm
680
Metadata Types
Translations
• Serbian (Cyrillic): sr
• Serbian (Latin): sh
• Spanish (Argentina): es_AR
• Spanish (Bolivia): es_BO
• Spanish (Chile): es_CL
• Spanish (Colombia): es_CO
• Spanish (Costa Rica): es_CR
• Spanish (Dominican Republic): es_DO
• Spanish (Ecuador): es_EC
• Spanish (El Salvador): es_SV
• Spanish (Guatemala): es_GT
• Spanish (Honduras): es_HN
• Spanish (Nicaragua): es_NI
• Spanish (Panama): es_PA
• Spanish (Paraguay): es_PY
• Spanish (Peru): es_PE
• Spanish (Puerto Rico): es_PR
• Spanish (United States): es_US
• Spanish (Uruguay): es_UY
• Spanish (Venezuela): es_VE
• Tagalog: tl
• Tamil: ta
• Urdu: ur
• Welsh: cy
Declarative Metadata File Suffix and Directory Location
Translations are stored in a file with a format of localeCode.translation, where localeCode is the locale code of the
translation language. For example, the file name for German translations is de.translation. The supported locale codes are listed
in Language.
Custom object translations are stored in the translations folder in the corresponding package directory.
Version
Translations components are available in API version 14.0 and later.
Fields
Field
Field Type
Description
customApplications
CustomApplicationTranslation[]
A list of custom application translations.
681
Metadata Types
Translations
Field
Field Type
Description
customLabels
CustomLabelTranslation[]
A list of custom label translations.
customPageWebLinks
CustomPageWebLinkTranslation[]
A list of translations for web links defined in a home page
component.
customTabs
CustomTabTranslation[]
A list of custom tab translations.
fullName
string
Required. The language code; for example, de for
German.
Inherited from Metadata, this field is not defined in the
WSDL for this metadata type. It must be specified when
creating, updating, or deleting. See create() to see
an example of this field specified for a call.
globalPicklists
GlobalPicklistTranslation[]
A list of global picklist translations. A global picklist’s
value set is inherited by all the custom picklist fields that
are based on it.
This field is available in API version 37.0 only and is
removed from later versions.
quickActions
GlobalQuickActionTranslation[]
A list of global (rather than object-specific) quick actions.
reportTypes
ReportTypeTranslation[]
A list of report type translations.
scontrols
ScontrolTranslation[]
A list of s-control translations.
CustomApplicationTranslation
CustomApplicationTranslation contains details for a custom application translation. For more details, see CustomApplication.
Field
Field Type
Description
label
string
Required. The translated custom application name. Maximum
of 765 characters.
name
string
Required. The name of the custom application.
CustomLabelTranslation
CustomLabelTranslation contains details for a custom label translation. For more details, see CustomLabels.
Field
Field Type
Description
label
string
Required. The translated custom label name. Maximum of 765
characters.
name
string
Required. The custom label name.
682
Metadata Types
Translations
CustomPageWebLinkTranslation
CustomPageWebLinkTranslation contains details for a translation of a web link defined in a home page component. For more details,
see CustomPageWebLink.
Field
Field Type
Description
label
string
Required. The translated web link.
name
string
Required. The name of the web link.
CustomTabTranslation
CustomTabTranslation contains details for a translation of a custom tab. For more details, see CustomTab.
Field
Field Type
Description
label
string
Required. The translated custom tab name.
name
string
Required. The custom tab name.
GlobalPicklistTranslation
Note: GlobalPicklistTranslation is available in API version 37.0 only and is removed from later versions.
GlobalPicklistTranslation contains details for a global picklist translation.
Translations are stored in a file with a format of globalPicklistName__e-lang.objectTranslation, where
globalPicklistName__e is the global picklist name, and lang is the translation language. To reference a global picklist
translation value, use globalPicklistName__e.value1, where value1 is the translated value for the user interface.
Here’s what translations look like for a global picklist.
transpicklistThreeTroisFourQuatre
Field
Field Type
Description
name
string
Required. Represents the name of a global picklist to be
translated.
683
Metadata Types
Translations
Field
Field Type
Description
picklistValues
PicklistValueTranslation[]
A list of picklist values from global picklists to be translated.
GlobalQuickActionTranslation
GlobalQuickActionTranslation contains details for the translation of a quick action, globally. For more information, see QuickAction.
Field
Field Type
Description
label
string
Required. The translated quick action name, globally.
name
string
Required. The quick action name.
ReportTypeTranslation
ReportTypeTranslation contains details for a translation of a custom report type. For more details, see ReportType.
Field
Field Type
Description
description
string
The translated report type description.
label
string
The translated report type name.
name
string
Required. The name of the report type.
sections
ReportTypeSectionTranslation[]
A list of report type section translations.
ReportTypeSectionTranslation
ReportTypeSectionTranslation contains details for a report type section translation.
Field
Field Type
Description
columns
ReportTypeColumnTranslation[]
A list of report type column translations.
label
string
The translated report type section name.
name
string
Required. The name of the report type section.
ReportTypeColumnTranslation
ReportTypeColumnTranslation contains details for a report type column translation.
Field
Field Type
Description
label
string
Required. The translated report type column name.
name
string
Required. The report type column name.
684
Metadata Types
Translations
ScontrolTranslation
Important: Visualforce pages supersede s-controls. Organizations that haven’t previously used s-controls can’t create them.
Existing s-controls are unaffected, and can still be edited.
ScontrolTranslation contains details for a translation of an s-control. For more information, see “About S-Controls” in the Salesforce online
help.
Field
Field Type
Description
label
string
Required. The translated s-control name.
name
string
Required. The name of the s-control.
Declarative Metadata Sample Definition
A sample XML definition of a translations component is shown below.
Quote ManagerquoteManual
Usage
When you use the retrieve() call to get translations in your organization, the files returned in the .translations folder only
include translations for the other metadata types referenced in package.xml. For example, the following package.xml file
contains types elements that match all custom applications, custom labels, Web links defined in home page components, custom
tabs, report types, and s-controls. Translations for all these metadata types are returned because each metadata type is explicitly listed
in package.xml.
*CustomApplication*CustomLabels*CustomPageWebLink
685
Metadata Types
UserCriteria
*CustomTab*ReportType*Scontrol*Translations39.0
SEE ALSO:
CustomLabels
UserCriteria
Represents the member criteria to use in community moderation rules. This type extends the Metadata metadata type and inherits its
fullName field..
File Suffix and Directory Location
UserCriteria components have the suffix community_name.user_criteria_developer_name.userCriteria and
are stored in the UserCriteria folder.
Version
UserCriteria components are available in API version 39.0 and later.
Special Access Rules
To view, create, edit, and delete moderation rules, you need the Manage Communities or Create and Set Up Communities permission.
Fields
Field Name
Field Type
Description
creationAgeInSeconds
int
If specified, includes only users that were created within a specific time
frame.
description
string
The description of the user criteria.
686
Metadata Types
Field Name
WaveApplication
Field Type
lastChatterActivityAgeInSeconds int
Description
If specified, includes only members that have posted or commented in
the community within a specific time frame.
masterLabel
string
Name of the user criteria.
userTypes
NetworkUserType
(enumeration of
type string)
The member type to use in moderation rules. Valid values are:
• Internal
• Customer
• Partner
Declarative Metadata Sample Definition
The following is an example of a UserCriteria component.
Customer and Partner MembersMember criteria matches customer and partner memberPartnerCustomer
WaveApplication
Represents the Wave Analytics application. This type extends the Metadata metadata type and inherits its fullName field.
File Suffix and Directory Location
WaveApplication components have the suffix .wapp and are stored in the wave folder.
Version
WaveApplication components are available in API version 37.0 and later.
Fields
Field Name
Field Type
Description
assetIcon
string
The icon that represents the Wave application.
description
string
The description that appears in the user interface.
folder
string
The internal api name of the folder or application.
masterLabel
string
The user interface label name of the folder or application.
687
Metadata Types
WaveDataflow
Field Name
Field Type
Description
shares
FolderShare
The folder sharing rules.
templateOrigin
string
The internal (unique) name of the template used to create the
application. This field is blank if the application was not created from a
template.
templateVersion
string
The version assigned to the application template by the template's
creator. This field is blank if the application was not created from a
template.
Declarative Metadata Sample Definition
The following is an example of a WaveApplication component.
/analytics/wave/web/proto/images/app/icons/11.pngApplication that shows my saleseditSales ApplicationEditAllContentsshareswith@org.eeUser
WaveDataflow
Represents the WaveDataflow object in the Wave Analytics application. This type extends the MetadataWithContent metadata type and
inherits its content and fullName fields.
File Suffix and Directory Location
WaveDataflow components have the suffix .wdf and are stored in the wave folder.
Version
WaveDataflow components are available in API version 37.0 and later.
Fields
Field Name
Field Type
Description
description
string
The dataflow description that appears in the user interface.
masterLabel
string
Required. The dataflow name that appears in the user interface.
688
Metadata Types
WaveDashboard
Declarative Metadata Sample Definition
The following is an example of a WaveDataflow component.
flow1flow1
WaveDashboard
Represents the WaveDashboard object in the Wave Analytics application. This type extends the MetadataWithContent metadata type
and inherits its content and fullName fields.
File Suffix and Directory Location
WaveDashboard components have the suffix .wdash and are stored in the wave folder.
Version
WaveDashboard components are available in API version 37.0 and later.
Fields
Field Name
Field Type
Description
application
string
Required. The internal name of the application.
description
string
The dashboard description that appears in the user interface.
masterLabel
string
Required. The dashboard name that appears in the user interface.
templateAssetSourceName
string
Links the dashboard to the template used to create it. Null for assets not
created from a template.
Declarative Metadata Sample Definition
The following is an example of a WaveDashboard component.
dev__appDashboard1somedesc
689
Metadata Types
WaveDataset
WaveDataset
Represents the WaveDataset object in the Wave Analytics application. This type extends the Metadata metadata type and inherits its
fullName field.
File Suffix and Directory Location
WaveDataset components have the suffix .wds and are stored in the wave folder.
Version
WaveDataset components are available in API version 37.0 and later.
Fields
Field Name
Field Type
Description
application
string
Required. The internal name of the application.
description
string
The dataset description that appears in the user interface.
masterLabel
string
Required. The user interface label name of the Dataset.
templateAssetSourceName
string
Links the dataset to the template used to create it. Null for assets not
created from a template.
Declarative Metadata Sample Definition
The following is an example of a WaveDataset component.
SharedAppdescriptiondatasetl
WaveLens
Represents the WaveLens object in the Wave Analytics application. This type extends the MetadataWithContent metadata type and
inherits its content and fullName fields.
File Suffix and Directory Location
WaveLens components have the suffix .wlens and are stored in the wave folder.
690
Metadata Types
WaveLens
Version
WaveLens components are available in API version 37.0 and later.
Fields
Field Name
Field Type
Description
application
string
Required. The internal name of the application.
datasets
string
A reference to the dataset used to create this lens.
description
string
The dashboard description that appears in the user interface.
masterLabel
string
Required. The user interface label name of the dashboard.
templateAssetSourceName
string
Links the lens to the template used to create it. Null for assets not created
from a template.
visualizationType
string
Required. The visualization type to be used for this lens. Valid values are:
• calheatmap—Calendar heat map
• comparisontable—Comparison table
• heatmap—Heat map
• hbar—Horizontal bar
• hbarhdot—Horizontal dot plot
• matrix—Matrix
• parallelcoords—Parallel coordinates
• pie—Donut
• pivottable—Pivot table
• scatter—Scatter plot
• stackhbar—Stacked horizontal bar
• stackvbar—Stacked vertical bar
• time—Time line
• valuestable—Values table
• vbar—Vertical bar
• vdot—Vertical dot plot
Declarative Metadata Sample Definition
The following is an example of a WaveLens component.
dev__app
691
Metadata Types
WaveTemplateBundle
dev__abclens1lens in shared apphbar
WaveTemplateBundle
Represents a Wave Analytics template bundle, which can be used to create Wave apps. A bundle contains a Wave template definition
and all its related resources.This type extends the Metadata metadata type and inherits its fullName field.
Note: We provide this feature to selected customers through a pilot program that requires agreement to specific terms and
conditions. To be nominated to participate in the program, contact Salesforce. Because pilot programs are subject to change, we
can’t guarantee acceptance. This pilot feature isn’t generally available, as referenced in this document or in press releases or public
statements. We can’t guarantee that it will become generally available within any particular time frame or at all. Make your purchase
decisions only on the basis of generally available features. Services provided by the Wave REST API are subject to change. Support
is not provided.
File Suffix and Directory Location
A Wave template bundle is a folder that contains definition files for a template. Unlike other metadata components, a WaveTemplateBundle
component isn’t represented by a single component file, but instead by a collection of JSON and CSV definition files. Each definition file
represents a resource in a template, such as lenses, dashboards, dataflows, and comma-separated values. For example, this directory
structure shows the hierarchy of the folders and files for one Wave Template definition, template1.
waveTemplates
template1
template-info.json
variables.json
ui.json
extFiles
PostalCodes.csv
Wave template bundles must be under a top-level folder that’s named waveTemplates. Each bundle must have its own subfolder
under the waveTemplates folder and be named with the template's fully qualified API name. The bundle folder must contain a
template-info.json file to specify the metadata about the template and the references to other definition files. An entire bundle doesn’t
have a suffix and definition files can have one of the following suffixes.
Suffix
Component Type
.json
JavaScript Object Notation
.csv
Comma-Separated Values
Version
WaveTemplateBundle components are available in API version 35.0 and later.
692
Metadata Types
Wavexmd
Special Access Rules
Definitions can be created in both managed and unmanaged packages.
Fields
Field Name
Field Type
Description
assetIcon
string
The icon to use by default for new Wave apps based on this template.
Valid values are 1.png through 20.png.
description
string
The specification of the template.
label
string
Required. The label of the template.
templateType
string
Required. The type of the template. Valid values are:
• App
• Dashboard
• Lens
Wavexmd
Represents the WaveXmd object in the Wave Analytics application. This type extends the Metadata metadata type and inherits its
fullName field.
File Suffix and Directory Location
WaveXmd components have the suffix .xmd and are stored in the wave folder.
Version
WaveXmd components are available in API version 39.0 and later.
Fields
Field Name
Field Type
Description
dataset
string
Specifies the dataset associated with this Xmd.
datasetConnector
string
The name of the connector source for the dataset.
datasetFullyQualifiedName string
Specifies the fully qualified name of the dataset version associated with
this Xmd.
dates
WaveXmdDate
List of dates, with formatting information.
dimensions
WaveXmdDimension List of dimensions, with formatting information.
693
Metadata Types
Wavexmd
Field Name
Field Type
Description
measures
WaveXmdMeasure List of measures, with formatting information.
organizations
WaveXmdOrganization List of organizations, for multi-organization support.
origin
string
The origin of the dataset version.
WaveXmdDate
WaveXmdDate represents a date in Wave Xmd.
Field
Field Type
Description
alias
string
Alias of the Date column.
compact
boolean
Whether the date should be displayed in compact form.
dateFieldDay
string
The day field.
dateFieldEpochDay
string
The epoch day field.
dateFieldEpochSecond
string
The epoch second field.
dateFieldFiscalMonth
string
The fiscal month field.
dateFieldFiscalQuarter string
The fiscal quarter field.
dateFieldFiscalWeek
string
The fiscal week field.
dateFieldFiscalYear
string
The fiscal year field.
dateFieldFullYear
string
The full year field.
dateFieldHour
string
The hour field.
dateFieldMinute
string
The minute field.
dateFieldMonth
string
The month field.
dateFieldQuarter
string
The quarter field.
dateFieldSecond
string
The second field.
dateFieldWeek
string
The week field.
dateFieldYear
string
The year field.
description
string
The description of the date column.
firstDayOfWeek
int
Represents the first day of the week.
fiscalMonthOffset
int
Offset number of months for the fiscal year in relation to the
calendar year.
isYearEndFiscalYear
boolean
Whether the year end is the fiscal year.
label
string
The label of the date column.
694
Metadata Types
Wavexmd
Field
Field Type
Description
showInExplorer
boolean
Whether or not the date should be shown in the explorer.
sortIndex
int
Whether or not to sort.
WaveXmdDimension
WaveXmdDimension represents a dimension in Wave Xmd.
Field
Field Type
Description
customActions
WaveXmdDimensionCustomAction Custom actions linked to this dimension.
customActionsEnabled
boolean
Indicates whether the dimension has custom actions enabled.
dateFormat
string
The format used for a date that is a dimension.
description
string
The description of the dimension.
field
string
The field name of the dimension (used in queries).
fullyQualifiedName
string
The fully qualified name of the dimension.
imageTemplate
string
The image template.
isDerived
boolean
Whether this is a derived dimension.
isMultiValue
boolean
Indicates whether the dimension is multi-value.
label
string
The label for the dimension.
linkTemplate
string
The template for formatting a link.
linkTemplateEnabled
boolean
Indicates whether the dimension has link templates enabled.
linkTooltip
string
The tooltip to be displayed for links.
members
WaveXmdDimensionMember
The member overrides for a dimension.
origin
string
The origin of this dimension.
recordDisplayFields
WaveXmdRecordDisplayLookup Ordered list of dimensions. The list defines the default order in
which to display the dimensions in the user interface.
recordIdField
string
The record ID for this dimension.
recordOrganizationIdField string
salesforceActions
The record organization ID for this dimension.
WaveXmdDimensionSalesforceAction Salesforce actions linked to this dimension.
salesforceActionsEnabled boolean
Indicates whether the dimension has Salesforce actions enabled.
showDetailsDefaultFieldIndex int
Default order in which to show the dimensions in the user
interface.
showInExplorer
boolean
Indicates whether the dimension is displayed in the explorer.
695
Metadata Types
Wavexmd
Field
Field Type
Description
sortIndex
int
Whether or not to sort.
WaveXmdDimensionCustomAction
WaveXmdDimensionCustomAction represents a custom action in a dimension in Wave Xmd.
Field
Field Type
Description
customActionName
string
The name of this custom action.
enabled
boolean
Indicates whether the action is enabled for a specific dimension.
icon
string
The icon for the action.
method
string
The method for the action.
sortIndex
int
Whether or not to sort.
target
string
The target for the action.
tooltip
string
The tooltip for the action.
url
string
The URL for the action.
WaveXmdDimensionMember
WaveXmdDimensionMember represents a dimension in Wave Xmd.
Field
Field Type
Description
color
string
The color for the member.
label
string
The label for the member.
member
string
The member value.
sortIndex
int
Whether or not to sort.
WaveXmdRecordDisplayLookup
WaveXmdDimensionRecordDisplayLookup represents a record display field in Wave Xmd.
Field
Field Type
Description
recordDisplayField
string
The field to display.
WaveXmdDimensionSalesforceAction
WaveXmdDimensionSalesforceAction represents an action in a dimension in Wave Xmd.
696
Metadata Types
Wavexmd
Field
Field Type
Description
enabled
boolean
Indicates whether the action is enabled for a specific dimension.
salesforceActionName
string
The name of the action.
sortIndex
int
Whether or not to sort.
WaveXmdMeasure
WaveXmdMeasure represents a measure in Wave Xmd.
Field
Field Type
Description
dateFormat
string
The format used for a date that is a measure.
description
string
The description of the measure.
field
string
The field name of the measure (used in queries).
formatCustomFormat
string
The original (XMD 1.1) format array as a single string.
formatDecimalDigits
int
The number of digits displayed after the decimal place.
formatIsNegativeParens boolean
Indicates whether to display negative numbers with parentheses,
rather than a minus sign.
formatPrefix
string
The prefix placed before the field value.
formatSuffix
string
The suffix placed after the field value.
formatUnit
string
The unit string for the measure. For example, 'cm'.
formatUnitMultiplier
double
The multiplier for the unit.
fullyQualifiedName
string
The fully qualified name of the measure.
isDerived
boolean
Whether this is a derived measure.
label
string
The label for the measure.
origin
string
The origin of the measure.
showDetailsDefaultFieldIndex int
Default order in which to show the measures in the user
interface.
showInExplorer
boolean
Indicates whether the measure is displayed in the explorer.
sortIndex
int
Whether or not to sort.
WaveXmdOrganization
WaveXmdOrganization represents a Salesforce organization in Wave Xmd.
697
Metadata Types
Workflow
Field
Field Type
Description
instanceUrl
string
The instance URL for the organization.
label
string
The label for the organization.
organizationIdentifier string
sortIndex
The ID of the organization.
int
Whether or not to sort.
Workflow
Represents the metadata associated with a workflow rule. A workflow rule sets workflow actions into motion when its designated
conditions are met. You can configure workflow actions to execute immediately when a record meets the conditions in your workflow
rule, or set time triggers that execute the workflow actions on a specific day. For more information, see “Workflow” in the Salesforce
Help. This type extends the Metadata metadata type and inherits its fullName field. Use this metadata type to create, update, or
delete workflow rule definitions.
When using a manifest file, retrieve all workflow components using the following code:
*Workflow
Declarative Metadata File Suffix and Directory Location
Workflow files have the suffix .workflow. There is one file per standard or custom object that has workflow. These files are stored in
the workflows directory of the corresponding package.
Version
Workflow rules are available in API version 13.0 and later.
Workflow
This metadata type represents the valid types of workflow rules and actions associated with a standard or custom object.
Field Name
Field Type
Description
alerts
WorkflowAlert[]
An array of all alerts for the object associated with the workflow.
fieldUpdates
WorkflowFieldUpdate[]
An array of all field updates for the object associated with the
workflow.
flowActions
WorkflowFlowAction[]
An array of flow triggers for the object associated with the
workflow. Available in API version 30.0 and later.
The pilot program for flow trigger workflow actions is closed. If
you've already enabled the pilot in your org, you can continue
to create and edit flow trigger workflow actions. If you didn't
698
Metadata Types
Field Name
Workflow
Field Type
Description
enable the pilot in your org, use the Flows action in Process
Builder instead.
fullName
string
The developer name used as a unique identifier for API access.
The fullName can contain only underscores and
alphanumeric characters. It must be unique, begin with a letter,
not include spaces, not end with an underscore, and not contain
two consecutive underscores. This field is inherited from the
Metadata component.
knowledgePublishes
WorkflowKnowledgePublish[]
An array of Salesforce Knowledge Workflow Publishes associated
with the workflow. Available in API version 27.0 and later.
outboundMessages
WorkflowOutboundMessage[]
An array of all of the outbound messages for the object
associated with the workflow.
rules
WorkflowRule[]
An array of all the objects associated with the workflow.
tasks
WorkflowTask[]
An array of all the tasks for the object associated with the
workflow.
WorkflowActionReference
WorkflowActionReference represents one of the workflow actions.
Field Name
Field Type
Description
name
string
Required. The name of the workflow action.
type
WorkflowActionType
Required. Available types of workflow actions:
(enumeration of type string) • Alert
• FieldUpdate
• FlowAction—Available in API version 30.0 and later
• OutboundMessage
• Task
The pilot program for flow trigger workflow actions is closed. If
you've already enabled the pilot in your org, you can continue to
create and edit flow trigger workflow actions. If you didn't enable
the pilot in your org, use the Flows action in Process Builder instead.
WorkflowAlert
WorkflowAlert represents an email alert associated with a workflow rule.
699
Metadata Types
Workflow
Field Name
Field Type
Description
ccEmails
string[]
Additional email addresses. This field is similar to the CC field
in email clients.
For the email to be sent successfully, set a value for
ccEmails or recipients. You can set values for both
fields. The value of ccEmails can include up to five different
email addresses.
description
string
Required. A description of the email alert. Available in API
version 16.0 and later.
fullName
string
Required. The developer name used as a unique identifier for
API access. The fullName can contain only underscores
and alphanumeric characters. It must be unique, begin with
a letter, not include spaces, not end with an underscore, and
not contain two consecutive underscores. This field is inherited
from the Metadata component.
protected
boolean
Required. Indicates whether this component is protected
(true) or not (false). Protected components cannot be
linked to or referenced by components created in the installing
organization.
recipients
WorkflowEmailRecipient[]
The recipients for the email.
For the email to be sent successfully, set a value for
ccEmails or recipients. You can set values for both
fields.
senderAddress
string
The address in the From field for the email alert. This allows
you to use a standard global email address for your
organization (such as support@company.com) instead
of the default From field, which is the email address of the
person who updates the record. You can only specify a value
in this field if the senderType is set to
OrgWideEmailAddress. See “Organization-Wide
Addresses: Let Users Send Email from Salesforce Using a
Common From Address” in the Salesforce Help.
senderType
ActionEmailSenderType
(enumeration of type string)
The email used as the sender's From and Reply-To addresses.
The following values are valid:
• CurrentUser—The email address of the person
updating the record. This is the default setting.
• DefaultWorkflowUser—The email address of the
default workflow user.
• OrgWideEmailAddress—A verified global email
address for your organization, such as
support@company.com.
700
Metadata Types
Workflow
Field Name
Field Type
Description
template
string
Required. Named reference to an EmailTemplate. This email
template does not have to exist in the zip file, but it must exist
in Metadata API.
WorkflowEmailRecipient
WorkflowEmailRecipient represents a recipient for an email alert associated with a workflow rule.
Field Name
Field Type
Description
field
string
Name of the field referenced in type. The field named should
be of the type specified in type.
recipient
string
The recipients for the email. Depending on the type selected,
this may be required.
type
ActionEmailRecipientTypes
(enumeration of type string)
Named reference to an EmailTemplate component. Valid values
are:
• accountOwner - The email is sent to the record's
account owner (for example, the Account owner for an
Opportunity).
• accountTeam - Only applicable on the Account object.
The email is sent to everyone on that Account's account
team.
• campaignMemberDerivedOwner - Emails are sent
to lead and contact owners when contacts are added to a
campaign or in response to a campaign.
• contactLookup - The email is sent to a contact whose
value is looked up from a field on the record. For this value,
the field field must reference a Contact.
• creator - The email is sent to the record's creator.
• customerPortalOwner - The email is sent to a
specific self-service portal user. For this value, the recipient
field must reference a User (by username), only self-service
portal users.
• email - The email is sent to an email address whose value
is looked up from a field on the record. For this value, the
field field must reference an email field.
• group - The email is sent to all users in a group. For this
value, the recipient field must reference a group (by group
name).
• opportunityTeam - Only applicable on the
Opportunity object. The email is sent to everyone on that
Opportunity's opportunity team.
• owner - The email is sent to the record's owner.
701
Metadata Types
Field Name
Workflow
Field Type
Description
• partnerUser - The email is sent to a specific partner
user. For this value, the recipient field must reference a User
(by username), only partner users.
• portalRole - Like role, but for portal roles only.
• portalRoleSubordinates - Like
roleSubordinates, but for portal roles only.
• role - The email is sent to all users in a role. For this value,
the recipient field must reference a Role (in the role
hierarchy, by role name).
• roleSubordinates - The email is sent to all users in
a role subordinates. For this value, the recipient field must
reference a Role.
• roleSubordinatesInternal - Like
roleSubordinates, but for internal portal roles only.
• user - The email is sent to a specific user. For this value,
the recipient field must reference a User (by username).
• userLookup - The email is sent to a user whose value
is looked up from a field on the record. For this value, the
field field must reference a user foreign key field.
WorkflowFieldUpdate
WorkflowFieldUpdate represents a workflow field update. Field updates allow you to automatically update a field value to one that you
specify when a workflow rule is triggered.
Field Name
Field Type
Description
description
string
The description of the field update. This information is useful to
track the reasoning for initially configuring the field update.
field
string
Required. The field (on the object for the workflow) to be updated.
formula
string
If the operation field value is Formula, this is set to a formula
used to compute the new field value.
fullName
string
Required. The developer name used as a unique identifier for API
access. The fullName can contain only underscores and
alphanumeric characters. It must be unique, begin with a letter,
not include spaces, not end with an underscore, and not contain
two consecutive underscores. This field is inherited from the
Metadata component.
literalValue
string
If the operation field value is Literal, this is the literal
value for the field.
lookupValue
string
If the operation field value is lookupValue, this is the
lookup value that is referenced.
702
Metadata Types
Workflow
Field Name
Field Type
Description
lookupValueType
LookupValueType
(enumeration of type string)
The type of object that the lookupValue field value is
referencing. The valid values are:
• Queue
• RecordType
• User
name
string
Required. A name for the component. Available in version API
16.0 and later.
notifyAssignee
boolean
Required. Notify the assignee when the field is updated.
operation
FieldUpdateOperation
(enumeration of type string)
Required. The operation that computes the value with which to
update the field. Valid values are:
• Formula - Indicates the field will be set to a formula. If set,
the formula must be a valid formula.
• Literal - Indicates the field will be set to a literal value. If
set, the literalValue must be a valid literal value for this field.
• LookupValue - Similar to Literal, but for an object
reference, such as a contact, user, account, etc. If set, the
lookupValue element must be set. Only User is supported
in the current API.
• NextValue - Indicates that the field will be set to its next
value; this is only allowed when the field update references a
picklist.
• Null - Indicates the field will be set to null.
• PreviousValue - Indicates that the field will be set to its
previous value; this is only allowed when the field update
references a picklist.
protected
boolean
Required. Indicates whether this component is protected (true)
or not (false). Protected components cannot be linked to or
referenced by components created in the installing organization.
reevaluateOnChange
boolean
When set to true, if the field update changes the field’s value, all
workflow rules on the associated object are re-evaluated. Any
workflow rules whose criteria are met as a result of the field value
change will be triggered.
If any of the triggered workflow rules result in another field update
that’s also enabled for workflow rule re-evaluation, a domino effect
occurs, and more workflow rules can be re-evaluated as a result
of the newly-triggered field update. This cascade of workflow rule
re-evaluation and triggering can happen up to five times after the
initial field update that started it.
targetObject
string
This is set if the change is detected on a child record. If this is set,
it points to the foreign key reference on the child object (for
703
Metadata Types
Workflow
Field Name
Field Type
Description
example, EmailMessage.ParentId) pointing to the parent
(for example, Case). When set, the formula is based on the child
object (for example, EmailMessage). This field is named
sourceField before version 14.0. The field name change is
automatically handled between versions and does not require
any manual editing of existing XML component files.
WorkflowFlowAction
Represents a flow trigger, which is a workflow action that launches a flow. Available in API version 30.0 and later. For more information,
see the following topics in the Salesforce Help.
• Define a Flow Trigger for Workflow (Pilot)
• Flow Trigger Considerations (Pilot)
Note:
• The pilot program for flow trigger workflow actions is closed. If you've already enabled the pilot in your org, you can continue
to create and edit flow trigger workflow actions. If you didn't enable the pilot in your org, use the Flows action in Process
Builder instead.
• Test mode for flow triggers isn’t supported in the Metadata API. If you want a flow trigger to run the latest flow version when
an administrator causes the workflow rule to fire, enable test mode via the user interface after deployment.
Field Name
Field Type
Description
description
string
Describes the flow trigger.
flow
string
Required. Unique name of the flow that this workflow action
launches.
flowInputs
WorkflowFlowActionParameter[]
An array of values to pass into flow variables and sObject variables
when launching the flow.
label
string
Required. Name of the flow trigger.
language
string
Reserved for future use.
protected
boolean
Reserved for future use.
WorkflowFlowActionParameter
Represents a value specified in the flow trigger that is passed into a flow variable or sObject variable when launching the flow.
Note: The pilot program for flow trigger workflow actions is closed. If you've already enabled the pilot in your org, you can continue
to create and edit flow trigger workflow actions. If you didn't enable the pilot in your org, use the Flows action in Process Builder
instead.
704
Metadata Types
Workflow
Field Name
Field Type Description
name
string
Required. Unique name of the variable or sObject variable in the flow.
The flow variable must have isInput set to True.
value
string
Required. Value to assign to the flow variable or sObject variable when launching the flow.
Unlike an sObject variable, which represents an entire Salesforce record in the flow, a flow variable
represents a single field. Therefore, the allowed value depends on whether the name identifies a
flow variable or an sObject variable.
For an sObject variable, the value must be a merge field that identifies a record—or a lookup
relationship field that references a record—of the same object type as the sObject variable. For example:
• {!this}—identifies the record that fired the workflow rule.
• {!Contact}—identifies the contact associated with the record that fired the workflow rule.
• {!Asset.Account}—identifies the account associated with the asset that is associated with
the record that fired the workflow rule.
• {!SomeObject__r}—uses a lookup relationship field to identify a custom object record
associated with the record that fired the workflow rule.
For a flow variable, you can enter a merge field or a literal value. Manually enter a literal value when
the variable should have the same value every time the flow is launched, regardless of which record
fired the workflow rule. For example, you can enter true or false for a variable of type Boolean.
For a flow variable, supported merge fields identify a global variable or a field of the same data type
as the flow variable. For example:
• {!Id}—ID of the record that fired the workflow rule.
• {!Account.Owner.Email}—email address of the account owner for the account associated
with the record that fired the workflow rule.
• {!$Organization.Country}—country of the organization.
WorkflowKnowledgePublish
WorkflowKnowledgePublish represents Salesforce Knowledge article publishing actions and information. Available in API version 27.0
and later.
Field Name
Field Type
Description
action
KnowledgeWorkflowAction
(enumeration of type string)
The article publishing actions available when this rule fires.
Valid values are:
• PublishAsNew: Publishes the article as a new
article.
• Publish: Publishes the article as a version of a
previously published article.
description
string
A brief article description.
label
string
Label that represents the article throughout the Salesforce
user interface.
705
Metadata Types
Workflow
Field Name
Field Type
Description
language
string
The language of the article.
protected
boolean
Required. Indicates whether this component is protected
(true) or not (false). Protected components cannot
be linked to or referenced by components created in the
installing organization.
WorkflowOutboundMessage
WorkflowOutboundMessage represents an outbound message associated with a workflow rule. Outbound messages are workflow and
approval actions that send the information you specify to an endpoint you designate, such as an external service. An outbound message
sends the data in the specified fields in the form of a SOAP message to the endpoint. For more information, see “Outbound Message
Actions” in the Salesforce Help.
Field Name
Field Type
Description
apiVersion
double
Required. The API version of the outbound message. This is automatically
set to the current API version when the outbound message is created.
Valid API versions for outbound messages are 8.0 and 18.0 or later.
This API version is used in API calls back to Salesforce using the enterprise
or partner WSDLs. The API Version can only be modified by using
the Metadata API. It can't be modified using the Salesforce user interface.
This field is available in API version 18.0 and later.
Warning: If you change the apiVersion to a version that
doesn't support one of the fields configured for the outbound
message, messages will fail until you update your outbound
message listener to consume the updated WSDL. You can monitor
the status of outbound messages from Setup by entering
Outbound Messages in the Quick Find box, then
selecting Outbound Messages in Salesforce.
description
string
Describes the outbound message.
endpointUrl
string
Required. The endpoint URL to which the outbound message is sent.
fields
string[]
The named references to the fields that are to be sent.
fullName
string
Required. The developer name used as a unique identifier for API access.
The fullName can contain only underscores and alphanumeric
characters. It must be unique, begin with a letter, not include spaces, not
end with an underscore, and not contain two consecutive underscores.
This field is inherited from the Metadata component.
includeSessionId
boolean
Required. Set if you want the Salesforce session ID included in the
outbound message. Useful if you intend to make API calls and you do
not want to include a username and password.
706
Metadata Types
Workflow
Field Name
Field Type
Description
integrationUser
string
Required. The named reference to the user under which this message is
sent.
name
string
Required. A name for the component. Available in version API 16.0 and
later.
protected
boolean
Required. Indicates whether this component is protected (true) or not
(false). Protected components cannot be linked to or referenced by
components created in the installing organization.
useDeadLetterQueue
boolean
This field is only available for organizations with dead letter queue
permissions turned on. If set, this outbound message will use the dead
letter queue if normal delivery fails.
WorkflowRule
This metadata type represents a workflow rule. This type extends the Metadata metadata type and inherits its fullName field.
Field Name
Field Type
Description
actions
WorkflowActionReference[]
An array of references for the actions that
should happen when this rule fires.
active
boolean
Required. Determines if this rule is active.
booleanFilter
string
For advanced criteria filter, the boolean
formula, for example, (1 AND 2) OR
3.
criteriaItems
FilterItem[]
An array of the boolean criteria (conditions)
under which this rule fires. Note that either
this or formula must be set.
description
string
The description of the workflow rule
formula
string
The formula condition under which this
rule first (either this or
criteriaItems) must be set
fullName
string
The developer name used as a unique
identifier for API access. The fullName
can contain only underscores and
alphanumeric characters. It must be
unique, begin with a letter, not include
spaces, not end with an underscore, and
not contain two consecutive underscores.
This field is inherited from the Metadata
component.
707
Metadata Types
Workflow
Field Name
Field Type
Description
triggerType
WorkflowTriggerTypes (enumeration of type string)
Under what conditions the trigger fires.
Valid values are:
• onAllChanges - The workflow rule
is considered on all changes.
• onCreateOnly - The workflow rule
is considered only on create.
• onCreateOrTriggeringUpdate
- The workflow rule is considered on
create and triggering updates.
workflowTimeTriggers WorkflowTimeTrigger
Represents a set of Workflow actions (Field
Updates, Email Alerts, Outbound Messages,
and Tasks) that should execute before or
after a specified interval of time.
WorkflowTask
This metadata type references an assigned workflow task.
Field Name
Field Type
Description
assignedTo
string
Specifies the user, role, or team to which the workflow rule
or action is assigned. The field corresponding to the value
specified here must be the same as the specified
assignedToType.
assignedToType
ActionTaskAssignedToTypes
(enumeration of type string)
Valid string values for this type are:
• accountCreator - When set, the task is assigned
to the record's account's creator.
• accountOwner - When set, the task is assigned to
the record's account's owner (Opportunity).
• accountTeam - Same as WorkflowAlert type
• creator - When set, the task is assigned to the
record's creator.
• opportunityTeam - Same as WorkflowAlert type
• owner - When set, the task is assigned to the record's
owner.
• partnerUser - When set, the assignedTo field
references a User (by username), a partner user.
• portalRole - When set, the assignedTo field
references a Role (by role name), a portal role.
• role - When set, the assignedTo field references
a Role (by role name)
708
Metadata Types
Field Name
Workflow
Field Type
Description
• user - When set, the assignedTo field references
a User (by username)
description
string
The description of this workflow task.
dueDateOffset
int
Required. The offset, in days, from either the trigger date,
or the date specified in the (optional)
offsetFromField. This can be a negative number.
fullName
string
Required. The developer name used as a unique identifier
for API access. The fullName can contain only
underscores and alphanumeric characters. It must be
unique, begin with a letter, not include spaces, not end
with an underscore, and not contain two consecutive
underscores. This field is inherited from the Metadata
component.
notifyAssignee
boolean
Required. Set to send an email notification when the task
is assigned.
offsetFromField
string
Optional field reference of the date field from which the
dueDate should be computed.
priority
string
Required. The priority to assign the created task.
protected
boolean
Required. Indicates whether this component is protected
(true) or not (false). Protected components cannot
be linked to or referenced by components created in the
installing organization.
status
string
Required. The status to assign the created task.
subject
string
Required. A subject for the workflow task. It is used if an
email notification is sent when the task is assigned. Available
in API version 16.0 and later.
WorkflowTimeTrigger
Represents a set of Workflow actions (Field Updates, Email Alerts, Outbound Messages, and Tasks) that should execute before or after a
specified interval of time.
Field Name
Field Type
Description
actions
WorkflowActionReference[] An array of references for the actions that should happen when this
trigger fires.
offsetFromField
string
The date type field name that the time-based workflow triggers off
of, i.e. Created Date, Last Modified Date, Rule
Trigger Date or a custom date field on the object for which
the workflow rule is defined.
709
Metadata Types
Workflow
Field Name
Field Type
Description
timeLength
string
The numeric value of the time after/before the workflow triggers.
A negative value represents the time length before the trigger will
fire. The timeLength is measured in either hours or days, as
specified by workflowTimeTriggerUnit.
workflowTimeTriggerUnit WorkflowTimeUnits
The unit of time before or after which the time-based workflow will
(enumeration of type string) trigger. Valid string values are:
• Hours
• Days
Declarative Metadata Sample Definition
The following is the definition of a workflow rule:
Another_alertAnother alertfalseaccountOwnerContact__ccontactLookupEmail__cemail
TestEmail/Email Test
Enum_Field_UpdateBlahEnumField__cEnum Field UpdatetrueNextValuefalseEnum_Field_Update2BlahEnumField__cPLX2Enum Field Update2trueLiteral
710
Metadata Types
Workflow
falseField_UpdateTestField update descNameName & "Updated"Field UpdatefalseFormulafalseLookup_On_ContactRealOwner__cadmin@acme.comLookup On ContactfalseLookupValuefalseAnother_Outbound_messageAnother Random outbound.http://www.test.comEmail__cIdNametrueadmin@acme.comAnother Outbound messagefalseBooleanFilterfalse1 AND 2 OR 3CustomObjectForWorkflow__c.CreatedByIdnotEqualCustomObjectForWorkflow__c.CreatedByIdnotEqualabcCustomObjectForWorkflow__c.CreatedByIdequalsxyzonCreateOrTriggeringUpdate
711
Metadata Types
Workflow
Custom Rule1Another_alertAlertEnum_Field_Update2FieldUpdateField_Update
FieldUpdateAnother_Outbound_messageOutboundMessageRole_task_was_completedTasktrueCustomObjectForWorkflow__c.NamestartsWithABCCustom Rule1 desconCreateOrTriggeringUpdateIsChangedFunctionRuletrueIsChangedDescISCHANGED(Name)onAllChangesAnother_task_was_completedownerRandom Comment20trueHighfalseCompletedAnother task was completedRole_task_was_completedR11role-2true
712
Metadata Types
Workflow
CustomObjectForWorkflow__c.CreatedDateHighfalseCompletedRole task was completedUser_task_was_completedadmin@acme.comuser-2trueUser.CreatedDateHighfalseCompletedUser task was completed
713
CHAPTER 11 Headers
Use headers in Metadata API calls to set options for each call.
IN THIS SECTION:
AllOrNoneHeader
Indicates whether to roll back all metadata changes when some of the records in a call result in failures.
CallOptions
Specifies the API client identifier.
DebuggingHeader
Specifies that the deployment result will contain the debug log output, and specifies the level of detail included in the log. The
debug log contains the output of Apex tests that are executed as part of a deployment.
SessionHeader
Specifies the session ID that the login call returns. This session ID is used to authenticate all subsequent Metadata API calls.
AllOrNoneHeader
Indicates whether to roll back all metadata changes when some of the records in a call result in failures.
Version
This header is available in API version 34.0 and later.
Supported Calls
createMetadata(), updateMetadata(), upsertMetadata(), deleteMetadata()
Usage
If this header isn’t used in API version 34.0 and later, by default a call can save a partial set of records (equivalent to
AllOrNoneHeader=false)—the records that are processed successfully are saved and records that have failures aren’t saved.
714
Headers
AllOrNoneHeader
Fields
Field Name
Type
Description
allOrNone
boolean
Set to true to cause all metadata changes to be rolled back if
any records in the call cause failures. Set to false to enable
saving only the records that are processed successfully when other
records in the call cause failures.
Sample Code—Java
Add the AllOrNoneHeader to the metadata connection before you perform a call as follows:
metadataConnection.setAllOrNoneHeader(true);
This next example shows how to use the AllOrNoneHeader when creating two custom objects. Because the second custom object
doesn’t have the required Name field, the create() call can’t create this custom object and rolls back the first custom object. The
output is shown after this code sample.
import com.sforce.soap.metadata.*;
import com.sforce.soap.metadata.Error;
import com.sforce.ws.ConnectionException;
public class CallWithHeader {
MetadataConnection metadataConnection = null;
public static void main(String[] args) throws ConnectionException {
CallWithHeader samples = new CallWithHeader();
samples.createWithHeader();
}
public CallWithHeader() throws ConnectionException {
metadataConnection = MetadataLoginUtil.login();
}
public void createWithHeader() throws ConnectionException {
// Define two custom objects to be inserted.
CustomObject co1 = new CustomObject();
String name1 = "MyCustomObject1";
co1.setFullName(name1 + "__c");
co1.setDeploymentStatus(DeploymentStatus.Deployed);
co1.setDescription("Created by the Metadata API");
co1.setEnableActivities(true);
co1.setLabel(name1 + " Object");
co1.setPluralLabel(co1.getLabel() + "s");
co1.setSharingModel(SharingModel.ReadWrite);
CustomField nf = new CustomField();
nf.setType(FieldType.Text);
nf.setLabel(co1.getFullName() + " Name");
co1.setNameField(nf);
715
Headers
CallOptions
// The second custom object doesn't have a Name field
CustomObject co2 = new CustomObject();
String name2 = "MyCustomObject2";
co2.setFullName(name2 + "__c");
co2.setDeploymentStatus(DeploymentStatus.Deployed);
co2.setDescription("Created by the Metadata API");
co2.setEnableActivities(true);
co2.setLabel(name2 + " Object");
co2.setPluralLabel(co2.getLabel() + "s");
co2.setSharingModel(SharingModel.ReadWrite);
// Setting the allOrNone header to true to cause
// the call to not commit any record if one or more
// records in this call have failures.
metadataConnection.setAllOrNoneHeader(true);
// Now that the header has been set, make the create call.
SaveResult[] results = metadataConnection
.createMetadata(new Metadata[] { co1, co2 });
// Iterate through the call results
for (SaveResult r : results) {
if (r.isSuccess()) {
System.out.println("Created component: " + r.getFullName());
} else {
System.out
.println("Errors were encountered while creating "
+ r.getFullName());
for (Error e : r.getErrors()) {
System.out.println("Error message: " + e.getMessage());
System.out.println("Status code: " + e.getStatusCode());
}
}
}
}
}
This is the output that the sample returns. The first record is rolled back and the second has a failure.
Errors were encountered while creating MyCustomObject1__c
Error message: Record rolled back because not all records were valid and the request was
using AllOrNone header
Status code: ALL_OR_NONE_OPERATION_ROLLED_BACK
Errors were encountered while creating MyCustomObject2__c
Error message: Must specify a nameField of type Text or AutoNumber
Status code: FIELD_INTEGRITY_EXCEPTION
CallOptions
Specifies the API client identifier.
716
Headers
DebuggingHeader
Version
This call is available in all API versions.
Supported Calls
All Metadata API calls.
Fields
Field Name
Type
Description
client
string
A value that identifies an API client.
Sample Code—Java
To change the API client ID, add the CallOptions header to the metadata connection before you perform a call as follows:
metadataConnection.setCallOptions("client ID");
DebuggingHeader
Specifies that the deployment result will contain the debug log output, and specifies the level of detail included in the log. The debug
log contains the output of Apex tests that are executed as part of a deployment.
Version
This header is available in all API versions.
Supported Calls
deploy()
Fields
Field Name
Type
Description
categories
LogInfo[]
A list of log categories with their associated log levels.
debugLevel
LogType (enumeration of type string) Deprecated. This field is provided only for backward compatibility.
If you provide values for both debugLevel and categories,
the categories value is used.
The debugLevel field specifies the type of information returned
in the debug log. The values are listed from the least amount of
717
Headers
Field Name
DebuggingHeader
Type
Description
information returned to the most information returned. Valid values
include:
• None
• Debugonly
• Db
• Profiling
• Callout
• Detail
LogInfo
Specifies the type and amount of information to be returned in the debug log. The categories field takes a list of these objects.
LogInfo is a mapping of category to level.
Element Name
Type
Description
category
LogCategory
Specify the type of information returned in the debug log. Valid values are:
• Db
• Workflow
• Validation
• Callout
• Apex_code
• Apex_profiling
• Visualforce
• System
• All
level
LogCategoryLevel
Specifies the level of detail returned in the debug log.
Valid log levels are (listed from lowest to highest):
• NONE
• ERROR
• WARN
• INFO
• DEBUG
• FINE
• FINER
• FINEST
718
Headers
SessionHeader
Sample Code—Java
Add the DebuggingHeader to the metadata connection before you perform the deploy() call as follows.
LogInfo[] logs = new LogInfo[1];
logs[0] = new LogInfo();
logs[0].setCategory(LogCategory.Apex_code);
logs[0].setLevel(LogCategoryLevel.Fine);
metadataConnection.setDebuggingHeader(logs);
The result of the deploy() call is obtained by calling checkDeployStatus(). After the deployment finishes, and if tests were run, the response
of checkDeployStatus() contains the debug log output in the debugLog field of a DebuggingInfo output header.
SessionHeader
Specifies the session ID that the login call returns. This session ID is used to authenticate all subsequent Metadata API calls.
Version
This header is available in all API versions.
Supported Calls
All Metadata API calls.
Fields
Field Name
Type
Description
sessionId
string
The session ID that the login call returns.
Sample Code—Java
Add the SessionHeader to the metadata connection before you perform a call as follows:
metadataConnection.setSessionHeader("");
719
APPENDICES
APPENDIX A CustomObjectTranslation Language Support: Fully
Supported Languages
Not every language supports all the possible values for the fields in CustomObjectTranslation. Use this appendix to determine which
field values a language supports.
Note: Salesforce offers three levels of language support: fully supported languages, end-user languages, and platform-only
languages. This appendix provides information only for fully supported languages. For more information, see Supported Languages
Chinese (Simplified)
plural
false
caseType
Nominative
possessive
None
startwith
Consonant
plural
false
Chinese (Traditional)
caseType
Nominative
possessive
None
startwith
Consonant
plural
false
720
CustomObjectTranslation Language Support: Fully Supported
Languages
Danish
caseType
Nominative
article
Zero
Definite
Indefinite
possessive
None
gender
Feminine
Neuter
startwith
Consonant
plural
true
Dutch
CaseType
Nominative
article
Definite
Indefinite
gender
Feminine
Neuter
possessive
None
plural
true
Finnish
caseType
Ablative
Adessive
Allative
Dative
721
CustomObjectTranslation Language Support: Fully Supported
Languages
Elative
Essive
Genitive
Illative
Inessive
Nominative
Partitive
Translative
plural
true
possessive
None
First
Second
startwith
Consonant
French
article
Zero
Definite
Indefinite
gender
Masculine
Feminine
possessive
None
plural
true
startwith
Consonant
Vowel
German
article
Zero
Definite
722
CustomObjectTranslation Language Support: Fully Supported
Languages
Indefinite
caseType
Accusative
Dative
Genitive
Nominative
gender
Masculine
Feminine
Neuter
possessive
None
plural
true
Italian
article
Zero
Indefinite
Definite
CaseType
Nominative
gender
Masculine
Feminine
possessive
None
plural
true
startwith
Consonant
Vowel
Special
Japanese
CaseType
Nominative
723
CustomObjectTranslation Language Support: Fully Supported
Languages
possessive
None
startwith
Consonant
plural
false
Korean
CaseType
Nominative
possessive
None
startwith
Consonant
plural
false
Portuguese (Brazilian)
article
Zero
Definite
Indefinite
article
Zero
Indefinite
Definite
plural
true
Russian
caseType
Accusative
Dative
Genitive
Instrumental
Nominative
Prepositional
724
CustomObjectTranslation Language Support: Fully Supported
Languages
gender
Masculine
Feminine
Neuter
Animate_Masculine
plural
true
false
Spanish
article
Zero
Definite
Indefinite
CaseType
Nominative
gender
Masculine
Feminine
startwith
Consonant
plural
true
Thai
CaseType
Nominative
possessive
None
startwith
Consonant
plural
false
725
APPENDIX B CustomObjectTranslation Language Support:
End-User Languages
Not every language supports all the possible values for the fields in CustomObjectTranslation. Use this appendix to determine which
field values a language supports.
Note: Salesforce offers three levels of language support: fully supported languages, end-user languages, and platform-only
languages. This appendix provides information only for end-user languages. For more information, see Supported Languages
Arabic
article
Zero
Definite
CaseType
Nominative
Accusative
gender
Masculine
Feminine
plural
true
possessive
None
First
Second
startwith
Consonant
Bulgarian
article
Zero
Definite
726
CustomObjectTranslation Language Support: End-User
Languages
CaseType
Nominative
Objective
gender
Masculine
Feminine
Neuter
possessive
None
plural
true
startwith
Consonant
Czech
CaseType
Accusative
Dative
Genitive
Instrumental
Locative
Vocative
Nominative
gender
Masculine
Feminine
Neuter
Animate_Masculine
plural
true
Greek
article
Zero
Definite
Indefinite
727
CustomObjectTranslation Language Support: End-User
Languages
CaseType
Accusative
Genitive
Nominative
Vocative
gender
Masculine
Feminine
Neuter
possessive
None
plural
true
Hebrew
article
Zero
Definite
CaseType
Nominative
gender
Masculine
Feminine
possessive
None
plural
true
Hungarian
article
Zero
Definite
Indefinite
CaseType
Ablative
Accusative
Allative
Causalfinal
728
CustomObjectTranslation Language Support: End-User
Languages
Dative
Delative
Distributive
Elative
Essiveformal
Illative
Inessive
Instrumental
Nominative
Sublative
Terminative
Translative
plural
true
possessive
None
First
Second
startwith
Consonant
Vowel
Indonesian
plural
true
CaseType
Nominative
Possessive
None
startwith
Consonant
Norwegian
article
Zero
Definite
Indefinite
729
CustomObjectTranslation Language Support: End-User
Languages
CaseType
Nominative
gender
Masculine
Feminine
Neuter
possessive
None
plural
true
Polish
CaseType
Nominative
Accusative
Dative
Genitive
Instrumental
Locative
Vocative
gender
Masculine
Feminine
Neuter
Animate_Masculine
plural
true
Romanian
article
Zero
Definite
Indefinite
CaseType
Nominative
Dative
730
CustomObjectTranslation Language Support: End-User
Languages
gender
Masculine
Feminine
Neuter
possessive
None
plural
true
Spanish (Mexico)
article
Zero
Definite
Indefinite
CaseType
Nominative
gender
Masculine
Feminine
possessive
None
plural
true
Turkish
article
Zero
Indefinite
CaseType
Ablative
Accusative
Dative
Genitive
Nominative
possessive
None
First
Second
731
CustomObjectTranslation Language Support: End-User
Languages
startwith
Consonant
plural
true
Ukrainian
CaseType
Accusative
Dative
Genitive
Instrumental
Nominative
Locative
Vocative
gender
Masculine
Feminine
Neuter
Animate_Masculine
plural
true
Vietnamese
CaseType
Nominative
possessive
None
startwith
Consonant
plural
false
732
APPENDIX C StandardValueSet Names and Standard Picklist
Fields
In API version 38.0 and later, standard picklists are represented by the StandardValueSet type. In previous versions, standard picklists are
represented by the CustomField type. This table lists the names of standard picklists as standard value sets and their corresponding field
names.
Note: The names of standard value sets and picklist fields are case-sensitive.
Standard Value Set Name (API version 38.0 and later) Field Name (API version 37.0 and earlier)
AccountContactMultiRoles
AccountContactRelation.Roles
AccountContactRole
AccountContactRole.Role
AccountOwnership
Account.Ownership
AccountRating
Account.Rating
Lead.Rating
AccountType
Account.Type
AddressCountryCode
Country picklist
AddressStateCode
State picklist
AssetStatus
Asset.Status
CampaignMemberStatus
CampaignMember.Status
CampaignStatus
Campaign.Status
CampaignType
Campaign.Type
CaseContactRole
CaseContactRole.Role
CaseOrigin
Case.Origin
CasePriority
Case.Priority
CaseReason
Case.Reason
CaseStatus
Case.Status
CaseType
Case.Type
ContactRole
OpportunityContactRole.Role
733
StandardValueSet Names and Standard Picklist Fields
Standard Value Set Name (API version 38.0 and later) Field Name (API version 37.0 and earlier)
ContractContactRole
ContractContactRole.Role
ContractStatus
Contract.Status
EntitlementType
Entitlement.Type
EventSubject
Event.Subject
EventType
Event.Type
FiscalYearPeriodName
Period.PeriodLabel
FiscalYearPeriodPrefix
FiscalYearSettings.PeriodPrefix
FiscalYearQuarterName
Period.QuarterLabel
FiscalYearQuarterPrefix
FiscalYearSettings.QuarterPrefix
IdeaCategory1
IdeaTheme.Categories1
IdeaMultiCategory
Idea.Categories
IdeaStatus
Idea.Status
IdeaThemeStatus
IdeaTheme.Status
Industry
Account.Industry
Lead.Industry
InvoiceStatus
Invoice.Status
LeadSource
Account.AccountSource
Lead.LeadSource
Opportunity.Source
LeadStatus
Lead.Status
OpportunityCompetitor
Opportunity.Competitors
OpportunityStage
Opportunity.StageName
OpportunityType
Opportunity.Type
OrderStatus1
Order.Status1
OrderType
Order.Type
PartnerRole
Account.PartnerRole
Product2Family
Product2.Family
QuestionOrigin1
Question.Origin1
QuickTextCategory
QuickText.Category
QuickTextChannel
QuickText.Channel
734
StandardValueSet Names and Standard Picklist Fields
Standard Value Set Name (API version 38.0 and later) Field Name (API version 37.0 and earlier)
QuoteStatus
Quote.Status
SalesTeamRole
OpportunityTeamMember.TeamMemberRole
UserAccountTeamMember.TeamMemberRole
UserTeamMember.TeamMemberRole
AccountTeamMember.TeamMemberRole
Salutation
Contact.Name
Lead.Name
1
ServiceContractApprovalStatus
ServiceContract.ApprovalStatus
SocialPostClassification
SocialPost.Classification
SocialPostEngagementLevel
SocialPost.EngagementLevel
SocialPostReviewedStatus
SocialPost.ReviewedStatus
SolutionStatus
Solution.Status
TaskPriority
Task.Priority
TaskStatus
Task.Status
TaskSubject
Task.Subject
TaskType
Task.Type
WorkOrderLineItemStatus
WorkOrderLineItem.Status
WorkOrderPriority
WorkOrder.Priority
WorkOrderStatus
WorkOrder.Status
You can’t read or update this standard value set or picklist field.
735
GLOSSARY
A |B |C |D |E |F |G |H |I |J |K |L |M |N |O |P |Q |R |S |T |U |V |W |X |Y |Z
A
Apex
Apex is a strongly typed, object-oriented programming language that allows developers to execute flow and transaction control
statements on the Force.com platform server in conjunction with calls to the Force.com API. Using syntax that looks like Java and
acts like database stored procedures, Apex enables developers to add business logic to most system events, including button clicks,
related record updates, and Visualforce pages. Apex code can be initiated by Web service requests and from triggers on objects.
Apex-Managed Sharing
Enables developers to programmatically manipulate sharing to support their application’s behavior. Apex-managed sharing is only
available for custom objects.
App
Short for “application.” A collection of components such as tabs, reports, dashboards, and Visualforce pages that address a specific
business need. Salesforce provides standard apps such as Sales and Service. You can customize the standard apps to match the way
you work. In addition, you can package an app and upload it to the AppExchange along with related components such as custom
fields, custom tabs, and custom objects. Then, you can make the app available to other Salesforce users from the AppExchange.
AppExchange
The AppExchange is a sharing interface from Salesforce that allows you to browse and share apps and services for the Force.com
platform.
AppExchange Upgrades
Upgrading an app is the process of installing a newer version.
Application Programming Interface (API)
The interface that a computer system, library, or application provides to allow other computer programs to request services from it
and exchange data.
Asynchronous Calls
A call that does not return results immediately because the operation may take a long time. Calls in the Metadata API and Bulk API
are asynchronous.
B
Boolean Operators
You can use Boolean operators in report filters to specify the logical relationship between two values. For example, the AND operator
between two values yields search results that include both values. Likewise, the OR operator between two values yields search results
that include either value.
Bulk API
The REST-based Bulk API is optimized for processing large sets of data. It allows you to query, insert, update, upsert, or delete a large
number of records asynchronously by submitting a number of batches which are processed in the background by Salesforce. See
also SOAP API.
736
Glossary
C
Class, Apex
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. In most cases, Apex classes are modeled on their counterparts in Java.
Client App
An app that runs outside the Salesforce user interface and uses only the Force.com API or Bulk API. It typically runs on a desktop or
mobile device. These apps treat the platform as a data source, using the development model of whatever tool and platform for
which they are designed.
Component, Metadata
A component is an instance of a metadata type in the Metadata API. For example, CustomObject is a metadata type for custom
objects, and the MyCustomObject__c component is an instance of a custom object. A component is described in an XML file
and it can be deployed or retrieved using the Metadata API, or tools built on top of it, such as the Force.com IDE or the Force.com
Migration Tool.
Component, Visualforce
Something that can be added to a Visualforce page with a set of tags, for example, . Visualforce includes a
number of standard components, or you can create your own custom components.
Component Reference, Visualforce
A description of the standard and custom Visualforce components that are available in your organization. You can access the
component library from the development footer of any Visualforce page or the Visualforce Developer's Guide.
Controller, Visualforce
An Apex class that provides a Visualforce page with the data and business logic it needs to run. Visualforce pages can use the standard
controllers that come by default with every standard or custom object, or they can use custom controllers.
Controlling Field
Any standard or custom picklist or checkbox field whose values control the available values in one or more corresponding dependent
fields.
Custom App
See App.
Custom Field
A field that can be added in addition to the standard fields to customize Salesforce for your organization’s needs.
Custom Help
Custom text administrators create to provide users with on-screen information specific to a standard field, custom field, or custom
object.
Custom Links
Custom links are URLs defined by administrators to integrate your Salesforce data with external websites and back-office systems.
Formerly known as Web links.
Custom Object
Custom records that allow you to store information unique to your organization.
Custom S-Control
Note: S-controls have been superseded by Visualforce pages. After March 2010 organizations that have never created
s-controls, as well as new organizations, won't be allowed to create them. Existing s-controls will remain unaffected, and can
still be edited.
Custom Web content for use in custom links. Custom s-controls can contain any type of content that you can display in a browser,
for example a Java applet, an Active-X control, an Excel file, or a custom HTML Web form.
737
Glossary
D
Database
An organized collection of information. The underlying architecture of the Force.com platform includes a database where your data
is stored.
Database Table
A list of information, presented with rows and columns, about the person, thing, or concept you want to track. See also Object.
Data Manipulation Language (DML)
An Apex method or operation that inserts, updates, or deletes records.
Decimal Places
Parameter for number, currency, and percent custom fields that indicates the total number of digits you can enter to the right of a
decimal point, for example, 4.98 for an entry of 2. Note that the system rounds the decimal numbers you enter, if necessary. For
example, if you enter 4.986 in a field with Decimal Places of 2, the number rounds to 4.99. Salesforce uses the round half-up
rounding algorithm. Half-way values are always rounded up. For example, 1.45 is rounded to 1.5. –1.45 is rounded to –1.5.
Dependent Field
Any custom picklist or multi-select picklist field that displays available values based on the value selected in its corresponding
controlling field.
Developer Edition
A free, fully-functional Salesforce organization designed for developers to extend, integrate, and develop with the Force.com platform.
Developer Edition accounts are available on developer.salesforce.com.
Salesforce Developers
The Salesforce Developers website at developer.salesforce.com provides a full range of resources for platform developers, including
sample code, toolkits, an online developer community, and the ability to obtain limited Force.com platform environments.
Document Library
A place to store documents without attaching them to accounts, contacts, opportunities, or other records.
E
Email Alert
Email alerts are actions that send emails, using a specified email template, to specified recipients.
Email Template
A form email that communicates a standard message, such as a welcome letter to new employees or an acknowledgement that a
customer service request has been received. Email templates can be personalized with merge fields, and can be written in text,
HTML, or custom format.
Enterprise Edition
A Salesforce edition designed for larger, more complex businesses.
Enterprise WSDL
A strongly-typed WSDL for customers who want to build an integration with their Salesforce organization only, or for partners who
are using tools like Tibco or webMethods to build integrations that require strong typecasting. The downside of the Enterprise WSDL
is that it only works with the schema of a single Salesforce organization because it is bound to all of the unique objects and fields
that exist in that organization's data model.
Entity Relationship Diagram (ERD)
A data modeling tool that helps you organize your data into entities (or objects, as they are called in the Force.com platform) and
define the relationships between them. ERD diagrams for key Salesforce objects are published in the SOAP API Developer's Guide.
738
Glossary
Enumeration Field
An enumeration is the WSDL equivalent of a picklist field. The valid values of the field are restricted to a strict set of possible values,
all having the same data type.
F
Field
A part of an object that holds a specific piece of information, such as a text or currency value.
Field-Level Security
Settings that determine whether fields are hidden, visible, read only, or editable for users. Available in Professional, Enterprise,
Unlimited, Performance, and Developer Editions.
Filter Condition/Criteria
Condition on particular fields that qualifies items to be included in a list view or report, such as “State equals California.”
Force.com
The Salesforce platform for building applications in the cloud. Force.com combines a powerful user interface, operating system, and
database to allow you to customize and deploy applications in the cloud for your entire enterprise.
Force.com IDE
An Eclipse plug-in that allows developers to manage, author, debug and deploy Force.com applications in the Eclipse development
environment.
Force.com Migration Tool
A toolkit that allows you to write an Apache Ant build script for migrating Force.com components between a local file system and
a Salesforce organization.
Foreign Key
A field whose value is the same as the primary key of another table. You can think of a foreign key as a copy of a primary key from
another table. A relationship is made between two tables by matching the values of the foreign key in one table with the values of
the primary key in another.
Formula Field
A type of custom field. Formula fields automatically calculate their values based on the values of merge fields, expressions, or other
values.
Function
Built-in formulas that you can customize with input parameters. For example, the DATE function creates a date field type from a
given year, month, and day.
G
Gregorian Year
A calendar based on a 12-month structure used throughout much of the world.
H
HTTP Debugger
An application that can be used to identify and inspect SOAP requests that are sent from the AJAX Toolkit. They behave as proxy
servers running on your local machine and allow you to inspect and author individual requests.
739
Glossary
I
ID
See Salesforce Record ID.
Inline S-Control
Note: S-controls have been superseded by Visualforce pages. After March 2010 organizations that have never created
s-controls, as well as new organizations, won't be allowed to create them. Existing s-controls will remain unaffected, and can
still be edited.
An s-control that displays within a record detail page or dashboard, rather than on its own page.
Instance
The cluster of software and hardware represented as a single logical server that hosts an organization's data and runs their applications.
The Force.com platform runs on multiple instances, but data for any single organization is always stored on a single instance.
Integration User
A Salesforce user defined solely for client apps or integrations. Also referred to as the logged-in user in a SOAP API context.
ISO Code
The International Organization for Standardization country code, which represents each country by two letters.
J
Junction Object
A custom object with two master-detail relationships. Using a custom junction object, you can model a “many-to-many” relationship
between two objects. For example, you may have a custom object called “Bug” that relates to the standard case object such that a
bug could be related to multiple cases and a case could also be related to multiple bugs.
K
No Glossary items for this entry.
L
License Management Application (LMA)
A free AppExchange app that allows you to track sales leads and accounts for every user who downloads your managed package
(app) from the AppExchange.
License Management Organization (LMO)
The Salesforce organization that you use to track all the Salesforce users who install your package. A license management organization
must have the License Management Application (LMA) installed. It automatically receives notification every time your package is
installed or uninstalled so that you can easily notify users of upgrades. You can specify any Enterprise, Unlimited, Performance, or
Developer Edition organization as your license management organization. For more information, go to
http://www.salesforce.com/docs/en/lma/index.htm.
List View
A list display of items (for example, accounts or contacts) based on specific criteria. Salesforce provides some predefined views.
740
Glossary
In the Agent console, the list view is the top frame that displays a list view of records based on specific criteria. The list views you
can select to display in the console are the same list views defined on the tabs of other objects. You cannot create a list view within
the console.
Local Project
A .zip file containing a project manifest (package.xml file) and one or more metadata components.
Locale
The country or geographic region in which the user is located. The setting affects the format of date and number fields, for example,
dates in the English (United States) locale display as 06/30/2000 and as 30/06/2000 in the English (United Kingdom) locale.
In Professional, Enterprise, Unlimited, Performance, and Developer Edition organizations, a user’s individual Locale setting overrides
the organization’s Default Locale setting. In Personal and Group Editions, the organization-level locale field is called Locale,
not Default Locale.
Logged-in User
In a SOAP API context, the username used to log into Salesforce. Client applications run with the permissions and sharing of the
logged-in user. Also referred to as an integration user.
Lookup Field
A type of field that contains a linkable value to another record. You can display lookup fields on page layouts where the object has
a lookup or master-detail relationship with another object. For example, cases have a lookup relationship with assets that allows
users to select an asset using a lookup dialog from the case edit page and click the name of the asset from the case detail page.
M
Managed Package
A collection of application components that is posted as a unit on the AppExchange and associated with a namespace and possibly
a License Management Organization. To support upgrades, a package must be managed. An organization can create a single
managed package that can be downloaded and installed by many different organizations. Managed packages differ from unmanaged
packages by having some locked components, allowing the managed package to be upgraded later. Unmanaged packages do not
include locked components and cannot be upgraded. In addition, managed packages obfuscate certain components (like Apex) on
subscribing organizations to protect the intellectual property of the developer.
Manifest File
The project manifest file (package.xml) lists the XML components to retrieve or deploy when working with the Metadata API,
or clients built on top of the Metadata API, such as the Force.com IDE or the Force.com Migration Tool.
Manual Sharing
Record-level access rules that allow record owners to give read and edit permissions to other users who might not have access to
the record any other way.
Many-to-Many Relationship
A relationship where each side of the relationship can have many children on the other side. Many-to-many relationships are
implemented through the use of junction objects.
Master-Detail Relationship
A relationship between two different types of records that associates the records with each other. For example, accounts have a
master-detail relationship with opportunities. This type of relationship affects record deletion, security, and makes the lookup
relationship field required on the page layout.
Metadata
Information about the structure, appearance, and functionality of an organization and any of its parts. Force.com uses XML to describe
metadata.
741
Glossary
Metadata WSDL
A WSDL for users who want to use the Force.com Metadata API calls.
Multitenancy
An application model where all users and apps share a single, common infrastructure and code base.
N
Namespace
In a packaging context, a one- to 15-character alphanumeric identifier that distinguishes your package and its contents from packages
of other developers onAppExchange, similar to a domain name. Salesforce automatically prepends your namespace prefix, followed
by two underscores (“__”), to all unique component names in your Salesforce organization.
Native App
An app that is built exclusively with setup (metadata) configuration on Force.com. Native apps do not require any external services
or infrastructure.
O
Object
An object allows you to store information in your Salesforce organization. The object is the overall definition of the type of information
you are storing. For example, the case object allow you to store information regarding customer inquiries. For each object, your
organization will have multiple records that store the information about specific instances of that type of data. For example, you
might have a case record to store the information about Joe Smith's training inquiry and another case record to store the information
about Mary Johnson's configuration issue.
Object-Level Help
Custom help text that you can provide for any custom object. It displays on custom object record home (overview), detail, and edit
pages, as well as list views and related lists.
Object-Level Security
Settings that allow an administrator to hide whole objects from users so that they don't know that type of data exists. Object-level
security is specified with object permissions.
onClick JavaScript
JavaScript code that executes when a button or link is clicked.
One-to-Many Relationship
A relationship in which a single object is related to many other objects. For example, an account may have one or more related
contacts.
Organization-Wide Defaults
Settings that allow you to specify the baseline level of data access that a user has in your organization. For example, you can set
organization-wide defaults so that any user can see any record of a particular object that is enabled via their object permissions, but
they need extra permissions to edit one.
Outbound Message
An outbound message sends information to a designated endpoint, like an external service. Outbound messages are configured
from Setup. You must configure the external endpoint and create a listener for the messages using the SOAP API.
Overlay
An overlay displays additional information when you hover your mouse over certain user interface elements. Depending on the
overlay, it will close when you move your mouse away, click outside of the overlay, or click a close button.
742
Glossary
Owner
Individual user to which a record (for example, a contact or case) is assigned.
P
Package
A group of Force.com components and applications that are made available to other organizations through the AppExchange. You
use packages to bundle an app along with any related components so that you can upload them to AppExchange together.
Partner WSDL
A loosely-typed WSDL for customers, partners, and ISVs who want to build an integration or an AppExchange app that can work
across multiple Salesforce organizations. With this WSDL, the developer is responsible for marshaling data in the correct object
representation, which typically involves editing the XML. However, the developer is also freed from being dependent on any particular
data model or Salesforce organization. Contrast this with the Enterprise WSDL, which is strongly typed.
Picklist
Selection list of options available for specific fields in a Salesforce object, for example, the Industry field for accounts. Users can
choose a single value from a list of options rather than make an entry directly in the field. See also Master Picklist.
Picklist (Multi-Select)
Selection list of options available for specific fields in a Salesforce object. Multi-select picklists allow users to choose one or more
values. Users can choose a value by double clicking on it, or choose additional values from a scrolling list by holding down the CTRL
key while clicking a value and using the arrow icon to move them to the selected box.
Picklist Values
Selections displayed in drop-down lists for particular fields. Some values come predefined, and other values can be changed or
defined by an administrator.
Primary Key
A relational database concept. Each table in a relational database has a field in which the data value uniquely identifies the record.
This field is called the primary key. The relationship is made between two tables by matching the values of the foreign key in one
table with the values of the primary key in another.
Production Organization
A Salesforce organization that has live users accessing data.
Professional Edition
A Salesforce edition designed for businesses who need full-featured CRM functionality.
Q
Queue
A holding area for items before they are processed. Salesforce uses queues in a number of different features and technologies.
Query String Parameter
A name-value pair that's included in a URL, typically after a '?' character. For example:
https://yourInstance.salesforce.com/001/e?name=value
743
Glossary
R
Record
A single instance of a Salesforce object. For example, “John Jones” might be the name of a contact record.
Record Name
A standard field on all Salesforce objects. Whenever a record name is displayed in a Force.com application, the value is represented
as a link to a detail view of the record. A record name can be either free-form text or an autonumber field. Record Name does
not have to be a unique value.
Record Type
A record type is a field available for certain records that can include some or all of the standard and custom picklist values for that
record. You can associate record types with profiles to make only the included picklist values available to users with that profile.
Record-Level Security
A method of controlling data in which you can allow a particular user to view and edit an object, but then restrict the records that
the user is allowed to see.
Recycle Bin
A page that lets you view and restore deleted information. Access the Recycle Bin by using the link in the sidebar.
Related Object
Objects chosen by an administrator to display in the Agent console's mini view when records of a particular type are shown in the
console's detail view. For example, when a case is in the detail view, an administrator can choose to display an associated account,
contact, or asset in the mini view.
Relationship
A connection between two objects, used to create related lists in page layouts and detail levels in reports. Matching values in a
specified field in both objects are used to link related data; for example, if one object stores data about companies and another
object stores data about people, a relationship allows you to find out which people work at the company.
Relationship Query
In a SOQL context, a query that traverses the relationships between objects to identify and return results. Parent-to-child and
child-to-parent syntax differs in SOQL queries.
Report Type
A report type defines the set of records and fields available to a report based on the relationships between a primary object and its
related objects. Reports display only records that meet the criteria defined in the report type. Salesforce provides a set of pre-defined
standard report types; administrators can create custom report types as well.
Role Hierarchy
A record-level security setting that defines different levels of users such that users at higher levels can view and edit information
owned by or shared with users beneath them in the role hierarchy, regardless of the organization-wide sharing model settings.
Roll-Up Summary Field
A field type that automatically provides aggregate values from child records in a master-detail relationship.
S
SaaS
See Software as a Service (SaaS).
744
Glossary
S-Control
Note: S-controls have been superseded by Visualforce pages. After March 2010 organizations that have never created
s-controls, as well as new organizations, won't be allowed to create them. Existing s-controls will remain unaffected, and can
still be edited.
Custom Web content for use in custom links. Custom s-controls can contain any type of content that you can display in a browser,
for example a Java applet, an Active-X control, an Excel file, or a custom HTML Web form.
Salesforce Record ID
A unique 15- or 18-character alphanumeric string that identifies a single record in Salesforce.
Salesforce SOA (Service-Oriented Architecture)
A powerful capability of Force.com that allows you to make calls to external Web services from within Apex.
Sandbox
A nearly identical copy of a Salesforce production organization for development, testing, and training. The content and size of a
sandbox varies depending on the type of sandbox and the editioin of the production organization associated with the sandbox.
Search Layout
The organization of fields included in search results, in lookup dialogs, and in the key lists on tab home pages.
Session ID
An authentication token that is returned when a user successfully logs in to Salesforce. The Session ID prevents a user from having
to log in again every time he or she wants to perform another action in Salesforce. Different from a record ID or Salesforce ID, which
are terms for the unique ID of a Salesforce record.
Session Timeout
The period of time after login before a user is automatically logged out. Sessions expire automatically after a predetermined length
of inactivity, which can be configured in Salesforce from Setup by clicking Security Controls. The default is 120 minutes (two hours).
The inactivity timer is reset to zero if a user takes an action in the Web interface or makes an API call.
Setup
A menu where administrators can customize and define organization settings and Force.com apps. Depending on your organization’s
user interface settings, Setup may be a link in the user interface header or in the drop-down list under your name.
Sharing
Allowing other users to view or edit information you own. There are different ways to share data:
• Sharing Model—defines the default organization-wide access levels that users have to each other’s information and whether
to use the hierarchies when determining access to data.
• Role Hierarchy—defines different levels of users such that users at higher levels can view and edit information owned by or
shared with users beneath them in the role hierarchy, regardless of the organization-wide sharing model settings.
• Sharing Rules—allow an administrator to specify that all information created by users within a given group or role is automatically
shared to the members of another group or role.
• Manual Sharing—allows individual users to share records with other users or groups.
• Apex-Managed Sharing—enables developers to programmatically manipulate sharing to support their application’s behavior.
See Apex-Managed Sharing.
Sharing Model
Behavior defined by your administrator that determines default access by users to different types of records.
Sharing Rule
Type of default sharing created by administrators. Allows users in a specified group or role to have access to all information created
by users within a given group or role.
745
Glossary
Sites
Force.com Sites enables you to create public websites and applications that are directly integrated with your Salesforce
organization—without requiring users to log in with a username and password.
Snippet
Note: S-controls have been superseded by Visualforce pages. After March 2010 organizations that have never created
s-controls, as well as new organizations, won't be allowed to create them. Existing s-controls will remain unaffected, and can
still be edited.
A type of s-control that is designed to be included in other s-controls. Similar to a helper method that is used by other methods in
a piece of code, a snippet allows you to maintain a single copy of HTML or JavaScript that you can reuse in multiple s-controls.
SOAP (Simple Object Access Protocol)
A protocol that defines a uniform way of passing XML-encoded data.
Software as a Service (SaaS)
A delivery model where a software application is hosted as a service and provided to customers via the Internet. The SaaS vendor
takes responsibility for the daily maintenance, operation, and support of the application and each customer's data. The service
alleviates the need for customers to install, configure, and maintain applications with their own hardware, software, and related IT
resources. Services can be delivered using the SaaS model to any market segment.
SOQL (Salesforce Object Query Language)
A query language that allows you to construct simple but powerful query strings and to specify the criteria that should be used to
select data from the Force.com database.
SOSL (Salesforce Object Search Language)
A query language that allows you to perform text-based searches using the Force.com API.
Standard Object
A built-in object included with the Force.com platform. You can also build custom objects to store information that is unique to
your app.
System Log
Part of the Developer Console, a separate window console that can be used for debugging code snippets. Enter the code you want
to test at the bottom of the window and click Execute. The body of the System Log displays system resource information, such as
how long a line took to execute or how many database calls were made. If the code did not run to completion, the console also
displays debugging information.
T
Test Method
An Apex class method that verifies whether a particular piece of code is working properly. Test methods take no arguments, commit
no data to the database, and can be executed by the runTests() system method either through the command line or in an
Apex IDE, such as the Force.com IDE.
Translation Workbench
The Translation Workbench lets you specify languages you want to translate, assign translators to languages, create translations for
customizations you’ve made to your Salesforce organization, and override labels and translations from managed packages. Everything
from custom picklist values to custom fields can be translated so your global users can use all of Salesforce in their language.
Trigger
A piece of Apex that executes before or after records of a particular type are inserted, updated, or deleted from the database. Every
trigger runs with a set of context variables that provide access to the records that caused the trigger to fire, and all triggers run in
bulk mode—that is, they process several records at once, rather than just one record at a time.
746
Glossary
Trigger Context Variable
Default variables that provide access to information about the trigger and the records that caused it to fire.
U
Unit Test
A unit is the smallest testable part of an application, usually a method. A unit test operates on that piece of code to make sure it
works correctly. See also Test Method.
Unlimited Edition
Unlimited Edition is Salesforce’s solution for maximizing your success and extending that success across the entire enterprise through
the Force.com platform.
Unmanaged Package
A package that cannot be upgraded or controlled by its developer.
URL (Uniform Resource Locator)
The global address of a website, document, or other resource on the Internet. For example, http://www.salesforce.com.
URL S-Control
Note: S-controls have been superseded by Visualforce pages. After March 2010 organizations that have never created
s-controls, as well as new organizations, won't be allowed to create them. Existing s-controls will remain unaffected, and can
still be edited.
An s-control that contains an external URL that hosts the HTML that should be rendered on a page. When saved this way, the HTML
is hosted and run by an external website. URL s-controls are also called Web controls.
V
Validation Rule
A rule that prevents a record from being saved if it does not meet the standards that are specified.
Visualforce
A simple, tag-based markup language that allows developers to easily define custom pages and components for apps built on the
platform. Each tag corresponds to a coarse or fine-grained component, such as a section of a page, a related list, or a field. The
components can either be controlled by the same logic that is used in standard Salesforce pages, or developers can associate their
own logic with a controller written in Apex.
W
Web Control
See URL S-Control.
Web Links
See Custom Links.
Web Service
A mechanism by which two applications can easily exchange data over the Internet, even if they run on different platforms, are
written in different languages, or are geographically remote from each other.
747
Glossary
WebService Method
An Apex class method or variable that can be used by external systems, like a mash-up with a third-party application. Web service
methods must be defined in a global class.
Web Services API
A Web services application programming interface that provides access to your Salesforce organization's information. See also SOAP
API and Bulk API.
Web Tab
A custom tab that allows your users to use external websites from within the application.
Workflow Action
A workflow action, such as an email alert, field update, outbound message, or task, fires when the conditions of a workflow rule are
met.
Workflow Email Alert
A workflow action that sends an email when a workflow rule is triggered. Unlike workflow tasks, which can only be assigned to
application users, workflow alerts can be sent to any user or contact, as long as they have a valid email address.
Workflow Field Update
A workflow action that changes the value of a particular field on a record when a workflow rule is triggered.
Workflow Outbound Message
A workflow action that sends data to an external Web service, such as another cloud computing application. Outbound messages
are used primarily with composite apps.
Workflow Queue
A list of workflow actions that are scheduled to fire based on workflow rules that have one or more time-dependent workflow actions.
Workflow Rule
A workflow rule sets workflow actions into motion when its designated conditions are met. You can configure workflow actions to
execute immediately when a record meets the conditions in your workflow rule, or set time triggers that execute the workflow
actions on a specific day.
Workflow Task
A workflow action that assigns a task to an application user when a workflow rule is triggered.
WSDL (Web Services Description Language) File
An XML file that describes the format of messages you send and receive from a Web service. Your development environment's SOAP
client uses the Salesforce Enterprise WSDL or Partner WSDL to communicate with Salesforce using the SOAP API.
X
XML (Extensible Markup Language)
A markup language that enables the sharing and transportation of structured data. All Force.com components that are retrieved or
deployed through the Metadata API are represented by XML definitions.
Y
No Glossary items for this entry.
748
Glossary
Z
Zip File
A data compression and archive format.
A collection of files retrieved or deployed by the Metadata API. See also Local Project.
749
INDEX
component 686
A
Account Team Roles 17
AccountSettings components 558
ActionLinkGroupTemplate component 120
ActionOverride component 244
ActivitiesSettings component 559
AddressSettings component 563
AllOrNoneHeader header 714
Analytics 405
AnalyticSnapshot component 124
ApexClass component 136
ApexComponent component 138
ApexPage component 139
ApexTestSuite component 141
ApexTrigger component 142
API support policy 3
AppMenu component 144
ApprovalProcess components 147
ArticleType component
Channel Layout 132
Layout 130, 333
AssignmentRules component 158
AuraDefinitionBundle component 160
AuthProvider object 163
AutoResponseRules component 167
B
Backward compatibilty 3
BaseSharingRule component 639
BusinessHoursSettings component 567
BusinessProcess component 246
C
call deprecation 3
CallCenter component 170
CallOptions header 716
Calls
cancelDeploy 43
checkDeployStatus 42
checkRetrieveStatus 56
checkStatus 79
create (asynchronous) 71
createMetadata (synchronous) 59
delete (asynchronous) 73
Calls (continued)
deleteMetadata (synchronous) 68
deploy 33
deployRecentValidation 45
describeMetadata 80
describeValueType 81
listMetadata 84, 86
readMetadata (synchronous) 62
renameMetadata (synchronous) 70
retrieve 50
update (asynchronous) 75
updateMetadata (synchronous) 63
upsertMetadata (synchronous) 66
CampaignInfluenceModel component 172
cancel deploy call 43
CaseSettings components 571
Certificate component 173
Channel Layout (for article types) 132
ChatterAnswersSettings component 578
checkDeployStatus metadata call 42
checkRetrieveStatus metadata call 56
checkStatus metadata call 79
CleanDataService component 174
Community (Zone)component 179
CommunityTemplateDefinition component 182, 196
CommunityThemeDefinition component 186
CompactLayout component 248
CompanySettings component 580
component 222
Components
AccountSettings 558
ActionLinkGroupTempalte 120
ActionOverride 244
ActivitiesSettings 559
Activity Settings 559
AddressSettings 563
AnalyticSnapshot 124
ApexClass 136
ApexComponent 138
ApexPage 139
ApexTestSuite 141
ApexTrigger 142
AppMenu 144
ApprovalProcess 147
Article Type 133
ArticleType 127
750
Index
Components (continued)
AssignmentRules 158
AuraDefinitionBundle 160
AutoResponseRules 167
BaseSharingRule 639
BusinessHoursSettings 567
BusinessProcess 246
CallCenter 170
CampaignInfluenceModel 172
CaseSettings 571
Certificate 173
Channel Layout (for article types) 132
ChatterAnswersSettings 578
CleanDataService 174
Community (Zone) 179
CommunityTemplateDefinition 182, 196
CommunityThemeDefinition 186
CompactLayout 248
CompanySettings 580
ConnectedApp 187
ContractSettings 581
CorsWhitelistOrigin 198
CriteriaBasedSharingRule 640
CspTrustedSite 200
custom metadata type 226
CustomApplication 201
CustomApplicationComponent 220
CustomFeedFilter 222
CustomField 250
CustomLabels 224
CustomMetadata 229
CustomObject 233
CustomObjectTranslation 288
CustomPageWebLink 297
CustomPermission 300
CustomSite 302
CustomTab 308
CustomValue 311
Dashboard 314
DelegateGroup 338
Dependent Picklist (see Picklist) 269
Document 340
DuplicateRule 342
EclairGeoData 347
EmailTemplate 349
EntitlementProcess 353
EntitlementSettings 582
EntitlementTemplate 357
EscalationRules 358
Components (continued)
ExternalDataSource 361
ExternalServiceRegistration 401
FieldSet 261
FileUploadAndDownloadSecuritySettings 584
FlexiPage 365
Flow 373
Folder 403
FolderShare 405
ForecastingSettings 588
GlobalPicklist 407
GlobalPicklistValue 408
GlobalValueSet 411
GlobalValueSetTranslation 413
Group 414
HistoryRetentionPolicy 262
HomePageComponent 415
HomePageLayout 417
IdeasSettings 598
InstalledPackage 418
KeywordList 419
KnowledgeSettings 599
Layout 421
Layout (for article types) 130, 333
LeadConvertSettings 605
Letterhead 441
list of types 106
ListView 263
LiveAgentSettings 607
LiveChatAgentConfig 444
LiveChatButton 448
LiveChatDeployment 451
LiveChatSensitiveDataRule 453
ManagedTopics 455
MatchingRule 457
Metadata 460
MetadataWithContent 461
MilestoneType 461
MobileSettings 607
ModerationRule 462
NamedCredential 466
NamedFilter 266
NameSettings 610
network 467
OpportunitySettings 611
OrderSettings 613
OrgPreferenceSettings 614
OwnerSharingRule 646
PathAssistant 482
751
Index
Components (continued)
PathAssistantSettings 616
PermissionSet 484
PersonalJourneySettings 617
Picklist 269
PlatformCachePartition 491
Portal 493
PostTemplate 495
ProductSettings 617
Profile 496
ProfileActionOverride 509
Queue 511
QuickAction 512
QuoteSettings 618
RecordType 273
RemoteSiteSetting 517
Report 519
ReportType 545
Role 549
RoleOrTerritory 550
SamlSsoConfig 552
Scontrol 555
SearchLayouts 275
SearchSettings 619
SecuritySettings 622
Settings 557
SharedTo 629
SharingBaseRule 631
SharingReason 278
SharingRecalculation 279
SharingRules 633
SharingSet 652
SiteDotCom 655
Skill 656
StandardValueSet 658
StandardValueSetTranslation 659
StaticResource 660
SynonymDictionary 662
Territory 664
Territory2 665
Territory2Model 669
Territory2Rule 671
Territory2Settings 628
Territory2Type 673
TransactionSecurityPolicy 675
Translations 677
unsupported 118
UserCriteria 686
ValidationRule 279
Components (continued)
WaveApplication 687
WaveDashboard 689
WaveDataflow 688
WaveDataset 690
WaveLens 690
WaveTemplateBundle 692
WaveXmd 693
WebLink 281
Workflow 698
Components in deployments 119
ConnectedApp component 187
ContractSettings component 581
CorsWhitelistOrigin component 198
create call (asynchronous) 71
createMetadata call (synchronous) 59
CriteriaBasedSharingRule component 640
CspTrustedSite component 200
Custom metadada type component 226
CustomApplication component 201
CustomApplicationComponent component 220
CustomField component 250
CustomLabels component 224
CustomMetadata component 229
CustomObject
WebLink component 281
CustomObject component 233
CustomObjectTranslation
language support 720, 726
CustomObjectTranslation component 288
CustomPageWebLink component 297
CustomPermission component 300
CustomSite component 302
CustomTab component 308
CustomValue component 311
D
Dashboard component 314
DebuggingHeader header 717
DelegateGroup component 338
delete call (asynchronous) 73
Delete components 41
deleteMetadata call (synchronous) 68
Dependent Picklist 269
Deploy 15
deploy call
running tests 23–25
Deployment issues 119
deployRecentValidation call 45
752
Index
Deprecated calls 3
describeMetadata call 80
describeValueType call 81
destructiveChanges.xml 41
destructiveChangesPost.xml 41
destructiveChangesPre.xml 41
Developer resources 3
Development platforms 2
Document component 340
DuplicateRule component 342
E
EclairGeoData component 347
Editions 1
EmailTemplate component 349
EntitlementProcess components 353
EntitlementSettings components 582
EntitlementTemplate component 357
Error handling 32
EscalationRules component 358
Expiration of session ID 32
ExternalDataSource component 361
ExternalServiceRegistration component 401
F
Field types 285
FieldSet component 261
File-based metadata 15
FileUploadAndDownloadSecuritySettings component 584
FlexiPage component 365
Flow component 373
FlowDefinition 402
Folder component 403
ForecastingSettings component 588
G
Global picklist 311, 407–408, 411
Global value set 411
global value sets
translation of 413
GlobalPicklist component 407
GlobalPicklistValue component 408
GlobalValueSet component 311, 411
GlobalValueSetTranslation component 413
Group component 414
H
Headers
AllOrNoneHeader 714
Headers (continued)
CallOptions 716
DebuggingHeader 717
SessionHeader 719
HistoryRetentionPolicy component 262
HomePageComponent component 415
HomePageLayout component 417
I
IdeasSettings component 598
InstalledPackage component 418
K
KeywordList component 419
KnowledgeSettings component 599
L
Layout component 421
Layout component (for article types) 130, 333
LeadConvertSettings components 605
Letterhead component 441
listMetadata call 84
ListMetadataQuery 86
ListView component 263
LiveAgentSettings components 607
LiveChatAgentConfig components 444
LiveChatButton components 448
LiveChatDeployment components 451
LiveChatSensitiveDataRule component 453
M
ManagedTopics component 455
Manifest file 15, 17
MatchingRule component 457
Metadata calls 1
Metadata component 460
Metadata components 117
Metadata types 106, 117–118
MetadataWithContent component 461
MilestoneType component 461
MobileSettings component 607
ModerationRule component 462
N
NamedCredential component 466
NamedFilter component 266
NameSettings component 610
Network component 467
753
Index
O
Object relationship 545
Objects
AuthProvider 163
Opportunity Team Roles 17
OpportunitySettings component 611
OrderSettings component 613
OrgPreferenceSettings component 614
Outer join 545
OwnerSharingRule component 646
P
Package 480
Package versions 136
package.xml
samples 17
PackageVersion 136
PathAssistant component 482
PathAssistantSettings component 616
PermissionSet component 484
PersonalJourneySettings component 617
Picklist component 269
Picklist value set 407–408
PicklistValue component 408
PlatformCachePartition component 491
Portal component 493
PostTemplate component 495
Prerequisites 4
ProductSettings component 617
Profile component 496
ProfileActionOverride component 509
Q
Queue component 511
Quick start
Generate WSDLs 4
Import WSDLs 5
Java sample 6
Prerequisites 4
QuickAction component 512
QuoteSettings component 618
R
readMetadata call (synchronous) 62
RecordType component 273
Recycle Bin 340
RemoteSiteSetting component 517
renameMetadata call (synchronous) 70
Report component 519
ReportType component 545
Retrieve 15
retrieve call 50
RetrieveRequest 55
Role component 549
RoleOrTerritory component 550
S
SamlSsoConfig component 552
Sample code 6
Sandbox 1
Scontrol component 555
SearchLayouts component 275
SearchSettings components 619
SecuritySettings component 622
Session ID expiration 32
SessionHeader header 719
Settings 557
SharedTo component 629
SharingBaseRule component 631
SharingReason component 278
SharingRecalculation component 279
SharingRules 633
SharingSet component 652
SiteDotCom component 655
Skill component 656
Standard Picklist
standard value set names in API version 38.0 and later 733
standard value sets
translation of 659
Standards compliance 2
StandardValueSet
names 733
StandardValueSetTranslation component 659
StaticResource component 660
Support policy 3
Supported calls 117
SynonymDictionary component 662
T
Territory component 664
Territory2 component 665
Territory2Model component 669
Territory2Rule component 671
Territory2Settings component 628
Territory2Type component 673
TransactionSecurityPolicy component 675
Translations component 677
Types of fields 285
754
Index
U
Understanding metadata calls and components 1
update call (asynchronous) 75
updateMetadata call (synchronous) 63
upsertMetadata call (synchronous) 66
Usernames 25
V
ValidationRule component 279
Versions 136
Visualforce component, see ApexComponent 138
Visualforce page, see ApexPage 139
WaveDashboard component 689
WaveDataflow component 688
WaveDataset component 690
WaveLens component 690
WaveTemplateBundle component 692
WaveXmd component 693
WebLink component 281
Workflow component 698
WSC 5
WSDL integration 4–5
Z
Zip file 15
W
WaveApplication component 687
755
Source Exif Data:
File Type : PDF
File Type Extension : pdf
MIME Type : application/pdf
PDF Version : 1.4
Linearized : Yes
Create Date : 2017:04:17 17:20:06Z
Author : salesforce.com, inc.
Date Time Generated : 2017-04-17T10:19:40.261-07:00
Trapped : False
DRC : 206.19
Modify Date : 2017:04:17 17:20:06Z
Format : application/pdf
Title : Metadata API Developer Guide
Creator : salesforce.com, inc.
Producer : XEP 4.20 build 20120720
Creator Tool : Unknown
Page Count : 765
Page Mode : UseOutlines