FieldDefinition

Represents a standard or custom field, providing row-based access to field metadata. Contrast FieldDefinition with EntityParticle, which represents each element of a field that can be presented in a user interface. FieldDefinition has parity with metadata type Field.

Where possible, we changed noninclusive terms to align with our company value of Equality. We maintained certain terms to avoid any effect on customer implementations.

Important

FieldDefinition fields are exposed in SOAP API version 45.0 and later. You can use Tooling API to query for FieldDefinition fields in guest user mode in API version 44.0 and earlier. In API version 45.0 and later, use SOAP API to get this data in guest user mode. FieldDefinition is still exposed in Tooling API to User Profiles with the ViewSetup permission.

Note

Version 

Introduced in API version 32.0.

Supported SOAP API Calls 

describeSObjects(), query(), search()

Supported REST API Methods 

Query

Limitations 

SOQL Limitations

SOSL Limitations

Fields 

BusinessOwnerId 

  • Type: reference

  • Required: No

  • Properties: Filter, Group, Nillable, Sort

  • Introduced: API version 41.0

  • Description: Indicates the person or group associated with this field. The business owner understands the importance of the field’s data to your company and might be responsible for determining the minimum security classification.

  • Relationship name: BusinessOwner

  • Relationship type: polymorphic

  • Refers to: Group, User

BusinessStatus 

  • Type: picklist

  • Required: No

  • Properties: Filter, Group, Nillable, Sort

  • Introduced: API version 41.0

  • Description: Indicates whether the field is in use. Valid values include:

This field is available in API version 45.0 and later.

  • Possible values:

    • Active — Active

    • DeprecateCandidate — DeprecateCandidate

    • Hidden — Hidden

ComplianceGroup 

  • Type: multipicklist

  • Required: No

  • Properties: Filter, Nillable

  • Introduced: API version 47.0

  • Description: The compliance acts, definitions, or regulations related to the field’s data. Valid values include:

This field is available in API version 47.0 and later.

  • Possible values:

    • PII — PII — Personally Identifiable Information

    • HIPAA — HIPAA — Health Insurance Portability and Accountability Act

    • GDPR — GDPR — General Data Protection Regulation

    • PCI — PCI — Payment Card Industry

    • COPPA — COPPA — Children’s Online Privacy Protection Act

    • CCPA — CCPA — California Consumer Privacy Act

    • PersonalInfo — PersonalInfo — Personal information. For use with the Enhanced Personal Information Management feature. Only available if Enhanced Personal Information Management and Digital Experiences are enabled.

ControllingFieldDefinitionId 

  • Type: string

  • Required: No

  • Properties: Filter, Group, Nillable, Sort

  • Introduced: API version 34.0

  • Description: The ID of the ControllingFieldDefinition for this field. Available in Tooling API starting version 34.0.

DataType 

  • Type: string

  • Required: No

  • Properties: Filter, Group, Nillable, Sort

  • Introduced: API version 33.0

  • Description: Data type of the field, for example Text(40) or Date/Time. The values are defined as they are in the user interface, not the corresponding API data type names. Available in Tooling API starting version 34.0.

Description 

  • Type: textarea

  • Required: No

  • Properties: Filter, Nillable, Sort

  • Introduced: API version 41.0

  • Description: A description of the field definition.

DeveloperName 

  • Type: string

  • Required: No

  • Properties: Filter, Group, Nillable, Sort

  • Description: The unique name of the object in the API. 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. In managed packages, this field prevents naming conflicts on package installations. With this field, a developer can change the object’s name in a managed package and the changes are reflected in a subscriber’s org. Label is Record Type Name.

DurableId 

  • Type: string

  • Required: No

  • Properties: Filter, Group, Nillable, Sort

  • Description: Unique identifier for the field. Always retrieve this value before using it, because the value isn’t guaranteed to stay the same from one release to the next. To simplify queries, use this field.

EntityDefinitionId 

  • Type: string

  • Required: No

  • Properties: Filter, Group, Nillable, Sort

  • Description: The durable ID for the object defined in the EntityDefinition field.

