Provides row-based access to metadata about standard and custom objects.
Where possible, we changed noninclusive terms to align with our company value of Equality. Because changing terms in our code can break current implementations, we maintained this object’s name.
Important
EntityDefinition fields are exposed in SOAP API version 45.0 and later. You can use Tooling API to query for EntityDefinition 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. EntityDefinition 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
DefaultCompactLayoutId
Type: string
Required: No
Properties: Filter, Group, Nillable, Sort
Description: ID of the default compact layout, if any.
Description: Specifies the deployment status of the object. Controls whether a custom object and its associated custom tab, related lists, and reports are visible to non-admin users.
Possible values:
InDevelopment — InDevelopment
Deployed — Deployed
Description
Type: string
Required: No
Properties: Filter, Nillable, Sort
Introduced: API version 33.0
Description: The description of the object. A meaningful description makes it easier to distinguish between custom objects when they’re viewed in a list.
DetailUrl
Type: url
Required: No
Properties: Filter, Group, Nillable, Sort
Introduced: API version 34.0
Description: URL to the read-only detail page for this object. Corresponds to the urlDetail field in DescribeSobjectResult.
DeveloperName
Type: string
Required: No
Properties: Filter, Group, Nillable, Sort
Description: The developer’s internal name for the object. This field isn’t unique, so if you query by this field, you can get multiple records with the same DeveloperName value. For example, in an org, you could have these three objects with a DeveloperName of Account: a standard Account object, a custom object, and a packaged custom object. If you want to query by a unique identifier, use QualifiedApiName.
DurableId
Type: string
Required: No
Properties: Filter, Group, Nillable, Sort
Description: Unique identifier for the field. Always retrieve this value before using it, as the value isn’t guaranteed to stay the same from one release to the next. Simplify queries by using this field instead of making multiple queries.
EditDefinitionUrl
Type: url
Required: No
Properties: Filter, Group, Nillable, Sort
Introduced: API version 34.0
EditUrl
Type: url
Required: No
Properties: Filter, Group, Nillable, Sort
Introduced: API version 34.0
Description: The URL used when editing the custom object definition. Corresponds to the urlEdit field on DescribeSobjectResult.
ControlledByLeadOrContact — Controlled By Lead Or Contact
ControlledByCampaign — Controlled By Campaign
FullName
Type: string
Required: No
Properties: Create, Group, Nillable
Description: The name of the object. If a field, the name must specify the parent object, for example Account.FirstName.
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.
HasSubtypes
Type: boolean
Required: No
Properties: Defaulted on create, Filter, Group, Sort
Introduced: API version 38.0
Default value: false
HelpSettingPageName
Type: string
Required: No
Properties: Filter, Group, Nillable, Sort
Introduced: API version 34.0
Description: The name of the custom help setting page.
HelpSettingPageUrl
Type: url
Required: No
Properties: Filter, Group, Nillable, Sort
Introduced: API version 34.0
Description: The URL pointing to the custom help setting page for custom objects.
ControlledByLeadOrContact — Controlled By Lead Or Contact
ControlledByCampaign — Controlled By Campaign
IsActivityTrackable
Type: boolean
Required: No
Properties: Defaulted on create, Filter, Group, Sort
Introduced: API version 33.0
Description: If true, activities, such as tasks and scheduled calendar events associated with the custom object, can be tracked. Can be enabled only for custom objects.
Default value: false
IsApexTriggerable
Type: boolean
Required: No
Properties: Defaulted on create, Filter, Group, Sort
Description: If true, Apex triggers can be defined for the object.
Default value: false
IsAutoActivityCaptureEnabled
Type: boolean
Required: No
Properties: Defaulted on create, Filter, Group, Sort
Introduced: API version 41.0
Description: If true, the object is enabled for Einstein Activity Capture.
Default value: false
IsCompactLayoutable
Type: boolean
Required: No
Properties: Defaulted on create, Filter, Group, Sort
Description: If true, the object supports compact layouts. That is, compact layouts can be defined, a system compact layout can be synthesized, or both.
Default value: false
IsCustomSetting
Type: boolean
Required: No
Properties: Defaulted on create, Filter, Group, Sort
Introduced: API version 35.0
Description: If true, the object is a custom setting.
Default value: false
IsCustomizable
Type: boolean
Required: No
Properties: Defaulted on create, Filter, Group, Sort
Description: If true, custom fields can be defined for the object.
Default value: false
IsDeepCloneable
Type: boolean
Required: No
Properties: Defaulted on create, Filter, Group, Sort
Introduced: API version 34.0
Default value: false
IsDeprecatedAndHidden
Type: boolean
Required: No
Properties: Defaulted on create, Filter, Group, Sort
Introduced: API version 35.0
Description: If true, this object is unavailable for the current version.
Default value: false
IsEverCreatable
Type: boolean
Required: No
Properties: Defaulted on create, Filter, Group, Sort
Introduced: API version 35.0
Description: If true, the object can be created using an API, assuming the current user has the appropriate permissions. If false, the application server manages the object and no user can create it.
Default value: false
IsEverDeletable
Type: boolean
Required: No
Properties: Defaulted on create, Filter, Group, Sort
Introduced: API version 35.0
Description: If true, the object can be created using an API, assuming the current user has the appropriate permissions. If false, the application server manages the object and no user can delete it.
Default value: false
IsEverUpdatable
Type: boolean
Required: No
Properties: Defaulted on create, Filter, Group, Sort
Introduced: API version 35.0
Description: If true, the object can be created using an API, assuming the current user has the appropriate permissions. If false, the application server manages the object and no user can modify it.
Default value: false
IsFeedEnabled
Type: boolean
Required: No
Properties: Defaulted on create, Filter, Group, Sort
Introduced: API version 34.0
Description: If true, the Chatter feed is enabled for this object.
Default value: false
IsFieldHistoryTracked
Type: boolean
Required: No
Properties: Defaulted on create, Filter, Group, Sort
Introduced: API version 33.0
Description: If true, your org can track changes to fields on the custom object records. History data is available for reporting, so users can easily create audit trail reports. Can be enabled only for custom objects.
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 applicable fields.
Default value: false
IsIdEnabled
Type: boolean
Required: No
Properties: Defaulted on create, Filter, Group, Sort
Introduced: API version 35.0
Description: If true, you can include Id in the SELECT clause of a query on this object.
For example, assume that there’s an object backed by an OData data source with the High Data Volume option selected. That object’s IsIdEnabled field is false.
Default value: false
IsInterface
Type: boolean
Required: No
Properties: Defaulted on create, Filter, Group, Sort
Introduced: API version 47.0
Description: Reserved for future use.
Default value: false
IsLayoutable
Type: boolean
Required: No
Properties: Defaulted on create, Filter, Group, Sort
Introduced: API version 35.0
Description: If true, layouts can be defined for the object.
Default value: false
IsMruEnabled
Type: boolean
Required: No
Properties: Defaulted on create, Filter, Group, Sort
Introduced: API version 37.0
Description: If true, Most Recently Used (MRU) list functionality is enabled for this object.
Default value: false
IsProcessEnabled
Type: boolean
Required: No
Properties: Defaulted on create, Filter, Group, Sort
Introduced: API version 37.0
Default value: false
IsQueryable
Type: boolean
Required: No
Properties: Defaulted on create, Filter, Group, Sort
Introduced: API version 33.0
Description: If true, the object can be queried.
Default value: false
IsReplicateable
Type: boolean
Required: No
Properties: Defaulted on create, Filter, Group, Sort
Introduced: API version 35.0
Description: If true, the object can be replicated.
Default value: false
IsReportingEnabled
Type: boolean
Required: No
Properties: Defaulted on create, Filter, Group, Sort
Introduced: API version 33.0
Description: If true, the data in the custom object’s records is available for reporting. Can be enabled only on custom objects.
Default value: false
IsRetrieveable
Type: boolean
Required: No
Properties: Defaulted on create, Filter, Group, Sort
Introduced: API version 35.0
Description: If true, the object can be retrieved.
Default value: false
IsSearchLayoutable
Type: boolean
Required: No
Properties: Defaulted on create, Filter, Group, Sort
Introduced: API version 35.0
Description: If true, you can customize search layouts for this object.
Default value: false
IsSearchable
Type: boolean
Required: No
Properties: Defaulted on create, Filter, Group, Sort
Introduced: API version 35.0
Description: If true, records of this object are indexed for search.
Default value: false
IsSubtype
Type: boolean
Required: No
Properties: Defaulted on create, Filter, Group, Sort
Introduced: API version 39.0
Default value: false
IsTriggerable
Type: boolean
Required: No
Properties: Defaulted on create, Filter, Group, Sort
Introduced: API version 35.0
Description: If true, you can use triggers with this object.
Default value: false
IsWorkflowEnabled
Type: boolean
Required: No
Properties: Defaulted on create, Filter, Group, Sort
Description: If true, workflow rules can be defined for the object.
Default value: false
KeyPrefix
Type: string
Required: No
Properties: Filter, Group, Nillable, Sort
Introduced: API version 33.0
Description: The first three digits of the object’s ID, which identify the object type, such as Account or Opportunity.
Label
Type: string
Required: No
Properties: Filter, Group, Nillable, Sort
Description: The label for this object, used in the compact layout and in the user’s language locale.
MasterLabel
Type: string
Required: No
Properties: Filter, Group, Sort
Description: The label for this object, which displays in Setup. The master label is in the default language locale for the organization. If there’s no default language locale, the label is in en_US.
Metadata
Type: complexvalue
Required: No
Properties: Create, Nillable, Update
Description: Metadata about the standard or custom object. Details are available in the CustomObject entry in the metadata namespace in the Tooling API WSDL.
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 organization 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 these values:
In Developer Edition organizations, the namespace prefix is set to the namespace prefix of the organization 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 organization of the package developer.
In organizations that aren’t Developer Edition organizations, NamespacePrefix is set only for objects that are part of an installed managed package. There’s no namespace prefix for all other objects.
NewUrl
Type: url
Required: No
Properties: Filter, Group, Nillable, Sort
Introduced: API version 34.0
Description: The URL used when editing a new standard or custom record. Corresponds to the urlNew field on DescribeSobjectResult.
PluralLabel
Type: string
Required: No
Properties: Filter, Group, Nillable, Sort
Description: The plural version of the object’s Label.
PublisherId
Type: string
Required: No
Properties: Filter, Group, Nillable, Sort
Introduced: API version 34.0
Description: ID of the publisher associated with this object.
QualifiedApiName
Type: string
Required: No
Properties: Filter, Group, Sort
Description: A unique external ID for the object of the form NamespacePrefix__DeveloperName for standard objects and NamespacePrefix__DeveloperName__c for custom objects. When performing SOQL queries with Custom Metadata Type relationship fields, use this field to obtain fully qualified namespaces.
RecordTypesSupported
Type: complexvalue
Required: No
Properties: Nillable
Introduced: API version 35.0
Description: Represents the record types defined for this object. Use only in subqueries.
RunningUserEntityAccessId
Type: string
Required: No
Properties: Filter, Group, Nillable, Sort
Introduced: API version 34.0
Description: ID of the UserEntityAccess record associated with this object. Because this field represents a relationship, use only in subqueries.
RecordTypesSupported Metadata
RecordTypesSupported is in the tns namespace. Represents the record types associated with this object.
Field
Details
recordTypeInfos
- Type: RecordTypeInfo - Description: Represents the RecordTypeInfo records for the object. Use only in subqueries. This field is available in Tooling API version 35.0 and later.
RecordTypeInfo Metadata
RecordTypeInfo is in the tns namespace. Represents a record type associated with the object.
Field
Details
available
- Type: boolean - Description: If true, this record type is available for use. This field is available in Tooling API version 35.0 and later.
defaultRecordTypeMapping
- Type: boolean - Description: This field is available in Tooling API version 35.0 and later.
developerName
- Type: string - Description: The developer name of the record type. This field is available in API version 43.0 and later.
master
- Type: boolean - Description: This field is available in Tooling API version 35.0 and later.
name
- Type: string - Description: Name of the record type. This field is available in Tooling API version 35.0 and later.
recordTypeId
- Type: Id - Description: ID of the record type. This field is available in Tooling API version 35.0 and later.