ExtraTypeInfo 

  • Type: string

  • Required: No

  • Properties: Filter, Group, Nillable, Sort

  • Introduced: API version 34.0

  • Description: Represents further definition of a type. Available in Tooling API starting version 34.0.

  • For type textarea:

  • plaintextarea

  • richtextarea

  • For type URL, image

  • For type reference,

  • externallookup

  • indirectlookup

  • externallookup

  • For Account,

  • switchablepersonname

  • personname

FullName 

  • Type: string

  • Required: No

  • Properties: Create, Group, Nillable

  • Description: The full name of the associated metadata object in Metadata API.

Query this field only if the query result contains no more than one record. Otherwise, an error is returned. If more than one record exists, use multiple queries to retrieve the records. This limit protects performance.

IsApiFilterable 

  • Type: boolean

  • Required: No

  • Properties: Defaulted on create, Filter, Group, Sort

  • Introduced: API version 34.0

  • Description: If true, the field can be specified in the WHERE clause of a query string.

Available in Tooling API starting version 34.0.

You can’t sort or filter compound fields. This field’s value is always false for compound fields.

  • Default value: false

IsApiGroupable 

  • Type: boolean

  • Required: No

  • Properties: Defaulted on create, Filter, Group, Sort

  • Introduced: API version 34.0

  • Description: If true, the field can be included in the GROUP BY clause of a SOQL query. Available in Tooling API starting version 34.0.

  • Default value: false

IsApiSortable 

  • Type: boolean

  • Required: No

  • Properties: Defaulted on create, Filter, Group, Sort

  • Introduced: API version 34.0

  • Description: If true, a query can sort on this field.

Available in Tooling API starting version 34.0.

You can’t sort or filter compound fields. This field’s value is always false for compound fields.

  • Default value: false

IsCalculated 

  • Type: boolean

  • Required: No

  • Properties: Defaulted on create, Filter, Group, Sort

  • Introduced: API version 34.0

  • Description: If true, the field’s value is calculated. Available in Tooling API starting version 34.0.

  • Default value: false

IsCompactLayoutable 

  • Type: boolean

  • Required: No

  • Properties: Defaulted on create, Filter, Group, Sort

  • Description: If true, the field can be included in a compact layout. Available in Tooling API starting version 34.0.

  • Default value: false

IsCompound 

  • Type: boolean

  • Required: No

  • Properties: Defaulted on create, Filter, Group, Sort

  • Introduced: API version 38.0

  • Description: If true, the field is a compound of other fields. The default value is false. Available in Tooling API starting version 38.0.

  • Default value: false

IsEverApiAccessible 

  • Type: boolean

  • Required: No

  • Properties: Defaulted on create, Filter, Group, Sort

  • Introduced: API version 49.0

  • Description: If true, the field is describable in the API. The default value is false. Available in Tooling API starting version 49.0.

  • Default value: false

IsFieldHistoryTracked 

  • Type: boolean

  • Required: No

  • Properties: Defaulted on create, Filter, Group, Sort

  • Introduced: API version 34.0

  • Description: If true, the field’s history can be tracked. Available in Tooling API starting version 34.0.

  • Default value: false

IsFlsEnabled 

  • Type: boolean

  • Required: No

  • Properties: Defaulted on create, Filter, Group, Sort

  • Introduced: API version 35.0

  • Description: If true, you can set field-level security on this field. Available in Tooling API starting version 35.0.

  • Default value: false

IsHighScaleNumber 

  • Type: boolean

  • Required: No

  • Properties: Defaulted on create, Filter, Group, Sort

  • Introduced: API version 34.0

  • Description: Indicates whether the field stores numbers to eight decimal places regardless of what’s specified in the field details (true) or not (false). Used to handle currencies for products that cost fractions of a cent, in large quantities. If high-scale unit pricing isn’t enabled in your organization, this field isn’t returned. Available in Tooling API starting version 34.0.

  • Default value: false

IsHtmlFormatted 

  • Type: boolean

  • Required: No

  • Properties: Defaulted on create, Filter, Group, Sort

  • Introduced: API version 34.0

  • Description: If true, the field contains HTML. Available in Tooling API starting version 34.0.

  • Default value: false

IsIndexed 

  • Type: boolean

  • Required: No

  • Properties: Defaulted on create, Filter, Group, Sort

  • Introduced: API version 35.0

  • Description: If true, the field is indexed in the database.

Internal (database) indexing is different from indexing for search.

We recommend targeting indexed fields for better response times in SOQL queries, reports, and list views.

  • Default value: false

IsListFilterable 

  • Type: boolean

  • Required: No

  • Properties: Defaulted on create, Filter, Group, Sort

  • Introduced: API version 34.0

  • Description: If true, the field can be filtered for a related list. Available in Tooling API starting version 34.0.

  • Default value: false

IsListSortable 

  • Type: boolean

  • Required: No

  • Properties: Defaulted on create, Filter, Group, Sort

  • Introduced: API version 34.0

  • Description: If true, the field can be sorted for a related list. Available in Tooling API starting version 34.0.

  • Default value: false

IsListVisible 

  • Type: boolean

  • Required: No

  • Properties: Defaulted on create, Filter, Group, Sort

  • Introduced: API version 34.0

  • Description: If true, the field can be included in a related list. Available in Tooling API starting version 34.0.

  • Default value: false

IsNameField 

  • Type: boolean

  • Required: No

  • Properties: Defaulted on create, Filter, Group, Sort

  • Introduced: API version 34.0

  • Description: If true, the field is a name field. Available in Tooling API starting version 34.0.

  • Default value: false

IsNillable 

  • Type: boolean

  • Required: No

  • Properties: Defaulted on create, Filter, Group, Sort

  • Introduced: API version 34.0

  • Description: If true, the field can be left out of queries on the object. Available in Tooling API starting version 34.0.

  • Default value: false

IsPolymorphicForeignKey 

  • Type: boolean

  • Required: No

  • Properties: Defaulted on create, Filter, Group, Sort

  • Introduced: API version 41.0

  • Description: Indicates whether the foreign key includes multiple object types (true) or not (false).

  • Default value: false

IsSearchPrefilterable 

  • Type: boolean

  • Required: No

  • Properties: Defaulted on create, Filter, Group, Sort

  • Introduced: API version 40.0

  • Description: Indicates whether a foreign key can be included in prefiltering (true) or not (false) when used in a SOSL WHERE clause. Prefiltering means to filter by a specific field value before executing the full search query. Prefiltering is supported only in WHERE clauses with the equals (=) operator.

  • Default value: false

IsWorkflowFilterable 

  • Type: boolean

  • Required: No

  • Properties: Defaulted on create, Filter, Group, Sort

  • Description: If true, the field can be filtered for a workflow. Available in Tooling API starting version 34.0.

  • Default value: false

Label 

  • Type: string

  • Required: No

  • Properties: Filter, Group, Nillable, Sort

  • Description: The label that corresponds to the field in the user interface. If the label has been translated, the value returned is in the user’s language.

Length 

  • Type: int

  • Required: No

  • Properties: Filter, Group, Nillable, Sort

  • Introduced: API version 34.0

  • Description: The maximum number of bytes available to store the value in this field. Available in Tooling API starting version 34.0.

MasterLabel 

  • Type: string

  • Required: No

  • Properties: Filter, Group, Sort

  • Description: Primary label for this object. This display value is the internal label that isn’t translated. Limit: 40 characters.

Metadata 

  • Type: complexvalue

  • Required: No

  • Properties: Create, Nillable, Update

  • Description: Compact layout metadata, from the mns namespace.

Query this field only if the query result contains no more than one record. Otherwise, an error is returned. If more than one record exists, use multiple queries to retrieve the records. This limit protects performance.

NamespacePrefix 

  • Type: string

  • Required: No

  • Properties: Filter, Group, Nillable, Sort

  • Description: The namespace prefix associated with this object. Each Developer Edition org that creates a managed package has a unique namespace prefix. Limit: 15 characters. You can refer to a component in a managed package by using the namespacePrefix__componentName notation.

The namespace prefix can have one of the following values:

  • In a Developer Edition org, the namespace prefix is set to the namespace prefix of the org for all objects that support it. There’s an exception if an object is in an installed managed package. In that case, the object has the namespace prefix of the installed managed package. This field’s value is the namespace prefix of the Developer Edition org of the package developer.
  • In an org other than a Developer Edition org, NamespacePrefix is only set for objects that are part of an installed managed package. There’s no namespace prefix for all other objects.

Precision 

  • Type: int

  • Required: No

  • Properties: Filter, Group, Nillable, Sort

  • Introduced: API version 34.0

  • Description: The maximum number of digits allowed for this field. Available in Tooling API starting version 34.0.

PublisherId 

  • Type: string

  • Required: No

  • Properties: Filter, Group, Nillable, Sort

  • Introduced: API version 34.0

  • Description: ID of the publisher associated with this field. Available in Tooling API starting version 34.0.

QualifiedApiName 

  • Type: string

  • Required: No

  • Properties: Filter, Group, Sort

  • Description: A unique external name for the field.

ReferenceTargetField 

  • Type: string

  • Required: No

  • Properties: Filter, Group, Nillable, Sort

  • Introduced: API version 34.0

  • Description: Available only for indirect lookup relationship fields on external objects. Specifies the field on the parent object to match against this indirect lookup relationship field, whose values come from an external data source. The specified custom field on the parent object must have both externalId and unique set to true. Available in Tooling API starting version 34.0.

ReferenceTo 

  • Type: complexvalue

  • Required: No

  • Properties: Nillable

  • Introduced: API version 34.0

  • Description: The array of values in this field represents the possible object types of the referenced objects. For example, if a FieldDefinition represents a field on Event.WhoId, the values in this field are Contact, Lead, and custom objects with a relationship to Events. Available in Tooling API starting version 34.0.

RelationshipName 

  • Type: string

  • Required: No

  • Properties: Filter, Group, Nillable, Sort

  • Introduced: API version 34.0

  • Description: The value for one-to-many relationships. For example, in the object MyObject with a relationship to YourObject, the relationship name is typically YourObjects. Available in Tooling API starting version 34.0.

RunningUserFieldAccessId 

  • Type: string

  • Required: No

  • Properties: Filter, Group, Nillable, Sort

  • Introduced: API version 34.0

  • Description: Reserved for internal use. Available in Tooling API starting version 34.0.

Scale 

  • Type: int

  • Required: No

  • Properties: Filter, Group, Nillable, Sort

  • Introduced: API version 34.0

  • Description: The number of digits to the right of the decimal in an integer. For example, 3.00 has a scale of 2. Available in Tooling API starting version 34.0.

SecurityClassification 

  • Type: picklist

  • Required: No

  • Properties: Filter, Group, Nillable, Sort

  • Introduced: API version 41.0

  • Description: Indicates the sensitivity of the data contained in this field. Valid values include: This field is available in API version 45.0 and later.

  • Possible values:

    • Public — Public

    • Internal — Internal

    • Confidential — Confidential

    • Restricted — Restricted

    • MissionCritical — MissionCritical

ValueTypeId 

  • Type: string

  • Required: No

  • Properties: Filter, Group, Nillable, Sort

  • Introduced: API version 35.0

  • Description: The ID of the ValueType. Available in Tooling API version 35.0.

Usage 

When querying or searching the FieldDefinition object, you must filter using the following syntax: WHERE EntityDefinition.QualifiedApiName ='[ObjectAPIName]'.

Example Query:

1SELECT DurableId, QualifiedApiName, Label, DataType, ValueTypeId, PublisherId, Length, Precision, Scale, EntityDefinitionId, RelationshipName
2    FROM FieldDefinition
3    WHERE EntityDefinition.QualifiedApiName = 'Customer_Sat_Survey__c' ORDER BY Label ASC NULLS FIRST

Example Query: Find Parent Object Types

Some fields can have more than one type of object in a relationship (polymorphic). For example, Task and Event can have relationships with Contact or Lead.

Use this query to retrieve a list of objects that can have a relationship with the FieldDefinition.

1SELECT QualifiedApiName, RelationshipName, ReferenceTo, ReferenceTargetField 
2FROM FieldDefinition
3WHERE EntityDefinition.QualifiedApiName = 'Event' AND QualifiedApiName = 'WhoId'

Example Query: Find the Datatypes for Account Fields

1SELECT QualifiedApiName, (Select DataType From Particles)
2FROM FieldDefinition
3WHERE EntityDefinition.QualifiedApiName ='Account'

CustomField Metadata 

Field NameField TypeDescription
caseSensitivebooleanIndicates whether the field is case sensitive (true) or not (false).
For indirect lookup relationship fields on external objects, this attribute affects how this custom field’s values are matched against the values of referenceTargetField.
defaultValuestringIf specified, represents the default value of the field.
deleteConstraintDeleteConstraint is an enumeration of stringsProvides deletion options for lookup relationships. Valid values are:
- SetNull: Default value. If the lookup record is deleted, the lookup field is cleared. - Restrict: If the record is in a lookup relationship, prevents it from being deleted. - Cascade: Deletes the lookup record and associated lookup fields.
For more information on lookup relationships, see “Object Relationships” in Salesforce Help.
descriptionstringDescription of the field.
displayFormatstringThe display format.
displayLocationInDecimalbooleanIndicates how the value of a Geolocation custom field appears in the user interface. If true, the geolocation appears in decimal notation. If false, the geolocation appears as degrees, minutes, and seconds.
externalDeveloperNamestringAvailable only for external objects. Name of the table column on the external data source that maps to this custom field in Salesforce. Corresponds to External Column Name in the user interface. This field is available in API version 32.0 and later.
externalIdbooleanIndicates whether the field is an external ID field (true) or not (false).
formulastringIf specified, represents a formula on the field.
formulaTreatBlankAsTreatBlanksAsIndicates how to treat blanks in a formula. Valid values are BlankAsBlank or BlankAsZero.
fullNamestringRequired. The internal name of the object. White spaces and special characters are escaped for validity. The name must:
  • Contain characters, letters, or the underscore (_) character
  • Must start with a letter
  • Can’t end with an underscore
  • Can’t contain two consecutive underscore characters
indexedbooleanIndicates if the field is indexed. If this field is unique or the externalId is set to true, the isIndexed value is set to true. This field has been deprecated as of version 14.0 and is only provided for backward compatibility.
inlineHelpTextstringRepresents the content of field-level help. For more information, see “Define Field-Level Help” in Salesforce Help.
isFilteringDisabledbooleanAvailable only for external objects. Indicates whether the custom field is available in filters. This field is available in API version 32.0 and later.
isNameFieldbooleanAvailable only for external object fields of type text. For each external object, you can specify one field as the name field. If you set this field’s value to true, make sure that the external table column identified by externalDeveloperName contains name values. This field is available in API version 32.0 and later.
isSortingDisabledbooleanAvailable only for external objects. Indicates whether the custom field is sortable. This field is available in API version 32.0 and later.
reparentableMasterDetailbooleanIndicates whether the child records in a master-detail relationship on a custom object can be reparented to different parent records. The default value is false.
This field is available in API version 25.0 and later.
labelstringLabel for the field. You can’t update the label for standard picklist fields, such as the Industry field for accounts.
lengthintLength of the field.
lookupFilterLookupFilterThe Lookup filter definition for the custom field.
Available in API version 30.0 and later.
maskCharEncryptedFieldMaskCharFor encrypted fields, specifies the character to be used as a mask. Valid values:
  • asterisk
  • X
maskTypeEncryptedFieldMaskTypeFor encrypted text fields, specifies the format of the masked and unmasked characters in the field. Valid values:
- all: All characters in the field are hidden. This option is equivalent to the Mask All Characters. - creditCard: The first 12 characters are hidden, the last four are displayed. This option is equivalent to the Credit Card Number option. - ssn: The first five characters are hidden, the last four are displayed. This option is equivalent to the Social Security Number option. - lastFour: All characters are hidden, except the last four are displayed. This option is equivalent to the Last Four Characters Clear option. - sin: All characters are hidden, except the last four are displayed. This option is equivalent to the Social Insurance Number option. - nino: All characters are hidden. If the field contains nine characters, Salesforce automatically inserts spaces after each pair of characters. This option is equivalent to the National Insurance Number option.
picklistPicklistIf specified, the field is a picklist, and this field enumerates the picklist values and labels.
populateExistingRowsbooleanIndicates whether existing rows are populated (true) or not (false).
precisionintThe precision for number values. Precision is the number of digits in a number. For example, the precision value for the number 256.99 is 5.
referenceTargetFieldstringAvailable only for indirect lookup relationship fields on external objects. Specifies the custom field on the parent object to match against this indirect lookup relationship field, whose values come from an external data source. The specified custom field on the parent object must have both externalId and unique set to true. This field is available in API version 32.0 and later.
referenceTostringIf specified, indicates a reference this field has to another object.
relationshipLabelstringLabel for the relationship.
relationshipNamestringIf specified, indicates the value for one-to-many relationships. For example, in the object MyObject that had a relationship to YourObject, the relationship name YourObjects makes the relationship type obvious.
relationshipOrderintThis field is valid for all master-detail relationships, but the value is only non-zero for junction objects. A junction object has two master-detail relationships, and is analogous to an association table in a many-to-many relationship. Junction objects must define one parent object as primary (0), the other as secondary (1). The definition of primary or secondary affects delete behavior and inheritance of look and feel, and record ownership for junction objects. For more information, see Salesforce Help.
0 or 1 are the only valid values, and 0 is always the value for objects that aren’t junction objects.
requiredbooleanIndicates whether the field requires a value on creation (true) or not (false).
scaleintThe scale for the field. Scale is the number of digits to the right of the decimal point in a number. For example, the number 256.99 has a scale of 2.
startingNumberintIf specified, indicates the starting number for the field.
stripMarkupbooleanSet to true to remove markup, or false to preserve markup. Used when converting a rich text area to a long text area.
summarizedFieldstringRepresents the field on the detail row that’s being summarized. This field can’t be null unless the value of SummaryOperation is count.
summaryForeignKeystringRepresents the master-detail field on the child that defines the relationship between the parent and the child.
summaryOperationSummaryOperations is an enumeration of stringsRepresents the sum operation to be performed. Valid values:
  • Count
  • Min
  • Max
  • Sum
trackFeedHistorybooleanIndicates whether the field is enabled for feed tracking (true) or not (false).
This field is available in API version 18.0 and later.
trackHistorybooleanIndicates whether history tracking is enabled for the field (true) or not (false). Also available for standard object fields (picklist and lookup fields only) in API version 30.0 and later.
trackTrendingbooleanIndicates whether historical trending data is captured for the field (true) or not (false). If this attribute is true for at least one field, the object is enabled for historical trending. Available in API version 29.0 and later.
trueValueIndexedbooleanThis field is only relevant for a checkbox field. If set, true values are built into the index. This field has been deprecated as of API version 14.0 and is only provided for backward compatibility.
typeFieldType is an enumeration of stringsIndicates the field type for the field. Valid values:
  • Address (beta)
  • AutoNumber
  • Lookup
  • MasterDetail
  • Checkbox
  • Currency
  • Date
  • DateTime
  • Email
  • EncryptedText
  • Number1
  • Percent
  • Phone
  • Picklist
  • MultiselectPicklist
  • Summary
  • Text
  • TextArea
  • LongTextArea
  • Summary
  • Url
  • Hierarchy
  • File
  • Html
  • Geolocation

For standard fields on standard objects, the type field is optional. This field is included for some standard field types, such as Picklist or Lookup, but not for others. The type field is included for custom fields.
uniquebooleanIndicates whether the field is unique (true) or not (false).
visibleLinesintIndicates the number of lines displayed for the field.
writeRequiresMasterReadbooleanSets the minimum sharing access level required on the parent record to create, edit, or delete child records. This field applies only to master-detail or junction object custom field types.
  • true—Allows users with “Read” access to the parent record permission to create, edit, or delete child records. This setting makes sharing less restrictive.
  • false—Allows users with “Read/Write” access to the parent record permission to create, edit, or delete child records. This setting is more restrictive than true, and is the default value.

For junction objects, the most restrictive access from the two parents is enforced. For example, you set to true on both master-detail fields, but users have “Read” access to one parent record and “Read/Write” access to the other parent record. In this example, users are unable to create, edit, or delete child records.

Picklist Metadata 

Field NameField TypeDescription
controllingFieldstringThe fullName of the controlling field if this field is a dependent picklist. A dependent picklist works with a controlling picklist or checkbox to filter the available options. The value chosen in the controlling field affects the values available in the dependent field. This field is available in API version 14.0 and later.
picklistValuesPicklistValue[]Required. Represents a set of values for a picklist.
sortedbooleanRequired. Indicates whether values are sorted (true), or not (false).

PicklistValue Metadata 

This metadata type defines a value in the picklist and specifies whether this value is the default value. This type extends Metadata 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.
  • You can’t set a picklist value as inactive, but if the picklist value is missing and you invoke an update() call, the missing value becomes inactive.
Field NameField TypeDescription
allowEmailbooleanIndicates 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.
closedbooleanIndicates 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 later.
colorstringIndicates the color assigned to the picklist value when used in charts on reports and dashboards. The color is in hexadecimal format; for example, #FF6600. If a color isn’t specified, it’s assigned dynamically during chart generation. This field is available in API version 17.0 and later.
controllingFieldValuesstring[]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.
convertedbooleanIndicates 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. The best practice is to convert a lead when it becomes a real opportunity that you want to forecast. For more information, see “Convert Qualified Leads” in Salesforce Help. This field is available in API version 16.0 and later.
cssExposedbooleanIndicates 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 Your Self-Service Portal” in Salesforce Help.
> Note: Starting with Spring ’12, the Self-Service portal isn’t available for new Salesforce orgs. Existing orgs continue to have access to the Self-Service portal.
This field is available in API version 16.0 and later.
defaultbooleanRequired. Indicates whether this value is the default picklist value in the specified picklist (true), or not (false).
descriptionstringDescription of a custom picklist value. This field is only relevant for the standard Stage field in opportunities. It’s useful to include a description for a customized picklist value so that the historical reason for creating it can be tracked. This field is available in API version 16.0 and later.
forecastCategoryForecastCategories, an enumeration of type stringIndicates whether this value is associated with a forecast category (true), or not (false). This field is only relevant for the standard Stage field in opportunities. Valid values:
  • Omitted
  • Pipeline
  • BestCase
  • Forecast
  • Closed

This field is available in API version 16.0 and later.
fullNamestringThe 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 Metadata.
highPrioritybooleanIndicates 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 “Start Using Tasks” in Salesforce Help. This field is available in API version 16.0 and later.
probabilityintIndicates 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.
reverseRolestringA picklist value corresponding to a reverse role name for a partner. For example, for the role “subcontractor”, a reverse role is “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 Salesforce Help.
This field is available in API version 18.0 and later.
reviewedbooleanIndicates 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 Salesforce Help. This field is available in API version 16.0 and later.
wonbooleanIndicates 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.

RelationshipReferenceTo Type 

FieldTypeDetails
referenceTostring[]The objects that can have a relationship to the field represented by this FieldDefinition.

WorkflowFieldUpdate Metadata 

For more information about WorkflowFieldUpdate, see the Metadata API Developer Guide.