# legacydeveloper Api Tooling - Full Documentation # AccountPlanObjMeasCalcCond Represents a field and value combination for filtering records to include in the calculation of a sales account plan objective measure’s current value. This object is available in API version 63.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules ## Fields | Field | Details | | --- | --- | | AccountPlanObjMeasCalcDefId | Type reference Properties Create, Filter, Group, Sort Description The account plan objective measure calculation definition where this criteria is used. This field is a relationship field. Relationship Name AccountPlanObjMeasCalcDef Relationship Type Master-detail Refers To AccountPlanObjMeasCalcDef (the master object) | | FieldName | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description A field on the calculation definition’s TargetObject that you want to filter by. Fields on the Campaign, Case, Contact, or Opportunity objects are supported. | | Operation | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The logical operator for matching records with the specified field value. Possible values are: - Contains—contains - Equals—equals - GreaterOrEqual—greater or equal - GreaterThan—greater than - LessOrEqual—less or equal - LessThan—less than - NotContain—does not contain - NotEqual—not equal to - StartsWith | | Value | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description The value to match for the specified field. | # AccountPlanObjMeasCalcDef Represents the metadata associated with an account plan objective measure calculation definition. An account plan objective measure calculation definition contains a target object, rollup field, and logic for calculating the current value of a sales account plan objective measure. This object is available in API version 63.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules To access AccountPlanObjMeasCalcDef components, enable account plans. ## Fields | Field | Details | | --- | --- | | Description | Type textarea Properties Create, Filter, Group, Nillable, Sort, Update Description A summary of the calculation definition that’s visible to users when they select the definition for an account plan objective measure. | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update 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 organization. Label is **Record Type Name**. | | ManageableState | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description Label for the AccountPlanObjMeasCalcDef object. In the UI, this field is Label. | | NamespacePrefix | Type string 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 the following values: - In Developer Edition organizations, the namespace prefix is set to the namespace prefix of the organization for all objects that support it. There is 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 are not Developer Edition organizations, NamespacePrefix is only set for objects that are part of an installed managed package. There is no namespace prefix for all other objects. | | RollupType | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The method for calculating the account plan objective measure’s current value from records that match the calculation definition and any optional conditions. Possible values are: - Count - Max—Maximum - Min—Minimum - Sum | | Status | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description Specifies the status of the calculation definition. Only active calculation definitions are available for users to select when they specify an account plan objective measure. Possible values are: - Active - Draft - Inactive | | TargetField | Type picklist Properties Create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The field on TargetObject to use for calculating the account plan objective measure’s current value. Rollup fields on the Campaign, Case, Contact, or Opportunity object are supported. In Setup, this field’s label is Rollup Field. | | TargetObject | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort Description The object to use for calculating the account plan objective measure’s current value. Possible values are: - Campaign - Case - Contact - Opportunity | | ValueType | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The data type for calculating the account plan objective measure’s current value. Possible values are: - Currency - Number - Percent | # ActivationPlatform Represents metadata about ActivationPlatform, such as platform name, delivery schedule, output format, and destination folder. This object is available in API version 54.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | Description | Type textarea Properties Nillable Description The description of the activation platform. | | DeveloperName | Type string Properties Filter, Group, Sort Description The unique name for the ActivationPlatform object. 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 organization. Label is **Record Type Name**. This field is automatically generated, but you can supply your own value if you create the record using the API. | | Enabled | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether this Activation Platform is enabled (true) or not (false). The default value is false. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated ActivationPlatform in Metadata API. The full name can include a namespace prefix. | | IncludeSegmentNames | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether to include the segment name in the metadata (true) or not (false). The default value is false. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the ActivationPlatform. The value for this field is the language value of the org. | | LogoUrl | Type textarea Properties Nillable Description Logo for the activation channel destination. | | ManageableState | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package. Possible values are: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description Label for the ActivationPlatform. In the UI, this field is ActivationPlatform. | | Metadata | Type [ActivationPlatform](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_activationplatform.htm) Properties Create, Nillable, Update Description Provides access to the associated type. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The namespace of the ActivationPlatform. | | Notes | Type textarea Properties Nillable Description Notes for this ActivationPlatform. | | OutputFormat | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The output format of the file. Possible values are: - CSV - JSON - PARQUET | | OutputGrouping | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The grouping of the output. Possible values are: - PER\_ACCOUNT - PER\_SEGMENT - PER\_USER | | PeriodicRefreshFrequency | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The full refresh frequency in days for incremental refresh mode. Available in API version 54.0 and later. Possible values are: - REFRESH\_30 - Full refresh every 30 days - REFRESH\_60 - Full refresh every 60 days This field applies only when outputGrouping is PER\_SEGMENT and refreshMode is INCREMENTAL. | | RefreshFrequency | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description Indicates how often the activation platform accepts data delivery in hours. Possible values are: - TWENTY\_FOUR | | RefreshMode | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The mode of refreshing the file. Possible values are: - INCREMENTAL | # AdvAccountForecastSet Represents an advanced account forecast set. This object is available in API version 56.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | AccountFieldName | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The field name of the account in an advanced account forecast fact record. | | CalculationFrequency | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The frequency at which a forecast set is recalculated automatically. Possible values are: - Monthly - Quarterly - Weekly - Yearly The default value is Monthly. | | Description | Type textarea Properties Filter, Group, Nillable, Sort Description The description for AdvAccountForecastSet. | | DeveloperName | Type string Properties Filter, Group, Sort Description The unique name of the advanced account forecast set record. 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 organization. Label is **Record Type Name**. This field is automatically generated, but you can supply your own value if you create the record using the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance may slow while Salesforce generates one for each record. | | ForecastFactObjectName | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The API name of the entity used as a facts table. | | ForecastPeriodGroupId | Type reference Properties Filter, Group, Sort Description The Id of the forecast period group associated with an advanced account forecast. This field is a relationship field. Relationship Name ForecastPeriodGroup Relationship Type Lookup Refers To AdvAcctForecastPeriodGroup | | ForecastQuantityFieldName | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The field name of the forecast quantity in an advanced account forecast fact record. | | ForecastRevenueFieldName | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The field name of the forecast revenue in an advanced account forecast record. | | ForecastSetFieldName | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The field name of the forecast set in an advanced account forecast record. | | ForecastSetName | Type string Properties Filter, Group, idLookup, Sort Description The name of the forecast set in an advanced account forecast record. | | ForecastStatusFieldName | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The field name of the status in an advanced account forecast fact record. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated advanced account forecast fact record 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. | | GenerationDpeDefNameId | Type reference Properties Filter, Group, Nillable, Sort Description The name of the Data Processing Engine definition that generates advanced account forecast fact records. This field is a relationship field. Relationship Name GenerationDpeDefName Relationship Type Lookup Refers To BatchCalcJobDefinition | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language for AdvAccountForecastSet. | | MasterLabel | Type string Properties Filter, Group, Sort Description Label for the AdvAccountForecastSet record. | | Metadata | Type complexvalue Properties Create, Nillable, Update Description The AdvAccountForecastSet’s metadata. 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. | | PeriodFieldName | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The field name of the period in an advanced account forecast fact record. | | RecalculateDpeDefNameId | Type reference Properties Filter, Group, Nillable, Sort Description The Data Processing Engine definition used to recalculate advanced account forecast fact records. This field is a relationship field. Relationship Name RecalculateDpeDefName Relationship Type Lookup Refers To BatchCalcJobDefinition | | RegenerationDpeDefNameId | Type reference Properties Filter, Group, Nillable, Sort Description The Data Processing Engine definition used to regenerate advanced account forecast fact records. This field is a relationship field. Relationship Name RegenerationDpeDefName Relationship Type Lookup Refers To BatchCalcJobDefinition | | RolloverDpeDefNameId | Type reference Properties Filter, Group, Nillable, Sort Description The Data Processing Engine definition used to generate rollover advanced account forecast fact records. This field is a relationship field. Relationship Name RolloverDpeDefName Relationship Type Lookup Refers To BatchCalcJobDefinition | | RolloverFrequency | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The frequency of rollover of an advanced account forecast records. Possible values are: - Monthly - Quarterly - Weekly - Yearly The default value is Monthly. | | Status | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Specifies the status of an advanced account forecast set. Possible values are: - Active - Inactive | # AdvAcctForecastMeasureDef Represents information about the measures to be displayed in the advanced account forecasts grid for the forecast set. This object is available in API version 57.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | AdvAccountForecastSetId | Type reference Properties Create, Filter, Group, Sort, Update Description The forecast set associated with the advanced account forecast metric. This can also reference the SalesAgreementSettings. This field is a relationship field. Relationship Name AdvAccountForecastSet Relationship Type Lookup Refers To AdvAccountForecastSet | | AdvAcctForecastMeasureDefName | Type string Properties Create, Filter, Group, idLookup, Sort, Update Description Name of the advanced account forecast measure definition. | | AggregationType | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The type of aggregation used for calculating advanced account forecast values. Possible values are: - AVERAGE—Average - MAXIMUM—Maximum - MINIMUM—Minimum - SUM—Sum The default value is SUM. | | ComputationMethod | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The method used for calculating advanced account forecast values. Possible values are: - CUSTOM—Custom - DATA\_PROCESSING\_ENGINE\_DEFINITION—Data Processing Engine definition - FORMULA—Formula The default value is DATA\_PROCESSING\_ENGINE\_DEFINITION. | | ForecastDataMeasureName | Type string Properties Create, Filter, Group, Sort, Update Description Field of the facts object used for this measure. | | ForecastMeasureName | Type string Properties Create, Filter, Group, Sort, Update Description The name for the measure to show on UI. | | ForecastMeasureType | Type picklist Properties Create, Defaulted on create, Filter, Group, Restricted picklist, Sort, Update Description Specifies the measure type used for the generated advanced forecast values. Possible values are: - QUANTITY—Quantity - REVENUE—Revenue The default value is QUANTITY. | | IsAdjustmentTracked | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether the adjustments made to the advanced account forecast values for this metric are tracked. The default value is false. | # AdvAcctFrcstDisplayGroup Represents information about the groups for the advanced account forecast set measures or dimensions. This object is available in API version 57.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | AdvAccountForecastSetId | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description The forecast set associated with the advanced account forecast display group. This field is a polymorphic relationship field. Relationship Name AdvAccountForecastSet Relationship Type Lookup Refers To AdvAccountForecastSet, SalesAgreementSettings | | AdvAcctFrcstDisplayGroupName | Type string Properties Create, Filter, Group, idLookup, Sort, Update Description The name of the advanced account forecast group. | | GroupType | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description Specifies the category for the display group. Possible value is: MEASURE | | IsDefault | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether the display group is the default group. The default value is false. | | UserProfileId | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description The profile for which the display group is applicable. This field is a relationship field. Relationship Name UserProfile Relationship Type Lookup Refers To Profile | # AIApplication Represents an instance of a machine learning (ML) application.Available in API version 50.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string 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 organization. Label is **Record Type Name**. This field is automatically generated, but you can supply your own value if you create the record using the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance may slow as a DeveloperName is generated for each record. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated AIApplication type in Metadata API. The full name can include a namespace prefix. 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. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the AIApplication. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Nillable, Sort Description Label that identifies the AIApplication throughout the Salesforce user interface. | | Metadata | Type [AIApplication](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_aiapplication.htm) Properties Create, Nillable, Update Description The AIApplication’s metadata. 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. | | MLPredictionDefinitions | Type [QueryResult](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_queryresult.htm#topic-title) Properties Nillable Description A list of machine learning (ML) prediction definition records associated with an ML application record. | | NamespacePrefix | Type string 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 the following values: - In Developer Edition organizations, the namespace prefix is set to the namespace prefix of the organization for all objects that support it. There is 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 are not Developer Edition organizations, NamespacePrefix is only set for objects that are part of an installed managed package. There is no namespace prefix for all other objects. | | Status | Type picklist Properties Defaulted on create, Filter, Group, Restricted picklist, Nillable, Sort Description The status of the application. Valid values are: - Disabled—0 - Draft—3 - Enabled—1 - Migrated—2 | | Type | Type picklist Properties Filter, Group, Restricted picklist, Nillable, Sort Description The type of application. Valid values are: - PredictionBuilder—5 - RecommendationBuilder—14 | # AIApplicationConfig Represents additional prediction information related to a machine learning (ML) application.Available in API version 50.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | ApplicationId | Type reference Properties Filter, Group, Nillable, Sort Description The ID of the parent ML application. This is a relationship field. Relationship Name Application Relationship Type Lookup Refers To AIApplication | | DeveloperName | Type string 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 organization. Label is **Record Type Name**. This field is automatically generated, but you can supply your own value if you create the record using the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance may slow as a DeveloperName is generated for each record. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated AIApplicationConfig type in Metadata API. The full name can include a namespace prefix. 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. | | IsInsightReasonEnabled | Type boolean Properties Defaulted on create, Filter, Group, Nillable, Sort Description When true, generates the predictors or field values that were used to generate the prediction value. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the AIApplicationConfig. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Nillable, Sort Description Label that identifies the AIApplicationConfig throughout the Salesforce user interface. | | Metadata | Type [AIApplicationConfig](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_aiapplicationconfig.htm) Properties Create, Nillable, Update Description The AIApplicationConfig’s metadata. 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 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 the following values: - In Developer Edition organizations, the namespace prefix is set to the namespace prefix of the organization for all objects that support it. There is 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 are not Developer Edition organizations, NamespacePrefix is only set for objects that are part of an installed managed package. There is no namespace prefix for all other objects. | | Rank | Type int Properties Defaulted on create, Filter, Group, Nillable, Sort Description Reserved for future use. | | ScoringMode | Type picklist Properties Defaulted on create, Filter, Group, Restricted picklist, Nillable, Sort Description Frequency with which the prediction scores are written back. Valid values are: - Batch - OnDemand - Streaming | # Allow Metadata Save Operations to Complete with Returned Warnings When a metadata save operation generates warnings, the default behavior of Tooling API is to fail the operation without returning the warnings. For objects in both the Tooling API and Metadata API WSDLs, you can indicate that you want error-free save operations to complete successfully, returning any warnings. To indicate that you want error-free save operations to complete successfully, returning any generated warnings, specify the header ignoreSaveWarnings in your HTTP request. There is also a SOAP header in Tooling API for saving metadata even if warnings are returned. See [MetadataWarningsHeader](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/api_tooling_soap_header_metadatawarningsheader.htm "Allows you to save metadata even if warnings are returned."). # AnimationRule Represents criteria for determining when an animation is displayed to Path users. Available in API version 46.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods DELETE, GET, PATCH, POST ## Fields | Field | Details | | --- | --- | | AnimationFrequency | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Required. The frequency with which an animation is displayed when a user selects the designated picklist values in a path. Valid values are: - always - often - sometimes - rarely A value of always triggers an animation every time. The values often, sometimes, and rarely trigger an animation progressively less frequently. | | DeveloperName | Type string Properties Filter, Group, Sort, Update Description The developer name for the animation rule. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | FullName | Type string 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. | | IsActive | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether the animation rule is active (true) or not (false). | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The language in the user’s personal settings. | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description The label for the animation rule. | | Metadata | Type complexvalue Properties Create, Nillable, Update Description AnimationRule 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. | | RecordTypeContext | Type picklist Properties Filter, Group, Restricted picklist, Sort Description An enum to track whether this AnimationRule applies to all record types for the associated sObject, or only to a single or main record type. Valid values are All, Custom, and Master. | | RecordTypeId | Type reference Properties Filter, Group, Nillable, Sort Description The record type selected for the sObject in which the animation is displayed. | | SobjectType | Type string Properties Filter, Group, Restricted picklist, Sort Description The object on which the animation rule is run. | | TargetField | Type string Properties Filter, Group, Restricted picklist, Sort Description Name of the field used to determine when to display an animation. | | TargetFieldChangeToValues | Type string Properties Filter, Group, Sort Description Values used to determine when to display an animation. When a user selects a value in TargetField that matches a value stored in TargetFieldChangeToValues, the animation is displayed. | # ApexClass Represents the saved copy of an Apex class. ApexClass uses the cached version of the class unless one is unavailable. Available from API version 28.0 or later. To edit, save, or compile Apex classes, use [ApexClassMember](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexclassmember.htm "Represents the working copy of an Apex class for editing, saving, or compiling in a MetadataContainer."). ## Supported SOAP API Calls create(), delete(), describeSObjects(), getDeleted(), getUpdated(), query(), retrieve(), search(),  update(), upsert() ## Supported REST API HTTP Methods GET, POST, PATCH, DELETE ## Fields
Field Name Details
ApiVersion
Type
double
Properties
Create, Filter, Sort, Update
Description
The API version for this class. Every class has an API version specified at creation.
Body
Type
textarea
Properties
Create, Nillable, Update
Description
The data for the Apex class.
BodyCrc
Type
double
Properties
Create, Defaulted on create, Filter, Nillable, Sort, Update
Description
The CRC (cyclic redundancy check) of the class or trigger file
FullName
Type
string
Properties
Group, Nillable
Description
The full name of the associated object in the Metadata API. Use to avoid race conditions on create, before you have IDs.
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.
IsValid
Type
boolean
Properties
Create, Defaulted on create, Filter, Group, Sort, Update
Description
Indicates whether any dependent metadata has changed since the class was last compiled (true) or not (false). The default value is false.
LengthWithoutComments
Type
int
Properties
Create, Filter, Group, Sort, Update
Description

Length of the class without comments.

ManageableState
Type
ManageableState enumerated list
Properties
Filter, Group, Nillable, Restricted picklist, Sort
Description
Indicates the manageable state of the specified component that is contained in a package:
  • beta
  • deleted
  • deprecated
  • deprecatedEditable
  • installed
  • installedEditable
  • released
  • unmanaged

This field is available in API version 38.0 and later.

Metadata
Type
ApexClassMetadata
Properties
Create, Nillable, Update
Description
An object that describes the version, status, and packaged versions of the corresponding Apex class.
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.
Name
Type
string
Properties
Create, Filter, Group, Sort, Update
Description

Name of the class.

Limit: 255 characters

NamespacePrefix
Type
string
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 the following 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 only set for objects that are part of an installed managed package. There’s no namespace prefix for all other objects.
Status
Type
picklist
Properties
Create, Filter, Group, Restricted picklist, Sort, Update
Description
The current status of the Apex class. Valid values are:
  • Active—The class is active.
  • Deleted—The class is marked for deletion. This status is useful for managed packages, because it allows a class to be deleted when a managed package is updated.
  • Inactive—This option is unused and is only supported for ApexTrigger. For more information, see the Metadata API Developer Guide.
SymbolTable
Type
SymbolTable
Properties
Nillable
Description
A complex type that represents all user-defined tokens in the Body of an ApexClass, ApexClassMember, or ApexTriggerMember and their associated line and column locations within the Body.
This field is null if the symbol table can’t be created due to reasons such as:
  • Another Apex compilation is in progress and holding a compile lock
  • The Apex class is in an invalid state and can’t compile successfully
## Usage To retrieve information about an Apex class, create an ApexClass object that references it. For example code, see [SOAP Calls](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_soap_overview.htm). To edit, save, or compile Apex classes, use [ApexClassMember](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexclassmember.htm "Represents the working copy of an Apex class for editing, saving, or compiling in a MetadataContainer."). ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note If there Isn't a cached version of [SymbolTable](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_symboltable.htm "A complex type that represents all user-defined tokens in the Body of an ApexClass, ApexClassMember, or ApexTriggerMember and their associated line and column locations within the Body."), it’s compiled in the background and the query can take longer than expected. The SymbolTable returned from ApexClass doesn't contain references. To retrieve a SymbolTable with references, use [ApexClassMember](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexclassmember.htm "Represents the working copy of an Apex class for editing, saving, or compiling in a MetadataContainer."). Although Apex classes and triggers have the Create and Update field properties, a runtime exception occurs if you try to create, update, or delete them using the API. Instead, use the Salesforce Extensions for Visual Studio Code or the Ant Migration Tool to create or update Apex classes or triggers. Apex classes and triggers can’t be created, edited, or deleted in a production org. See [Deploying Apex](https://developer.salesforce.com/docs/atlas.en-us.264.0.apexcode.meta/apexcode/apex_deploying.htm). # ApexClassMember Represents the working copy of an Apex class for editing, saving, or compiling in a MetadataContainer. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API HTTP Methods Query, GET, POST, PATCH, DELETE ## Special Access Rules As of the Spring '20 release, to access ApexClassMember you must have both the View All Data and the Author Apex user permissions. ## Fields | Field Name | Details | | --- | --- | | Body | Type string Properties Create, Update Description The data for the Apex class. The Body field is the only field you can update() or PATCH. | | Content | Type string Properties None Description A string representation of ApexClassMetadata that lists the version, status, and packaged versions of the corresponding Apex class. | | ContentEntityId | Type reference Properties Create, Filter, Group, Sort Description A reference to an Apex class. There can be only one ContentEntityId per ApexClassMember, otherwise, an error is reported. This field is required if FullName is not specified. | | FullName | Type string Properties Group, Nillable Description The full name of the associated object in the Metadata API. Use to avoid race conditions on create, before you have IDs. 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. This field is required if ContentEntityId is not specified. | | LastSyncDate | Type dateTime Properties Filter, Sort Description The date and time that this ApexClassMember Body was replicated from the underlying Apex class.  When you deploy a [MetadataContainer](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_metadatacontainer.htm "Manages working copies of ApexClassMember, ApexTriggerMember, ApexPageMember, and ApexComponentMember objects, including collections of objects to be deployed together."), this value is compared with the LastModifiedDate of the underlying Apex class. If LastSyncDate is older than LastModifiedDate, the deployment fails with an error. | | Metadata | Type ApexClassMetadata Properties None Description An object that describes the version, status, and packaged versions of the corresponding Apex class. 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. | | MetadataContainerId | Type reference Properties Create, Filter, Group, Sort Description A reference to a [MetadataContainer](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_metadatacontainer.htm "Manages working copies of ApexClassMember, ApexTriggerMember, ApexPageMember, and ApexComponentMember objects, including collections of objects to be deployed together.") or [ContainerAsyncRequest](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_containerasyncrequest.htm "Allows you to compile and asynchronously deploy a MetadataContainer object to your organization.") object. As part of a successful deployment, this field is reset from the ID of the deployed [MetadataContainer](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_metadatacontainer.htm "Manages working copies of ApexClassMember, ApexTriggerMember, ApexPageMember, and ApexComponentMember objects, including collections of objects to be deployed together.") to the ID of the corresponding [ContainerAsyncRequest](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_containerasyncrequest.htm "Allows you to compile and asynchronously deploy a MetadataContainer object to your organization.") object. This field is required. | | SymbolTable | Type [SymbolTable](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_symboltable.htm "A complex type that represents all user-defined tokens in the Body of an ApexClass, ApexClassMember, or ApexTriggerMember and their associated line and column locations within the Body.") Properties Nillable Description A complex type that represents all user-defined tokens in the Body of an ApexClass, ApexClassMember, or ApexTriggerMember and their associated line and column locations within the Body. This field is null if the symbol table can’t be created. A symbol table can’t be created if the content referenced by the ContentEntityId field doesn’t use a symbol table. Compiler errors for the last deployment of the [MetadataContainer](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_metadatacontainer.htm "Manages working copies of ApexClassMember, ApexTriggerMember, ApexPageMember, and ApexComponentMember objects, including collections of objects to be deployed together.") in the MetadataContainerId field also prevent a symbol table from being created. | ## Usage To edit, save, or compile an Apex class, create an ApexClassMember object that references it. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Once an ApexClassMember is successfully deployed in a [MetadataContainer](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_metadatacontainer.htm "Manages working copies of ApexClassMember, ApexTriggerMember, ApexPageMember, and ApexComponentMember objects, including collections of objects to be deployed together."), the MetadataContainerId is changed to the ID of the [ContainerAsyncRequest](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_containerasyncrequest.htm "Allows you to compile and asynchronously deploy a MetadataContainer object to your organization."), and the ApexClassMember can’t be modified or reused. Apex classes are often dependent on each other for functionality. For example, a method in one class can call a method in another class. If source file A is dependent on modified source file B and you try to save and compile source file A before you’ve saved the changes to source file B, the compiler throws an error. To successfully save and compile a group of related source files, put the corresponding ApexClassMember and ApexTriggerMember objects in a single MetadataContainer object. Each ApexClassMember object can only refer to a single MetadataContainer object. Multiple ApexClassMember objects can refer to the same MetadataContainer object. # ApexCodeCoverage Represents code coverage test results for an Apex class or trigger. Available in Tooling API version 29.0 and later. ## Supported SOAP API Calls describeSObjects(), query(), retrieve() ## Supported REST API HTTP Methods Query, GET ## Special Access Rules In API version 49.0 and later, users must have the View Setup and Configuration and View All Data permissions to access this object. ## Fields | Field | Details | | --- | --- | | ApexTestClassId | Type string Properties Filter, Group, Sort Description The ID of the test class. | | TestMethodName | Type string Properties Filter, Group, Sort Description The name of the test method. | | ApexClassorTriggerId | Type string Properties Filter, Group, Sort Description The ID of the class or trigger under test. | | NumLinesCovered | Type int Properties Filter, Group, Sort Description The number of covered lines. | | NumLinesUncovered | Type int Properties Filter, Group, Sort Description The number of uncovered lines. | | Coverage | Type complexvalue Properties None Description Two lists of integers. The first is the covered lines, and the second is the list of uncovered lines. If a line is missing from both lists, the line isn’t executable and doesn’t require coverage. Coverage includes these fields: - coveredLines - namespace - uncoveredLines | ## Usage To query for code coverage, specify an Apex class, test class, or both. The returned JSON or XML object contains two lists of integers: one for covered and one for uncovered lines. The following example SOQL query retrieves code coverage results for a specific class or trigger covered by a specific test class: SELECT Coverage FROM ApexCodeCoverage WHERE ApexClassOrTriggerId = ‘01pD000000066GR’ AND ApexTestClassId = ‘01pD000000064pu’ For per-class code coverage, the query is: SELECT Coverage FROM ApexCodeCoverage WHERE ApexClassOrTriggerId = ‘01pD000000066GR’ ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note In this case, multiple rows can be returned, since there could be multiple test classes that cover the same test class. Coverage is returned as two lists of integers. The first is the covered lines, and the second is the list of uncovered lines. If a line is missing from both lists, the line isn’t executable and doesn’t require coverage. For example, if the covered lines are 2, 9, and 11, and uncovered lines are 3, 4, 5, and 6; the result is: {2,9,11},{3,4,5,6}. The missing lines (1, 7, 8 and 10) aren’t executable. Code coverage percentage is a simple calculation of the number of covered lines divided by the sum of the number of covered lines and the number of uncovered lines. For example, to calculate code coverage percentage in SOAP:   ApexCodeCoverage acc = null; //Query for an ApexCodeCoverage object Coverage coverage = acc.coverage; int\[\] covered = coverage.coveredLines; int\[\] uncovered = coverage.uncoveredLines; int percent = covered.length / (covered.length + uncovered.length); System.out.println("Total class coverage is " + percent + "%."); ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note If a single deployment has over 2,000 Apex classes, ApexCodeCoverage objects for the deployed classes are deleted even if the deployment fails or is rolled back. ApexCodeCoverageAggregate objects aren’t affected. # ApexCodeCoverageAggregate Represents aggregate code coverage test results for an Apex class or trigger. Available in Tooling API version 29.0 and later. ## Supported SOAP API Calls describeSObjects(), query(), retrieve() ## Supported REST API HTTP Methods Query, GET, DELETE ## Special Access Rules In API version 49.0 and later, users must have the View Setup and Configuration permission to access this object. ## Fields | Field | Details | | --- | --- | | ApexClassorTriggerId | Type string Properties Filter, Group, Sort Description The ID of the class or trigger under test. | | NumLinesCovered | Type int Properties Filter, Group, Sort Description The number of covered lines. | | NumLinesUncovered | Type int Properties Filter, Group, Sort Description The number of uncovered lines. | | Coverage | Type complexvalue Properties None Description Two lists of integers. The first is the covered lines, and the second is the list of uncovered lines. If a line is missing from both lists, the line isn’t executable and doesn’t require coverage. Coverage includes the following fields: - coveredLines - namespace - uncoveredLines | ## Usage To query for aggregate code coverage, specify an Apex test class. The returned JSON or XML object will contain two lists of integers: one for covered and one for uncovered lines. For examples, see [ApexCodeCoverage](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexcodecoverage.htm "Represents code coverage test results for an Apex class or trigger. Available in Tooling API version 29.0 and later."). # ApexComponent Represents the saved copy of a Visualforce component. ApexComponent uses the cached version of the class unless one is unavailable. Available from API version 28.0 or later. To edit, save, or compile Visualforce components, use [ApexComponentMember](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexcomponentmember.htm "Represents the working copy of a Visualforce component for editing, saving, or compiling in a MetadataContainer."). ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API HTTP Methods Query, GET, POST, PATCH, DELETE ## Fields
Field Name Details
ManageableState
Type
ManageableState enumerated list
Properties
Filter, Group, Nillable, Restricted picklist, Sort
Description
Indicates the manageable state of the specified component that is contained in a package:
  • beta
  • deleted
  • deprecated
  • deprecatedEditable
  • installed
  • installedEditable
  • released
  • unmanaged

This field is available in API version 38.0 and later.

## Usage To retrieve information about a Visualforce component, create an ApexComponent object that references it. For example code, see [SOAP Calls](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_soap_overview.htm). To edit, save, or compile Visualforce components, use [ApexComponentMember](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexcomponentmember.htm "Represents the working copy of a Visualforce component for editing, saving, or compiling in a MetadataContainer."). # ApexComponentMember Represents the working copy of a Visualforce component for editing, saving, or compiling in a MetadataContainer. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Special Access Rules As of Spring ’20 and later, to access ApexComponentMember, users must have both the View All Data and Customize Application permissions. ## Supported REST API HTTP Methods Query, GET, POST, PATCH, DELETE ## Fields | Field Name | Details | | --- | --- | | Body | Type string Properties Create, Update Description The data for the Visualforce component. The Body field is the only field you can update() or PATCH. | | Content | Type string Properties None Description A string representation of ApexComponentMetadata that lists the version, status, and packaged versions of the corresponding Visualforce component. | | ContentEntityId | Type reference Properties Create, Filter, Group, Sort Description A reference to a Visualforce component. There can be only one ContentEntityId per ApexComponentMember, otherwise, an error is reported. This field is required if FullName is not specified. | | FullName | Type string Properties Group, Nillable Description The full name of the associated object in the Metadata API. Use to avoid race conditions on create, before you have IDs. 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. This field is required if ContentEntityId is not specified. | | LastSyncDate | Type dateTime Properties Filter, Sort Description The date that this ApexComponentMember Body was replicated from the underlying entity.  When you deploy a MetadataContainer, this value is compared with the LastModifiedDate of the underlying Visualforce component. If LastSyncDate is older than LastModifiedDate, the deployment fails with an error. | | Metadata | Type ApexComponentMetadata Properties None Description An object that describes the version, status, and packaged versions of the corresponding Visualforce component. 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. | | MetadataContainerId | Type reference Properties Create, Filter, Group, Sort Description A reference to a [MetadataContainer](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_metadatacontainer.htm "Manages working copies of ApexClassMember, ApexTriggerMember, ApexPageMember, and ApexComponentMember objects, including collections of objects to be deployed together.") or [ContainerAsyncRequest](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_containerasyncrequest.htm "Allows you to compile and asynchronously deploy a MetadataContainer object to your organization.") object. As part of a successful deployment, this field is reset from the ID of the deployed [MetadataContainer](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_metadatacontainer.htm "Manages working copies of ApexClassMember, ApexTriggerMember, ApexPageMember, and ApexComponentMember objects, including collections of objects to be deployed together.") to the ID of the corresponding [ContainerAsyncRequest](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_containerasyncrequest.htm "Allows you to compile and asynchronously deploy a MetadataContainer object to your organization.") object. This field is required. | ## Usage To edit, save, or compile a Visualforce component, create an ApexComponentMember object that references it. To create a Visualforce component, use the REST API or the Metadata API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Once an ApexComponentMember is successfully deployed in a [MetadataContainer](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_metadatacontainer.htm "Manages working copies of ApexClassMember, ApexTriggerMember, ApexPageMember, and ApexComponentMember objects, including collections of objects to be deployed together."), the MetadataContainerId is changed to the ID of the [ContainerAsyncRequest](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_containerasyncrequest.htm "Allows you to compile and asynchronously deploy a MetadataContainer object to your organization."), and the ApexComponentMember can’t be modified or reused. Visualforce pages and components are often dependent on each other for functionality. To successfully save and compile a group of related source files, put the corresponding ApexComponentMember and ApexPageMember objects in a single MetadataContainer object. Each ApexComponentMember object can only refer to a single MetadataContainer object. Multiple ApexComponentMember objects can refer to the same MetadataContainer object. #### See Also - [REST API Developer Guide](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_rest.meta/api_rest/ "REST API Developer Guide - HTML (New Window)") - [Metadata API Developer Guide](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/ "Metadata API Developer Guide - HTML (New Window)") # ApexEmailNotification Stores a Salesforce user ID or external email address to be notified when unhandled Apex exceptions occur. This object is available in API version 35.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important System-generated emails from an unverified email-sending domain aren’t delivered, even if the From email address is verified. See [Requirements to Send Email from Salesforce](https://help.salesforce.com/s/articleView?id=xcloud.security_email_verification_requirements.htm&language=en_US&type=5). ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Each ApexEmailNotification contains either an email or a user ID, but not both. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(),upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | Email | Type string Properties Create, Filter, Group, idLookup, Nillable, Sort, Update Description The external email address to which the notification is sent. Mutually exclusive with the UserId field. | | UserId | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description ID of the user to which the notification is sent. Mutually exclusive with the Email field. This is a relationship field. Relationship Name User Relationship Type Lookup Refers To User | ## Usage To notify users of your org at the email addresses they have on record, use UserId. To notify external users or alternate email addresses, use Email. #### See Also - [_Apex Developer Guide_: Exceptions in Apex](https://developer.salesforce.com/docs/atlas.en-us.264.0.apexcode.meta/apexcode/apex_exception_definition.htm#unhandled_exception_emails "Apex Developer Guide: Exceptions in Apex - HTML (New Window)") # ApexExecutionOverlayAction Specifies an Apex code snippet or SOQL query to execute at a specific line of code in an Apex class or trigger. Optionally, generates a heap dump. ## Supported SOAP Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods Query, GET, POST, PATCH, DELETE ## Fields | Field Name | Details | | --- | --- | | ActionScript | Type string Properties Create, Nillable, Update Description The Apex code or SOQL query to run when execution reaches the line in the Apex class or trigger at the specified iteration. Results are included in the heap dump file. | | ActionScriptType | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description Indicates whether the ActionScript is written in Apex or SOQL. Valid values are: - None - Apex - SOQL If a value for this field is not supplied, or if an empty string is supplied for this value, a default value of None is used. | | ExecutableEntityId | Type reference Properties Create, Filter, Group, Sort Description The ID of the Apex class or trigger being executed. This field is required if ExecutableEntityName is not provided. If both ExecutableEntityName and ExecutableEntityId are provided, ExecutableEntityId takes precedence. | | ExecutableEntityName | Type reference Properties Create, Filter, Group, Nillable, Sort Description The Apex typeRef of the class or trigger being executed. A type lookup is done and, if the typeRef is valid, ExecutableEntityId is set to the ID of the class or trigger. For a trigger, the typeRef must begin with the SFDC trigger prefix \_\_sfdc\_trigger/. For example, \_\_sfdc\_trigger/YourTriggerName or \_\_sfdc\_trigger/YourNamespace/YourTriggerName. For a class, use the format YourClass, YourClass$YourInnerClass, or YourNamespace/YourClass$YourInnerClass. This field is required if ExecutableEntityId is not provided. If both ExecutableEntityName and ExecutableEntityId are provided, ExecutableEntityId takes precedence. | | ExpirationDate | Type dateTime Properties Create, Filter, Sort, Update Description The expiration date of the overlay action. If no value is provided for this field, a default value of 30 minutes from the current time is used. | | IsDumpingHeap | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether a heap dump is generated (true) or not (false). To execute the ActionScript without generating a heap dump, set this field to false. If no value for this field is provided, a default value of true is used. | | Iteration | Type int Properties Create, Filter, Group, Sort, Update Description The number of times to execute the specified line execute before the heap dump is generated. This field is required. | | Line | Type int Properties Create, Filter, Group, Sort, Update Description The line number of the heap dump marker. This field is required. | | ScopeId | Type reference Properties Create, Filter, Group, Sort Description The user who executed the action. If no value for this field is provided, ScopeId is set to your UserId value. | ## Usage When you are troubleshooting a runtime issue, use ApexExecutionOverlayAction to overlay a diagnostic output on an Apex class or trigger without compromising production code. Use the resulting ApexExecutionOverlayResult to find out more about the state of a variable or of the database or to test your code using specific conditions. # ApexExecutionOverlayResult Represents the result from the Apex code snippet or SOQL query defined in the associated ApexExecutionOverlayAction, and the resulting heap dump if one was returned. Available from API version 28.0 or later. ## Supported SOAP Calls query(), retrieve(), delete() ## Supported REST HTTP Methods Query, GET, DELETE ## Fields | Field Name | Details | | --- | --- | | ActionScript | Type string Properties Nillable Description The Apex code or SOQL query that was run. | | ActionScriptType | Type picklist Properties Filter, Group, Sort, Nillable Description Indicates whether the ActionScript is written in Apex or SOQL. Valid values are: - None - Apex - SOQL | | ApexResult | Type [ApexResult](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexresult.htm "A complex type that represents the result of Apex code executed as part of an ApexExecutionOverlayAction , returned in an ApexExecutionOverlayResult. Available from API version 28.0 or later.") Properties Nillable Description A complex type that represents the result of Apex code executed as part of an ApexExecutionOverlayAction, returned in an ApexExecutionOverlayResult. | | ExpirationDate | Type dateTime Properties Filter, Sort Description The expiration date of the overlay action. | | HeapDump | Type [HeapDump](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_heapdump.htm "A complex type that represents a heap dump in an ApexExecutionOverlayResult object. Available from API version 28.0 or later.") Properties Nillable Description A complex type that represents a heap dump in an ApexExecutionOverlayResult object. You can only have a single row when using HeapDump in SOQL. To select only one row, you can use a LIMIT=1 clause in your SOQL query, or you can list multiple rows for the user and have them select the row to inspect. | | IsDumpingHeap | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether a heap dump was generated (true) or not (false). | | Iteration | Type int Properties Create, Filter, Group, Sort, Update Description The number of times the specified line should execute before the heap dump is generated. This field is required. | | Line | Type int Properties Filter, Group, Sort, Nillable Description The line number of the checkpoint. | | SOQLResult | Type [SOQLResult](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_soqlresult.htm "A complex type that represents the result of a SOQL query in an ApexExecutionOverlayResult object. Available from API version 28.0 or later.") Properties Nillable Description A complex type that represents the result of a SOQL query in an ApexExecutionOverlayResult object. | | UserId | Type reference Properties Filter, Group, Sort, Description The user who executed the action. | ## Usage When you are troubleshooting a runtime issue, you often want to find out more about the state of a variable or the state of the database, or create a specific condition to test your code. Use [ApexExecutionOverlayAction](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexexecutionoverlayaction.htm "Specifies an Apex code snippet or SOQL query to execute at a specific line of code in an Apex class or trigger. Optionally, generates a heap dump.") to overlay a diagnostic output on an Apex class or trigger without compromising production code, and use ApexExecutionOverlayResult to navigate the results. # ApexLog Represents a debug log. To retrieve a raw log by ID, use the REST resource: /sobjects/**ApexLog/id**/Body/. (Available from API version 28.0 or later.) ## Supported SOAP Calls delete(), describeSObjects(), query(), retrieve() ## Supported REST HTTP Methods Query, GET, DELETE ## Fields | Field | Details | | --- | --- | | Application | Type textarea Properties Filter, Group, Sort Description This value depends on the client type that triggered the log or heap dump. - For API clients, this value is the client ID. - For browser clients, this value is Browser. This field is required. | | DurationMilliseconds | Type int Properties Filter, Group, Sort Description The duration of the transaction in milliseconds. This field is required. | | Location | Type picklist Properties Filter, Group, Sort, Nillable, Restricted picklist Description Specifies the location of the origin of the log or heap dump. Values are: - Monitoring—Generated as part of debug log monitoring, and visible to all administrators. These types of logs are maintained for seven days or until a user deletes them. - SystemLog—Generated as part of system log monitoring, and visible only to you. These types of logs are maintained for 24 hours or until the user clears them. | | LogLength | Type int Properties Filter, Group, Sort Description Length of the log or heap dump in bytes. This field is required. | | LogUserId | Type reference Properties Filter, Group, Sort, Nillable Description ID of the user whose actions triggered the debug log or heap dump. | | Operation | Type string Properties Filter, Group, Sort Description Name of the operation that triggered the debug log or heap dump, such as APEXSOAP, Apex Sharing Recalculation, and so on. This field is required. | | Request | Type string Properties Filter, Group, Sort Description Request type. Values are: - API—Request came from an API. - Application—Request came from the Salesforce user interface. This field is required. | | RequestIdentifier | Type string Properties Filter, Group, Sort Description The unique identifier of the request that triggered the debug log. Use this request identifier to correlate multiple debug logs triggered by the same request. | | | | | StartTime | Type dateTime Properties Filter, Sort Description Start time of the transaction. This field is required. | | Status | Type string Properties Filter, Group, Sort Description Status of the transaction. This value is either Success, or the text of an unhandled Apex exception. This field is required. | # ApexOrgWideCoverage Represents code coverage test results for an entire organization. Available in Tooling API version 29.0 and later. ## Supported SOAP API Calls describeSObjects(), delete(), query(), retrieve() ## Supported REST API HTTP Methods Query, GET, DELETE ## Special Access Rules In API version 49.0 and later, users must have the View Setup and Configuration permission to access this object. ## Fields | Field | Details | | --- | --- | | PercentCovered | Type int Properties Filter, Group, Nillable, Sort Description The percentage of the code in the organization that is covered by tests. | # ApexPage Represents the saved copy of a Visualforce page. ApexPage uses the cached version of the page unless one is unavailable. Available from API version 28.0 or later. To edit, save, or compile Visualforce pages, use [ApexPageMember](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexpagemember.htm "Represents the working copy of a Visualforce page for editing, saving, or compiling in a MetadataContainer."). ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), search(), update(), upsert() ## Supported REST API HTTP Methods Query, GET, POST, PATCH, DELETE ## Fields
Field Name Details
ApiVersion
Type
double
Properties
Create, Filter, Sort, Update
Description
The API version for the page. Every page has an API version specified at creation. If the API version is less than 15.0 and ApiVersion is not specified, ApiVersion defaults to 15.0. This field is available in API version 30.0 and later.
ControllerKey
Type
string
Properties
Create, Filter, Group, Nillable, Sort, Update
Description
The identifier for the controller associated with this page:
  • If ControllerType is set to Standard or StandardSet, this value is the name of the sObject that defines the controller.
  • If ControllerType is set to Custom, this value is the name of the Apex class that defines the controller.

This field is available in API version 30.0 and later.

ControllerType
Type
picklist
Properties
Create, Filter, Group, Restricted picklist, Sort, Update
Description
The type of controller associated with this Visualforce page. Possible values include:
  • Not Specified, for pages defined with neither a standardController nor a controller attribute on the <apex:page> tag
  • Standard, for pages defined with the standardController attribute on the <apex:page> tag
  • StandardSet, for pages defined using the standardController and recordSetVar attribute on the <apex:page> tag
  • Custom, for pages defined with the controller attribute on the <apex:page> tag

This field is available in API version 30.0 and later.

Description
Type
textarea
Properties
Create, Filter, Nillable, Sort, Update
Description
Description of the Visualforce page. This field is available in API version 30.0 and later.
FullName
Type
string
Properties
Create, Filter, Group, idLookup, Sort, Update
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. This field is available in API version 36.0 and later.
IsAvailableInTouch
Type
boolean
Properties
Create, Defaulted on create, Filter, Group, Sort, Update
Description
Indicates if Visualforce tabs associated with the Visualforce page can be used in the Salesforce mobile app (true) or not (false). (Use of this field for Salesforce Touch is deprecated.) This field is available in API version 30.0 and later.

Standard object tabs that are overridden with a Visualforce page aren’t supported in the Salesforce mobile app, even if you set this field for the page. The default Salesforce app page for the object is displayed instead of the Visualforce page.

IsConfirmationTokenRequired
Type
boolean
Properties
Create, Defaulted on create, Filter, Group, Sort, Update
Description
Indicates whether GET requests for the page require a CSRF confirmation token (true) or not (false). This field is available in API version 30.0 and later.

If you change this field’s value from false to true, links to the page require a CSRF token to be added to them, or the page will be inaccessible.

ManageableState
Type
ManageableState enumerated list
Properties
Filter, Group, Nillable, Restricted picklist, Sort
Description
Indicates the manageable state of the specified component that is contained in a package:
  • beta
  • deleted
  • deprecated
  • deprecatedEditable
  • installed
  • installedEditable
  • released
  • unmanaged

This field is available in API version 38.0 and later.

Markup
Type
textarea
Properties
Create, Update
Description
The Visualforce markup, HTML, Javascript, and any other Web-enabled code that defines the content of the page. This field is available in API version 30.0 and later.
MasterLabel
Type
string
Properties
Create, Filter, Group, Sort, Update
Description
The text used to identify the Visualforce page in the Setup area of Salesforce. The Label is Label. This field is available in API version 30.0 and later.
Metadata
Type
mns:ApexPage
Properties
Create, Nillable, Update
Description
The Visualforce page metadata. 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. This field is available in API version 36.0 and later.
Name
Type
string
Properties
Create, Filter, Group, idLookup, Sort, Update
Description
Required. Name of this Visualforce page. This field is available in API version 30.0 and later.
NamespacePrefix
Type
string
Properties
Filter, Group, Nillable, Sort
Description
The namespace prefix that is 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 Developer Edition orgs, NamespacePrefix is set to the namespace prefix of the org for all objects that support it, unless 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 orgs that are not Developer Edition orgs, NamespacePrefix is set only for objects that are part of an installed managed package. All other objects have no namespace prefix.
This field is available in API version 30.0 and later.
## Usage To retrieve information about a Visualforce page, create an ApexPage object that references it. For example code, see [SOAP Calls](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_soap_overview.htm). To edit, save, or compile Visualforce pages, use [ApexPageMember](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexpagemember.htm "Represents the working copy of a Visualforce page for editing, saving, or compiling in a MetadataContainer."). # ApexPageInfo Represents metadata about a Visualforce page. This object is available in API version 37.0 and later. To edit, save, or compile Apex pages, use [ApexPageMember](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexpagemember.htm "HTML (New Window)"). To load markup for a page or other fields, use [ApexPage](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexpage.htm "HTML (New Window)"). ## Supported SOAP API Calls describeSObjects(), query() ## Supported REST API HTTP Methods Query, GET ## Special Access Rules As of Summer '20 and later, this object can only be accessed by users who can view a particular Visualforce page, and users with the View Setup and Configuration permission. ## Fields | Field | Details | | --- | --- | | ApexPageId | Type reference Properties Filter, Group, Sort Description ID for the Visualforce page. | | ApiVersion | Type double Properties Filter, Sort Description The API version for the page. Every page has an API version specified at creation. If the API version is less than 15.0 and ApiVersion is not specified, ApiVersion defaults to 15.0. | | Description | Type textarea Properties Filter, Nillable, Sort Description Description of the Visualforce page. | | DurableId | Type string Properties Filter, Group, Nillable, Sort Description For internal use only. | | IsAvailableInTouch | Type boolean Properties Defaulted on create, Filter, Group, Sort Description This field indicates whether Visualforce tabs associated with the Visualforce page can be used in the Salesforce app (true) or not (false). The default value is false. | | IsShowHeader | Type boolean Properties Filter, Group, Nillable, Sort Description The showHeader value for the Visualforce page. This will be “unknown” if the Visualforce page uses an expression to compute showHeader. The default setting is true. | | MasterLabel | Type string Properties Filter, Group, Nillable, Sort Description The text used to identify the Visualforce page in the Setup area of Salesforce. | | Name | Type string Properties Filter, Group, Sort Description Developer name of the Visualforce page. | | NameSpacePrefix | Type string Properties Filter, 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 Developer Edition orgs, the namespace prefix is set to the namespace prefix of the org for all objects that support it. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note If an object is in an installed managed package, 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 non-Developer Edition orgs, NameSpacePrefix is set only for objects that are part of an installed managed package. Objects outside of an installed managed package don't have a namespace prefix. | ApexPageInfo ## Usage To retrieve labels and names for Visualforce pages, query the object that references it. For sample code, see [SOAP Calls](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/intro_soap_overview.htm "HTML (New Window)"). # ApexPageMember Represents the working copy of a Visualforce page for editing, saving, or compiling in a MetadataContainer. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Special Access Rules As of Spring ’20 and later, to access ApexPageMember, users must have both the View All Data and Customize Application permissions. ## Supported REST API HTTP Methods Query, GET, POST, PATCH, DELETE ## Fields | Field Name | Details | | --- | --- | | Body | Type string Properties Create, Update Description The data for the Visualforce page. The Body field is the only field you can update() or PATCH. | | Content | Type string Properties None Description A string representation of ApexPageMetadata that lists the version, status, and packaged versions of the corresponding Visualforce page. | | ContentEntityId | Type reference Properties Create, Filter, Group, Sort Description A reference to a Visualforce page. There can be only one ContentEntityId per ApexPageMember, otherwise, an error is reported. This field is required if FullName is not specified. | | FullName | Type string Properties Group, Nillable Description The full name of the associated object in the Metadata API. Use to avoid race conditions on create, before you have IDs. 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. This field is required if ContentEntityId is not specified. | | LastSyncDate | Type dateTime Properties Filter, Sort Description The date that this ApexPageMember Body was replicated from the underlying entity. When you deploy a MetadataContainer, this value is compared with the LastModifiedDate of the underlying Visualforce page. If LastSyncDate is older than LastModifiedDate, the deployment fails with an error. | | Metadata | Type ApexPageMetadata Properties None Description An object that describes the version, status, and packaged versions of the corresponding Visualforce page. 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. | | MetadataContainerId | Type reference Properties Create, Filter, Group, Sort Description A reference to a [MetadataContainer](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_metadatacontainer.htm "Manages working copies of ApexClassMember, ApexTriggerMember, ApexPageMember, and ApexComponentMember objects, including collections of objects to be deployed together.") or [ContainerAsyncRequest](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_containerasyncrequest.htm "Allows you to compile and asynchronously deploy a MetadataContainer object to your organization.") object. As part of a successful deployment, this field is reset from the ID of the deployed [MetadataContainer](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_metadatacontainer.htm "Manages working copies of ApexClassMember, ApexTriggerMember, ApexPageMember, and ApexComponentMember objects, including collections of objects to be deployed together.") to the ID of the corresponding [ContainerAsyncRequest](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_containerasyncrequest.htm "Allows you to compile and asynchronously deploy a MetadataContainer object to your organization.") object. This field is required. | ## Usage To edit, save, or compile a Visualforce page, create an ApexPageMember object that references it. To create a Visualforce page, use the REST API or the Metadata API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Once an ApexPageMember is successfully deployed in a [MetadataContainer](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_metadatacontainer.htm "Manages working copies of ApexClassMember, ApexTriggerMember, ApexPageMember, and ApexComponentMember objects, including collections of objects to be deployed together."), the MetadataContainerId is changed to the ID of the [ContainerAsyncRequest](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_containerasyncrequest.htm "Allows you to compile and asynchronously deploy a MetadataContainer object to your organization."), and the ApexPageMember can’t be modified or reused. Visualforce pages and components are often dependent on each other for functionality. To successfully save and compile a group of related source files, put the corresponding ApexPageMember and ApexComponentMember objects in a single MetadataContainer object. Use ContainerAsyncRequest to send the MetadataContainer to the application server. Each ApexPageMember object can only refer to a single MetadataContainer object. Multiple ApexPageMember objects can refer to the same MetadataContainer object. #### See Also - [REST API Developer Guide](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_rest.meta/api_rest/ "REST API Developer Guide - HTML (New Window)") - [Metadata API Developer Guide](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/ "Metadata API Developer Guide - HTML (New Window)") # ApexResult A complex type that represents the result of Apex code executed as part of an ApexExecutionOverlayAction , returned in an ApexExecutionOverlayResult. Available from API version 28.0 or later. ## Fields | Field | Details | | --- | --- | | apexError | Type string Description The error text returned if the execution was unsuccessful. | | apexExecutionResult | Type ExecuteAnonymousResult Description The structured result returned from a successful execution. ExecuteAnonymousResult includes the following fields: - column - compileProblem - compiled - exceptionMessage - exceptionStackTrace - line - success ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note ExecuteAnonymousResult is outside the current execution context and does not provide access to variables in the heap. | ## Usage Overlay Apex on checkpoints to capture structured debugging information. If your SOQL query may return more than one record when dealing with complex types, select only one row. For example, you can use a LIMIT=1 clause in your SOQL query, or you can list rows for the user and have them select the row to inspect. # ApexTestQueueItem Represents a single Apex class in the Apex job queue. Available in API version 30.0 and later. ## Supported SOAP API Calls create(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API HTTP Methods Query, GET, POST, PATCH ## Fields | Field Name | Details | | --- | --- | | ApexClassId | Type reference Properties Create, Filter, Group, Sort Description The Apex class whose tests are to be executed. This field can't be updated. | | Status | Type picklist Properties Filter, Group, Restricted picklist, Sort, Update Description The status of the test. Valid values are: - Queued - Processing - Aborted - Completed - Failed - Preparing - Holding To abort a class that is in the Apex job queue, perform an update operation on the ApexTestQueueItem object and set its Status field to Aborted. | | ExtendedStatus | Type string Properties Filter, Nillable, Sort Description The pass rate of the test run. For example: “(4/6)”. This means that four out of a total of six tests passed. If the class fails to execute, this field contains the cause of the failure. | | ParentJobId | Type reference Properties Filter, Group, Nillable, Sort Description Read-only. Points to the AsyncApexJob that represents the entire test run. If you insert multiple Apex test queue items in a single bulk operation, the queue items will share the same parent job. This means that a test run can consist of the execution of the tests of several classes if all the test queue items are inserted in the same bulk operation. | | ShouldSkipCodeCoverage | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether to opt out of collecting code coverage information during Apex test runs. Available in API version 43.0 and later. | | TestRunResultID | Type reference Properties Filter, Group, Nillable, Sort Description The ID of the associated [ApexTestRunResult](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apextestrunresult.htm "Contains summary information about all the test methods that were run in a particular Apex job. Available from API version 37.0 or later.") object. Available in API version 37.0 and later. | ## Usage Insert an ApexTestQueueItem object to place its corresponding Apex class in the Apex job queue for execution. The Apex job executes the test methods in the class. The example RunTestListener.java class subscribes to the TestResult system topic and prints out the test results using ApexTestQueueItem and ApexTestResult. The example makes these assumptions: - You have already set up a Java client application for Streaming API. This example uses the org.cometd.client.BayeuxClient created in the Java Client code example in the [_Streaming API Developer Guide_](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_streaming.meta/api_streaming/). - You have a logged in com.sforce.soap.tooling.SoapConnection. For examples, see the [_SOAP API Developer Guide_](https://developer.salesforce.com/docs/atlas.en-us.264.0.api.meta/api/). - The logged-in user has the View All Data permission to subscribe to the TestResult system topic, /systemTopic/TestResult. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Instead of Streaming API, you can use Pub/Sub API to subscribe to events. Based on gRPC API and HTTP/2, Pub/Sub API delivers binary event messages in the Apache Avro format and is more efficient than Streaming API. See the [Pub/Sub API Documentation](https://developer.salesforce.com/docs/platform/pub-sub-api/overview "HTML (New Window)"). As an alternative to using ApexTestQueueItem, you can run test methods using the Salesforce CLI commands. See [Run Apex Tests](https://developer.salesforce.com/docs/atlas.en-us.264.0.sfdx_dev.meta/sfdx_dev/sfdx_dev_testing.htm "HTML (New Window)") in the Salesforce DX Developer Guide. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note The RunTestListener.java class must be instantiated after the Streaming API handshake. For example: SoapConnection toolingConn; //Already set and logged in BayeuxClient client; //Already set and logged in //Listen on the handshake event boolean handshaken = client.waitFor(10 \* 1000, BayeuxClient.State.CONNECTED); if (!handshaken) { System.out.println("Failed to handshake: " + client); System.exit(1); } **final RunTestListener = null;** client.getChannel(Channel.META\_SUBSCRIBE).addListener( new ClientSessionChannel.MessageListener() { public void onMessage(ClientSessionChannel channel, Message message) { boolean success = message.isSuccessful(); if (success) { //Replace with your own classes and suites String apexTestClassId1 = "01pD00000007M0CIAU"; String apexTestClassId2 = "01pD00000007NqtIAE"; String apexTestSuiteId1 = "05FD00000004CDBMA2"; String apexTestClassName1 = "Test\_MyClass"; String apexTestSuiteName1 = "TestSuite\_MySuite"; **listener.runTests(new String\[\]{apexTestClassId1, apexTestClassId2}, new String\[\]{apexTestSuiteId1}, 1, new String\[\]{apexTestClassName1}, new String\[\]{apexTestSuiteName1});** } } }; ); //This will subscribe to the TestRun system topic **listener = new RunTestListener(client, toolingConn);** import java.util.HashMap; import org.apache.commons.lang3.StringUtils; import org.cometd.bayeux.Message; import org.cometd.bayeux.client.ClientSessionChannel; import org.cometd.bayeux.client.ClientSessionChannel.MessageListener; import org.cometd.client.BayeuxClient; import com.sforce.soap.tooling.ApexTestQueueItem; import com.sforce.soap.tooling.ApexTestResult; import com.sforce.soap.tooling.QueryResult; import com.sforce.soap.tooling.SObject; import com.sforce.soap.tooling.SoapConnection; import com.sforce.soap.tooling.TestLevel; import com.sforce.ws.ConnectionException; public class RunTestListener { private static final String CHANNEL = "/systemTopic/TestResult"; private SoapConnection conn; public RunTestListener(BayeuxClient client, SoapConnection conn) { this.conn = conn; System.out.println("Subscribing for channel: " + CHANNEL); client.getChannel(CHANNEL).subscribe(new MessageListener() { @Override public void onMessage(ClientSessionChannel channel, Message message) { HashMap data = (HashMap) message.getData(); HashMap sobject = (HashMap) data.get("sobject"); String id = (String) sobject.get("Id"); System.out.println("\\nAysncApexJob " + id); getTestQueueItems(id); } }); } public void runTests(String\[\] apexTestClassIds, String\[\] apexTestSuiteIds, Integer maxFailedTests, String\[\] apexTestClassNames, String\[\] apexTestSuiteNames) { // All parameters are required if (apexTestClassIds == null && apexTestSuiteIds == null && apexTestClassNames == null && apexTestSuiteNames == null) { System.out.println("No tests to run"); return; } String classIds = StringUtils.join(apexTestClassIds,", "); String suiteIds = StringUtils.join(apexTestSuiteIds,", "); String classNames = StringUtils.join(apexTestClassNames,", "); String suiteNames = StringUtils.join(apexTestSuiteNames,", "); String tests = null; Boolean skipCodeCover = false; try { System.out.println("Running async test run"); conn.runTestsAsynchronous(classIds, suiteIds, maxFailedTests, TestLevel.RunSpecifiedTests, classNames, suiteNames, tests, skipCodeCover); } catch (ConnectionException e) { e.printStackTrace(); } } public void createAndRunTestsNode(String apexTestClassName, String apexTestClassId, String\[\] apexTestMethods) { //Currently, the array size of TestNode objects must be 1 //Provide a non-null class name or a non-null class ID if (apexTestClassName != null && apexTestClassId != null) { System.out.println("Specify a class name OR a class ID"); return; } else if (apexTestClassName == null && apexTestClassId == null) { System.out.println("No tests to run"); return; } TestsNode thisTestsNode = new TestsNode(); thisTestsNode.setClassName(apexTestClassName); thisTestsNode.setClassId(apexTestClassId); thisTestsNode.setTestMethods(apexTestMethods); TestsNode\[\] tests = new TestsNode\[\] { thisTestsNode }; try { System.out.println("Running async test run"); conn.runTestsAsynchronous(null, null, -1, null, null, null, tests); } catch (ConnectionException e) { e.printStackTrace(); } } private void getTestQueueItems(String asyncApexJobId) { try { QueryResult res = conn .query("SELECT Id, Status, ApexClassId FROM ApexTestQueueItem WHERE ParentJobId = '" + asyncApexJobId + "'"); if (res.getSize() > 0) { for (SObject o : res.getRecords()) { ApexTestQueueItem atqi = (ApexTestQueueItem) o; System.out.println("\\tApexTestQueueItem - "+atqi.getStatus()); if (atqi.getStatus().equals("Completed")) { getApexTestResults(atqi.getId()); } } } else { System.out.println("No queued items for " + asyncApexJobId); } } catch (ConnectionException e) { e.printStackTrace(); } } private void getApexTestResults(String apexTestQueueItemId) { try { QueryResult res = conn .query("SELECT StackTrace,Message, AsyncApexJobId,MethodName, Outcome,ApexClassId FROM ApexTestResult WHERE QueueItemId = '" + apexTestQueueItemId + "'"); if (res.getSize() > 0) { for (SObject o : res.getRecords()) { ApexTestResult atr = (ApexTestResult) o; System.out.println("\\tTest result for " + atr.getApexClassId() + "." + atr.getMethodName()); String msg = atr.getOutcome().equals("Fail") ? " - " + atr.getMessage() + " " + atr.getStackTrace() : ""; System.out.println("\\t\\tTest " + atr.getOutcome() + msg); } } else { System.out.println("No Test Results for " + apexTestQueueItemId); } } catch (ConnectionException e) { e.printStackTrace(); } } } # ApexTestResult Represents the result of an Apex test method execution. Available from API version 30.0 or later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update() ## Supported REST API HTTP Methods Query, GET ## Fields | Field Name | Details | | --- | --- | | ApexClassId | Type reference Properties Create, Filter, Group, Sort, Update Description The Apex class whose test methods were executed. | | ApexLogId | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description Points to the ApexLog for this test method execution if debug logging is enabled; otherwise, null. | | ApexTestRunResultId | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description The ID of the [ApexTestRunResult](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apextestrunresult.htm "Contains summary information about all the test methods that were run in a particular Apex job. Available from API version 37.0 or later.") that represents the entire test run. | | AsyncApexJobId | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description Points to the AsyncApexJob that represents the entire test run. This field points to the same object as ApexTestQueueItem.ParentJobId. | | IsTestSetup | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates if the results are for a test setup method. The default is false. | | Message | Type string Properties Create, Filter, Nillable, Sort, Update Description The exception error message if a test failure occurs; otherwise, null. | | MethodName | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description The name of the test method. | | Outcome | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The result of the test. Valid values are: - Pass - Fail - CompileFail - Skip | | QueueItemId | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description Points to the [ApexTestQueueItem](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apextestqueueitem.htm "Represents a single Apex class in the Apex job queue. Available in API version 30.0 and later.") which is the class that this test method is part of. | | RunTime | Type int Properties Create, Filter, Group, Nillable, Sort, Update Description The time it took the test method to run, in seconds. | | StackTrace | Type string Properties Create, Filter, Nillable, Sort, Update Description The Apex stack trace if the test failed; otherwise, null. | | TestCategory | Type string Properties Filter, Group, Nillable, Sort Description The category of the test class. This field is available in API version 65.0 and later. Possible values are: - Apex–run Apex tests. - Flow–run flow tests. - IntegrationTest–run integration tests. This field is available as a Developer Preview in API version 67.0 and later. See [Apex Integration Tests for Agentforce and Data 360 Services (Developer Preview)](https://developer.salesforce.com/docs/atlas.en-us.264.0.apexcode.meta/apexcode/apex_testing_integration_testing.htm) in the Apex Developer Guide. | | TestName | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description The name of the test class. This field is available in API version 65.0 and later. | | TestNamespace | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description The namespace of the test class. Apex tests are in the default namespace, so theTestNamespace value for Apex tests is null. Flow tests are in the [FlowTesting](https://developer.salesforce.com/docs/atlas.en-us.264.0.apexref.meta/apexref/apex_namespace_flowtesting.htm) namespace. If a flow test is in a namespaced package or org, the TestNamespace value is FlowTesting.. This field is available in API version 65.0 and later. | | TestTimestamp | Type dateTime Properties Create, Filter, Sort, Update Description The start time of the test method. | ## Usage You can query the fields of the ApexTestResult record that corresponds to a test method executed as part of an Apex class execution. Each ApexTestResult record represents a single test method execution. For example, if an Apex test class contains six test methods, six ApexTestResult records are created. These records are in addition to the ApexTestQueueItem record that represents the Apex class. Each ApexTestResult record has an associated ApexTestResultLimits record, which captures the Apex limits used during execution of the test method. For example code, see [ApexTestQueueItem](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apextestqueueitem.htm "Represents a single Apex class in the Apex job queue. Available in API version 30.0 and later."). # ApexTestResultLimits Captures the Apex test limits used for a particular test method execution. An instance of this object is associated with each ApexTestResult object. Available from API version 37.0 or later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update() ## Supported REST API HTTP Methods Query, GET ## Fields | Field Name | Details | | --- | --- | | ApexTestResultId | Type reference Properties Create, Filter, Group, Sort Description The ID of the associated ApexTestResult object. | | AsyncCalls | Type int Properties Create, Filter, Group, Sort, Update Description The number of asynchronous calls made during the test run. | | Callouts | Type int Properties Create, Filter, Group, Sort, Update Description The number of callouts made during the test run. | | Cpu | Type int Properties Create, Filter, Group, Sort, Update Description The amount of CPU used during the test run, in milliseconds. | | Dml | Type int Properties Create, Filter, Group, Sort, Update Description The number of DML statements made during the test run. | | DmlRows | Type int Properties Create, Filter, Group, Sort, Update Description The number of rows accessed by DML statements during the test run. | | Email | Type int Properties Create, Filter, Group, Sort, Update Description The number of email invocations made during the test run. | | LimitContext | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description Indicates whether the test run was synchronous or asynchronous. | | LimitExceptions | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description Indicates whether your org has any limits that differ from the default limits. | | MobilePush | Type int Properties Create, Filter, Group, Sort, Update Description The number of mobile push calls made during the test run. | | QueryRows | Type int Properties Create, Filter, Group, Sort, Update Description The number of rows queried during the test run. | | Soql | Type int Properties Create, Filter, Group, Sort, Update Description The number of SOQL queries made during the test run. | | Sosl | Type int Properties Create, Filter, Group, Sort, Update Description The number of SOSL queries made during the test run. | ## Usage The ApexTestResultLimits object is populated for each test method execution, and it captures the limits used between the Test.startTest() and Test.stopTest() methods. If startTest() and stopTest() aren’t called, limits usage is not captured. Note the following: - The associated test method must be run asynchronously. - Limits for asynchronous Apex operations (batch, scheduled, future, and queueable) that are called within test methods are not captured. - Limits are captured only for the default namespace. # ApexTestRunResult Contains summary information about all the test methods that were run in a particular Apex job. Available from API version 37.0 or later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update() ## Supported REST API HTTP Methods Query, GET ## Fields | Field Name | Details | | --- | --- | | AsyncApexJobId | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description The parent Apex job ID for the result. | | ClassesCompleted | Type int Properties Create, Filter, Group, Nillable, Sort, Update Description The total number of classes executed during the test run. | | ClassesEnqueued | Type int Properties Create, Filter, Group, Sort, Update Description The total number of classes enqueued during the test run. | | EndTime | Type dateTime Properties Create, Filter, Nillable, Sort, Update Description The time at which the test run ended. | | IsAllTests | Type boolean Properties Create, Filter, Group, Sort, Update Description Indicates whether all Apex test classes were run. | | JobName | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description **Reserved for future use.** | | MethodsCompleted | Type int Properties Create, Filter, Group, Nillable, Sort, Update Description The total number of methods completed during the test run. This value is updated after each class is run. | | MethodsEnqueued | Type int Properties Create, Filter, Group, Nillable, Sort, Update Description The total number of methods enqueued for the test run. This value is initialized before the test runs. | | MethodsFailed | Type int Properties Create, Filter, Group, Nillable, Sort, Update Description The total number of methods that failed during this test run. This value is updated after each class is run. | | Source | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description The source of the test run, such as the Developer Console. | | StartTime | Type dateTime Properties Create, Filter, Sort, Update Description The time at which the test run started. | | Status | Type picklist Properties Create, Filter, Group, Sort, Update Description The status of the test run. Can be one of these values: - Queued - Preparing - Processing - Aborted - Completed - Failed | | TestSetupTime | Type int Properties Create, Filter, Group, Nillable, Sort, Update Description The time it took the setup methods to run, in milliseconds. | | TestTime | Type int Properties Create, Filter, Group, Nillable, Sort, Update Description The time it took the test to run, in milliseconds. | | UserId | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description The user who ran the test run. | # ApexTestSuite Represents a suite of Apex classes to include in a test run. A TestSuiteMembership object associates each class with the suite. Available in the ens namespace in Tooling API version 36.0 and later. Also, available in the mns namespace in Tooling API version 38.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API HTTP Methods Query, GET, POST, PATCH, DELETE ## Fields (ens Namespace) | Field Name | Description | | --- | --- | | TestSuiteName | Type string Properties Create, Filter, Group, Sort, Unique, Update Description The name of the Apex test suite. This label appears in the user interface. This value is case-sensitive and must be unique. | ## Fields (mns Namespace) | Field Name | Field Type | Description | | --- | --- | --- | | testClassName | string\[\] | A list of Apex test classes, specified by name, to include in this test suite. | ## Usage Insert a TestSuiteMembership object using an API call to associate an Apex class with an ApexTestSuite object. (ApexTestSuite and TestSuiteMembership aren’t editable through Apex DML.) To remove the class from the test suite, delete the TestSuiteMembership object. If you delete an Apex test class or test suite, all TestSuiteMembership objects that contain that class or suite are deleted. The following SOQL query returns the membership object that relates this Apex class to this test suite. SELECT Id FROM TestSuiteMembership WHERE ApexClassId = '01pD0000000Fhy9IAC' AND ApexTestSuiteId = '05FD00000004CDBMA2' # ApexTrigger Represents the saved copy of an Apex trigger. ApexTrigger uses the cached version of the class unless one is unavailable. Available from API version 28.0 or later. To edit, save, or compile Apex triggers, use [ApexTriggerMember](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apextriggermember.htm "Represents the working copy of an Apex trigger for editing, saving, or compiling in a MetadataContainer."). ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API HTTP Methods Query, GET, POST, PATCH, DELETE ## Fields | Field Name | Details | | --- | --- | | ApiVersion | Type double Properties Create, Filter, Sort, Update Description The API version for this trigger. Every trigger has an API version specified at creation. | | Body | Type string Properties Create, Nillable, Update Description The Apex trigger definition. Limit: 1 million characters. | | BodyCrc | Type double Properties Create, Defaulted on create, Filter, Nillable, Sort, Update Description The CRC (cyclic redundancy check) of the class or trigger file. | | EntityDefinitionId | Type string Properties Filter, Group, Nillable, Sort Description The Id of the EntityDefinition object associated with this object. | | IsValid | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether any dependent metadata has changed since the trigger was last compiled (true) or not (false). | | LengthWithoutComments | Type int Properties Create, Filter, Group, Sort, Update Description Length of the trigger without comments. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | Metadata | Type ApexTriggerMetadata Properties None Description An object that describes the version, status, and packaged versions of the corresponding Apex trigger. 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. | | Status | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The status of the Apex trigger. The following string values are valid: - Active—The trigger is active. - Inactive—The trigger is inactive, but not deleted. - Deleted—The trigger is marked for deletion. This status is useful for managed packages, because it allows a class to be deleted when a managed package is updated. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Apex triggers cannot be deactivated using Tooling API. You can deactivate Apex triggers using Metadata API. Consider using custom metadata records and include logic in your trigger to bypass trigger configuration logic. For more information, see the [Metadata API Developer Guide](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/ "HTML (New Window)"). | | UsageAfterDelete | Type boolean Properties Create, Filter, Update Description Specifies whether the trigger is an after delete trigger (true) or not (false). | | UsageAfterInsert | Type boolean Properties Create, Filter, Update Description Specifies whether the trigger is an after insert trigger (true) or not (false). | | UsageAfterUndelete | Type boolean Properties Create, Filter, Update Description Specifies whether the trigger is an after undelete trigger (true) or not (false). | | UsageAfterUpdate | Type boolean Properties Create, Filter, Update Description Specifies whether the trigger is an after update trigger (true) or not (false). | | UsageBeforeDelete | Type boolean Properties Create, Filter, Update Description Specifies whether the trigger is a before delete trigger (true) or not (false). | | UsageBeforeInsert | Type boolean Properties Create, Filter, Update Description Specifies whether the trigger is an before insert trigger (true) or not (false). | | UsageBeforeUpdate | Type boolean Properties Create, Filter, Update Description Specifies whether the trigger is an before update trigger (true) or not (false). | | UsageIsBulk | Type boolean Properties Create, Filter, Update Description Specifies whether the trigger is defined as a bulk trigger (true) or not (false). | ## Usage To retrieve information about an Apex trigger, create an ApexTrigger object that references it. For example code, see [SOAP Calls](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_soap_overview.htm). To edit, save, or compile Apex triggers, use [ApexTriggerMember](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apextriggermember.htm "Represents the working copy of an Apex trigger for editing, saving, or compiling in a MetadataContainer."). Although Apex classes and triggers have the Create and Update field properties, a runtime exception occurs if you try to create, update, or delete them using the API. Instead, use the Salesforce Extensions for Visual Studio Code or the Ant Migration Tool to create or update Apex classes or triggers. Apex classes and triggers can’t be created, edited, or deleted in a production org. See [Deploying Apex](https://developer.salesforce.com/docs/atlas.en-us.264.0.apexcode.meta/apexcode/apex_deploying.htm). # ApexTriggerMember Represents the working copy of an Apex trigger for editing, saving, or compiling in a MetadataContainer. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API HTTP Methods Query, GET, POST, PATCH, DELETE ## Special Access Rules As of the Spring '20 release, to access ApexTriggerMember you must have both the View All Data and the Author Apex user permissions. ## Fields | Field Name | Details | | --- | --- | | Body | Type string Properties Create, Update Description The data for the Apex trigger. The Body field is the only field you can update() or PATCH. | | Content | Type string Properties None Description A string representation of ApexTriggerMetadata that lists the version, status, and packaged versions of the corresponding Apex trigger. | | ContentEntityId | Type reference Properties Create, Filter, Group, Sort Description A reference to an Apex trigger. There can be only one ContentEntityId per ApexTriggerMember, otherwise, an error is reported. This field is required if FullName is not specified. | | FullName | Type string Properties Group, Nillable Description The full name of the associated object in the Metadata API. Use to avoid race conditions on create, before you have IDs. 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. This field is required if ContentEntityId is not specified. | | LastSyncDate | Type dateTime Properties Filter, Sort Description The date that this ApexTriggerMember Body was replicated from the underlying entity.  When you deploy a MetadataContainer, this value is compared with the LastModifiedDate of the underlying Apex trigger. If LastSyncDate is older than LastModifiedDate, the deployment fails with an error. | | Metadata | Type ApexTriggerMetadata Properties None Description An object that describes the version, status, and packaged versions of the corresponding Apex trigger. 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. | | MetadataContainerId | Type reference Properties Create, Filter, Group, Sort Description A reference to a [MetadataContainer](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_metadatacontainer.htm "Manages working copies of ApexClassMember, ApexTriggerMember, ApexPageMember, and ApexComponentMember objects, including collections of objects to be deployed together.") or [ContainerAsyncRequest](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_containerasyncrequest.htm "Allows you to compile and asynchronously deploy a MetadataContainer object to your organization.") object. As part of a successful deployment, this field is reset from the ID of the deployed [MetadataContainer](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_metadatacontainer.htm "Manages working copies of ApexClassMember, ApexTriggerMember, ApexPageMember, and ApexComponentMember objects, including collections of objects to be deployed together.") to the ID of the corresponding [ContainerAsyncRequest](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_containerasyncrequest.htm "Allows you to compile and asynchronously deploy a MetadataContainer object to your organization.") object. This field is required. | | SymbolTable | Type [SymbolTable](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_symboltable.htm "A complex type that represents all user-defined tokens in the Body of an ApexClass, ApexClassMember, or ApexTriggerMember and their associated line and column locations within the Body.") Properties Nillable Description A complex type that represents all user-defined tokens in the Body of an ApexClass, ApexClassMember, or ApexTriggerMember and their associated line and column locations within the Body. This field is null if the symbol table cannot be created. A symbol table can’t be created if the content referenced by the ContentEntityId field doesn’t use a symbol table. Compiler errors for the last deployment of the [MetadataContainer](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_metadatacontainer.htm "Manages working copies of ApexClassMember, ApexTriggerMember, ApexPageMember, and ApexComponentMember objects, including collections of objects to be deployed together.") in the MetadataContainerId field also prevent a symbol table from being created. | ## Usage To edit, save, or compile an Apex trigger, create an ApexTriggerMember object that references it. To create a trigger, use REST API or the Metadata API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Once an ApexTriggerMember is successfully deployed in a [MetadataContainer](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_metadatacontainer.htm "Manages working copies of ApexClassMember, ApexTriggerMember, ApexPageMember, and ApexComponentMember objects, including collections of objects to be deployed together."), the MetadataContainerId is changed to the ID of the [ContainerAsyncRequest](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_containerasyncrequest.htm "Allows you to compile and asynchronously deploy a MetadataContainer object to your organization."), and the ApexTriggerMember can’t be modified or reused. Apex triggers and classes are often dependent on each other for functionality. For example, a method in one class can call a method in another class. If source file A is dependent on modified source file B and you try to save and compile source file A before you’ve saved the changes to source file B, the compiler throws an error. To successfully save and compile a group of related source files, put the corresponding ApexTriggerMember and ApexClassMember objects in a single MetadataContainer object. Use ContainerAsyncRequest to send the MetadataContainer to the application server. Each ApexTriggerMember object can only refer to a single MetadataContainer object. Multiple ApexTriggerMember objects can refer to the same MetadataContainer object. #### See Also - [REST API Developer Guide](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_rest.meta/api_rest/ "REST API Developer Guide - HTML (New Window)") - [Metadata API Developer Guide](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/ "Metadata API Developer Guide - HTML (New Window)") # API End-of-Life Policy See which Tooling REST and SOAP API versions are supported, unsupported, or unavailable. Salesforce is committed to supporting each API version for a minimum of 3 years from the date of first release. To improve the quality and performance of the API, versions that are over 3 years old sometimes are no longer supported. Salesforce notifies customers who use an API version scheduled for deprecation at least 1 year before support for the version ends.
Salesforce API Versions Version Support Status Version Retirement Info
Versions 41.0 through 66.0 Supported.
Versions 31.0 through 40.0

Supported.

Deprecated and unsupported from Summer ’27.

Retired from Summer ’28.

Salesforce Platform API Versions 31.0 through 40.0 Retirement
Versions 21.0 through 30.0 As of Summer ’25, these versions are retired and unavailable. Salesforce Platform API Versions 21.0 through 30.0 Retirement
Versions 7.0 through 20.0 As of Summer ’22, these versions are retired and unavailable. Salesforce Platform API Versions 7.0 through 20.0 Retirement
If you request any resource or use an operation from a retired API version, REST API returns the 410:GONE error code. If you request any resource or use an operation from a retired API version, SOAP API returns 500:UNSUPPORTED\_API\_VERSION error code. To identify requests made from old or unsupported API versions, use the [API Total Usage](https://developer.salesforce.com/docs/atlas.en-us.264.0.object_reference.meta/object_reference/sforce_api_objects_eventlogfile_apitotalusage.htm) event type. # ApiFault Element An ApiFault element contains information about a fault that occurs when processing a service request. The ApiFault element has the following properties. ## exceptionCode - **Type**: fns:ExceptionCode - **Description**: A code that characterizes the exception. The full list of exception codes is available in the Tooling API WSDL file for your org. ## exceptionMessage - **Type**: string - **Description**: The message text associated with the exception code. ## extendedErrorDetails - **Type**: tns:ExtendedErrorDetails - **Description**: Reserved for future use. ## upgradeURL - **Type**: string - **Description**: A URL giving the location for more information about the upgrade. ## upgradeMessage - **Type**: string - **Description**: Message text describing why an upgrade is needed. ## Tooling API Faults The following API fault elements represent all the Tooling API faults that can occur. In API version 37.0 and later, these elements are in the Tooling API fns namespace (fault.tooling.soap.sforce.com). - **ApiQueryFault**: The row and column numbers identifying where the problem occurred. - **InvalidFieldFault**: An invalid field in a retrieve() or query() call. - **InvalidIdFault**: A specified ID was invalid in a setPassword() or resetPassword() call. - **InvalidNewPasswordFault**: The new password specified doesn’t conform to the org’s password requirements. Password requirements can include length, character mix, reuse of old passwords, and so on. - **InvalidOldPasswordFault**: The password specified doesn’t match the old password. - **InvalidQueryLocatorFault**: A problem in the queryLocator passed in a queryMore() call. - **InvalidSObjectFault**: An invalid sObject in a describeSObject(), describeSObjects(), describeLayout(), describeDataCategoryGroups(), describeDataCategoryGroupStructures(), create(), update(), retrieve(), or query() call. - **LoginFault**: An error occurred during the login() call. - **MalformedQueryFault**: A problem in the queryString passed in a query() call. - **MalformedSearchFault**: A problem in the search passed in a search() call. - **UnexpectedErrorFault**: An unexpected error occurred. The error is not associated with any other API fault. # AssignmentRule Don’t use this object. This object is exposed in API version 35.0, however AssignmentRule is reserved for future use. # AuraDefinition Represents an Aura component definition, such as component markup, a client-side controller, or an event. Available in API version 32.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API HTTP Methods Query, GET, POST, PATCH, DELETE ## Fields
Field Name Details
AuraDefinitionBundleId
Type
reference
Properties
Create, Filter, Group, Sort
Description
The ID of the bundle containing the definition. A bundle contains a Lightning definition and all its related resources.
DefType
Type
picklist
Properties
Create, Filter, Group, Restricted picklist, Sort, Update
Description
The definition type. Valid values are:
  • APPLICATION — Lightning Aura Components app
  • CONTROLLER — client-side controller
  • COMPONENT — component markup
  • EVENT — event definition
  • HELPER — client-side helper
  • INTERFACE — interface definition
  • RENDERER — client-side renderer
  • STYLE — style (CSS) resource
  • PROVIDER — reserved for future use
  • MODEL — deprecated, do not use
  • TESTSUITE — reserved for future use
  • DOCUMENTATION — documentation markup
  • TOKENS — tokens collection
  • DESIGN — design definition
  • SVG — SVG graphic resource
  • MODULE — reserved for future use
Format
Type
picklist
Properties
Create, Filter, Group, Restricted picklist, Sort, Update
Description
The format of the definition. Valid values are:
  • XML for component markup
  • JS for JavaScript code
  • CSS for styles
  • TEMPLATE_CSS reserved for future use
  • SVG for an SVG graphic
ManageableState
Type
ManageableState enumerated list
Properties
Filter, Group, Nillable, Restricted picklist, Sort
Description
Indicates the manageable state of the specified component that is contained in a package:
  • beta
  • deleted
  • deprecated
  • deprecatedEditable
  • installed
  • installedEditable
  • released
  • unmanaged

This field is available in API version 38.0 and later.

Source
Type
textarea
Properties
Create, Update
Description
The contents of the definition. This is all the markup or code for the definition.
## Usage For more information, see the [Lightning Aura Components Developer Guide](https://developer.salesforce.com/docs/atlas.en-us.264.0.lightning.meta/lightning/ "HTML (New Window)"). # AuraDefinitionBundle Represents a Lightning Aura component definition bundle, such as a component or application bundle. A bundle contains a Lightning Aura component definition and all its related resources. Available in API version 32.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API HTTP Methods Query, GET, POST, PATCH, DELETE ## Fields
Field Name Details
ApiVersion
Type
double
Properties
Filter, Sort
Description
The API version for this bundle. Every bundle has an API version specified at creation.
Description
Type
textarea
Properties
Filter, Group, Sort
Description
The text description of the bundle. Maximum size of 255 characters.
DeveloperName
Type
string
Properties
Filter, Group, Sort
Description
The unique name of the record 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. This field is automatically generated but you can supply your own value if you create the record using the API.
Note

Note

When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance slows down while Salesforce generates one for each record.

Note

Note

Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field.

FullName
Type
string
Properties
Create, Group, Nillable
Description
The unique name used as the AuraDefinitionBundle 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.
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.
Language
Type
picklist
Properties
Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort
Description
The language of the MasterLabel.
ManageableState
Type
ManageableState enumerated list
Properties
Filter, Group, Nillable, Restricted picklist, Sort
Description
Indicates the manageable state of the specified component that is contained in a package:
  • beta
  • deleted
  • deprecated
  • deprecatedEditable
  • installed
  • installedEditable
  • released
  • unmanaged

This field is available in API version 38.0 and later.

MasterLabel
Type
string
Properties
Create, Filter, Group, Sort, Update
Description
Master label for the Lightning bundle. This internal label doesn’t get translated.
Metadata
Type
mns:AuraDefinitionBundle
Properties
Create, Nillable, Update
Description
The AuraDefinitionBundle metadata.
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
Properties
Filter, Group, Sort
Description
The namespace prefix that is 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 Developer Edition orgs, NamespacePrefix is set to the namespace prefix of the org for all objects that support it, unless 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 orgs that are not Developer Edition orgs, NamespacePrefix is set only for objects that are part of an installed managed package. All other objects have no namespace prefix.
## Usage For more information, see the [Lightning Aura Components Developer Guide](https://developer.salesforce.com/docs/atlas.en-us.264.0.lightning.meta/lightning/ "HTML (New Window)"). # AuthorizedEmailDomain Represents an authorized domain for email verification. This object is available in API version 64.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules To create or modify authorized email domains, users must have the Email Administration permission. ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description The unique name of the record 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. This field is automatically generated but you can supply your own value if you create the record using the API. Note these important considerations. - When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance slows down while Salesforce generates one for each record. - Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | DomainName | Type string Properties Create, Filter, Group, idLookup, Sort, Update Description The unique domain name. Example example.com | | Id | Type ID Properties Create, Filter, Group, Sort Description The ID of this authorized email domain. The ID starts with the string 1TB. Example 1TB00000000000B | | IsDomainOwnershipVerified | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether Salesforce successfully verified ownership of this domain (true) or not (false). The default value is false. | | IsEmailChangeVerfRqr | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether email address verification is required for updated user email addresses, user return email addresses, and organization-wide email addresses on this domain (true) or not (false). The default value is true. When IsDomainOwnershipVerified is false, then IsEmailChangeVerfRqr has no effect. Available in API version 68.0 and later. | | IsEmailVerificationRequired | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether address verification is required before Salesforce can send email for new users and new organization-wide email addresses with email addresses on this domain (true) or not (false). The default value is true. When IsDomainOwnershipVerified is false, IsEmailVerificationRequired has no effect. When IsDomainOwnershipVerified is true, IsEmailVerificationRequired and IsEmailChangeVerfRqr determine when address verification is required for updated user email addresses, user return email addresses, and organization-wide email addresses on this domain. - If IsEmailVerificationRequired and IsEmailChangeVerfRqr are true, then email address verification is always required before Salesforce can send email for users and organization-wide email addresses with email addresses on this domain. - If IsEmailVerificationRequired is true and IsEmailChangeVerfRqr is false, then address verification isn’t required for new user email addresses, new user return email addresses, and new organization-wide email addresses on this domain. However, address verification is required when an existing user email address, user return email address, or organization-wide email address is updated to an address on this domain. - If IsEmailVerificationRequired and IsEmailChangeVerfRqr are false, then address verification is never required for user email addresses, user return email addresses, and organization-wide email addresses on this domain. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description Specifies the language of the authorized email domain. The value for this field is the language value of the org. | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description Master label for this object. This display value is the internal label that is not translated. | ## Usage Domain verification is required to bypass email verification for an authorized email domain. To verify ownership of an authorized email domain, first create an AuthorizedEmailDomain with IsDomainOwnershipVerified set to false. Then determine the verification code for the authorized email domain. Use the format orgId\=AuthorizedEmailDomainId where orgId is the 15-digit ID for your Salesforce org and AuthorizedEmailDomainId is the authorized email domain Id. You can also find the verification code on the Authorized Email Domains page in Setup. Add a DNS TXT record for the DomainName with or without \_sfdv. as a prefix that points to a verification code. Here’s an example of a DNS TXT record for an authorized email domain with a DomainName of example.com and an AuthorizedEmailDomainId of 1TB00000000000B in an org with ID 00D000000000P08. Name TTL CLASS TYPE VALUE -------------------------------------------------------------------- example.com. 600 IN TXT "00D000000000P08=1TB00000000000B” ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note This example is a raw TXT record. The trailing dot in example.com. tells the DNS server that the name is absolute, stopping the provider from appending anything to the domain name. Check with your DNS provider to determine how to enter the name in their system to get this result. Here’s an example of a DNS TXT record for the same domain with the \_sfdv. prefix. Name TTL CLASS TYPE VALUE -------------------------------------------------------------------- \_sfdv.example.com. 600 IN TXT "00D000000000P08=1TB00000000000B” If a DNS TXT record already exists for DomainName and \_sfdv.DomainName, you can create a second TXT record for one of those names or you can append the verification code to the value list of an existing TXT record. To append a value, separate the values with a semicolon (;). ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Changes to DNS can take up to 48 hours to propagate across the internet. To start the domain verification process after the required DNS TXT record exists, set IsDomainOwnershipVerified to true. If that verification process succeeds, IsDomainOwnershipVerified remains true. Otherwise, an error is returned and IsDomainOwnershipVerified is set to false. For more information and examples, see [Set Up an Authorized Email Domain](https://help.salesforce.com/s/articleView?id=xcloud.security_email_auth_domain_setup.htm&type=5&language=en_US) in Salesforce Help. # AutoResponseRule Specifies whether the autoresponse rule is active (true). Available in API version 35.0 and later. ## Supported SOAP API Calls query() ## Supported REST API HTTP Methods Query, GET ## Fields | Field Name | Details | | --- | --- | | Active | Type boolean Properties Defaulted on create Filter, Group, Sort Description If true, the autoresponse rule is active. | | EntityDefinitionId | Type string Properties Filter, Group, Sort Description Represents the object associated with this autoresponse rule. | | Name | Type string Properties Filter, Group, Nillable, Sort Description Represents the name of the autoresponse rule. | ## Usage Use this object to query whether an autoresponse rule is active. SELECT Name, Active FROM AutoResponseRule More information about the autoresponse rule is available by querying the metadata type AutoResponseRules. # BrandingSet Represents a set of branding properties for an Experience Builder site, as defined in the Theme panel in Experience Builder. This object is available in API version 40.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | Description | Type textarea Properties Filter, Nillable, Sort Description A description of the branding set. | | DeveloperName | Type string Properties Filter, Group, Sort Description Unique name of the branding set. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the branding set in Metadata API. The full name can include a namespace prefix. 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. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the branding set. Possible values are: - da—Danish - de—German - en\_US—English - es—Spanish - es\_MX—Spanish (Mexico) - fi—Finnish - fr—French - it—Italian - ja—Japanese - ko—Korean - nl\_NL—Dutch - no—Norwegian - pt\_BR—Portuguese (Brazil) - ru—Russian - sv—Swedish - th—Thai - zh\_CN—Chinese (Simplified) - zh\_TW—Chinese (Traditional) | | ManageableState | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The manageable state of the branding set that is contained in a package. Possible values are: - beta—Managed-Beta - deleted—Managed-Proposed-Deleted - deprecated—Managed-Proposed-Deprecated - deprecatedEditable—SecondGen-Installed-Deprecated - installed—Managed-Installed - installedEditable—SecondGen-Installed-Editable - released—Managed-Released - unmanaged—Unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description The user interface name of the branding set. | | Metadata | Type [BrandingSet](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_brandingset.htm) Properties Create, Nillable, Update Description The branding set's metadata. 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 Properties Filter, Group, Nillable, Sort Description The namespace prefix that is 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 Developer Edition orgs, NamespacePrefix is set to the namespace prefix of the org for all objects that support it, unless 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 orgs that are not Developer Edition orgs, NamespacePrefix is set only for objects that are part of an installed managed package. All other objects have no namespace prefix. | | Type | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The type of branding set. Possible values are: - b2b:branding-b2b - b2c-lite-storefront:branding - citizen:branding-citizen - cpt:branding-cpt - cypress:branding-cypress - ember:branding-ember - es-channel-menu - helpCenter:branding-helpCenter - identity:branding-identity - insurance:branding-insurance - jepson:branding-jepson - koa:branding-koa - kokua:branding-kokua - login:branding-login - login:branding-login2 - lpi:branding-lpi - mfg:branding-mfg - mortgage:branding-mortgage - napili:branding-napili - napili:branding-napili-merged - prm:branding-prm-merged - service:branding-service - starter:branding-starter - stella:branding-stella - survey - talon-template-byo:branding - webster:branding-webster | ## Usage To work with branding set properties, use [BrandingSetProperty](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_brandingsetproperty.htm "Represents a branding set property in the Theme panel in Experience Builder. This object is available in API version 40.0 and later."). # BrandingSetProperty Represents a branding set property in the Theme panel in Experience Builder. This object is available in API version 40.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | BrandingSetId | Type reference Properties Create, Filter, Group, Sort Description The ID of the [BrandingSet](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_brandingset.htm "Represents a set of branding properties for an Experience Builder site, as defined in the Theme panel in Experience Builder. This object is available in API version 40.0 and later."). | | PropertyName | Type string Properties Create, Filter, Group, Sort, Update Description The name of the branding set property, such as TextColor. | | PropertyValue | Type textarea Properties Create, Nillable, Update Description The value of the branding set property, such as #333. | # BriefcaseDefinition Represents a briefcase definition. A briefcase makes selected records available for users and groups to view when they’re offline in the Salesforce Field Service mobile app for iOS and Android. This object is available in API version 50.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules This object is available in orgs that have Briefcase Builder and Field service enabled. ## Fields | Field | Details | | --- | --- | | Description | Type textarea Properties Filter, Nillable, Sort Description Description of the briefcase definition. Limited to 1024 characters. | | DeveloperName | Type string Properties Filter, Group, 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 organization. | | FullName | Type string Properties Create, Group, Nillable Description The unique name used as the briefcase definition 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. 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. | | IsActive | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether the briefcase is available for use (true) or not (false). The default value is false. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language for the briefcase. This field defaults to the user's language unless the org is multi-language enabled. Specifies the language of the labels returned. Possible values are: - da—Danish - de—German - en\_US—English - es—Spanish - es\_MX—Spanish (Mexico) - fi—Finnish - fr—French - it—Italian - ja—Japanese - ko—Korean - nl\_NL—Dutch - no—Norwegian - pt\_BR—Portuguese (Brazil) - ru—Russian - sv—Swedish - th—Thai - zh\_CN—Chinese (Simplified) - zh\_TW—Chinese (Traditional) | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description The unique label for the briefcase definition. This internal label doesn’t get translated. | | Metadata | Type complexvalue Properties Create, Nillable, Update Description The BriefcaseDefinition metadata, which includes rules and rule filters. 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 Properties Filter, Group, Nillable, Sort Description The namespace prefix that is 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 Developer Edition orgs, NamespacePrefix is set to the namespace prefix of the org for all objects that support it, unless 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 orgs that are not Developer Edition orgs, NamespacePrefix is set only for objects that are part of an installed managed package. All other objects have no namespace prefix. | | Type | Type picklist Properties Aggregate, Filter, Group, Nillable, Restricted picklist, Sort Description - Standard: Standard briefcase that can be used with priming APIs. - HighVolume: Increased-capacity briefcase that's used with performance priming in the Salesforce Field Service mobile app. - MobileAppSync: Automatically generated briefcase that's used for performance priming in the Salesforce Field Service mobile app. | # Bulk API 2.0 Usage Using Bulk API 2.0, you can query the MetadataComponentDependency Tooling API object and retrieve up to 100,000 records in a single query. Use SOQL queries to list the relationships between the metadata components in your org. Bulk API 2.0 requests are returned in CSV format. You can use the WHERE clause to filter your query. { "operation": "query", "query": "select RefMetadataComponentName, RefMetadataComponentType, RefMetadataComponentId FROM MetadataComponentDependency WHERE RefMetadataComponentId = '01p0U000001ONbgQAG'" } **Create a Bulk API 2.0 Query Job** | Description | URI | HTTP Method | | --- | --- | --- | | Creates a query job. | /services/data/vXX.X/tooling/jobs/query | POST | This example creates a job that queries the Tooling API object MetadataComponentDependency. curl --include --request POST \\ --header "Authorization: OAuth token " \\ --header "Accept: application/json " \\ --header "Content-Type: application/json" \\ --data '{ "operation": "query", "query": "select MetadataComponentType FROM MetadataComponentDependency“ }' \\ "https://instance.salesforce.com/services/data/v49.0/tooling/jobs/query" The response is: HTTP/1.1 200 OK { "id" : "750R0000000$H8AAU", "operation" : "query", "object" : "MetadataComponentDependency", "createdById" : "005xx000001X9JAAS", "createdDate" : "2020-04-09T17:51:02.000+0000", "systemModstamp" : "2020-04-09T17:51:02.000+0000", "state" : "UploadComplete", "concurrencyMode" : "Parallel", "contentType" : "CSV", "apiVersion" : 49.0, "lineEnding" : "LF", "columnDelimiter" : "COMMA" } **Get Information About a Query Job** | Description | URI | HTTP Method | | --- | --- | --- | | Gets information about all query jobs in the org. | /services/data/vXX.X/tooling/jobs/query | GET | | Gets information about one query job. | /services/data/vXX.X/tooling/jobs/query/queryJobId | GET | | Gets the results for a query job. | /services/data/vXX.X/tooling/jobs/query/queryJobId/results | GET | This example gets information about the job with ID 750R0000000$H8AAU. curl --include --request GET \\ --header "Authorization: OAuth token" \\ "https://instance.salesforce.com/services/data/v49.0/tooling/jobs/query/750R0000000$H8AAU" The response is: { "id" : "750R0000000$H8AAU", "operation" : "query", "object" : "MetadataComponentDependency", "createdById" : "005xx000001X9JAAS", "createdDate" : "2020-04-09T17:51:02.000+0000", "systemModstamp" : "2020-04-09T17:51:02.000+0000", "state" : "JobComplete", "concurrencyMode" : "Parallel", "contentType" : "CSV", "apiVersion" : 49.0, "jobType" : "V2Query", "lineEnding" : "LF", "columnDelimiter" : "COMMA", "numberRecordsProcessed" : 145, "retries" : 0, "totalProcessingTime" : 272} **Abort or Delete a Query Job** | Description | URI | HTTP Method | | --- | --- | --- | | Aborts a query job. | /services/data/vXX.X/tooling/jobs/query/queryJobId | PATCH | | Deletes a query job. | /services/data/vXX.X/tooling/jobs/query/queryJobId | DELETE | This example aborts the job with ID 750R0000000$H8AAU: curl --request PATCH \\ --header "Authorization: OAuth token" \\ --header "Content-Type: application/json" \\ --data '{ "state": "Aborted" }' \\ "https://instance.salesforce.com/services/data/v49.0/tooling/jobs/query/750R0000000$H8AAU" The response is: { "id": "750R0000000$H8AAU", "operation": "query", "object": "MetadataComponentDependency", "createdById" : "005xx000001X9JAAS", "createdDate" : "2020-04-09T17:51:02.000+0000", "systemModstamp" : "2020-04-09T17:51:02.000+0000", "state": "Aborted", "concurrencyMode": "Parallel", "contentType": "CSV", "apiVersion": 49.0 } ## Additional Information For more information, see [Bulk API 2.0](https://developer.salesforce.com/docs/atlas.en-us.api_bulk_v2.meta/api_bulk_v2/ "HTML (New Window)"). # BusinessProcess Represents a business process. This object is available in API version 33.0 and later. ## Supported SOAP Calls - getDeleted(), getUpdated(), query(), retrieve(), and upsert() are available in API version 33.0 and later. - create() and update() are available in API version 36.0 and later. ## Supported REST HTTP Methods GET, PATCH, POST ## Special Access Rules Access to this object requires the View Setup and Configuration permission. ## Fields | Field | Details | | --- | --- | | Description | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description The business process description, limited to 255 characters. | | IsActive | Type boolean Properties Defaulted on create, Filter, Group, Sort, Update Description Indicates whether this business process is active (true) or not (false). | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | Name | Type string Properties Create, Filter, Group, idLookup, Sort, Update Description The process name. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description A unique string to distinguish this type from any others. | # BusinessProcessDefinition Represents information about stages in a customer lifecycle map. This object is available in API version 51.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | BusinessProcessGroupId | Type reference Properties Create, Filter, Group, Sort Description Unique identifier of the customer lifecycle map that is associated with the stage. | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description Developer name of the stage. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description Language of the MasterLabel. Possible values are: - af—Afrikaans - am—Amharic - ar—Arabic - ar\_AE—Arabic (United Arab Emirates) - ar\_BH—Arabic (Bahrain) - ar\_DZ—Arabic (Algeria) - ar\_EG—Arabic (Egypt) - ar\_IQ—Arabic (Iraq) - ar\_JO—Arabic (Jordan) - ar\_KW—Arabic (Kuwait) - ar\_LB—Arabic (Lebanon) - ar\_LY—Arabic (Libya) - ar\_MA—Arabic (Morocco) - ar\_OM—Arabic (Oman) - ar\_QA—Arabic (Qatar) - ar\_SA—Arabic (Saudi Arabia) - ar\_SD—Arabic (Sudan) - ar\_SY—Arabic (Syria) - ar\_TN—Arabic (Tunisia) - ar\_YE—Arabic (Yemen) - bg—Bulgarian - bn—Bengali - bs—Bosnian - ca—Catalan - cs—Czech - cy—Welsh - da—Danish - de—German - de\_AT—German (Austria) - de\_BE—German (Belgium) - de\_CH—German (Switzerland) - de\_LU—German (Luxembourg) - el—Greek - en\_AU—English (Australian) - en\_CA—English (Canadian) - en\_GB—English (UK) - en\_HK—English (Hong Kong) - en\_IE—English (Ireland) - en\_IN—English (Indian) - en\_MY—English (Malaysian) - en\_NZ—English (New Zealand) - en\_PH—English (Philippines) - en\_SG—English (Singapore) - en\_US—English - en\_ZA—English (South Africa) - es—Spanish - es\_AR—Spanish (Argentina) - es\_BO—Spanish (Bolivia) - es\_CL—Spanish (Chile) - es\_CO—Spanish (Colombia) - es\_CR—Spanish (Costa Rica) - es\_DO—Spanish (Dominican Republic) - es\_EC—Spanish (Ecuador) - es\_GT—Spanish (Guatemala) - es\_HN—Spanish (Honduras) - es\_MX—Spanish (Mexico) - es\_NI—Spanish (Nicaragua) - es\_PA—Spanish (Panama) - es\_PE—Spanish (Peru) - es\_PR—Spanish (Puerto Rico) - es\_PY—Spanish (Paraguay) - es\_SV—Spanish (El Salvador) - es\_US—Spanish (United States) - es\_UY—Spanish (Uruguay) - es\_VE—Spanish (Venezuela) - et—Estonian - eu—Basque - fa—Farsi - fi—Finnish - fr—French - fr\_BE—French (Belgium) - fr\_CA—French (Canadian) - fr\_CH—French (Switzerland) - fr\_LU—French (Luxembourg) - ga—Irish - gu—Gujarati - hi—Hindi - hr—Croatian - hu—Hungarian - hy—Armenian - in—Indonesian - is—Icelandic - it—Italian - it\_CH—Italian (Switzerland) - iw—Hebrew - ja—Japanese - ka—Georgian - km—Khmer - kn—Kannada - ko—Korean - lb—Luxembourgish - lt—Lithuanian - lv—Latvian - mi—Te reo - mk—Macedonian - ml—Malayalam - mr—Marathi - ms—Malay - mt—Maltese - my—Burmese - nl\_BE—Dutch (Belgium) - nl\_NL—Dutch - no—Norwegian - pl—Polish - pt\_BR—Portuguese (Brazil) - pt\_PT—Portuguese (European) - rm—Romansh - ro—Romanian - ro\_MD—Romanian (Moldova) - ru—Russian - sh—Serbian (Latin) - sh\_ME—Montenegrin - sk—Slovak - sl—Slovene - sq—Albanian - sr—Serbian (Cyrillic) - sv—Swedish - sw—Swahili - ta—Tamil - te—Telugu - th—Thai - tl—Tagalog - tr—Turkish - uk—Ukrainian - ur—Urdu - vi—Vietnamese - xh—Xhosa - zh\_CN—Chinese (Simplified) - zh\_HK—Chinese (Hong Kong) - zh\_SG—Chinese (Singapore) - zh\_TW—Chinese (Traditional) - zu—Zulu | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description Label of the stage. | | ProcessDescription | Type textarea Properties Create, Nillable, Update Description Description of the stage. | | SequenceNumber | Type int Properties Create, Filter, Group, Sort, Update Description Position of the stage in the associated customer lifecycle map. | # BusinessProcessFeedback Represents information about the survey and the question associated with each stage in a customer lifecycle map. This object is available in API version 51.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | ActionName | Type string Properties Create, Filter, Group, Sort, Update Description Name of the survey used to gather feedback. | | ActionParam | Type string Properties Create, Filter, Group, Sort, Update Description Name of the question used to gather feedback. | | ActionType | Type picklist Properties Create, Defaulted on create, Filter, Group, Restricted picklist, Sort, Update Description Method of collecting feedback. Possible values are: - PHONE\_CALL - SURVEY | | BusinessProcessDefinitionId | Type reference Properties Create, Filter, Group, Sort Description Unique identifier of the stage associated with the survey and question. | # BusinessProcessGroup Represents information about the customer lifecycle maps. Customer lifecycle maps are used to track the scores provided by customers across their lifecycle using Salesforce Surveys. For example, the lifecycle stages for an Insurance business process group can include acquisition, onboarding, claims, routine services, and renewal. This object is available in API version 51.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | CustomerSatisfactionMetric | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description Represents the question type that measures the customer’s Net Promote Score or satisfaction score across their lifecycle. Possible values are: - CSAT - NPS | | Description | Type textarea Properties Create, Nillable, Update Description Description of the customer lifecycle map. | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description Developer name of the customer lifecycle map. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description Language of the MasterLabel. Possible values are: - af—Afrikaans - am—Amharic - ar—Arabic - ar\_AE—Arabic (United Arab Emirates) - ar\_BH—Arabic (Bahrain) - ar\_DZ—Arabic (Algeria) - ar\_EG—Arabic (Egypt) - ar\_IQ—Arabic (Iraq) - ar\_JO—Arabic (Jordan) - ar\_KW—Arabic (Kuwait) - ar\_LB—Arabic (Lebanon) - ar\_LY—Arabic (Libya) - ar\_MA—Arabic (Morocco) - ar\_OM—Arabic (Oman) - ar\_QA—Arabic (Qatar) - ar\_SA—Arabic (Saudi Arabia) - ar\_SD—Arabic (Sudan) - ar\_SY—Arabic (Syria) - ar\_TN—Arabic (Tunisia) - ar\_YE—Arabic (Yemen) - bg—Bulgarian - bn—Bengali - bs—Bosnian - ca—Catalan - cs—Czech - cy—Welsh - da—Danish - de—German - de\_AT—German (Austria) - de\_BE—German (Belgium) - de\_CH—German (Switzerland) - de\_LU—German (Luxembourg) - el—Greek - en\_AU—English (Australian) - en\_CA—English (Canadian) - en\_GB—English (UK) - en\_HK—English (Hong Kong) - en\_IE—English (Ireland) - en\_IN—English (Indian) - en\_MY—English (Malaysian) - en\_NZ—English (New Zealand) - en\_PH—English (Philippines) - en\_SG—English (Singapore) - en\_US—English - en\_ZA—English (South Africa) - es—Spanish - es\_AR—Spanish (Argentina) - es\_BO—Spanish (Bolivia) - es\_CL—Spanish (Chile) - es\_CO—Spanish (Colombia) - es\_CR—Spanish (Costa Rica) - es\_DO—Spanish (Dominican Republic) - es\_EC—Spanish (Ecuador) - es\_GT—Spanish (Guatemala) - es\_HN—Spanish (Honduras) - es\_MX—Spanish (Mexico) - es\_NI—Spanish (Nicaragua) - es\_PA—Spanish (Panama) - es\_PE—Spanish (Peru) - es\_PR—Spanish (Puerto Rico) - es\_PY—Spanish (Paraguay) - es\_SV—Spanish (El Salvador) - es\_US—Spanish (United States) - es\_UY—Spanish (Uruguay) - es\_VE—Spanish (Venezuela) - et—Estonian - eu—Basque - fa—Farsi - fi—Finnish - fr—French - fr\_BE—French (Belgium) - fr\_CA—French (Canadian) - fr\_CH—French (Switzerland) - fr\_LU—French (Luxembourg) - ga—Irish - gu—Gujarati - hi—Hindi - hr—Croatian - hu—Hungarian - hy—Armenian - in—Indonesian - is—Icelandic - it—Italian - it\_CH—Italian (Switzerland) - iw—Hebrew - ja—Japanese - ka—Georgian - km—Khmer - kn—Kannada - ko—Korean - lb—Luxembourgish - lt—Lithuanian - lv—Latvian - mi—Te reo - mk—Macedonian - ml—Malayalam - mr—Marathi - ms—Malay - mt—Maltese - my—Burmese - nl\_BE—Dutch (Belgium) - nl\_NL—Dutch - no—Norwegian - pl—Polish - pt\_BR—Portuguese (Brazil) - pt\_PT—Portuguese (European) - rm—Romansh - ro—Romanian - ro\_MD—Romanian (Moldova) - ru—Russian - sh—Serbian (Latin) - sh\_ME—Montenegrin - sk—Slovak - sl—Slovene - sq—Albanian - sr—Serbian (Cyrillic) - sv—Swedish - sw—Swahili - ta—Tamil - te—Telugu - th—Thai - tl—Tagalog - tr—Turkish - uk—Ukrainian - ur—Urdu - vi—Vietnamese - xh—Xhosa - zh\_CN—Chinese (Simplified) - zh\_HK—Chinese (Hong Kong) - zh\_SG—Chinese (Singapore) - zh\_TW—Chinese (Traditional) - zu—Zulu | | ManageableState | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package. Possible values are: - beta—Managed-Beta - deleted—Managed-Proposed-Deleted - deprecated—Managed-Proposed-Deprecated - deprecatedEditable—SecondGen-Installed-Deprecated - installed—Managed-Installed - installedEditable—SecondGen-Installed-Editable - released—Managed-Released - unmanaged—Unmanaged | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description Label of the customer lifecycle map. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description Namespace prefix associated with this object. Each Developer Edition org that creates a managed package has a unique namespace prefix. | # BusProcessFeedbackConfig Represents information about the configuration for feedback collection. The feedback collection method triggers against pre-determined conditions on object to gather feedback. This object is available in API version 51.0 and later. ## Supported SOAP API Calls describeSObjects(), query(), retrieve() ## Supported REST API Methods GET, HEAD, Query ## Fields | Field | Details | | --- | --- | | ActionName | Type string Properties Filter, Group, Sort Description Name of the method used to gather feedback. | | ActionType | Type picklist Properties Defaulted on create, Filter, Group, Restricted picklist, Sort Description Method of collecting feedback. Possible values are: - PHONE\_CALL - SURVEY | | ConfigurationDescription | Type textarea Properties Nillable Description Describes the experience step configuration. | | DeveloperName | Type string Properties Filter, Group, Sort Description Unique name of the object. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | Field | Type string Properties Filter, Group, Sort Description Represents the picklist field whose value triggers the feedback collection. | | FieldValue | Type string Properties Filter, Group, Sort Description Represents the field value that triggers the feedback collection. | | IsActive | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates if the feedback configuration is active (true) or not (false). | | Language | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Language of the MasterLabel Possible values are: - af—Afrikaans - am—Amharic - ar—Arabic - ar\_AE—Arabic (United Arab Emirates) - ar\_BH—Arabic (Bahrain) - ar\_DZ—Arabic (Algeria) - ar\_EG—Arabic (Egypt) - ar\_IQ—Arabic (Iraq) - ar\_JO—Arabic (Jordan) - ar\_KW—Arabic (Kuwait) - ar\_LB—Arabic (Lebanon) - ar\_LY—Arabic (Libya) - ar\_MA—Arabic (Morocco) - ar\_OM—Arabic (Oman) - ar\_QA—Arabic (Qatar) - ar\_SA—Arabic (Saudi Arabia) - ar\_SD—Arabic (Sudan) - ar\_SY—Arabic (Syria) - ar\_TN—Arabic (Tunisia) - ar\_YE—Arabic (Yemen) - bg—Bulgarian - bn—Bengali - bs—Bosnian - ca—Catalan - cs—Czech - cy—Welsh - da—Danish - de—German - de\_AT—German (Austria) - de\_BE—German (Belgium) - de\_CH—German (Switzerland) - de\_LU—German (Luxembourg) - el—Greek - en\_AU—English (Australian) - en\_CA—English (Canadian) - en\_GB—English (UK) - en\_HK—English (Hong Kong) - en\_IE—English (Ireland) - en\_IN—English (Indian) - en\_MY—English (Malaysian) - en\_NZ—English (New Zealand) - en\_PH—English (Philippines) - en\_SG—English (Singapore) - en\_US—English - en\_ZA—English (South Africa) - es—Spanish - es\_AR—Spanish (Argentina) - es\_BO—Spanish (Bolivia) - es\_CL—Spanish (Chile) - es\_CO—Spanish (Colombia) - es\_CR—Spanish (Costa Rica) - es\_DO—Spanish (Dominican Republic) - es\_EC—Spanish (Ecuador) - es\_GT—Spanish (Guatemala) - es\_HN—Spanish (Honduras) - es\_MX—Spanish (Mexico) - es\_NI—Spanish (Nicaragua) - es\_PA—Spanish (Panama) - es\_PE—Spanish (Peru) - es\_PR—Spanish (Puerto Rico) - es\_PY—Spanish (Paraguay) - es\_SV—Spanish (El Salvador) - es\_US—Spanish (United States) - es\_UY—Spanish (Uruguay) - es\_VE—Spanish (Venezuela) - et—Estonian - eu—Basque - fa—Farsi - fi—Finnish - fr—French - fr\_BE—French (Belgium) - fr\_CA—French (Canadian) - fr\_CH—French (Switzerland) - fr\_LU—French (Luxembourg) - ga—Irish - gu—Gujarati - hi—Hindi - hr—Croatian - hu—Hungarian - hy—Armenian - in—Indonesian - is—Icelandic - it—Italian - it\_CH—Italian (Switzerland) - iw—Hebrew - ja—Japanese - ka—Georgian - km—Khmer - kn—Kannada - ko—Korean - lb—Luxembourgish - lt—Lithuanian - lv—Latvian - mi—Te reo - mk—Macedonian - ml—Malayalam - mr—Marathi - ms—Malay - mt—Maltese - my—Burmese - nl\_BE—Dutch (Belgium) - nl\_NL—Dutch - no—Norwegian - pl—Polish - pt\_BR—Portuguese (Brazil) - pt\_PT—Portuguese (European) - rm—Romansh - ro—Romanian - ro\_MD—Romanian (Moldova) - ru—Russian - sh—Serbian (Latin) - sh\_ME—Montenegrin - sk—Slovak - sl—Slovene - sq—Albanian - sr—Serbian (Cyrillic) - sv—Swedish - sw—Swahili - ta—Tamil - te—Telugu - th—Thai - tl—Tagalog - tr—Turkish - uk—Ukrainian - ur—Urdu - vi—Vietnamese - xh—Xhosa - zh\_CN—Chinese (Simplified) - zh\_HK—Chinese (Hong Kong) - zh\_SG—Chinese (Singapore) - zh\_TW—Chinese (Traditional) - zu—Zulu | | ManageableState | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package. Possible values are: - beta—Managed-Beta - deleted—Managed-Proposed-Deleted - deprecated—Managed-Proposed-Deprecated - deprecatedEditable—SecondGen-Installed-Deprecated - installed—Managed-Installed - installedEditable—SecondGen-Installed-Editable - released—Managed-Released - unmanaged—Unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description Name of the resource, limited up to 100 characters. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description Namespace prefix associated with this object. Each Developer Edition org that creates a managed package has a unique namespace prefix. | | Object | Type string Properties Filter, Group, Sort Description Represents the entity on which the feedback collection triggering condition depends. | | Recipient | Type string Properties Filter, Group, Sort Description Represents the recipient who is contacted for the feedback collection. | | RecordType | Type string Properties Filter, Group, Nillable, Sort Description Represents the record type of the entity on which the feedback collection triggering condition depends. | | TriggerAction | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Action available with the business process feedback object. Possible values are: - Create - CreateAndUpdate - Update | # Certificate Represents a certificate used for digital signatures that verify requests are coming from your org. Certificates are used for either authenticated single sign-on with an external website or when using your org as an identity provider. This object is available in Tooling API version 37.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP Calls query(), retrieve() ## Supported REST HTTP Methods GET ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Filter, Group, 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 organization. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, Salesforce generates one for each record, which slows performance. | | ExpirationDate | Type date Properties Filter, Group, Nillable, Sort Description Read only. The date that this certificate expires and is no longer usable. For self-signed certificates, if KeySize is 2048 bits, the expiration date is automatically 1 year after you create the certificate. If KeySize is 4096 bits, the expiration date is automatically 2 years after you create the certificate. For CA-signed certificates, ExpirationDate is automatically updated to the signed certificate’s expiration date when a signed certificate chain is uploaded. The date format is YYYY-MM-DD. | | KeySize | Type int Properties Filter, Group, Nillable, Sort Description Certificate keys can be either 2048 bits or 4096 bits. A certificate with 4096-bit keys lasts 2 years, and a certificate with 2048-bit keys lasts 1 year. Certificates with 2048-bit keys are faster than certificates with 4096-bit keys. If KeySize isn’t specified when you create a certificate, the key size defaults to 2048 bits. | | MasterLabel | Type string Properties Filter, Group, Sort Description Required. A user-friendly name for the certificate that appears in the Salesforce user interface, such as in Certificate and Key Management. Limit: 64 characters. | | OptionsIsCaSigned | Type boolean Properties Filter Description Required. Indicates whether this certificate is signed by the issuer (true) or not (false). | | OptionsIsEncryptedWithPE | Type boolean Properties Filter Description Indicates whether this certificate is encrypted with Shield Platform Encryption. | | OptionsIsNewEncr | Type boolean Properties Filter Description Indicates whether this certificate is encrypted with the new algorithm for certificate encryption. | | OptionsIsPrivateKeyExportable | Type boolean Properties Filter Description Indicates whether this certificate’s private key is exportable. | | OptionsIsUnusable | Type boolean Properties Filter Description Indicates whether this certificate is waiting for import of the signed certificate chain. | | OptionIsUsingKMS | Type boolean Properties Filter Description Indicates whether this certificate is compatible with select BYOK key material that uses the Shield Key Management Service (true) or not (false). This field is available in API version 50.0 and later. These certificates are only compatible with Database tenant secrets as part of the Shield Platform Encryption Database Encryption feature. | # CleanDataService Represents a data service that adds and updates data in existing records in an org. This object is available in API version 38.0 and later. ## Supported SOAP Calls create(), delete(), describeSObjects(), query(), retrieve(), search(), update(), upsert() ## Supported REST HTTP Methods GET ## Fields | Field | Details | | --- | --- | | Description | Type textarea Properties Create, Filter, Group, Nillable, Sort, Update Description User-friendly text that describes the data service. | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description A unique name for this data service. 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. Provides a globally unique identifier for the data service, which prevents conflicts with other data services that have the same MasterLabel. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The language of the data service. The following values are supported: - 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 Spanish (Mexico) defaults to Spanish for customer-defined translations. - Swedish: sv - Thai: th The Salesforce user interface is fully translated to Thai, but Help is in English. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description Master label for this object. This display value is the internal label that is not translated. | | MatchEngine | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description A key that maps to the internal data service identifier. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The namespace prefix associated with the data service, which is assigned to the Lightning Platform AppExchange package. 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. The namespace helps differentiate custom objects and fields from those in use by other data services. | # CleanRule Represents a data integration rule that controls how a data service adds and updates data for existing records in an org. This object is available in API version 38.0 and later. ## Supported SOAP Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods GET ## Fields | Field | Details | | --- | --- | | CleanDataServiceId | Type reference Properties Create, Filter, Group, Sort Description A foreign key reference to the CleanDataService that processes this CleanRule. | | DataAssessmentStatus | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable Description The status of the data assessment. The following are valid values: - Hidden (default) - Not Started - In Progress - Pending Aggregation - Aggregation Complete - Failed Aggregation - Aborted This field is read only. | | Description | Type textarea Properties Create, Filter, Group, Nillable, Sort, Update Description User-friendly text that describes the data integration rule. | | DeveloperName | Type string Properties Create, Filter, Group, , Sort, Update Description 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 unique name prevents conflicts with rules from other packages that have the same MasterLabel. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | IsBulkEnabled | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description If this flag is set to true, the system automatically applies the rule to existing records whenever the rule is updated or saved. If the flag is set to false, the system doesn’t automatically apply the rule to existing records. You can always apply the rule manually. | | IsSilentSaveEnabled | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description If false, updates don’t modify LastModifiedDate and LastModifiedById when it applies this rule; otherwise, updates insert the current date and the current user. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The language of the data integration rule. The following values are permitted: - 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 Spanish (Mexico) defaults to Spanish for customer-defined translations. - Swedish: sv - Thai: th The Salesforce user interface is fully translated to Thai, but Help is in English. | | MatchConfidence | Type double Properties Create, Filter, Nillable, Sort, Update Description Indicates how closely a Lightning Data record matches a Salesforce record. The higher the minimum value is set, the more precise the matches. This field is used in packages that support match scores for third-party data. Valid values include an integer determined by the data service provider. If the value is null, the default value from the data service provider is used. Available in API version 45.0 and later. | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description Master label for this object. This display value is the internal label that is not translated. | | MatchRule | Type string Properties Create, Filter, Group, Nillable, Sort Description An internal label for the matching rule in the data service that’s associated with this CleanRule. | | ShouldBypassTriggers | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description If true, indicates that the system does not apply triggers when it applies this rule; otherwise, the system applies the triggers. | | ShouldBypassWorkflow | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description If true, the system bypasses workflow rules when it applies the data integration rule; otherwise, the system applies workflow rules. | | SobjectType | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort Description The standard or custom object in your org that’s acted on by this CleanRule. The possible values are: - Account - Address - Contact - CustomEntityDefinition - Lead - ResourceAbsence - ServiceAppointment - ServiceTerritory - ServiceTerritoryMember - WorkOrder - WorkOrderLineItem In addition, custom objects with data integration rules are possible. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note The standard objects are installed with default data integration rules, but only the default rules for account, contact, and lead can be modified. | | SourceSobjectType | Type picklist Properties Create, Filter, Group, Nillable, Restricted picklist, Sort Description A data service object associated with this CleanRule. The set of picklist values includes all the object types defined in the data service. However, if you specify a non-existent object, the API call returns an error. If you enable the Salesforce data services, the following values appear. CustomEntityDefinition Information retrieved from an external source in the form of an external object to enrich an account, contact, or lead. We map the external object fields to the account, contact, and lead lookup and details. DataCloudAddress Geolocation data service. DatacloudDandBCompany Data.com data service. This service is only available in the Professional, Enterprise, Unlimited, and Performance Editions, and only with a Premium Clean license. Your administrator must enable this data service by enabling the data integration rules for account and lead. If you install Marketplace packages that contain data services, their object names also appear in the set of picklist values. | | Status | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description Status of the data integration rule. Valid values are Active and Inactive. | # ColorDefinition Represents color metadata for a tab. Available in API version 43.0 and later. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note In API version 45.0 and later, only users with the “View Setup and Configuration” permission can access ColorDefinition. ## Supported SOAP Calls query() ## Supported REST HTTP Methods Query, GET ## Fields | Field Name | Details | | --- | --- | | Color | Type string Properties Filter, Group, Nillable, Sort Description The color specified in web color RGB format—for example, 00FF00. | | Context | Type string Properties Filter, Group, Nillable, Sort Description The color context, which determines whether the color is the main color (or primary) for the tab. | | DurableId | Type string 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. To simplify queries, use this field. | | TabDefinitionId | Type string Properties Filter, Nillable, Sort Description The ID of the tab this definition belongs to. Defaults to null. | | Theme | Type string Properties Filter, Group, Nillable, Sort Description The user interface theme this definition is associated with. | # CommunityWorkspacesNode Represents a node used in Experience Workspaces. Available in Tooling API version 39.0 and later. ## Supported SOAP Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods GET ## Fields | Field | Details | | --- | --- | | Description | Type string Properties Filter, Nillable, Sort Description A description of the field. | | DevName | Type string Properties Filter, Group Nillable, Sort Description API name of the chart. 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 organization. | | ExternalId | Type string Properties Filter, Group, Nillable, Sort Description A unique system-generated numerical identifier for the user. | | HelpLocator | Type string Properties Filter, Group, Nillable, Sort Description The URL for the help page. | | Label | Type string Properties Filter, Group Nillable , Sort Description The display label of the Workspaces component. | | Locator | Type string Properties Filter, Nillable, Sort Description The aura component list (aura page) or page URL (aloha page). | | NetworkID | Type string Properties Filter, Group, Nillable, Sort Description The ID of the Experience Cloud site. | | PageType | Type string Properties Filter, Group, Nillable, Sort Description Type of page accessed within Experience Workspaces. | | Parent | Type string Properties Filter, Group, Nillable, Sort Description The devName of the parent node. | | Workspace | Type string Properties Filter, Group, Nillable, Sort Description The devName of the workspace the node belongs to. | # CompactLayout Represents the values that define a compact page layout. This object is available in API version 32.0 and later. ## Supported SOAP Calls create(), delete(), getDeleted(), getUpdated(), query(), retrieve(), search(), update(), upsert() ## Supported REST HTTP Methods DELETE, GET, PATCH, POST ## Fields
Field Details
DeveloperName
Type
string
Properties
Filter, Group, Sort
Description
The developer’s internal name for the compact layout (for example, “CL_c”) used in the API.
Note

Note

Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field.

FullName
Type
string
Properties
Create, Group, Nillable
Description
The unique name used as the compact layout 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.
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.
ManageableState
Type
ManageableState enumerated list
Properties
Filter, Group, Nillable, Restricted picklist, Sort
Description
Indicates the manageable state of the specified component that is contained in a package:
  • beta
  • deleted
  • deprecated
  • deprecatedEditable
  • installed
  • installedEditable
  • released
  • unmanaged

This field is available in API version 38.0 and later.

MasterLabel
Type
string
Properties
Filter, Group, Sort
Description
The name of the compact layout in Setup.
Metadata
Type
mns:CompactLayout
Properties
Create, Nillable, Update
Description
The compact layout metadata.
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
Properties
Filter, Group, Nillable, Sort
Description
The namespace of the package of which the compact layout is a part.
SobjectType
Type
Restricted picklist
Properties
Filter, Group, Restricted picklist, Sort
Description
The type of object used in the layout, such as an Account or Lead.
![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note CompactLayout is exposed in Tooling API to user profiles with the View Setup and Configuration permission. # CompactLayoutInfo Represents the metadata for a custom or standard compact layout. This object is available in API version 32.0 and later. ## Supported SOAP Calls query() ## Supported REST HTTP Methods GET ## Limitations [SOQL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_soql_limits.htm "Some Tooling API objects have SOQL limitations. These limitations apply to any Metadata Catalog query, which applies to all Custom Metadata Types and Metadata Catalog entities, not only the ones explicitly listed.") [SOSL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_sosl_limits.htm "Two Tooling API objects, EntityDefinition and FieldDefinition, have some SOSL limitations. ExternalString and MetadataComponentDependency (Beta) don’t support SOSL searches.") ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Filter, Group, Nillable, Sort Description The developer’s internal name for the compact layout (for example, CL\_c) used in the API. | | DurableId | Type string Properties Filter, Group, 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. To simplify queries, use this field. | | EntityDefinition | Type EntityDefinition Properties Filter, Group, Sort Description Required. Available starting with version 32.0. The entity definition for the object associated with this CompactLayoutInfo. | | EntityDefinitionId | Type string Properties Filter, Group, Nillable, Sort Description Required. ID of the record associated with this CompactLayoutInfo. The record’s object type is in EntityDefinition. | | FullName | Type string Properties Filter, Group, Sort Description The unique name used as the compact layout 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. 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. | | IsDefault | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, this compact layout is the default for the associated object. | | Items | Type [QueryResult](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_queryresult.htm "Represents the results of a query. For example, if you query on the object EntityDefinition, all the layouts for that entity are returned as an array of QueryResult objects in the Layouts field. Available in Tooling API version 34.0 and later.") Properties Filter, Group, Sort Description A foreign key field pointing to CompactLayoutItemsInfo. Because this field represents a relationship, use only in subqueries. | | Label | Type string Properties Filter, Group, Nillable, Sort Description The compact layout’s label. | | Metadata | Type mns: [CompactLayout](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_compactlayout.htm "Represents the values that define a compact page layout.") Properties Create, Nillable, Update Description Metadata that defines compact layouts. 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 Properties Filter, Group, 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 the following values: - In Developer Edition organizations, the namespace prefix is set to the namespace prefix of the organization for all objects that support it. There is 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 are not Developer Edition organizations, NamespacePrefix is only set for objects that are part of an installed managed package. There is no namespace prefix for all other objects. | ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note CompactLayoutInfo is exposed in Tooling API to user profiles with the View Setup and Configuration permission. # CompactLayoutItemInfo Represents a field selected for a compact layout, and the order of that field in the compact layout. This object is available in API version 32.0 and later. ## Supported SOAP Calls query() ## Supported REST HTTP Methods GET ## Limitations [SOQL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_soql_limits.htm "Some Tooling API objects have SOQL limitations. These limitations apply to any Metadata Catalog query, which applies to all Custom Metadata Types and Metadata Catalog entities, not only the ones explicitly listed.") [SOSL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_sosl_limits.htm "Two Tooling API objects, EntityDefinition and FieldDefinition, have some SOSL limitations. ExternalString and MetadataComponentDependency (Beta) don’t support SOSL searches.") ## Fields | Field | Details | | --- | --- | | CompactLayoutInfo | Type CompactLayoutInfo Properties Filter, Group, Nillable, Sort Description The compact layout associated with this CompactLayoutItemInfo. | | CompactLayoutInfoId | Type Id Properties Filter, Group, Nillable, Sort Description ID of the compact layout associated with this field. | | DurableId | Type string Properties Filter, Group, Nillable, Sort Description This field reserved for future use. Do not use. | | FieldDefinition | Type [FieldDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_fielddefinition.htm "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.") Properties Filter, Group, Nillable, Sort Description Required. The definition of this field. | | FieldDefinitionId | Type string Properties Filter, Group, Nillable, Sort Description Required. ID of this field. | | SortOrder | Type int Properties Filter, Group, Nillable, Sort Description The order of the field in the compact layout. 1 is first. | # Composite Request Body Describes a collection of subrequests to execute with the /composite resource. ## Composite Collection Input The request body contains an allOrNone flag that specifies how to roll back errors and a compositeRequest collection that includes subrequests to execute. ### allOrNone - **Type**: Boolean - **Description**: Specifies what to do when an error occurs while processing a subrequest. If the value is true, the entire composite request is rolled back. If the value is false, the remaining subrequests that don’t depend on the failed subrequest are executed. Dependent subrequests aren’t executed. In either case, the top-level request returns HTTP 200 and includes responses for each subrequest. - **Required or Optional**: Optional ### compositeRequest - **Type**: [Composite Subrequest](#reference_hdd_43v_rkc)\[\] - **Description**: Collection of subrequests to execute. - **Required or Optional**: Required ### JSON Example { "allOrNone" : true, "compositeRequest" : \[{ Composite Subrequest },{ Composite Subrequest },{ Composite Subrequest }\] } ## Composite Subrequest Contains the resource, method, headers, body, and reference ID for the subrequest. ### body - **Type**: The type depends on the request specified in the url property. - **Description**: The input body for the subrequest. - **Required or Optional**: Optional ### httpHeaders - **Type**: Map - **Description**: Request headers and their values to include with the subrequest. You can include any header supported by the requested resource, except for the following headers because the subrequests inherit their values from the top-level request. - Accept - Authorization - Content-TypeIf you specify these headers in a subrequest, the top-level request fails and returns an HTTP 400 response. - **Required or Optional**: Optional ### method - **Type**: String - **Description**: The method to use with the requested resource. Possible values are POST, PUT, PATCH, GET, and DELETE (case sensitive). For a list of valid methods, see the documentation for the requested resource. - **Required or Optional**: Required ### referenceId - **Type**: String - **Description**: Reference ID that maps to the subrequest’s response and can be used to reference the response in later subrequests. You can include the referenceId in either the body or URL of a subrequest. Use this syntax to include a reference: @{referenceId.FieldName}. The referenceId is case sensitive. You can use two operators with the reference ID. The . operator references a field on a JSON object in the response. The \[\] operator indexes a JSON collection in the response. You can use each operator recursively as long as it makes sense in the context of the response. - **Required or Optional**: Required ### url - **Type**: String - **Description**: The resource to request. - The URL can include any query string parameters that the subrequest supports. The query string must be URL-encoded. - The URL must start with /services/data/vXX.X/tooling. - You can use parameters to filter response bodies. - **Required or Optional**: Required ## Usage Because referenceId is case sensitive, make sure that the case of the field that you’re referring to is correct. The same field can use different cases in different contexts. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note You can have up to 25 subrequests in a single call. Up to five of these subrequests can be query operations. # Composite Response Body Describes the result of a /composite request. ## Composite Results ### compositeResponse - **Type**: [Composite Subrequest Result](#subrequest_result)\[\] - **Description**: Collection of subrequest results ### JSON Example { "compositeResponse" : \[{ Composite Subrequest Result },{ Composite Subrequest Result },{ Composite Subrequest Result }\] } ## Composite Subrequest Result ### body - **Type**: The type depends on the response type of the subrequest. - **Description**: The response body of this subrequest. If the subrequest returns an error, the body includes the error code and message. ### httpHeaders - **Type**: Map - **Description**: Response headers and their values for this subrequest. The /composite resource doesn’t support the Content-Length header, so subrequest responses don’t include this header and neither does the top-level response. ### httpStatusCode - **Type**: Integer - **Description**: An HTTP status code for this subrequest. If allOrNone is set to true in the composite request and a subrequest returns an error, all other subrequests return the 400 HTTP status code. ### referenceID - **Type**: String - **Description**: The reference ID specified in the subrequest. Use this property to associate subrequests with their results. ### JSON Example { "body" : { "id" : "001R00000033I6AIAU", "success" : true, "errors" : \[ \] }, "httpHeaders" : { "Location" : "/services/data/v40.0/tooling/sobjects/apexclassmember/001R00000033I6AIAU" }, "httpStatusCode" : 201, "referenceId" : "apexclassmember\_reference\_id" } # ConnectedApplication For internal use only. # Considerations for CRUD Operations in Active Orgs CRUD operations on most Tooling API objects are allowed in active orgs in API version 41.0 and later, just as they are in other kinds of orgs. However, for performance reasons you can’t perform CRUD operations in an active org for some Tooling API objects. CRUD operations on the following Tooling API objects in an active org generate the error Save or update not supported in active organizations. - ApexClass - ApexComponent - ApexPage - ApexTrigger - CustomField - CustomObject # ContactCenterChannel Represents a junction object that relates a Bring Your Own Channel for Contact Center as a Service (CCaaS) messaging channel to a CallCenter object for Bring Your Own Channel for CCaaS. This object also represents the routing details for a voicemail configuration. This object is available in API version 56.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules To access this object, Service Cloud Voice with Amazon Connect, Service Cloud Voice with Partner Telephony, Service Cloud Voice with Partner Telephony from Amazon Connect, or Bring Your Own Channel for CCaaS must be enabled. To access this Tooling object, you must be a SysAdmin user or have ViewSetup user permissions. ## Fields | Field | Details | | --- | --- | | ChannelId | Type reference Properties Create, Filter, Group, Sort, Update Description For Bring Your Own Channel for CCaaS, this field represents the unique ID of the Bring Your Own Channel messaging channel (MessagingChannel) that’s associated with the contact center (CallCenterId). Available in API version 60.0 and later. This field is a relationship field. Relationship Name Channel Refers To MessagingChannel | | ContactCenterId | Type reference Properties Create, Filter, Group, Sort Description This field is a relationship field. For Bring Your Own Channel for CCaaS, this field represents the unique ID of the contact center (CallCenterId) that’s associated with the Bring Your Own Channel messaging channel (MessagingChannel). Available in API version 60.0 and later. This field is a relationship field. Relationship Name ContactCenter Relationship Type Master-detail Refers To CallCenter (the master object) | | UserId | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description Available in API version 63.0 only. For internal use. | | VoicemailFallbackQueueId | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description If voicemail routing is configured for the contact center, this field represents the unique ID of the fallback queue to use if voicemail routing fails. This field is a relationship field. Don't change the value in this field. Instead, configure voicemail routing in Lightning Experience. This field is a relationship field. Relationship Name VoicemailFallbackQueue Refers To Group | | VoicemailHandler | Type picklist Properties Create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description If voicemail routing is configured for the contact center, this field represents the unique ID of the flow used to route voicemails. Don't change the value in this field. Instead, configure voicemail routing in Lightning Experience. | # ContainerAsyncRequest Allows you to compile and asynchronously deploy a MetadataContainer object to your organization. ## Supported SOAP API Calls create(), describeSObjects(), query(), retrieve() ## Supported REST API HTTP Methods Query, GET, POST ## Special Access Rules As of the Spring '20 release, to access ContainerAsyncRequest you must have both the View All Data and Customize Application user permissions. ## Fields | Field Name | Details | | --- | --- | | DeployDetails | Type [DeployDetails](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_deploydetails.htm "A complex type that contains detailed XML for any compile errors reported in the asynchronous request defined by a ContainerAsyncRequest object. Replaces the JSON field CompilerErrors in Tooling API version 31.0 and later.") Properties Nillable Description Provides detailed XML for any compile errors reported during an asynchronous request. Includes componentFailures. Replaces the JSON field CompilerErrors in Tooling API version 31.0 and later. | | ErrorMsg | Type textarea Properties Nillable Description Errors reported during an asynchronous request. | | IsCheckOnly | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort Description Indicates whether the asynchronous request compiles the code without making any changes to the organization (true) or compiles and saves the code (false). This field is required. You can compile without saving but you can’t save without compiling. | | IsRunTests | Type boolean Properties None Description Reserved for future use. | | MetadataContainerId | Type reference Properties Create, Filter, Group, Sort Description The ID of a [MetadataContainer](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_metadatacontainer.htm "Manages working copies of ApexClassMember, ApexTriggerMember, ApexPageMember, and ApexComponentMember objects, including collections of objects to be deployed together.") object. Specify a MetadataContainerId or a MetadataContainerMemberId, but not both. | | MetadataContainerMemberId | Type reference Properties Create, Filter, Group, Nillable, Sort Description The ID of an [ApexClassMember](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexclassmember.htm "Represents the working copy of an Apex class for editing, saving, or compiling in a MetadataContainer."), [ApexTriggerMember](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apextriggermember.htm "Represents the working copy of an Apex trigger for editing, saving, or compiling in a MetadataContainer."), [ApexPageMember](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexpagemember.htm "Represents the working copy of a Visualforce page for editing, saving, or compiling in a MetadataContainer.") or [ApexComponentMember](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexcomponentmember.htm "Represents the working copy of a Visualforce component for editing, saving, or compiling in a MetadataContainer.") object. Specify a MetadataContainerId or a MetadataContainerMemberId, but not both. | | State | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The state of the request. Valid values are: - Queued—the job is in the queue. - Invalidated—Salesforce canceled the job because the results might not be valid. This state occurs if someone changes the container members while IsCheckOnly=true, or if a newer compile request is added to the queue. - Completed—the compilation or deployment finished. The SymbolTable fields for the specified object(s) were successfully updated. If IsCheckOnly is false, the Body for each object was saved and the MetadataContainerId field for each object was reset from the ID of the deployed [MetadataContainer](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_metadatacontainer.htm "Manages working copies of ApexClassMember, ApexTriggerMember, ApexPageMember, and ApexComponentMember objects, including collections of objects to be deployed together.") to the ID of the corresponding [ContainerAsyncRequest](# "Allows you to compile and asynchronously deploy a MetadataContainer object to your organization.") object. - Failed—the compilation or deployment failed for the reasons stated in the CompilerError field. - Error—an unexpected error occurred. The messages in the ErrorMsg field can be provided to Salesforce support if the issue persists. - Aborted—use this value to delete a queued deployment. This field is required. | ## Usage When you deploy a ContainerAsyncRequest, you must specify whether to save the compiled entities: - To compile entities without saving, set the request to IsCheckOnly=true. This option is only supported if a MetadataContainerMember is specified. A single MetadataContainerMemberId can’t be compiled without saving. - To compile and save entities to your organization, set the request to IsCheckOnly=false. If the compile succeeds, the SymbolTable field is updated on each object in the specified MetadataContainer. If the save or compile fails and a SymbolTable field cannot be updated, the field is cleared. If there is an outstanding save request, all updates, inserts, and deployments fail. To terminate a queued deployment, set the State field to Aborted. # ConversationChannelDefinition Represents a configurable definition of a conversation channel that’s implemented for Interaction Service for Bring Your Own Channel for Messaging and Bring Your Own Channel for CCaaS messaging channels. This object is available in API version 60.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules To access this object, Interaction Service must be configured. Access to tooling objects requires Salesforce admin privileges or the Customize Application permission. ## Fields | Field | Details | | --- | --- | | CapabilitiesSupportsCustomChannelParameters | Type boolean Properties Filter Description Indicates whether admins can configure custom parameters and parameter mappings for messaging channels. Custom parameters and parameter mappings are used to pass additional information at runtime to Omni-Channel flows. The default value is false. Available in API version 61.0. | | CapabilitiesSupportsDoubleOptInConsent | Type boolean Properties Filter Description Indicates whether the channel supports (true) the Double Opt-In consent level. The default value is false. If set to true, then capabilitiesSupportsExplicitConsent must also be set to true. This field is optional and isn’t supported for Bring Your Own Channel for Messaging. It's only supported for Bring Your Own Channel for CCaaS. | | CapabilitiesSupportsExplicitConsent | Type boolean Properties Filter Description Indicates whether the channel supports (true) the Explicit Opt-In consent level. This field is optional. | | CapabilitiesSupportsImplicitConsent | Type boolean Properties Filter Description Indicates whether the channel supports (true) the Implicit Opt-In consent level. This value is required and must always be set to true. The default value is false. | | CapabilitiesSupportsIsoCountryCode | Type boolean Properties Filter Description Indicates whether the channel supports (true) ISO country codes. The default value is false. | | CapabilitiesSupportsKeywords | Type boolean Properties Filter Description Indicates whether the channel supports (true) keywords. The default value is false. | | ConnectedAppOauthLink | Type string Properties Filter, Group, Sort Description DO NOT SET OR CHANGE THIS VALUE. This value is automatically generated. This field represents the OAuth link for the external client app (ECA) or connected app if the ConnectedAppType is Partner. This is a string identifier to the ECA or connected app containing the partner Org ID and the consumer ID minus the key prefixes. | | ConnectedAppType | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The owner of the external client app (ECA) or connected app used to manage authentication between Salesforce Interaction Service and the Messaging or CCaaS partner’s system. Possible values are: - Partner - Customer The default value is Partner. If set to Partner, the partner creates the ECA or connected app and includes it in their managed package. If set to Customer, the admin creates the ECA or connected app. Available in API version 62.0. | | ConsentOwner | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The system the customer uses to manage consent levels. Possible values are: - Partner - Salesforce The default value is Salesforce. For example, if set to Salesforce, consent levels are managed by the Salesforce system. If set to Partner, consent levels are managed by the partner’s telephony or Contact Center as a Service system. For Bring Your Own Channel for Messaging, this value must be set to Salesforce. | | ConversationVendorInfo | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description The ConversationVendorInfo.developerName used to link this record to the ConversationVendorInfo record. For example, PartnerName. | | customEventChnlAddrIdField | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The mapping field that points to the custom field used to point to the ChannelAddressIdentifier field. This field is deprecated in API version 60.0 and will be removed in API version 61.0. Use a combination of customEventTypeField and customEventPayloadField instead. | | CustomEventPayloadField | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The mapping field that points to the custom field used to point to the Payload field in the format \_\_\_\_c. This is the API name of the custom Payload field in the custom platform event. For example, devorg\_\_Payload\_\_c. | | customEventRecipientField | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The mapping field that points to the custom field used to point to the Recipient field. This field is deprecated in API version 60.0 and will be removed in API version 61.0. Use a combination of customEventTypeField and customEventPayloadField instead. | | CustomEventTypeField | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The mapping field that points to the custom field used to point to the Platform event type (EventType) field, in the format \_\_\_\_c. This is the API name of the custom EventType field in the custom platform event. For example, devorg\_\_EventType\_\_c. | | CustomIconId | Type reference Properties Filter, Group, Nillable, Sort Description For Bring Your Own Channel for Messaging and Bring Your Own Channel for CCaaS, this field represents the name of the status resource image used to identify the channel integration, such as a channel logo. For the best results, set the image size to 50px x 50px and save the image in SVG file format. This field is optional. Available in API version 61.0 and later. This field is a relationship field. Relationship Name CustomIcon Refers To StaticResource | | CustomerConnectedAppOauthLink | Type string Properties Filter, Group, Nillable, Sort Description DO NOT SET OR CHANGE THIS VALUE. This value is automatically generated. This field represents the OAuth link for the external client app (ECA) or connected app created by an admin if the ConnectedAppType is Customer. Available in API version 62.0. | | CustomPlatformEvent | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The API name of the custom platform event created for the Interaction Service API in the format \_\_\_\_e. For example, devorg\_\_TestEvent\_\_e. | | DeveloperName | Type string Properties Filter, Group, Sort Description The unique name of the custom metadata type object in the API in the format \_, where Prefix matches the prefix you gave to the name of the Interaction Service external client app or connected app. For example, Partner1\_ChannelDefinition1, where Partner1 is the prefix and ChannelDefinition1 is the given name. | | EventCapabilitiesIsInboundAcknwOptionExposed | Type boolean Properties Filter Description Indicates whether the partner supports read receipts and delivery receipts for inbound messages (true) or whether the partner doesn’t support these inbound acknowledgments and the functionality is hidden from the Salesforce admin in the Messaging settings (false). The default value is false. This field is available in API version 65.0 and later. Use this field instead of IsInboundReceiptsEnabled. | | EventCapabilitiesIsProgressIndicatorOptExposed | Type boolean Properties Filter Description Indicates whether the partner supports progress indicators for AI agents (true) or whether the partner doesn’t support them and the functionality is hidden from the Salesforce admin in the Messaging settings (false). The default value is false. This field is available in API version 65.0 and later. | | EventCapabilitiesIsRoutingWorkResultSupported | Type boolean Properties Filter Description Indicates whether the Routing Work Result event is sent as a Custom Platform event (true) or not (false). The default value is false. This field is available in API version 65.0 and later. Use this field instead of IsRoutingWorkResultEnabled. | | EventCapabilitiesIsTypingIndicatorOptionHidden | Type boolean Properties Filter Description Indicates whether the partner doesn’t support typing indicators for outbound messages and the functionality is hidden from the Salesforce admin in the Messaging settings (true) or whether outbound typing indicators are supported by the partner (false). The default value is false, meaning the outbound typing indicator feature is supported by default. To disable the outbound typing indicator feature, set this value to true. This field is available in API version 65.0 and later. Use this field instead of IsTypingIndicatorDisabled. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated ConversationChannelDefinition object in Metadata API. The full name is in the format ???\_??? and can include a namespace prefix. 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. | | IsConferenceSupported | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether the partner supports conferencing for Bring Your Own Channel (true), or not (false). With conferencing, more than two participants are allowed in a messaging session. The default is false. This field is available in API version 64.0 and later. | | IsInboundReceiptsEnabled | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether the partner supports read receipts and delivery receipts for inbound messages (true) or whether the partner doesn’t support these inbound acknowledgements and the functionality is hidden from the Salesforce admin in the Messaging settings (false). The default value is false. Available in API versions 63.0 to 65.0. In API version 66.0 and later, this field is removed. Use EventCapabilitiesIsInboundAcknwOptionExposed instead. | | IsRoutingWorkResultEnabled | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether the Routing Work Result event is sent as a Custom Platform event or not. The default value is false. Available in API versions 64.0 and 65.0. In API version 66.0 and later, this field is removed. Use EventCapabilitiesIsRoutingWorkResultSupported instead. | | IsTypingIndicatorDisabled | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether the partner doesn’t support typing indicators for outbound messages and the functionality is hidden from the Salesforce admin in the Messaging settings (true) or whether outbound typing indicators are supported by the partner (false). The default value is false, meaning the outbound typing indicator feature is supported by default. To disable the outbound typing indicator feature, set this value to true. Available in API versions 63.0 to 65.0. In API version 66.0 and later, this field is removed. Use EventCapabilitiesIsTypingIndicatorOptionHidden instead. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta—Managed-Beta - deleted—Managed-Proposed-Deleted - deprecated—Managed-Proposed-Deprecated - deprecatedEditable—SecondGen-Installed-Deprecated - installed—Managed-Installed - installedEditable—SecondGen-Installed-Editable - released—Managed-Released - unmanaged—Unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description The UI label name for the custom metadata type object in the API. This name appears in several places in the UI, so include the partner channel name for easy identification. For example, Channel Definition 1. | | MaxParticipantsForCnfrOverride | Type int Properties Filter, Group, Nillable, Sort Description Specifies the limit for how many participants can be in a messaging conference. If set, this field overrides the platform limit for the number of participants in a conference. If not set, the limit defaults to the messaging platform limit of how many participants can be in a messaging conference at one time. This field is available in API version 64.0 and later. | | Metadata | Type complexvalue 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 Properties Filter, Group, Nillable, Sort Description The namespace prefix that is 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 Developer Edition orgs, NamespacePrefix is set to the namespace prefix of the org for all objects that support it, unless 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 orgs that are not Developer Edition orgs, NamespacePrefix is set only for objects that are part of an installed managed package. All other objects have no namespace prefix. NamespacePrefix is null if the publisher is Salesforce. | | RoutingOwner | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The system the customer uses to manage routing for Bring Your Own Channel for Messaging or Bring Your Own Channel for CCaaS. Possible values are: - Partner - Salesforce The default value is Salesforce. For example, if set to Salesforce, routing is managed by the Salesforce system. If set to Partner, routing is managed by the partners telephony system or partner CCaaS system. For Bring Your Own Channel for Messaging, this value must be set to Salesforce. | # ConversationVendorInfo This setup object connects the partner vendor system to the Service Cloud feature. For example, for Service Cloud Voice, this object contains information about the partner telephony or Contact Center as a Service (CCaaS) partner system. For Bring Your Own Channel for Messaging this object contains information about the partner messaging system, and for Bring Your Own Channel for CCaaS, this object contains information about the CCaaS partner system. This object is available in API version 52.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules This object requires an add-on license for Service Cloud Voice for Partner Telephony or Digital Engagement. ## Fields The fields in the ConversationVendorInfo object apply to all Service Cloud features unless otherwise stated in the field description. For example, if a field applies to just one Service Cloud Voice telephony model setup or is applied differently by different partner systems, this is stated in the field description. | Field | Details | | --- | --- | | BridgeComponent | Type string Properties Filter, Group, Nillable, Sort Description The Lightning component used to communicate between the telephony or messaging system and other Lightning components. Applies to the following implementations: - Service Cloud Voice with Partner Telephony - Service Cloud Voice with Partner Telephony from Amazon Connect - Bring Your Own Channel for CCaaS | | CapabilitiesSupportsAgentSSO | Type boolean Properties Filter Description If set to true, agents can single sign-on (SSO) into their contact center using Salesforce as the identity provider (IdP). Behind the scenes, Salesforce is used as the SAML IdP in the Single Sign-On external client app for the contact center. If set to false, an IdP other than Salesforce is used or an IdP isn’t used at all. The default value is false. If this value is set to false and you want to use Salesforce as the IdP for your contact center, set this value and the namedCredentialSupported value to true and configure the service\_cloud\_voice.PartnerSSO interface in your Apex integration class. Available in API version 53.0 and later. Applies to the following implementations: - Service Cloud Voice with Partner Telephony - Service Cloud Voice with Partner Telephony from Amazon Connect - Bring Your Own Channel for CCaaS | | CapabilitiesSupportsEinsteinConversationInsights | Type boolean Properties Filter Description If set to true, Einstein Conversation Insights is turned on. The default value is false. Available in API version 53.0 and later. Applies to the following implementations: - Service Cloud Voice with Partner Telephony - Service Cloud Voice with Partner Telephony from Amazon Connect | | CapabilitiesSupportsIntelligence | Type boolean Properties Filter Description If set to true, Salesforce ingests real-time signals sent from a partner telephony system. If set to false, Salesforce won't ingest real-time intelligence signals from a partner telephony system. The default value is false. Available in API version 59.0 and later. Applies to the following implementations: - Service Cloud Voice with Partner Telephony | | CapabilitiesSupportsKeyProvisioning | Type boolean Properties Filter Description If set to true, key provisioning and renewal are automated. The default value is false. Available in API version 54.0 and later. Applies to the following implementations: - Service Cloud Voice with Partner Telephony - Service Cloud Voice with Partner Telephony from Amazon Connect | | CapabilitiesSupportsNamedCredential | Type boolean Properties Filter Description A sample-named credential that can be used for Apex callouts to the partner system. Available in API version 53.0 and later. Applies to the following implementations: - Service Cloud Voice with Partner Telephony - Service Cloud Voice with Partner Telephony from Amazon Connect - Bring Your Own Channel for CCaaS | | CapabilitiesSupportsPartnerContactCenterList | Type boolean Properties Filter Description If set to true, enables the customer to select one contact center from a list of multiple contact centers to connect with Salesforce. The default value is false. Available in API version 53.0 and later. Applies to the following implementations: - Service Cloud Voice with Partner Telephony - Service Cloud Voice with Partner Telephony from Amazon Connect - Bring Your Own Channel for CCaaS | | CapabilitiesSupportsPartnerPhoneNumbers | Type boolean Properties Filter Description If set to true, displays a list of phone numbers used to create contact center channels. The default value is false. Available in API version 54.0 and later. Applies to the following implementations: - Service Cloud Voice with Partner Telephony - Service Cloud Voice with Partner Telephony from Amazon Connect | | CapabilitiesSupportsPartnerTransferDestinations | Type boolean Properties Filter Description If set to true, allows Salesforce to fetch contact center queues so that Salesforce and contact center queues can be mapped. The default value is false. Available in API version 53.0 and later. Applies to the following implementations: - Service Cloud Voice with Partner Telephony - Service Cloud Voice with Partner Telephony from Amazon Connect - Bring Your Own Channel for CCaaS | | CapabilitiesSupportsQueueManagement | Type boolean Properties Filter Description If set to true, support queue management. The default value is false. Available in API version 56.0 and later. Applies to the following implementations: - Service Cloud Voice with Partner Telephony - Service Cloud Voice with Partner Telephony from Amazon Connect - Bring Your Own Channel for CCaaS | | CapabilitiesSupportsUnifiedRouting (Beta) | Type boolean Properties Create, Filter, Update Description Indicates whether unified routing is supported (true) or not supported (false) for voice calls in voice channels. The default value is false. Once this value is set to true, it can’t be changed to false. Available in API version 63.0 and later. Applies to the following implementation: - Service Cloud Voice with Partner Telephony | | CapabilitiesSupportsUniversalCallRecordingAccess | Type boolean Properties Filter Description If set to true, Universal Call Recording Access is turned on. The default value is false. If this value is set to false and you want to turn on Universal Call Recording, set this value to true and configure the service\_cloud\_voice.RecordingMediaProvider interface in your Apex integration class. Available in API version 54.0 and later. Applies to the following implementations: - Service Cloud Voice with Partner Telephony - Service Cloud Voice with Partner Telephony from Amazon Connect | | CapabilitiesSupportsUserSyncing | Type boolean Properties Filter Description If set to true, supports automated user syncing whenever a user is added to or removed from a contact center. The default value is false. Available in API version 53.0 and later. Applies to the following implementations: - Service Cloud Voice with Partner Telephony - Service Cloud Voice with Partner Telephony from Amazon Connect - Bring Your Own Channel for CCaaS | | ConnectorUrl | Type url Properties Filter, Group, Nillable, Sort Description The URL that hosts your Service Cloud Voice or Bring Your Own Channel for CCaaS connector. This value could be a Visualforce page or a public URL. Applies to the following implementations: - Service Cloud Voice with Partner Telephony - Service Cloud Voice with Partner Telephony from Amazon Connect - Bring Your Own Channel for CCaaS | | CustomConfigId | Type reference Properties Filter, Group, Nillable, Sort Description The foreign key to the CustomEntityDefinition, which contains partner-specific custom settings. Available in API version 53.0 and later. Applies to the following implementations: - Service Cloud Voice with Partner Telephony - Service Cloud Voice with Partner Telephony from Amazon Connect - Bring Your Own Channel for CCaaS Relationship Name CustomConfig Refers To CustomObject | | CustomIconId | Type reference Properties Filter, Group, Nillable, Sort Description ID of the static resource used to identify the contact center integration, such as a Contact Center as a Service (CCaaS) provider logo. The static resource must be in SVG format. This field is optional. Available in API version 62.0 and later. This field is a relationship field. Applies to the following implementations: - Service Cloud Voice with Partner Telephony - Bring Your Own Channel for CCaaS Relationship Name CustomIcon Refers To StaticResource | | CustomLoginUrl | Type url Properties Filter, Group, Nillable, Sort Description The URL that hosts your telephony system or CCaaS system login page. Applies to the following implementations: - Service Cloud Voice with Partner Telephony - Service Cloud Voice with Partner Telephony from Amazon Connect - Bring Your Own Channel for CCaaS (supported when combined with a telephony CCaaS integration) | | DeveloperName | Type string Properties Filter, Group, Sort Description The unique name of the object in the API. This field is automatically generated, but you can supply your own value if you create the record using the API. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated ConversationVendorInfo type in Metadata API. The full name can include a namespaceprefix. 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. | | IntegrationClassId | Type reference Properties Filter, Group, Nillable, Sort Description The foreign key to the partner Apex class implementing supported interfaces. Available in API version 53.0 and later. Applies to the following implementations: - Service Cloud Voice with Partner Telephony - Service Cloud Voice with Partner Telephony from Amazon Connect - Bring Your Own Channel for CCaaS This field is a relationship field. Relationship Name IntegrationClass Refers To ApexClass | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the master label (MasterLabel) in the user interface. Applies to the following implementations: - Service Cloud Voice with Partner Telephony - Service Cloud Voice with Partner Telephony from Amazon Connect - Bring Your Own Channel for CCaaS | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description The partner vendor's display name as it appears in the UI. This name appears in several places in the UI, so include the partner vendor name for easy identification. For Service Cloud Voice, this label also represents the telephony provider name in the contact center record. For Service Cloud Voice with Amazon Connect, this field is always set to Service Cloud Voice. | | Metadata | Type [ConversationVendorInfo](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_conversationvendorinfo.htm) Properties Create, Nillable, Update Description The ConversationVendorInfo's metadata. 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. | | NamedCredentialId | Type reference Properties Filter, Group, Nillable, Sort Description A sample-named credential that can be used for Apex callouts to the partner system. Available in API version 53.0 and later. Applies to the following implementations: - Service Cloud Voice with Partner Telephony - Service Cloud Voice with Partner Telephony from Amazon Connect - Bring Your Own Channel for CCaaS This field is a relationship field. Relationship Name NamedCredential Refers To NamedCredential | | NamespacePrefix | Type string 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 the following values: - In Developer Edition organizations, the namespace prefix is set to the namespace prefix of the organization for all objects that support it. There is 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 are not Developer Edition organizations, NamespacePrefix is only set for objects that are part of an installed managed package. There is no namespace prefix for all other objects. | | TelephonySettingsComponent | Type string Properties Filter, Group, Nillable, Sort Description The name of the Lightning Web Component (LWC) that is used to display additional agent settings in the Omni-Channel widget. This value is in the format mynamespace:componentName, where mynamespace is the namespace associated with the Service Cloud Voice package that was created, and componentName is the FQDN of the Lightning component. Available in API version 54.0 and later. Applies to the following implementation: - Service Cloud Voice with Partner Telephony | | VendorType | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The Service Cloud feature the partner vendor supports. Possible values are: - Amazon\_Connect — For Service Cloud Voice with Amazon Connect. - BringYourOwnChannelPartner — For Bring Your Own Channel for Messaging. Available in API version 60.0 and later. - BringYourOwnContactCenter — For Bring Your Own Channel for Contact Center as a Service (CCaaS). Available in API version 60.0 and later. - ServiceCloudVoicePartner — For Service Cloud Voice with Partner Telephony or Service Cloud Voice with Partner Telephony from Amazon Connect. Available in API version 53.0 and later. | # CspTrustedSite Represents a trusted URL. For each CspTrustedSite, you can specify Content Security Policy (CSP) directives and permissions policy directives. Each CSP directive allows Lightning components, third-party APIs, and WebSocket connections to access a resource type from the trusted URL. If the Permissions-Policy HTTP header is enabled, each permissions policy directive grants the trusted URL access to a browser feature. In API version 58.0 and earlier, CspTrustedSite included only CSP directives and was referred to as CSP Trusted Sites in Salesforce Setup. Available in API version 39.0 and later. ## Supported SOAP Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods GET ## Limitations [SOQL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_soql_limits.htm "Some Tooling API objects have SOQL limitations. These limitations apply to any Metadata Catalog query, which applies to all Custom Metadata Types and Metadata Catalog entities, not only the ones explicitly listed.") [SOSL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_sosl_limits.htm "Two Tooling API objects, EntityDefinition and FieldDefinition, have some SOSL limitations. ExternalString and MetadataComponentDependency (Beta) don’t support SOSL searches.") ## Fields
Field Field Type Description
CanAccessCamera boolean Indicates whether this CspTrustedSite can access the user’s camera (true) or not (false). The default value is false.

This field takes effect only when the enablePermissionsPolicy field equals true and the grantCameraAccess field equals TrustedUrls in the SecuritySettings metadata API type.

This field is available in API version 59.0 and later.

CanAccessMicrophone boolean Indicates whether this CspTrustedSite can access the user’s microphone (true) or not (false). The default value is false.

This field takes effect only when the enablePermissionsPolicy field equals true and the grantMicrophoneAccess field equals TrustedUrls in the SecuritySettings metadata API type.

This field is available in API version 59.0 and later.

Context CspTrustedSiteContext (enumeration of type string) Declares the scope of the CSP directives for the trusted URL.
  • All—Apply the CSP directives to all supported context types.
  • Communities—Apply the CSP directives to Experience Builder sites only.
  • FieldServiceMobileExtension—Apply the CSP directives to the Field Service Mobile Extensions only. Available in API version 47.0 and later.
  • LEX—Apply the CSP directives to Lightning Experience only.
  • LightningOut—Reserved for future use. Available in API version 64.0 and later
  • VisualForce—Apply the CSP directives to custom Visualforce pages only. Available in API version 55.0 and later.

For custom Visualforce pages, content is restricted to trusted URLs only if the page’s cspHeader attribute is set to true.

This field is available in API version 44.0 and later.

Description string The description of this trusted URL.
EndpointUrl string Required. The URL for this CspTrustedSite.
  • This field must include a domain name and can include a port. For example, https://example.com or https://example.com:8080. To reduce repetition, you can use the wildcard character * (asterisk). For example, *.example.com.

    Don't include placeholders or invalid characters. For example, don't use malformed^url.example.com, and https://{subdomain}.example.com.

  • For a third-party API, the URL must begin with https://. For example, https://example.com.
  • For a WebSocket connection, the URL must begin with wss://. For example, wss://example.com.
  • For a Chrome extension, use the 32-character extension ID in the format chrome-extension://abcdefghijklmnopabcdefghijklmnop. The ID can contain only lowercase letters a–p. Wildcards aren’t supported in Chrome extension URIs.

Before February 2025, it was possible to save a malformed URL. Malformed URLs are excluded from generated CSP HTTP headers. To keep your Trusted URLs list accurate, remove any malformed entries. You can use an Apex class to find all malformed URLs. See the knowledge article, Identify Malformed Trusted URLs.

IsActive boolean Indicates whether this CspTrustedSite is active (true) or not (false). The default value is true.
IsApplicableToConnectSrc boolean Indicates whether Lightning components, third-party APIs, and WebSocket connections can load URLs using script interfaces from this trusted URL (true) or not (false). This field has a default value of false.

This field is available in API version 48.0 and later.

IsApplicableToFontSrc boolean Indicates whether Lightning components, third-party APIs, and WebSocket connections can load fonts from this trusted URL (true) or not (false). This field is available in API version 48.0 and later.
IsApplicableToFrameSrc boolean Indicates whether Lightning components, third-party APIs, and WebSocket connections can load resources contained in <iframe> elements from this trusted URL (true) or not (false). This field has a default value of false.

This field is available in API version 48.0 and later.

IsApplicableToImgSrc boolean Indicates whether Lightning components, third-party APIs, and WebSocket connections can load images from this trusted URL (true) or not (false). This field has a default value of false.

This field is available in API version 48.0 and later.

IsApplicableToMediaSrc boolean Indicates whether Lightning components, third-party APIs, and WebSocket connections can load audio and video from this trusted URL (true) or not (false). This field has a default value of false.

This field is available in API version 48.0 and later.

IsApplicableToStyleSrc boolean Indicates whether Lightning components, third-party APIs, and WebSocket connections can load style sheets from this trusted URL (true) or not (false). This field has a default value of false.

This field is available in API version 48.0 and later.

MobileExtension string Reserved for future use.
## Usage For each CSPTrustedSite, at least one field starting with grantAccess or isApplicableTo must be set to true. In API versions 50.0 to 58.0, if all isApplicable fields are false, the isApplicableToImgSrc field is set to true. In API version 49.0 and earlier, if all isApplicable fields are false, those fields all default to true. To ensure smooth integration across Salesforce products, Salesforce includes URLs in each of the CSP directives that correspond to the isApplicable fields, even though those URLs aren’t defined as CspTrustedSite components. Salesforce regularly updates those URLs based on the latest requirements. # CustomApplication Represents a custom or standard application. An application is a list of tab references, a description, and a logo. It also includes access to the associated CustomApplication type and related fields in Metadata API. Available in Tooling API version 42.0 or later. ## Supported SOAP Calls create(), delete(), describeSObjects(), query(), retrieve(), update() ## Supported REST HTTP Methods Query, GET, POST, PATCH ## Fields | Field Name | Details | | --- | --- | | Description | Type string Properties Filter, Group, Nillable, Sort Description The optional description of the application. | | DeveloperName | Type string Properties Filter, Group, Nillable, Sort Description The developer name of the application. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the application. | | IsNavAutoTempTabsDisabled | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether the navigation automatically creates temporary tabs settings. Defaults to false. Available in API version 43.0 and later. | | IsNavPersonalizationDisabled | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether navigation personalization is disabled. Defaults to false. Available in API version 43.0 and later. | | IsNavTabPersistenceDisabled | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether workspace tabs are cleared for each new console session (true) or not (false). Defaults to false. Available in API version 54.0 and later. | | Label | Type string Properties Filter, Group, Nillable, Sort Description The label of the application. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | Metadata | Type [mns:CustomApplication](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_customapplication.htm "HTML (New Window)") Properties Create, Nillable, Update Description Provides access to the associated CustomApplication type and related fields in Metadata API. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The namespace prefix of the application. | | NavType | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Not updateable. The type of navigation the application uses. Valid values are: - Console - Standard | | UiType | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The type of user interface that the application uses. Valid values are: - Aloha - Lightning | | UtilityBar | Type [FlexiPage](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_flexipage.htm "Represents a Lightning page. A Lightning page is a customizable page composed of regions containing Lightning components.") Properties Filter, Group, Nillable, Sort Description The Lightning page used as the utility bar for the application. | | UtilityBarId | Type reference Properties Filter, Group, Nillable, Sort Description The ID of the utility bar associated with this application. | # CustomField Represents a custom field on a custom object that stores data unique to your organization. Includes access to the associated CustomField object and related fields in Salesforce Metadata API. Available from API version 28.0 or later. ## Supported SOAP Calls create(), query(), retrieve(), search(), update(), upsert() ## Supported REST HTTP Methods Query, GET, POST, PATCH ## Fields | Field Name | Details | | --- | --- | | DeveloperName | Type string Properties Filter, Group, Sort Description The developer’s internal name for the custom field. For example, the internal name for the custom field CF\_\_c is CF. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | Metadata | Type CustomFieldMetadata Properties Create, Nillable, Update Description CustomFieldMetadata includes these fields. For more information, see [CustomField](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/customfield.htm "HTML (New Window)") in the Metadata API Developer Guide. - caseSensitive - complianceGroup - defaultValue - deleteConstraint - deprecated\* - description - displayFormat - displayLocationInDecimal - elementType\* - escapeMarkup - externalDeveloperName - externalId - formula - formulaTreatBlanksAs - inlineHelpText - isAIPredictionField - isFilteringDisabled - isNameField - isSortingDisabled - label - length - maskChar - maskType - picklist - populateExistingRows - precision - readOnlyProxy - referenceTo - relationshipLabel - relationshipName - relationshipOrder - reparentableMasterDetai - required - restrictedAdminField - scale - startingNumber - stripMarkup - summarizedField - summaryFilterItems - summaryForeignKey - summaryOperation - trackFeedHistory - trackHistory - type - unique - visibleLines - writeRequiresMasterRead \* Reserved for future use. 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 Properties Filter, Group, Nillable, Sort Description The namespace of the custom field. A custom field can be in an extension namespace different than the object. | | creationType | Type DefinitionCreationType (enumeration of type string) Properties Filter, Group, Nillable, Sort Description Describes whether this field was added by the user or as part of a standard taxonomy. Available in API version 67.0 and later: - Ad\_Audience\_Insights - Auxiliary - Clean\_Room - Deletion\_Records - Problem\_Records | | TableEnumOrId | Type Restricted picklist Properties Filter, Group, Sort Description The enum (for example, Account) or ID of the object this field is on. | # CustomFieldDisplay Represents the view type assigned to product attribute custom fields. This object is available in API version 63.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules CustomFieldDisplay is available only if the B2B or D2C Commerce license is enabled. ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update 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 organization. Label is **Record Type Name**. This field is automatically generated, but you can supply your own value if you create the record using the API. | | DisplayType | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The view type of the product attribute custom fields. Possible values are: - ColorSwatch - Dropdown - Pill The default value is Dropdown. | | FieldApiName | Type string Properties Create, Filter, Group, idLookup, Sort, Update Description The unique name of the product attribute, for example, color\_c. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The language of the CustomFieldDisplay. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description Label for the CustomFieldDisplay. In the UI, this field is Custom Field Display. | | NamespacePrefix | Type string 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. | # CustomFieldMember Represents the working copy of a field for editing or saving in a MetadataContainer. This object is available in API version 33.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API HTTP Methods Query, GET, POST, PATCH, DELETE ## Special Access Rules To access CustomFieldMember, you must have both the View All Data and Customize Application user permissions. ## Fields | Field Name | Details | | --- | --- | | Content | Type string Properties None Description A string representation of CustomField that contains the field’s metadata. | | ContentEntityId | Type ID Properties Create, Filter, Group, Sort Description A reference to a custom field. There can be only one ContentEntityId per CustomField, otherwise, an error is reported. | | FullName | Type string Properties Group, Nillable Description The full name of the associated object in the Metadata API. Use to avoid race conditions on create, before you have IDs. 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. | | IsDeleted | Type boolean Properties Group, Nillable Description Indicates whether the object is marked as deleted (true) or not (false). | | LastSyncDate | Type dateTime Properties Filter, Sort Description The date that this CustomField was replicated from the underlying entity. | | Metadata | Type CustomField Properties None Description An object that describes the version, status, and packaged versions of the corresponding CustomField. 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. | # CustomHelpMenuSection Represents a section of the Lightning Experience help menu that the admin added to display custom, org-specific help resources. Available in API version 45.0 and later. ## Supported SOAP Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods Query, DELETE, GET, POST, PATCH ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Filter, Group, Sort Description The unique name of the custom help section in the API. This name can contain only underscores and alphanumeric characters and must be unique in your organization. It must begin with a letter, not include spaces, not end with an underscore, and not contain two consecutive underscores. The label corresponds to section title in the user interface. Limit: 80 characters. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance slows down while Salesforce generates one for each record. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | Fullname | Type string 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. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description Required. Language of the label. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description The name of the resource. Specify up to 100 characters. | | Metadata | Type mns:CustomHelpMenuSection Properties Create, Nillable, Update Description Metadata for the item contained in the custom help section, including label, URL, and sort order. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The namespace prefix that is 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 Developer Edition orgs, NamespacePrefix is set to the namespace prefix of the org for all objects that support it, unless 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 orgs that are not Developer Edition orgs, NamespacePrefix is set only for objects that are part of an installed managed package. All other objects have no namespace prefix. | # CustomHttpHeader Represents a custom HTTP header used with OData 2.0 or OData 4.0 external data sources. Custom HTTP headers provide context information from Salesforce such as region, org details, or the role of the person viewing the external object. This object is available in API version 51.0 and later. ## Supported SOAP API Calls create(), delete(), describeLayout(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | Description | Type textarea Properties Create, Filter, Nillable, Sort, Update Description A text description of the header field’s purpose. | | HeaderFieldName | Type string Properties Create, Filter, Group, Sort, Update Description Name of the header field. The name must contain at least one alphanumeric character or underscore. It can also include: ! # $ % & ' \* + - . ^ \_ \` | ~ | | HeaderFieldValue | Type string Properties Create, Filter, Sort, Update Description A formula that resolves to the value for the header. The values in the formula must evaluate to a string. If the formula resolves to null and an empty string, the header isn’t sent. | | IsActive | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether the custom HTTP header is available to use (true) or unavailable (false). | | ParentId | Type reference Properties Create, Filter, Group, Sort Description ID of the entity to which this custom HTTP header is related. | # CustomMsgChannel Represents a custom conversation channel and stores event-driven Messaging settings. Custom conversation channels are implemented for Bring Your Own Channel for Messaging and Bring Your Own Channel for CCaaS Messaging channels. This object is available in API version 63.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules ## Fields | Field | Details | | --- | --- | | ChannelDefinitionId | Type reference Properties Create, Filter, Group, Sort, Update Description Specifies the ConversationChannelDefinition for the custom channel. This field is a relationship field. Relationship Name ChannelDefinition Refers To ConversationChannelDefinition | | EventCapabilitiesIsInboundAcknowledgementEnabled | Type boolean Properties Create, Filter, Update Description Indicates whether the Salesforce admin has enabled read receipts and delivery receipts for inbound messages in the Messaging settings (true) or whether the admin hasn’t enabled these inbound acknowledgments (false). The default value is false, meaning inbound acknowledgments are disabled by default even if supported by the partner. This field is available in API version 65.0 and later. Use this field instead of HasInboundReceipts. | | EventCapabilitiesIsProgressIndicatorEnabled | Type boolean Properties Create, Filter, Update Description Indicates whether the Salesforce admin has enabled AI agent progress indicators in the Messaging settings (true) or whether the admin hasn’t enabled progress indicators (false). The default value is false, meaning progress indicators for AI agents are disabled by default even if supported by the partner. This field is available in API version 65.0 and later. | | EventCapabilitiesIsTypingIndicatorDisabled | Type boolean Properties Create, Filter, Update Description Indicates whether the Salesforce admin has enabled typing indicators for outbound messages in the Messaging settings (false) or whether the admin hasn’t enabled outbound typing indicators (true). The default value is false, meaning the outbound typing indicators are enabled by default. This field is available in API version 65.0 and later. Use this field instead of HasTypingIndicator. | | HasInboundReceipts | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Available in API versions 63.0 to 65.0. In API version 66.0 and later, this field is removed. Use EventCapabilitiesIsInboundAcknowledgementEnabled instead. The default value is false. | | HasTypingIndicator | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Available in API versions 63.0 to 65.0. In API version 66.0 and later, this field is removed. Use EventCapabilitiesIsTypingIndicatorDisabled instead. | # CustomNotifActionDef Represents the metadata associated with a mobile action group notification definition. This object is available in API version 66.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Special Access Rules ## Fields | Field | Details | | --- | --- | | ActionGroupId | Type reference Properties Create, Filter, Group, Sort Description Unique identifier for the field. This field is a relationship field. Relationship Name ActionGroup Relationship Type Master-detail Refers To CustomNotificationActionGroup (the master object) | | ActionName | Type string Properties Create, Filter, Group, Sort Description Name of the mobile action group. Use a unique name per custom notification type. The field can contain only underscores and alphanumeric characters. It must begin with a letter, not include spaces, not end with an underscore, and not contain two consecutive underscores. | | ActionOrder | Type int Properties Create, Filter, Group, Sort, Update Description Order in which this action appears in the mobile action group. Select a number between 1 and 3, as there are 3 maximum actions in a group. | | ActionType | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description Possible values are: - NotificationApiAction - Share | | Label | Type string Properties Create, Filter, Group, Sort, Update Description Label for the action. | | TargetId | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description This relationship field is the name of the ApexClass that implements handling of the action. TargetId is used only when the ActionType is set to NotificationApiAction. Relationship Name Target Refers To ApexClass | ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note CustomNotifActionDef is exposed in Tooling API to user profiles with the View Setup and Configuration permission. To create and edit mobile action groups, the Customize Application permission is required. # CustomNotificationActionGroup Stores information about custom notification action groups. This object is available in API version 66.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Fields | Field | Details | | --- | --- | | CustomNotificationTypeId | Type reference Properties Create, Filter, Group, Sort Description This field is a relationship field. Relationship Name CustomNotificationType Relationship Type Master-detail Refers To CustomNotificationType (the master object) | | GroupName | Type string Properties Create, Filter, Group, Sort Description Name of the mobile action group. Use a unique name per custom notification type. | ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note CustomNotificationActionGroup is exposed in Tooling API to user profiles with the View Setup and Configuration permission. To create and edit mobile action groups, the Customize Application permission is required. # CustomNotificationType Stores information about custom notification types. This object is available in API version 46.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Fields | Field | Details | | --- | --- | | CustomNotifTypeName | Type string Properties Create, Filter, Group, idLookup, Sort, Unique, Update Description Specifies a notification type name. The notification type name is unique within your organization. Maximum number of characters: 80. | | Description | Type textarea Properties Create, Filter, Group, Nillable, Sort, Update Description Specifies a general description of the notification type, which is displayed with the notification type name. Maximum number of characters: 255. | | Desktop | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether the desktop delivery channel is enabled (true) or not (false). The default value is false. | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description Specifies the API name of the notification type. | | IsSlack | Type boolean Properties Reserved for future use. Description Reserved for future use. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description Specifies the language of the custom notification type. The value for this field is the language value of the org. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description Specifies the notification type label. | | Mobile | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether the mobile delivery channel is enabled (true) or not (false). The default value is false. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description Specifies the namespace of the notification type, if installed with a managed package. | ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note CustomNotificationType is exposed in Tooling API to user profiles with the View Setup and Configuration permission. To create and edit notification types, the Customize Application permission is required. # CustomObject Represents a custom object that stores data unique to your organization. Includes access to the associated CustomObject object and related fields in Salesforce Metadata API. Available from API version 31.0 or later. ## Supported SOAP Calls query(), retrieve(), search() ## Supported REST HTTP Methods Query, GET ## Fields | Field Name | Details | | --- | --- | | CustomHelpId | Type ID Properties Filter, Group, Nillable, Sort Description The control that contains the help content if this custom object has customized help content. | | Description | Type string Properties Filter, Nillable, Sort Description The object’s description. This can be useful to describe the reason for creating the object or its intended use. | | DeveloperName | Type string Properties Filter, Group, Sort Description The developer’s internal name for the custom object. For example, the internal name for the custom object CO\_\_c is CO. | | ExternalName | Type string Properties Filter, Group, Nillable, Sort Description Maps to a table in the external data source. If you created the external object using Validate and Sync for the data source, this name is automatically created. | | ExternalRepository | Type string Properties Filter, Group, Nillable, Sort Description Maps to a table in the external data source. If you created the external object using Validate and Sync for the data source, this name is automatically created; do not modify it. | | Language | Type string Properties Filter, Group, Restricted picklist, Sort Description The language of the action. Valid values are: - 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 Spanish (Mexico) defaults to Spanish for customer-defined translations. - Swedish: sv - Thai: th The Salesforce user interface is fully translated to Thai, but Help is in English. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The namespace of the package of which the custom object is a part. | | creationType | Type DefinitionCreationType (enumeration of type string) Properties Filter, Group, Nillable, Sort Description Describes whether this object was added by the user or as part of a standard taxonomy. Available in API version 67.0 and later: - Ad\_Audience\_Insights - Auxiliary - Clean\_Room - Deletion\_Records - Problem\_Records | | SharingModel | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The sharing model. Values are: - Edit - ControlledByparent - None - Read | # CustomTab Represents a custom tab. This object is available in the Tooling API version 33.0 and later. ## Supported Calls create(), delete(), query(), retrieve(), update() ## Fields | Field | Details | | --- | --- | | ContentId | Type reference Properties Filter, Group, Nillable, Sort Description Read-only. The ID of the item that the custom tab points to. For Lightning components, this is the ID of the component bundle. For custom object tabs, this field is null. | | Description | Type string Properties Filter, Nillable, Sort Description The tab’s description. | | DeveloperName | Type string Properties Filter, Group, Nillable, Sort Description The developer’s internal name for the custom tab. | | EncodingKey | Type string Properties Filter, Group, Nillable, Sort Description Read-only. Type of encoding assigned to the URL called by the tab. 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 the value URL is selected in the tab type. Valid values are: - 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 | Type string Properties Create, Group, Nillable Description The name of the tab. The value of this field depends on the type of tab, and the API version. - For custom object tabs, the fullName is the developer-assigned name of the custom object (MyCustomObject\_\_c, for example). - For Web tabs, the fullName is the developer-assigned name of the tab (MyWebTab, for example). 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. | | HasSidebar | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates if the tab displays the sidebar panel. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, idLookup, Nillable, Sort Description Required. The label for the custom tab, which displays in Setup. | | Metadata | Type CustomTabMetadata Properties Create, Nillable, Update Description Custom tab metadata. 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. | | MotifName | Type string Properties Filter, Group, Sort Description Read-only. The name of the tab style assigned to the custom tab. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The namespace of the package of which the custom tab is a part. | | Type | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The type of custom tab. Valid values are: - apexPage - aura - customObject - flexiPage - sControl - url | | Url | Type string Properties Filter, Nillable, Sort Description The URL for the external web-page to embed in this tab. | # DataAssessmentConfigItem Represents a saved configuration for a specific vendor’s package for data assessment. This object is available in API version 40.0 and later. ## Supported SOAP Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods GET ## Fields | Field | Details | | --- | --- | | DataAssessmentConfigField | Type picklist Properties Create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description A list of fields on the external object that a specific data package supports. | | DataAssessmentConfigValue | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description The configuration value selected for a field in DataAssessmentConfigField. | | SobjectType | Type picklist Properties Create, Filter, Group, Nillable Description The object’s API name. | ## Usage The following example adds a new configuration for the configuration field on the external data source. { "SobjectType" : "01Ixx0000003S4f", //External object Id or api name "DataAssessmentConfigField" : "00Nxx000001DRL8", //Custom field Id or api name "DataAssessmentConfigValue" : "Salesforce" // value } # DataIntegrationRecordPurchasePermission Represents Lightning Data purchase credits that a Salesforce admin has granted to users. Available in Tooling API version 42.0 and later. ## Supported SOAP Calls create(), delete(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods GET, HEAD, and POST For operations on a specific object, DataIntegrationRecordPurchasePermission supports GET, PATCH, DELETE, and HEAD. ## Special Access Rules As of Spring ’20 and later, only your Salesforce org's internal users can access this object. ## Fields | Field | Details | | --- | --- | | ExternalObject | Type picklist Properties Create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description This field can hold a single value: the name of the data service record matched to the Salesforce record. | | UserId | Type reference Properties Create, Filter, Group, Sort, Update Description The ID of a user to whom purchase credits are assigned. | | UserRecordPurchaseLimit | Type int Properties Create, Filter, Group, Nillable, Sort, Update Description The number of purchase credits assigned to a user. | ## Usage Sample GET response: { "attributes" : { "type" : "DataIntegrationRecordPurchasePermission", "url" : "/services/data/v42.0/tooling/sobjects/DataIntegrationRecordPurchasePermission/0GyR0000000009xKAA" }, "Id" : "0GyR0000000009xKAA", "IsDeleted" : false, "CreatedDate" : "2017-11-02T22:02:36.000+0000", "CreatedById" : "005R0000000F4ItIAK", "LastModifiedDate" : "2017-12-12T18:22:35.000+0000", "LastModifiedById" : "005R0000000F4ItIAK", "SystemModstamp" : "2017-12-12T18:22:35.000+0000", "UserId" : "005R0000000F4ItIAK", "ExternalObject" : "managedPackageNamespace\_\_CustomObject\_\_x", "UserRecordPurchaseLimit" : 300 } # DataSourceBundleDefinition Represents the bundle of streams that a user adds to a data kit. This object is available in API version 52.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules You need Data 360 permission to access this object. ## Fields | Field | Details | | --- | --- | | Description | Type string Properties Filter, Group, Nillable, Sort Description A description of the associated data source bundle. This field is available in API version 55.0 and later. | | DeveloperName | Type string Properties Filter, Group, Sort Description Unique name for the data source bundle. Identical value to FullName. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated metadata object in Metadata API. | | Icon | Type string Properties Filter, Group, Nillable, Sort Description The icon used in the deployment flow. This field is available in API version 55.0 and later. | | IsMultiDeploymentSupported | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates if the bundle can be deployed multiple times or not. The default value is false. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description Languages supported in the deployment. Possible values are: - af—Afrikaans - am—Amharic - ar—Arabic - ar\_AE—Arabic (United Arab Emirates) - ar\_BH—Arabic (Bahrain) - ar\_DZ—Arabic (Algeria) - ar\_EG—Arabic (Egypt) - ar\_IQ—Arabic (Iraq) - ar\_JO—Arabic (Jordan) - ar\_KW—Arabic (Kuwait) - ar\_LB—Arabic (Lebanon) - ar\_LY—Arabic (Libya) - ar\_MA—Arabic (Morocco) - ar\_OM—Arabic (Oman) - ar\_QA—Arabic (Qatar) - ar\_SA—Arabic (Saudi Arabia) - ar\_SD—Arabic (Sudan) - ar\_SY—Arabic (Syria) - ar\_TN—Arabic (Tunisia) - ar\_YE—Arabic (Yemen) - bg—Bulgarian - bn—Bengali - bs—Bosnian - ca—Catalan - cac—Chuj - cak—Kaqchikel - cs—Czech - cy—Welsh - da—Danish - de—German - de\_AT—German (Austria) - de\_BE—German (Belgium) - de\_CH—German (Switzerland) - de\_LU—German (Luxembourg) - el—Greek - el\_CY—Greek (Cyprus) - en\_AE—English (United Arab Emirates) - en\_AU—English (Australian) - en\_BE—English (Belgium) - en\_CA—English (Canadian) - en\_CH—English (Switzerland) - en\_CY—English (Cyprus) - en\_CZ—English (Czechia) - en\_DE—English (Germany) - en\_DK—English (Denmark) - en\_ES—English (Spain) - en\_FR—English (France) - en\_GB—English (UK) - en\_HK—English (Hong Kong) - en\_HU—English (Hungary) - en\_IE—English (Ireland) - en\_IL—English (Israel) - en\_IN—English (Indian) - en\_IT—English (Italy) - en\_NL—English (Netherlands) - en\_NO—English (Norway) - en\_NZ—English (New Zealand) - en\_PH—English (Philippines) - en\_PL—English (Poland) - en\_RO—English (Romania) - en\_SE—English (Sweden) - en\_SG—English (Singapore) - en\_SK—English (Slovakia) - en\_US—English - en\_ZA—English (South Africa) - eo—Esperanto (Pseudo) - es—Spanish - es\_AR—Spanish (Argentina) - es\_BO—Spanish (Bolivia) - es\_CL—Spanish (Chile) - es\_CO—Spanish (Colombia) - es\_CR—Spanish (Costa Rica) - es\_DO—Spanish (Dominican Republic) - es\_EC—Spanish (Ecuador) - es\_GT—Spanish (Guatemala) - es\_HN—Spanish (Honduras) - es\_MX—Spanish (Mexico) - es\_NI—Spanish (Nicaragua) - es\_PA—Spanish (Panama) - es\_PE—Spanish (Peru) - es\_PR—Spanish (Puerto Rico) - es\_PY—Spanish (Paraguay) - es\_SV—Spanish (El Salvador) - es\_US—Spanish (United States) - es\_UY—Spanish (Uruguay) - es\_VE—Spanish (Venezuela) - et—Estonian - eu—Basque - fa—Farsi - fi—Finnish - fr—French - fr\_BE—French (Belgium) - fr\_CA—French (Canadian) - fr\_CH—French (Switzerland) - fr\_LU—French (Luxembourg) - fr\_MA—French (Morocco) - ga—Irish - gu—Gujarati - haw—Hawaiian - hi—Hindi - hmn—Hmong - hr—Croatian - ht—Haitian Creole - hu—Hungarian - hy—Armenian - in—Indonesian - is—Icelandic - it—Italian - it\_CH—Italian (Switzerland) - iw—Hebrew - iw\_EO—Esperanto RTL (Pseudo) - ja—Japanese - ji—Yiddish - ka—Georgian - kk—Kazakh - kl—Greenlandic - km—Khmer - kn—Kannada - ko—Korean - lb—Luxembourgish - lt—Lithuanian - lv—Latvian - mi—Te reo - mk—Macedonian - ml—Malayalam - mr—Marathi - ms—Malay - mt—Maltese - my—Burmese - nl\_BE—Dutch (Belgium) - nl\_NL—Dutch - no—Norwegian - pa—Punjabi - pl—Polish - pt\_BR—Portuguese (Brazil) - pt\_PT—Portuguese (European) - quc—Kiche - rm—Romansh - ro—Romanian - ro\_MD—Romanian (Moldova) - ru—Russian - ru\_AM—Russian (Armenia) - ru\_BY—Russian (Belarus) - ru\_KG—Russian (Kyrgyzstan) - ru\_KZ—Russian (Kazakhstan) - ru\_LT—Russian (Lithuania) - ru\_MD—Russian (Moldova) - ru\_PL—Russian (Poland) - ru\_UA—Russian (Ukraine) - sh—Serbian (Latin) - sh\_ME—Montenegrin - sk—Slovak - sl—Slovene - sm—Samoan - sq—Albanian - sr—Serbian (Cyrillic) - sv—Swedish - sw—Swahili - ta—Tamil - te—Telugu - th—Thai - tl—Tagalog - tr—Turkish - uk—Ukrainian - ur—Urdu - vi—Vietnamese - xh—Xhosa - zh\_CN—Chinese (Simplified) - zh\_HK—Chinese (Hong Kong) - zh\_MY—Chinese (Malaysia) - zh\_SG—Chinese (Singapore) - zh\_TW—Chinese (Traditional) - zu—Zulu | | ManageableState | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the state of an entity in a package. Possible values are: - beta—Managed-Beta - deleted—Managed-Proposed-Deleted - deprecated—Managed-Proposed-Deprecated - deprecatedEditable—SecondGen-Installed-Deprecated - installed—Managed-Installed - installedEditable—SecondGen-Installed-Editable - released—Managed-Released - unmanaged—Unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description Indicates the name of the bundle. | | Metadata | Type complexvalue Properties Create, Nillable, Update Description Indicates additional information that's necessary for the data source bundle. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description Namespace prefix associated with this object. Each Developer Edition org that creates a managed package has a unique namespace prefix. | # DataStreamTemplate Represents metadata about the data stream that a user adds to a data kit. This object is available in API version 52.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules You need Data 360 permission to access this object. ## Fields | Field | Details | | --- | --- | | DataSourceBundleDefinitionId | Type reference Properties Filter, Group, Sort Description The ID of the DataSourceBundleDefinition, which refers to the data stream bundle to which a data stream template belongs. This field is a relationship field. **Relationship Name** DataSourceBundleDefinition **Relationship Type** Look up | | DataSourceObjectId | Type reference Properties Filter, Group, Sort Description The ID of the DataSourceObject, which represents the object from where the data was sourced. This field is a relationship field. **Relationship Name** DataSourceObject **Relationship Type** Look up | | DeveloperName | Type string Properties Filter, Group, Sort Description Unique name for the data stream template. Identical value to FullName. | | FilterCriteria | Type textarea Properties Nillable Description Describes the filter applied to the data stream before the information is sent to Data 360. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated metadata object in Metadata API. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description Languages supported in the deployment. Possible values are: - af—Afrikaans - am—Amharic - ar—Arabic - ar\_AE—Arabic (United Arab Emirates) - ar\_BH—Arabic (Bahrain) - ar\_DZ—Arabic (Algeria) - ar\_EG—Arabic (Egypt) - ar\_IQ—Arabic (Iraq) - ar\_JO—Arabic (Jordan) - ar\_KW—Arabic (Kuwait) - ar\_LB—Arabic (Lebanon) - ar\_LY—Arabic (Libya) - ar\_MA—Arabic (Morocco) - ar\_OM—Arabic (Oman) - ar\_QA—Arabic (Qatar) - ar\_SA—Arabic (Saudi Arabia) - ar\_SD—Arabic (Sudan) - ar\_SY—Arabic (Syria) - ar\_TN—Arabic (Tunisia) - ar\_YE—Arabic (Yemen) - bg—Bulgarian - bn—Bengali - bs—Bosnian - ca—Catalan - cac—Chuj - cak—Kaqchikel - cs—Czech - cy—Welsh - da—Danish - de—German - de\_AT—German (Austria) - de\_BE—German (Belgium) - de\_CH—German (Switzerland) - de\_LI—German (Liechtenstein) - de\_LU—German (Luxembourg) - el—Greek - el\_CY—Greek (Cyprus) - en\_AD—English (Andorra) - en\_AE—English (United Arab Emirates) - en\_AG—English (Antigua and Barbuda) - en\_AL—English (Albania) - en\_AT—English (Austria) - en\_AU—English (Australian) - en\_BA—English (Bosnia and Herzegovina) - en\_BB—English (Barbados) - en\_BE—English (Belgium) - en\_BG—English (Bulgaria) - en\_BS—English (Bahamas) - en\_BZ—English (Belize) - en\_CA—English (Canadian) - en\_CH—English (Switzerland) - en\_CY—English (Cyprus) - en\_CZ—English (Czechia) - en\_DE—English (Germany) - en\_DK—English (Denmark) - en\_DM—English (Dominica) - en\_EE—English (Estonia) - en\_ES—English (Spain) - en\_FI—English (Finland) - en\_FR—English (France) - en\_GB—English (UK) - en\_GD—English (Grenada) - en\_GI—English (Gibraltar) - en\_GR—English (Greece) - en\_GY—English (Guyana) - en\_HK—English (Hong Kong) - en\_HR—English (Croatia) - en\_HU—English (Hungary) - en\_IE—English (Ireland) - en\_IL—English (Israel) - en\_IN—English (Indian) - en\_IS—English (Iceland) - en\_IT—English (Italy) - en\_JM—English (Jamaica) - en\_JP—English (Japan) - en\_KN—English (St. Kitts and Nevis) - en\_KR—English (South Korea) - en\_LC—English (St. Lucia) - en\_LI—English (Liechtenstein) - en\_LT—English (Lithuania) - en\_LU—English (Luxembourg) - en\_LV—English (Latvia) - en\_MC—English (Monaco) - en\_ME—English (Montenegro) - en\_MK—English (North Macedonia) - en\_MT—English (Malta) - en\_MY—English (Malaysian) - en\_NL—English (Netherlands) - en\_NO—English (Norway) - en\_NZ—English (New Zealand) - en\_PH—English (Phillipines) - en\_PL—English (Poland) - en\_PT—English (Portugal) - en\_RO—English (Romania) - en\_RS—English (Serbia) - en\_SE—English (Sweden) - en\_SG—English (Singapore) - en\_SI—English (Slovenia) - en\_SK—English (Slovakia) - en\_TH—English (Thailand) - en\_TR—English (Turkey) - en\_TT—English (Trinidad and Tobago) - en\_TW—English (Taiwan) - en\_US—English - en\_VC—English (St. Vincent and the Grenadines) - en\_ZA—English (South Africa) - eo—Esperanto (Pseudo) - es—Spanish - es\_AD—Spanish (Andorra) - es\_AR—Spanish (Argentina) - es\_BO—Spanish (Bolivia) - es\_CL—Spanish (Chile) - es\_CO—Spanish (Colombia) - es\_CR—Spanish (Costa Rica) - es\_DO—Spanish (Dominican Republic) - es\_EC—Spanish (Ecuador) - es\_GT—Spanish (Guatemala) - es\_HN—Spanish (Honduras) - es\_MX—Spanish (Mexico) - es\_NI—Spanish (Nicaragua) - es\_PA—Spanish (Panama) - es\_PE—Spanish (Peru) - es\_PR—Spanish (Puerto Rico) - es\_PY—Spanish (Paraguay) - es\_SV—Spanish (El Salvador) - es\_US—Spanish (United States) - es\_UY—Spanish (Uruguay) - es\_VE—Spanish (Venezuela) - et—Estonian - eu—Basque - fa—Farsi - fi—Finnish - fr—French - fr\_BE—French (Belgium) - fr\_CA—French (Canadian) - fr\_CH—French (Switzerland) - fr\_HT—French (Haiti) - fr\_LU—French (Luxembourg) - fr\_MA—French (Morocco) - ga—Irish - gu—Gujarati - haw—Hawaiian - hi—Hindi - hmn—Hmong - hr—Croatian - ht—Haitian Creole - hu—Hungarian - hy—Armenian - in—Indonesian - is—Icelandic - it—Italian - it\_CH—Italian (Switzerland) - iw—Hebrew - iw\_EO—Esperanto RTL (Pseudo) - ja—Japanese - ji—Yiddish - ka—Georgian - kk—Kazakh - kl—Greenlandic - km—Khmer - kn—Kannada - ko—Korean - lb—Luxembourgish - lt—Lithuanian - lv—Latvian - mi—Te reo - mk—Macedonian - ml—Malayalam - mr—Marathi - ms—Malay - mt—Maltese - my—Burmese - nl\_BE—Dutch (Belgium) - nl\_NL—Dutch - nl\_SR—Dutch (Suriname) - no—Norwegian - pa—Punjabi - pl—Polish - pt\_BR—Portuguese (Brazil) - pt\_PT—Portuguese (European) - quc—Kiche - rm—Romansh - ro—Romanian - ro\_MD—Romanian (Moldova) - ru—Russian - ru\_AM—Russian (Armenia) - ru\_BY—Russian (Belarus) - ru\_KG—Russian (Kyrgyzstan) - ru\_KZ—Russian (Kazakhstan) - ru\_LT—Russian (Lithuania) - ru\_MD—Russian (Moldova) - ru\_PL—Russian (Poland) - ru\_UA—Russian (Ukraine) - sh—Serbian (Latin) - sh\_ME—Montenegrin - sk—Slovak - sl—Slovene - sm—Samoan - sq—Albanian - sr—Serbian (Cyrillic) - sv—Swedish - sv\_FI—Swedish (Finland) - sw—Swahili - ta—Tamil - te—Telugu - th—Thai - tl—Tagalog - tr—Turkish - uk—Ukrainian - ur—Urdu - vi—Vietnamese - xh—Xhosa - zh\_CN—Chinese (Simplified) - zh\_HK—Chinese (Hong Kong) - zh\_MY—Chinese (Malaysia) - zh\_SG—Chinese (Singapore) - zh\_TW—Chinese (Traditional) - zu—Zulu | | ManageableState | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the state of an entity in a package. Possible values are: - beta—Managed-Beta - deleted—Managed-Proposed-Deleted - deprecated—Managed-Proposed-Deprecated - deprecatedEditable—SecondGen-Installed-Deprecated - installed—Managed-Installed - installedEditable—SecondGen-Installed-Editable - released—Managed-Released - unmanaged—Unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description Indicates the name of the bundle. | | Metadata | Type complexvalue Properties Create, Nillable, Update Description Describes additional information that's necessary for the data stream template. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description Namespace prefix associated with this object. Each Developer Edition org that creates a managed package has a unique namespace prefix. | | RefreshDayOfMonth | Type int Properties Filter, Group, Nillable, Sort Description The duration of the day of the month after which the data stream template must be refreshed. | | RefreshDayOfWeek | Type int Properties Filter, Group, Nillable, Sort Description The duration of the day of the week after which the data stream must be refreshed. | | RefreshFrequency | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The frequency with which the data stream must be refreshed. Possible values are: - BATCH—Batch - DAILY—Daily - EVERY\_12\_HOURS—Every 12 Hours - EVERY\_4\_HOURS—Every 4 Hours - HOURLY—Hourly - MINUTES\_15—15 Minutes - MINUTES\_30—30 Minutes - MINUTES\_5—5 Minutes - MONTHLY—Monthly - NONE—None - NOT\_APPLICABLE—Not Applicable - STREAMING—Streaming - WEEKLY—Weekly | | RefreshHours | Type multipicklist Properties Filter, Nillable Description The duration after which the data stream template must be refreshed. Possible values are: - 0 - 1 - 10 - 11 - 12 - 13 - 14 - 15 - 16 - 17 - 18 - 19 - 2 - 20 - 21 - 22 - 23 - 3 - 4 - 5 - 6 - 7 - 8 - 9 | | RefreshMode | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The mode of refresh. Possible values are: - FULL\_REFRESH—Full Refresh - INCREMENTAL—Incremental - NEAR\_REAL\_TIME\_INCREMENTAL—Near Real-time Incremental - NOT\_APPLICABLE—Not Applicable - PARTIAL\_UPDATE—Partial Update - REPLACE—Replace By Date - UPSERT—Upsert | | RefreshStartDate | Type date Properties Filter, Group, Nillable, Sort Description The date to retrieve data based on the refresh frequency data. Available in API version 62.0 and later. | | SourceObjectName | Type string Properties Filter, Group, Nillable, Sort Description The name of the source object from which data is streamed. Available in API version 62.0 and later. | | StreamType | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The type of data stream. Available in API version 62.0 and later. Possible values are: - DIRECT\_ACCESS—Direct Access - DIRECT\_ACCESS\_ACCELERATED—Direct Access (Accelerated) - INGEST—Ingest | | StreamingAppDataConnectorType | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The connector app for data streaming. Available in API version 63.0 and later. Possible values are: - MobileApp—Mobile App - WebApp—Web App | | TemplateVersion | Type int Properties Defaulted on create, Filter, Group, Nillable, Sort Description The version number of the template. Available in API version 62.0 and later. | # DataType Represents the datatype of a field. Use this object with EntityDefinition, EntityParticle, or FieldDefinition to simplify queries. Available in Tooling API version 34.0 and later. ## Supported SOAP Calls query() ## Supported REST HTTP Methods GET ## Limitations [SOQL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_soql_limits.htm "Some Tooling API objects have SOQL limitations. These limitations apply to any Metadata Catalog query, which applies to all Custom Metadata Types and Metadata Catalog entities, not only the ones explicitly listed.") [SOSL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_sosl_limits.htm "Two Tooling API objects, EntityDefinition and FieldDefinition, have some SOSL limitations. ExternalString and MetadataComponentDependency (Beta) don’t support SOSL searches.") ## Special Access Rules As of Spring ’20 and later, only authenticated internal and external users can access this object. ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string 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 organization. Label is **Record Type Name**. | | ContextServiceDataTypeId | Don’t use this field. It’s reserved for future use. Properties and behavior are likely to change. | | ContextWsdlDataTypeId | Don’t use this field. It’s reserved for future use. Properties and behavior are likely to change. | | DurableId | Type string 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. To simplify queries, use this field. | | IsComplex | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the datatype contains other datatypes, in contrast to a simple datatype like string. | ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note DataType fields are exposed in SOAP API version 45.0 and later. You can use Tooling API to query for DataType 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. DataType is still exposed in Tooling API to User Profiles with the ViewSetup permission. ## Example From an object, retrieve all the fields of one datatype. SELECT DataType, QualifiedApiName FROM EntityParticle WHERE DataType = 'phone' AND EntityDefinition.QualifiedApiName = 'Account' ## SOQL Limitations This object doesn't support some SOQL operations. GROUP BY Example Query: SELECT COUNT(qualifiedapiname), isfeedenabled FROM EntityDefinition GROUP BY isfeedenabled Error Returned: The requested operation is not yet supported by this SObject storage type, contact salesforce.com support for more information. LIMIT, LIMIT OFFSET Example Queries: SELECT qualifiedapiname FROM EntityDefinition LIMIT 5 SELECT qualifiedapiname FROM EntityDefinition LIMIT 5 OFFSET 10 An incorrect result is returned because LIMIT and LIMIT OFFSET are ignored. NOT Example Query: SELECT qualifiedapiname FROM EntityDefinition WHERE qualifiedapiname!='Account' Error Returned: Only equals comparisons permitted OR Example Query: SELECT qualifiedapiname, keyprefix FROM EntityDefinition WHERE isdeletable=true OR (isfeedenabled=false AND keyprefix='01j') Error Returned: Disjunctions not supported INCLUDES Example Query: SELECT ComplianceGroup FROM FieldDefinition WHERE EntityDefinitionId = 'Account' AND ComplianceGroup includes('GDPR') Error Returned: Unsupported filter type # DebugLevel Represents a set of log category levels to assign to a TraceFlag object. Multiple trace flags can use a debug level. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API HTTP Methods Query, GET, POST, PATCH, DELETE ## Fields | Field Name | Details | | --- | --- | | ApexCode | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The log category level for Apex code. Includes information about Apex code. Can also include log messages generated by data manipulation language (DML) statements, inline SOQL or SOSL queries, the start and completion of triggers, the start and completion of test methods, and so on. The following are valid values. - NONE - ERROR - WARN - INFO - DEBUG - FINE - FINER - FINEST This field is required. | | ApexProfiling | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The log category level for profiling information. Includes cumulative profiling information, such as the limits for your namespace, the number of emails sent, and so on. The following are valid values. - NONE - ERROR - WARN - INFO - DEBUG - FINE - FINER - FINEST This field is required. | | Callout | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The log category level for callouts. Includes the request-response XML that the server is sending and receiving from an external Web service. The request-response XML is useful when debugging issues related to SOAP API calls. The following are valid values. - NONE - ERROR - WARN - INFO - DEBUG - FINE - FINER - FINEST This field is required. | | Database | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The log category for database activity. Includes information about database activity, including every DML statement or inline SOQL or SOSL query. The following are valid values. - NONE - ERROR - WARN - INFO - DEBUG - FINE - FINER - FINEST This field is required. | | dataAccess | Type ApexLogLevel (enumeration of type string) Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The log category level for rules and policy information for objects accessed from the UI, which can be used to determine why an object isn’t accessible.The following are valid values. - NONE - ERROR - WARN - INFO - DEBUG - FINE - FINER - FINEST \> | | DeveloperName | Type string Properties Filter, Group, Sort Description The developer’s internal name for the debug level. Also displays in the Developer Console and in Setup. Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The language of the MasterLabel. Valid values are: - 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 Spanish (Mexico) defaults to Spanish for customer-defined translations. - Swedish: sv - Thai: th The Salesforce user interface is fully translated to Thai, but Help is in English. | | MasterLabel | Type string Properties Filter, Group, Sort Description Reserved for future use. However, this field is required and must contain a value. We suggest that you use the same value used for DeveloperName. | | nba | Type ApexLogLevel (enumeration of type string) Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The log category level for Einstein Next Best Action activity, including strategy execution details from Strategy Builder. The following are valid values. - NONE - ERROR - WARN - INFO - DEBUG - FINE - FINER - FINEST \> | | System | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The log category level for calls to all system methods, such as the System.debug method. The following are valid values. - NONE - ERROR - WARN - INFO - DEBUG - FINE - FINER - FINEST This field is required. | | Validation | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The log category level for validation rules. Includes information about validation rules, such as the name of the rule, or whether the rule evaluated true or false. The following are valid values. - NONE - ERROR - WARN - INFO - DEBUG - FINE - FINER - FINEST This field is required. | | Visualforce | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The log category level for Visualforce. Includes information about Visualforce events, including serialization and deserialization of the view state or the evaluation of a formula field in a Visualforce page. The following are valid values. - NONE - ERROR - WARN - INFO - DEBUG - FINE - FINER - FINEST This field is required. | | Wave | Type ApexLogLevel (enumeration of type string) Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The log category level for CRM Analytics. Includes information such as template processing errors and rules execution summaries. The following are valid values. - NONE - ERROR - WARN - INFO - DEBUG - FINE - FINER - FINEST \> | | Workflow | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The log category level for workflow rules. Includes information for workflow rules, such as the rule name and the actions taken. This field is required. The following are valid values. - NONE - ERROR - WARN - INFO - DEBUG - FINE - FINER - FINEST | ## Usage If you delete a debug level, all the trace flags that use it are deleted. # DelegateGroup Represents a Delegate Group for queries. This object is available in Tooling API version 57.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description The unique developer name for the delegate group. | | IsLoginAccessEnabled | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates login access is enabled for the developer group. The default value is false. | | Name | Type string Properties Create, Filter, Group, idLookup, Sort, Update Description The label for the developer group. | # DelegateGroupGrant Represents a Delegate Group Grant, indicating permissions granted to a delegate group. This object is available in Tooling API version 57.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | DelegateGroupId | Type reference Properties Create, Filter, Group, Sort, Update Description The id for the associated delegate group. | | GrantedId | Type reference Properties Create, Filter, Group, Nillable, Sort Description The id for the associated object granted to the delegate group. This field is a polymorphic relationship field. Relationship Name null Relationship Type Lookup Refers To CustomObject, Group, PermissionSet, PermissionSetGroup, Profile, User, UserRole | | KeyPrefix | Type string Properties Create, Defaulted on create, Filter, Group, Nillable, Sort Description The prefix of the object id that designates the object type. | # DelegateGroupMember Represents users assigned to the delegate group This object is available in Tooling API version 57.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | DelegateGroupId | Type reference Properties Create, Filter, Group, Sort, Update Description The id of the associated delegate group. | | UserOrGroupId | Type reference Properties Create, Filter, Group, Nillable, Sort Description The reference indicating the user id of the delegated administrator for the delegate group. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note User is the only valid value for this field. Group is reserved for future development. This field is a polymorphic relationship field. Relationship Name null Relationship Type Lookup Refers To Group, User | # DeployDetails A complex type that contains detailed XML for any compile errors reported in the asynchronous request defined by a ContainerAsyncRequest object. Replaces the JSON field CompilerErrors in Tooling API version 31.0 and later. ## Fields | Field | Details | | --- | --- | | componentFailures | Type string Description The line number, component name and a short description for any compile errors. For example: 5 myApex invalid name 'abc' 10 myApex2 invalid type 'hello' | # DeployRequest Uses file representations of metadata components to create, update, or delete those components in a Salesforce org. This object is available in API version 49.0 and later. ## Supported SOAP Calls describeSObjects(), query(), retrieve(). ## Supported REST HTTP Methods GET, HEAD, Query ## Special Access Rules Your client application must be logged in with the Modify Metadata Through Metadata API Functions OR Modify All Data permission. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note If a user requires access to metadata but not to data, enable the [Modify Metadata Through Metadata API Functions](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_modify_metadata_perm.htm) permission. Otherwise, enable the Modify All Data permission. ## Fields | Field | Details | | --- | --- | | AllowMissingFiles | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If files that are specified in package.xml are not in the .zip file, specifies whether a deployment can still succeed (true) or not (false).Do not set this argument to true for deployment to production orgs. The default value is false. | | AutoUpdatePackage | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If a file is in the .zip file but not specified in package.xml, specifies whether the file is automatically added to the package (true) or not (false). A retrieve() is issued with the updated package.xml that includes the .zip file. Do not set this argument to true for deployment to production orgs. The default value is false. | | CanceledById | Type reference Properties Filter, Group, Nillable, Sort Description The ID of the user who canceled the deployment. This is a relationship field. Relationship Name CanceledBy Relationship Type Lookup | | ChangeSetName | Type string Properties Filter, Group, Nillable, Sort Description Specifies the name of the change set for the deployment. | | CheckOnly | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether this deployment is being used to check the validity of the deployed files without making any changes in the organization (true) or not (false). A check-only deployment does not deploy any components or change the organization in any way. The default value is false. | | CompletedDate | Type dateTime Properties Filter, Nillable, Sort Description Timestamp for when the deployment process ended. | | DeployTestResults | Type QueryResult Properties Filter, Nillable, Sort Description Specifies the deployment test result. | | ErrorMessage | Type string Properties Filter, Nillable, Sort Description Message corresponding to the values in the ErrorStatusCode field, if any. | | ErrorStatusCode | Type QueryResult Properties Filter, Group, Nillable, Sort Description If an error occurred during the deploy() call, a status code is returned, and the message corresponding to the status code is returned in the ErrorMessagefield.For a description of each StatusCode value, see “StatusCode” in the [SOAP API Developer Guide](https://developer.salesforce.com/docs/atlas.en-us.264.0.api.meta/api/sforce_api_quickstart_intro.htm). | | IgnoreWarnings | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Specifies whether a deployment should continue even if the deployment generates warnings (true) or not (false).Do not set this argument to true for deployments to production organizations. The default value is false. | | NumberComponentErrors | Type int Properties Filter, Group, Nillable, Sort Description The number of components that generated errors during this deployment. | | NumberComponentsDeployed | Type int Properties Filter, Group, Nillable, Sort Description The number of components deployed in the deployment process. Use this value with the NumberComponentsTotal value to get an estimate of the deployment’s progress. | | NumberComponentsTotal | Type int Properties Filter, Group, Nillable, Sort Description The total number of components in the deployment. Use this value with the NumberComponentsDeployed value to get an estimate of the deployment’s progress. | | NumberTestErrors | Type int Properties Filter, Group, Nillable, Sort Description The number of Apex tests that have generated errors during this deployment. | | NumberTestsCompleted | Type int Properties Filter, Group, Nillable, Sort Description The number of completed Apex tests for this deployment. Use this value with the NumberTestsTotal value to get an estimate of the deployment’s test progress. | | NumberTestsTotal | Type int Properties Filter, Group, Nillable, Sort Description The total number of Apex tests for this deployment. Use this value with the NumberTestsCompleted value to get an estimate of the deployment’s test progress. The value in this field is not accurate until the deployment has started running tests for the components being deployed. | | PurgeOnDelete | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether to purge on delete (true) or not (false). The default value is false. | | RollbackOnError | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether any failure causes a complete rollback (true) or not (false). If false, whatever set of actions can be performed without errors are performed, and errors are returned for the remaining actions. This parameter must be set to true if you are deploying to a production organization. The default value is false. | | RunTestsEnabled | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether Apex tests were run as part of this deployment (true) or not (false). Tests are either automatically run as part of a deployment or can be set to run in DeployOptions for the deploy() call. For information on when tests are automatically run, see Running Tests in a Deployment. The default value is false. | | SinglePackage | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether to deploy as a single package (true) or not (false) The default value is false. | | StartDate | Type dateTime Properties Filter, Nillable, Sort Description Timestamp for when the deployment process began. | | StateDetail | Type string Properties Filter, Nillable, Sort Description Indicates which component is being deployed or which Apex test class is running. | | Status | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The current state of the deployment. Possible values are:  - Canceled - Canceling - Failed - InProgress - Pending - Succeeded - SucceededPartial | | TestLevel | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates which tests to run. Possible values are: - NoTestRun - RunAllTestsInOrg - RunLocalTests - RunSpecifiedTests | | Type | Type picklist Properties Defaulted on create, Filter, Group, Restricted picklist, Sort Description The type of deployment to perform. Possible values are: - Api (default) - Changeset | # DocProcDefinition Represents an Intelligent Document Processing (IDP) definition, which holds the identity and type of the definition. The versioned processing payload is stored on the child DocProcDefinitionVer object. This object is available in API version 68.0 and later. ## Supported Calls create(), delete(), describeSObjects(), query(), retrieve(), update() ## Special Access Rules This object is available only if your org has one of these: - The FlowDocumentProcessing platform license - The FlowDocumentProcessingAddOn add-on license ## Fields | Field | Details | | --- | --- | | Description | Type textarea Properties Create, Nillable, Update Description The description of the document processing definition. | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description The unique name of the document processing definition 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. | | LastUsedVersionNumber | Type int Properties Create, Filter, Group, Nillable, Sort, Update Description The highest version number ever allocated for this definition. Used to allocate the next version number. | | MasterLabel | Type string Properties Create, Filter, Group, idLookup, Sort, Update Description The label for the document processing definition. | | Type | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The definition type: data extraction or classification. Possible values are: - Classification - DataExtraction—Data Extraction | # DocProcDefinitionVer Represents an immutable version of an Intelligent Document Processing (IDP) definition (DocProcDefinition). Multiple versions of the same definition can be active at the same time. A version is identified by its parent definition and VersionNumber. This object is available in API version 68.0 and later. ## Supported Calls create(), delete(), describeSObjects(), query(), retrieve(), update() ## Special Access Rules This object is available only if your org has one of these: - The FlowDocumentProcessing platform license - The FlowDocumentProcessingAddOn add-on license ## Fields | Field | Details | | --- | --- | | DocProcDefinitionId | Type reference Properties Create, Filter, Group, Sort Description The parent document processing definition that owns this version. This field is a relationship field. Relationship Name DocProcDefinition Relationship Type Master-detail Refers To DocProcDefinition (the master object) | | ExternalServiceRegistrationId | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description The External Service Registration that backs this definition version. This field is a relationship field. Relationship Name ExternalServiceRegistration Refers To ExternalServiceRegistration | | Metadata | Type textarea Properties Create, Nillable, Update Description A map of custom key-value pairs serialized as JSON. | | MlModelName | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description The IDP model identifier used for this version. Maps to an LLM Gateway model through the supported-models mapping. | | SchemaDefinition | Type textarea Properties Create, Nillable, Update Description The schema definition in JSON format. | | Status | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The lifecycle status of the version: draft, active, or inactive. Possible values are: - Active - Draft - Inactive | | VersionNumber | Type int Properties Create, Filter, Group, Sort, Update Description The version number, unique within a definition. | # Document Represents a file that a user has uploaded. Unlike Attachment records, documents are not attached to a parent object. Available in Tooling API version 38.0 and later. ## Supported SOAP Calls getDeleted(), getUpdated(), query(), retrieve(), search() ## Supported REST HTTP Methods GET ## Limitations [SOSL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_sosl_limits.htm "Two Tooling API objects, EntityDefinition and FieldDefinition, have some SOSL limitations. ExternalString and MetadataComponentDependency (Beta) don’t support SOSL searches.") ## Fields | Field | Details | | --- | --- | | AuthorId | Type reference Properties Filter, Group, Sort Description ID of the user who is responsible for the document. | | Body | Type base64 Properties Nillable Description Required. Encoded file data. If specified, then do not specify a URL. | | BodyLength | Type int Properties Filter, Group, Sort Description Size of the file (in bytes). If specified, then do not specify a URL. | | ContentType | Type string Properties Filter, Group, Nillable, Sort Description Type of content. Label is **Mime Type**. Limit: 120 characters. If the Don't allow HTML uploads as attachments or document records security setting is enabled for your organization, you cannot upload files with the following file extensions: .htm, .html, .htt, .htx, .mhtm, .mhtml, .shtm, .shtml, .acgi, .svg. | | Description | Type textarea Properties Filter, Group, Nillable, Sort Description Text description of the document. Limit: 255 characters. | | DeveloperName | Type string Properties Filter, Group, 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 organization. Label is **Document Unique Name**. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance may slow while Salesforce generates one for each record. | | FolderId | Type reference Properties Filter, Group, Sort Description Required. ID of the folder that contains the document. | | FullName | Type string 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. | | IsBodySearchable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether the contents of the object can be searched using a SOSL FIND call. The ALL FIELDS search group includes the content as a searchable field. | | IsInternalUseOnly | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether the object is only available for internal use (true) or not (false). Label is **Internal Use Only**. | | IsPublic | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether the object is available for external use (true) or not (false). Label is **Externally Available**. | | Keywords | Type string Properties Filter, Group, Nillable, Sort Description Keywords. Limit: 255 characters. | | LastReferencedDate | Type dateTime Properties Filter, Nillable, Sort Description The timestamp for when the current user last viewed a record related to this record. | | LastViewedDate | Type dateTime Properties Filter, Nillable, Sort Description The timestamp for when the current user last viewed this record. If this value is null, this record might only have been referenced (LastReferencedDate) and not viewed. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | Metadata | Type complexvalue Properties Create, Nillable, Update Description The metadata for this object as defined in the 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. | | Name | Type string Properties Filter, Group, idLookup, Sort Description Required. Name of the document. Label is **Document Name**. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The namespace prefix that is 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 Developer Edition orgs, NamespacePrefix is set to the namespace prefix of the org for all objects that support it, unless 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 orgs that are not Developer Edition orgs, NamespacePrefix is set only for objects that are part of an installed managed package. All other objects have no namespace prefix. | | Type | Type string Properties Filter, Group, Nillable, Sort Description File type of the document. In general, the values match the file extension for the type of document (such as pdf or jpg). Label is **File Extension**. | | Url | Type string Properties Filter, Group, Nillable, Sort Description URL reference to the file (used instead of storing it in the database). If specified, do not specify the Body or BodyLength. | # DomainProvision Represents provisioned changes to custom domains. This object is available in API version 50.0 and later. Custom domains are domains that you own, such at https://www.example.com, that serve your site content. When you save a change to a custom domain, Salesforce provisions the updated domain and a corresponding DomainProvision record is created. The latest DomainProvision record for a [Domain](https://developer.salesforce.com/docs/atlas.en-us.264.0.object_reference.meta/object_reference/sforce_api_objects_domain.htm) represents the current state of the domain. ## Supported SOAP API Calls describeSObjects(), query(), retrieve() ## Supported REST API Methods GET, HEAD, Query ## Special Access Rules Only users with the Salesforce Integration user permission can access this object. ## Fields | Field | Details | | --- | --- | | CnameTarget | Type string Properties Filter, Group, Nillable, Sort Description Represents the canonical name (CNAME) of the external host or server for this domain. If you use a non-Salesforce provider, such as your own external server or CDN provider, to serve your domain, this field points to the CNAME of the external provider. | | IsActive | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Represents whether the provisioning for this domain is processing or complete (true) or not (false). When you activate a provisioned domain, this field is set to false. The default value is false. | | ProvisionEndDate | Type dateTime Properties Filter, Nillable, Sort Description Represents when the provisioning process was finished. | | ProvisionFinalizeDate | Type dateTime Properties Filter, Nillable, Sort Description Represents when the provisioning process was canceled or when the provisioned domain was activated. | | ProvisionStartDate | Type dateTime Properties Filter, Nillable, Sort Description Represents when the provisioning process started. | | TargetCdnCertificate | Type string Properties Filter, Group, Nillable, Sort Description If the domain is served on the Salesforce Content Delivery Network (CDN), represents the certificate that serves this domain. If your domain uses another domain configuration option, this field is null. | | TargetDomainName | Type string Properties Filter, Group, Nillable, Sort Description Represents the domain name, such as www.example.com. | # DuplicateJobDefinition Setup object defining a job that identifies duplicate record items globally. Available in Tooling API version 42.0 and later. ## Supported SOAP Calls create(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods GET and POST ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description The developer name of the DuplicateJobDefinition. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The language in the user’s personal settings. | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description The label of the DuplicateJobDefinition. | | SobjectSubtype | Type picklist Properties Create, Defaulted on create, Filter, Group, Restricted picklist, Sort, Update Description The object subtype. Valid values are PersonAccount and None. | | SobjectType | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort Description The object type:Account, Contact, or Lead. | # DuplicateJobMatchingRuleDefinition Setup object specifying a MatchingRule to use with DuplicateJob instances that share a DuplicateJobDefinition. Available in Tooling API version 42.0 and later. ## Supported SOAP Calls create(), query(), retrieve() ## Supported REST HTTP Methods GET and POST ## Fields | Field | Details | | --- | --- | | DuplicateJobDefinitionId | Type reference Properties Create, Filter, Group, Sort Description The ID of the duplicate job definition. | | MatchingRuleId | Type reference Properties Create, Filter, Group, Nillable, Sort Description The ID of the matching rule specified for a duplicate job. | # EmailTemplate Represents a template for an email, mass email, list email, or Sales Engagement email. Supported in first-generation managed packages only. This object is available in API version 32.0 and later. ## Supported SOAP Calls create(), getDeleted(), getUpdated(), query(), retrieve(), search() ## Supported REST HTTP Methods DELETE, GET, PATCH, POST ## Fields | Field | Details | | --- | --- | | ApiVersion | Type double Properties Filter, Nillable, Sort Description The API version if this is a Visualforce email template. Every Visualforce email template has an API version specified at creation. | | Description | Type string Properties Filter, Nillable, Sort Description The email template description. This can be useful to describe the reason for creating the template or its intended use. | | FullName | Type string Properties Create, Group, Nillable Description The unique name used as the template 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. 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. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | Metadata | Type EmailTemplateMetadata Properties Create, Nillable, Update Description Email template metadata. 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. | | Name | Type string Properties Filter, Group, idLookup, Sort Description The email template name. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description A unique string to distinguish this template from any others. For example, if this template is being using by a flow, use the NamespacePrefix to uniquely identify the templates in multiple flow instances. | | RelatedEntityType | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort Description When UIType is 2 (Lightning Experience) or 3 (Lightning ExperienceSample), RelatedEntityType indicates which entities this template can be used with. Valid values are the entity API name: "Account" for account, "Contact" for contact, "Opportunity" for opportunity, "Lead" for lead, and so on. The value can be any entity the user has read access to (including custom entities) but not virtual entities, setup entities, or platform entities. No restrictions exist at the schema level. | | Subject | Type string Properties Group, Nillable, Sort Description The email subject. The limit is 1,000 characters for Lightning email templates and 230 characters for Classic email templates. | | UIType | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort Description Indicates the user interface where this template is usable. Valid values are: 1 (Salesforce Classic), 2 (Lightning Experience), and 3 (Lightning Experience Sample). | # EmbeddedServiceBranding Represents branding for each Embedded Service deployment. Available in Tooling API version 39.0 and later. ## Supported SOAP Calls create(), delete(), describe(), query(), retrieve(), update() ## Supported REST HTTP Methods DELETE, GET, HEAD, PATCH, POST, PUT, Query ## Fields | Field | Details | | --- | --- | | ContrastInvertedColor | Type string Properties Filter, Group, Nillable Sort Description Accent branding color used in the embedded component, displayed as a hexadecimal value. Changes made to this field in the API aren’t reflected in the embedded component. Available in API version 43.0 and later. | | ContrastPrimaryColor | Type string Properties Filter, Group, Nillable Sort Description Accent branding color used in the embedded component, displayed as a hexadecimal value. | | DeveloperName | Type string Properties Filter, Group, Sort Description The unique name of the branding component. 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 is automatically generated, but you can supply your own value if you create the record using the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance may slow while Salesforce generates one for each record. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | Font | Type string Properties Create, Filter, Group, Sort, Update Description Font used in the text of the embedded component. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated EmbeddedServiceBranding in Metadata API. The full name can include a namespaceprefix. 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. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the embedded component. Possible values are: - ar—Arabic - da—Danish - de—German - en\_US—English - es—Spanish - fi—Finnish - fr—French - iw—Hebrew - ja—Japanese - ko—Korean - nl\_BE—Dutch (Belgium) - no—Norwegian - pt\_BR—Portuguese (Brazil) - ru—Russian - sv—Swedish - th—Thai - ur—Urdu - zh\_CN—Chinese (Simplified) - zh\_TW—Chinese (Traditional) | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description Label for the embedded component. | | Metadata | Type [EmbeddedServiceBranding](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_embeddedservicebranding.htm) Properties Create, Nillable, Update Description The embedded service branding's metadata. 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 Properties Filter, Group, Nillable, Sort Description The namespace prefix that is 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 Developer Edition orgs, NamespacePrefix is set to the namespace prefix of the org for all objects that support it, unless 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 orgs that are not Developer Edition orgs, NamespacePrefix is set only for objects that are part of an installed managed package. All other objects have no namespace prefix. | | NavBarColor | Type string Properties Create, Filter, Group, Sort, Update Description Color used for the navigation bar in the embedded component. | | NavBarTextColor | Type string Properties Filter, Group, Nillable, Sort Description Color used for the text and icons in the header in the embedded component, displayed as a hexadecimal value. Available in API version 49.0 and later. | | PrimaryColor | Type string Properties Create, Filter, Group, Sort, Update Description Primary branding color used in the embedded component. | | SecondaryColor | Type string Properties Create, Filter, Group, Sort, Update Description Secondary branding color used in the embedded component. | | SecondaryNavBarColor | Type string Properties Filter, Group, Nillable, Sort Description Secondary branding color used for the header in the embedded component, displayed as a hexadecimal value. It applies to the header in the chat feature when it's trying to reconnect because of lost internet connection. Available in API version 49.0 and later. | # EmbeddedServiceConfig Represents a setup node for creating an Embedded Service deployment. Available in API version 38.0 and later. ## Supported Calls create(), delete(), describeSObjects(), describeLayout(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods GET, POST, PATCH, DELETE ## Fields | Field | Details | | --- | --- | | AreGuestUsersAllowed | Type boolean Properties Defaulted on Create, Filter, Group, Sort Description Specifies whether a user must be logged in to access an embedded component. Available in API version 45.0 and later. | | AuthMethod | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Type of login method selected for this Embedded Service deployment. Valid values are: - CommunitiesLogin - CustomLogin Available in API version 43.0 and later. | | BrandingId | Type reference Properties Filter, Group, Nillable, Sort Description The developer name of the associated BrandingSet. Used only for Embedded Service Deployments of the Messaging type. Used only when DeploymentFeature is EmbeddedMessaging. Available in API version 52.0 and later. This is a relationship field. Relationship Name Branding Relationship Type Lookup Refers To BrandingSet | | CustomMinimizedComponentId | Type reference Properties Filter, Group, Nillable, Sort Description Removed. The custom Lightning component that’s used for the minimized state for this Embedded Chat deployment. Available in API version 38.0 to 45.0. | | DeveloperName | Type string Properties Filter, Group, Sort Description Unique name for the Embedded Service configuration setup node. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | DeploymentFeature | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Where the Embedded Service deployment is used. After the value is set, it can’t be updated. Available in API version 52.0 and later. Possible values are: - EmbeddedMessaging - FieldService - Flows - LiveAgent - None | | DeploymentType | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Set a conversation type for your embedded deployment. This field is available in version 51.0 and later. Possible values are: - Mobile - Web | | FullName | Type string Properties Create, Group, Nillable Description The unique name used for this Embedded Service deployment. 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. 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. | | IsEnabled | Type boolean Properties Defaulted on Create, Filter, Group, Sort Description Specifies if the Embedded Service Deployment is enabled for use. Available in API version 52.0 and later. | | isTermsAndConditionsEnabled | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether Terms and Conditions are displayed. Displaying Terms and Conditions is supported if the deploymentFeature is either EmbeddedMesssaging or LiveAgent. Available in API version 59.0 and later. The default value is false. | | isTermsAndConditionsRequired | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether acceptance of the Terms and Conditions is required before starting a chat. Displaying Terms and Conditions is supported if the deploymentFeature is either EmbeddedMesssaging or LiveAgent. Available in API version 59.0 and later. The default value is false. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description Languages supported in the Embedded Service deployment. - 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 Spanish (Mexico) defaults to Spanish for customer-defined translations. - Swedish: sv - Thai: th The Salesforce user interface is fully translated to Thai, but Help is in English. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description Name of the embedded service configuration node. | | Metadata | Type mns:EmbeddedServiceConfig Properties Create, Nillable, Update Description The Embedded Service configuration metadata. 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 Properties Filter, Group, Nillable, Sort Description The namespace prefix that is 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 Developer Edition orgs, NamespacePrefix is set to the namespace prefix of the org for all objects that support it, unless 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 orgs that are not Developer Edition orgs, NamespacePrefix is set only for objects that are part of an installed managed package. All other objects have no namespace prefix. | | ShouldHideAuthDialog | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Specifies whether the prompt that the customer login again during a flow is hidden (true) or not (false). When it’s hidden, the customer is taken directly to your login page. This field is set to false by default. Available in API version 43.0 and later. | # EmbeddedServiceCustomComponent Represents a custom component created for an Embedded Service feature. The custom components can be an Aura or Lightning Web Component. This object is available in API version 44.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules This type is available only if Salesforce Experiences and Salesforce Sites are enabled in your org. To access this type, you need the Customize Application user permission. ## Fields | Field | Details | | --- | --- | | CustomComponentId | Type reference Properties Create, Filter, Group, Sort, Update Description The unique ID of the [LightningComponentBundle](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_lightningcomponentbundle.htm "Represents a Lightning web component bundle. A bundle contains a Lightning web component and its related resources. Available in API version 45.0 and later.") or [AuraDefinitionBundle](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_auradefinitionbundle.htm "Represents a Lightning Aura component definition bundle, such as a component or application bundle. A bundle contains a Lightning Aura component definition and all its related resources. Available in API version 32.0 and later.") component to be used in the Embedded Service. | | CustomComponentType | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The embedded component type associated with the chosen Feature that you want to customize. The possible values are: - LA\_ChatHeader—Not supported for [AuraDefinitionBundle](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_auradefinitionbundle.htm "Represents a Lightning Aura component definition bundle, such as a component or application bundle. A bundle contains a Lightning Aura component definition and all its related resources. Available in API version 32.0 and later.") components - LA\_Minimized - LA\_PlainTextChatMessage—Not supported for [AuraDefinitionBundle](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_auradefinitionbundle.htm "Represents a Lightning Aura component definition bundle, such as a component or application bundle. A bundle contains a Lightning Aura component definition and all its related resources. Available in API version 32.0 and later.") components - LA\_Prechat | | EmbeddedServiceConfigId | Type reference Properties Create, Filter, Group, Sort Description The unique ID of the [EmbeddedServiceConfig](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_embeddedserviceconfig.htm "Represents a setup node for creating an Embedded Service deployment. Available in API version 38.0 and later.") object that this custom component is associated with. | | Feature | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The Embedded Service feature that uses the custom component. The possible values are: - Base - ChannelMenu - FieldService - Flows - LiveAgent - NotInUse | ## Usage Each Embedded Service feature has a defined set of components that can be customized. You can customize the feature using your own Lightning Web Components or Aura Components. Right now, you can only customize components of the Embedded Service Chat feature. For example, you can customize the prechat form, minimized state, chat bubble, and chat header of a Chat widget. To customize a component, link the Lightning Web Component or Aura Component to an Embedded Service Custom Component object. Then link an Embedded Service Configuration to this object. The Embedded Service Configuration represents the Chat widget that you want to customize. # EmbeddedServiceCustomization Represents a mapping between the EmbeddedServiceCustomization record parent and the EmbeddedServiceConfiguration or EmbeddedServiceMenuSettings, for a set of Embedded Service resources. Each resource is set of customizations applied via an uploaded static resource for your Embedded Chat. This object is available in API version 52.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | CustomizationName | Type string Properties Create, Filter, Group, Sort, Update Description The name of the custom set of resources you create for your embedded component. | | Description | Type textarea Properties Create, Filter, Nillable, Sort, Update Description Used to describe a set of custom resources. | | ParentId | Type reference Properties Create, Filter, Group, Sort Description The ID of the EmbeddedServiceConfig or EmbeddedServiceMenuSettings parent record. This is a polymorphic relationship field. Relationship Name Parent Relationship Type Lookup Refers To EmbeddedServiceConfig, EmbeddedServiceMenuSettings | # EmbeddedServiceCustomLabel Represents a customized label that appears in the embedded component for a particular Embedded Service deployment. Labels can be customized for both Embedded Chat and embedded Appointment Management (beta). Available in API version 44.0 and later. ## Supported Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods DELETE, GET, POST, PUT, PATCH ## Fields | Field | Details | | --- | --- | | CustomLabel | Type CustomLabel Properties Filter, Group, Nillable, Sort Description The developer name of the custom label that appears in the embedded component. | | CustomLabelId | Type ID Properties Create, Filter, Group, Nillable, Sort, Update Description The label record ID for the custom label. | | EmbeddedServiceConfig | Type EmbeddedServiceConfig Properties Filter, Group, Nillable, Sort Description The EmbeddedServiceConfig setup associated with the Embedded Service deployment. | | EmbeddedServiceConfigId | Type ID Properties Create, Filter, Group, Nillable, Sort Description Unique ID for the Embedded Service deployment. | | LabelKey | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The type of label for this embedded component. The value corresponds to the label within a label group (substate of chat state or page type). | # EmbeddedServiceFieldService Represents a setup node for creating an embedded Appointment Management (beta) deployment. Available in Tooling API version 43.0 and later. ## Supported Calls create(), delete() describeLayout(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods GET, POST, PATCH, DELETE ## Fields | Field | Details | | --- | --- | | AppointmentBookingFlowName | Type string Properties Filter, Group, Nillable, Sort Description Name of the appointment booking flow for this Embedded Service deployment. | | CancelApptBookingFlowName | Type string Properties Filter, Group, Nillable, Sort Description Name of the appointment cancellation flow for this embedded Appointment Management (beta) deployment. | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description Unique name for the embedded Appointment Management configuration setup node. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | EmbeddedServiceConfigId | Type EmbeddedServiceConfig Properties Create, Filter, Group, Sort, Update Description Unique ID for the embedded Appointment Management (beta) deployment. | | Enabled | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Specifies whether Field Service is enabled for this Embedded Service deployment (true) or not (false). | | FieldServiceConfirmCardImg | Type string Properties Filter, Group, Nillable, Sort Description URL of the image used for the confirmation card in embedded Appointment Management (beta). | | FieldServiceHomeImg | Type string Properties Filter, Group, Nillable, Sort Description URL of the image used for the home screen in embedded Appointment Management (beta). | | FieldServiceLogoImg | Type string Properties Filter, Group, Nillable, Sort Description URL of the logo used for the home screen in embedded Appointment Management (beta). | | FullName | Type string Properties Create, Group, Nillable Description The unique name used for this Embedded Service deployment. 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. 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. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description Languages supported in the Embedded Service deployment. - 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 Spanish (Mexico) defaults to Spanish for customer-defined translations. - Swedish: sv - Thai: th The Salesforce user interface is fully translated to Thai, but Help is in English. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description Name of the Embedded Service deployment. | | Metadata | Type mns:EmbeddedServiceFieldService Properties Create, Nillable, Update Description The embedded Appointment Management (beta) metadata. 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. | | ModifyApptBookingFlowName | Type string Properties Filter, Group, Nillable, Sort Description Name of the appointment modification flow for this embedded Appointment Management (beta) deployment. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The namespace prefix that is 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 Developer Edition orgs, NamespacePrefix is set to the namespace prefix of the org for all objects that support it, unless 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 orgs that are not Developer Edition orgs, NamespacePrefix is set only for objects that are part of an installed managed package. All other objects have no namespace prefix. | | ShouldShowExistingAppointment | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Specifies whether to display a button on the home screen for customers to access their existing appointments (true) or not (false) for embedded Appointment Management (beta). | | ShouldShowNewAppointment | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Specifies whether to display a button on the home screen for customers to create a new appointment (true) or not (false) for embedded Appointment Management (beta). | # EmbeddedServiceFlow Represents a Flow Definition used by an Embedded Service deployment. This object is available in API version 45.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules To access this type, you need the Customize Application user permission. ## Fields | Field | Details | | --- | --- | | EmbeddedServiceConfigId | Type reference Properties Create, Filter, Group, Sort Description The unique ID of [EmbeddedServiceConfig](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_embeddedserviceconfig.htm "Represents a setup node for creating an Embedded Service deployment. Available in API version 38.0 and later.") (the Embedded Service deployment). | | Feature | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The Embedded Service feature that uses this flow. This is a read-only field. Possible values are: - FieldService - Flows - LiveAgent | | Flow | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The flow definition name. Use one of the listed standard flows or an ID of a [FlowDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_flowdefinition.htm "The parent of a set of flow versions.") that you created. Possible standard flow values are: - runtime\_sales\_see\_\_SEE - setup\_service\_experience\_\_Create\_Case - setup\_service\_experience\_\_Verify\_Cust | | FlowType | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The flow type used in a Flow (FL), Appointment Booking (FS), or Chat (LA) feature of Embedded Service. Possible values are: - FL\_Flow - FS\_CancelAppointment - FS\_ModifyAppointment - FS\_NewAppointment - LA\_Survey | | IsAuthenticationRequired | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Specifies whether authentication is required for this flow (true) or not (false). Authentication is required if the FlowType is an Appointment Booking type. Default is false. | ## Usage The EmbeddedServiceFlow specifies which FlowDefinitions are used by the Embedded Service features Appointment Booking, Chat, and Flow. A [FlowDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_flowdefinition.htm "The parent of a set of flow versions.") executes a [Flow](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_flow.htm "Use the Flow object to retrieve and update specific flow versions.") object. A FlowDefinition can have more than one version of a Flow object but only the active one is executed. Only certain ProcessType values of the Flow object are supported depending on which FlowType you select in the EmbeddedServiceFlow object. - Appointment Booking features, where the FlowType starts with “FS”, only support FieldServiceWeb and Appointments values for ProcessType. - Chat features, where the FlowType starts with “LA”, only support the Flow value for ProcessType. - Flow features, where the FlowType starts with “FL”, only support the Survey value for ProcessType. # EmbeddedServiceFlowConfig Represents whether an Embedded Service Flow feature is enabled or not. This object is available in API version 45.0 and later. ## Supported SOAP API Calls create(), delete(), describeLayout(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules To access this type, you need the Customize Application user permission. ## Fields | Field | Details | | --- | --- | | EmbeddedServiceConfigId | Type reference Properties Filter, Group, Sort Description The unique ID of an [EmbeddedServiceConfig](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_embeddedserviceconfig.htm "Represents a setup node for creating an Embedded Service deployment. Available in API version 38.0 and later.") (the Embedded Service deployment) that the flow config is associated with. | | Enabled | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Specifies whether the embedded flow is enabled (true) or not (false). Defaults to false. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the parent object [EmbeddedServiceConfig in Metadata API](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_embeddedserviceconfig.htm "HTML (New Window)"). The full name can include a namespaceprefix. 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. | | Metadata | Type [EmbeddedServiceFlowConfig](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_embeddedserviceconfig.htm) Properties Create, Nillable, Update Description The embedded service flow config's metadata. 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. | ## Usage To get a Flow feature working, you need three things: an [EmbeddedServiceConfig](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_embeddedserviceconfig.htm "Represents a setup node for creating an Embedded Service deployment. Available in API version 38.0 and later.") deployment, an EmbeddedServiceFlowConfig record, and an [EmbeddedServiceFlow](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_embeddedserviceflow.htm "Represents a Flow Definition used by an Embedded Service deployment. This object is available in API version 45.0 and later.") record with the type set to FL\_Flow. The EmbeddedServiceFlowConfig record controls whether the Flow feature associated with this deployment is enabled or disabled. # EmbeddedServiceLiveAgent Represents a setup node for creating an Embedded Chat deployment. Available in Tooling API version 38.0 and later. ## Supported Calls create(), delete() describeLayout(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods DELETE, GET, HEAD, PATCH, POST, PUT, Query ## Special Access Rules To access EmbeddedServiceLiveAgent, your org must have Service Cloud with Chat enabled. ## Fields
Field Details
AvatarImg
Type
url
Properties
Filter, Group, Nillable, Sort
Description
URL of the image used as the agent avatar image. Available in API version 43.0 and later.
CustomPrechatComponent
Type
string
Properties
Filter, Group, Nillable, Sort
Description
Removed. The ID of the custom Lightning Component that’s used for the pre-chat page in this embedded deployment. Available in API versions 38.0 to 45.0. Removed in API version 46.0 and later.
DeveloperName
Type
string
Properties
Filter, Group, Sort
Description
The unique name for the EmbeddedServiceLiveAgent object.
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 is automatically generated, but you can supply your own value if you create the record using the API.
Note

Note

When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance may slow while Salesforce generates one for each record.

Note

Note

Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field.

EmbeddedServiceConfigId
Type
reference
Properties
Filter, Group, Sort
Description
Unique name for the embedded chat deployment ID.
Enabled
Type
boolean
Properties
Defaulted on create, Filter, Group, Sort
Description
Indicates whether this embedded chat deployment is enabled (true). Available in API version 43.0 and later.
FontSize
Type
picklist
Properties
Filter, Group, Restricted picklist, Sort
Description
Font size for the chat window. Available in API version 43.0 and later.
Possible values are:
  • Small
  • Medium
  • Large
Available in API version 43.0 and later.
FullName
Type
string
Properties
Create, Group, Nillable
Description
The unique name used for this embedded chat deployment. 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.
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.
HeaderBackgroundImg
Type
url
Properties
Filter, Group, Nillable, Sort
Description
Removed. URL of the image used for the header background in the embedded chat window. Available in API version 43.0. Removed in API version 49.0 and later.
IsOfflineCaseEnabled
Type
boolean
Properties
Defaulted on create, Filter, Group, Sort
Description
Specifies whether offline support is enabled for this embedded chat deployment (true) or not (false). Available in API version 43.0 and later.
IsQueuePositionEnabled
Type
boolean
Properties
Defaulted on create, Filter, Group, Sort
Description
Specifies whether queue position (displaying the customer’s place in line while they wait for an agent) is enabled for this embedded chat deployment (true) or not (false). Available in API version 43.0 and later.
Language
Type
picklist
Properties
Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort
Description
Languages supported in the embedded chat deployment.
  • 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 Spanish (Mexico) defaults to Spanish for customer-defined translations.
  • Swedish: sv
  • Thai: th The Salesforce user interface is fully translated to Thai, but Help is in English.
LiveAgentChatUrl
Type
url
Properties
Filter, Group, Nillable, Sort
Description
The REST endpoint for Chat. Available in API version 43.0 and later.
LiveAgentContentUrl
Type
url
Properties
Filter, Group, Nillable, Sort
Description
The REST endpoint for Chat content. Available in API version 43.0 and later.
ManageableState
Type
ManageableState enumerated list
Properties
Filter, Group, Nillable, Restricted picklist, Sort
Description
Indicates the manageable state of the specified component that is contained in a package:
  • beta
  • deleted
  • deprecated
  • deprecatedEditable
  • installed
  • installedEditable
  • released
  • unmanaged

Available in API version 43.0 and later.

MasterLabel
Type
string
Properties
Filter, Group, Sort
Description
Name of the embedded chat deployment.
Metadata
Type
mns:EmbeddedServiceLiveAgent
Properties
Create, Nillable, Update
Description
The embedded chat metadata.
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
Properties
Filter, Group, Nillable, Sort
Description
The namespace prefix that is 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 Developer Edition orgs, NamespacePrefix is set to the namespace prefix of the org for all objects that support it, unless 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 orgs that are not Developer Edition orgs, NamespacePrefix is set only for objects that are part of an installed managed package. All other objects have no namespace prefix.

Available in API version 43.0 and later.

OfflineCaseBackgroundImg
Type
string
Properties
Filter, Group, Nillable, Sort
Description
URL of the image used for the background for the offline support case form in an embedded chat window. Available in API version 43.0 and later.
PrechatBackgroundImg
Type
string
Properties
Filter, Group, Nillable, Sort
Description
URL of the image used for the background for the pre-chat form in an embedded chat window. Available in API version 43.0 and later.
PreChatEnabled
Type
boolean
Properties
Defaulted on create, Filter, Group, Sort
Description
Indicates whether the pre-chat form is enabled for this embedded chat deployment.
PrechatJson
Type
string
Properties
Nillable
Description
JSON object of all the fields of the selected pre-chat form in Chat setup. Available in API version 43.0 and later.
Scenario
Type
picklist
Properties
Filter, Group, Restricted picklist, Sort
Description
The type of use case that is selected for the pre-chat form. Valid values are:
  • Basic
  • Sales
  • Service
SmallCompanyLogoImg
Type
url
Properties
Filter, Group, Nillable, Sort
Description
URL of the logo image used with embedded chat. Available in API version 43.0 and later.
WaitingStateBackgroundImg
Type
url
Properties
Filter, Group, Nillable, Sort
Description
URL of the image used for the background image in an embedded chat window while the customer waits to be connected with a support agent. Available in API version 43.0 and later.
## Usage EmbeddedServiceLiveAgent represents a Chat configuration that is added to your web page. The EmbeddedServiceLiveAgent record contains a unique combination of a Chat button and the Chat deployment that the administrator selects during setup. To create an EmbeddedServiceLiveAgent record, create a Chat Deployment, a Chat Button, and an EmbeddedServiceConfig record. Then, set the fields for these records as references on the EmbeddedServiceLiveAgent record. # EmbeddedServiceMenuItem Represents the information needed to configure a Channel Menu item. This object is available in API version 47.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Special Access Rules DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules This type is available only if Salesforce Experiences and Salesforce Sites are enabled in your org. To access this type, you need the Customize Application user permission. ## Fields | Field | Details | | --- | --- | | ChannelId | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description The unique ID of an [EmbeddedServiceConfig](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_embeddedserviceconfig.htm "Represents a setup node for creating an Embedded Service deployment. Available in API version 38.0 and later.") (the Embedded Service deployment) if ChannelType is one of the following. Otherwise, this field is null. - EmbeddedServiceConfig - MessagingChannel | | ChannelType | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The channel the customer uses to contact your business. The possible values are: - CustomURL - EmbeddedServiceConfig - MessagingChannel - Phone | | CustomUrl | Type url Properties Create, Filter, Nillable, Sort, Update Description The custom URL of the menu item if ChannelType is CustomURL. Otherwise, this field is null. | | DisplayOrder | Type int Properties Create, Filter, Group, Sort, Update Description The order that the menu items are displayed in the UI. Only positive values are supported. | | EmbeddedServiceMenuId | Type reference Properties Create, Filter, Group, Sort Description Required. The unique ID of the parent record [EmbeddedServiceMenuSettings](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_embeddedservicemenusettings.htm "Represents a setup node for creating a channel menu deployment. Channel menus list the ways in which customers can contact your business. This object is available in API version 47.0 and later."). | | IconUrl | Type url Properties Create, Filter, Nillable, Sort, Update Description The URL of the icon used for the menu item. | | IsDisplayedOnPageLoad | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Specifies whether the menu item is dynamically displayed (true) or hidden (false) during runtime. The default value is false. | | ItemName | Type string Properties Create, Filter, Group, Sort, Update Description The unique name used on the Setup for admins to identify the Channel Menu item. Conforms to the same properties as a developer name. | | OsOptionsHideInIOS | Type boolean Properties Create, Filter, Update Description Specifies whether to hide the menu item on iOS platforms (true) or not (false). | | OsOptionsHideInLinuxOS | Type boolean Properties Create, Filter, Update Description Specifies whether to hide the menu item on Linux platforms (true) or not (false). | | OsOptionsHideInMacOS | Type boolean Properties Create, Filter, Update Description Specifies whether to hide the menu item on macOS platforms (true) or not (false). | | OsOptionsHideInOtherOS | Type boolean Properties Create, Filter, Update Description Specifies whether to hide the menu item on any other platforms not mentioned here (true) or not (false). | | OsOptionsHideInWindowsOS | Type boolean Properties Create, Filter, Update Description Specifies whether to hide the menu item on Windows platforms (true) or not (false). | | PhoneNumber | Type phone Properties Create, Filter, Group, Nillable, Sort, Update Description The phone number of menu items with ChannelType value Phone. Otherwise, the value is null. | | ShouldOpenUrlInSameTab | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Specifies whether a URL is opened in the same tab (true) or not (false). This field only applies for menu items with ChannelType value CustomURL. | ## Usage The EmbeddedServiceMenuItem object provides configuration information for a Channel Menu. A channel menu lists the ways in which customers can contact your business. A channel menu deployment is tied to a [EmbeddedServiceMenuSettings](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_embeddedservicemenusettings.htm "Represents a setup node for creating a channel menu deployment. Channel menus list the ways in which customers can contact your business. This object is available in API version 47.0 and later.") record, which can have one or more EmbeddedServiceMenuItem objects associated with it. # EmbeddedServiceMenuSettings Represents a setup node for creating a channel menu deployment. Channel menus list the ways in which customers can contact your business. This object is available in API version 47.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeLayout(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules This type is available only if Salesforce Experiences and Salesforce Sites are enabled in your org. To access this type, you need the Customize Application user permission. ## Fields | Field | Details | | --- | --- | | BrandingId | Type reference Properties Filter, Group, Nillable, Sort Description The developer name of the associated BrandingSet. | | DeveloperName | Type string Properties Filter, Group, Sort Description The unique name for the embedded service menu settings. 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 is automatically generated, but you can supply your own value if you create the record using the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance may slow while Salesforce generates one for each record. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated EmbeddedServiceMenuSettings in Metadata API. The full name can include a namespaceprefix. 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. | | IsEnabled | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Specifies whether the channel menu is deployed (true) or not (false). | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the embedded service menu. Possible values are: - ar—Arabic - da—Danish - de—German - en\_US—English - es—Spanish - fi—Finnish - fr—French - iw—Hebrew - ja—Japanese - ko—Korean - nl\_BE—Dutch (Belgium) - no—Norwegian - pt\_BR—Portuguese (Brazil) - ru—Russian - sv—Swedish - th—Thai - ur—Urdu - zh\_CN—Chinese (Simplified) - zh\_TW—Chinese (Traditional) | | ManageableState | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description Label for the embedded service menu setting. In the UI, this field is Channel Menu Deployment Name. | | Metadata | Type [EmbeddedServiceMenuSettings](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_embeddedservicemenusettings.htm) Properties Create, Nillable, Update Description The EmbeddedServiceMenuSettings's metadata. 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 Properties Filter, Group, Nillable, Sort Description The namespace prefix that is 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 Developer Edition orgs, NamespacePrefix is set to the namespace prefix of the org for all objects that support it, unless 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 orgs that are not Developer Edition orgs, NamespacePrefix is set only for objects that are part of an installed managed package. All other objects have no namespace prefix. | ## Usage An EmbeddedServiceMenuSettings record creates a channel menu. A channel menu lists the ways in which customers can contact your business. A channel is created using EmbeddedServiceMenuItem and is a child record of EmbeddedServiceMenuSettings. Here you can specify the Site name, BrandingSet name, and whether the channel menu is deployed or not. The Site field is not exposed in the Tooling API but you can edit it using the following Metadata block. { "FullName" : "embeddedServiceMenuSettingsName", "Metadata" : { "branding" : "brandingSetRecordDevName", "isEnabled" : true, "masterLabel" : "embeddedServiceMenuSettingsName", "site" : "siteRecordDevName" } } # EmbeddedServiceQuickAction Returns a quick action that is associated with an EmbeddedServiceLiveAgent setup. The quick action includes the pre-chat form fields that the embedded chat window displays and shows the order in which the fields are displayed. Available in Tooling API version 39.0 and later. ## Supported SOAP Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods DELETE, GET, POST, PUT, PATCH ## Fields | Field | Details | | --- | --- | | EmbeddedServiceLiveAgentId | Type reference Properties Create, Filter, Group, Sort Description Reference to the embedded chat deployment. | | Order | Type int Properties Create, Filter, Group, Sort, Update Description Order in which this quick action appears in the embedded chat pre-chat form. | | QuickActionDefinitionId | Type reference Properties Create, Filter, Group, Sort, Update Description Reference to a quick action. | | QuickActionType | Type picklist Properties Create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description Quick action type. One of the following values: - Prechat–Pre-chat - OfflineCase–Offline support (Cases) Available in API version 43.0 and later. | # EmbeddedServiceResource Represents a mapping from an EmbeddedServiceCustomization record parent to a set of resources. Each resource is a set of customizations applied via an uploaded static resource for your Embedded Chat. This object is available in API version 50.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | ParentId | Type reference Properties Create, Filter, Group, Sort Description The ID of the EmbeddedServiceCustomization parent record. This is a relationship field. Relationship Name Parent Relationship Type Lookup Refers To EmbeddedServiceCustomization | | ResourceId | Type reference Properties Create, Filter, Group, Sort, Update Description The ID of an uploaded static resource. This is a relationship field. Relationship Name Resource Relationship Type Lookup Refers To StaticResource | | ResourceType | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The resource type to be customized. Possible values are: - ChatInvitation - SettingsFile | # EngagementInsightType Represents the configuration for engagement insight types for voice and video call insights. This object is available in API version 66.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported Calls create(), describeSObjects(), query(), retrieve(), update(), upsert() ## Fields | Field | Details | | --- | --- | | ActivatedDateTime | Type dateTime Properties Create, Filter, Nillable, Sort, Update Description The timestamp when the insight type was activated. | | AdditionalConfig | Type textarea Properties Create, Nillable, Update Description The additional configuration information specific to the insight type. For example, timing configurations for time-based insights and prompt-based configurations for generative insights. | | Category | Type picklist Properties Create, Defaulted on create, Filter, Group, Restricted picklist, Sort, Update Description Required. The category of the insight type. Possible values are: - CUSTOM—Custom insights are created by the admin. - SYSTEM—System insights are provided out-of-the-box by Salesforce. The default value is CUSTOM. | | ChannelType | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The engagement channel used to generate the insight. Possible values are: - Emails - VideoCalls - VoiceCalls The default value is VoiceCalls. | | Description | Type textarea Properties Create, Nillable, Update Description The description of the insight type. | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description Required. The unique name for the EngagementInsightType object. | | ExternalIdentifier | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description The ID generated for each insight type. | | InsightModel | Type picklist Properties Create, Defaulted on create, Filter, Group, Restricted picklist, Sort, Update Description Required. The computational model that the user selects to generate the insight. Possible values are: - FOUNDTIONAL—Foundational - GENERATIVE—Generative - KEYWORD—Keyword - SITUATIONAL—Situational - TIME\_BASED—Time-Based The default value is KEYWORD. | | InsightName | Type string Properties Create, Filter, Group, Sort, Update Description Required. The name of the insight. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The language used in the insight type. | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description Required. Label for the insight type. | | SpeakerType | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description Specifies if the participant is internal (internal rep), external (customer), or either (not sure). It indicates the 'Said by' field in the UI. Possible values are: - EITHER - EXTERNAL - INTERNAL - NONE The default value is INTERNAL. | | Status | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The status of the insight type. Possible values are: - ENABLED - USER\_DISABLED The default value is ENABLED. | | SupportedLanguageList | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description The list of languages supported for the insight type. | | UsageType | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The industry where the insight type is applicable. Possible values are: - SALES - SALES\_SERVICE - SERVICE The default value is SALES. | # EnrichedField Represents a field selected for Change Data Capture Enrichment for a channel and channel member. A non-empty enriched field is added to an update or delete change event even when not changed. Available in API version 51.0 and later. ## Supported SOAP API Calls delete(), describeSObjects(), query(), retrieve() ## Supported REST API HTTP Methods DELETE, GET, HEAD, Query ## Special Access Rules - This object is part of Change Data Capture Enrichment. - Use the EnrichedField object to query, retrieve, or delete enriched fields. Add an enriched field as part of PlatformEventChannelMember. For more information about Change Data Capture Enrichment and adding enriched fields, see [Enrich Change Events with Extra Fields When Subscribed with CometD](https://developer.salesforce.com/docs/atlas.en-us.264.0.change_data_capture.meta/change_data_capture/cdc_enrich_intro.htm "HTML (New Window)") and [Example: Add Event Enrichment Fields with Tooling API](https://developer.salesforce.com/docs/atlas.en-us.264.0.change_data_capture.meta/change_data_capture/cdc_enrich_tooling_api.htm "HTML (New Window)") in the Change Data Capture Developer Guide. - To retrieve or query this object, you must have the View Setup and Configuration permission. - To delete this object, you must have the Customize Application permission. ## Fields | Field | Details | | --- | --- | | ChannelMemberId | Type reference Properties Create, Filter, Group, Sort Description The ID of the PlatformEventChannelMember that this field is part of. For example, if a field is added to the AccountChangeEvent, which is part of PlatformEventChannelMember, ChannelMemberId is the ID of the PlatformEventChannelMember record. | | Field | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort Description The name of the field to enrich change events with. For a list of supported field types, see [Enrich Change Events with Extra Fields When Subscribed with CometD](https://developer.salesforce.com/docs/atlas.en-us.264.0.change_data_capture.meta/change_data_capture/cdc_enrich_intro.htm "HTML (New Window)") in the _Change Data Capture Developer Guide_. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | ## Usage To find out which channel members and fields you configured, query the EnrichedField object. For example, this query returns the channel member ID and the selected enriched field on that channel. SELECT ChannelMemberId,Field FROM EnrichedField ORDER BY ChannelMemberId In these query results, the rows returned are ordered by the channel member ID. The first two rows contain two enriched fields on the same channel: the Industry field and a custom field, whose value is an ID. The last row is for a different channel member and contains the Phone enriched field. | ChannelMemberId | Field | | --- | --- | | 0v8RM00000000JsYAI | Industry | | 0v8RM00000000JsYAI | 00NRM000001gEx32AE | | 0v8RM00000000fIYAQ | Phone | # EntityDefinition Provides row-based access to metadata about standard and custom objects. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. This object is available in API version 32.0 and later. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note 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. ## Supported SOAP Calls query(), search() ## Supported REST HTTP Methods GET ## Limitations [SOQL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_soql_limits.htm "Some Tooling API objects have SOQL limitations. These limitations apply to any Metadata Catalog query, which applies to all Custom Metadata Types and Metadata Catalog entities, not only the ones explicitly listed.") [SOSL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_sosl_limits.htm "Two Tooling API objects, EntityDefinition and FieldDefinition, have some SOSL limitations. ExternalString and MetadataComponentDependency (Beta) don’t support SOSL searches.") ## Fields | Field | Details | | --- | --- | | ApexTriggers | Type QueryResult Properties Filter, Group, Nillable, Sort Description Represents the Apex triggers associated with this object. This field is available in Tooling API version 34.0 and later. Because this field represents a relationship, use only in subqueries. | | AssignmentRules | Type QueryResult Properties Filter, Group, Nillable, Sort Description Represents assignment rules that allow you to automatically route cases to the appropriate users or queues. This field is available in Tooling API version 34.0 and later. Because this field represents a relationship, use only in subqueries. | | AutoResponseRules | Type QueryResult Properties Filter, Group, Nillable, Sort Description Represents the auto-response rules defined for the object. This field is available in Tooling API version 34.0 and later. Because this field represents a relationship, use only in subqueries. | | BusinessProcesses | Type QueryResult Properties Filter, Group, Nillable, Sort Description Represents the business processes defined for the object. Business processes display different picklist values for users based on their profile and associated record type. This field is available in Tooling API version 34.0 and later. Because this field represents a relationship, use only in subqueries. | | ChildRelationships | Type QueryResult Properties Filter, Group, Nillable, Sort Description Represents the child relationships defined for the object. This field is available in Tooling API version 34.0 and later. Because this field represents a relationship, use only in subqueries. | | CompactLayouts | Type QueryResult Properties Filter, Group, Nillable, Sort Description Represents the compact layouts defined for the object. This field is available in Tooling API version 34.0 and later. Because this field represents a relationship, use only in subqueries. | | CustomFields | Type QueryResult Properties Filter, Group, Nillable, Sort Description Represents the custom fields defined for the object. This field is available in Tooling API version 34.0 and later. Because this field represents a relationship, use only in subqueries. | | DefaultCompactLayout | Type [CompactLayoutInfo](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_compactlayoutinfo.htm "Represents the metadata for a custom or standard compact layout.") Properties Create, Nillable, Update Description Metadata about the compact layout defined as the default for this object, if any. | | DefaultCompactLayoutId | Type string Properties Filter, Group, Nillable, Sort Description ID of the default compact layout, if any. | | DefaultImplementation | Type string Properties Filter, Group, Nillable, Sort Description Reserved for future use. | | DeploymentStatus | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort 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. This field is available in Tooling API version 37.0 and later. Valid values are: - InDevelopment - Deployed | | Description | Type string Properties Filter, Nillable, Sort Description The description of the object. A meaningful description makes it easier to distinguish between custom objects when they're viewed in a list. This field is available in Tooling API version 37.0 and later. | | DetailUrl | Type string Properties Filter, Group, Nillable, Sort Description URL to the read-only detail page for this object. Corresponds to the urlDetail field in DescribeSobjectResult. This field is available in Tooling API version 34.0 and later. | | DeveloperName | Type string 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 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 string Properties Filter, Group, Nillable, Sort Description This field is available in Tooling API version 34.0 and later. | | EditUrl | Type string Properties Filter, Group, Nillable, Sort Description The URL used when editing the custom object definition. Corresponds to the urlEdit field on DescribeSobjectResult. This field is available in Tooling API version 34.0 and later. | | ExtendedBy | Type string Properties Filter, Group, Nillable, Sort Description Reserved for future use. | | ExtendsInterfaces | Type string Properties Filter, Group, Nillable, Sort Description Reserved for future use. | | ExternalSharingModel | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The external sharing model. Possible values are: - None - Read - Edit - ControlledByLeadOrContact - ControlledByCampaign This field is available in Tooling API version 38.0 and later. | | FieldSets | Type QueryResult Properties Filter, Group, Nillable, Sort Description Represents the field sets defined for the object. Because this field represents a relationship, use only in subqueries. | | Fields | Type QueryResult Properties Filter, Group, Nillable, Sort Description Represents the standard and custom fields defined for this object. Because this field represents a relationship, use only in subqueries. | | FormulaVariables | Type QueryResult Properties Filter, Group, Nillable, Sort Description Represents the formulas that are built on this object. This field is available in Tooling API version 48.0 and later. | | FullName | Type string 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. | | HelpSettingPageName | Type string Properties Filter, Group, Nillable, Sort Description The name of the custom help setting page. This field is available in Tooling API version 34.0 and later. | | HelpSettingPageUrl | Type string Properties Filter, Group, Nillable, Sort Description The URL pointing to the custom help setting page for custom objects. This field is available in Tooling API version 34.0 and later. | | ImplementedBy | Type string Properties Filter, Group, Nillable, Sort Description Reserved for future use. | | ImplementsInterfaces | Type string Properties Filter, Group, Nillable, Sort Description Reserved for future use. | | InternalSharingModel | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The internal sharing model. Possible values are: - None - Read - Edit - ControlledByLeadOrContact - ControlledByCampaign This field is available in Tooling API version 38.0 and later. | | IsActivityTrackable | Type boolean Properties Defaulted on create, Filter, Group, Sort 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. This field is available in Tooling API version 37.0 and later. | | IsApexTriggerable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, Apex triggers can be defined for the object. | | IsAutoActivityCaptureEnabled | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the object is enabled for Einstein Activity Capture. This field is available in Tooling API version 41.0 and later. | | IsCompactLayoutable | Type boolean 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. | | IsCreatable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, records based on the object (true) can be created. This field is unavailable starting with version 35.0. Use IsCreatable on UserEntityAccess instead. | | IsCustomSetting | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the object is a custom setting. This field is available in Tooling API version 35.0 and later. | | IsCustomizable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, custom fields can be defined for the object. | | IsDeletable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the object can be deleted. This field is unavailable starting with version 35.0. Use IsDeletable on UserEntityAccess instead. | | IsDeprecatedAndHidden | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, this object is unavailable for the current version. This field is available in Tooling API version 35.0 and later. | | IsEverCreatable | Type boolean Properties Defaulted on create, Filter, Group, Sort 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. This field is available in Tooling API version 35.0 and later. | | IsEverDeletable | Type boolean Properties Defaulted on create, Filter, Group, Sort 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. This field is available in Tooling API version 35.0 and later. | | IsEverUpdatable | Type boolean Properties Defaulted on create, Filter, Group, Sort 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. This field is available in Tooling API version 35.0 and later. | | IsFeedEnabled | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the Chatter feed is enabled for this object. This field is available in Tooling API version 34.0 and later. | | IsFieldHistoryTracked | Type boolean Properties Defaulted on create, Filter, Group, Sort 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. This field is available in Tooling API version 37.0 and later. | | IsFlsEnabled | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, you can set field-level security on applicable fields. This field is available in Tooling API version 35.0 and later. | | IsIdEnabled | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, you can include Id in the SELECT clause of a query on this object. This field is available in Tooling API version 35.0 and later. 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. | | IsInterface | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Reserved for future use. | | IsLayoutable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, layouts can be defined for the object. This field is available in Tooling API version 35.0 and later. | | IsMruEnabled | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, Most Recently Used (MRU) list functionality is enabled for this object. This field is available in Tooling API version 37.0 and later. | | IsQueryable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the object can be queried. | | IsReplicateable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the object can be replicated. This field is available in Tooling API version 35.0 and later. | | IsReportingEnabled | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the data in the custom object's records is available for reporting. Can be enabled only on custom objects. This field is available in Tooling API version 37.0 and later. | | IsRetrieveable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the object can be retrieved. This field is available in Tooling API version 35.0 and later. | | IsSearchable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, records of this object are indexed for search. This field is available in Tooling API version 35.0 and later. | | IsSearchLayoutable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, you can customize search layouts for this object. This field is available in Tooling API version 35.0 and later. | | IsTriggerable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, you can use triggers with this object. This field is available in Tooling API version 35.0 and later. | | IsWorkflowEnabled | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, workflow rules can be defined for the object. | | KeyPrefix | Type string Properties Filter, Group, Nillable, Sort Description The first three digits of the object’s ID, which identify the object type, such as Account or Opportunity. | | Label | Type string Properties Filter, Group, Nillable, Sort Description The label for this object, used in the compact layout and in the user's language locale. | | Layouts | Type QueryResult Properties Filter, Group, Nillable, Sort Description Represents the layouts defined for this object. Use only in subqueries. This field is available in Tooling API version 34.0 and later. Because this field represents a relationship, use only in subqueries. | | Limits | Type QueryResult Properties Filter, Group, Nillable, Sort Description The limits defined for this object. Corresponds to the Limits page for each standard object in Setup, or the Limits related list for each custom object. Use only in subqueries. This field is available in Tooling API version 34.0 and later. Because this field represents a relationship, use only in subqueries. | | LookupFilters | Type QueryResult Properties Filter, Group, Nillable, Sort Description Represents the lookup filters defined for this object. Use only in subqueries. This field is available in Tooling API version 34.0 and later. Because this field represents a relationship, use only in subqueries. | | MasterLabel | Type string 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 mns: CustomObject 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 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 string Properties Filter, Group, Nillable, Sort Description The URL used when editing a new standard or custom record. Corresponds to the urlNew field on DescribeSobjectResult. This field is available in Tooling API version 34.0 and later. | | OwnerChangeOptions | Type QueryResult Properties Filter, Group, Nillable, Sort Description Use only in subqueries. This field is available in Tooling API version 35.0 and later. Because this field represents a relationship, use only in subqueries. | | Particles | Type QueryResult Properties Filter, Group, Nillable, Sort Description The particles defined for this object. This field is available in Tooling API version 34.0 and later. Because this field represents a relationship, use only in subqueries. | | PluralLabel | Type string Properties Filter, Group, Nillable, Sort Description The plural version of the object’s Label. | | Publisher | Type [Publisher](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_publisher.htm "Represents the publisher of objects and fields. For example, Salesforce is the publisher for standard objects, the organization is the publisher for custom objects, and the package is the publisher for installed packages. Available in Tooling API version 34.0 and later.") Properties Create, Nillable, Update Description The publisher of this object, for example Salesforce, a user, or a package name. This field is available in Tooling API version 34.0 and later. | | PublisherId | Type string Properties Filter, Group, Nillable, Sort Description ID of the publisher associated with this object. This field is available in Tooling API version 34.0 and later. | | QualifiedApiName | Type string 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. | | QuickActionDefinitions | Type QueryResult Properties Filter, Group, Nillable, Sort Description Represents the quick actions defined for this object. Use only in subqueries. This field is available in Tooling API version 34.0 and later. Because this field represents a relationship, use only in subqueries. | | RecordTypes | Type QueryResult Properties Filter, Group, Nillable, Sort Description Represents the record types defined for this object. Use only in subqueries. This field is available in Tooling API version 34.0 and later. Because this field represents a relationship, use only in subqueries. | | RecordTypesSupported | Type [RecordTypesSupported](#recordtypessupported) Properties Nillable Description Represents the record types defined for this object. Use only in subqueries. This field is available in Tooling API version 34.0 and later. | | RelatedListDefinitions | Type QueryResult Properties Filter, Group, Nillable, Sort Description Represents related lists defined for this object. Because this field represents a relationship, use only in subqueries. Available in API version 55.0 and later. | | RelationshipDomains | Type QueryResult Properties Filter, Group, Nillable, Sort Description Metadata about the relationships with other objects that this object has. Use only in subqueries. This field is available in Tooling API version 34.0 and later. Because this field represents a relationship, use only in subqueries. | | RunningUserEntityAccess | Type [UserEntityAccess](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_userentityaccess.htm "Represents the access that the current user has to an object. Available in Tooling API version 34.0 and later.") Properties Create, Nillable, Update Description Represents the running user’s access to this object. This field is available in Tooling API version 34.0 and later. | | RunningUserEntityAccessId | Type string Properties Filter, Group, Nillable, Sort Description ID of the UserEntityAccess record associated with this object. This field is available in Tooling API version 34.0 and later. Because this field represents a relationship, use only in subqueries. | | SearchLayouts | Type QueryResult Properties Filter, Group, Nillable, Sort Description Represents the search layouts associated with this object. Use only in subqueries. This field is available in Tooling API version 34.0 and later. Because this field represents a relationship, use only in subqueries. | | StandardActions | Type QueryResult Properties Filter, Group, Nillable, Sort Description Represents the standard actions defined for this object. Use only in subqueries. This field is available in Tooling API version 34.0 and later. Because this field represents a relationship, use only in subqueries. | | ValidationRules | Type QueryResult Properties Filter, Group, Nillable, Sort Description Represents the validation rules defined for this object. Use only in subqueries. This field is available in Tooling API version 34.0 and later. Because this field represents a relationship, use only in subqueries. | | WebLinks | Type QueryResult Properties Filter, Group, Nillable, Sort Description Represents the Weblinks associated with this object. Use only in subqueries. This field is available in Tooling API version 34.0 and later. Because this field represents a relationship, use only in subqueries. | | WorkflowAlerts | Type QueryResult Properties Filter, Group, Nillable, Sort Description Represents the workflow alerts associated with this object. Use only in subqueries. This field is available in Tooling API version 34.0 and later. Because this field represents a relationship, use only in subqueries. | | WorkflowFieldUpdates | Type QueryResult Properties Filter, Group, Nillable, Sort Description Represents the workflow field updates for this object. Use only in subqueries. This field is available in Tooling API version 34.0 and later. Because this field represents a relationship, use only in subqueries. | | WorkflowOutboundMessages | Type QueryResult Properties Filter, Group, Nillable, Sort Description Represents the workflow outbound messages associated with this object. Use only in subqueries. This field is available in Tooling API version 34.0 and later. Because this field represents a relationship, use only in subqueries. | | WorkflowTasks | Type QueryResult Properties Filter, Group, Nillable, Sort Description Represents the workflow tasks associated with this object. Use only in subqueries. This field is available in Tooling API version 34.0 and later. 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](#recordtypeinfo_name) 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. | # EntityLimit Represents the limits for an object as displayed in the Setup UI. This object is available in API version 34.0 and later. ## Supported SOAP Calls query() ## Supported REST HTTP Methods GET ## Limitations [SOQL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_soql_limits.htm "Some Tooling API objects have SOQL limitations. These limitations apply to any Metadata Catalog query, which applies to all Custom Metadata Types and Metadata Catalog entities, not only the ones explicitly listed.") [SOSL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_sosl_limits.htm "Two Tooling API objects, EntityDefinition and FieldDefinition, have some SOSL limitations. ExternalString and MetadataComponentDependency (Beta) don’t support SOSL searches.") ## Fields | Field | Details | | --- | --- | | DurableId | Type string 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. Use this field to simplify queries. | | EntityDefinition | Type EntityDefinition Properties Filter, Group, Sort Description The object to which these limits apply. | | EntityDefinitionId | Type string Properties Filter, Group, Sort Description ID of the object to which these limits apply. | | Label | Type string Properties Filter, Group, Sort Description The label of the object to which these limits apply. | | Max | Type int Properties Filter, Group, Sort Description The maximum number of objects that the organization is allowed to have. | | Remaining | Type int Properties Filter, Group, Sort Description The number of objects still available. For example, if the limit on custom objects is 100, and you create 75, this value is 25. | | Type | Type string Properties Filter, Group, Restricted picklist, Sort Description What type of component the limit applies to: - ActiveLookupFilters - ActiveRules - ActiveValidationRules - ApprovalProcesses - CbsSharingRules - CustomFields - CustomRelationship - RollupSummary - SharingRules - TotalRules - VLookup | # EntityParticle Represents each element of a field that can be presented in a user interface. Contrast EntityParticle with FieldDefinition, which represents each element of a field defined in the Metadata API. EntityParticle has parity with describe, which returns API accessible fields only for an entity. Available in Tooling API version 34.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP Calls query() ## Supported REST HTTP Methods GET ## Limitations [SOQL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_soql_limits.htm "Some Tooling API objects have SOQL limitations. These limitations apply to any Metadata Catalog query, which applies to all Custom Metadata Types and Metadata Catalog entities, not only the ones explicitly listed.") [SOSL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_sosl_limits.htm "Two Tooling API objects, EntityDefinition and FieldDefinition, have some SOSL limitations. ExternalString and MetadataComponentDependency (Beta) don’t support SOSL searches.") ## Fields | Field | Details | | --- | --- | | ByteLength | Type int Properties Filter, Group, Nillable, Sort Description The maximum length of the field represented by this EntityParticle, in bytes. | | DataType | Type string Properties Filter, Group, Nillable, Sort Description Data type of the field, for example textarea or datetime. The values are defined similar to the values in the user interface, not the corresponding API data type names. For example, from an object, retrieve all the fields of one data type. SELECT DataType, QualifiedApiName FROM EntityParticle WHERE DataType = 'phone' AND EntityDefinition.QualifiedApiName = 'Account' | | DefaultValueFormula | Type string Properties Filter, Group, Nillable, Sort Description The default value specified for the field when a formula isn’t specified. If no default value is specified, this field isn’t returned. | | DeveloperName | Type string 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**. | | Digits | Type int Properties Filter, Group, Nillable, Sort Description Maximum number of digits for a field of type int. If an integer value exceeds the number of digits, the API returns an error. | | DurableId | Type string 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. To simplify queries, use this field. | | EntityDefinitionId | Type string Properties Filter, Group, Nillable, Sort Description The ID for the object defined in the DurableId field. | | ExtraTypeInfo | Type string Properties Filter, Group, Nillable, Sort Description Represents further definition of a type. - For type textarea: - plaintextarea - richtextarea - For type URL: - image - For type reference: - externallookup - indirectlookup - For Account: - switchablepersonname - personname | | FieldDefinitionId | Type string Properties Filter, Group, Nillable, Sort Description ID of the field definition associated with this EntityParticle. | | InlineHelpText | Type string Properties Filter, Group, Nillable, Sort Description Represents the content of field-level help. Available in Tooling API starting version 35.0. | | IsApiFilterable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the field represented by this EntityParticle can be specified in the WHERE clause of a query string. Restrictions You can’t sort or filter compound fields. This field’s value is always false for compound fields. | | IsApiGroupable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the field represented by this EntityParticle can be included in the GROUP BY clause of a SOQL query. | | IsApiSortable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, a query can sort on the field represented by this EntityParticle. Restrictions You can’t sort or filter compound fields. This field’s value is always false for compound fields. | | IsAutoNumber | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the field’s value is assigned when the record is created. Available in Tooling API starting version 35.0. | | IsCalculated | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the field represented by this EntityParticle is calculated. | | IsCaseSensitive | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the field represented by this EntityParticle is case sensitive. Available in Tooling API starting version 35.0. | | IsCompactLayoutable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the field can be included in a compact layout. | | IsComponent | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the field is a component of a compound field. The default value is false. Available in Tooling API starting version 40.0. | | IsCompound | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the field is a compound of other fields. The default value is false. Available in Tooling API starting version 38.0. | | IsCreatable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, a value for the field represented by this EntityParticle can be created. Available in Tooling API starting version 35.0. | | IsDefaultedOnCreate | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, and if no other value is supplied, a default value is applied when the record is created. Available in Tooling API starting version 35.0. | | IsDependentPicklist | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the field is a dependent picklist. Available in Tooling API starting version 35.0. | | IsDeprecatedAndHidden | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Reserved for future use. | | IsDisplayLocationInDecimal | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, and if the field represented by this EntityParticle is a Geolocation custom field, the value appears in decimal notation. If false, the value appears as degrees, minutes, and seconds. Available in Tooling API starting version 35.0. Restrictions This field has no effect on custom fields that aren’t Geolocation fields. | | IsEncrypted | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the field is marked for Classic Encryption. Available in Tooling API starting version 35.0. | | IsFieldHistoryTracked | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the field’s history can be tracked. | | IsHighScaleNumber | Type boolean Properties Defaulted on create, Filter, Group, Sort 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 org, this field isn’t returned. | | IsHTMLFormatted | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the field contains HTML. | | IsIdLookup | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, you can use the field to specify a record for upsert. Available in Tooling API starting version 35.0. | | IsLayoutable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the field can be assigned to a layout. Available in Tooling API starting version 35.0. | | IsListVisible | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the field can be included in a related list. | | IsNameField | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the field is a name field. | | IsNamePointing | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the field represents a polymorphic relationship. Determine the object type at runtime for dynamic queries when this value is true. Available in Tooling API starting version 35.0. | | IsNillable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the field can be left out of queries on the object. | | IsPermissionable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, you can specify field permissions for the field. Available in Tooling API starting version 35.0. | | IsUnique | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the field is unique. Available in Tooling API starting version 35.0. | | IsUpdatable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, you can update the field. Available in Tooling API starting version 35.0. | | IsWorkflowFilterable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the field can be filtered for a workflow. | | IsWriteRequiresMasterRead | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, writing to the detail object requires read sharing instead of read-write sharing of the parent. Available in Tooling API starting version 35.0. | | Label | Type string Properties Filter, Group, Sort Description The label that corresponds to the field in the user interface. If the label has translations, the label returned is in the user’s language. | | Length | Type int Properties Filter, Group, Sort Description The maximum number of bytes available to store the value in the field represented by this EntityParticle. | | Mask | Type string Properties Filter, Group, Nillable, Sort Description Reserved for future use. | | MaskType | Type string Properties Filter, Group, Nillable, Sort Description Reserved for future use. | | MasterLabel | Type string Properties Filter, Group, Sort Description Primary label for this object. This display value is the internal label that isn’t translated. Limit: 40 characters. | | Name | Type string Properties Filter, Group, Nillable, Sort Description Name of the object for the field represented by this EntityParticle. This field is available in API version 35.0 and later. | | NamespacePrefix | Type string Properties Filter, Group, 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 these 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 Properties Filter, Group, Sort Description The maximum number of digits allowed for the field represented by this EntityParticle. | | QualifiedApiName | Type string Properties Filter, Group, Sort Description A unique external name for the field. | | ReferenceTargetField | Type string Properties Filter, Group, Nillable, Sort Description 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 IsIdLookup and IsUnique set to true. This field is available in API version 35.0 and later. Restrictions Available only if the field represented by this EntityParticle is an indirect lookup relationship field on an external object. | | ReferenceTo | Type [RelationshipReferenceTo](#RelationshipReferenceTo) Properties Nillable Description The array of values in this field represents the possible object types of the referenced objects. For example, if EntityParticle represents a field on Events, the values are Contact, Lead, and custom objects with a relationship to Events. | | RelationshipName | Type string Properties Filter, Group, Nillable, Sort Description If the field represented by this EntityParticle is a master-detail relationship field, this field’s value is the relationship name. | | RelationshipOrder | Type int Properties Filter, Group, Nillable, Sort Description A value of 0 represents a primary relationship, and a value of 1 represents a secondary relationship. This field is relevant only for relationship fields. | | Scale | Type int Properties Filter, Group, Sort Description The number of digits to the right of the decimal in an integer. For example, 3.00 has a scale of 2. | | ValueTypeId | Type string Properties Filter, Group, Nillable, Sort Description ID of the value type, if any, for the field represented by this EntityParticle. | ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note EntityParticle fields are exposed in SOAP API version 45.0 and later. You can use Tooling API to query for EntityParticle 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. EntityParticle is still exposed in Tooling API to User Profiles with the ViewSetup permission. ## RelationshipReferenceTo Type Represents the set of objects that this EntityParticle can have a relationship with.
Field Type Details
referenceTo string[]

The name of an object that can be referenced. For example, if EntityParticle represents Event.WhoId (the WhoId field on Event), the value of this field would be at least [Contact, Lead].

## Usage When querying or searching the EntityParticle object, you must filter using this syntax: WHERE EntityDefinition.QualifiedApiName ='\[ObjectAPIName\]' Example Query: SELECT EntityDefinitionId, QualifiedAPIName, FieldDefinitionId FROM EntityParticle WHERE EntityDefinition.QualifiedApiName ='Case' Example Query: Retrieve All Account Fields SELECT DataType, FieldDefinition.QualifiedApiName FROM EntityParticle WHERE EntityDefinition.QualifiedApiName ='Account' 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 Event.WhoId (represented by EntityParticle). SELECT QualifiedApiName, RelationshipName, ReferenceTo, ReferenceTargetField FROM EntityParticle WHERE EntityDefinition.QualifiedApiName = 'Event' AND QualifiedApiName = 'WhoId' # EventDelivery Represents how an event instant maps to a target payload. Removed in API version 46.0. Available in API version 41.0 to 45.0. ## Supported SOAP Calls create(), delete(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods GET, POST, PUT, PATCH, HEAD ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Filter, Group, Sort Description The developer’s internal name for the event delivery used in the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | EventSubscriptionId | Type reference Properties Filter, Group, Sort Description Required. The ID of the subscription to deliver the data to. | | FullName | Type string Properties Create, GroupGroup, Nillable Description The unique name used as the event delivery 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. | | Language | Type picklist Properties Defaulted on create, Filter, GroupGroup, Nillable, Restricted picklist, Sort, Description The language of the MasterLabel. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description Master label for the event delivery. This internal label doesn’t get translated. | | Metadata | Type [mns:EventDelivery](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_eventdelivery.xml "HTML (New Window)") Properties Create, Nillable, Update Description The event delivery’s metadata. 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 Properties Filter, Group, Nillable, Sort Description The namespace prefix that is 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 Developer Edition orgs, NamespacePrefix is set to the namespace prefix of the org for all objects that support it, unless 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 orgs that are not Developer Edition orgs, NamespacePrefix is set only for objects that are part of an installed managed package. All other objects have no namespace prefix. | | ReferenceData | Type string Properties Filter, Group, Nillable, Sort Description User-defined non-unique identifier. | | Type | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Required. Determines what action occurs when the event is delivered to the listeners on behalf of the subscribers. Valid values are: - StartFlow—When the event occurs, it’s delivered to a flow of type CustomEvent. Those flows are built through Process Builder. - ResumeFlow—Reserved for future use. | # EventRelayConfig Represents the configuration of an event relay, which relays platform events and change data capture events from Salesforce to Amazon EventBridge. This object is available in API version 56.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules - To retrieve or query this object, you must have the View Setup and Configuration permission. - To create, update, or delete this object, you must have the Customize Application permission. - You can update only the state and relayOption fields and not eventChannel or destinationResourceName. Update the state and relayOption fields through the Metadata field. ## Fields | Field | Details | | --- | --- | | DestinationResourceName | Type string Properties Filter, Group, Sort Description The developer name of the named credential, which stores the AWS account information. The destinationResourceName value contains the callout: prefix. For example: callout:MyRelayNamedCredential | | DeveloperName | Type string Properties Filter, Group, Sort Description Required. 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 organization. Label is **Record Type Name**. This field is automatically generated, but you can supply your own value if you create the record using the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance may slow while Salesforce generates one for each record. | | EventChannel | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The full name of the event channel used in the event relay. For example: MyRelayChannel\_\_chn | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated EventRelayConfig in Metadata API. The full name can include a namespace prefix. 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. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the EventRelayConfig. Possible values are: - da—Danish - de—German - en\_US—English - es—Spanish - es\_MX—Spanish (Mexico) - fi—Finnish - fr—French - it—Italian - ja—Japanese - ko—Korean - nl\_NL—Dutch - no—Norwegian - pt\_BR—Portuguese (Brazil) - ru—Russian - sv—Swedish - th—Thai - zh\_CN—Chinese (Simplified) - zh\_TW—Chinese (Traditional) | | ManageableState | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description The label for the event relay, which corresponds to the label of the EventRelayConfig metadata type. The label is displayed in the user interface. If the label isn't provided in the metadata type, MasterLabel is the DeveloperName value. | | Metadata | Type [EventRelayConfig](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_eventrelayconfig.htm) Properties Create, Nillable, Update Description The EventRelayConfig’s metadata. | | NamespacePrefix | Type string 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 the following values: - In Developer Edition organizations, the namespace prefix is set to the namespace prefix of the organization for all objects that support it. There is 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 are not Developer Edition organizations, NamespacePrefix is only set for objects that are part of an installed managed package. There is no namespace prefix for all other objects. | | RelayOption | Type textarea Properties Nillable Description A JSON-encoded string that contains an option for resuming an event relay after the system recovers from an error. This option is used if the event relay can't resume after the last relayed event. The options available are: - "{"ReplayRecovery":"LATEST"}"—(Default) Start relaying events from new events received in the event bus. Use this option if you aren’t interested in missed events while the relay was down. - "{"ReplayRecovery":"EARLIEST"}"—Resend all events stored in the event bus and relay new events thereafter. The event bus stores events for up to three days. Use this option if you want to reprocess all stored events and catch up on missed events. | | State | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The execution state of the event relay. Possible values are: - RUN—The event relay is running and actively relaying event messages from Salesforce to Amazon EventBridge. - PAUSE—An administrator paused the event relay. No events are relayed to Amazon EventBridge during this status. All current state information is saved. - STOP—(Default) The event relay is stopped and no events are relayed to Amazon EventBridge. All current state information is deleted. - DELETE—Reserved for future use. | | UsageType | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description Reserved for future use. | ## Usage This JSON example is the body of a REST API POST request that creates an event relay named MyEventRelay. It includes the optional fields relayOption and state. The corresponding REST endpoint is /services/data/v68.0/tooling/sobjects/EventRelayConfig. { "FullName": "Carbon\_Comparison\_Relay", "Metadata": { "destinationResourceName": "callout:AWS\_Account", "eventChannel": "Carbon\_Comparison\_Channel\_\_chn", “label”: “Carbon Comparison Relay”, "relayOption": "{"ReplayRecovery":"LATEST"}", "state": "STOP" } } # EventSubscription Represents a subscription to an event type. Removed in API version 46.0. Available in API version 41.0 to 45.0. ## Supported SOAP Calls create(), delete(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods GET, POST, PUT, PATCH, HEAD ## Fields | Field | Details | | --- | --- | | Active | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If the subscription isn’t active, it never receives any events. | | DeveloperName | Type string Properties Filter, Group, Sort Description The developer’s internal name for the event delivery used in the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | EventType | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The type of event to subscribe to. Valid values are: - AlarmEvent—An alarm that’s offset from an absolute time (supported only if the EventDelivery type is ResumeFlow) - CustomEvent—Reserved for future use - DateRefAlarmEvent—An alarm that’s offset from a date/time field value (supported only if the EventDelivery type is ResumeFlow) - EventObject—A custom platform event - StandardPlatformEvent—A standard platform event | | FullName | Type string Properties Create, Group, Nillable Description The unique name used as the event delivery 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. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the MasterLabel. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description Master label for the event subscription. This internal label doesn’t get translated. | | Metadata | Type [mns:EventSubscription](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_eventsubscription.htm "HTML (New Window)") Properties Create, Nillable, Update Description The event subscription’s metadata. 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 Properties Filter, Group, Nillable, Sort Description The namespace prefix that is 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 Developer Edition orgs, NamespacePrefix is set to the namespace prefix of the org for all objects that support it, unless 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 orgs that are not Developer Edition orgs, NamespacePrefix is set only for objects that are part of an installed managed package. All other objects have no namespace prefix. | | ReferenceData | Type string Properties Filter, Group, Sort Description If the subscriber is a flow of type CustomEvent, referenceData is flowName\_versionNumber. For example, Printer\_Management\_2. | # ExtConvParticipantIntegDef Represents the integration configuration for external conversation participants, used for communication between Salesforce and external messaging platforms. This object is available in API version 66.0 and later. ## Supported Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Fields | Field | Details | | --- | --- | | AccountKey | Type textarea Properties Create, Nillable, Update Description The encrypted JSON format key for secure storage of authentication credentials for external bot API calls. | | BotProvider | Type picklist Properties Create, Defaulted on create, Filter, Group, Restricted picklist, Sort, Update Description The provider of bot integration that handles authentication and request and response logic. Possible value: - Custom | | ChannelMode | Type picklist Properties Create, Defaulted on create, Filter, Group, Restricted picklist, Sort, Update Description Possible values for channel type are: - Messaging - Voice The default value is Messaging. | | ClientIdentifier | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description The API client ID of the bot provider. | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description The unique name of the object in the API. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The language of the MasterLabel. | | ManageableState | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The manageable state of the specified component that’s contained in a package. Possible values are: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description The label for this object. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description If it's part of a managed package, the namespace of the package that contains integration definition for the external conversation participant. | | ProjectIdentifier | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description The ID of the project in the provider framework to scope API calls and resource access. | | Status | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The status of the integration. Possible values are: - Active - Deleted - Inactive The default value is Active. | # ExternalAuthIdentityProvider Represents an external authentication (auth) identity provider. An external auth identity provider links to an external credential and obtains OAuth tokens for outbound callouts to external systems. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules Only users with the Customize Application permission or the Manage Named Credentials permission can access this object. ## Fields | Field | Details | | --- | --- | | AuthenticationFlow | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Authentication flow to get tokens to call protected APIs. Possible values are: - AuthorizationCode - ClientCredentials - SalesforceDefined | | AuthenticationProtocol | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The authentication protocol that’s required to access the external system. Possible values are: - OAuth - SalesforceDefined | | Description | Type string Properties Filter, Group, Nillable, Sort Description A meaningful description of the external auth identity provider. | | DeveloperName | Type string Properties Filter, Group, Sort Description The unique internal name for the named credential used 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. This field is automatically generated, but you can supply your own value if you create the record using the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance may slow while Salesforce generates one for each record. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated type in Tooling API. The full name can include a namespace prefix. 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. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the external auth identity provider. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description Label for the external auth identity provider. In the UI, this field is **Label**. | | Metadata | Type complexvalue Properties Create, Nillable, Update Description Provides access to the associated metadata type and related fields in Tooling 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. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The namespace prefix that is 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. | ## ExternalAuthIdentityProviderParameter Represents the parameters that configure an external auth identity provider. | Field | Details | | --- | --- | | Description | Type string Properties Filter, Group, Nillable, Sort Description A human-readable description of the external auth identity provider parameter. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | ParameterName | Type string Properties Filter, Group, Sort Description The name of the external auth identity provider parameter. | | ParameterType | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The type of external auth identity provider parameter. The value of this field drives the behavior of the parameter. Possible values are: - AuthorizeRequestQueryParameter - AuthorizeUrl - ClientAuthentication - CreatedByNamespace - IdentityProviderOptions - ManagedByComponent - ManagedByFeature - RefreshRequestBodyParameter - RefreshRequestHttpHeader - RefreshRequestQueryParameter - StandardExternalIdentityProvider - TokenRequestBodyParameter - TokenRequestHttpHeader - TokenRequestQueryParameter - TokenUrl - UserInfoUrl | | ParameterValue | Type textarea Properties Nillable Description If the parameterType field describes a literal value then the literal value is stored in this field. | | SequenceNumber | Type int Properties Filter, Group, Nillable, Sort Description Specifies the order of parameters to apply when an external auth identity provider has more than one parameter. Priority is from lower to higher numbers (for example, 1 is the highest priority). | # ExternalClientAppSettings For internal use only. # ExternalCredential Represents the details of how Salesforce authenticates to the external system. This object is available in API version 56.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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.  ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note All credentials stored within this entity are encrypted under a framework that is consistent with other encryption frameworks on the platform. Salesforce encrypts your credentials by auto-creating org-specific keys. Credentials encrypted using the previous encryption scheme have been migrated to the new framework. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | AuthenticationProtocol | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Required. The authentication protocol that’s required to access the external system. Valid values are: - AwsSv4 — AWS Signature Version 4 - Basic — Authentication using a static username and password - Custom — User-created authentication. Specify the permission set, sequence number, and authentication parameters. Each authentication parameter requires a name and value. - Jwt — Reserved for future use - JwtExchange— Reserved for future use - NoAuthentication — Reserved for future use - Oauth — Oauth 2.0 - Password — Reserved for future use For connections to Amazon Web Services using Signature Version 4, use AwsSv4. For connections using a direct token system, use Jwt. If using an intermediary authorization provider to process JWTs and return access tokens, use JwtExchange. For Simple URL data sources, select NoAuthentication. For connections using a static username and password, use Basic. For cloud-based Files Connect external systems, select Oauth. For on-premises systems, select Password. | | Description | Type string Properties Filter, Group, Nillable, Sort Description A meaningful description of the external credential. | | DeveloperName | Type string Properties Filter, Group, Sort Description The unique name for the external credential object. 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 organization. Label is **Record Type Name**. This field is automatically generated, but you can supply your own value if you create the record using the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance may slow while Salesforce generates one for each record. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | ExternalCredentialParameters | Type [ExternalCredentialParameter\[\]](#subtype_ExternalCredentialParameter) Properties Nillable Description One or more sets of parameters that further configure the external credential. | | FullName | Type string Properties Create, Group, Nillable Description The full name of ExternalCredential in Metadata API. The full name can include a namespace prefix. 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. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the external credential. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description The main label for the external credential. In the UI, this field is **Label**. | | Metadata | Type [ExternalCredential](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_externalcredential.htm "html (New Window)") Properties Create, Nillable, Update Description The external credential’s metadata. 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 Properties Filter, Group, Nillable, Sort Description The namespace prefix that is 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. | ## ExternalCredentialParameter Represents the parameters that configure an external credential. External credential parameters are used to configure external credential callouts through a combination of the type, name, and value/lookup fields. Available in API version 56.0 and later. These parameters are used internally to provide a flexible architecture and are exposed here for packaging reasons. | Field | Description | | --- | --- | | AuthProvider | Type string Description Reference to an authentication provider that the AuthProvider component represents, which defines the service that provides the login process and approves access to the external system. | | Certificate | Type string Description If the value of the ParameterType field is SigningCertificate, then this field references the certificate. | | Description | Type string Description A human-readable description of this external credential parameter. | | ExtlAuthIdentityProvider | Field Type string Description Reference to an external authentication identity provider that the ExternalAuthIdentityProvider component represents. The ExternalAuthIdentityProvider defines the service that provides the login process and approves access to the external system. To simplify the configuration process for the authentication providers used by your named credentials, use an ExternalAuthIdentityProvider instead of an AuthProvider. Link the external auth identity provider to an external credential. | | ParameterGroup | Type string Description Groups a parameter along with its respective principal. For example, with dynamic scopes the user can apply a scope AuthParameter only when authenticated against a specific principal with a matching ParameterGroup value. If a value for ParameterGroup isn’t provided, ParameterGroup defaults to the ParameterName value for PER\_USER and NAMED\_PRINCIPAL. For all other parameters ParameterGroup defaults to DEFAULT\_GROUP. | | ParameterName | Type string Description Required. The name of the external credential parameter. | | ParameterType | Type ExternalCredentialParamType (enumeration of type string) Description Required. The type of external credential parameter. The value of this field drives the behavior of the parameter. Valid values are: - AdditionalRefreshStatusCode: Allows the user to specify 4xx, 6xx, 7xx, 8xx, and 9xx HTTP status codes that trigger Salesforce to refresh expired or invalid access tokens, in addition to the standard 401 HTTP status code response. - AuthHeader: Allows the user to specify custom authentication headers to be added to the callout at run time. When using AuthHeader, the ParameterName field must be the header name as a string, and ParameterValue must be a formula of a header value that is evaluated at run time. SequenceNumber determines the order in which headers are sent out in the callout. Headers with lower numbers are sent out first. - AuthParameter: Allows the user to add additional authentication settings. ParameterName defines the parameter to set. For example, AwsRegion sets the AWS Region parameter to apply for an AWS Signature V4 authentication protocol and ParameterValue is the value for the AWS Region. - AuthProtocolVariant: Used to specify a variant of an authentication protocol. For example, Aws Sts as a variant when the ParameterName is AwsSv4 and the ParameterValue is AwsSv4\_STS. - AuthProvider: Specifies that this parameter configures an authentication provider referenced by the AuthProvider field. - AuthProviderUrl: Specifies the authentication endpoint URL. For example, if the authentication type is OAuth with JWT Bearer Flow, then ParameterValue is an authentication token endpoint. - AuthProviderUrlQueryParameter: Allows the user to specify custom query parameters to be added to the callout to the authentication provider at run time. Currently, supported only for AWS Signature V4 with STS. The allowed AuthProviderUrlQueryParameter values are AwsExternalId and AwsDuration, used with AWS STS. - AwsStsPrincipal: Configures AWS Signature V4 along with STS. ParameterName is AwsStsPrincipal and ParameterValue isn’t specified. - CreatedByNamespace: Reserved for internal use. - CustomPrincipal: Reserved for internal use. - ExternalAuthIdentityProvider: Specifies that this parameter configures an authentication provider referenced by the ExtlAuthIdentityProvider field. - GlobalNamedPrincipal: Reserved for internal use. - JwtBodyClaim: Specifies a JWT (JSON Web Token) body claim, where ParameterName is the key and ParameterValue is the value. For example, the parameter name for a JWT audience is aud. - JwtHeaderClaim: Specifies a JWT header claim, where ParameterName is the key and ParameterValue is the value. For example, the parameter name for a JWT key identifier is kid. - ManagedByComponent: Reserved for internal use. - ManagedByFeature: Reserved for internal use. - NamedPrincipal: Specifies that the parameter uses the same set of user credentials for all users who access the external system. - PerUserPrincipal: Provides access control at the individual user level. - PrincipalIdentityAlias: Reserved for internal use. - SfHttpRequestExtensionName: Reserved for internal use. - SigningCertificate: Specifies the certificate used for an authentication signature. Use the Certificate field to specify the certificate name. Used for OAuth with JWT Bearer Flow and AwsSv4 STS with RolesAnywhere authentication. - SystemUserPrincipal: Reserved for internal use. | | ParameterValue | Type string Description If the ParameterType field describes a literal value then the literal value is stored in this field. | | Principal | Type string Description If the value of the ParameterType field is either NamedPrincipal or PerUserPrincipal, this field points to a permission set. That value then determines the set of users that are allowed to use credentials provided by the credential provider. The value of the ParameterName field specifies the name of this principal. **First available in API version 56.0, this field is removed in API version 58.0 and later.** | | SequenceNumber | Type int Description Specifies the order of principals to apply when a user participates in more than one principal. For example, a user could be part of multiple permission sets that are applicable for a credential provider. Priority is from lower to higher numbers. You can set this field only when ParameterType is NamedPrincipal. | #### See Also - [_Salesforce Help_: Named Credentials](https://help.salesforce.com/HTViewHelpDoc?id=named_credentials_about.htm&language=en_US "Salesforce Help: Named Credentials - HTML (New Window)") - [_Named Credentials Developer Guide_: Get Started with Named Credentials](https://developer.salesforce.com/docs/platform/named-credentials/guide/get-started.html "Named Credentials Developer Guide: Get Started with Named Credentials - HTML (New Window)") - [_Named Credentials Developer Guide_: Named Credential API Links](https://developer.salesforce.com/docs/platform/named-credentials/references/named-credentials-reference/nc-api-links.html "Named Credentials Developer Guide: Named Credential API Links - HTML (New Window)") - [_Apex Developer Guide_: Invoking Callouts Using Apex](https://developer.salesforce.com/docs/atlas.en-us.264.0.apexcode.meta/apexcode/apex_callouts.htm " Apex Developer Guide: Invoking Callouts Using Apex - html (New Window)") - [_Apex Developer Guide_: Named Credentials as Callout Endpoints](https://developer.salesforce.com/docs/atlas.en-us.264.0.apexcode.meta/apexcode/apex_callouts_named_credentials.htm " Apex Developer Guide: Named Credentials as Callout Endpoints - HTML (New Window)") # 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 object is available in API version 51.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | CertificateId | Type reference Properties Filter, Group, Nillable, Sort Description 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. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note For best performance, verify that your remote HTTPS encrypted sites have OCSP (Online Certificate Status Protocol) stapling turned on. | | CustomConfiguration | Type textarea Properties Nillable Description A string of configuration parameters that are specific to the external data source’s type. - [Custom Configuration for the Salesforce Connect Cross-Org Adapter](#customconfig_xorg) - [Custom Configuration for the Salesforce Connect OData 2.0 or 4.0 Adapter](#customconfig_odata) - [Custom Configuration for the Salesforce Connect Custom Adapter](#customconfig_apex) | | DeveloperName | Type string Properties Filter, Group, Sort Description The developer’s internal name for the external data source used 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. This field is automatically generated, but you can supply your own value if you create the record by using the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance may slow while Salesforce generates one for each record. | | Endpoint | Type textarea Properties Nillable Description 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. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated type in Tooling API. The full name can include a namespace prefix. 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. | | IsWritable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Lets the Lightning 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. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the external data source. The value for this field is the language value of the org. | | ManageableState | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package. Possible values are: - beta—Managed-Beta - deleted—Managed-Proposed-Deleted - deprecated—Managed-Proposed-Deprecated - deprecatedEditable—SecondGen-Installed-Deprecated - installed—Managed-Installed - installedEditable—SecondGen-Installed-Editable - released—Managed-Released - unmanaged—Unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description 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. | | Metadata | Type [ExternalDataSource](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_externaldatasource.htm) Properties Create, Nillable, Update Description Provides access to the associated type and related fields in Tooling API. | | NamedCredentialId | Type reference Properties Filter, Group, Nillable, Sort Description The Salesforce ID of the referenced named credential for an external data source. Required for Salesforce Connect adapters for Amazon DynamoDB, Amazon Athena, GraphQL, and OData 4.01. For connecting to other external data sources, the field must be null. This is a relationship field. Relationship Name NamedCredential Relationship Type Lookup Refers To NamedCredential | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The namespace of the external data source. An external data source can be in an extension namespace different than the object. | | OauthRefreshToken | Type textarea Properties Nillable Description The OAuth refresh token. Used to obtain a new access token for an end user when a token expires. | | OauthScope | Type string Properties Filter, Nillable, Sort Description Specifies the scope of permissions to request for the access token. | | OauthToken | Type textarea Properties Nillable Description The access token issued by the external system. | | Password | Type textarea Properties Nillable Description 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 | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Determines whether you're using one set or multiple sets of credentials to access the external system. Possible values are: - Anonymous - NamedCustomPrincipal - NamedUser - PerUser | | Protocol | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The authentication protocol that’s required to access the external system. Possible values are: - AwsSv4 - Basic - Custom - Jwt - JwtExchange - NoAuthentication - Oauth - Password | | Repository | Type string Properties Filter, Group, Nillable, Sort Description Used for SharePoint Online. If metadata isn’t accessible, use this field to create tables and default table fields. | | Type | Type picklist Properties Filter, Group, Restricted picklist, Sort Description For Salesforce Connect, specifies the adapter that connects to the external system. The valid values are: - AmazonAthena—Amazon Athena - AmazonDynamoDB—Amazon DynamoDB - GraphQl—GraphQL - OData—OData 2.0 adapter - OData4—OData 4.0 adapter - OData401—OData 4.01 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 - ContenHubIsotope—Isotope 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. For Digital Lending Configurator, the valid value is: - AFPPAttribute—The data source name for the Application Form Product Proposal Attribute virtual object. For the federated search external data source type, the valid value is: - OpenSearch For Transaction Management in Revenue Cloud, the valid values are: - ASPAttribute—The data source name for the Asset State Period Attribute virtual object. Available in API version 63.0 and later. - OIAttribute—The data source name for the Order Item Attribute virtual object. Available in API version 63.0 and later. - QLIAttribute—The data source name for the Quote Line Item Attribute virtual object. Available in API version 63.0 and later. For SalesAgreement in Manufacturing Cloud, the valid values are: - SAPAttribute—The data source name for the SalesAgreement Product Attribute virtual object. Available in API version 60.0 and later. These values are reserved for internal use: - AssetAttribute - ClaimAttributeDS - ClaimItemAttributeDS - CryptoTrEnvChgLogSnp - CtrtGrpPlnAttr - CtrtGrpPlnGrpClsAttr - FAAttribute - FLAttribute - IAItemProdtAttr - Identity - InsPolicyAttribute - IPAAttribute - IPCAttribute - IPCvrBnftAttribute - IPPAttribute - SdbOvenPODataSource - Wrapper | | Username | Type string Properties Filter, Group, Nillable, Sort Description 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 | Type string Properties Filter, Group, Nillable, Sort Description Reserved for future use. | ## Custom Configuration for the 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 ## Custom Configuration for the 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 ## Custom Configuration for the 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. # ExternalDataSrcDescriptor Contains the metadata information for the external schema of an external data source. Use the metadata to map attributes from an AWS data source, such as Amazon DynamoDB and Amazon Athena, to Salesforce external object fields. Also, use the metadata to customize the data retrieval queries to an AWS data source. This object is available in API version 55.0 and later for Amazon DynamoDB and in API version 56.0 and later for Amazon Athena. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | CustomObjectId | Type reference Properties Filter, Group, Nillable, Sort Description If set, the ID of the external object associated with the descriptor. This is a relationship field. Relationship Name CustomObject Relationship Type Lookup Refers To CustomObject | | Descriptor | Type base64 Properties Nillable Description The descriptor document that contains the metadata information. | | DescriptorVersion | Type string Properties Filter, Group, Nillable, Sort Description If the external system supports schema versioning for the data source, the optional descriptor document version tracks the external system's schema version. Several descriptors with different document versions may be active. | | DeveloperName | Type string Properties Filter, Group, Sort Description The unique name of the child-level setup entity. | | ExternalDataSourceId | Type reference Properties Filter, Group, Sort Description Salesforce ID of the external data source that defines the external system. This is a relationship field. Relationship Name ExternalDataSource Relationship Type Lookup Refers To ExternalDataSource | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated type in Tooling API. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the descriptor document. | | | | | ManageableState | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The manageable state of the descriptor that is contained in a package. Possible values are: - beta—Managed-Beta - deleted—Managed-Proposed-Deleted - deprecated—Managed-Proposed-Deprecated - deprecatedEditable—SecondGen-Installed-Deprecated - installed—Managed-Installed - installedEditable—SecondGen-Installed-Editable - released—Managed-Released - unmanaged—Unmanaged | | Metadata | Type complexvalue Properties Create, Nillable, Update Description The external data source descriptor's metadata. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The namespace prefix that is associated with this object. | | Subtype | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The subtype of the descriptor. Possible values are: - SchemaTableDDL—Used to store the metadata for the external data source. - SchemaTableMetadata—Used to cache information about the external system. - SchemaTableQualifiers—Used to customize the data retrieval query to the external system. | | SystemVersion | Type int Properties Filter, Group, Sort Description The version that defines the descriptor format and allows compatibility with descriptor formats between Salesforce releases. | | Type | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The type of the descriptor. Possible value: - Schema | # ExternalDataTransportFieldTemplate Reserved for internal use. # ExternalDataTransportObjectTemplate Reserved for internal use. # ExternalServiceRegistration Represents the external service configuration for an org. Available in API version 39.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP Calls create(), delete(), query(), retrieve(),update(), upsert() ## Supported REST HTTP Methods GET, PUT, POST, and DELETE ## Fields | Field | Details | | --- | --- | | Description | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description The description for the external service, defined when the service is created. | | DeveloperName | Type string Properties Create, Filter, Group, Sort Description The developer’s internal name for the external data source used 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. | | Language | Type string Properties Create, DefaultedOnCreate, Filter, Group, Nillable, RestrictedPicklist, Sort, Update Description The language of the external service configuration. - 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 Spanish (Mexico) defaults to Spanish for customer-defined translations. - Swedish: sv - Thai: th The Salesforce user interface is fully translated to Thai, but Help is in English. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description Label for the external service. | | NamedCredential | Type string Properties Filter, Group, Nillable, Sort Description The name reference of the named credential to be used for the service. | | NamedCredentialReferenceId | Type reference Properties Filter, Group, Nillable, Sort Description The name reference of the named credential to be used for the service. References NamedCredential. Available in API version 52.0 and later. Relationship Name NamedCredentialReference Relationship Type Lookup Refers To NamedCredential | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The namespace of the package of which the external service is a part. | | ProviderAssetEndpoint | Type string Properties Filter, Group, Nillable, Sort Description Location or ID of the latest schema or metadata at an external site. Currently applies only to MuleSoft assets. Available in API version 57.0 and later. | | RegistrationProvider | Type string Properties Filter, Group, Nillable, Sort Description A reference to the registration provider. - If the registrationProviderType is ExternalConnector, this field contains the external connector name. - If the registrationProviderType is Heroku, this field contains the HerokuAppLink ID. - For any other registrationProviderType value, this field is blank and reserved for future use. | | RegistrationProviderAsset | Type string Properties Filter, Group, Nillable, Sort Description A polymorphic foreign key field that contains the name of the asset related to the external service registration. - For an external service registration created for a named query, this field contains the named query API name. - For an external service registration created for an Apex class that has methods exposed as REST resources or methods that are aura-enabled, this field contains the Apex class name. Available in API version 66.0 and later. | | RegistrationProviderType | Type string Properties Filter, Group, Nillable, Restricted picklist, Sort Description The type of schema provider used to create this external service. Valid values are: - AgentActionOutputs - AgentToAgent - Anypoint - AnypointPublic - ApexRest - AuraEnabled - CodeExtension - Commerce - ContextDef - Custom - CustomExternalConnector - DocumentProcessing - ExternalConnector - Heroku - MuleSoft - NamedQuery - SchemaInferred - Standard For API version 56.0 and later. | | Schema | Type textarea Properties Create, Nillable, Update Description The content of the OpenAPI 2.0 or OpenAPI 3.0 schema in JSON or YAML format. | | SchemaAbsoluteUrl | Type url Properties Create, Filter, Nillable, Sort, Update Description The full, absolute URL to the schema. For API version 56.0 and later, populated when a user selects **Absolute URL** during registration. | | SchemaType | Type picklist Properties Create, Filter, Group, Nillable, RestrictedPicklist, Sort, Update Description ID format of the schema. For API version 48.0 and later, the valid value is OpenApi. For API version 47.0 and earlier, the valid values are InteragentHyperSchema and OpenApi. | | SchemaUploadFileExtension | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description The file's extension. For API version 56.0 and later, populated when a user selects **Upload from local** during registration. | | SchemaUploadFileName | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description The file's name without the file extension. For API version 56.0 and later, populated when a user selects **Upload from local** during registration. | | SchemaUrl | Type url Properties Create, Filter, Group, Nillable, Sort, Update Description The schema's URL defined when registering a service. The path must begin with “/” and be a relative path. | | ServiceBinding | Type string Properties Nillable Description Maps non-supported media types for this external service registration to supported media types. For API version 53.0 and later. | | ServiceName | Type string Properties Filter, Group, Nillable, Sort Description The name of the cataloged API service that this external service registration belongs to. Available in API version 63.0 and later. This field was removed in API version 65.0. | | Status | Type picklist Properties Filter, Group, Nillable, RestrictedPicklist, Sort Description Indicates whether the service registration is finished. Valid values are complete and incomplete. | | SystemVersion | Type integer Properties Create, Filter, Group, Nillable, Sort, Update Description Identifies the external service registration revision. For valid values, see [ExternalServiceRegistation](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_externalserviceregistration.htm "HTML (New Window)") in the Metadata API Developer Guide. | # ExternalString Represents a custom label for a translatable UI component. Includes access to the associated label in the Metadata API. Available in API version 38.0 and later. ## Supported SOAP Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods DELETE, GET, PATCH, POST ## Limitations [SOSL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_sosl_limits.htm "Two Tooling API objects, EntityDefinition and FieldDefinition, have some SOSL limitations. ExternalString and MetadataComponentDependency (Beta) don’t support SOSL searches.") ## Fields | Field | Details | | --- | --- | | Category | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description Text that categorizes the label, limited to 255 characters. Separate each category with a comma. This field can be used in filter criteria when creating custom label list views. | | IsProtected | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether the custom label is protected (true) or not (false). The default value is false . | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Restricted picklist, Sort Description The language of the custom label. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note You can’t change the language of an existing custom label. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description An easily recognizable internal label to identify this custom label. This description is used in merge fields and is not translated. | | Name | Type string Properties Create, Filter, Group, Sort Description The name used in Apex and Visualforce pages to reference the custom label. Names must contain only alphanumeric characters, start with a letter, contain no spaces or double underscores, and be unique from all other labels in your org. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The namespace of the package of which the custom label is a part. | | Value | Type string Properties Create, Filter, Sort, Update Description The custom label value, limited to 1,000 characters. This value can be translated into any language that Salesforce supports. | # ExternalStringLocalization Represents the translation of custom labels for a UI component represented by the [ExternalString](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_externalstring.htm "Represents a custom label for a translatable UI component. Includes access to the associated label in the Metadata API. Available in API version 38.0 and later.") object. This object is available in API version 49.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API HTTP Methods DELETE, GET, PATCH, POST ## Special Access Rules - Your organization must be using Professional, Enterprise, Performance, Unlimited, or Developer edition. - Translation Workbench and data translation must be enabled in your org. - To view this object, you must have the “View Setup and Configuration” permission. ## Limitations [SOSL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_sosl_limits.htm "Two Tooling API objects, EntityDefinition and FieldDefinition, have some SOSL limitations. ExternalString and MetadataComponentDependency (Beta) don’t support SOSL searches.") ## Fields
Field Details
ExternalStringId
Type
reference
Properties
Create, Filter, Group, Sort
Description
The ID of the ExternalString associated with the custom label that is being translated.
Language
Type
picklist
Properties
Create, Filter, Group, Restricted picklist, Sort
Description
The language for this translated text.
Note

Note

You can’t change the language of an existing ExternalString.

ManageableState
Type
ManageableState enumerated list
Properties
Filter, Group, Nillable, Restricted picklist, Sort
Description
Indicates the manageable state of the specified component that is contained in a package:
  • beta
  • deleted
  • deprecated
  • deprecatedEditable
  • installed
  • installedEditable
  • released
  • unmanaged
NamespacePrefix
Type
string
Properties
Filter, Group, Nillable, Sort
Description
The namespace of the package of which the custom label is a part.
Value
Type
string
Properties
Create, Filter, Sort, Update
Description
The translated string value, limited to 32,000 characters or 96,000 bytes of data, up to the length of the translated string.
# 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. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. This object is available in API version 32.0 and later. ## Supported SOAP Calls query() describeSObject() ## Supported REST HTTP Methods GET ## Limitations [SOQL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_soql_limits.htm "Some Tooling API objects have SOQL limitations. These limitations apply to any Metadata Catalog query, which applies to all Custom Metadata Types and Metadata Catalog entities, not only the ones explicitly listed.") [SOSL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_sosl_limits.htm "Two Tooling API objects, EntityDefinition and FieldDefinition, have some SOSL limitations. ExternalString and MetadataComponentDependency (Beta) don’t support SOSL searches.") ## Fields
Field Details
BusinessOwnerId
Type
reference
Properties
Filter, Group, Nillable, Sort
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. This field is available in API version 45.0 and later.

BusinessStatus
Type
picklist
Properties
Filter, Group, Nillable, Sort
Description
Indicates whether the field is in use. Valid values include:
  • Active
  • DeprecateCandidate
  • Hidden

This field is available in API version 45.0 and later.

CompactLayoutItems
Type
QueryResult
Properties
Filter, Group, Sort
Description
The CompactLayoutItemInfo records associated with this field definition. Available in Tooling API starting version 34.0. Because this field represents a relationship, use only in subqueries.
Example subquery:
SELECT Id, QualifiedApiName, (SELECT DurableId, SortOrder FROM CompactLayoutItems) FROM
      FieldDefinition WHERE EntityDefinition.QualifiedApiName = 'Account' AND QualifiedApiName = 'Name'
ComplianceGroup
Type
multipicklist
Properties
Filter, Nillable
Description
The compliance acts, definitions, or regulations related to the field’s data. Valid values include:
  • CCPA—California Consumer Privacy Act
  • COPPA—Children's Online Privacy Protection Act
  • GDPR—General Data Protection Regulation
  • HIPAA—Health Insurance Portability and Accountability Act
  • PCI—Payment Card Industry
  • PersonalInfo—Personal information. For use with the Enhanced Personal Information Management feature. Only available if Enhanced Personal Information Management and Digital Experiences are enabled.
  • PII—Personally Identifiable Information

This field is available in API version 47.0 and later.

ControlledFields
Type
QueryResult
Properties
Filter, Group, Sort
Description
The controlled fields in a dependent picklist. Use in subqueries to reduce the number of queries. Available in Tooling API starting version 34.0. Because this field represents a relationship, use only in subqueries.
ControllingFieldDefinition
Type
FieldDefinition
Properties
Filter, Group, Sort
Description
The field definition 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. Available in Tooling API starting version 34.0.
ControllingFieldDefinitionId
Type
string
Properties
Filter, Group, Sort
Description
The ID of the ControllingFieldDefinition for this field. Available in Tooling API starting version 34.0.
DataType
Type
string
Properties
Filter, Group, Sort
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
string
Properties
Filter, Nillable, Sort
Description
A description of the field definition.
DeveloperName
Type
string
Properties
Filter, Group, 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
Properties
Filter, Group, 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.
EntityDefinition
Type
EntityDefinition
Properties
Filter, Group, Sort
Description
A relationship lookup to the object type that contains this field. For example, if the field is defined on an account, the lookup is to Account. You can’t interact directly with this field. Instead, use it in queries.
 SELECT Entity​Definition.​Label FROM
      Field​Definition WHERE Entity​Definition.​QualifiedApi​Name='Lead'
EntityDefinitionId
Type
string
Properties
Filter, Group, Sort
Description
The durable ID for the object defined in the EntityDefinition field.
ExtraTypeInfo
Type
string
Properties
Filter, Group, Sort
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
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
Properties
Defaulted on create, Filter, Group, Sort
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.
IsApiGroupable
Type
boolean
Properties
Defaulted on create, Filter, Group, Sort
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.
IsApiSortable
Type
boolean
Properties
Defaulted on create, Filter, Group, Sort
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.
IsCalculated
Type
boolean
Properties
Defaulted on create, Filter, Group, Sort
Description
If true, the field’s value is calculated. Available in Tooling API starting version 34.0.
IsCompactLayoutable
Type
boolean
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.
IsCompound
Type
boolean
Properties
Defaulted on create, Filter, Group, Sort
Description
If true, the field is a compound of other fields. The default value is false. Available in Tooling API starting version 38.0.
IsEverApiAccessible
Type
boolean
Properties
Defaulted on create, Filter, Group, Sort
Description
If true, the field is describable in the API. The default value is false. Available in Tooling API starting version 49.0.
IsFieldHistoryTracked
Type
boolean
Properties
Defaulted on create, Filter, Group, Sort
Description
If true, the field’s history can be tracked. Available in Tooling API starting version 34.0.
IsFlsEnabled
Type
boolean
Properties
Defaulted on create, Filter, Group, Sort
Description
If true, you can set field-level security on this field. Available in Tooling API starting version 35.0.
IsHighScaleNumber
Type
boolean
Properties
Defaulted on create, Filter, Group, Sort
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.
IsHtmlFormatted
Type
boolean
Properties
Defaulted on create, Filter, Group, Sort
Description
If true, the field contains HTML. Available in Tooling API starting version 34.0.
IsIndexed
Type
boolean
Properties
Defaulted on create, Filter, Group, Sort
Description
If true, the field is indexed in the database. Available in Tooling API version 35.0 and later.
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.
IsListFilterable
Type
boolean
Properties
Defaulted on create, Filter, Group, Sort
Description
If true, the field can be filtered for a related list. Available in Tooling API starting version 34.0.
IsListSortable
Type
boolean
Properties
Defaulted on create, Filter, Group, Sort
Description
If true, the field can be sorted for a related list. Available in Tooling API starting version 34.0.
IsListVisible
Type
boolean
Properties
Defaulted on create, Filter, Group, Sort
Description
If true, the field can be included in a related list. Available in Tooling API starting version 34.0.
IsNameField
Type
boolean
Properties
Defaulted on create, Filter, Group, Sort
Description
If true, the field is a name field. Available in Tooling API starting version 34.0.
IsNillable
Type
boolean
Properties
Defaulted on create, Filter, Group, Sort
Description
If true, the field can be left out of queries on the object. Available in Tooling API starting version 34.0.
IsPolymorphicForeignKey
Type
boolean
Properties
Defaulted on create, Filter, Group, Sort
Description
Indicates whether the foreign key includes multiple object types (true) or not (false). Available in Tooling API version 41.0 and later.
IsSearchPrefilterable
Type
boolean
Properties
Defaulted on create, Filter, Group, Sort
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. Available in Tooling API version 40.0 and later. Prefiltering is supported only in WHERE clauses with the equals (=) operator.
IsWorkflowFilterable
Type
boolean
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.
Label
Type
string
Properties
Filter, Group, 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
Properties
Filter, Group, Sort
Description
The maximum number of bytes available to store the value in this field. Available in Tooling API starting version 34.0.
LookupFilters
Type
QueryResult
Properties
Filter, Group, Nillable, Sort
Description
The lookup filters associated with the field. Because this field represents a relationship, use only in subqueries.
Example subquery:
SELECT DurableId, QualifiedApi​Name, (SELECT Id, SourceObject,​
      SourceField​Definition.​Label, IsOptional, Active, Developer​Name, LastModified​By.Name,
      LastModified​Date FROM Lookup​Filters) FROM Entity​Definition WHERE QualifiedApi​Name =
      'User'"
Note

Note

LookupFilter isn’t supported on the article type object.

MasterLabel
Type
string
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
CustomField
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
Properties
Filter, Group, 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.
Particles
Type
QueryResult
Properties
Filter, Group, Sort
Description
The EntityParticles associated with this field. Available in Tooling API starting version 34.0. Because this field represents a relationship, use only in subqueries.
Precision
Type
int
Properties
Filter, Group, Sort
Description
The maximum number of digits allowed for this field. Available in Tooling API starting version 34.0.
Publisher
Type
Publisher
Properties
Filter, Group, Sort
Description
The publisher of this field, for example Salesforce, a user, or a package name. Available in Tooling API starting version 34.0.
PublisherId
Type
string
Properties
Filter, Group, Sort
Description
ID of the publisher associated with this field. Available in Tooling API starting version 34.0.
QualifiedApiName
Type
string
Properties
Filter, Group, Sort
Description
A unique external name for the field.
ReferenceTargetField
Type
string
Properties
Filter, Group, Sort
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
RelationshipReferenceTo
Properties
Filter, Group, Sort
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.
RelationshipDomains
Type
QueryResult
Properties
Filter, Group, Sort
Description
Metadata about the relationships this field has with other objects. Available in Tooling API starting version 34.0. Because this field represents a relationship, use only in subqueries.
RelationshipName
Type
string
Properties
Filter, Group, Sort
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
Properties
Description
Reserved for internal use. Available in Tooling API starting version 34.0.
Scale
Type
int
Properties
Filter, Group, Sort
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
Properties
Filter, Group, Nillable, Sort
Description
Indicates the sensitivity of the data contained in this field. Valid values include:
  • Public
  • Internal
  • Confidential
  • Restricted
  • MissionCritical
This field is available in API version 45.0 and later.
ServiceDataType
Type
DataType
Properties
Filter, Group, Sort
Description
The service datatype for this field. Available in Tooling API starting version 34.0.
ServiceDataTypeId
Type
string
Properties
Filter, Group, Sort
Description
The ID of the ServiceDataType. Available in Tooling API version 34.0. Don’t use, provided for backward compatibility only.
ServiceDataTypes
Type
QueryResult
Properties
Filter, Group, Sort
Description
The ServiceDataTypes associated with this field. Available in Tooling API starting version 34.0. Because this field represents a relationship, use only in subqueries.
ValueType
Type
DataType
Properties
Filter, Group, Sort
Description
The data type of the field. Available in Tooling API version 35.0.
ValueTypeId
Type
string
Properties
Filter, Group, Sort
Description
The ID of the ValueType. Available in Tooling API version 35.0.
WorkflowFieldUpdates
Type
QueryResult
Properties
Filter, Group, Sort
Description
The workflow field updates for this field. Field updates allow you to automatically update a field value to one that you specify when a workflow rule is triggered. Available in Tooling API starting version 34.0. Because this field represents a relationship, use only in subqueries.
![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note 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. ## Usage When querying or searching the FieldDefinition object, you must filter using the following syntax: WHERE EntityDefinition.QualifiedApiName ='\[ObjectAPIName\]'. Example Query: SELECT DurableId, QualifiedApiName, Label, DataType, ValueTypeId, PublisherId, Length, Precision, Scale, EntityDefinitionId, RelationshipName FROM FieldDefinition 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. SELECT QualifiedApiName, RelationshipName, ReferenceTo, ReferenceTargetField FROM FieldDefinition WHERE EntityDefinition.QualifiedApiName = 'Event' AND QualifiedApiName = 'WhoId' Example Query: Find the Datatypes for Account Fields SELECT QualifiedApiName, (Select DataType From Particles) FROM FieldDefinition WHERE EntityDefinition.QualifiedApiName ='Account' ## CustomField Metadata
Field Name Field Type Description
caseSensitive boolean Indicates 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.

defaultValue string If specified, represents the default value of the field.
deleteConstraint DeleteConstraint is an enumeration of strings Provides 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.

description string Description of the field.
displayFormat string The display format.
displayLocationInDecimal boolean Indicates 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.
externalDeveloperName string Available 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.
externalId boolean Indicates whether the field is an external ID field (true) or not (false).
formula string If specified, represents a formula on the field.
formulaTreatBlankAs TreatBlanksAs Indicates how to treat blanks in a formula. Valid values are BlankAsBlank or BlankAsZero.
fullName string Required. 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
indexed boolean Indicates 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.
inlineHelpText string Represents the content of field-level help. For more information, see “Define Field-Level Help” in Salesforce Help.
isFilteringDisabled boolean Available only for external objects. Indicates whether the custom field is available in filters. This field is available in API version 32.0 and later.
isNameField boolean Available 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.
isSortingDisabled boolean Available only for external objects. Indicates whether the custom field is sortable. This field is available in API version 32.0 and later.
reparentableMasterDetail boolean Indicates 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.

label string Label for the field. You can’t update the label for standard picklist fields, such as the Industry field for accounts.
length int Length of the field.
lookupFilter LookupFilter The Lookup filter definition for the custom field.

Available in API version 30.0 and later.

maskChar EncryptedFieldMaskChar For encrypted fields, specifies the character to be used as a mask. Valid values:
  • asterisk
  • X
maskType EncryptedFieldMaskType For 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.
picklist Picklist If specified, the field is a picklist, and this field enumerates the picklist values and labels.
populateExistingRows boolean Indicates whether existing rows are populated (true) or not (false).
precision int The 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.
referenceTargetField string Available 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.
referenceTo string If specified, indicates a reference this field has to another object.
relationshipLabel string Label for the relationship.
relationshipName string If 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.
relationshipOrder int This 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.

required boolean Indicates whether the field requires a value on creation (true) or not (false).
scale int The 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.
startingNumber int If specified, indicates the starting number for the field.
stripMarkup boolean Set to true to remove markup, or false to preserve markup. Used when converting a rich text area to a long text area.
summarizedField string Represents the field on the detail row that’s being summarized. This field can’t be null unless the value of SummaryOperation is count.
summaryForeignKey string Represents the master-detail field on the child that defines the relationship between the parent and the child.
summaryOperation SummaryOperations is an enumeration of strings Represents the sum operation to be performed. Valid values:
  • Count
  • Min
  • Max
  • Sum
trackFeedHistory boolean Indicates whether the field is enabled for feed tracking (true) or not (false).

This field is available in API version 18.0 and later.

trackHistory boolean Indicates 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.
trackTrending boolean Indicates 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.
trueValueIndexed boolean This 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.
type FieldType is an enumeration of strings Indicates 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.

unique boolean Indicates whether the field is unique (true) or not (false).
visibleLines int Indicates the number of lines displayed for the field.
writeRequiresMasterRead boolean Sets 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 Name Field Type Description
controllingField string The 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.
picklistValues PicklistValue[]

Required. Represents a set of values for a picklist.

sorted boolean

Required. 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 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 later.
color string Indicates 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.
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. 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.
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 Your Self-Service Portal” in Salesforce Help.

Note

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.

default boolean Required. Indicates whether this value is the default picklist value in the specified picklist (true), or not (false).
description string Description 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.
forecastCategory ForecastCategories, an enumeration of type string Indicates 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.

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 Metadata.
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 “Start Using Tasks” in Salesforce 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. 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.
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 Salesforce 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.
## RelationshipReferenceTo Type
Field Type Details
referenceTo string[]

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](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/metadata.htm "HTML (New Window)"). # FieldMapping Represents a mapping between fields in an object in the org and fields in a data service. A data service uses two separate field maps: one controls how the data service matches records in an object, and the other controls how the data service adds or updates data for an existing record. This object is available in API version 38.0 and later. ## Supported SOAP Calls query(),search() ## Supported REST HTTP Methods GET ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description A unique name for this FieldMapping. 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. Provides a globally unique identifier for the FieldMapping, which prevents conflicts with FieldMapping objects from other packages that have the same MasterLabel. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | FieldMappingClientId | Type reference Properties Create, Filter, Group, Sort, Update Description A foreign key reference to a CleanRule that uses this FieldMapping. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The language of the FieldMapping. The following values are supported: - 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 Spanish (Mexico) defaults to Spanish for customer-defined translations. - Swedish: sv - Thai: th The Salesforce user interface is fully translated to Thai, but Help is in English. | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description Master label for this object. This display value is the internal label that is not translated. | | SobjectType | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort Description An object that’s acted on by this FieldMapping. The set of picklist values includes all the standard and custom object types in your org. However, if you specify an object that the data service doesn’t support, the API call returns an error. | # FieldMappingField Represents a field in an object in the org that maps to a field in a data service. This object is available in API version 38.0 and later. ## Supported SOAP Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods GET ## Fields | Field | Details | | --- | --- | | DataServiceField | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description The display name of the field in the data service that maps to this FieldMappingField. | | FieldMappingRowId | Type reference Properties Create, Filter, Group, Sort Description Foreign key for the object associated with this FieldMappingField object. | | DataServiceObjectName | Type picklist Properties Create, Filter, Group, Nillable, Restricted picklist, Sort Description A data service object that contains the field represented by this FieldMappingField. The set of picklist values includes all the object types defined in the data service. However, if you specify a non-existent object, the API call returns an error. | | Priority | Type int Properties Create, Filter, Group, Nillable, Sort, Update Description Represents the priority that the data service uses when it updates the field, relative to other update rules that exist for the same field. | # FieldMappingRow Represents a field in a data service record that maps to a field in an object record in the org. This object is available in API version 38.0 and later. ## Supported SOAP Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods GET ## Fields | Field | Details | | --- | --- | | FieldMappingID | Type reference Properties Create, Filter, Group, Sort Description A foreign key reference to the parent FieldMapping for this FieldMappingRow. | | FieldName | Type picklist Properties Create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The set of picklist values includes all the standard and custom object types in your org. | | Operation | Type picklist Properties Create (reserved for future use), Defaulted on create (reserved for future use), Filter, Group, Nillable (reserved for future use), Restricted picklist (reserved for future use), Sort, Update (reserved for future use) Description The comparison operation that the data service applies when it compares the value of this FieldMappingRow to the mapped field in the object specified in SObjectType. The following values are supported. - Autofill fills empty fields and keeps values of fields that already contain data. - Overwrite fills empty fields and updates fields that already contain data. History tracking is required for fields set to Overwrite. | | SobjectType | Type picklist Properties CreateFilter, Group, Nillable, Restricted picklist, Sort Description The standard or custom object in your org that contains the field mapped by this FieldMappingRow. The set of picklist values includes all the standard and custom object types in your org. However, if you specify an object that the data service doesn’t support, the API call returns an error. | # FieldRestrictionRule Represents a field visibility rule that controls whether a field is visible to a user, based on the field’s inclusion in the PersonalInfo\_EPIM field set. If Enhanced Personal Information Management setting was enabled before Spring ’22, field visibility is based on the field’s compliance categorization. This object is available in API version 52.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules - To access this object, you must have the Manage Sharing permission. - To create and manage Employee field visibility rules, you must be assigned a Workplace Command Center permission set license and the Provides access to Workplace Command Center features system permission. - To create and manage User field visibility rules, you must enable Digital Experiences and the Enhanced Personal Information Management feature. ## Fields | Field | Details | | --- | --- | | Classification | Type string\[\] Properties Filter Description Required. The data classification compliance categorization or field set that is targeted by the rule. The rule applies to fields that are marked with this categorization or included in this field set. If you enabled Enhanced Personal Information Management before Spring ‘22 (API version 54.0), you can use Salesforce's default compliance categorization values or values that you add yourself. If you enabled Enhanced Personal Information Management after Spring ‘22 (API version 54.0), use the PersonalInfo\_EPIM field set or a field set that you add yourself. | | ClassificationType | Type ClassificationType ([enumeration](http://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_objects_intro.htm) of type string) Properties Defaulted on create, Filter, Group, Restricted picklist, Sort Description The type of classification method used in your org. If you enabled Enhanced Personal Information Management before Spring ‘22 (API version 54.0), use ComplianceCategory. If you enabled Enhanced Personal Information Management after Spring ‘22, use FieldSet. - ComplianceCategory— - FieldSet— The default value is ComplianceCategory. Available in API version 54.0 and later. | | Description | Type textarea Properties Filter, Group, Sort Description Required. The description of the rule. | | DeveloperName | Type string Properties Filter, Group, Sort Description The unique name for the FieldRestrictionRule object. 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 is automatically generated, but you can supply your own value if you create the record using the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance may slow while Salesforce generates one for each record. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | EnforcementType | Type picklist Properties Defaulted on create, Filter, Group, Restricted picklist, Sort Description Required. The type of rule. Possible values are: - FieldRestrict—Field visibility rule. Only this value is valid. - Restrict—Do not use. - Scoping— Do not use. | | FullName | Type string Properties Create, Group, Nillable Description Required. The full name of the associated FieldRestrictionRule in Metadata API. The full name can include a namespaceprefix. 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. | | IsActive | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether the rule is active (true) or not (false). The default value is false. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the field visibility rule. The value for this field is the language value of the org. | | MasterLabel | Type string Properties Filter, Group, Sort Description Required. Label for the field visibility rule. | | Metadata | Type mns:[FieldRestrictionRule](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_fieldrestrictionrule.htm) Properties Create, Nillable, Update Description The field visibility rule’s metadata. 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. | | RecordFilter | Type textarea Properties Create, Filter, Group, Sort, Update Description Required. The criteria that determine which fields are visible to the specified users. For example, the field can check if the logged-in user matches the Employee’s ID. | | TargetEntity | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Required. The object for which you're creating the rule. Only the Employee and User objects are supported. | | UserCriteria | Type textarea Properties Create, Filter, Group, Sort, Update Description Required. The users that this rule applies to, such as all active users or users with a specified role or profile. | | Version | Type int Properties Filter, Group, Sort Description Required. The rule's version number. | # FieldSet Represents the metadata for a group of fields. Available from API version 33.0 or later. ## Supported SOAP Calls create(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods GET, HEAD ## Fields | Field | Details | | --- | --- | | Description | Type string Properties Filter, Group, Nillable, Sort Description The field set description. This can be useful to describe the reason for creating the set or its intended use. | | DeveloperName | Type string Properties Filter, Group, Sort Description The API name of the field set. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description The set’s label. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The namespace of the package of which the field set is a part. | # FlexiPage Represents a Lightning page. A Lightning page is a customizable page composed of regions containing Lightning components. Includes access to the associated FlexiPage object in the Metadata API. Available from API version 31.0 or later. Lightning pages are used in several places. - In the Salesforce mobile app, a Lightning page is the home page for an app that appears in the navigation menu. - In Lightning Experience, Lightning pages can be used: - To customize the layout of record pages, the Salesforce Home page, and the Email Application pane in the Outlook and Gmail integrations. - As the home page for an app. - As the utility bar for a Lightning app. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### 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. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note In API version 49.0 and later, arrays in a FlexiPage are represented as valueList. Each array element is represented as valueListItem, and the element name is represented as value. In API version 48.0 and earlier, arrays are represented as value and array elements are formatted as a comma-separated list. Any FlexiPage retrieved using API version 49.0 or later uses valueList to represent component property array values, regardless of which API version was used to create the FlexiPage. ## Supported SOAP Calls create(), delete(), describeLayout(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods DELETE,GET, HEAD,PATCH,POST ## Fields
Field Details
Description
Type
string
Properties
Filter, Group, Nillable, Sort
Description
The page description. This field can be useful to describe the reason for creating the page or its intended use.
DeveloperName
Type
string
Properties
Filter, Group, Sort
Description
The API name of the Lightning page.
Note

Note

Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field.

EntityDefinitionId
Type
string
Properties
Filter, Group, Nillable, Sort
Description
The name of the standard object or ID of the custom object that the Lightning page is associated with. For Lightning pages of type AppPage or HomePage, this field is null.

This field is available in API version 39.0 and later.

FullName
Type
string
Properties
Create, Group, Nillable
Description
The full name of the associated FlexiPage 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.
ManageableState
Type
ManageableState enumerated list
Properties
Filter, Group, Nillable, Restricted picklist, Sort
Description
Indicates the manageable state of the specified component that is contained in a package:
  • beta
  • deleted
  • deprecated
  • deprecatedEditable
  • installed
  • installedEditable
  • released
  • unmanaged

This field is available in API version 38.0 and later.

MasterLabel
Type
string
Properties
Filter, Group, Sort
Description
The page’s label.
Metadata
Type
FlexiPageMetadata
Properties
Create, Nillable, Update
Description
Lightning page metadata.
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
Properties
Filter, Group, Nillable, Sort
Description
The namespace of the package of which the FlexiPage is a part.
ParentFlexiPage
Type
string
Properties
Filter, Group, Nillable, Sort
Description
The name of the FlexiPage that this page inherits behavior from. Available in API version 37.0 or later.
SobjectType
Type
string
Properties
Filter, Group, Nillable, Sort
Description
The object the Lightning page is associated with. For Lightning pages of type AppPage or HomePage, this field is null.

Available in API version 37.0 and 38.0. Deprecated as of API version 39.0. Use EntityDefinitionId instead.

Type
Type
picklist
Properties
Filter, Group, Restricted picklistSort
Description
Required. The type of the Lightning page. Valid values are:
  • CdpRecordPage—A Lightning page that is used to override a CDPNearCoreObject record page in Lightning Experience. This value is available in API version 54.0 and later for orgs that have Data 360 enabled.
  • 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 Experience Builder. This value is available in API version 37.0 and later.
  • CommContractDetailViewPage—This value is available in API version 64.0 and later.
  • CommCheckoutPage—A Lightning page that is used to create a B2B Commerce checkout, as created in the Experience Builder. This value is available in API version 46.0 and later.
  • CommFlowPage A Lightning page used to override a flow page, as created in the Experience Builder. This value is available in API version 45.0 and later.
  • CommForgotPasswordPage—A Lightning page that’s used to override a forgot-password page, as created in Experience Builder. This value is available in API version 39.0 and later.
  • CommFlowPage—An out-of-the-box flow page, as created in Experience Builder. This value is available in API version 45.0 and later.
  • CommGlobalSearchResultPage A Lightning page used to override the global search result page, as created in Experience Builder. This value is available in API version 41.0 and later.
  • CommLoginPage—A Lightning page that’s used to override the login page, as created in Experience Builder. This value is available in API version 39.0 and later.
  • CommNoSearchResultsPage—An Experience Builder site page for B2B searches that return no results. The URL for this page is no-results/:term. The page starts out empty. You can add any component to it that accepts parameters to achieve the desired “no results” experience. For example, you can place an HTML Editor component or CMS components for recommendations, banners, help, and support. This value is available in API version 48.0 and later.
  • CommObjectPage—A Lightning page used to override an object page, as created in Experience Builder. This value is available in API version 38.0 and later.
  • CommOrderComfirmationPage—A Lightning page that is used to create a B2B Commerce order confirmation page in checkout, as created in the Experience Builder. This value is available in API version 46.0 and later.
  • CommQuickActionCreatePage—A Lightning page used to override the create record page, as created in Experience Builder. 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 Experience Builder. 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 Experience Builder. 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 Experience Builder. 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 Experience Builder. 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 Experience Builder. This value is available in API version 38.0 and later.
  • EmbeddedServicePage This value is available in API version 45.0 and later.
  • EmailContentPage — A page that contains the builder markup for your email content. When you edit email content in the builder, the FlexiPage object remembers where you put the components.

    Because they include builder markup, you can't retrieve or deploy FlexiPages when type is EmailContentPage.

  • EmailTemplatePage — A page that contains the builder markup for your email template. When you edit an email template in the builder, the FlexiPage object remembers where you put the components.

    Because they include builder markup, you can't retrieve or deploy FlexiPages when type is EmailTemplatePage or EmailContentPage.

  • ForecastingPage —A Lightning page that is used to override the default forecasts page in Lightning Experience. This value is available in API version 57.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 in the Outlook and Gmail integrations. This value is available in API version 38.0 and later.
  • OmniSupervisorPageType—A Lightning page used to customize the user interface on the Omni-Channel Supervisor page. This value is available in API version 60.0 and later.
  • QuickAction—A Lightning page used to customize the fields and layout for a quick action. This value is available as a Beta in API version 68.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.
  • RecordPreview—A Lightning page used to override standard lookup previews when hovering over previewable records in Lightning Experience. This value is available in API version 45.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.
  • VoiceExtension—A Lightning page used to customize user interfaces and agent actions in the Omni-Channel widget for Service Cloud Voice. This value is available in API version 57.0 and later.

Available in API version 32.0 or later. In API versions 32.0 through 36.0, this field can only have a value of AppPage.

## Sample Code This code sample creates a Lightning page with a single Recent Items component, that shows recently used Accounts and MyCustomObject\_\_cs ComponentInstance recentItems = new ComponentInstance(); recentItems.setComponentName("flexipage:recentItems"); ComponentInstanceProperty cip = new ComponentInstanceProperty(); cip.setName("entityNames"); cip.setValue("Account,MyCustomObject\_\_c"); recentItems.setComponentInstanceProperties(new ComponentInstanceProperty\[\]{cip}); FlexiPageRegion mainRegion = new FlexiPageRegion(); mainRegion.setName("main"); mainRegion.setType(FlexiPageRegionType.Region) mainRegion.setComponentInstances(new ComponentInstance\[\] { recentItems }); FlexiPageMetadata fpMetadata = new FlexiPageMetadata(); fpMetadata.setFlexiPageRegions(new FlexiPageRegion\[\]{mainRegion}); fpMetadata.setMasterLabel("My FlexiPage"); fpMetadata.setDescription("A FlexiPage with a recent items component"); fpMetadata.setType(FlexiPageType.AppPage); FlexiPage flexiPage = new FlexiPage(); flexiPage.setFullName("MyFlexiPageDevName"); flexiPage.setMetadata(fpMetadata); // Create SaveResult saveResult = soapConnection.create(new SObject\[\] { flexiPage }); # Flow Use the Flow object to retrieve and update specific flow versions. 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 [Flow Builder](https://help.salesforce.com/articleView?id=flow_builder.htm&language=en_US "HTML (New Window)") in Salesforce Help. When using the Tooling API to work with flows, consider that: ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Legacy flows created with the Desktop Flow Designer can’t be modified with the API. Update your flow by recreating it with Flow Builder. - You can describe information for a flow installed from a managed package but not its metadata. - Every time you update a flow version, you actually delete the existing flow version and create a flow version from it, with a new ID. - To activate a flow, change the Status field to active. You can delete a flow version as long as it isn’t active and has no paused interviews. If the flow version has paused interviews, wait for those interviews to resume and finish, or delete them. This object is available in API version 34.0 and later. ## Supported SOAP Calls create(), delete(), query(), retrieve(), update(), upsert() ## Supported REST API HTTP Methods DELETE, GET, HEAD, PATCH, POST ## Fields
Field Details
ApiVersion
Type
double
Properties
Nillable
Description
The API version that defines the execution behavior of the flow. Available in API version 50.0 and later. Flows created before API version 50.0 display an API version of 0 on the Flows list view in Setup. To display the correct API version number, create another version of the flow, and set the API version for running the flow to 49.0 or later.
Definition
Type
FlowDefinition
Properties
Filter, Group, Nillable, Sort
Description
This flow’s definition object.
DefinitionId
Type
ID
Properties
Filter, Group, Sort
Description
The ID of this flow’s FlowDefinition.
Description
Type
string
Properties
Filter, Group, Nillable, Sort
Description
A description of the flow, such as what it’s meant to do or how it works.
Environments
Type
multipicklist
Properties
Filter, Nillable
Description
Indicates where a flow can run. Valid values are:
  • Default—The flow can run from a Visualforce component, Lightning page, flow action, or custom Aura component.
  • Offline—The flow can run only offline. Flow types that support offline flows must set this value. This value is available in API version 62.0 and later.
  • Slack—The flow can run in Slack and the default environment. You specify the Slack flow environment when you save the flow.
Available in API version 55.0 and later.
FullName
Type
string
Properties
Create, Group, Nillable
Description
The full name of the flow in the Metadata API.

A unique name for the flow that contains only underscores and alphanumeric characters. The name must be unique across the org, begin with a letter, not include spaces, not end with an underscore, and not contain two consecutive underscores.

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.
To deploy or retrieve a version, you can specify the version number. For example, sampleFlow-3 specifies version 3 of the flow whose unique name is sampleFlow. If you don’t specify a version number, the flow is the latest version.
IsTemplate
Type
boolean
Properties
Defaulted on create, Filter, Group, Sort
Description
Indicates whether the process or flow is a template. When installed from managed packages, processes and flows can’t be viewed or cloned by subscribers because of intellectual property (IP) protection. But when those processes and flows are templates, subscribers can open them in a builder, clone them, and customize the clones. Available in API version 45.0 and later.

Default: false

ManageableState
Type
ManageableState enumerated list
Properties
Filter, Group, Nillable, Restricted picklist, Sort
Description
Indicates the manageable state of the specified component that is contained in a package:
  • beta
  • deleted
  • deprecated
  • deprecatedEditable
  • installed
  • installedEditable
  • released
  • unmanaged
MasterLabel
Type
string
Properties
Filter, Group, idLookup, Sort
Description
Label for the flow. In the UI, this field is Flow Label.
Metadata
Type
mns: Flow
Properties
Create, Nillable, Update
Description
The flow’s metadata.
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. If the flow is part of a managed package, this field is Null. Metadata isn’t returned for flows in managed packages, unless the flows are templates.
ProcessType
Type
Restricted picklist
Properties
Filter, Group, Nillable, Sort
Description
The type of the flow. Valid values are:
  • ActivityObjectMatchingFlow—A flow that launches when Einstein Activity Capture detects and captures a new activity, such as an email. This type of flow runs in the background without user interaction. This value is available with Sync Email as Salesforce Activity in API version 64.0 and later.
  • Appointments—A flow for Lightning Scheduler. This value is available in API version 44.0 and later.
  • ApprovalWorkflow—A flow that's used to manage Approval Processes in Revenue Cloud. This value is available in API version 61.0 and later.
  • AutoLaunchedFlow—A flow that doesn’t require user interaction.
  • CheckoutFlow—A flow used in Lightning B2B Commerce to create a checkout in a store. This value is available in API version 48.0 and later.
  • ContactRequestFlow—A flow that lets customers request that customer support get back to them. This flow is used to create contact request records. This value is available in API version 45.0 and later.
  • CustomerLifecycle—A Salesforce Surveys flow that lets you associate survey questions with different stages in customer lifecycles. This value is available in API version 49.0 and later and only when the Customer Lifecycle Designer license is enabled.
  • CustomEvent—A process that is invoked when it receives a platform event message. In the UI, it’s an event process. This value is available in API version 41.0 and later.
  • FieldServiceMobile—A flow for the Field Service mobile app. This value is available in API version 39.0 and later.
  • FieldServiceWeb—A flow for embedded Appointment Booking. Its UI label is Field Service Embedded Flow. This value is available in API version 41.0 and later.
  • Flow—A flow that requires user interaction because it contains one or more screens or local actions, choices, or dynamic choices. In the UI and Salesforce Help, it’s a screen flow. Screen flows can be launched from the UI, such as with a flow action, Lightning page, or web tab.
  • FSCLending—A flow for Financial Services Cloud Mortgage. This value is available in API version 46.0 and later.
  • IndicatorResultFlow—A flow for Outcome Management that calculates and creates indicator results for a selected indicator performance period. This value is available with the Outcome Management license in API version 60.0 and later.
  • FSCLending—A flow for login. This value is available in API version 51.0 and later.
  • IdentityUserRegistrationFlow—A flow that creates users when they register and updates existing users when they log in via a single sign-on process that uses the authentication provider framework. Available in API version 64.0 and later.
  • InvocableProcess—A process that can be invoked by another process or the Invocable Actions resource in REST API. This value is available in API version 38.0 and later.
  • LoyaltyManagementFlow—A flow for the Loyalty Management app and can be invoked by loyalty program processes. This value is available in API version 54.0 and later.
  • PromptFlow—A flow for Prompt Builder. Pass data between Prompt Builder and the flow. This value is available in API version 60.0 and later.
  • RoutingFlow—A flow for Salesforce Omni-Channel routing and other business logic. This value is available in API version 52.0 and later.
  • Survey—A flow for Salesforce Surveys. From the UI, this type of flow is created in Survey Builder. This value is available in API version 42.0 and later.
  • SurveyEnrich—A Salesforce Surveys flow that uses the Survey Data Mapper. From the UI, this type of flow is created in the Survey Builder and requires an associated survey flow type. This value is available in API version 49.0 or later and only when the Customer Lifecycle Designer license is enabled.
  • Workflow—A process that is invoked when a record is created or edited. In the UI and Salesforce Help, it’s a record change process.

These values are reserved for future use.

  • ActionPlan
  • AppProcess
  • CartAsyncFlow
  • DigitalForm
  • Journey
  • JourneyBuilderIntegration
  • LoginFlow
  • ManagedContentFlow
  • OrchestrationFlow
  • RecommendationStrategy
  • SalesEntryExperienceFlow
  • TransactionSecurityFlow
  • UserProvisioningFlow
This value has significant impact on validation when saving the flow and on the flow’s runtime behavior. Don’t change this value unless you understand the flow properties of the specified type.

Across flow versions, you can change the type only from Flow to AutoLaunchedFlow or vice versa. Before you change the flow type, make sure that the flow contains only elements, resources, and functionality that the new flow type supports.

RunInMode
Type
picklist
Properties
Filter, Group, Nillable, Restricted picklist, Sort
Description
The mode that the flow runs in. Valid values are:
  • DefaultMode — The flow version runs in system or user context, depending on how the flow is launched.
  • SystemModeWithSharing — The flow version always runs in system mode with sharing. The flow respects org-wide default settings, role hierarchies, sharing rules, manual sharing, teams, and territories. But it doesn’t respect object permissions, field-level access, or other permissions of the running user.
  • SystemModeWithoutSharing — The flow version always runs in system mode without sharing. The flow can access all data.
  • UserMode — The flow version runs with the user's security context explicitly enforced, without inheriting sharing settings from the calling context. This value is available in API version 68.0 and later.
Available in API version 48.0 and later.
Status
Type
Restricted picklist
Properties
Filter, Group
Description
The flow’s status.
  • Active
  • Draft
  • Obsolete
  • UnderReview
  • InvalidDraft
TimeZoneSidKey
Type
string
Properties
Nillable
Description
The ID that defines the time zone in which the flow runs. Available in API version 56.0 and later.
VersionNumber
Type
int
Properties
Filter, Group, Sort
Description
The flow’s version number.
# FlowDefinition The parent of a set of flow versions. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. When using the Tooling API to work with flow definitions, consider that: ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Legacy flows created with the Desktop Flow Designer can’t be modified with the API. Update your flow by recreating it with Flow Builder. - You can activate and deactivate flows with the Metadata field. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important In API version 44.0, we recommend upgrading your flows to flow metadata file names without version numbers and discontinue using the FlowDefinition object to activate or deactivate a flow. Then use the Flow object to activate or deactivate a flow. For more information, see [Upgrade Flow Files to API Version 44.0](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_visual_workflow.htm "HTML (New Window)"). If you deploy with flow definitions, the active version numbers in the flow definitions override the status fields in the flows. For example, the active version number in the flow definition is version 3, and the latest version of the flow is version 4 with the status field as Active. After you deploy your flow, the active version is version 3. - You can update masterlabel and description of a FlowDefinition. - FlowDefinition are implicitly created when the Flow object is created, which means FlowDefinition objects can only be updated. This object is available in API version 34.0 and later. ## Supported SOAP API Calls query(), retrieve(), update() ## Supported REST API HTTP Methods GET, HEAD, PATCH, POST ## Fields
Field Name Details
ActiveVersion
Type
Flow
Properties
Filter, Group, Nillable, Sort
Description
The active flow version object.
ActiveVersionId
Type
ID
Properties
Filter, Group, Nillable, Sort
Description
The ID of the active flow version.
Description
Type
string
Properties
Nillable
Description
Flow definition information, specified by the org’s admin.
DeveloperName
Type
string
Properties
Filter, Group, Sort
Description
Developer name of this flow definition. In the UI, the label is Flow API Name.
FullName
Type
string
Properties
Create, Group, Nillable
Description
The full name of the flow definition in the 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.
LatestVersion
Type
Flow
Properties
Filter, Group, Nillable, Sort
Description
The latest flow version object, regardless of the status.
LatestVersionId
Type
ID
Properties
Filter, Group, Nillable, Sort
Description
ID of the latest flow version, regardless of the flow’s status.
ManageableState
Type
ManageableState enumerated list
Properties
Filter, Group, Nillable, Restricted picklist, Sort
Description
Indicates the manageable state of the specified component that is contained in a package:
  • beta
  • deleted
  • deprecated
  • deprecatedEditable
  • installed
  • installedEditable
  • released
  • unmanaged

This field is available in API version 38.0 and later.

MasterLabel
Type
string
Properties
Filter, Group, Nillable, Sort
Description
Label for the flow definition. In the UI, this field’s label is Flow Label.
Metadata
Type
mns:FlowDefinition
Properties
Create, Nillable, Update
Description
The flow definition’s metadata object, containing information about which flow version is active and the flow definition’s description.
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
Properties
Filter, Group, Nillable, Sort
Description
The namespace associated with this flow definition.
# FlowElementTestCoverage Represents a flow element that was executed by a given Apex test method. Available in API version 44.0 and later. ## Supported SOAP Calls query(), delete(), retrieve(), update() ## Supported REST HTTP Methods GET, HEAD ## Fields | Field | Details | | --- | --- | | ElementName | Type string Properties Filter, Group, Nillable, Sort, Update Description The unique name of the flow element that’s executed by the test method. | | FlowTestCoverageId | Type ID Properties Filter, Group, Sort Description The ID of the parent FlowTestCoverage record. | | FlowVersionId | Type ID Properties Filter, Group, Sort, Update Description The ID of the flow version that’s executed by the test method. | ## Usage FlowElementTestCoverage records are deleted when changes are saved to the associated flow version. ![Tip](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_tip.png) #### Tip A flow version corresponds to a process built in Process Builder or a flow built in Flow Builder. When you create a process, Salesforce names each element for you. To understand which criteria node or action corresponds with an element name, see [Troubleshoot Processes with Apex Debug Logs](https://help.salesforce.com/articleView?id=process_troubleshoot_debuglogs.htm&language=en_US "HTML (New Window)"). ## Sample Queries Get the executed elements that were executed by any test SELECT Id, Elementname, FlowTestCoverageId FROM FlowElementTestCoverage WHERE FlowVersionId='301RM0000004GiK' Get the number of elements that were executed by any test SELECT count\_distinct(ElementName) FROM FlowElementTestCoverage WHERE FlowVersionId='301RM0000004GiK' Get the names of the elements that were executed by any test SELECT ElementName, count(Id) FROM FlowElementTestCoverage WHERE FlowVersionId='301RM0000004GiK' GROUP BY ElementName # FlowTest Represents the description of a flow test associated with a flow definition. This object is available in API version 55.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | Description | Type textarea Properties Nillable Description The description of the flow test. This field can be useful to describe the reason for creating the test or its intended use. | | DeveloperName | Type string Properties Filter, Group, Sort Description Required. 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 organization. Label is **Record Type Name**. This field is automatically generated, but you can supply your own value if you create the record using the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance may slow while Salesforce generates one for each record. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated FlowTest type in Metadata API. The full name can include a namespaceprefix. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the flow test. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description Label for the flow test. In the UI, this field is Label. | | Metadata | Type [FlowTest](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_flowtest.htm) Properties Create, Nillable, Update Description The flow test's metadata. | | NamespacePrefix | Type string 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 the following values: - In Developer Edition organizations, the namespace prefix is set to the namespace prefix of the organization for all objects that support it. There is 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 are not Developer Edition organizations, NamespacePrefix is only set for objects that are part of an installed managed package. There is no namespace prefix for all other objects. | # FlowTestCoverage Represents test coverage for a flow or process by a given Apex method. Available in API version 44.0 and later. ## Supported SOAP Calls delete(), describeSObjects(), query(), retrieve(), update() ## Supported REST HTTP Methods GET, HEAD ## Fields | Field | Details | | --- | --- | | ApexTestClassId | Type ID Properties Filter, Group, Sort, Update Description The ID of the Apex test class. | | FlowVersionId | Type ID Properties Filter, Group, Sort Description The ID of the flow version that was executed by the test method. | | NumElementsCovered | Type int Properties Filter, Group, Nillable, Sort, Update Description The number of elements that were executed by the test method. | | NumElementsNotCovered | Type int Properties Filter, Group, Nillable, Sort, Update Description The number of elements that weren’t executed by the test method. | | TestMethodName | Type string Properties Filter, Group, Nillable, Sort, Update Description The name of the Apex method that executed the flow version. | ## Usage To deploy a process or autolaunched flow as active in production orgs, you must meet the flow test coverage requirement for your org. At least one Apex test must cover the flow test coverage percentage of the active processes and autolaunched flows. Flow test coverage requirements don’t apply to flows that have screens. FlowTestCoverage records are deleted when changes are saved to the associated flow version. A flow version corresponds to a process built in Process Builder or a flow built in Flow Builder. For a process, Apex tests execute only the active version. For a flow, Apex tests execute the active version. When a flow has no active version, Apex tests execute the latest version. ![Tip](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_tip.png) #### Tip Make sure that **Deploy processes and flows as active** is enabled in your org’s process automation settings. Otherwise, when you deploy active flows and processes via change sets or Metadata API, they’re deployed as inactive. To calculate your org’s flow test coverage, Salesforce divides the number of covered flows and processes by the sum of the number of active processes and active autolaunched flows. ## Sample Query Get the names of all flows and processes that have test coverage. SELECT FlowVersion.Definition.DeveloperName FROM FlowTestCoverage GROUP BY FlowVersion.Definition.DeveloperName Get the names of all active autolaunched flows and processes that don’t have test coverage. SELECT Definition.DeveloperName FROM Flow WHERE Status = 'Active' AND (ProcessType = 'AutolaunchedFlow' OR ProcessType = 'Workflow' OR ProcessType = 'CustomEvent' OR ProcessType = 'InvocableProcess') AND Id NOT IN (SELECT FlowVersionId FROM FlowTestCoverage) Get overall test coverage for a flow version. SELECT Id, ApexTestClassId, TestMethodName, FlowVersionId, NumElementsCovered, NumElementsNotCovered FROM FlowTestCoverage WHERE flowversionid='301RM0000004GiK' #### See Also - [_Salesforce Help_: Deploy Processes and Flows as Active](https://help.salesforce.com/s/articleView?id=platform.flow_distribute_deploy_active.htm&type=5&language=en_US "Salesforce Help: Deploy Processes and Flows as Active - HTML (New Window)") # FlowTestResult This object is reserved for internal use. # ForecastingDisplayedFamily Represents the product families that an admin chooses to allow forecasting on in Lightning Experience. Available in Tooling API version 40.0 and later. ## Supported SOAP Calls describeSObjects(), query(), retrieve(), ## Supported REST HTTP Methods GET ## Fields | Field | Details | | --- | --- | | DisplayPosition | Type int Properties Filter, Group, idLookup, Nillable, Sort Description The order in which product families are displayed on the forecasts page. Each value is unique to a product family. | | ProductFamily | Type picklist Properties Filter, Group, Sort Description The product family available to forecast on. Each product family is unique. | # ForecastingFilter Represents the custom filter for including or excluding data from opportunity forecasts. This object is available in API version 55.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules As of Spring ’20 and later, only standard users with the View All Forecasts permission OR Allow Forecasting permission OR delegated forecast manager status can access this object. ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Filter, Group, Sort Description The developer name of the forecast filter. | | FilterLogic | Type string Properties Filter, Group, Nillable, Sort Description The logic that controls the evaluation of conditions. Only AND is supported. For example, 1 AND 2 AND 3. | | ForecastingTypeId | Type reference Properties Filter, Group, Sort Description The ID of the forecast type. Can be linked only to forecast types created in Summer ’21 and later. This is a relationship field. Relationship Name ForecastingType Relationship Type Lookup Refers To ForecastingType | | ForecastingTypeSourceId | Type reference Properties Filter, Group, Sort Description The ID of the forecast type source. Can be linked only to forecast type sources created in Summer ’21 or later and with a forecast source definition with source object of 'Opportunity’. This is a relationship field. Relationship Name ForecastingTypeSource Relationship Type Lookup Refers To ForecastingTypeSource | | FullName | Type string Properties Create, Group, Nillable Description The full name of the forecast filter. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the forecast filter. | | MasterLabel | Type string Properties Filter, Group, Sort Description The label for this object, which displays in Setup. The 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 ForecastingFilter Properties Create, Nillable, Update Description The metadata of the forecast filter. | # ForecastingFilterCondition Represents the custom filter condition logic for including or excluding data from opportunity forecasts. This object is available in API version 55.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules As of Spring ’20 and later, only standard users with the View All Forecasts OR Allow Forecasting permission OR delegated forecast manager status can access this object. ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Filter, Group, Sort Description The developer name of the forecast filter condition. | | FieldName | Type string Properties Filter, Group, Sort Description The name of the opportunity field to be filtered. | | ForecastingFilterId | Type reference Properties Filter, Group, Sort Description The ID of the forecast filter. This is a relationship field. Relationship Name ForecastingFilter Relationship Type Lookup Refers To ForecastingFilter | | ForecastingSourceDefinitionId | Type reference Properties Filter, Group, Sort Description The ID of the forecasting source definition. This is a relationship field. Relationship Name ForecastingSourceDefinition Relationship Type Lookup Refers To ForecastingSourceDefinition | | FullName | Type string Properties Create, Group, Nillable Description The full name of the forecast filter condition. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the forecast filter condition. | | MasterLabel | Type string Properties Filter, Group, Sort Description The label for this object, which displays in Setup. The 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 ForecastingFilterCondition Properties Create, Nillable, Update Description The metadata of the forecast filter condition. | | Operation | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The operator in the filter condition. Possible values are: - equals - greaterOrEqual—greater than or equal to - greaterThan - lessOrEqual—less than or equal to - lessThan - notEqual—not equal to | | SortOrder | Type int Properties Filter, Group, Sort Description The index value for the condition. This value represents the condition in the FilterLogic field on the ForecastingFilter object. For example, 1. | | Value | Type string Properties Filter, Group, Nillable, Sort Description The value of the filter condition. If multiple values are specified, they must be separated by a comma delimiter. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note If you have multiple currencies enabled, and add a custom filter on a currency field as part of your forecast type definition, the corporate currency at the time the filter was created is used. If you have a single currency enabled, the absolute value is used in your filter condition. | ## Usage A forecast type can contain up to three filter conditions. # ForecastingSourceDefinition Represents the object, measure, date type, and hierarchy that a forecast uses to project sales. This object is available in API version 52.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve() ## Supported REST API Methods DELETE, GET, HEAD, POST, Query ## Fields | Field | Details | | --- | --- | | CategoryField | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Name of the forecast category that is associated with the forecast type. Possible values are: - Opportunity.ForecastCategoryName | | DateField | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Field that is used for the forecast type’s date type. For example, the CloseDate field on Opportunity is used for opportunity close date–based forecast types. Possible values are: - Opportunity.CloseDate - OpportunityLineItem.ServiceDate | | DeveloperName | Type string Properties Filter, Group, Sort Description Required. The name of the forecasting source definition. | | FamilyField | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Use this field to group forecasts by product family. Possible values are: - Product2.Family | | FullName | Type string Properties Create, Group, Nillable Description The full name of the forecasting source definition. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Restricted picklist, Sort Description The language of the forecasting source definition. | | MasterLabel | Type string Properties Filter, Group, Sort Description Required. Controlling label for this forecasting source definition. | | MeasureField | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Field that is used for the forecast type’s measure. For example, the Amount field on Opportunity is associated with revenue-based forecast types. Possible values are\*: - Opportunity.Amount - Opportunity.Custom - Opportunity.TotalOpportunityQuantity - OpportunityLineItem.Custom - OpportunityLineItem.Quantity - OpportunityLineItem.TotalPrice \*Where Custom represents the name of the custom field that a forecast type’s measure is based on. Example: Use the Megawatts\_\_c custom field to forecast energy consumption. | | Metadata | Type [ForecastingSourceDefinition](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_forecastingsourcedefinition.htm "HTML (New Window)") Properties Create, Nillable, Update Description The metadata of the forecasting source definition. | | SourceObject | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Required. Object associated with this forecasting source definition. Possible values are: - Opportunity - OpportunityLineItem - Product2 | | Territory2Field | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description For a territory-based forecast type, indicates the field that is used for territory information. For user role–based forecast types, this value is null. | | UserField | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Specifies who owns the forecast. Possible values are: - Opportunity.OwnerId | # ForecastingType Represents a forecast type. This object is available in API version 52.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | DateType | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Required. The date type that forecast amounts are based on. Possible values are: - OLIMeasureCloseDateOnly—3 - OpportunityCloseDate—0 - ProductDate—1 - ProductDateOnly—4 - ScheduleDate—2 - ScheduleDateOnly—5 | | DeveloperName | Type string Properties Filter, Group, Sort Description Required. The name of the forecast type. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the forecast type. | | HasProductFamily | Type boolean Properties Defaulted on create, Group Description Required. Indicates whether the forecast type includes product families (true) or not (false). The default value is false. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the forecast type. | | MasterLabel | Type string Properties Filter, Group, Sort Description Required. Controlling label for this forecast type. This display value is the internal label that doesn’t get translated. | | Metadata | Type [ForecastingType](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_forecastingtype.htm "HTML (New Window)") Properties Create, Nillable, Update Description The metadata of the forecast type. | | OpportunitySplitTypeId | Type reference Properties Filter, Group, Nillable, Sort Description For a forecast type based on a split, the ID of the opportunity split type. This field is a relationship field. Relationship Name OpportunitySplitType Relationship Type Lookup Refers To OpportunitySplitType | | OpptyLineItemSplitTypeId | Type reference Properties Filter, Group, Nillable, Sort Description For a forecast type based on an opportunity product split, the ID of the opportunity line item split type. This field is a relationship field. Available in API version 58.0 and later. Relationship Name OpptyLineItemSplitType Relationship Type Lookup Refers To OpptyLineItemSplitType | | RoleType | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Required. Indicates whether the role type has a ForecastingType, and if so, which ForecastingType. Possible values are: - R—User role-based forecast type - T - Y—Territory2-based forecast type | | Territory2ModelId | Type string Properties Filter, Group, Sort Description For a territory-based forecast type, the ID of the Territory2 model. | # ForecastingTypeSource Represents the mapping of a forecasting source definition to a forecast type. This object is available in API version 52.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve() ## Supported REST API Methods DELETE, GET, HEAD, POST, Query ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Filter, Group, Sort Description The developer name of the forecasting source definition. | | ForecastingSourceDefinitionId | Type reference Properties Filter, Group, Sort Description The ID of the forecasting source definition. This is a relationship field. Relationship Name ForecastingSourceDefinition Relationship Type Lookup Refers To ForecastingSourceDefinition | | ForecastingTypeId | Type reference Properties Filter, Group, Sort Description The ID of the forecast type. Can be linked only to forecast types created in Summer ’21 and later. This is a relationship field. Relationship Name ForecastingType Relationship Type Lookup Refers To ForecastingType | | FullName | Type string Properties Create, Group, Nillable Description The full name of the forecasting type source. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Restricted picklist, Sort Description The language of the forecasting type source. | | MasterLabel | Type string Properties Filter, Group, Sort Description Required. The controlling label for this forecasting type source. | | Metadata | Type [ForecastingTypeSource](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_forecastingtypesource.htm "HTML (New Window)") Properties Create, Nillable, Update Description The metadata of the forecasting source definition. | | ParentSourceDefinitionId | Type reference Properties Filter, Group, Nillable, Sort Description For forecast types not based on the Opportunity object and not based on a custom measure, this value represents the ID of the parent ForecastingSourceDefinition of the linked ForecastingSourceDefinition. This is a relationship field. Relationship Name ParentSourceDefinition Relationship Type Lookup Refers To ForecastingSourceDefinition | | RelationField | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Represents the field that links the source objects of the parent ForecastingSourceDefinition to the child ForecastingSourceDefinition. Possible values are: - OpportunityLineItem.OpportunityId - OpportunityLineItem.Product2Id | | SourceGroup | Type int Properties Filter, Group, Sort Description Required. Represents a grouping of forecast type source definitions. | # FormulaFunction Represents a function used when building a formula, including examples and uses. This object is available in Tooling API version 39.0 and later. ## Supported SOAP Calls describeSObjects(), query() ## Supported REST HTTP Methods GET ## Special Access Rules In API version 45.0 and later, only users with the ViewSetup and Configuration permission can access FormulaFunction or FormulaFunctionCategory. ## Fields | Field | Details | | --- | --- | | Category | Type [FormulaFunctionCategory](#formulafunctioncategorydef) Properties Filter, Group, Nillable, Sort Description TheFormulaFunctionCategory to which the formula belongs. | | CategoryId | Type string Properties Filter, Group, Nillable, Sort Description The ID of the FormulaFunctionCategory. | | Description | Type string Properties Filter, Group, Nillable, Sort Description Description of the formula function. | | DurableId | Type string 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. To simplify queries, use this field. | | ExampleString | Type string Properties Filter, Group, Nillable, Sort Description Describes the function and what arguments you can use with it. | | IsAllowedInEntityContext | Type boolean Properties Filter, Group, Nillable, Sort Description Removed. Indicates whether you can use the formula function on an Entity (true) or not (false). For example, you can’t use the PRIORVALUE function in a custom Account formula field. This field is available in API versions 39.0 to 47.0. Use the [FormulaFunctionAllowedType](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_formulafunctionallowedtype.htm "Represents the functions that are supported in the given formula context. Available in API version 48.0 and later.") object in API version 48.0 and later. | | IsAllowedInFlowContext | Type boolean Properties Filter, Group, Nillable, Sort Description Removed. Indicates whether the formula function is allowed in a Flow (true) or not (false). This field is available in API versions 39.0 to 47.0. Use the [FormulaFunctionAllowedType](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_formulafunctionallowedtype.htm "Represents the functions that are supported in the given formula context. Available in API version 48.0 and later.") object instead in API version 48.0 and later. | | IsAllowedInVisualforceContext | Type boolean Properties Filter, Group, Nillable, Sort Description Removed. Indicates whether the formula function is allowed in Visualforce (true) or not (false). This field is available in API versions 39.0 to 47.0. Use the [FormulaFunctionAllowedType](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_formulafunctionallowedtype.htm "Represents the functions that are supported in the given formula context. Available in API version 48.0 and later.") object instead in API version 48.0 and later. | | Label | Type string Properties Filter, Group, Nillable, Sort Description The formula function label that appears in the user interface. | | Name | Type string Properties Filter, Group, Nillable, Sort Description The name of the formula function. | | Types | Type QueryResult Properties Filter, Group, Nillable, RestrictedPicklist, Sort Description Allowed formula types for functions. This field is available in Tooling API version 48.0 and later. | ## FormulaFunctionCategory | Field Name | Details | | --- | --- | | DurableId | Type string 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. To simplify queries, use this field. | | Functions | Type [QueryResult](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_queryresult.htm "Represents the results of a query. For example, if you query on the object EntityDefinition, all the layouts for that entity are returned as an array of QueryResult objects in the Layouts field. Available in Tooling API version 34.0 and later.") Properties Filter, Group, Nillable, Sort Description A list of functions that belong to the FormulaFunctionCategory. | | Label | Type string Properties Filter, Group, Nillable, Sort Description Label of the FormulaFunctionCategory that appears in the user interface. | | Name | Type string Properties Filter, Group, Nillable, Sort Description Name of the FormulaFunctionCategory. | ## Query Examples To get all the functions in FormulaFunction using REST: req.setEndpoint('http://**instance**.salesforce.com/services/data/v68.0/tooling/query?q=SELECT+label+FROM+FormulaFunction ); req.setMethod('GET'); To get the DurableID of a function category using SOQL: SELECT DurableID FROM FormulaFunctionCategory To get all the categories and their functions using SOQL: SELECT Name, Label, (SELECT Name, Label, Description, ExampleString FROM Functions) FROM FormulaFunctionCategory # FormulaFunctionAllowedType Represents the functions that are supported in the given formula context. Available in API version 48.0 and later. ## Supported SOAP Calls describeSObjects(), query() ## Supported REST HTTP Methods GET ## Special Access Rules Only users with the ViewSetup and Configuration permission can access FormulaFunctionAllowedType. ## Fields | Field | Details | | --- | --- | | DurableId | Type string 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. To simplify queries, use this field. | | FunctionId | Type string Properties Filter, Group, Nillable, Sort Description Unique identifier for the supported function. | | Type | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The name of the formula type in which the function is supported. Possible values are: - FLOW - VALIDATION - VISUALFORCE | # FormulaOperator Represents an operator used when building a formula, including examples and uses. This object is available in Tooling API version 39.0 and later. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note In API version 45.0 and later, only users with the “ViewSetup and Configuration” permission can access FormulaOperator. ## Supported SOAP Calls query() ## Supported REST HTTP Methods GET ## Fields | Field | Details | | --- | --- | | DurableId | Type string 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. To simplify queries, use this field. | | Label | Type string Properties Filter, Group, Nillable, Sort Description The formula operator label that appears in the user interface. | | Name | Type string Properties Filter, Group, Nillable, Sort Description The name of the formula operator. | | Value | Type string Properties Filter, Group, Nillable, Sort Description The value of the formula operator. | ## Query Examples To get all formula operators available in FormulaOperator: req.setEndpoint('http://**instance**.salesforce.com/services/data/v68.0/tooling/query?q=SELECT+name,+label,+value+FROM+FormulaOperator ); req.setMethod('GET'); To get formula operators by ID: req.setEndpoint('http://**instance**.salesforce.com/services/data/v68.0/tooling/query?q=SELECT+name,+label,+value+FROM+FormulaOperator+WHERE+durableId='PLUS' ); req.setMethod('GET'); # GenAiFunctionDefinition Represents an agent action. This object is available in API version 60.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules To access this object, Agents must be enabled in your org. ## Fields | Field | Details | | --- | --- | | Description | Type textarea Properties Nillable Description A description explaining the general purpose and domain of the action. | | DeveloperName | Type string Properties Filter, Group, Sort Description The unique name for this object. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated object in Metadata API. The full name can include a namespace prefix. | | InvocationTarget | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Target invocation used by invocation operations. | | InvocationTargetType | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Invocable action types used by invocation operations. Possible values are: - apex - flow - generatePromptResponse | | IsConfirmationRequired | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether confirmation is required for this action. The default value is false. | | IsIncludeInProgressIndicator | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether the ProgressIndicatorMessage is displayed. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the GenAiFunctionDefinition. The value for this field is the language value of the org. | | MasterLabel | Type string Properties Filter, Group, Sort Description The master label for the generative AI action. | | Metadata | Type complexvalue Properties Create, Nillable, Update Description Provides access to the associated type. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The namespace of the GenAiFunctionDefinition. | | ProgressIndicatorMessage | Type string Properties Filter, Group, Sort Description Message displayed when an action is taking longer than expected to execute. | # GenAiPlannerDefinition Represents an agent planner service that uses a large language model (LLM) and a reasoning strategy to decompose a given task into smaller subtasks, identify the most suitable actions for each subtask, and invoke them. This object is available in API version 60.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules To access this object, Agents must be enabled in your org. ## Fields | Field | Details | | --- | --- | | Capabilities | Type string Properties Filter, Group, Nillable, Sort Description A set of tags associated with the agent planner service definition. | | Description | Type textarea Properties Filter, Group, Sort Description A description explaining the general purpose and domain of the agent planner service definition. | | DeveloperName | Type string Properties Filter, Group, Sort Description The unique name for this object. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated object in Metadata API. The full name can include a namespace prefix. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the GenAiPlannerDefinition. The value for this field is the language value of the org. | | MasterLabel | Type string Properties Filter, Group, Sort Description The master label of the agent planner service definition. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The namespace of the GenAiPlannerDefinition. | | PlannerType | Type picklist Properties Filter, Group, Restricted picklist, Sort Description A particular approach to problem solving that is given as prompt instructions to a large language model (LLM). Possible values are: - AiCopilot\_\_ReAct—Uses a reactive planning strategy to solve problems with the LLM. This strategy consists of prompting the LLM to generate the next step in response to an event and the current context. It differs from a sequential planner in that it doesn’t plan more than one step ahead of time. - AiCopilot\_\_SequentialPlannerIntentClassifier—Uses an intent classifier prompt and a sequential planner prompt. With each text input, the planner asks the LLM to generate a step-by-step plan to finish the goal. It plans first, then executes. | # GlobalValueSet Represents a set of values used by a global picklist. Available from API version 39.0 or later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP Calls create(), query(), retrieve(), search(), update(), upsert() ## Supported REST HTTP Methods Query, GET, POST, PATCH ## Fields | Field Name | Details | | --- | --- | | CustomValue | Type [CustomValue\[\]](#globalvalueset_metadata) Properties Filter, Group, Sort Description A list of the global picklist values. | | Description | Type string Properties Filter, Nillable, Sort Description A picklist value’s description. It’s useful to include a description for a picklist value so the reason for creating it can be tracked. Limit: 255 characters. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated metadata object in the 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. Any global value set created in API version 57.0 or later automatically has the \_\_gvs suffix appended to FullName. When you make any CRUD-based call with the GlobalValueSet type, you must append the suffix to the FullName field when you reference the type. | | MasterLabel | Type string Properties Filter, Group, Sort Description | | Sorted | Type boolean Properties Filter, Group, Sort Description True if the picklist values are sorted alphabetically. | ## CustomValue Metadata Metadata about the global value set is returned in the CustomValue field. | 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 isn’t 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 | A picklist value’s description. It’s useful to include a description for a picklist value so the reason for creating it can be tracked. Limit: 255 characters. | | IsActive | boolean | Indicates whether this value is 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. But retrieving the values of a non-global, unrestricted picklist returns only the active values. | | Label | string | The global picklist value’s label, or API name. If you don’t specify the label when creating a value, it defaults to the text of the picklist value (ValueName). The ValueName isn’t used if you update the label. | | ValueName | string | The text of the picklist value. | # Group Represents a set of User records. Groups can contain individual users, other groups, or the users in a particular role or territory. In addition, groups can contain all users below a particular role or territory in the hierarchy. Available in Tooling API version 38.0 and later. ## Supported SOAP Calls describeSObjects(), getDeleted(), getUpdated(), query(), retrieve(), search() ## Supported REST HTTP Methods GET ## Special Access Rules As of Spring ’20 and later, only authenticated internal and external users with the View Setup and Configuration permission can access this object. ## Fields | Field | Details | | --- | --- | | Description | Type textarea Properties Filter, Nillable, Sort Description The description of the group. This field is available in API version 62.0 and later. | | DeveloperName | Type string 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 organization. Corresponds to **Group Name** in the user interface. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance slows down while Salesforce generates one for each record. Only your Salesforce org’s internal users can access this field. | | DoesIncludeBosses | Type boolean Properties Filter, Group, Sort Description Indicates whether records shared with users in this group are also shared with users higher in the role hierarchy (true) or not (false). This field is only available for groups of type Regular and Queue. This field corresponds to the Grant Access Using Hierarchies checkbox on the detail pages of public groups and queues. For groups of type Regular, this field available in API version 18.0 and later and has a default value of true. For groups of type Queue, this field is available in API version 67.0 and later. The default value of this field for queues depends on the value of the org-level setting “Grant access using hierarchies by default in new queues.” | | Name | Type string Properties Filter, Group, idLookup, Sort Description The name of the group. This value corresponds to the value of the Label field in the user interface. | | OwnerId | Type reference Properties Filter, Group, Sort Description The ID of the user who owns the group. | | RelatedId | Type reference Properties Filter, Group, Nillable, Sort Description Represents the ID of the associated records. For example, for Groups of type “Role,” this field is the ID of the associated UserRole. The RelatedId field is polymorphic. | | Type | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Type of the group. One of the following values: - AllCustomerPortal—All your Customer Portal or Customer Community Plus users. This type is only available when a Customer Portal or a Customer Site is enabled for your org. - CollaborationGroup—Chatter group. - Manager—Public group that includes a user’s direct and indirect managers. This Group is read-only. - ManagerAndSubordinatesInternal—Public group that includes a user and the user’s direct and indirect reports. This group is read-only. - Organization—Public group that includes all the User records in the organization. This group is read-only. - PRMOrganization—Public group that includes all the partners in an organization that has the partner site or portal feature enabled. - Queue—Public group that includes all the User records that are members of a queue. - Regular—Standard public group. When you create a group through the create() call, its type must be Regular, unless a site or partner portal is enabled for the org. If so, the type can be Regular or PRMOrganization. - Role—Public group that includes all the User records in a particular UserRole. - RoleAndSubordinates—Public group that includes all the User records in a particular UserRole and all the User records in any subordinate UserRole. Only available when digital experiences is enabled for your org and Experience Cloud site users are created with external account roles other than a shared person account role. - RoleAndSubordinatesInternal—Public group that includes all the User records in an internal UserRole, excluding customer and partner roles, and all the User records in any subordinate internal UserRole. - SharingRuleGroup—Group associated with a criteria-based sharing rule. - Territory—Public group that includes all the User records in a particular Territory. - TerritoryAndSubordinates—Public group that includes all the User records in a particular Territory and all the User records in any subordinate Territory. Only Regular can be used when creating a group. The other values are reserved for system-managed groups. | # GtwyProvPaymentMethodType Represents a type that allows integrators and payment providers to choose an active payment to receive an order's payment data rather than allowing the Salesforce Order Management platform to select a default payment method. This object is available in API version 50.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), search(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules To access Commerce Payments entities, your org must have a Salesforce Order Management license with the Payment Platform org permission activated. Commerce Payments entities are available only in Lightning Experience. ## Fields | Field | Details | | --- | --- | | Comments | Type textarea Properties Filter, Nillable, Sort Description Additional details about the gateway provider payment method type record. Max length is 1000 characters. | | DeveloperName | Type string Properties Filter, Group, 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 organization. This field is automatically generated, but you can supply your own value if you create the record using the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, Salesforce generates one for each record, which slows performance. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | Fullname | Type string Properties Create, Group, Nillable Description The full name of the associated gatewayProviderPaymentMethodType in Metadata API. The full name can include a namespaceprefix. 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. | | GtwyProviderPaymentMethodType | Type string Properties Filter, Group, Nillable, Sort Description Links the Salesforce payment method to the payment method used in the Salesforce Order Management storefront. Your payment gateway integration uses this field when finding a payment method to link to a payment. The value of GtwyProviderPaymentMethodType must match the payment method value sent to the order's Payment Instrument in Salesforce Order Management. Here are examples of payment method values that Salesforce could receive from Salesforce Order Management. - CREDIT\_CARD - BASIC\_CREDIT - CreditCard - GooglePay - ApplePay | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the payment gateway integration. | | LastViewedDate | Type dateTime Properties Filter, Nillable, Sort Description The timestamp when the current user last viewed this record or list view. A null value may mean that the user only accessed this record or list view (LastReferencedDate) but did not view it. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, idLookup, Sort Description Required. Label for the GtwyProvPaymentMethodType. In the UI, this field is Gateway Provider Payment Method Type. | | Metadata | Type GatewayProviderPaymentMethodType Properties Create, Nillable, Update Description Metadata associated with the gateway provider payment method type. 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 Properties Filter, Group, Nillable, Sort Description The namespace prefix that is 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 Developer Edition orgs, NamespacePrefix is set to the namespace prefix of the org for all objects that support it, unless 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 orgs that are not Developer Edition orgs, NamespacePrefix is set only for objects that are part of an installed managed package. All other objects have no namespace prefix. | | PaymentGatewayProviderId | Type reference Properties Filter, Group, Nillable, Sort Description Specifies the payment gateway provider that Salesforce Order Management should use when processing payments. One payment gateway provider can be related to multiple payment method types. This is a relationship field. Relationship Name PaymentGatewayProvider Relationship Type Lookup Refers To PaymentGatewayProvider | | PaymentMethodType | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Specifies the type of payment method used on an order in Salesforce Order Management. Possible values are: - AlternativePaymentMethod - CardPaymentMethod - DigitalWallet | | RecordTypeId | Type reference Properties Filter, Group, Nillable, Sort Description ID of the record type entity related to the gateway provider payment method type. This is a relationship field. Relationship Name RecordType Relationship Type Lookup Refers To RecordType | ## Usage The Salesforce Order Management payment record must have a ProcessorId field with the same value as the payment gateway's ExternalReferenceId field. The gateway provider payment method type record must have a PaymentMethodType field that looks up to the payment method that you want to relate to your payment. Finally, the payment gateway and gateway provider payment method type must have matching PaymentGatewayProviderId fields. After you establish these relationships, the payment record infers your payment method from the gateway provider payment method type record. ![An ERD showing the relationship of Payment, GtwyProvPaymentMethodType, PaymentGatewayProvider, PaymentGateway, and PaymentMethods](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/dev_guides/api/images/Sforce_gtwyprovpaymentmethod_erd.png) # HeapDump A complex type that represents a heap dump in an ApexExecutionOverlayResult object. Available from API version 28.0 or later. ## Fields | Field | Details | | --- | --- | | className | Type string Description The name of the Apex class or trigger. | | extents | Type array of TypeExtent Description TypeExtent includes the following fields: - collectionType - count - definition (array of AttributeDefinition) - extent (array of HeapAddress) - totalSize - typeName | | heapDumpDate | Type dateTime Description The date and time that the heap dump was captured. | | namespace | Type string Description The namespace of the Apex class or trigger. Null if there is no namespace. | ## Usage Use heap dumps to capture structured debugging information. # HistoryRetentionJob Represents the body of retained data from the archive, and the status of the archived data. Available in API version 29.0 or later. ## Supported SOAP API Calls describeSObjects(), query() ## Supported REST API HTTP Methods GET ## Fields | Field Name | Details | | --- | --- | | DurationSeconds | Type int Properties Filter, Group, Nillable, Sort Description How many seconds the field history retention job took to complete (whether successful or not). | | HistoryType | Type picklist Properties Create, Filter, Group, Nillable, Restricted picklist, Sort Description The object type that contains the field history that you retained. Valid values for standard objects are: - Account - Case - Contact - Leads - Opportunity For custom objects, use the object name. | | NumberOfRowsRetained | Type int Properties Filter, Group, Nillable, Sort Description The number of field history rows that a field history retention job has retained. | | RetainOlderThanDate | Type dateTime Properties Filter, Sort Description The date and time before which all field history data was retained. | | StartDate | Type dateTime Properties Filter, Nillable, Sort Description The start date of the field history retention job. | | Status | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Provides the status of the field history retention job. By default, field history tracking copies data to the archive, leaving a duplicate of the archived data in Salesforce. You can delete data from Salesforce manually after it's archived. Status can include: - CopyScheduled - CopyRunning - CopySucceeded - CopyFailed - CopyKilled - NothingToArchive - DeleteScheduled - DeleteRunning - DeleteSucceeded - DeleteFailed - DeleteKilled | # HomePageComponent Represents a home page component. This object is available in API version 35.0 and later. ## Supported SOAP Calls query(), retrieve(), search() ## Supported REST HTTP Methods GET ## Fields | Field | Details | | --- | --- | | Body | Type string Properties Nillable Description If this component is an HTML page component, this field is the body of the HTML. | | Height | Type int Properties Filter, Group, Nillable, Sort Description Required for Visualforce Area components. Indicates the height (in pixels) of the component. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | Name | Type string Properties Filter, Group, idLookup, Namefield, Sort Description The name of the home page component. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description A unique string to distinguish this type from any others. | | ShowLabel | Type boolean Properties Defaulted on create, Filter, Group, Sort Description ID of the home page layout. | | ShowScrollbars | Type boolean Properties Defaulted on create, Filter, Group, Sort Description ID of the home page layout. | # HomePageLayout Represents a home page layout. This object is available in API version 35.0 and later. ## Supported SOAP Calls query(), retrieve(), search() ## Supported REST HTTP Methods GET ## Fields | Field | Details | | --- | --- | | Id | Type string Properties Defaulted on create, Filter, Group, idLookup, Sort Description ID of the home page layout. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | Name | Type string Properties Filter, Group, idLookup, Namefield, Sort Description The home page layout name. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description A unique string to distinguish this type from any others. | # IconDefinition Represents an icon, such as used for a tab. Available in API version 43.0 and later. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note In API version 45.0 and later, only users with the “ViewSetup and Configuration” permission can access IconDefinition. ## Supported SOAP Calls query() ## Supported REST HTTP Methods Query, GET ## Fields | Field Name | Details | | --- | --- | | ContentType | Type string Properties Filter, Group, Nillable, Sort Description The tab icon’s content type, for example, image/png. | | DurableId | Type string 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. To simplify queries, use this field. | | Height | Type int Properties Filter, Group, Nillable, Sort Description Height of the icon in pixels. If the icon content type is SVG, the Height and Width values are not used. | | TabDefinitionId | Type string Properties Filter, Nillable, Sort Description The ID of the tab this definition belongs to. Defaults to null. | | Theme | Type string Properties Filter, Group, Nillable, Sort Description The user interface theme this definition is associated with. | | Url | Type string Properties Filter, Group, Nillable, Sort Description The fully qualified URL for this icon. The default icon is a cloud. | | Width | Type int Properties Filter, Group, Nillable, Sort Description The icon’s width in pixels. If the icon content type is SVG, the Height and Width values are not used. | # Improve Performance with the Composite Resource Use the /composite resource to improve the performance of a development tool or app built with Tooling API. This resource executes a series of Tooling API requests in a single call, minimizing the number of round trips needed between the client and server. You can use the output of one request as the input to a subsequent request. The requests’ response bodies and HTTP statuses are returned in a single response body. The entire request counts as a single call toward your API limits. Available in API version 40.0 and later. For the most current API limit information, see the Salesforce Developer Limits Quick Reference. Contractual limits may also apply, as per your Salesforce contract. The requests in a composite call are called subrequests. The subrequests are executed in the context of the same user. In a subrequest’s body, you specify a reference ID that maps to the subrequest’s response. You can then refer to the ID in the url or body fields of later subrequests by using a JavaScript-like reference notation. You can specify whether an error in a subrequest causes the entire composite request to roll back or just the subrequests that depend on it. You can also specify headers for each subrequest. The following resources support composite. - All sObject resources (vXX.X/tooling/sobjects/) - The Query resource (vXX.X/tooling/query/?q=soql) ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note You can have up to 25 subrequests in a single call. Up to five of these subrequests can be query operations. ## Syntax **URI**: /vXX.X/composite **Formats**: JSON **HTTP method**: GET (lists other available composite resources), POST **Authentication**: Authorization: Bearer token **Parameters**: None required **Request body**: [Composite Request Body](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_requests_composite_composite.htm "Describes a collection of subrequests to execute with the /composite resource.") **Response body**: [Composite Response Body](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_responses_composite_composite.htm "Describes the result of a /composite request.") ## Example The following composite request body includes five subrequests. - The first subrequest creates a MetadataContainer. - The second subrequest creates an ApexClassMember. - The third subrequest creates a ContainerAsyncRequest and starts the asynchronous deployment process. - The fourth subrequest gets the created ContainerAsyncRequest. - The fifth subrequest gets the created MetadataContainer. The five subrequests count as a single call toward the API limit. { "allOrNone":false, "compositeRequest": \[ { "method":"POST", "body":{ "Name":"MetadataContainer Unique Name" }, “url":"/services/data/v40.0/tooling/sobjects/metadatacontainer/", "referenceId":"metadatacontainer\_reference\_id" }, { "method":"POST", "body":{ "contententityid":"" , "fullname":"ApexClassMemberUniqueFullName", "body":"public class Classtest2test {}", "MetadataContainerId":"@{metadatacontainer\_reference\_id.id}" }, "url":"/services/data/v40.0/tooling/sobjects/apexclassmember/", "referenceId":"apexclassmember\_reference\_id" }, { "method":"POST", "body":{ "IsCheckOnly":"false", "MetadataContainerId":"@{metadatacontainer\_reference\_id.id}" }, "url":"/services/data/v40.0/tooling/sobjects/containerasyncrequest/", "referenceId":"containerasyncrequest\_reference\_id" }, { "method":"GET", "url":"/services/data/v40.0/tooling/sobjects/containerasyncrequest/@{containerasyncrequest\_reference\_id.id}", "referenceId":"containerasyncrequest\_GET\_reference\_id" }, { "method":"GET", "url":"/services/data/v40.0/tooling/sobjects/metadatacontainer/@{metadatacontainer\_reference\_id.id}", "referenceId":"metadatacontainer\_GET\_reference\_id" } \] } - **[Composite Request Body](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_requests_composite_composite.htm)** Describes a collection of subrequests to execute with the /composite resource. - **[Composite Response Body](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_responses_composite_composite.htm)** Describes the result of a /composite request. #### See Also - [REST API Developer Guide](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_rest.meta/api_rest/resources_composite.htm "REST API Developer Guide - HTML (New Window)") # InboundNetworkConnection Represents the a private connection between a third-party data service and a Salesforce org. The connection is inbound because the callouts are coming _into_ Salesforce.. Available in API version 49.0 and later. ## Supported SOAP Calls create(), delete(), describeObject(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods DELETEGETPATCHPOST ## Fields
Field Details
ConnectionType
Type
picklist
Properties
Filter, Group, Restricted picklist, Sort
Description
Required. Specifies the Cloud provider of the connection. The only valid value is AwsPrivateLink.
Description
Type
string
Properties
Filter, Group, Nillable, Sort
Description
Required. A description of the connection. Maximum of 255 characters.
DeveloperName
Type
string
Properties
Filter, Group, Sort
Description
The developer’s internal name for the inbound network connection used in the API.
FullName
Type
string
Properties
Create, Group, Nillable
Description
The full name of the associated type 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.

isActive
Type
boolean
Properties
Defaulted on create, Filter, Group, Sort
Description
Required. Specifies whether the connection is active (true) or not(false). The default value is false
Language
Type
string
Properties
Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort
Description
The language of the connection. The value for this field is the language value of the org.
ManageableState
Type
ManageableState enumerated list
Properties
Filter, Group, Nillable, Restricted picklist, Sort
Description
Indicates the manageable state of the specified component that is contained in a package:
  • beta
  • deleted
  • deprecated
  • deprecatedEditable
  • installed
  • installedEditable
  • released
  • unmanaged
MasterLabel
Type
string
Properties
Filter, Group, Sort
Description
The internal label for the connection.
Metadata
Type
mns:InboundNetworkConnection
Properties
Create, Nillable, Update
Description
Provides access to the associated type and related fields in Metadata API.
NamespacePrefix
Type
string
Properties
Filter, Group, Nillable, Sort
Description
The namespace of the connection. An inbound network connection can be in an extension namespace different than the object.
Status
Type
picklist
Properties
Filter, Group, Restricted Picklist, Sort
Description
Required. Connection status. The connection is initially Unprovisioned and moves through the other states automatically after an admin performs a provision, sync, or teardown action. The valid values are:
  • Unprovisioned
  • Allocating
  • PendingAcceptance
  • PendingActivation
  • RejectedRemotely
  • DeletedRemotely
  • TeardownInProgress
  • Ready
# InboundNetworkConnProperty Represents a name-value pair that describes the properties of the inbound network connection. Available in API version 49.0 and later. ## Supported SOAP Calls create(), delete(), describeObject(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods DELETE, GET, HEAD, PATCH, POST, QUERY ## Fields | Field | Details | | --- | --- | | InboundNetworkConnectionId | Type reference Properties Create, Filter, Group, Sort Description Required. The ID of the corresponding [InboundNetworkConnection](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_inboundnetworkconnection.htm "Represents the a private connection between a third-party data service and a Salesforce org. The connection is inbound because the callouts are coming into Salesforce.. Available in API version 49.0 and later."). | | PropertyName | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort Description The name of a property used to establish an InboundNetworkConnection. Valid values are: - AwsVpcEndpointId—The unique endpoint ID for connections to an AWS Virtual Private Cloud (VPC). - Region—The region in which the VPC is hosted. - SourceIpRanges—The ranges of source IP address allocated to this inbound connection by the Salesforce-managed VPC in your cloud provider. | | PropertyValue | Type textarea Properties Create, Nillable, Update Description The value of the PropertyName. An example of the PropertyValue of Region is us-west-2. The PropertyValue of SourceIpRanges is a JSON string that lists the start and end IP address for each range. This example shows two IP address ranges. \[ { "startIp":"10.10.10.0", "endIp":"10.10.10.3" }, { "startIp":"100.100.100.0", "endIp":"100.100.100.15" } \] | # Index Represents the index defined within a custom big object. Available in Tooling API version 41.0 and later. ## Supported SOAP Calls query(), retrieve() ## Supported REST HTTP Methods Query, GET ## Limitations [SOQL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_soql_limits.htm "Some Tooling API objects have SOQL limitations. These limitations apply to any Metadata Catalog query, which applies to all Custom Metadata Types and Metadata Catalog entities, not only the ones explicitly listed.") [SOSL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_sosl_limits.htm "Two Tooling API objects, EntityDefinition and FieldDefinition, have some SOSL limitations. ExternalString and MetadataComponentDependency (Beta) don’t support SOSL searches.") ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Filter, Group, Sort Description The unique name of the record 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. This field is automatically generated, but you can supply your own value if you create the record using the API. | | Label | Type string Properties Filter, Group, Nillable, Sort Description This name is used to refer to the big object in the user interface. Available API version 41.0 and later. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description Master label for the Index. This internal label doesn’t get translated. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description A unique string to distinguish this type from any others. | | SobjectType | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The type of standard object that this record type is derived from. In this case, the parent big object. | | Type | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The type of index. Valid values are PRIMARY or SECONDARY. | ## Usage REST GET { "attributes" : { "type" : "Index", "url" : "/services/data/v41.0/tooling/sobjects/Index/0c0D000000000GUIAY" }, "Id" : "0c0D000000000GUIAY", "SobjectType" : "01ID0000000AwIcMAK", "DeveloperName" : "BigObject\_PK", "MasterLabel" : "BigOBject\_PK", ... "Type" : "PRIMARY" } # IndexField Represents the fields in the index of a custom big object. Available in Tooling API version 41.0 and later. ## Supported SOAP Calls query(), retrieve(). ## Supported REST HTTP Methods GET ## Limitations [SOQL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_soql_limits.htm "Some Tooling API objects have SOQL limitations. These limitations apply to any Metadata Catalog query, which applies to all Custom Metadata Types and Metadata Catalog entities, not only the ones explicitly listed.") [SOSL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_sosl_limits.htm "Two Tooling API objects, EntityDefinition and FieldDefinition, have some SOSL limitations. ExternalString and MetadataComponentDependency (Beta) don’t support SOSL searches.") ## Fields | Field | Details | | --- | --- | | FieldId | Type reference Properties Filter, Group, Sort Description ID of the custom field definition. | | Id | Type ID Properties Filter, Group, Sort Description ID of the custom index field. | | IndexId | Type reference Properties Filter, Group, Sort Description ID of the custom index. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | Ordinal | Type int Properties Filter, Group, Sort Description The field’s position in the index. Used to determine the order of the fields in the index. | | SortDirection | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The sort direction of the field in the index. Valid values are ASC for ascending order and DESC for descending order. | # InstalledSubscriberPackage Represents a package (first- or second-generation) that is installed in a subscriber’s org. Available in API version 41.0 and later. ## Supported SOAP Calls describeSObjects(), query(), retrieve() ## Supported REST HTTP Methods GET, Query ## Fields | Field | Details | | --- | --- | | MinPackageVersionId | Type ID Properties Filter, Group, Nillable, Sort Description Package version ID (foreign key) of the first version of the package that was installed in the org. Starts with 04t. | | SubscriberPackageId | Type ID Properties Filter, Group, Nillable, Sort Description ID of the subscriber package. Starts with 033. | | SubscriberPackageVersionId | Type ID Properties Filter, Group, Nillable, Sort Description ID that shows the currently installed package version. Starts with 04t. | ## Usage Query InstalledSubscriberPackage for details about the packages that are installed in your org. Sample SOQL query: SELECT Id, SubscriberPackageId, SubscriberPackage.NamespacePrefix, SubscriberPackage.Name, SubscriberPackageVersion.Id, SubscriberPackageVersion.Name, SubscriberPackageVersion.MajorVersion, SubscriberPackageVersion.MinorVersion, SubscriberPackageVersion.PatchVersion, SubscriberPackageVersion.BuildNumber FROM InstalledSubscriberPackage ORDER BY SubscriberPackageId # InstalledSubscriberPackageVersion Deprecated and slated for removal. Represents a package version (first- or second-generation) that is installed in a subscriber’s org. Available in API version 41.0 and later. ![Warning](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_warning.png) #### Warning This object is not currently in use. It will be removed in a future release. ## Supported SOAP Calls describeSObjects(), query(), retrieve() ## Supported REST HTTP Methods GET, Query ## Fields | Field | Details | | --- | --- | | MinPackageVersionId | Type reference Properties Filter, Group, Nillable, Sort Description Package version ID (foreign key) of the first version of the package that was installed in the org. | | SubscriberPackageId | Type reference Properties Filter, Group, Sort Description ID of the subscriber package. | | SubscriberPackageVersionId | Type reference Properties Filter, Group, Sort, Unique Description ID of the subscriber package version. | # Introducing Tooling API Use Tooling API to build custom development tools or apps for Lightning Platform applications. Tooling API’s SOQL capabilities for many metadata types allow you to retrieve smaller pieces of metadata. Smaller retrieves improve performance, which makes Tooling API a better fit for developing interactive applications.Tooling API provides SOAP and REST interfaces. For example, you can: - Add features and functionality to your existing Lightning Platform tools. - Build dynamic modules for Lightning Platform development into your enterprise integration tools. - Build specialized development tools for a specific application or service. Tooling API exposes metadata used in developer tooling that you can access through REST or SOAP. For detailed descriptions of Tooling API objects and the REST resources and SOAP calls that each object supports, see [Tooling API Objects](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_list.htm). - **[When to Use Tooling API](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_tasks.htm)** Use Tooling API when you need fine-grained access to an org’s metadata. Tooling API’s SOQL capabilities for many metadata types allow you to retrieve smaller pieces of metadata. Smaller retrieves improve performance, which makes Tooling API a better fit for developing interactive applications. - **[Tooling API Release Notes](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_rns.htm)** Use the Salesforce Release Notes to learn about the most recent updates and changes to Tooling API. - **[REST Overview](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_rest_overview.htm)** Use REST if you’re using a language that isn’t strongly typed, like JavaScript. - **[API End-of-Life Policy](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_eol.htm)** See which Tooling REST and SOAP API versions are supported, unsupported, or unavailable. # InvocableActionExtension Represents an extension to an invocable action in Salesforce. This object is available in API version 65.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls describeSObjects(), query(), retrieve() ## Supported REST API Methods GET, HEAD, Query ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Filter, Group, Sort Description The unique name of the InvocableActionExtension object. 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 organization. Label is **Record Type Name**. This field is automatically generated, but you can supply your own value if you create the record using the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance slows down while Salesforce generates one for each record. | | Language | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The language for the package. The picklist values match the [Fully Supported Languages](https://help.salesforce.com/s/articleView?id=xcloud.faq_getstart_what_languages_does.htm&type=5&language=en_US) listed in Salesforce Help. If no language is specified, the language defaults to the language of the Dev Hub user who created the package. This field is available in API version 65.0 and later. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description Label for the InvocableActionExtension. In the UI, this field is InvocableActionExtension. | | NamespacePrefix | Type string 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. | | ReferenceObjectId | Type reference Properties Filter, Group, Nillable, Sort Description Reference to the Apex Class that contains the Invocable Action being extended by this InvocableActionExtension. Only one InvocableActionExtension can exist for a given Apex Class, making this field a unique value among InvocableActionExtension records in this object. This field is a relationship field. Relationship Name ReferenceObject Refers To ApexClass | # IPAddressRange Represents a range of IP addresses to include in or exclude from the specified feature. ## Supported SOAP API Calls create(), delete(), describeLayout(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | Description | Type string Properties Filter, Group, Nillable, Sort Description Not required. The description of the IP address range. For example, the name of the company that owns the IP address range. | | DeveloperName | Type string Properties Filter, Group, Sort Description The unique name of the IP address range. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | EndAddress | Type string Properties Filter, Group, Sort Description The end of the IP address range. | | FullName | Type string Properties Create, Group, Nillable Description The unique name used as the event delivery 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. | | IpAddressFeature | Type picklist Properties Defaulted on create, Filter, Group, Restricted picklist, Sort Description The feature that uses the range of IP addresses. Possible values are: - EmailIpFiltering (default) —Filter email engagement activities such as email opens and email clicks. | | IpAddressUsageScope | Type picklist Properties Defaulted on create, Filter, Group, Restricted picklist, Sort Description Whether the specified IP addresses are included or excluded. Possible values are: - Exclusion - Inclusion | | isProtected | Field Type boolean Description Whether the specified IP address range is protected. The default is false. | | MasterLabel | Type string Properties Filter, Group, Sort Description Master label for the IP address range. This internal label doesn’t get translated. | | Metadata | Type complexvalue Properties Create, Nillable, Update Description The IP address range metadata. | | StartAddress | Type string Properties Filter, Group, Sort Description The start of the IP address range. | ## Usage Specify a range of IP addresses, which feature the range applies to, and whether the IP addresses are excluded from or included in the feature. ## Example Exclude your coworkers' email opens and clicks from your email engagement reports. Use StartAddress and EndAddress to define the range of IP addresses that your company owns. Set IpAddressFeature to EmailIpFiltering, and set IpAddressUsageScope to Exclusion. # KeywordList Represents a list of keywords used in Experience Cloud site moderation. Available in Tooling API version 36.0 and later. This keyword list is a type of moderation criteria that defines offensive language or inappropriate content that you don’t want in your Experience Cloud site. ## Supported SOAP Calls create(), delete(), query(), retrieve(), update() ## Supported REST HTTP Methods DELETE, GET, PATCH, POST ## Fields | Field | Details | | --- | --- | | Description | Type textarea Properties Filter, Nillable, Sort. Description A description of the keyword list. | | DeveloperName | Type string Properties Filter, Group, Namefield, Sort Description The developer’s internal name for the keyword list used in the API. | | FullName | Type string 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. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort. Description The language of the keyword list. Valid values are: - 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 Spanish (Mexico) defaults to Spanish for customer-defined translations. - Swedish: sv - Thai: th The Salesforce user interface is fully translated to Thai, but Help is in English. | | MasterLabel | Type string Properties Filter, Group, Sort. Description Label for the keyword list. | | Metadata | Type mns:KeywordList Properties Create, Nillable, Update. Description KeywordList metadata. 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. | # Layout Represents a page layout. This object is available in API version 32.0 and later. ## Supported SOAP Calls create(), delete(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods GET ## Fields | Field | Details | | --- | --- | | EntityDefinitionId | Type string Properties Filter, Group, Sort Description The Id of the EntityDefinition object associated with this object. | | FullName | Type string Properties Create, Group, Nillable Description The unique name of the layout used as the 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. 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. | | LayoutType | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Indicates the type of the layout. Valid values are: - GlobalQuickActionList - ProcessDefinition - Standard | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | Metadata | Type mns:Layout Properties Create, Nillable, Update Description Layout metadata. 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. | | Name | Type string Properties Filter, Group, idLookup, Nillable, Sort Description The layout name. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description A unique string to distinguish this layout from any others. For example, if this layout is being using by a flow, use the NamespacePrefix to uniquely identify the layouts in multiple flow instances. | | ShowSubmitAndAttachButton | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Only allowed on Case layout. If true, **Submit & Add Attachment** displays on case edit pages to portal users in the Customer Portal. | | TableEnumOrId | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The enum (for example, Account) or ID of the object this layout is on. | # LightningComponentBundle Represents a Lightning web component bundle. A bundle contains a Lightning web component and its related resources. Available in API version 45.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API HTTP Methods Query, GET, POST, PATCH, DELETE ## Fields | Field Name | Details | | --- | --- | | ApiVersion | Type double Properties Filter, Nillable, Sort Description The API version for this bundle. Every bundle has an API version specified at creation. | | Description | Type textarea Properties Filter, Group, Nillable, Sort Description The text description of the bundle. Maximum size of 255 characters. | | DeveloperName | Type string Properties Filter, Group, Sort Description The unique name of the record 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. This field is automatically generated but you can supply your own value if you create the record using the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance slows down while Salesforce generates one for each record. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | FullName | Type string Properties Create, Group, Nillable Description The unique name used as the LightningComponentBundle 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. 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. | | IsExplicitImport | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether imports between files are done explicitly by the developer (true) or implicitly by the framework (false). | | IsExposed | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the component is available to other namespaces, including namespaces outside of a managed package. If true and TargetConfigs is present, the component is also available to Salesforce builders such as Lightning App Builder and Experience Builder. If false, the component isn't available to builders and other namespaces. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the MasterLabel. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description Master label for the Lightning bundle. This internal label doesn’t get translated. | | Metadata | Type mns:LightningComponentBundle Properties Create, Nillable, Update Description The LightningComponentBundle metadata. 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 Properties Filter, Group, Nillable, Sort Description The namespace prefix that is 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 Developer Edition orgs, NamespacePrefix is set to the namespace prefix of the org for all objects that support it, unless 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 orgs that are not Developer Edition orgs, NamespacePrefix is set only for objects that are part of an installed managed package. All other objects have no namespace prefix. | | TargetConfigs | Type textarea Properties Nillable Description Configurations for each target. Each target is a Lightning page type that can be configured in Lightning App Builder. | ## Usage For more information about Lightning web components, see [Lightning Web Components Developer Guide](https://developer.salesforce.com/docs/component-library/documentation/lwc "HTML (New Window)"). # LightningComponentResource Represents a Lightning web component resource, such as HTML markup, JavaScript code, a CSS file, an SVG resource, or an XML configuration file. Available in API version 45.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API HTTP Methods Query, GET, POST, PATCH, DELETE ## Special Access Rules As of Summer ’20 and later, only your Salesforce org's internal users can access this object. ## Fields
Field Name Details
FilePath
Type
string
Properties
Create, Filter, Group, Sort, Update
Description
The path to the resource.
Format
Type
picklist
Properties
Create, Filter, Group, Restricted picklist, Sort, Update
Description
The format of the resource. The possible values are:
  • css
  • html
  • js
  • json
  • svg
  • xml
LightningComponentBundleId
Type
reference
Properties
Create, Filter, Group, Sort
Description
The ID of the bundle containing the resource.
ManageableState
Type
ManageableState enumerated list
Properties
Filter, Group, Nillable, Restricted picklist, Sort
Description
Indicates the manageable state of the specified component that is contained in a package:
  • beta
  • deleted
  • deprecated
  • deprecatedEditable
  • installed
  • installedEditable
  • released
  • unmanaged

This field is available in API version 38.0 and later.

Source
Type
textarea
Properties
Create, Update
Description
The contents of the definition. This is all the markup or code for the definition.
## Usage For more information about Lightning web components, see [Lightning Web Components Developer Guide](https://developer.salesforce.com/docs/component-library/documentation/lwc "HTML (New Window)"). # LightningOutApp Represents a Lightning Out 2.0 application. With a Lightning Out 2.0 app, you can embed Lightning web components (LWC) into external applications. This object is available in API version 65.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeLayout(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | ApplicationName | Type string Properties Create, Filter, Group, Sort, Update Description The name of the Lightning Out 2.0 app. | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description The unique API name of the Lightning Out 2.0 app. | | IsEnabled | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether the Lightning Out 2.0 app is enabled (true) or disabled (false). The default value is false. If the app is disabled, then user authentication fails and the embedded components don’t load in the external app. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The language of the LightningOutApp. | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description ​A user-friendly name for the LightningOutApp, which is defined when the LightningOutApp is created. | ## Usage See [Extend Salesforce to External Apps with Lightning Out 2.0](https://help.salesforce.com/s/articleView?id=platform.lightning_out_intro.htm&language=en_US&type=5 "HTML (New Window)") in Salesforce Help and [Use Components Outside Salesforce with Lightning Out 2.0](https://developer.salesforce.com/docs/platform/lwc/guide/lightning-out-intro.html "HTML (New Window)") in the Lightning Web Components Developer Guide. # LookupFilter Represents a lookup filter, which restricts the valid values and lookup dialog results for lookup, master-detail, and hierarchical relationship fields. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. Available from Tooling API version 34.0 or later. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note LookupFilter is not supported on the article type object. ## Supported SOAP Calls query() ## Supported REST HTTP Methods GET ## Fields | Field Name | Details | | --- | --- | | Active | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the lookup filter is active. | | DeveloperName | Type string Properties Filter, Group, Namefield, 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 organization. Label is **Record Type Name**. | | FullName | Type string Properties Filter, Group, Sort 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. | | IsOptional | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Required. If true, the lookup filter is optional. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | Metadata | Type LookupFilter Properties Create, Nillable, Update Description The metadata for this lookup filter. 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 Properties Filter, Group, Nillable, Sort Description The namespace of the custom field, which is sometimes different from the object’s namespace. | | SourceFieldDefinition | Type string Properties Filter, Group, Sort Description The field that this filter applies to. | | SourceFieldDefinitionId | Type string Properties Filter, Group, Sort Description Durable ID of the object specified in SourceFieldDefinition. | | SourceObject | Type string Properties Filter, Group, Sort Description The object that contains the lookup field that uses this lookup filter. Null if the lookup filter doesn’t reference fields on the source object. | | TargetEntityDefinition | Type EntityDefinition Properties Filter, Group, Sort Description The entity definition for the source lookup field. | | TargetEntityDefinitionId | Type string Properties Filter, Group, Sort Description ID of the TargetEntityDefinition. | ## Example The Owner field on Account represents a user with certain characteristics. In this example, SourceFieldDefinition is Account.Owner and TargetEntityDefinition is User, because Owner is a lookup field to User. ## LookupFilter Metadata Metadata about the lookup filter is returned in the Metadata field: | Field | Type | Description | | --- | --- | --- | | active | boolean | Required. If true, the lookup filter is active. | | booleanFilter | string | The filter logic, if any, applied to this filter using Boolean operators AND, OR, or NOT. | | description | string | A description of the filter does. | | errorMessage | string | If the lookup filter fails, the error m. | | filterItems | FilterItem | Required. The set of filter conditions. Each lookup filter can have up to 10 FilterItems. | | infoMessage | string | Information displayed on the page to help the user. For example, explaining why some items are excluded in the lookup filter. | | isOptional | boolean | Required. If true, the lookup filter is optional. | ## FilterItem Metadata Represents one entry in a set of filter criteria.
Field Type Description
field string Represents the field specified in the filter.
operation FilterOperation, an enumeration of strings Valid values:
  • equals
  • notEqual
  • lessThan
  • greaterThan
  • lessOrEqual
  • greaterOrEqual
  • contains
  • notContain
  • startsWith
  • includes
  • excludes
  • within (DISTANCE criteria only)
value string Represents the value of the filter item being operated upon. For example, if the filter is my_number_field__c > 1, the value of this field is 1.
valueField string Specifies if the final column in the filter contains a field or a field value.

Approval processes don’t support this field in filter criteria.

# ManagedContentNodeType Represents standard and custom content node types created for use with your org. Available in API version 47.0 and later. ## Supported SOAP Calls query(), retrieve() ## Supported REST HTTP Methods GET ## Fields | Field | Details | | --- | --- | | HelpText | Type textarea Properties Filter, Group, Nillable, Sort Description Provides assistive text in the UI, displayed as an info bubble for the field. If this field is empty, no info bubble icon or text is displayed. | | NodeLabel | Type string Properties Filter, Group, Sort Description Declares the label for the field as it appears in the UI. | | NodeName | Type string Properties Filter, Group, Sort Description Unique name of the NodeType within the content type. NodeName is a simple text field that allows up to 100 alphanumeric characters and underscores. The name must begin with a letter, not include spaces, can’t have two consecutive underscores, and can’t end with an underscore. | | NodeOptionsIsLocalizable | Type boolean Properties Filter Description Declares a field as localizable so it’s exported (true) or not (false) by the content translation service in the Digital Experiences app. Default is false. | | NodeOptionsIsRequired | Type boolean Properties Filter Description Declares a field as required (true) or not (false). Fields declared as a required are indicated by a red asterisk. If a value isn’t added to the field, the form can't be saved and a standard error is displayed. Default is false. | | NodeType | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Identifies the supported type of content in the node. Passed as a string. There’s a maximum of 15 node types per content type. Valid values are: - TEXT—Simple text node (maximum length 255 characters) - MTEXT—Multi-line text node (maximum length 2000 characters) - RTE—Rich text node (maximum length 65536 characters) - IMG—Image node - URL—URL node (maximum length 255 characters) URL accepts protocol string values starting with http://, https://, mailto:, tel:, and /. - DATE—Date node DATE accepts dates only in the format yyyy-MM-dd. - DATETIME—Datetime node DATETIME accepts date and time in the format: yyyy-MM-dd'T'HH:mm:ss.SSS'Z' (UTC datetime in ISO 8601 format). - NAMEFIELD—Declares the field as the name that represents the content when referenced in the UI. For example, in a list of available content in the Digital Experiences app or as available for inclusion in a collection in Experience Cloud sites. Declare only one NodeType in your managed content type as NAMEFIELD. - NAMEFIELD is a string type of 200 characters or less. - When NAMEFIELD is used, [isRequired](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_managedcontenttype#isrequired.htm) must also be set to True for the field. | | PlaceholderText | Type textarea Properties Filter, Group, Nillable, Sort Description Provides assistive text in the UI, displayed as placeholder, or ghost text, in a field before any entry is made. For example, Enter a title for your article... | # ManagedContentType Represents standard and custom content types created for use with your org. Available in API version 47.0 and later. ## Supported SOAP Calls create(), delete(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods GET, POST, DELETE ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note You can delete a content type only if no content has been created based on that content type. ## ManagedContentType | Field | Details | | --- | --- | | Description | Type textarea Properties Filter, Group, Nillable, Sort Description Describes the custom content type defined in this ManagedContentType declaration. | | DeveloperName | Type string Properties Filter, Group, Sort Description Unique name for the custom content type. For example: OurSpecialContent\_c | | FullName | Type string Properties Create, Group, Nillable Description The full name of the content type in Metadata API. A unique name for the content type that contains only underscores and alphanumeric characters. The name must be unique across the org, begin with a letter, not include spaces, not end with an underscore, and not contain two consecutive underscores. 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. | | Language | Type picklist Properties Defaulted on create, Group, Nillable, Restricted picklist, Sort Description The language of the content type. | | MasterLabel | Type string Properties Filter, Group, Sort Description Declares the name of the content type as it appears in the UI. | | Metadata | Type mns: ManagedContentType Description The content type definition’s metadata object, containing information about which version is active and the content type definition’s description. 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. | # ManagedEventSubscription (Beta) Represents a managed event subscription in Pub/Sub API. Use a managed event subscription to track the events that a subscriber client consumed and resume a subscription where it left off. This object is available in API version 60.0 and later. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note This feature is a Beta Service. Customer may opt to try such Beta Service in its sole discretion. Any use of the Beta Service is subject to the applicable Beta Services Terms provided at Agreements and Terms. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules - To retrieve or query this object, you must have the View Setup and Configuration permission. - To create, update, or delete this object, you must have the Customize Application permission. ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Filter, Group, Sort Description Required. 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 organization. Label is **Record Type Name**. This field is automatically generated, but you can supply your own value if you create the record using the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance may slow while Salesforce generates one for each record. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated ManagedEventSubscription in Metadata API. The full name can include a namespace prefix. 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. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of ManagedEventSubscription. Possible values are: - da—Danish - de—German - en\_US—English - es—Spanish - es\_MX—Spanish (Mexico) - fi—Finnish - fr—French - it—Italian - ja—Japanese - ko—Korean - nl\_NL—Dutch - no—Norwegian - pt\_BR—Portuguese (Brazil) - ru—Russian - sv—Swedish - th—Thai - zh\_CN—Chinese (Simplified) - zh\_TW—Chinese (Traditional) | | ManageableState | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package. Possible values are: - beta—Managed-Beta - deleted—Managed-Proposed-Deleted - deprecated—Managed-Proposed-Deprecated - deprecatedEditable—SecondGen-Installed-Deprecated - installed—Managed-Installed - installedEditable—SecondGen-Installed-Editable - released—Managed-Released - unmanaged—Unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description The label for the managed event subscription, which corresponds to the label of the ManagedEventSubscription metadata type. The label is displayed in the user interface. If the label isn't provided in the metadata type, MasterLabel is the DeveloperName value. | | Metadata | Type [ManagedEventSubscription](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_managedeventsubscription.htm) Properties Create, Nillable, Update Description The metadata for the managed event subscription. | | NamespacePrefix | Type string 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 the following values: - In Developer Edition organizations, the namespace prefix is set to the namespace prefix of the organization for all objects that support it. There is 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 are not Developer Edition organizations, NamespacePrefix is only set for objects that are part of an installed managed package. There is no namespace prefix for all other objects. | | Version | Type string Properties Filter, Group, Sort Description Reserved for future use. | ## Usage This JSON example is the body of a REST API POST request that creates a managed event subscription named My\_Managed\_Subscription. The corresponding REST endpoint is /services/data/v68.0/tooling/sobjects/ManagedEventSubscription. { "FullName": "My\_Managed\_Subscription", "Metadata": { "label" : "My Managed Subscription", "topicName" : "/event/Order\_Event\_\_e", "defaultReplay": "LATEST", "state" : "RUN", "errorRecoveryReplay" : "LATEST" } } # MarketingAppExtAction Represents an Action Type, which is an action that you can add to Engagement Studio programs in Account Engagement and execute in a third-party app. This object is available in API version 56.0 and later. ## Supported SOAP Calls create(), delete(), describeLayout(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules MarketingAppExtAction is available to customers with Account Engagement Plus, Advanced, or Premium editions. ## Fields | Field | Details | | --- | --- | | ActionName | Type string Properties Create, Filter, Group, Sort, Update Description The name of the action for internal use. Appears in the UI. | | ActionParams | Type textarea Properties Create, Nillable, Update Description The parameters for the invocable action. Appears in the UI. | | ActionSchema | Type textarea Properties Create, Nillable, Update Description The JSON schema for the invocable action. Appears in the UI. | | ActionSelector | Type string Properties Create, Filter, Group, Sort, Update Description Invocable action selector. Appears in the UI. | | ApiName | Type string Properties Create, Filter, Group, Sort, Update Description 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 is automatically generated, but you can supply your own value if you create the record using the API. Appears in the UI. | | Description | Type textarea Properties Create, Nillable, Update Description The description of the action for internal reference. Appears in the UI. | | IsActive | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description The default value is false. Appears in the UI. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MarketingAppExtensionId | Type reference Properties Create, Filter, Group, Sort Description This field is a relationship field. Relationship Name MarketingAppExtension Relationship Type Lookup Refers To MarketingAppExtension | | Version | Type double Properties Create, Filter, Sort, Update Description Reserved for future use. | # MarketingAppExtActivity Represents an Activity Type, which is a prospect activity that occurs in a third-party app and can be used in Account Engagement automations. . Available in API version 53.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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 field names. ## Supported SOAP Calls create(), describeLayout(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods GET, HEAD, PATCH, POST, Query ## Special Access Rules MarketingAppExtActivity is available to customers with Account Engagement Plus, Advanced, or Premium editions. ## Fields | Field | Details | | --- | --- | | Description | Type textarea Properties Create, Nillable, Update Description The description of the activity for internal reference. Appears in the UI. | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description The unique name for the MarketingAppExtActivity object. In the UI, this field is Extension API Name. 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 is automatically generated, but you can supply your own value if you create the record using the API. Appears in the UI as API Name. | | EndpointUrl | Type string Properties Filter, Nillable Description A sample endpoint that can be used to help connect the activity type to a third-party app. Appears in the UI. | | IsActive | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description This field makes data for the Activity Type available to use in Account Engagement automations. Label is **Active in Automations**. The default value is false. Appears in the UI. | | Language | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The language of the MarketingAppExtActivity. Possible values are: - da—Danish - de—German - en\_US—English - es—Spanish - es\_MX—Spanish (Mexico) - fi—Finnish - fr—French - it—Italian - ja—Japanese - ko—Korean - nl\_NL—Dutch - no—Norwegian - pt\_BR—Portuguese (Brazil) - ru—Russian - sv—Swedish - th—Thai - zh\_CN—Chinese (Simplified) - zh\_TW—Chinese (Traditional) | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MarketingAppExtensionId | Type reference Properties Create, Filter, Group, Sort Description This is a relationship field. It identifies the Marketing App Extention that the Activity Type is associated with. Appears in the UI. Relationship Name MarketingAppExtension Relationship Type Lookup Refers To MarketingAppExtension | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description Label for the MarketingAppExtActivity. In the UI, this field is Activity Name. | | NamespacePrefix | Type string 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 the following values: - In Developer Edition organizations, the namespace prefix is set to the namespace prefix of the organization for all objects that support it. There is 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 are not Developer Edition organizations, NamespacePrefix is only set for objects that are part of an installed managed package. There is no namespace prefix for all other objects. | # MarketingAppExtAssignment Represents a Marketing App Extension Business Unit assignment, which dictates which Account Engagement business unit the external activity data is available in. Available in API version 53.0 and later. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Pardot is now known as Marketing Cloud Account Engagement. We wish we could snap our fingers to update the name everywhere, but you can expect to see the previous name in a few places, including API references and documentation. ## Supported SOAP Calls create(), delete(), describeLayout(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules MarketingAppExtAssignment is available to customers with Account Engagement Plus, Advanced, or Premium editions. ## Fields | Field | Details | | --- | --- | | MarketingAppExtensionId | Type reference Properties Create, Filter, Group, Sort, Update Description This is a relationship field. The Marketing App Extension the Business Unit Assignment is associated with. Appears in the UI. Relationship Name MarketingAppExtension Relationship Type Lookup Refers To MarketingAppExtension | | ParentId | Type reference Properties Create, Filter, Group, Sort, Update Description This is a relationship field. The ID of the Account Engagement business unit. Appears in the UI. Relationship Name Parent Relationship Type Lookup Refers To PardotTenant | # MarketingAppExtension Represents an integration with a third-party app or service that generates prospect external activity. Available in API version 53.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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 field names. ## Supported SOAP Calls describeLayout(), describeSObjects(), query(), retrieve(), search() ## Supported REST HTTP Methods GET, PATCH, POST ## Special Access Rules MarketingAppExtension is available to customers with Account Engagement Plus, Advanced, or Premium editions. ## Fields | Field | Details | | --- | --- | | Description | Type textarea Properties Nillable Description The description of the activity for internal reference. Appears in the UI. | | DeveloperName | Type string Properties Filter, Group, Sort Description The unique name for the MarketingAppExtension object. In the UI, this field is API Name. 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 is automatically generated, but you can supply your own value if you create the record using the API. Appears in the UI as API Name. | | IsActive | Type boolean Properties Defaulted on create, Filter, Group, Sort Description This field makes data for a Marketing App Extension available to use in Account Engagement automations. Label is **Active in Automations**. The default value is false. Appears in the UI. | | Language | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The language of the MarketingAppExtension Possible values are: - da—Danish - de—German - en\_US—English - es—Spanish - es\_MX—Spanish (Mexico) - fi—Finnish - fr—French - it—Italian - ja—Japanese - ko—Korean - nl\_NL—Dutch - no—Norwegian - pt\_BR—Portuguese (Brazil) - ru—Russian - sv—Swedish - th—Thai - zh\_CN—Chinese (Simplified) - zh\_TW—Chinese (Traditional) | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, idLookup, Sort Description Label for the MarketingAppExtension. In the UI, this field is Extension Name. | | NamespacePrefix | Type string 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 the following values: - In Developer Edition organizations, the namespace prefix is set to the namespace prefix of the organization for all objects that support it. There is 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 are not Developer Edition organizations, NamespacePrefix is only set for objects that are part of an installed managed package. There is no namespace prefix for all other objects. | # MarketingHierarchyGroupDef Represents the top-level category of a marketing hierarchy that can be defined on various dimensions such as brand, industry, and region. This object is available in API version 68.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules Marketing Planning and Operations must be available to access this object. See [Availability of Marketing Planning and Operations](https://help.salesforce.com/s/articleView?id=mktg.mktg_pln_oper_setup_editions.htm&language=en_US). ## Fields | Field | Details | | --- | --- | | Description | Type textarea Properties Create, Nillable, Update Description The description of the hierarchy group. | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description The unique name of the object in the API. The name must be 40 characters or fewer, must begin with a letter, can contain only underscores and alphanumeric characters, can't include spaces, can't end with an underscore, and can't 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 organization. | | IsActive | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether the hierarchy group definition is active (true) or not (false). The default value is false. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The combined language and locale ISO code, which controls the language for the marketing hierarchy group definition. Possible values are: - af—Afrikaans - am—Amharic - ar—Arabic - ar\_AE—Arabic (United Arab Emirates) - ar\_BH—Arabic (Bahrain) - ar\_DZ—Arabic (Algeria) - ar\_EG—Arabic (Egypt) - ar\_IQ—Arabic (Iraq) - ar\_JO—Arabic (Jordan) - ar\_KW—Arabic (Kuwait) - ar\_LB—Arabic (Lebanon) - ar\_LY—Arabic (Libya) - ar\_MA—Arabic (Morocco) - ar\_OM—Arabic (Oman) - ar\_QA—Arabic (Qatar) - ar\_SA—Arabic (Saudi Arabia) - ar\_SD—Arabic (Sudan) - ar\_SY—Arabic (Syria) - ar\_TN—Arabic (Tunisia) - ar\_YE—Arabic (Yemen) - bg—Bulgarian - bn—Bengali - bs—Bosnian - ca—Catalan - cac—Chuj - cak—Kaqchikel - cs—Czech - cy—Welsh - da—Danish - de—German - de\_AT—German (Austria) - de\_BE—German (Belgium) - de\_CH—German (Switzerland) - de\_LI—German (Liechtenstein) - de\_LU—German (Luxembourg) - el—Greek - el\_CY—Greek (Cyprus) - en\_AD—English (Andorra) - en\_AE—English (United Arab Emirates) - en\_AG—English (Antigua and Barbuda) - en\_AL—English (Albania) - en\_AT—English (Austria) - en\_AU—English (Australian) - en\_BA—English (Bosnia and Herzegovina) - en\_BB—English (Barbados) - en\_BE—English (Belgium) - en\_BG—English (Bulgaria) - en\_BS—English (Bahamas) - en\_BZ—English (Belize) - en\_CA—English (Canadian) - en\_CH—English (Switzerland) - en\_CY—English (Cyprus) - en\_CZ—English (Czechia) - en\_DE—English (Germany) - en\_DK—English (Denmark) - en\_DM—English (Dominica) - en\_EE—English (Estonia) - en\_ES—English (Spain) - en\_FI—English (Finland) - en\_FR—English (France) - en\_GB—English (UK) - en\_GD—English (Grenada) - en\_GI—English (Gibraltar) - en\_GR—English (Greece) - en\_GY—English (Guyana) - en\_HK—English (Hong Kong) - en\_HR—English (Croatia) - en\_HU—English (Hungary) - en\_IE—English (Ireland) - en\_IL—English (Israel) - en\_IN—English (Indian) - en\_IS—English (Iceland) - en\_IT—English (Italy) - en\_JM—English (Jamaica) - en\_JP—English (Japan) - en\_KN—English (St. Kitts and Nevis) - en\_KR—English (South Korea) - en\_LC—English (St. Lucia) - en\_LI—English (Liechtenstein) - en\_LT—English (Lithuania) - en\_LU—English (Luxembourg) - en\_LV—English (Latvia) - en\_MC—English (Monaco) - en\_ME—English (Montenegro) - en\_MK—English (North Macedonia) - en\_MT—English (Malta) - en\_MU—English (Mauritius) - en\_MY—English (Malaysian) - en\_NL—English (Netherlands) - en\_NO—English (Norway) - en\_NZ—English (New Zealand) - en\_PH—English (Phillipines) - en\_PL—English (Poland) - en\_PT—English (Portugal) - en\_RO—English (Romania) - en\_RS—English (Serbia) - en\_SE—English (Sweden) - en\_SG—English (Singapore) - en\_SI—English (Slovenia) - en\_SK—English (Slovakia) - en\_TH—English (Thailand) - en\_TR—English (Turkey) - en\_TT—English (Trinidad and Tobago) - en\_TW—English (Taiwan) - en\_US—English - en\_VC—English (St. Vincent and the Grenadines) - en\_ZA—English (South Africa) - eo—Esperanto (Pseudo) - eo\_US—Esperanto UniqueId (Pseudo) - es—Spanish - es\_AD—Spanish (Andorra) - es\_AR—Spanish (Argentina) - es\_BO—Spanish (Bolivia) - es\_CL—Spanish (Chile) - es\_CO—Spanish (Colombia) - es\_CR—Spanish (Costa Rica) - es\_DO—Spanish (Dominican Republic) - es\_EC—Spanish (Ecuador) - es\_GT—Spanish (Guatemala) - es\_HN—Spanish (Honduras) - es\_MX—Spanish (Mexico) - es\_NI—Spanish (Nicaragua) - es\_PA—Spanish (Panama) - es\_PE—Spanish (Peru) - es\_PR—Spanish (Puerto Rico) - es\_PY—Spanish (Paraguay) - es\_SV—Spanish (El Salvador) - es\_US—Spanish (United States) - es\_UY—Spanish (Uruguay) - es\_VE—Spanish (Venezuela) - et—Estonian - eu—Basque - fa—Farsi - fi—Finnish - fr—French - fr\_BE—French (Belgium) - fr\_CA—French (Canadian) - fr\_CH—French (Switzerland) - fr\_HT—French (Haiti) - fr\_LU—French (Luxembourg) - fr\_MA—French (Morocco) - ga—Irish - gu—Gujarati - haw—Hawaiian - hi—Hindi - hmn—Hmong - hr—Croatian - ht—Haitian Creole - hu—Hungarian - hy—Armenian - in—Indonesian - is—Icelandic - it—Italian - it\_CH—Italian (Switzerland) - iw—Hebrew - iw\_EO—Esperanto RTL (Pseudo) - ja—Japanese - ji—Yiddish - ka—Georgian - kk—Kazakh - kl—Greenlandic - km—Khmer - kn—Kannada - ko—Korean - lb—Luxembourgish - lt—Lithuanian - lv—Latvian - mi—Te reo - mk—Macedonian - ml—Malayalam - mr—Marathi - ms—Malay - mt—Maltese - my—Burmese - nl\_BE—Dutch (Belgium) - nl\_NL—Dutch - nl\_SR—Dutch (Suriname) - no—Norwegian - pa—Punjabi - pl—Polish - pt\_AO—Portuguese (Angola) - pt\_BR—Portuguese (Brazil) - pt\_PT—Portuguese (European) - quc—Kiche - rm—Romansh - ro—Romanian - ro\_MD—Romanian (Moldova) - ru—Russian - ru\_AM—Russian (Armenia) - ru\_BY—Russian (Belarus) - ru\_KG—Russian (Kyrgyzstan) - ru\_KZ—Russian (Kazakhstan) - ru\_LT—Russian (Lithuania) - ru\_MD—Russian (Moldova) - ru\_PL—Russian (Poland) - ru\_UA—Russian (Ukraine) - sh—Serbian (Latin) - sh\_ME—Montenegrin - sk—Slovak - sl—Slovene - sm—Samoan - sq—Albanian - sr—Serbian (Cyrillic) - sv—Swedish - sv\_FI—Swedish (Finland) - sw—Swahili - ta—Tamil - te—Telugu - th—Thai - tl—Tagalog - tr—Turkish - uk—Ukrainian - ur—Urdu - vi—Vietnamese - xh—Xhosa - zh\_CN—Chinese (Simplified) - zh\_HK—Chinese (Hong Kong) - zh\_MY—Chinese (Malaysia) - zh\_SG—Chinese (Singapore) - zh\_TW—Chinese (Traditional) - zu—Zulu | | ManageableState | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package. Possible values are: - beta—Managed-Beta - deleted—Managed-Proposed-Deleted - deprecated—Managed-Proposed-Deprecated - deprecatedEditable—SecondGen-Installed-Deprecated - installed—Managed-Installed - installedEditable—SecondGen-Installed-Editable - released—Managed-Released - unmanaged—Unmanaged | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description The label for this marketing hierarchy group definition value. This display value is the internal label that doesn't get translated. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The namespace prefix that is 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 Developer Edition orgs, NamespacePrefix is set to the namespace prefix of the org for all objects that support it, unless 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 orgs that are not Developer Edition orgs, NamespacePrefix is set only for objects that are part of an installed managed package. All other objects have no namespace prefix. | | UsageType | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description Specifies the use case for this hierarchy group definition. Possible values are: - MktOps | # MarketingHierarchyGroupNodeDef Represents the membership of a node within a marketing hierarchy group, defining which hierarchy levels belong to a given group category. This object is available in API version 68.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules Marketing Planning and Operations must be available to access this object. See [Availability of Marketing Planning and Operations](https://help.salesforce.com/s/articleView?id=mktg.mktg_pln_oper_setup_editions.htm&language=en_US). ## Fields | Field | Details | | --- | --- | | Description | Type textarea Properties Create, Nillable, Update Description The description of the hierarchy group node. | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description The unique name of the object in the API. The name must be 40 characters or fewer, must begin with a letter, can contain only underscores and alphanumeric characters, can't include spaces, can't end with an underscore, and can't 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 organization. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The combined language and locale ISO code, which controls the language for the marketing hierarchy group node definition. Possible values are: - af—Afrikaans - am—Amharic - ar—Arabic - ar\_AE—Arabic (United Arab Emirates) - ar\_BH—Arabic (Bahrain) - ar\_DZ—Arabic (Algeria) - ar\_EG—Arabic (Egypt) - ar\_IQ—Arabic (Iraq) - ar\_JO—Arabic (Jordan) - ar\_KW—Arabic (Kuwait) - ar\_LB—Arabic (Lebanon) - ar\_LY—Arabic (Libya) - ar\_MA—Arabic (Morocco) - ar\_OM—Arabic (Oman) - ar\_QA—Arabic (Qatar) - ar\_SA—Arabic (Saudi Arabia) - ar\_SD—Arabic (Sudan) - ar\_SY—Arabic (Syria) - ar\_TN—Arabic (Tunisia) - ar\_YE—Arabic (Yemen) - bg—Bulgarian - bn—Bengali - bs—Bosnian - ca—Catalan - cac—Chuj - cak—Kaqchikel - cs—Czech - cy—Welsh - da—Danish - de—German - de\_AT—German (Austria) - de\_BE—German (Belgium) - de\_CH—German (Switzerland) - de\_LI—German (Liechtenstein) - de\_LU—German (Luxembourg) - el—Greek - el\_CY—Greek (Cyprus) - en\_AD—English (Andorra) - en\_AE—English (United Arab Emirates) - en\_AG—English (Antigua and Barbuda) - en\_AL—English (Albania) - en\_AT—English (Austria) - en\_AU—English (Australian) - en\_BA—English (Bosnia and Herzegovina) - en\_BB—English (Barbados) - en\_BE—English (Belgium) - en\_BG—English (Bulgaria) - en\_BS—English (Bahamas) - en\_BZ—English (Belize) - en\_CA—English (Canadian) - en\_CH—English (Switzerland) - en\_CY—English (Cyprus) - en\_CZ—English (Czechia) - en\_DE—English (Germany) - en\_DK—English (Denmark) - en\_DM—English (Dominica) - en\_EE—English (Estonia) - en\_ES—English (Spain) - en\_FI—English (Finland) - en\_FR—English (France) - en\_GB—English (UK) - en\_GD—English (Grenada) - en\_GI—English (Gibraltar) - en\_GR—English (Greece) - en\_GY—English (Guyana) - en\_HK—English (Hong Kong) - en\_HR—English (Croatia) - en\_HU—English (Hungary) - en\_IE—English (Ireland) - en\_IL—English (Israel) - en\_IN—English (Indian) - en\_IS—English (Iceland) - en\_IT—English (Italy) - en\_JM—English (Jamaica) - en\_JP—English (Japan) - en\_KN—English (St. Kitts and Nevis) - en\_KR—English (South Korea) - en\_LC—English (St. Lucia) - en\_LI—English (Liechtenstein) - en\_LT—English (Lithuania) - en\_LU—English (Luxembourg) - en\_LV—English (Latvia) - en\_MC—English (Monaco) - en\_ME—English (Montenegro) - en\_MK—English (North Macedonia) - en\_MT—English (Malta) - en\_MU—English (Mauritius) - en\_MY—English (Malaysian) - en\_NL—English (Netherlands) - en\_NO—English (Norway) - en\_NZ—English (New Zealand) - en\_PH—English (Phillipines) - en\_PL—English (Poland) - en\_PT—English (Portugal) - en\_RO—English (Romania) - en\_RS—English (Serbia) - en\_SE—English (Sweden) - en\_SG—English (Singapore) - en\_SI—English (Slovenia) - en\_SK—English (Slovakia) - en\_TH—English (Thailand) - en\_TR—English (Turkey) - en\_TT—English (Trinidad and Tobago) - en\_TW—English (Taiwan) - en\_US—English - en\_VC—English (St. Vincent and the Grenadines) - en\_ZA—English (South Africa) - eo—Esperanto (Pseudo) - eo\_US—Esperanto UniqueId (Pseudo) - es—Spanish - es\_AD—Spanish (Andorra) - es\_AR—Spanish (Argentina) - es\_BO—Spanish (Bolivia) - es\_CL—Spanish (Chile) - es\_CO—Spanish (Colombia) - es\_CR—Spanish (Costa Rica) - es\_DO—Spanish (Dominican Republic) - es\_EC—Spanish (Ecuador) - es\_GT—Spanish (Guatemala) - es\_HN—Spanish (Honduras) - es\_MX—Spanish (Mexico) - es\_NI—Spanish (Nicaragua) - es\_PA—Spanish (Panama) - es\_PE—Spanish (Peru) - es\_PR—Spanish (Puerto Rico) - es\_PY—Spanish (Paraguay) - es\_SV—Spanish (El Salvador) - es\_US—Spanish (United States) - es\_UY—Spanish (Uruguay) - es\_VE—Spanish (Venezuela) - et—Estonian - eu—Basque - fa—Farsi - fi—Finnish - fr—French - fr\_BE—French (Belgium) - fr\_CA—French (Canadian) - fr\_CH—French (Switzerland) - fr\_HT—French (Haiti) - fr\_LU—French (Luxembourg) - fr\_MA—French (Morocco) - ga—Irish - gu—Gujarati - haw—Hawaiian - hi—Hindi - hmn—Hmong - hr—Croatian - ht—Haitian Creole - hu—Hungarian - hy—Armenian - in—Indonesian - is—Icelandic - it—Italian - it\_CH—Italian (Switzerland) - iw—Hebrew - iw\_EO—Esperanto RTL (Pseudo) - ja—Japanese - ji—Yiddish - ka—Georgian - kk—Kazakh - kl—Greenlandic - km—Khmer - kn—Kannada - ko—Korean - lb—Luxembourgish - lt—Lithuanian - lv—Latvian - mi—Te reo - mk—Macedonian - ml—Malayalam - mr—Marathi - ms—Malay - mt—Maltese - my—Burmese - nl\_BE—Dutch (Belgium) - nl\_NL—Dutch - nl\_SR—Dutch (Suriname) - no—Norwegian - pa—Punjabi - pl—Polish - pt\_AO—Portuguese (Angola) - pt\_BR—Portuguese (Brazil) - pt\_PT—Portuguese (European) - quc—Kiche - rm—Romansh - ro—Romanian - ro\_MD—Romanian (Moldova) - ru—Russian - ru\_AM—Russian (Armenia) - ru\_BY—Russian (Belarus) - ru\_KG—Russian (Kyrgyzstan) - ru\_KZ—Russian (Kazakhstan) - ru\_LT—Russian (Lithuania) - ru\_MD—Russian (Moldova) - ru\_PL—Russian (Poland) - ru\_UA—Russian (Ukraine) - sh—Serbian (Latin) - sh\_ME—Montenegrin - sk—Slovak - sl—Slovene - sm—Samoan - sq—Albanian - sr—Serbian (Cyrillic) - sv—Swedish - sv\_FI—Swedish (Finland) - sw—Swahili - ta—Tamil - te—Telugu - th—Thai - tl—Tagalog - tr—Turkish - uk—Ukrainian - ur—Urdu - vi—Vietnamese - xh—Xhosa - zh\_CN—Chinese (Simplified) - zh\_HK—Chinese (Hong Kong) - zh\_MY—Chinese (Malaysia) - zh\_SG—Chinese (Singapore) - zh\_TW—Chinese (Traditional) - zu—Zulu | | MarketingHierGroupDefId | Type reference Properties Create, Filter, Group, Sort, Update Description The ID of the hierarchy group that this record belongs to. This field is a relationship field. Relationship Name MarketingHierGroupDef Refers To MarketingHierarchyGroupDef | | MarketingHierNodeDefId | Type reference Properties Create, Filter, Group, Sort, Update Description The ID of the hierarchy level that this record belongs to. This field is a relationship field. Relationship Name MarketingHierNodeDef Refers To MarketingHierarchyNodeDef | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description The label for this marketing hierarchy group node definition value. This display value is the internal label that doesn't get translated. | # MarketingHierarchyNodeDef Represents a node in a marketing hierarchy whose depth in the hierarchy is determined by its sequence number. This object is available in API version 68.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules Marketing Planning and Operations must be available to access this object. See [Availability of Marketing Planning and Operations](https://help.salesforce.com/s/articleView?id=mktg.mktg_pln_oper_setup_editions.htm&language=en_US). ## Fields | Field | Details | | --- | --- | | Description | Type textarea Properties Create, Nillable, Update Description The description of the hierarchy level definition. | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description The unique name of the object in the API. The name must be 40 characters or fewer, must begin with a letter, can contain only underscores and alphanumeric characters, can't include spaces, can't end with an underscore, and can't 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 organization. | | IsActive | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether the hierarchy level is active. The default value is false. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The combined language and locale ISO code, which controls the language for the marketing hierarchy node definition. Possible values are: - af—Afrikaans - am—Amharic - ar—Arabic - ar\_AE—Arabic (United Arab Emirates) - ar\_BH—Arabic (Bahrain) - ar\_DZ—Arabic (Algeria) - ar\_EG—Arabic (Egypt) - ar\_IQ—Arabic (Iraq) - ar\_JO—Arabic (Jordan) - ar\_KW—Arabic (Kuwait) - ar\_LB—Arabic (Lebanon) - ar\_LY—Arabic (Libya) - ar\_MA—Arabic (Morocco) - ar\_OM—Arabic (Oman) - ar\_QA—Arabic (Qatar) - ar\_SA—Arabic (Saudi Arabia) - ar\_SD—Arabic (Sudan) - ar\_SY—Arabic (Syria) - ar\_TN—Arabic (Tunisia) - ar\_YE—Arabic (Yemen) - bg—Bulgarian - bn—Bengali - bs—Bosnian - ca—Catalan - cac—Chuj - cak—Kaqchikel - cs—Czech - cy—Welsh - da—Danish - de—German - de\_AT—German (Austria) - de\_BE—German (Belgium) - de\_CH—German (Switzerland) - de\_LI—German (Liechtenstein) - de\_LU—German (Luxembourg) - el—Greek - el\_CY—Greek (Cyprus) - en\_AD—English (Andorra) - en\_AE—English (United Arab Emirates) - en\_AG—English (Antigua and Barbuda) - en\_AL—English (Albania) - en\_AT—English (Austria) - en\_AU—English (Australian) - en\_BA—English (Bosnia and Herzegovina) - en\_BB—English (Barbados) - en\_BE—English (Belgium) - en\_BG—English (Bulgaria) - en\_BS—English (Bahamas) - en\_BZ—English (Belize) - en\_CA—English (Canadian) - en\_CH—English (Switzerland) - en\_CY—English (Cyprus) - en\_CZ—English (Czechia) - en\_DE—English (Germany) - en\_DK—English (Denmark) - en\_DM—English (Dominica) - en\_EE—English (Estonia) - en\_ES—English (Spain) - en\_FI—English (Finland) - en\_FR—English (France) - en\_GB—English (UK) - en\_GD—English (Grenada) - en\_GI—English (Gibraltar) - en\_GR—English (Greece) - en\_GY—English (Guyana) - en\_HK—English (Hong Kong) - en\_HR—English (Croatia) - en\_HU—English (Hungary) - en\_IE—English (Ireland) - en\_IL—English (Israel) - en\_IN—English (Indian) - en\_IS—English (Iceland) - en\_IT—English (Italy) - en\_JM—English (Jamaica) - en\_JP—English (Japan) - en\_KN—English (St. Kitts and Nevis) - en\_KR—English (South Korea) - en\_LC—English (St. Lucia) - en\_LI—English (Liechtenstein) - en\_LT—English (Lithuania) - en\_LU—English (Luxembourg) - en\_LV—English (Latvia) - en\_MC—English (Monaco) - en\_ME—English (Montenegro) - en\_MK—English (North Macedonia) - en\_MT—English (Malta) - en\_MU—English (Mauritius) - en\_MY—English (Malaysian) - en\_NL—English (Netherlands) - en\_NO—English (Norway) - en\_NZ—English (New Zealand) - en\_PH—English (Phillipines) - en\_PL—English (Poland) - en\_PT—English (Portugal) - en\_RO—English (Romania) - en\_RS—English (Serbia) - en\_SE—English (Sweden) - en\_SG—English (Singapore) - en\_SI—English (Slovenia) - en\_SK—English (Slovakia) - en\_TH—English (Thailand) - en\_TR—English (Turkey) - en\_TT—English (Trinidad and Tobago) - en\_TW—English (Taiwan) - en\_US—English - en\_VC—English (St. Vincent and the Grenadines) - en\_ZA—English (South Africa) - eo—Esperanto (Pseudo) - eo\_US—Esperanto UniqueId (Pseudo) - es—Spanish - es\_AD—Spanish (Andorra) - es\_AR—Spanish (Argentina) - es\_BO—Spanish (Bolivia) - es\_CL—Spanish (Chile) - es\_CO—Spanish (Colombia) - es\_CR—Spanish (Costa Rica) - es\_DO—Spanish (Dominican Republic) - es\_EC—Spanish (Ecuador) - es\_GT—Spanish (Guatemala) - es\_HN—Spanish (Honduras) - es\_MX—Spanish (Mexico) - es\_NI—Spanish (Nicaragua) - es\_PA—Spanish (Panama) - es\_PE—Spanish (Peru) - es\_PR—Spanish (Puerto Rico) - es\_PY—Spanish (Paraguay) - es\_SV—Spanish (El Salvador) - es\_US—Spanish (United States) - es\_UY—Spanish (Uruguay) - es\_VE—Spanish (Venezuela) - et—Estonian - eu—Basque - fa—Farsi - fi—Finnish - fr—French - fr\_BE—French (Belgium) - fr\_CA—French (Canadian) - fr\_CH—French (Switzerland) - fr\_HT—French (Haiti) - fr\_LU—French (Luxembourg) - fr\_MA—French (Morocco) - ga—Irish - gu—Gujarati - haw—Hawaiian - hi—Hindi - hmn—Hmong - hr—Croatian - ht—Haitian Creole - hu—Hungarian - hy—Armenian - in—Indonesian - is—Icelandic - it—Italian - it\_CH—Italian (Switzerland) - iw—Hebrew - iw\_EO—Esperanto RTL (Pseudo) - ja—Japanese - ji—Yiddish - ka—Georgian - kk—Kazakh - kl—Greenlandic - km—Khmer - kn—Kannada - ko—Korean - lb—Luxembourgish - lt—Lithuanian - lv—Latvian - mi—Te reo - mk—Macedonian - ml—Malayalam - mr—Marathi - ms—Malay - mt—Maltese - my—Burmese - nl\_BE—Dutch (Belgium) - nl\_NL—Dutch - nl\_SR—Dutch (Suriname) - no—Norwegian - pa—Punjabi - pl—Polish - pt\_AO—Portuguese (Angola) - pt\_BR—Portuguese (Brazil) - pt\_PT—Portuguese (European) - quc—Kiche - rm—Romansh - ro—Romanian - ro\_MD—Romanian (Moldova) - ru—Russian - ru\_AM—Russian (Armenia) - ru\_BY—Russian (Belarus) - ru\_KG—Russian (Kyrgyzstan) - ru\_KZ—Russian (Kazakhstan) - ru\_LT—Russian (Lithuania) - ru\_MD—Russian (Moldova) - ru\_PL—Russian (Poland) - ru\_UA—Russian (Ukraine) - sh—Serbian (Latin) - sh\_ME—Montenegrin - sk—Slovak - sl—Slovene - sm—Samoan - sq—Albanian - sr—Serbian (Cyrillic) - sv—Swedish - sv\_FI—Swedish (Finland) - sw—Swahili - ta—Tamil - te—Telugu - th—Thai - tl—Tagalog - tr—Turkish - uk—Ukrainian - ur—Urdu - vi—Vietnamese - xh—Xhosa - zh\_CN—Chinese (Simplified) - zh\_HK—Chinese (Hong Kong) - zh\_MY—Chinese (Malaysia) - zh\_SG—Chinese (Singapore) - zh\_TW—Chinese (Traditional) - zu—Zulu | | ManageableState | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package. Possible values are: - beta—Managed-Beta - deleted—Managed-Proposed-Deleted - deprecated—Managed-Proposed-Deprecated - deprecatedEditable—SecondGen-Installed-Deprecated - installed—Managed-Installed - installedEditable—SecondGen-Installed-Editable - released—Managed-Released - unmanaged—Unmanaged | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description The label for this marketing hierarchy node definition value. This display value is the internal label that doesn't get translated. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The namespace prefix that is 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 Developer Edition orgs, NamespacePrefix is set to the namespace prefix of the org for all objects that support it, unless 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 orgs that are not Developer Edition orgs, NamespacePrefix is set only for objects that are part of an installed managed package. All other objects have no namespace prefix. | | Sequence | Type double Properties Create, Filter, Sort, Update Description The sequence number that defines the depth of this level in the hierarchy. Must be greater than 0. | # MatchingRule Setup object specifying a MatchingRule to use with DuplicateJob instances that share a DuplicateJobDefinition. Available in Tooling API version 42.0 and later. ## Supported SOAP Calls query(), retrieve() ## Supported REST HTTP Methods GET and POST ## Fields | Field | Details | | --- | --- | | BooleanFilter | Type string Properties Filter, Group, Nillable, Sort Description Boolean logic between conditions for the MatchingRule. | | Description | Type textarea Properties Filter, Group, Nillable, Sort Description The description of the MatchingRule. | | DeveloperName | Type string Properties Filter, Group, Sort Description The developer name for the MatchingRule. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | Language | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The language in the user’s personal settings. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description The label of the MatchingRule. | | MatchEngine | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description This field can contain one value: the match engine used by the matching rule. Valid values are ExactMatchEngine and FuzzyMatchEngine. Default value is ExactMatchEngine. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The namespace prefix associated with this object. | | RuleStatus | Type picklist Properties Defaulted on create, Filter, Group, Restricted picklist, Sort Description The status of the MatchingRule. Valid values are Active or Inactive. | | SobjectSubtype | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The object subtype. Valid values are Person Account or None. | | SobjectType | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The object type:Account, Contact, or Lead. | # MenuItem Represents a menu item. This object is available in API version 32.0 and later. ## Supported SOAP Calls query(), update() ## Supported REST HTTP Methods GET, POST ## Fields | Field | Details | | --- | --- | | Active | Type boolean Properties Defaulted on create, Filter, Group, Sort, Update Description Indicates whether the item in the menu is active (true) or not (false). | | AppId | Type string Properties Filter, Group, Sort Description The ID of the app that this menu item is associated with. Can be an enum (such as Feed or People) or an alphanumeric ID. Use AppId as the unique ID for the menu item, not Id. | | Color | Type string Properties Filter, Group, Nillable, Sort Description The color of the menu item that appears in the user interface. This field is described in Web color RGB format, such as 00FF00. | | IconURL | Type url Properties Filter, Group, Nillable, Sort Description The URL of an icon in the menu item. | | Label | Type string Properties Filter, Group, Nillable, Sort Description The menu item label that appears in the user interface. | | MenuType | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The type of menu that this menu item belongs to. Valid values are: - AppSwitcher: the app menu, a drop-down menu that’s displayed at the top of every app page - Salesforce1: the Salesforce mobile app navigation menu - NetworkTabs: the Digital Experiences tab set This field is required for query(). | | SortOrder | Type int Properties Filter, Group, Nillable, Sort, Update Description The SortOrder value determines the order in which a menu item is displayed in the user interface. This field must be an ordinal number greater than 0, and must be unique in the list. Inactive menu items have a value of -1. | | Theme | Type string Properties Filter, Group, Nillable, Sort Description The associated theme, which must be one of the following values. - theme2: the Salesforce theme that was used prior to Spring ’10 - theme3: the Salesforce theme that was introduced in Spring ’10 - theme4: the theme that was introduced in Winter ’14 for the mobile touchscreen version of Salesforce - custom: the theme that’s associated with a custom icon This field is required for query() for Color and IconURL. | ## Usage MenuItem can be queried and manipulated to change how menu items appear in Salesforce. The following example modifies the Salesforce mobile app navigation menu. String query = "SELECT AppId, Label, Active, SortOrder FROM MenuItem " + "WHERE MenuType = 'Salesforce'"; SObject\[\] records = sforce.query(query).getRecords(); //Activate all menu items for (int i = 0; i < records.length; i++) { MenuItem item = (MenuItem)records\[i\]; item.setOrder(i + 1); item.setActive(true); } sforce.update(records); # MetadataComponentDependency (Beta) Represents dependency relationships between the metadata components in your org. You can query MetadataComponentDependency using Tooling API in API version 43.0 and later or using Bulk API 2.0 in API 49.0 and later. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note As a Beta feature, MetadataComponentDependency (Dependency API) is a preview and isn’t part of the “Services” under your Main Services Agreement with Salesforce. Use this feature at your sole discretion, and make your purchase decisions based on the generally available products and features. Salesforce doesn’t guarantee general availability of this feature within any particular time frame or at all, and we can discontinue it at any time. This feature is for evaluation purposes only, not for production use. It’s offered as is and isn’t supported. Salesforce has no liability for any harm or damage arising out of the use of this feature. All restrictions, Salesforce reservation of rights, obligations concerning the Services, and terms for related Non-Salesforce Applications and Content apply equally to your use of this feature. You can provide feedback and suggestions in the [Dependency API/Field Usage (Beta)](https://success.salesforce.com/_ui/core/chatter/groups/GroupProfilePage?g=0F93A00000020Vu "HTML (New Window)") Trailblazer Community group page. ## Supported SOAP Calls query() ## Supported REST HTTP Methods Tooling API—GET Bulk API 2.0—POST, GET, PATCH, DELETE ## Limitations Tooling API - No more than 2000 records in a single query. - Reports are not included in MetadataComponentDependency queries. Use Bulk API 2.0 for dependency relationships that include reports. Bulk API 2.0 - No more than 100,000 records in a single query. The following SOQL queries are not supported in both Tooling API and Bulk API 2.0 - SOQL ORDER BY clause - SOQL SELECT clause: count() function - SOQL queryMore() - SOQL WHERE clause: any type of filter with MetadataComponentName - SOQL WHERE clause: any type of filter with RefMetadataComponentName - SOQL WHERE clause: contains operators _other_ than \=, !=, AND, or OR - SOQL WHERE clause: filter by (RefMetadataComponentType = ‘StandardEntity’) - SOQL WHERE clause: use of the LIKE operator with either the MetadataComponentType field or the RefMetadataComponentType field - SOQL OFFSET clause [SOQL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_soql_limits.htm "Some Tooling API objects have SOQL limitations. These limitations apply to any Metadata Catalog query, which applies to all Custom Metadata Types and Metadata Catalog entities, not only the ones explicitly listed.") [SOSL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_sosl_limits.htm "Two Tooling API objects, EntityDefinition and FieldDefinition, have some SOSL limitations. ExternalString and MetadataComponentDependency (Beta) don’t support SOSL searches.") ## Fields | Field | Details | | --- | --- | | MetadataComponentId | Type string Properties Filter, Group, Nillable, Sort Description The ID of a metadata component that depends on another component. The component with the ID listed in the output as MetadataComponentId has a reference to the component with its ID listed as RefMetadataComponentId. MetadataComponentId is a string field that usually contains either an 18-character ID or a standard object name. Use 18-character IDs, not 15-character IDs, in your queries of this field. | | MetadataComponentName | Type string Properties Filter, Group, Nillable, Sort Description The name of a metadata component that depends on another component. For example, YourClass for an Apex class or yourField (without the \_\_c suffix) for a custom field. The component with the name listed in the output as MetadataComponentName has a reference to the component with its name listed as RefMetadataComponentName. | | MetadataComponentNamespace | Type string Properties Filter, Group, Nillable, Sort Description The namespace of a metadata component that depends on another component. The component with the namespace listed in the output as MetadataComponentNamespace has a reference to the component with its namespace listed as RefMetadataComponentNamespace. | | MetadataComponentType | Type string Properties Filter, Group, Nillable, Sort Description The type of a metadata component that depends on another component. The component with the type listed in the output as MetadataComponentType has a reference to the component with its type listed as RefMetadataComponentType. | | RefMetadataComponentId | Type string Properties Filter, Group, Nillable, Sort Description The ID of a metadata component that another component depends on. The component with the ID listed in the output as RefMetadataComponentId is referenced by the component with its ID listed as MetadataComponentId. RefMetadataComponentId is a string field that usually contains either an 18-character ID or a standard object name. Use 18-character IDs, not 15-character IDs, in your queries of this field. | | RefMetadataComponentName | Type string Properties Filter, Group, Nillable, Sort Description The name of a metadata component that another component depends on. For example, YourClass for an Apex class or yourField (without the \_\_c suffix) for a custom field. The component with the name listed in the output as RefMetadataComponentName is referenced by the component with its name listed as MetadataComponentName. | | RefMetadataComponentNamespace | Type string Properties Filter, Group, Nillable, Sort Description The namespace of a metadata component that another component depends on. The component with the namespace listed in the output as RefMetadataComponentNamespace is referenced by the component with its namespace listed as MetadataComponentNamespace. | | RefMetadataComponentType | Type string Properties Filter, Group, Nillable, Sort Description The type of a metadata component that another component depends on. The component with the type listed in the output as RefMetadataComponentType is referenced by the component with its type listed as MetadataComponentType. | - **[Tooling API Usage](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_metadatacomponentdependency_tooling_usage.htm)** Use SOQL queries to list the relationships between the metadata components in your org. The query results include one row for each relationship. Each relationship is a directional dependency between two metadata components. - **[Bulk API 2.0 Usage](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_metadatacomponentdependency_bulk2_usage.htm)** Using Bulk API 2.0, you can query the MetadataComponentDependency Tooling API object and retrieve up to 100,000 records in a single query. Use SOQL queries to list the relationships between the metadata components in your org. # MetadataContainer Manages working copies of ApexClassMember, ApexTriggerMember, ApexPageMember, and ApexComponentMember objects, including collections of objects to be deployed together. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API HTTP Methods Query, GET, POST, PATCH, DELETE ## Special Access Rules As of the Spring '20 release, to access MetadataContainer you must have the View All Data user permission and either the Author Apex user permission or the Customize Application user permission. ## Fields | Field Name | Details | | --- | --- | | Name | Type string Properties Create, Filter, Group, Sort, Update Description The name of the MetadataContainer. If a container with the same name already exists, an error is reported on create() or POST. This field is required. | ## Usage Use a MetadataContainer as a package for your tool’s workspace. As a user works in the tool, update the [ApexClassMember](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexclassmember.htm "Represents the working copy of an Apex class for editing, saving, or compiling in a MetadataContainer."), [ApexTriggerMember](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apextriggermember.htm "Represents the working copy of an Apex trigger for editing, saving, or compiling in a MetadataContainer."), [ApexPageMember](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexpagemember.htm "Represents the working copy of a Visualforce page for editing, saving, or compiling in a MetadataContainer."), and [ApexComponentMember](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexcomponentmember.htm "Represents the working copy of a Visualforce component for editing, saving, or compiling in a MetadataContainer.") objects in the MetadataContainer and use a [ContainerAsyncRequest](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_containerasyncrequest.htm "Allows you to compile and asynchronously deploy a MetadataContainer object to your organization.") object to save and deploy changes to the current organization. A MetadataContainer can be reused, but container members can’t. - When a ContainerAsyncRequest completes successfully, the MetadataContainerId field on all container members is changed from the ID of the MetadataContainer to the ID of the ContainerAsyncRequest. At this point, container members can no longer be modified or deployed, and can’t be queried via the MetadataContainer; you have to query the ContainerAsyncRequest to see what was deployed. - If the deployment fails, container members remain on the MetadataContainer and can still be modified until they are successfully deployed on another ContainerAsyncRequest. The MetadataContainerId field on the completed (failed deployment) ContainerAsyncRequest is set to the ID of the MetadataContainer, so you can have multiple completed ContainerAsyncRequests on a single MetadataContainer. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Deleting a MetadataContainer deletes all objects that reference it. #### See Also - [Metadata API Developer Guide](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/ "Metadata API Developer Guide - HTML (New Window)") # MetadataPackage Represents a package that has been developed in the org you’re logged in to. Applies to unlocked, unmanaged, first-generation, and second-generation managed packages. Available in Tooling API version 38.0 and later. ## Supported SOAP Calls query(), retrieve() ## Supported REST HTTP Methods GET ## Fields | Field | Details | | --- | --- | | Name | Type string Properties Filter, Group, idLookup, Sort Description The name of the package. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description For first-generation and second-generation managed packages, and unlocked packages with namespaces, this field is the namespace prefix assigned to the package. For unmanaged packages, or no-namespace unlocked packages, this field is blank. | | PackageCategory | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The type of package. Valid values are: - Application (internal use only) - Module (internal use only) - Package—Represents either an unmanaged package or a first-generation managed package. - Package2—Represents either an unlocked package or a second-generation managed package. The default value is Package. This field is available in API version 49.0 and later. | # MetadataPackageVersion Represents a package version (managed or unmanaged) that has been uploaded from the org you’re logged in to. Available in Tooling API version 38.0 and later. ## Supported SOAP Calls describeSObjects(), query(), retrieve() ## Supported REST HTTP Methods GET ## Fields | Field | Details | | --- | --- | | BuildNumber | Type int Properties Filter, Group, Nillable, Sort Description The build number of the version. For example, if you upload two beta versions, they have build numbers 1 and 2. Then, when you upload a released build of the same version, the build number is 3. When you upload a new version, the build number resets to 1. | | IsDeprecated | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether the package version is deprecated. Available in API version 46.0 and later. | | MajorVersion | Type int Properties Filter, Group, Nillable, Sort Description The first number in a package version number. A version number either has an x.y format or an x.y.z format. The x represents the major version, y the minor version, and z the patch version. | | MetadataPackageId | Type reference Properties Filter, Group, Nillable, Sort Description The 18-character package ID, which starts with 033. | | MinorVersion | Type int Properties Filter, Group, Nillable, Sort Description The second number in a package version number. A version number either has an x.y format or an x.y.z format. The x represents the major version, y the minor version, and z the patch version. | | Name | Type string Properties Filter, Group, idLookup, Sort Description The name of the package version. | | PatchVersion | Type int Properties Filter, Group, Nillable, Sort Description The third number in a package version number, if present. A version number either has an x.y format or an x.y.z format. The x represents the major version, y the minor version, and z the patch version. | | ReleaseState | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description If the package version is a beta version, the value is Beta. Otherwise, the value is Released. | ## Usage Here are examples of the types of API queries you can perform. | Query | String | | --- | --- | | Get all package versions for the package that has a MetadataPackageID of 033D00000001xQlIAI | SELECT Id, Name, ReleaseState, MajorVersion, MinorVersion, PatchVersion FROM MetadataPackageVersion WHERE MetadataPackageId = '033D00000001xQlIAI' | | Get the package version for the package with a specific MetadataPackageID and a major version greater than 1 | SELECT Id FROM MetadataPackageVersion WHERE MetadataPackageId ='033D00000001xQlIAI' AND MajorVersion > 1 | | Get released package versions for the package with a specific MetadataPackageID | SELECT Id FROM MetadataPackageVersion WHERE MetadataPackageId = '033D00000001xQlIAI' AND ReleaseState = 'Released' | **Java Code Sample** Suppose you want to push version 3.4.6 of your package to all orgs. Let’s write some code to identify the orgs eligible for the upgrade. This example demonstrates how to generate the list of subscriber orgs eligible to be upgraded to version 3.4.6 of a package. This code sample uses the web Services Connector (WSC). // Finds all Active subscriber orgs that have the package installed String PACKAGE\_SUBSCRIBER\_ORG\_KEY\_QUERY = "Select OrgKey from PackageSubscribers where OrgStatus = 'Active' and InstalledStatus = 'I'"; // Finds all MetadataPackageVersions lower than the version given, including the list // of subscribers for each version String METADATA\_PACKAGE\_VERSION\_QUERY = "Select Id, Name, ReleaseState, (%s) from" + " MetadataPackageVersion where MetadataPackageId = '%s' AND ReleaseState = 'Released'" + " AND (MajorVersion < 3 OR (MajorVersion = 3 and MinorVersion < 4)" + " OR (MajorVersion = 3 and MinorVersion = 4 and PatchVersion < 6))"; // conn is an EnterpriseConnection instance initialized with a ConnectionConfig object // representing a connection to the developer org of the package QueryResult results = conn.query(String.format(METADATA\_PACKAGE\_VERSION\_QUERY, PACKAGE\_SUBSCRIBER\_ORG\_KEY\_QUERY)); // This list will hold all of the PackageSubscriber objects that are eligible for upgrade // to the given version List subscribers = new ArrayList<>(); for (SObject mpvso : results.getRecords()) { // Cast the sObject to a MetadataPackageVersion MetadataPackageVersion mpv = (MetadataPackageVersion) mpvso; // Add subscribers to our list if (mpv.getPackageSubscribers() != null) { for (SObject psso : mpv.getPackageSubscribers().getRecords()) { subscribers.add((PackageSubscriber) psso); } } } **Next Step** Create a push request using PackagePushRequest. # MetadataWarningsHeader Allows you to save metadata even if warnings are returned. ## Version This header is available in API version 35.0 and later. ## Supported Calls delete(), update(), upsert() ## ignoreSaveWarnings - **Type**: boolean - **Description**: If true, you can save metadata such as a flow even if there are warnings, but not if there are errors. See also [Allow Metadata Save Operations to Complete with Returned Warnings](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_metadata_save_warning.htm "When a metadata save operation generates warnings, the default behavior of Tooling API is to fail the operation without returning the warnings. For objects in both the Tooling API and Metadata API WSDLs, you can indicate that you want error-free save operations to complete successfully, returning any warnings.") # MktHierGrpNodeRuleDef Represents a rule for a node in a marketing hierarchy group. Based on the rule type, the rule defines the allowed parent node or the user, group, or profile that can create marketing programs. This object is available in API version 68.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules Marketing Planning and Operations must be available to access this object. See [Availability of Marketing Planning and Operations](https://help.salesforce.com/s/articleView?id=mktg.mktg_pln_oper_setup_editions.htm&language=en_US). ## Fields | Field | Details | | --- | --- | | AppliesToId | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description The ID of the user, group, or profile that the rule grants access to create marketing programs and their related records for the related marketing hierarchy group node. This field applies when RuleType is CreatePrograms. This field is a polymorphic relationship field. Relationship Name AppliesTo Refers To Group, Profile, User | | AppliesToType | Type picklist Properties Create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description Specifies whether the create-programs rule applies to a user, group, or profile. This field applies when RuleType is CreatePrograms. Possible values are: - Group - Profile - User | | EligibleParentHierGrpNdId | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description The ID of the group node that is allowed as the parent. This field applies when RuleType is AllowedParent. This field is a relationship field. Relationship Name EligibleParentHierGrpNd Refers To MarketingHierarchyGroupNodeDef | | IsActive | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether this rule is active. Inactive rules are ignored by validation. The default value is false. | | RelatedHierGroupNodeId | Type reference Properties Create, Filter, Group, Sort Description The ID of the marketing hierarchy group node that this rule applies to. This field is a relationship field. Relationship Name RelatedHierGroupNode Relationship Type Master-detail Refers To MarketingHierarchyGroupNodeDef (the master object) | | RuleType | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description Specifies the type of rule. Possible values are: - AllowedParent—The rule declares which group node is allowed as the parent of the related node. - CreatePrograms—The rule declares which user, group, or profile can create marketing programs and their related records for the related node. | | ValidationErrorMessage | Type textarea Properties Create, Nillable, Update Description The custom error message shown to the user when this rule is violated. | # MLDataDefinition Represents a modeling data definition, which specifies the data used to create a model for a machine learning (ML) application. Examples of such data can include filters, fields to include, and fields to exclude. Available from API version 50.0 or later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string 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 organization. Label is **Record Type Name**. This field is automatically generated, but you can supply your own value if you create the record using the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance may slow as a DeveloperName is generated for each record. | | EntityDeveloperName | Type string Properties Filter, Group, Nillable, Sort Description The developer name of the object from which the model data is retrieved. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note After the MLDataDefinition entity is created, EntityDeveloperName can’t be updated. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated MLDataDefinition type in Metadata API. The full name can include a namespace prefix. 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. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the MLDataDefinition. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Nillable, Sort Description Label that identifies the MLDataDefinition throughout the Salesforce user interface. | | Metadata | Type [MLDataDefinition](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_mldatadefinition.htm) Properties Create, Nillable, Update Description The metadata of MLDataDefinition. 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 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 the following values: - In Developer Edition organizations, the namespace prefix is set to the namespace prefix of the organization for all objects that support it. There is 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 are not Developer Edition organizations, NamespacePrefix is only set for objects that are part of an installed managed package. There is no namespace prefix for all other objects. | | ParentDefinitionId | Type reference Properties Filter, Group, Nillable, Sort Description The ID of the MLrecommendationDefinition or MLPredictionDefinition that this MLDatadefinition belongs to. This is a polymorphic relationship field. Relationship Name ParentDefinition Relationship Type Lookup Refers To MLPredictionDefinition, MLRecommendationDefinition | | ScoringFilterId | Type reference Properties Filter, Group, Nillable, Sort Description Specifies the record ID to which the prediction scores are written. This is a relationship field. Relationship Name ScoringFilter Relationship Type Lookup Refers To MLFilter | | SegmentFilterId | Type reference Properties Filter, Group, Nillable, Sort Description Specifies the record IDs of the data used for training and scoring. This is a relationship field. Relationship Name SegmentFilter Relationship Type Lookup Refers To MLFilter | | TrainingFilterId | Type reference Properties Filter, Group, Nillable, Sort Description Specifies the record IDs that make up the training set. This is a relationship field. Relationship Name TrainingFilter Relationship Type Lookup Refers To MLFilter | | Type | Type picklist Properties Filter, Group, Restricted picklist, Nillable, Sort Description Specifies the data type. Valid values are: - Candidate - Interaction - Prediction - Recipient ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note After the model is created, type can’t be updated.. | # MLField Represents a field in a modeling data definition. A modeling data definition specifies the data used to create a model for a machine learning (ML) application. Available from API version 50.0 or later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | Entity | Type picklist Properties Create, Filter, Group, Restricted picklist, Nillable, Sort, Update Description The object that contains the MLField. Valid values include all Salesforce objects except the Internal, Interface, Virtual, and InDevelopment custom objects. | | Field | Type picklist Properties Create, Filter, Group, Restricted picklist, Nillable, Sort, Update Description The name of the MLField. Valid values include all Salesforce objects except the Internal, Interface, Virtual, and InDevelopment custom objects. | | ParentDefinitionId | Type reference Properties Filter, Group, Nillable, Sort Description The ID of the MLrecommendationDefinition or MLPredictionDefinition that this MLField belongs to. This is a polymorphic relationship field. Relationship Name ParentDefinition Relationship Type Lookup Refers To MLDataDefinition, MLRecommendationDefinition | | RelatedFieldId | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description Reserved for future use. This is a relationship field. Relationship Name RelatedField Relationship Type Lookup Refers To MLField | | RelationType | Type picklist Properties Create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description Reserved for future use. | | Type | Type picklist Properties Create, Filter, Group, Restricted picklist, Nillable, Sort, Update Description Indicates how the field is used in a prediction. Valid values are: - Excluded - Expression - Included - Join - NegativeExpression - PositiveExpression - Prediction - Pushback - Related - ScoringExpression - SegmentExpression - SourceDate - TrainingExpression | # MLFilter Represents a data filter based on a data comparison in a machine learning (ML) application. For each comparison, there’s a left-hand element, an operator, and a right-hand element. Available in API version 50.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | FilterName | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description Name of the filter. | | LhFilterId | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description ID of the left-hand filter condition. This is a relationship field. Relationship Name LhFilter Relationship Type Lookup Refers To MLFilter | | LhPredictionField | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description Left-hand prediction field. | | LhType | Type picklist Properties Create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description Indicates the value type if a left-hand value is specified. Valid values are: - Boolean - Comparison - Currency - Date - DateTime—Datetime - Number - String - Supplier - Varchar | | LhUnit | Type picklist Properties Create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description Indicates the unit if a left-hand filter is specified. Valid values are: - Days - Hours - Milliseconds - Minutes - Months - Seconds - Weeks - Years | | LhValue | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description The left-hand value. | | Operation | Type picklist Properties Create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description Specifies how to filter the data. Valid values are: - Add - And - Between - Concat - Contains - Divide - DoesNotContain - EndsWith - Equals - GreaterThan - GreaterThanOrEqual - In - IsNotNull - IsNull - LessThan - LessThanOrEqual - Multiply - Not - NotEquals - Or - StartsWith - Subtract | | ParentDefinitionId | Type reference Properties Filter, Group, Nillable, Sort Description The ID of the MLRecommendationDefinition, MLPredictionDefinition, or MLDataDefinition that this MLFilter belongs to. This is a polymorphic relationship field. Relationship Name ParentDefinition Relationship Type Lookup Refers To MLDataDefinition, MLPredictionDefinition, MLRecommendationDefinition | | RhFilterId | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description ID of the right-hand filter condition. This is a relationship field. Relationship Name RhFilter Relationship Type Lookup Refers To MLFilter | | RhPredictionField | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description Right-hand prediction field. | | RhType | Type picklist Properties Create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description Indicates the value type if a right-hand value is specified. Valid values are: - Boolean - Comparison - Currency - Date - DateTime—Datetime - Number - String - Supplier - Varchar | | RhUnit | Type picklist Properties Create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description Indicates the unit if a right-hand filter is specified. Valid values are: - Days - Hours - Milliseconds - Minutes - Months - Seconds - Weeks - Years | | RhValue | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description The right-hand value. | | SortOrder | Type int Properties Create, Filter, Group, Nillable, Sort, Update Description Specifies the order of operations for evaluating the expressions. For example, if you have two conditions, this field specifies which condition is evaluated first. | # MLPredictionDefinition Represents the details about a prediction within a prediction definition used in a machine learning (ML) application. Available in API version 50.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | ApplicationId | Type reference Properties Filter, Group, Nillable, Sort Description The ID of the application associated with the prediction definition. This is a relationship field. Relationship Name Application Relationship Type Lookup Refers To AIApplication | | Description | Type string Properties Filter, Group, Nillable, Sort Description Description of the prediction. | | DeveloperName | Type string 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 organization. Label is **Record Type Name**. This field is automatically generated, but you can supply your own value if you create the record using the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance may slow as a DeveloperName is generated for each record. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated MLPredictionDefinition type in Metadata API. The full name can include a namespace prefix. 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. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the MLPredictionDefinition. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Nillable, Sort Description Label that identifies the MLPredictionDefinition definition throughout the Salesforce user interface. | | Metadata | Type [AIApplication](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_aiapplication.htm) Properties Create, Nillable, Update Description The MLPredictionDefinition’s metadata. 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. | | MLDataDefinitions | Type [QueryResult](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_queryresult.htm#topic-title) Properties Nillable Description A list of prediction definition records associated with an ML application record. | | NamespacePrefix | Type string 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 the following values: - In Developer Edition organizations, the namespace prefix is set to the namespace prefix of the organization for all objects that support it. There is 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 are not Developer Edition organizations, NamespacePrefix is only set for objects that are part of an installed managed package. There is no namespace prefix for all other objects. | | NegativeExpressionId | Type reference Properties Filter, Group, Nillable, Sort Description Reserved for future use. This is a relationship field. Relationship Name NegativeExpression Relationship Type Lookup Refers To MLFilter | | PositiveExpressionId | Type reference Properties Filter, Group, Nillable, Sort Description Reserved for future use. This is a relationship field. Relationship Name PositiveExpression Relationship Type Lookup Refers To MLFilter | | PredictionField | Type string Properties Filter, Group, Nillable, Sort Description Field that the prediction is based on. | | PredictionStrategy | Type string Properties Filter, Group, Nillable, Sort Description Strategy that the prediction is based on. | | Priority | Type int Properties Filter, Group, Nillable, Sort Description Reflects the priority of the MLPredictionDefinition (MLPD) object when an AIApplication has multiple child MLPDs. | | PushbackField | Type string Properties Filter, Group, Nillable, Sort Description Field that the prediction writes scores to. | | Status | Type picklist Properties Filter, Group, Restricted picklist, Nillable, Sort Description The status of the prediction. Valid values are: - Disabled - Draft - Enabled | | Type | Type picklist Properties Filter, Group, Restricted picklist, Nillable, Sort Description The type of model that returns the prediction values. Valid values are: - BinaryClassification—1 - DeepLearningIntentClassification—5 - DeepLearningNameEntityRecognition—6 - GlobalDeepLearningIntentClassification—7 - GlobalDeepLearningNameEntityRecognition—8 - LanguageDetection—4 - MulticlassClassification—2 - Regression—3 - ScoringSpecificOutcome—0 | # ModerationRule Represents a rule used in your Experience Cloud site to moderate member-generated content. Available in Tooling API version 36.0 and later. Moderation rules help protect your site from spammers, bots, and offensive or inappropriate content. Create and modify rules for your Experience Cloud site 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. ## Supported SOAP Calls create(), delete(), query(), retrieve(), update() ## Supported REST HTTP Methods DELETE, GET, PATCH, POST ## Fields | Field | Details | | --- | --- | | Action | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist Description Required. Indicates the moderation action that you want to take. The valid values are: - Block - Review - Replace - Flag - FreezeAndNotify (Reserved for future use.) | | ActionLimit | Type int Properties Filter, Group, Nillable, Sort Description Indicates the moderation action limit measured in minutes. Available in API version 39.0 and later. | | Active | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Required. Indicates whether the moderation rule is active (true) or inactive (false). | | Description | Type textarea Properties Filter, Nillable, Sort Description A description of the moderation rule. | | DeveloperName | Type string Properties Filter, Group, Namefield, Sort Description The developer’s internal name for the moderation rule used in the API. | | FullName | Type string 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. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the moderation rule. Valid values are: - 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 Spanish (Mexico) defaults to Spanish for customer-defined translations. - Swedish: sv - Thai: th The Salesforce user interface is fully translated to Thai, but Help is in English. | | MasterLabel | Type string Properties Filter, Group, Sort Description Label for the moderation rule. | | Metadata | Type mns:ModerationRule Properties Create, Nillable, Update Description Moderation rule metadata. 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. | | NotifyLimit | Type int Properties Filter, Group, Nillable, Sort Description Indicates the notification limit (in seconds) of the moderation rule. Available in API version 39.0 and later. | | TimePeriod | Type RateLimitTimePeriod (enumeration of type string) Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The values that represent the time-frame for which a rate limiting rule is applied. The two values available represent a time periods measured in minutes: “Short” represents 3 minutes and “Medium” represents 15 minutes. Available in API version 39.0 and later. Valid values are: - Short - Medium | | Type | Type ModerationRuleType (enumeration of type string) Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description Type of moderation rule. Content rules protect your site from offensive language and inappropriate content created by spammers or malicious members. Rate rules protect your site against spammers and bots that attack your site by posting the same message multiple times in a row. Available in API version 39.0 and later. Valid values are: - Content - Rate | | UserMessage | Type textarea Properties Filter, Nillable, Sort Description The message you want your 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 site. Review your content and try again.” | # 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 object is available in API version 51.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note All credentials stored within this entity are encrypted under a framework that is consistent with other encryption frameworks on the platform. Salesforce encrypts your credentials by auto-creating org-specific keys. Credentials encrypted for using the previous encryption scheme have been migrated to the new framework. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | AllowMergeFieldsinBody | Field Type boolean Description Specifies whether Apex code can use merge fields to populate the HTTP request body with org data when a callout is made. Corresponds to **Allow Merge Fields in HTTP Body** in the user interface. Defaults to false. | | AllowMergeFieldsinHeader | Field Type boolean Description Specifies whether Apex code can use merge fields to populate the HTTP header with org data when a callout is made. Corresponds to **Allow Merge Fields in HTTP Header** in the user interface. Defaults to false. | | AuthProviderId | Type string Properties Nillable Description The authentication provider that the AuthProviderId component represents. This field is valid only when NamedCredentialType is set to Legacy. **This field is deprecated in API version 56.0.** | | AuthTokenEndpointUrl | Type textarea Properties Nillable Description The URL where JSON Web Tokens (JWTs) are exchanged for access tokens. This field is valid only when NamedCredentialType is set to Legacy. **This field is deprecated in API version 56.0.** | | AwsAccessKey | Type string Properties Filter, Group, Nillable, Sort Description First part of the access key used to sign programmatic requests to Amazon Web Services (AWS). Use when AWS Signature Version 4 is your authentication protocol. This field is valid only when NamedCredentialType is set to Legacy. **This field is deprecated in API version 56.0.** | | AwsAccessSecret | Type textarea Properties Nillable Description The second part of the access key that's used to sign programmatic requests to AWS. Use when AWS Signature Version 4 is your authentication protocol. This field is valid only when NamedCredentialType is set to Legacy. **This field is deprecated in API version 56.0.** | | AwsRegion | Type string Properties Filter, Group, Nillable, Sort Description Specifies which AWS Region the named credential accesses. This field is valid only when NamedCredentialType is set to Legacy. **This field is deprecated in API version 56.0.** | | AwsService | Type string Properties Filter, Group, Nillable, Sort Description Specifies which AWS resource the named credential accesses. This field is valid only when NamedCredentialType is set to Legacy. **This field is deprecated in API version 56.0.** | | CalloutStatus | Field Type CalloutStatus (enumeration of type string) Description Specifies whether the named credential is enabled for callouts. Valid values are: - Disabled: The named credential is disabled for callouts. - Enabled: The named credential is enabled for callouts. This field is available in API version 59.0 and later. | | CertificateId | Type reference Properties Filter, Group, Nillable, Sort Description 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. This field is valid only when NamedCredentialType is set to Legacy. **This field is deprecated in API version 56.0.** Relationship Name Certificate Relationship Type Lookup Refers To Certificate | | DeveloperName | Type string Properties Filter, Group, Sort Description The developer’s internal name for the named credential used 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. This field is automatically generated, but you can supply your own value if you create the record using the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance may slow while Salesforce generates one for each record. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | Endpoint | Type textarea Properties Nillable Description The URL or root URL of the callout endpoint. Corresponds to **URL** in the user interface. This field is valid only when NamedCredentialType is set to Legacy. **This field is deprecated in API version 56.0.** | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated type in Tooling API. The full name can include a namespace prefix. 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. | | GenerateAuthorizationHeader | Field Type boolean Description Specifies whether Salesforce generates an authorization header and applies it to each callout that references the named credential. Corresponds to **Generate Authorization Header** in the user interface. Defaults to true. This field is available in API version 41.0 and later. | | JwtAudience | Type textarea Properties Nillable Description External service or other allowed recipients for the JWT. Written as JSON, with a quoted string for a single audience and an array of quoted strings for multiple audiences. Single audience example: “aud1”. Multiple audiences example: \[“aud1”, “aud2”, “aud3”\]. This field is valid only when NamedCredentialType is set to Legacy. **This field is deprecated in API version 56.0.** | | JwtFormulaSubject | Type string Properties Filter, Group, Nillable, Sort Description Formula string calculating the Subject of the JWT. API names and constant strings, in single quotes, can be included. Allows a dynamic Subject unique per user requesting the token. For example, 'User='+$User.Id. Use this field when principalType is set to PerUser. Corresponds to Per User Subject. This field is valid only when NamedCredentialType is set to Legacy. **This field is deprecated in API version 56.0.** | | JwtIssuer | Type string Properties Filter, Group, Nillable, Sort Description Specify who issued the JWT using a case-sensitive string. This field is valid only when NamedCredentialType is set to Legacy. **This field is deprecated in API version 56.0.** | | JwtSigningCertificateId | Type reference Properties Filter, Group, Nillable, Sort Description Certificate verifying the JWT’s authenticity to external sites. This field is valid only when NamedCredentialType is set to Legacy. **This field is deprecated in API version 56.0.** Relationship Name JwtSigningCertificate Relationship Type Lookup Refers To Certificate | | JwtTextSubject | Type string Properties Filter, Group, Nillable, Sort Description Static text, without quotes, that specifies the JWT Subject. Use this field when principalType is set to NamedUser. Corresponds to Named Principal Subject in the user interface. This field is valid only when NamedCredentialType is set to Legacy. **This field is deprecated in API version 56.0.** | | JwtValidityPeriodSeconds | Type int Properties Filter, Group, Nillable, Sort Description Specify the number of seconds that the token is valid. This field is valid only when NamedCredentialType is set to Legacy. **This field is deprecated in API version 56.0.** | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description Label for the MasterLabel. In the UI, this field is **Label**. | | ManageableState | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package. Possible values are: - beta—Managed-Beta - deleted—Managed-Proposed-Deleted - deprecated—Managed-Proposed-Deprecated - deprecatedEditable—SecondGen-Installed-Deprecated - installed—Managed-Installed - installedEditable—SecondGen-Installed-Editable - released—Managed-Released - unmanaged—Unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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.  The main label for the named credential. This display value is the internal label that doesn’t get translated. | | Metadata | Type [NamedCredential](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_namedcredential.htm) Properties Create, Nillable, Update Description Provides access to the associated metadata type and related fields in Tooling 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. | | NamedCredentialParameters | Type [NamedCredentialParameter\[\]](#subtype_NamedCredentialParameter) Properties Nillable Description Reference to the (one or more) NamedCredentialParameter used to configure a named credential. This field is available in API version 56.0 and later. | | NamedCredentialType | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Specifies the type or behavior of this named credential. Valid values are: - Legacy: The named credential is a legacy type, which means that it doesn’t use the schema introduced in the Winter ‘23 release. Used for backward compatibility. - PrivateEndpoint: The named credential sends traffic through a private connection, bypassing the public internet. If the credential type is PrivateEndpoint, you must specify the value of OutboundNetworkConnection. - SecuredEndpoint: The named credential is extensible and uses external credentials to control authentication and permissions. - Standard: Reserved for internal use. This field is available in API version 56.0 and later. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The namespace prefix that is 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. | | OauthRefreshToken | Type textarea Properties Nillable Description The OAuth refresh token. Used to obtain a new access token for an end user when a token expires. This field is valid only when NamedCredentialType is set to Legacy. **This field is deprecated in API version 56.0.** | | OauthScope | Type string Properties Filter, Nillable, Sort Description Specifies the scope of permissions to request for the access token. Corresponds to **Scope** in the user interface. This field is valid only when NamedCredentialType is set to Legacy. **This field is deprecated in API version 56.0.** | | OauthToken | Type textarea Properties Nillable Description The access token that’s issued by your authorization server. This field is valid only when NamedCredentialType is set to Legacy. **This field is deprecated in API version 56.0.** | | OutboundNetworkConnectionId | Type reference Properties Filter, Group, Nillable, Sort Description Specifies the outbound network connection that uses the named credential to send callouts to AWS. This field is valid only when NamedCredentialType is set to Legacy. **This field is deprecated in API version 56.0.** Relationship Name OutboundNetworkConnection Relationship Type Lookup Refers To OutboundNetworkConnection | | Password | Type textarea Properties Nillable Description 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. This field is valid only when NamedCredentialType is set to Legacy. **This field is deprecated in API version 56.0.** | | PrincipalType | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Determines whether you're using one set or multiple sets of credentials to access the external system. Corresponds to **Identity Type** in the user interface. Valid values are: - Anonymous - NamedUser - PerUser This field is valid only when NamedCredentialType is set to Legacy. **This field is deprecated in API version 56.0.** | | Protocol | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The authentication protocol that’s required to access the external system. Valid values are: - AwsSv4 - Jwt - JwtExchange - NoAuthentication - Oauth - Password For connections to Amazon Web Services using Signature Version 4, use AwsSv4. For connections using a direct token system, select Jwt. If using an intermediary authorization provider to process JWTs and return access tokens, use JwtExchange. For Simple URL data sources, select NoAuthentication. For cloud-based Files Connect external systems, select Oauth. For on-premises systems, select Password. This field is valid only when NamedCredentialType is set to Legacy. **This field is deprecated in API version 56.0.** | | Username | Type string Properties Filter, Group, Nillable, Sort Description 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. This field is valid only when NamedCredentialType is set to Legacy. **This field is deprecated in API version 56.0.** | ## NamedCredentialParameter Represents the parameters that configure a named credential. Named credential parameters are used to configure Named Credential callouts through a combination of the type, name, and value/lookup fields. These parameters are used internally to provide a flexible architecture and are exposed here for packaging reasons. | Field | Description | | --- | --- | | Certificate | Type string Properties Nillable Description If the value of the ParameterType field is ClientCertificate then this field references the certificate. Relationship Name Certificate Relationship Type Lookup Refers To Certificate | | Description | Type string Properties Nillable Description A human-readable description of this named credential parameter. | | ExternalCredential | Type string Properties Nillable Description If the value of the ParameterType field is Authentication, then this field references an external credential that in turn references a set of authenticated user credentials. | | OutboundNetworkConnection | Type string Properties Nillable Description The lookup field for the OutboundNetworkConnection parameter type. Used when namedCredentialType is PrivateEndpoint. | | ParameterSettingsGlobalNamedPrincipalCredential | Field Type boolean Description Reserved for internal use. | | ParameterSettingsManagedFeatureEnabledCallout | Field Type boolean Description Reserved for internal use. | | ParameterSettingsReadOnlyNamedCredential | Field Type boolean Description Reserved for internal use. | | ParameterSettingsSystemUserNamedCredential | Field Type boolean Description Reserved for internal use. | | ParameterName | Type string Properties Nillable Description Required. The name of the named credential parameter. | | ParameterType | Type NamedCredentialParamType (enumeration of type string) Properties Nillable Description Required. The type of the named credential parameter. Valid values are: - AllowedManagedPackageNamespaces: Allows managed packages identified by specified namespaces to use the named credential and make callouts through it. - Authentication: Specifies that this parameter configures authentication using the credentials specified in the external credential, referenced by the ExternalCredential field. - ClientCertificate: Specifies that this parameter configures a client certificate, referenced by the Certificate field. - ConnectionStatus: Reserved for internal use. - CreatedByNamespace: Reserved for internal use. - CustomParameter: Reserved for internal use. - HttpHeader: Allows the user to specify custom headers to be added to the callout at run time. When using HttpHeader, the ParameterName field must be the header name as a string, and ParameterValue must be a formula of a header value that is evaluated at run time. - ManagedByComponent: Reserved for internal use. - ManagedByFeature: Reserved for internal use. - ManagedByNamespace: Specifies the manageability capabilities for a packaged named credential. The ParameterValue field indicates whether the named credential uses subscriber-controlled or developer-controlled manageability. - NamedCredentialOptions: Reserved for internal use. - OutboundNetworkConnection: Specifies a lookup to an outbound network connection. When using this parameter type, the OutboundNetworkConnection field is a string representing the lookup. Used when namedCredentialType is PrivateEndpoint. - SfHttpRequestExtensionName: Reserved for internal use. - StandardNamedCredentialType: Reserved for internal use. - Url: Specifies that this parameter configures the URL of the endpoint. Store the actual URL in the ParameterValue field. | | ParameterValue | Type string Properties Nillable Description If the ParameterType field describes a literal value, such as Url, then the literal value is stored in this field, such as https://iam.amazonaws.com/. | | SequenceNumber | Type int Properties Nillable Description Used to order HttpHeader parameters. | #### See Also - [_Salesforce Help_: Named Credentials](https://help.salesforce.com/HTViewHelpDoc?id=named_credentials_about.htm&language=en_US "Salesforce Help: Named Credentials - HTML (New Window)") - [_Named Credentials Developer Guide_: Get Started with Named Credentials](https://developer.salesforce.com/docs/platform/named-credentials/guide/get-started.html "Named Credentials Developer Guide: Get Started with Named Credentials - HTML (New Window)") - [_Named Credentials Developer Guide_: Named Credential API Links](https://developer.salesforce.com/docs/platform/named-credentials/references/named-credentials-reference/nc-api-links.html "Named Credentials Developer Guide: Named Credential API Links - HTML (New Window)") - [_Apex Developer Guide_: Invoking Callouts Using Apex](https://developer.salesforce.com/docs/atlas.en-us.264.0.apexcode.meta/apexcode/apex_callouts.htm " Apex Developer Guide: Invoking Callouts Using Apex - html (New Window)") - [_Apex Developer Guide_: Named Credentials as Callout Endpoints](https://developer.salesforce.com/docs/atlas.en-us.264.0.apexcode.meta/apexcode/apex_callouts_named_credentials.htm " Apex Developer Guide: Named Credentials as Callout Endpoints - HTML (New Window)") # ObjectHierarchyRelationship Represents the mapping between an input source object and an output target object. For example, mapping details to transform a sales quote into a sales agreement. This object is available in API version 56.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Filter, Group, Sort Description The unique name of the object hierarchy relationship record. 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 organization. Label is **Record Type Name**. This field is automatically generated, but you can supply your own value if you create the record using the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance may slow while Salesforce generates one for each record. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated object hierarchy relationship record 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. | | InputObjRecordsGrpFieldName | Type string Properties Filter, Group, Nillable, Sort Description The field name of the input object that groups records. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the ObjectHierarchyRelationship. | | MappingType | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description Specifies the type of relationship between the source and target object. Possible values are: - ChildToChild—Child to Child - ParentToChild—Parent to Child - ParentToParent—Parent to Parent - Support The default value is ParentToParent. | | MasterLabel | Type string Properties Filter, Group, Sort Description Label for the ObjectHierarchyRelationship record. | | Metadata | Type complexvalue Properties Create, Nillable, Update Description The ObjectHierarchyRelationship’s metadata. 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. | | OutputPntRelationshipFieldName | Type string Properties Filter, Group, Nillable, Sort Description Specifies the relationship between a child and parent for an output object. | | ParentRecordId | Type reference Properties Filter, Group, Nillable, Sort Description The ID of the parent object mapping record. This field is a relationship field. Relationship Name ParentRecord Relationship Type Lookup Refers To ObjectHierarchyRelationship | | ParentRelationshipFieldName | Type string Properties Filter, Group, Nillable, Sort Description The name of the field that defines the relationship between a parent and child. | | SourceReferenceRelaFieldName | Type string Properties Filter, Group, Nillable, Sort Description The field name that defines the relationship between the input and output object. | | UsageType | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Specifies the usage type. Possible values are: - CLMFieldMapping - ConvertToSalesAgreement - EligibleProgramRebateType - MapJournalToMemberAggregate - TransformationMapping | # OmniSupervisorConfig Represents the Omni-Channel supervisor configuration for an assigned group of supervisors. This object is available in API version 57.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules To access this object, [Omni-Channel](https://help.salesforce.com/articleView?id=omnichannel_intro.htm&language=en_US) must be enabled. Access to tooling objects requires Salesforce admin privileges or the Customize Application permission. ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Filter, Group, 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 organization. Label is **Record Type Name**. This field is automatically generated, but you can supply your own value if you create the record using the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance may slow while Salesforce generates one for each record. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated metadata type in Metadata API. The full name can include a namespace prefix. 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. | | IsTimelineHidden | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If set to true, hides the agent timeline from the supervisors assigned to this supervisor configuration. The default value is false. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description Possible values are the languages that Omni-Channel supports. | | MasterLabel | Type string Properties Filter, Group, Sort Description The label of the Omni-Channel supervisor configuration. | | Metadata | Type mns:[OmniSupervisorConfig](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_omnisupervisorconfig.htm) Properties Create, Nillable, Update Description The Omni-Channel supervisor configuration’s metadata. | | SkillVisibility | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Determines which work items based on skills are visible to the supervisors assigned to this supervisor configuration. Possible values are: - AllSkills—Show work items with all skill requirements selected in this supervisor configuration. - AnySkill—Show work items with at least one skill requirement selected in this supervisor configuration. | # Operational Objects Use the following objects for Tooling API operations. - **[ContainerAsyncRequest](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_containerasyncrequest.htm)**: Allows you to compile and asynchronously deploy a MetadataContainer object to your organization. - **[DeployDetails](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_deploydetails.htm)**: A complex type that contains detailed XML for any compile errors reported in the asynchronous request defined by a ContainerAsyncRequest object. - **[MetadataContainer](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_metadatacontainer.htm)**: Manages working copies of ApexClassMember, ApexTriggerMember, ApexPageMember, and ApexComponentMember objects, including collections of objects to be deployed together. - **[OperationLog](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_operationlog.htm)**: Represents long-running or asynchronous operations triggered and tracked through Tooling API. The following Tooling API objects are used internally by the Developer Console. - IDEPerspective - IDEWorkspace - User.WorkspaceId # OperationLog Represents long-running or asynchronous operations triggered and tracked through Tooling API. This object is available in API version 37.0 and later. ## Supported SOAP Calls create(), describeSObjects() ## Supported REST HTTP Methods Query, GET, POST ## Special Access Rules As of the Spring '20 release, to access OperationLog you must have the View Setup user permission. ## Fields | Field | Details | | --- | --- | | DetailedStatus | Type string Properties Filter, Group, Nillable, Sort Description Complements the Status field with an operation processor-specific status code. | | Message | Type string Properties Filter, Group, Nillable, Sort Description Complements the Status field with information helpful to the user. For example, if Status=FAILED, state the reason in this field. | | Parameters | Type [OperationParameters](#OperationParameters_title) Properties Create, Nillable Description A complex type that represents a set of parameters passed to the operation processor. Specify the parameters by using the [OperationPayload](#OperationPayload_title) value that corresponds to your operation type. | | Status | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Indicates the status of an operation triggered through Tooling API. Valid values are: - NEW - RUNNING - COMPLETED - FAILED - ABORTED Only records with Status=NEW can be created through the API. | | Type | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort Description The type of operation submitted through Tooling API. For each operation type, use the corresponding payload of input parameters. Valid operation types are: RunTerritoryRules Runs account assignment rules for any territory that has rules defined and belongs to a territory model in Planning or Active state. When you run rules from Setup, accounts are assigned to territories according to your rules if your territory model is in Active or Planning state. Accounts are assigned to territories according to your rules automatically on account creation or update only if your territory model is in Active state. When you choose this operation type, use the payload [Territory2RunTerritoryRulesPayload](#Territory2RunTerritoryRulesPayload) in the Parameters field. RunOppTerrAssignmentApex Uses filter-based opportunity territory assignment to assign territories to opportunities using a simple job. We provide code for an Apex class that you can use as-is or modify as needed based on our guidelines. After you create and deploy the class, run the job to complete the assignment process. Job options include making assignments within date ranges and assigning territories to open opportunities only. When you choose this operation type, use the payload [Territory2RunOppTerrAssignmentApexPayload](#Territory2RunOppTerrAssignmentApexPayload) in the Parameters field. | ## changeOwnPassword Represents the password details when users change their own passwords. Users can’t use setPassword() to change their own passwords, and must use changeOwnPassword(). This type is available in API version 40.0 and later. | Field | Details | | --- | --- | | oldPassword | Type string Description The user’s previous password that is being replaced. | | newPassword | Type string Description The user’s new password. | ## OperationParameters Represents parameters to be passed to an operation triggered by Tooling API. This type is available in API version 37.0 and later. | Field | Details | | --- | --- | | payload | Type [OperationPayload](#OperationPayload_title) Description Use the payload that corresponds to the type of operation you want to trigger through Tooling API. Valid values are: - [Territory2RunTerritoryRulesPayload](#Territory2RunTerritoryRulesPayload) - [Territory2RunOppTerrAssignmentApexPayload](#Territory2RunOppTerrAssignmentApexPayload) | ## OperationPayload Represents a named set of input parameters, or payload, that corresponds to the operation type specified in the [Type](#OperationLog-Type) field of OperationLog. For example, if you choose the operation type [RunTerritoryRules](#RunTerritoryRules), use the payload [Territory2RunTerritoryRulesPayload](#Territory2RunTerritoryRulesPayload). Payloads that are supported by OperationLog are extensions of the OperationPayload type. This type is available in API version 37.0 and later. ## Territory2RunTerritoryRulesPayload Represents a set of parameters to be specified when triggering a [RunTerritoryRules](#RunTerritoryRules) operation through Tooling API. Extends the complex type [OperationPayload](#OperationPayload_title). This type is available in API version 37.0 and later. | Field | Details | | --- | --- | | keyPrefix | Type string Description The key prefix of the entity on which the territory assignment rules should be run. The Account key prefix (001) is currently supported. | | territoryId | Type string Description The TerritoryID of the Planning or Active territory model you want to run rules for. | | territoryModelId | Type string Description The ID for the territory model the territory belongs to. You can run assignment rules on territory models in a Planning or Active state. | ## Territory2RunOppTerrAssignmentApexPayload Represents a set of parameters to be specified when triggering a [RunOppTerrAssignmentApex](#RunOppTerrAssignmentApex) operation through Tooling API. Extends the complex type [OperationPayload](#OperationPayload_title). This type is available in API version 37.0 and later. | Field | Details | | --- | --- | | excludeClosedOpportunities | Type string Description If true, excludes from the operation all opportunities that are already closed. | | opportunityCloseDateFrom | Type string Description Use to filter opportunities based on a range of close dates. The operation applies to opportunities with close dates within the specified range. Use this field to specify a starting date for the range using the format ddmmyyyy. | | opportunityCloseDateTo | Type string Description Use to filter opportunities based a range of close dates. The operation applies to opportunities with close dates within the specified range. Use this field to specify an ending date for the range using the format ddmmyyyy. | | opportunityLastModifiedDateFrom | Type string Description Use to filter opportunities based a range of last-modified dates. The operation applies to opportunities with last-modified dates within the specified range. Use this field to specify a starting date for the range using the format ddmmyyyy. | | opportunityLastModifiedDateTo | Type string Description Use to filter opportunities based a range of last-modified dates. The operation applies to opportunities with last-modified dates within the specified range. Use this field to specify an ending date for the range using the format ddmmyyyy. | | territoryModelId | Type string Description The ID for the active territory model. Opportunities can be assigned to an active territory model only. | # OpportunitySplitType Represents labels and behavior for each split type Available in Tooling API version 37.0 and later. This object is read only, and only available if Teamselling and Opportunity Splits are enabled. There are 2 default split types: revenue splits, which must total 100%, and overlay splits, which can total any percentage. ## Supported SOAP Calls describeSObjects(), query(), retrieve() ## Supported REST HTTP Methods GET ## Fields
Field Name Details
Description
Type
textarea
Properties
Create, Filter, Group, Sort, Update
Description
Describes the purpose of the split type, providing context to future developers.
DeveloperName
Type
string
Properties
Create, Filter, Group, Sort, Update
Description
Required. The unique name of the object in the API. 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 organization.
Note

Note

When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance slows down while Salesforce generates one for each record.

IsActive
Type
boolean
Properties
Create, Defaulted on create, Filter, Group, Sort, Update
Description
Enables or disables the split type.
IsTotalValidated
Type
boolean
Properties
Create, Defaulted on create, Filter, Group, Sort
Description
If true, the split must total 100%. If false, the split can total any percentage.
Language
Type
picklist
Properties
Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update
Description
Indicates language of split labels in the user interface.
ManageableState
Type
ManageableState enumerated list
Properties
Filter, Group, Nillable, Restricted picklist, Sort
Description
Indicates the manageable state of the specified component that is contained in a package:
  • beta
  • deleted
  • deprecated
  • deprecatedEditable
  • installed
  • installedEditable
  • released
  • unmanaged

This field is available in API version 38.0 and later.

MasterLabel
Type
string
Properties
Create, Filter, Group, Sort, Update
Description
The user-interface label for the split type.
NamespacePrefix
Type
string
Properties
Filter, Group, Nillable, Sort
Description
The namespace prefix that is 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 Developer Edition orgs, NamespacePrefix is set to the namespace prefix of the org for all objects that support it, unless 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 orgs that are not Developer Edition orgs, NamespacePrefix is set only for objects that are part of an installed managed package. All other objects have no namespace prefix.

This field can’t be accessed unless the logged-in user has the Customize Application permission.

SplitEntity
Type
picklist
Properties
Create, Filter, Group, Restricted picklist, Sort
Description
The containing record type, such as an opportunity. Available in API version 30 and later.
SplitField
Type
picklist
Properties
Create, Filter, Group, Restricted picklist, Sort
Description
Indicates which currency field of the opportunity object is split. Available in API version 30 and later.
SplitDataStatus
Type
picklist
Properties
Filter, Group, Nillable,Restricted picklist, Sort,Update
Description
Indicates the status of the split type. Available in API version 30 and later.
# OrgDomainLog Represents a Salesforce org’s previous My Domain. This object is available in API version 51.0 and later. ## Supported SOAP API Calls describeSObjects(), query(), retrieve() ## Supported REST API Methods GET, HEAD, Query ## Fields | Field | Details | | --- | --- | | DomainPartition | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The partition for this org. When none, partitioned domains aren’t enabled. Otherwise, My Domain hostnames include the partition value. For example, the format of a My Domain login hostname for a Developer Edition org with partitioned domains is MyDomainName.develop.my.salesforce.com. Possible values are: - demo—Used in demo orgs. Available in API version 60.0 and later. - develop—Used in Developer Edition orgs. Also used in patch orgs where partitioned domains were deployed before Winter ’24. - free—Reserved for internal use. - none—Indicates that this org doesn’t use partitioned domains. - patch—Used in patch orgs. Available in API version 59.0 and later. - sandbox—Used in sandboxes with enhanced domains. These orgs are always partitioned. - scratch—Used in scratch orgs. - sfdctest—Reserved for internal use. - trailblaze—Used in Trailblazer Playgrounds. Available in API version 55.0 and later. | | MyDomainName | Type string Properties Filter, Group, Nillable, Sort Description A previous My Domain name for the Salesforce org. | | ProdSuffixType | Type picklist Properties Filter, Group, Restricted picklist, Sort Description A previous Salesforce domain suffix, which is appended to the My Domain name. Possible values are: - CloudforceLimited—cloudforce.com - DatabaseLimited—database.com - MySalesforce—my.salesforce.com with enhanced domains - MySalesforceLimited—my.salesforce.com without enhanced domains - OrgLevelCertificateLimited—legacy version of my-salesforce.com that’s noncompliant with browser settings that block third-party cookies - OrgLevelCertificate—my-salesforce.com - Restricted1—Reserved for future use. - Restricted2—Reserved for future use. | ## Usage To check for previous My Domain values for your org, first perform a GET request. GET /services/data/v51.0/tooling/query?q=SELECT Id FROM OrgDomainLog If that query returns a size of 1 or greater, previous My Domain values exist for the org. Each record represents a previous My Domain. To use a GET request for the My Domain name and suffix, use this syntax with a OrgDomainLog record ID. GET /services/data/v51.0/tooling/sobjects/MyDomainLog/recordID The following is an example response for a GET request querying a OrgDomainLog record ID. { "attributes" : { "type" : "OrgDomainLog", "url" : "/services/data/v56.0/tooling/sobjects/OrgDomainLog/9UXXXXXXXXXXXXXOAA" }, "Id" : "9UXXXXXXXXXXXXXOAA", "IsDeleted" : false, "CreatedDate" : "2022-10-02T21:04:38.000+0000", "CreatedById" : "005XXXXXXXXXXXXIAG", "LastModifiedDate" : "2022-10-02T21:04:38.000+0000", "LastModifiedById" : "005XXXXXXXXXXXXIAG", "SystemModstamp" : "2022-10-02T21:04:38.000+0000", "DomainPartition" : "none", "MyDomainName" : "mycompany", "ProdSuffixType" : "MySalesforceLimited" } # OutboundNetworkConnection Represents a private connection between a Salesforce org and a third-party data service. The connection is outbound because the callouts are going _out_ of Salesforce.Available in API version 49.0 and later. ## Supported SOAP Calls create(), delete(), describeObject(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods DELETEGETPATCHPOST ## Fields
Field Details
ConnectionType
Type
picklist
Properties
Filter, Group, Restricted picklist, Sort
Description
Specifies the cloud provider of the connection. The only valid value is AwsPrivateLink.
Description
Type
string
Properties
Filter, Group, Nillable, Sort
Description
A description of the connection. Maximum of 255 characters.
DeveloperName
Type
string
Properties
Filter, Group, Sort
Description
The developer’s internal name for the outbound network connection used in the API.
FullName
Type
string
Properties
Create, Group, Nillable
Description
The full name of the associated type 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.

isActive
Type
boolean
Properties
Defaulted on create, Filter, Group, Sort
Description
Required. Specifies whether the connection is active (true) or not(false). The default value is false.
Language
Type
picklist
Properties
Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort
Description
The language of the connection. The value for this field is the language value of the org.
ManageableState
Type
ManageableState enumerated list
Properties
Filter, Group, Nillable, Restricted picklist, Sort
Description
Indicates the manageable state of the specified component that is contained in a package:
  • beta
  • deleted
  • deprecated
  • deprecatedEditable
  • installed
  • installedEditable
  • released
  • unmanaged
MasterLabel
Type
string
Properties
Filter, Group, Sort
Description
The internal label for the connection.
Metadata
Type
mns:OutboundNetworkConnection
Properties
Create, Nillable, Update
Description
Provides access to the associated type and related fields in Metadata API.
NamespacePrefix
Type
string
Properties
Filter, Group, Nillable, Sort
Description
The namespace of the connection. An outbound network connection can be in an extension namespace different than the object.
Status
Type
picklist
Properties
Filter, Group, Restricted Picklist, Sort
Description
Required. Connection status. The connection is initially Unprovisioned and moves through the other states automatically after an admin performs a provision, sync, or teardown action. The valid values are:
  • Unprovisioned
  • Allocating
  • PendingAcceptance
  • PendingActivation
  • RejectedRemotely
  • DeletedRemotely
  • TeardownInProgress
  • Ready
# OutboundNetworkConnProperty Represents a name-value pair that describes the properties of the outbound network connection. Available in API version 49.0 and later. ## Supported SOAP Calls create(), delete(), describeObject(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods DELETEGETPATCHPOST ## Fields
Field Details
OutboundNetworkConnectionId
Type
reference
Properties
Create, Filter, Group, Sort
Description
Required. The ID of the corresponding OutboundNetworkConnection.
PropertyName
Type
picklist
Properties
Create, Filter, Group, Restricted picklist, Sort
Description
The name of a property used to establish to an OutboundNetworkConnection. Valid values are:
  • AwsVpcEndpointId—The unique endpoint ID provided by Salesforce after an outbound AwsPrivateLink is created.
  • AwsVpcEndpointServiceName—The name of the customer’s endpoint service running in an AWS VPC that’s used for private connections with Salesforce.
  • Region—The region in which the VPC is hosted.

Enumerated values DataCloudPrivateNetwork* are reserved for internal use.

PropertyValue
Type
textarea
Properties
Create, Nillable, Update
Description
The value of PropertyName For example, the PropertyValue of Region might be us-west-2.
# OwnerChangeOptionInfo Represents default and optional actions that can be performed when a record’s owner is changed. Available in Tooling API version 35.0 and later. ## Supported SOAP Calls describeSObjects(), query() ## Supported REST HTTP Methods Query ## Special Access Rules OwnerChangeOptionInfo is accessible in Tooling API to user profiles with the View Setup and Configuration permission. ## Fields | Field | Details | | --- | --- | | DefaultValue | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Default value of the checkbox for this option in the user interface. | | DurableId | Type string 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. To simplify queries, use this field. | | EntityDefinition | Type [EntityDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_entitydefinition.htm "Provides row-based access to metadata about standard and custom objects.") Properties Filter, Group, Sort Description The object to which this change applies. | | EntityDefinitionId | Type string Properties Filter, Group, Nillable, Sort Description The ID of the [EntityDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_entitydefinition.htm "Provides row-based access to metadata about standard and custom objects.") containing the record. | | IsEditable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether this option is editable by the user when updating the owner using the OwnerChangeOptions SOAP header. | | Label | Type string Properties Filter, Group, Nillable, Sort Description The label that corresponds to the option in the user interface. | | Name | Type string Properties Filter, Group, Nillable, Sort Description The unique name for the option. | | ParentId | Type string Properties Filter, Group, Nillable, Sort Description The durable ID of the parent OwnerChangeOptionInfo record. Available in Tooling API version 44.0 and later. | ## Example Retrieve all the change options for contacts. SELECT Id, Name, Label, IsEditable, DefaultValue, EntityDefinition.QualifiedApiName FROM OwnerChangeOptionInfo WHERE EntityDefinition.QualifiedName='Contact’ Retrieve the change options for opportunities. SELECT DurableId,EntityDefinitionId,IsEditable,Label,Name,ParentId FROM OwnerChangeOptionInfo WHERE EntityDefinition.DurableId = ‘Opportunity’ # Package2 Represents a second-generation managed package or an unlocked package in a Dev Hub org. Values for all fields are visible to the subscriber. Available in API version 41.0 and later. ## Supported SOAP Calls create(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods Query, GET, POST ## Fields | Field | Details | | --- | --- | | AppAnalyticsEnabled | Type boolean Properties Defaulted on create, Filter, Group, Sort, Update Description If true AppExchange App Analytics can access package usage logs and subscriber snapshots. The default value is false. | | ContainerOptions | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort Description Container options for the second-generation package. These options determine the upgrade and editability rules. The default value is Managed. Valid values include: - Managed (developer-managed, subscriber-managed) - Unlocked (developer-controlled, subscriber-editable) | | ConvertedFromPackageId | Type reference Properties Create, Filter, Group, Nillable, Sort Description The package ID (starts with 033) for the first-generation managed package that was converted. This field is available in API version 64.0 and later. This field is a relationship field. Relationship Name ConvertedFromPackage Refers To SubscriberPackage | | DataCloudPackage | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort Description If true, this package contains Data 360 metadata. When creating a managed package with Data 360 metadata, you must isolate the Data 360 metadata from the other Salesforce metadata by creating a separate package that contains only Data 360 metadata. Then create a package dependency between your dedicated Data 360 package and any related packages. The default value is false. | | Description | Type string Properties Create, Filter, Nillable, Sort, Update Description Description of the package. | | IsDeprecated | Type boolean Properties Defaulted on create, Filter, Group, Sort, Update Description Specifies whether this package has been marked as deprecated (true) or not (false). The default value is false. If you set IsDeprecated to true for a package, the package and all of its child package versions are deprecated. If you set IsDeprecated to false for a package, the package and all of its child package versions are undeprecated. However, if IsDeprecated is explicitly set to true for a package version _after_ its parent package is deprecated, the child remains deprecated even if you undeprecate its parent. If you set IsDeprecated to false for a package version whose parent package is deprecated, the package version’s IsDeprecated value remains true until its parent is undeprecated. Deprecated package versions that have been installed in subscriber orgs continue to function, but new installations of deprecated package versions are blocked. | | IsOrgDependent | Type boolean Properties Filter, Group, Sort Description Indicates whether the package depends on unpackaged metadata in the installation org (true) or not (false). This field only applies to unlocked packages. The default value is false. Available in API version 49.0 and later. | | Name | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description Name of the package. Unlike a typical developer name, this value is mutable and can contain special characters. | | NamespacePrefix | Type string Properties Create, Filter, Group, Nillable, Sort Description Namespace prefix that identifies the components of your package in the subscriber’s org. | | PackageErrorUsername | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description The email address for an active user in the Dev Hub org you want to receive email notification regarding package-related errors. You can set the field when creating a package and update it later. | | SubscriberPackageID | Type reference Properties Filter, Group, Sort, Unique Description ID that identifies this package across all Salesforce instances (starts with 033). This value is case-sensitive and must be unique. | | WasTransferred | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether the package was previously associated with a different Dev Hub org. For details, see: [Transfer a Second-Generation Managed Package to a Different Dev Hub](https://developer.salesforce.com/docs/atlas.en-us.pkg2_dev.meta/pkg2_dev/sfdx_dev2gp_package_transfer.htm). This field is available in API version 57.0 and later. The default value is false. | ## Usage Subscribers install package versions ([Package2Version](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_package2version.htm#tooling_api_objects_package2version "Represents a second-generation package version in a Dev Hub org. Values for all fields except for Tag and Branch are visible to the subscriber. Available in API version 41.0 and later.")s) in their orgs. # Package2Member Represents a component in a second-generation managed package in a subscriber’s org. Created when the subscriber installs the package. Available in API version 41.0 and later. ## Supported SOAP Calls describeSObjects(), query(), retrieve() ## Supported REST HTTP Methods Query, GET ## Fields | Field | Details | | --- | --- | | CurrentPackageVersionId | Type reference Properties Filter, Group, Sort Description The ID of the current SubscriberPackageVersion. | | MaxPackageVersionId | Type reference Properties Filter, Group, Nillable, Sort Description Indicates the last package version that a metadata component was contained in. It's set if the object is left in the subscriber org after upgrade. For example, if the package developer removes an Apex class, that class and its Package2Member are hard deleted. However, to avoid data loss, we don't delete schema objects. | | MinPackageVersionId | Type reference Properties Filter, Group, Nillable, Sort Description The ID of the first SubscriberPackageVersion that contained this Package2Member. Starts with 04t. | | SubjectId | Type reference Properties Filter, Group, Sort, Unique Description The ID of the component that this Package2Member is referencing. This value is case-sensitive and must be unique. | | SubjectKeyPrefix | Type string Properties Filter, Group, Sort Description The key prefix for the component that this Package2Member is referencing—for example, 01W for an ActionEmail component or 01Q for a WorkflowRule component. | | SubjectManageableState | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The manageability state of this Package2Member. References ManageableStateEnum. Valid values include: - beta—Not applicable. (Used only for first-generation packages.) - deleted—Not applicable. (Used only for first-generation packages.) - deprecated—Installed as part of a second-generation managed package, and later deprecated from the package. - deprecatedEditable—Installed as part of an unlocked package, and later deprecated from the package. - installed—Installed as part of a second-generation managed package. - installedEditable—Installed as part of an unlocked package. For components in unlocked packages, an admin can make modifications, but all changes are overwritten by the next upgrade. - released—Not applicable. (Used only for first-generation packages.) - unmanaged—Not applicable. (Used only for first-generation packages.) | | SubscriberPackageId | Type reference Properties Filter, Group, Sort Description ID that identifies this package across all Salesforce instances (starts with 033). | # Package2Version Represents a second-generation package version in a Dev Hub org. Values for all fields except for Tag and Branch are visible to the subscriber. Available in API version 41.0 and later. ## Supported SOAP Calls query(), retrieve(), update() ## Supported REST HTTP Methods Query, GET, POST ## Fields | Field | Details | | --- | --- | | AncestorId | Type reference Properties Filter, Group, Nillable, Sort Description The ID of the immediate parent of the package version in the package ancestry tree. | | Branch | Type string Properties Filter, Group, Nillable, Sort, Update Description The branch associated with this package version. Can be used to create a tree structure of inheritance. This value is auto-populated from Package2VersionCreateRequest, but you can update it. | | BuildDurationInSeconds | Type int Properties Filter, Group, Nillable, Sort, Description Measured in seconds, this field indicates how long the build for this package version took. This field is new in API version 51.0. | | BuildNumber | Type int Properties Filter, Group, Sort Description Part of the version number of a package version. The complete version number format is major.minor.patch (Beta build)—for example, 1.2.0 (Beta 5). For released packages, version numbers contain only major.minor.patch, or, if patch is 0, major.minor—for example, 1.2. | | CodeCoverage | Type complexvalue Properties Nillable Description Percentage of lines of Apex code in the package version that are covered by tests. The value is null if code coverage wasn’t run when the package version was created. For second-generation managed packages, a minimum 75% code coverage is required for package version promotion. | | CodeCoveragePercentages | Type complexvalue Properties Nillable Description Provides code coverage details for each Apex class in the package version. The value is null if code coverage wasn’t run when the package version was created, or if there’s no Apex code in the package. | | ConvertedFromVersionId | Type reference Properties Filter, Group, Nillable, Sort Description The subscriber package version ID (starts with 04t) of the first-generation managed package version that was converted. This field is available in API version 64.0 and later. This field is a relationship field. Relationship Name ConvertedFromVersion Refers To SubscriberPackageVersion | | Description | Type string Properties Filter, Nillable, Sort, Update Description Description of the package. | | DeveloperUsePkgZip | Type base64 Properties Nillable Description The zip file of package metadata for the package version. For converted second-generation managed packages only. | | HasMetadataRemoved | Type boolean Properties Defaulted on create, Filter, Group, Sort Description For managed packages only, this field returns true when one or more managed metadata components included in the package version’s ancestor aren’t included in this package version. This field doesn’t apply to unlocked packages. Available in API version 51.0. | | HasPassedCodeCoverageCheck | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Returns true if code coverage tests were run when the package version was created, and the resulting code coverage percentage is 75% or greater. Otherwise, returns false. For second-generation managed packages, a minimum 75% code coverage is required for package version promotion. | | InstallKey | Type string Properties Filter, Group, Nillable, Sort, Update Description Installation key for creating the key-protected package. The default is null. If you query for this value, the returned value is always null (for security reasons). The value can be set and reset but not read. | | IsDeprecated | Type boolean Properties Defaulted on create, Filter, Group, Sort, Update Description Specifies whether this package version has been marked as deprecated (true) or not (false). The default value is false. If you set IsDeprecated to true for a package, the package and all of its child package versions are deprecated. If you set IsDeprecated to false for a package, the package and all of its child package versions are undeprecated. However, if IsDeprecated is explicitly set to true for a package version _after_ its parent package is deprecated, the child remains deprecated even if you undeprecate its parent. If you set IsDeprecated to false for a package version whose parent package is deprecated, the package version’s IsDeprecated value remains true until its parent is undeprecated. Deprecated package versions that have been installed in subscriber orgs continue to function, but new installations of deprecated package versions are blocked. | | IsPasswordProtected | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Specifies whether installation of this package version requires the user to provide an installation key (true) or not (false). The default value is false. | | IsReleased | Type boolean Properties Defaulted on create, Filter, Group, Sort, Update Description Indicates whether the package version is released (true) or in beta (false). | | Language | Type picklist Properties Create, Filter, Group, Nillable, Restricted picklist, Sort Description The language for the package. If a language wasn’t specified, the language defaults to the language of the Dev Hub user who created the package. This field is available in API version 57.0 and later. | | MajorVersion | Type int Properties Filter, Group, Sort Description Part of the version number of a package version. The complete version number format is major.minor.patch (Beta build)—for example, 1.2.0 (Beta 5). For released packages, version numbers contain only major.minor.patch, or, if patch is 0, major.minor—for example, 1.2. | | MinorVersion | Type int Properties Filter, Group, Sort Description Part of the version number of a package version. The complete version number format is major.minor.patch (Beta build)—for example, 1.2.0 (Beta 5). For released packages, version numbers contain only major.minor.patch, or, if patch is 0, major.minor—for example, 1.2. | | Name | Type string Properties Filter, Group, Sort, Update Description Name of the package. | | Package2Id | Type reference Properties Filter, Group, Sort Description ID of the parent package (starts with 0Ho). | | PatchVersion | Type int Properties Filter, Group, Sort Description Part of the version number of a package version. The complete version number format is major.minor.patch (Beta build)—for example, 1.2.0 (Beta 5). For released packages, version numbers contain only major.minor.patch, or, if patch is 0, major.minor—for example, 1.2. Currently, the only valid value is 0. | | ReleaseVersion | Type double Properties Filter, Group, Sort Description Indicates the Salesforce release version used to create the package version. The value is in the format of a Salesforce API version number, for example, “51.0.” This field is new in API version 51.0. | | SnapshotName | Description The name of the scratch org snapshot used when creating this package version. | | SubscriberPackageVersionId | Type reference Properties Filter, Group, Sort, Unique Description ID that subscribers use to install the package version (starts with 04t). This value is read-only. | | Tag | Type string Properties Filter, Group, Nillable, Sort, Update Description The package version’s tag. This value is auto-populated from Package2VersionCreateRequest, but you can update it. | | ValidatedAsync | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, a new package version is created before package validations complete. The default value is false. For more information on async validation, see [Create and Update Versions of a Second-Generation Managed Package](https://developer.salesforce.com/docs/atlas.en-us.pkg2_dev.meta/pkg2_dev/sfdx_dev_dev2gp_create_pkg_ver.htm) | | ValidationSkipped | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort Description If true, validation is skipped during package version creation. Skipping validation reduces the time it takes to create a new package version, but package versions created without validation can’t be promoted to the released state. This field is available in API version 48.0 and later. The default value is false. You can't specify both skip validation and code coverage, because code coverage is calculated during validation. | # Package2VersionCreateRequest Represents a request to create a second-generation managed package or an unlocked package version in a Dev Hub org. Available in API version 41.0 and later. ## Supported SOAP Calls create(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods Query, GET, POST ## Fields | Field | Details | | --- | --- | | AsyncValidation | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort Description If true, a new package version is created before package validations complete. The default value is false. For more information on async validation, see [Create and Update Versions of a Second-Generation Managed Package](https://developer.salesforce.com/docs/atlas.en-us.pkg2_dev.meta/pkg2_dev/sfdx_dev_dev2gp_create_pkg_ver.htm) | | Branch | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description The branch to associate with this package version. Can be used to create a tree structure of inheritance. Upon successful creation of a Package2Version, this value is copied to the package version’s Branch field. The default value is null. | | CalculateCodeCoverage | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort Description If true, code coverage is calculated during package version creation. If false, code coverage isn’t calculated. For second-generation managed packages, a minimum 75% code coverage is required for package version promotion. This field is available in API version 47.0 and later. | | CalcTransitiveDependencies | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description If true, the calculation of the package version’s indirect dependencies is enabled. A package can have multiple levels of dependencies, where pkgC depends on pkgB, and pkgB depends on pkgA, for example. By default, you list all of a package’s dependencies, including indirect (transitive) dependencies. When CalcTransitiveDependencies is set to true, you specify a package’s direct dependencies only, and the indirect dependencies are calculated for you. See [Create Dependencies Between Second-Generation Managed Packages](https://developer.salesforce.com/docs/atlas.en-us.pkg2_dev.meta/pkg2_dev/sfdx_dev_dev2gp_create_dependencies.htm) in the Second-Generation Managed Packaging Developer Guide. CalcTransitiveDependencies also enables you to generate a hierarchical graph of a package version’s dependencies. To generate the dependencies graph, run the package version displaydependencies CLI command. See [package version displaydependencies](https://developer.salesforce.com/docs/atlas.en-us.264.0.sfdx_cli_reference.meta/sfdx_cli_reference/cli_reference_package_commands_unified.htm#cli_reference_package_version_displaydependencies_unified) in the Salesforce CLI Command Reference. The default value is false. | | DependencyGraphJson | Type textarea Properties Create, Nillable, Update Description If CalcTransitiveDependencies is set to true, DependencyGraphJson is auto-populated with information about the package’s dependencies when you create a new package version. If CalcTransitiveDependencies is false, the default value is null. | | InstallKey | Type encryptedstring Properties Create, Nillable Description Installation key for installing a key-protected package. The default is null. Used only on insert. If you query for this value, null is always returned (for security reasons). The default value is null. | | IsConversionRequest | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description If true, this package version is being converted from a first-generation managed package to a second-generation managed package. The default value is false. This field is available in API version 64.0 and later. | | IsDevUsePkgZipRequested | Type boolean Properties Create, Filter, Group, Sort, Update Description If true, a downloadable package zip file containing package metadata is generated when a new package version is created. The default value is false. | | IsPasswordProtected | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Specifies whether installation of this package version requires the user to provide an installation key (true) or not (false). The default value is null. | | Language | Type picklist Properties Create, Filter, Group, Nillable, Restricted picklist, Sort Description The language for the package. The picklist values match the [Fully Supported Languages](https://help.salesforce.com/s/articleView?id=xcloud.faq_getstart_what_languages_does.htm&type=5&language=en_US) listed in Salesforce Help. If no language is specified, the language defaults to the language of the Dev Hub user who created the package. This field is available in API version 57.0 and later. | | Package2Id | Type reference Properties Create, Filter, Group, Sort Description A reference to an ID for the Package2 to create a version of. The default value is null. | | Package2VersionId | Type reference Properties Filter, Group, Nillable, Sort Description A reference to an ID for the Package2Version that this request creates (starts with 05i). The default value is null. | | SkipValidation | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort Description If true, validation is skipped during package version creation. Skipping validation reduces the time it takes to create a new package version, but package versions created without validation can’t be promoted to the released state. This field is available in API version 48.0 and later. The default value is false. You can't specify both skip validation and code coverage, because code coverage is calculated during validation. | | SourceOrg | Type string Properties Create, Filter, Group, Nillable, Sort Description The ID of the org whose shape (features, settings, limits, and licenses) information is used for creating scratch orgs used to validate metadata during creation of a second-generation managed package or unlocked package. This field is available in API version 50.0 and later. | | Status | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The status of the Package2Version creation request. Valid values include: - Queued - Initializing - Verifying Features and Settings - Verifying Dependencies - Verifying Metadata - Finalizing PackageVersion - Error - Success The preceding values are listed in the order they appear during a Package2Version create request. The default value is null. | | Tag | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description Optional tags for the package version. The default value is null. | | VersionInfo | Type base64 Properties Create Description The blob that stores details about the package version. The default value is null. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When you query Package2VersionCreateRequest, data from VersionInfo isn’t returned. | # Package2VersionCreateRequestError Represents an error encountered while creating a second-generation managed package or an unlocked package version. Available in API version 41.0 and later. ## Supported SOAP Calls query(), retrieve() ## Supported REST HTTP Methods Query, GET ## Fields | Field | Details | | --- | --- | | Message | Type textarea Properties Filter, Nillable, Sort Description The error that was encountered during the creation of a package version. | | ParentRequestId | Type reference Properties Filter, Group, Nillable, Sort Description The ID of the Package2VersionCreateRequest that encountered an error. | # PackageInstallRequest Represents a request to install a package (first- or second-generation) in a target subscriber org. Available in API version 41.0 and later. ## Supported SOAP Calls create(), describeSObjects(), query(), retrieve() ## Supported REST HTTP Methods GET, POST, Query ## Fields | Field | Details | | --- | --- | | ApexCompileType | Type string Properties Create, Filter, Group, Nillable, Sort Description For unlocked package installs and upgrades, specifies whether to require successful compilation of all Apex in the org, or only Apex within the package. Valid values are: - all - package For package installs into production orgs, or any org that has [Apex Compile on Deploy enabled](https://developer.salesforce.com/docs/atlas.en-us.264.0.apexcode.meta/apexcode/apex_deploying.htm), the platform compiles all Apex in the org after the package install or upgrade operation completes. This approach assures that package installs and upgrades don’t impact the performance of an org, and is done even if \--apexcompile package is specified. Available in API version 46.0 and later. | | EnableRss | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort Description Specifies whether the package can send and receive Remote Site Settings (RSS) and Content Security Policy (CSP) data from third-party websites (true) or not (false). The default value is false. Available in API version 43.0 and later. | | Errors | Type [SubscriberPackageInstallErrors](#SubscriberPackageInstallErrors) Properties Nillable Description Errors that occurred during installation, if any. | | NameConflictResolution | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort Description Controls name conflicts between package members in an unmanaged package. Valid values are: - Block: Throw an exception on name conflicts. - RenameMetadata: Rename only those components that can be renamed, otherwise throw an exception. | | PackageInstallSource | Type picklist Properties Create, Filter, Group, Nillable, Restricted picklist, Sort Description For internal use only. | | Password | Type string Properties Create, Filter, Group, Nillable, Sort Description The installation key for the package. Required for packages that are protected by an installation key. | | ProfileMappings | Type [SubscriberPackageProfileMappings](#SubscriberPackageProfileMappings) Properties Create, Nillable Description Mappings between [profile settings](https://developer.salesforce.com/docs/atlas.en-us.pkg1_dev.meta/pkg1_dev/packaging_creating_custom_profile.htm "HTML (New Window)") in the package and profiles in the subscriber org. When installing a package, the admin for the subscriber org chooses which profiles in the org to map the profile settings in the package to. | | SecurityType | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort Description Users for which this package is installed. Valid values are: - Custom: Installed for specified custom profiles. - Full: Installed for all users. - None: Installed for administrators only. | | SkipHandlers | Type string Properties Create, Filter, Group, Nillable, Sort Description Specifies the handlers that are skipped when the package is installed. There’s only one valid value: - FeatureEnforcement: For package installs in scratch orgs only. Specifying FeatureEnforcement in this field decreases the length of time a package installation takes to complete. The feature enforcement handler adds object and feature validations in the subscriber org that prevent an admin from turning off a feature that can cause your app to malfunction. This enforcement isn’t critical in scratch orgs. Available in API version 61.0 and later. | | Status | Type picklist Properties Group, Nillable, Restricted picklist, Sort Description The status of the install request. Valid values are: - Error - InProgress - Success - Unknown | | SubscriberPackageVersionKey | Type string Properties Create, Filter, Group, Sort Description Foreign key to the subscriber package version. | | UpgradeType | Type string Properties Create, Filter, Group, Nillable, Sort Description For unlocked package upgrades, specifies whether to mark all removed components as deprecated (deprecate-only, delete removed components that can be safely deleted and deprecate the others (mixed-mode), or delete all removed components (delete-only). The default is mixed-mode. Valid values are: - delete-only - deprecate-only - mixed-mode | ## SubscriberPackageInstallErrors Represents the list of errors that occurred during package installation. | Field | Details | | --- | --- | | errors | Type [SubscriberPackageInstallError](#SubscriberPackageInstallError) Description The errors that occurred during package install. | ## SubscriberPackageInstallError Represents a single error that occurred during package installation. | Field | Details | | --- | --- | | message | Type string Description Required. Describes the error that occurred. | ## SubscriberPackageProfileMappings Represents the list of profile mappings for which this package is installed. | Field | Details | | --- | --- | | profileMappings | Type [SubscriberPackageProfileMapping](#SubscriberPackageProfileMapping) Description Name of the profile mapping. | ## SubscriberPackageProfileMapping Represents a mapping between a profile in the package that’s being installed and the profile in the target subscriber org. | Field | Details | | --- | --- | | source | Type string Description Required. The name of the profile setting in the package that’s being installed. | | target | Type string Description Required. The name of the profile in the target subscriber org. | # PackageUploadRequest Represents a request to upload a first-generation package version and its components so that subscribers can install it. Available in API version 38.0 and later. ## Supported SOAP Calls create(), describeSObjects(),query(),retrieve() ## Supported REST HTTP Methods Query, GET, POST ## Fields | Field | Details | | --- | --- | | Description | Type textarea Properties Create, Nillable Description A description of the package and what this version contains. | | Errors | Type complexvalue Properties Nillable Description Errors that occurred during upload, if any. | | IsReleaseVersion | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort Description For managed packages only. Indicates whether the managed package is a released version (true) or a beta version (false). The default is false. | | MajorVersion | Type int Properties Create, Filter, Group, Nillable, Sort Description The first number in a package version number. A version number either has an x.y format or an x.y.z format. The x represents the major version, y the minor version, and z the patch version. (The patch version can’t be specified; it’s automatically assigned when a managed beta is uploaded.) If IsReleaseVersion is false, MajorVersion is ignored. If IsReleaseVersion is true, and a managed beta is the latest uploaded version for the package, the major version must match the major version of the last uploaded beta. | | MetadataPackageId | Type reference Properties Create, Filter, Group, Sort Description The 18-character package ID, which starts with 033. | | MetadataPackageVersionId | Type reference Properties Filter, Group, Nillable, Sort Description The 18-character package version ID representing the non-deprecated package you’re uploading. | | MinorVersion | Type int Properties Create, Filter, Group, Nillable, Sort Description The second number in a package version number. A version number either has an x.y format or an x.y.z format. The x represents the major version, y the minor version, and z the patch version. (The patch version can’t be specified; it’s automatically assigned when a managed beta is uploaded.) If MinorVersion isn’t specified, the default value is 1 more than the minor version of the currently released package (0 if not released). If IsReleaseVersion is false, MinorVersion is ignored. If IsReleaseVersion is true and a managed beta is the latest uploaded version for the package, the minor version must match the minor version of the last uploaded beta. | | Password | Type string Properties Create, Filter, Group, Nillable, Sort Description An optional installation key for sharing the package privately with anyone who has the password value. Don't include the password if you want to make the package available to anyone on AppExchange and share your package publicly. | | PostInstallUrl | Type textarea Properties Create, Nillable Description The fully qualified URL of the post-installation instructions. Instructions are shown as a link after installation and are available from the package detail view. | | ReleaseNotesUrl | Type textarea Properties Create, Nillable Description The fully qualified URL of the package release notes. Release notes are shown as a link during the installation process and are available from the package detail view after installation. | | Status | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The status of the upload. Valid values are: - Error - In Progress - Queued - Success | | VersionName | Type string Properties Create, Filter, Group, Sort Description Required. The name of the package version. Example: Spring 2016. | ## Usage Suppose that you want to upload version 1.3 of your managed package. Let’s write some code to create a package upload request, upload the package version, and poll the status of the upload until it completes. First, let’s set some variables for the request object. static private final String packageId = "033xx00000007l0"; static private final Integer packageMajorVersionNumber = 1; static private final Integer packageMinorVersionNumber = 3; static private final Boolean isReleaseVersion = true; static private final String packageVersionDescriptionSuffix = isReleaseVersion ? "" : "beta"; static private final String packageVersionDescription = "r" + packageMinorVersionNumber + packageVersionDescriptionSuffix; static private final String packageDescription = String.format("This is the most amazing package in the world! ", "And %s is the most amazing release so far! ", packageVersionDescription); static private final String packageReleaseNotesUrl = "https://www.example.com"; static private final String packagePostInstallUrl = "https://www.example.com"; // Leave blank or null for no password static private final String packagePassword = ""; static private final String baseUrl = "https://MyDomainName.my.salesforce.com:6109"; Now let’s create the upload request and start the upload. This code sample uses the Web Services Connector (WSC). PackageUploadRequest packageUploadRequest = new PackageUploadRequest(); packageUploadRequest.setMetadataPackageId(packageId); packageUploadRequest.setVersionName(packageVersionDescription); packageUploadRequest.setDescription(packageDescription); packageUploadRequest.setMajorVersion(packageMajorVersionNumber); packageUploadRequest.setMinorVersion(packageMinorVersionNumber); packageUploadRequest.setPostInstallUrl(packagePostInstallUrl); packageUploadRequest.setReleaseNotesUrl(packageReleaseNotesUrl); packageUploadRequest.setIsReleaseVersion(isReleaseVersion); packageUploadRequest.setPassword(packagePassword); SObject\[\] argArray = {packageUploadRequest}; SaveResult\[\] saveResults = connection.create(argArray); if (saveResults\[0\].isSuccess()) { // The save result contains the ID of the created request. // Save it in the local request. packageUploadRequest.setId(saveResults\[0\].getId()); System.out.println("PackagePushRequest created, ID: " + saveResults\[0\].getId()); } else { for (Error error : saveResults\[0\].getErrors()) { System.out.println(error.getMessage()); } } **Checking the Status of an Upload Request** // Find the status of the PackageUploadRequest for a given ID String query = String.format("SELECT Status,MetadataPackageVersionId FROM PackageUploadRequest WHERE Id = '%s'", packageUploadRequest.getId()); boolean inProgress = false; boolean queued = false; boolean done = false; while (true) { QueryResult queryResult = connection.query(query); PackageUploadRequest updatedPackageUploadRequest = (PackageUploadRequest) queryResult.getRecords()\[0\]; PackageUploadRequestStatus status = updatedPackageUploadRequest.getStatus(); switch (status) { case Success: System.out.println(String.format("Package upload %s completed", packageUploadRequest.getId())); System.out.println(String.format( "Package install url: %s/packaging/installPackage.apexp?p0=%s", baseUrl, updatedPackageUploadRequest.getMetadataPackageVersionId())); done = true; break; case Error: PackageUploadErrors errors = updatedPackageUploadRequest.getErrors(); if (errors.getErrors().length == 0) { System.out.println(String.format( "%s: For upload of package %s, no further information available", updatedPackageUploadRequest.getStatus(), packageUploadRequest.getId())); } else { System.out.println(String.format( "%s: For upload of package %s", updatedPackageUploadRequest.getStatus(), packageUploadRequest.getId())); for (PackageUploadError error : errors.getErrors()) { System.out.println("Error detail: " + error.getMessage()); } } assertTrue("Upload failure occurred", false); break; case Queued: if (!queued) { System.out.println(String.format("Package upload %s enqueued”, packageUploadRequest.getId())); queued = true; } break; case InProgress: if (!inProgress) { System.out.println(String.format("Package upload %s started", packageUploadRequest.getId())); inProgress = true; } break; case Unknown: System.out.println("Unexpected package upload status: " + updatedPackageUploadRequest.getStatus()); } if (done) break; try { Thread.sleep(1000); } catch (InterruptedException e) { // ignore interruptions } } # PackageVersionUninstallRequestError Represents an error encountered while requesting an uninstall of a Package2Version (second-generation package version). Available in API version 41.0 and later. ## Supported SOAP Calls describeSObjects(), query(), retrieve() ## Supported REST HTTP Methods GET, Query ## Fields | Field | Details | | --- | --- | | Message | Type string Properties Filter, Nillable, Sort Description The error that was encountered during the request of an uninstall of the second-generation package version. | | ParentRequestId | Type ID Properties Filter, Group, Nillable, Sort Description The ID of the SubscriberPackageVersionUninstallRequest object associated with this error. The ID starts with the string 06y. | # PardotTenant Represents an Account Engagement business unit. This object is available in API version 56.0 and later. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Pardot is now known as Marketing Cloud Account Engagement. We wish we could snap our fingers to update the name everywhere, but you can expect to see the previous name in a few places, including API names and developer resources. Use available SOAP calls to create new business units, and query and update information in existing business units. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods GET, HEAD, PATCH, POST, Query ## Special Access Rules PardotTenant is available to customers with any Account Engagement edition. ## Fields | Field | Details | | --- | --- | | CreationStatus | Type picklist Properties Create, Defaulted on create, Filter, Group, Restricted picklist, Sort, Update Description The operational status of the business unit managed by Account Engagement. Possible values are: - Backfilled - Created - Creating - Deleted - Deleting - Deprovisioned - Deprovisioning - Error - Updated - Updating The default value is Creating. | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description Universally unique identifier for this object. If an object does not provide a value for this field on INSERT, a value will be auto-generated for it. | | InitialPardotAdminId | Type reference Properties Create, Filter, Group, Nillable, Sort Description The Salesforce user who set up the business unit. This field is a relationship field. Relationship Name InitialPardotAdmin Relationship Type Lookup Refers To User | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The language of the business unit. | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description The name of the Account Engagement business unit. This field syncs with the PardotTenantName field. | | PardotTenantId | Type string Properties Filter, Group, Nillable, Sort Description The numerical identifier for the business unit. | | PardotTenantName | Type string Properties Create, Filter, Group, Sort, Update Description The name of the Account Engagement business unit. This field syncs with the MasterLabel field. | | PardotTenantStatusCode | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The operational status of the business unit. Possible values are: - InsufficientLicenseLimits - InvalidRequest - PardotAccountNotFound - UnknownError - UsernameCollision | ## Usage To create an Account Engagement business unit, set a valid user ID for the InitialPardotAdminID field and a value for PardotTenantName. If you have multiple business units, the PardotTenantName value must be unique. To verify the status of a business unit, query the PardotTenantID. A return value of CREATING means the business unit is being created. A return value of CREATED means the business unit has been created. Update capabilities are limited to changing the PardotTenantName field and deleting a business unit if an error occurs upon creation. To delete the PardotTenant, one of these scenarios must be true: - The CreationStatus has a value of ERROR. - The CreationStatus has a value of CREATING, UPDATING, or DELETING, and the system hasn’t updated the tenant in the last hour. # PathAssistant Represents a Path. Available in Tooling API version 36.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP Calls retrieve(), query() ## Supported REST HTTP Methods DELETE, GET, PATCH, POST ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Filter, Group, Sort Description The unique name of the path in the API. | | FullName | Type string Properties Group, Nillable Description The name of the path in the Metadata API. Query this field only if the query result contains no more than 1 record. Otherwise, an error is returned. If more than 1 record exists, use multiple queries to retrieve the records. This limit protects performance. | | IsActive | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether the path is active (true) or inactive (false). | | IsDeleted | Type boolean Properties Sort Description Indicates whether the record has been moved to the Recycle Bin (true) or not (false). | | IsMasterRecordType | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether this path is for the main record type (true) or not (false). | | Language | Type string Properties Filter, Group, Restricted picklist, Sort Description The language of the path. Valid values are: - 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 Spanish (Mexico) defaults to Spanish for customer-defined translations. - Swedish: sv - Thai: th The Salesforce user interface is fully translated to Thai, but Help is in English. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description Label for this path. | | Metadata | Type msn:PathAssistant Properties Create, Nillable, Update Description Path metadata from the msn namespace. Query this field only if the query result contains no more than 1 record. Otherwise, an error is returned. If more than 1 record exists, use multiple queries to retrieve the records. This limit protects performance. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The namespace prefix that is 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 Developer Edition orgs, NamespacePrefix is set to the namespace prefix of the org for all objects that support it, unless 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 orgs that are not Developer Edition orgs, NamespacePrefix is set only for objects that are part of an installed managed package. All other objects have no namespace prefix. This field can’t be accessed unless the logged-in user has the “Customize Application” permission. | | RecordTypeId | Type ID Properties Filter, Group, Nillable, Sort Description The unique identifier for a record type. | | SobjectProcessField | Type string Properties Filter, Group, Restricted picklist, Sort Description Name of the picklist field which determines the steps you can use in the path. For example, OpportunityStage in the case of opportunities or LeadStatus in the case of leads. | | SobjectType | Type string Properties Filter, Group, Restricted picklist, Sort Description The object this path relates to. Valid values are: Opportunity, Lead, Quote, or the API name of a custom object. | # PathAssistantStepInfo Represents guidance for a step on a Path. Available in Tooling API version 36.0 and later. ## Supported SOAP Calls update(), query() ## Supported REST HTTP Methods GET, PATCH ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Filter, Group, Sort Description The unique name of the path guidance information. | | Info | Type string Properties Filter, Nillable, Sort Description The text of the guidance displayed to the user in the user interface. | | IsDeleted | Type boolean Properties Sort Description Indicates whether the record has been moved to the Recycle Bin (true) or not (false). | | Language | Type string Properties Filter, Group, Restricted picklist, Sort Description The language of the path. Valid values are: - 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 Spanish (Mexico) defaults to Spanish for customer-defined translations. - Swedish: sv - Thai: th The Salesforce user interface is fully translated to Thai, but Help is in English. | | MasterLabel | Type string Properties Filter, Group, Sort Description Label for this path guidance information record. | # PathAssistantStepItem Represents layout or guidance details for a step on a Path. Available in Tooling API version 36.0 and later. ## Supported SOAP Calls query() ## Supported REST HTTP Methods GET ## Fields | Field | Details | | --- | --- | | IsDeleted | Type boolean Properties Sort Description Indicates whether the record has been moved to the Recycle Bin (true) or not (false). | | ItemId | Type ID Properties Filter, Group, Sort Description A foreign key field pointing to the Type field that represents either the layout (if Type is set to Layout) or the PathAssistantStepInfo (if Type is set to Information) of this guidance detail. | | PathAssistantId | Type ID Properties Filter, Group, Sort Description ID of the PathAssistant related to this step. | | RecordTypeId | Type ID Properties Filter, Group, Nillable, Sort Description ID of the record type associated with this path. | | Type | Type string Properties Filter, Group, Sort Description The type of data that ItemId refers to. Valid values are: - Information - Layout | # PaymentGatewayProvider Represents the payment gateway provider processing payments. This object is available in API version 48.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeLayout(), describeSObjects(), query(), retrieve(), search(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules To access Salesforce Payments objects with the API, your org must have one or more of these licenses: Salesforce Payments, Salesforce Order Management, B2B Commerce, or D2C Commerce. Salesforce Payments objects are available only in Lightning Experience. ## Fields | Field | Details | | --- | --- | | ApexAdapterId | Type reference Properties Filter, Group, Nillable, Sort Description The Apex adapter reference for your payment gateway. This field is unique within your organization. This field is a relationship field. This field is a relationship field. Relationship Name ApexAdapter Relationship Type Lookup Refers To ApexClass | | Comments | Type textarea Properties Filter, Nillable, Sort Description Additional details about the payment gateway provider . Max length is 1000 characters. | | DeveloperName | Type string Properties Filter, Group, Sort Description Required. 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 organization. Label is **Record Type Name**. This field is automatically generated, but you can supply your own value if you create the record using the API. | | Fullname | Type string Properties Create, Group, Nillable Description The full name of the associated in Metadata API. The full name can include a namespaceprefix. 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. | | IdempotencySupported | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description Indictes whether idempotency can be used. Possible values are: - No - Yes The default value is No. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the PaymentGatewayProvider. Possible values are: - da—Danish - de—German - en\_US—English - es—Spanish - es\_MX—Spanish (Mexico) - fi—Finnish - fr—French - it—Italian - ja—Japanese - ko—Korean - nl\_NL—Dutch - no—Norwegian - pt\_BR—Portuguese (Brazil) - ru—Russian - sv—Swedish - th—Thai - zh\_CN—Chinese (Simplified) - zh\_TW—Chinese (Traditional) | | LastViewedDate | Type dateTime Properties Filter, Nillable, Sort Description The timestamp when the current user last viewed this record or list view. A null value may mean that the user only accessed this record or list view (LastReferencedDate) but did not view it. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, idLookup, Sort Description Label for the PaymentGatewayProvider. In the UI, this field is Payment Gateway Provider. | | Metadata | Type PaymentGatewayProvider Properties Create, Nillable, Update Description The PaymentGatewayProvider’s metadata. 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 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 the following values: - In Developer Edition organizations, the namespace prefix is set to the namespace prefix of the organization for all objects that support it. There is 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 are not Developer Edition organizations, NamespacePrefix is only set for objects that are part of an installed managed package. There is no namespace prefix for all other objects. | # PermissionDependency Represents permission dependencies for a specified permission. For example, return all child dependencies for the Modify All Data permission. Available in Tooling API version 46.0 and later. ## Supported SOAP Calls describeSObjects(), query(), retrieve() ## Supported REST HTTP Methods Query, GET ## Special Access Rules As of Summer ’20 and later, only users with View Setup and Configuration permission can access this object. ## Fields | Field Name | Details | | --- | --- | | Permission | Type string Properties Filter Description The permission that depends on other permissions to be enabled. For example, the permission might be Modify All Data, which requires View All Data and other permissions to be enabled. | | PermissionType | Type string Properties Filter Description The permission type. For example, user permissions, such as View All Data, or object permissions. | | RequiredPermission | Type string Properties Filter Description The permission that is required to be enabled for the dependent permission to be enabled. | | RequiredPermissionType | Type string Properties Filter Description The permission type. For example, user permissions, such as View All Data, or object permissions. | ## Usage Use the PermissionDependency object to find the permissions on which a specified permission is dependent. # PermissionSet Represents a set of permissions that’s used to grant more access to users without changing their profile or reassigning profiles. Available in API version 28.0 and later. ## Supported SOAP Calls describeSObjects(), query(), retrieve(), search() ## Special Access Rules As of Summer ’20 and later, only users who have one of these permissions can access this object: - View Setup and Configuration - Manage Session Permission Set Activations - Assign Permission Sets - Manage Profiles and Permission Sets To view the following settings, assignments, and permissions for standard and custom objects in a specified permission set, the View Setup and Configuration permission is required. - Client settings - Field permissions - Layout assignments - Object permissions - Permission dependencies - Permission set tab settings - Permission set group components - Record types ## Fields | Field Name | Details | | --- | --- | | Description | Type string Properties Filter, Nillable, Group, Sort Description A description of the permission set. Limit: 255 characters. | | HasActivationRequired | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether the permission set requires an associated active session (true) or not (false). | | IsCustom | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the permission set is custom (created by an admin); if false, the permission set is standard and related to a specific permission set license. | | IsOwnedByProfile | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the permission set is owned by a profile. Available in API version 25.0 and later. | | Label | Type string Properties Filter, Group, Sort Description The permission set label, which corresponds to **Label** in the user interface. Limit: 80 characters. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | Name | Type string Properties Filter, Group, Sort Description The permission set group name. | | NamespacePrefix | Type string 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. This field is available in API version 30.0 and later. The namespace prefix can have one of the following values: In Developer Edition organizations, the namespace prefix is set to the namespace prefix of the organization for all objects that support it. There is 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 are not Developer Edition organizations, NamespacePrefix is only set for objects that are part of an installed managed package. There is no namespace prefix for all other objects. | | PermissionSetGroupId | Type reference Properties Filter, Group, Nillable, Sort Description If the permission set is owned by a permission set group, this field returns the ID of the permission set group. If the permission set isn’t owned by a permission set group, this field returns a null value. Available in API version 45.0 and later. | | ProfileId | Type reference Properties Filter, Group, Nillable, Sort Description If the permission set is owned by a profile, this field returns the ID of the profile. If the permission set isn’t owned by a profile, this field returns a null value. | | Type | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The permission set type. | # PermissionSetAssignment Represents a user’s assignment to a permission set or permission set group. This object is available in API version 22.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules As of Summer ’20 and later, only users who have one of these permissions can access this object: - View Setup and Configuration - Assign Permission Sets - Manage User ## Fields | Field | Details | | --- | --- | | AssigneeId | Type reference Properties Create, Filter, Group, Sort Description The ID of the user that is assigned the permission set indicated in PermissionSetId or the permission set group indicated in PermissionSetGroupId. This field is a relationship field. Relationship Name Assignee Relationship Type Lookup Refers To User | | ExpirationDate | Type dateTime Properties Create, Filter, Nillable, Sort, Update Description The date that the assignment of the permission set or permission set group expires for the specified user. This field is available in API version 52.0 and later. | | IsActive | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether the assignment is active (true) or not (false). This field is available in API version 52.0 and later. The default value is false. | | IsRevoked (Beta) | Type boolean Properties Defaulted on create, Filter, Group, Sort, Update Description Indicates whether the assignment was revoked (true) or not (false). This field is available in API version 57.0 and later. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note This feature is a Beta Service. Customer may opt to try such Beta Service in its sole discretion. Any use of the Beta Service is subject to the applicable Beta Services Terms provided at [Agreements and Terms](https://www.salesforce.com/company/legal/agreements/). The default value is false. | | LastCreatedByChangeId (Beta) | Type reference Properties Filter, Group, Nillable, Sort Description The ID of the user access change record related to this permission set or permission set group assignment. This field is available in API version 57.0 and later. This field is a relationship field. Relationship Name LastCreatedByChange Relationship Type Lookup Refers To UserAccessChange ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note This feature is a Beta Service. Customer may opt to try such Beta Service in its sole discretion. Any use of the Beta Service is subject to the applicable Beta Services Terms provided at [Agreements and Terms](https://www.salesforce.com/company/legal/agreements/). | | LastDeletedByChangeId (Beta) | Type reference Properties Create, Filter, Group, Sort Description The ID of the user access change record related to this permission set or permission set group assignment being revoked. This field is available in API version 57.0 and later. This field is a relationship field. Relationship Name LastCreatedByChange Relationship Type Lookup Refers To UserAccessChange ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note This feature is a Beta Service. Customer may opt to try such Beta Service in its sole discretion. Any use of the Beta Service is subject to the applicable Beta Services Terms provided at [Agreements and Terms](https://www.salesforce.com/company/legal/agreements/). | | PermissionSetGroupId | Type reference Properties Create, Filter, Group, Nillable, Sort Description The ID of the permission set group assigned to the user specified in AssigneeId. This field is available in API version 45.0 and later. This field is a relationship field. Relationship Name PermissionSetGroup Relationship Type Lookup Refers To PermissionSetGroup | | PermissionSetId | Type reference Properties Create, Filter, Group, Nillable, Sort Description The ID of the permission set assigned to the user specified in AssigneeId. This field is a relationship field. Relationship Name PermissionSet Relationship Type Lookup Refers To PermissionSet | # PermissionSetGroup Represents a group of permission sets and the permissions within them. Use permission set groups to organize permissions based on job functions or tasks. Then, you can package the groups as needed. Available in Tooling API version 45.0 and later. ## Supported SOAP Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods Query, GET, POST, PATCH, DELETE ## Special Access Rules As of Summer ’20 and later, to view this object, users must have one of these permissions: - View Setup and Configuration - Manage Session Permission Set Activations - Assign Permission Sets To edit this object, users must have the Manage Profiles and Permission Sets permission. ## Fields | Field Name | Details | | --- | --- | | Description | Type textarea Properties Create, Filter, Group, Nillable, Sort, Query, Retrieve Update Description The permission set group description. | | DeveloperName | Type string Properties Create, Filter, Group, NameField, Sort, Update Description The permission set group name used in the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | HasActivationRequired | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether the permission set group requires an associated active session (true) or not (false). The default value is false.This field is available in API version 53.0 and later. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The Permission Set Group language. Valid values are: - 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 Spanish (Mexico) defaults to Spanish for customer-defined translations. - Swedish: sv - Thai: th The Salesforce user interface is fully translated to Thai, but Help is in English. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description The permission set group label for the aggregated permissions. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The permission set group namespace prefix. | | Status | Type string Properties DefaultedOnCreate, Filter, Group, Restricted picklist, Sort Description Indicates the permission set group recalculation status. - Updated. The group is current. - Outdated. The group requires recalculation. - Updating. The group is in recalculation mode. - Failed. The group recalculation failed. | ## Usage Use the PermissionSetGroup object to query existing permission set groups and to find which aggregated permissions are included in the group. # PermissionSetGroupComponent A junction object that relates the PermissionSetGroup and PermissionSet objects via their respective IDs; enables permission set group recalculation to determine the aggregated permissions for the group. Available in Tooling API version 45.0 and later. ## Supported Calls create(), delete(), describeSObject() , query(), retrieve() ## Supported REST HTTP Methods Query, GET, POST, PATCH, DELETE ## Special Access Rules As of Spring ’20 and later, only users with the View Setup and Configuration permission can access this object. ## Fields | Field Name | Details | | --- | --- | | PermissionSet | Type sObject Properties Create, Filter, Group, Sort Description The permission set containing the permission set component. | | PermissionSetGroup | Type PermissionSetGroup Properties Create, Filter, Group, Sort Description The name of the permission set group. | | PermissionSetGroupId | Type ID Properties Create, Filter, Group, Sort Description The ID of the permission set group containing the permission set component. | | PermissionSetId | Type ID Properties Create, Filter, Group, Sort Description The ID of the permission set. | ## Usage Use the PermissionSetGroupComponent object to add members to or delete members from a permission set group, or to query for group members. # PermissionSetTabSetting Represents a tab’s settings for a profile or permission set. Use PermissionSetTabSetting for manipulating tab visibility on profiles and permission sets. Available in Tooling API version 37.0 and later. ## Supported SOAP Calls create(), delete(), query(), retrieve(), update() ## Supported REST HTTP Methods Query, GET, POST, PATCH, DELETE ## Special Access Rules As of Spring ’20 and later, only users with View Setup and Configuration permission can access this object. ## Fields | Field Name | Details | | --- | --- | | Name | Type string Properties Create, Filter, Group Description The tab’s API name. For standard tabs, the name is in the form “standard-Account”. For custom tabs, it’s the developer name. | | ParentId | Type reference Properties Create, Filter, Group Description The ID of the permission set to which this tab setting belongs. For profile tab settings, ParentId is the ID of the permission set owned by the profile. | | Visibility | Type picklist Properties Create, Filter, Group, Restricted picklist Description The default visibility setting for this tab. Valid values are: - Default Off - Default On ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note There’s no _hidden_ value. Instead, a hidden tab is indicated by having no PermissionSetTabSetting row in the database. | ## Usage To hide a tab, delete the associated PermissionSetTabSetting object. ParentId and Name fields can’t be updated. This example creates a tab setting to make the custom object tab named CustomObject\_\_c visible for the System Administrator profile. try { // Query for the ID of the permission set owned by the System Administrator profile String queryString = "SELECT Id FROM PermissionSet + WHERE Profile.Name = 'System Administrator'"; QueryResult queryResult = connection.query(queryString); if (queryResult.getSize() > 0) { // Construct the tab setting sObject PermissionSetTabSetting tabSetting = new PermissionSetTabSetting(); tabSetting.setParentId(queryResult.getRecords()\[0\].getId()); tabSetting.setName("CustomObject\_\_c"); tabSetting.setVisibility(TabVisibility.DefaultOn); SObject\[\] sObjects = new SObject\[\] { tabSetting }; // Create the tab setting SaveResult\[\] saveResults = connection.create(sObjects); for (SaveResult saveResult : saveResults) { if (saveResult.isSuccess()) { System.out.println("Successfully created the tab setting."); System.out.println("ID: " + saveResult.getId()); } else { Error error = saveResult.getErrors()\[0\]; System.out.println("Failed to create the tab setting."); System.out.println("Status code: " + error.getStatusCode()); System.out.println("Message: " + error.getMessage()); } } } else { System.out.println("Failed to find the ID of the permission set."); } } catch (ConnectionException ce) { ce.printStackTrace(); } This example updates the existing tab setting to make the Account tab available instead of visible for the Standard User profile. try { // Query for the ID of the tab setting for the Account tab on the Standard User profile String queryString = "SELECT Id FROM PermissionSetTabSetting " + "WHERE Parent.Profile.Name = 'Standard User' AND Name = 'standard-Account'"; QueryResult queryResult = connection.query(queryString); if (queryResult.getSize() > 0) { // Change the visibility PermissionSetTabSetting tabSetting = (PermissionSetTabSetting)queryResult.getRecords()\[0\]; tabSetting.setVisibility(TabVisibility.DefaultOff); // Update the tab setting SObject\[\] sObjects = new SObject\[\] { tabSetting }; SaveResult\[\] saveResults = connection.update(sObjects); for (SaveResult saveResult : saveResults) { if (saveResult.isSuccess()) { System.out.println("Successfully updated the tab setting."); System.out.println("ID: " + saveResult.getId()); } else { Error error = saveResult.getErrors()\[0\]; System.out.println("Failed to update the tab setting."); System.out.println("Status code: " + error.getStatusCode()); System.out.println("Message: " + error.getMessage()); } } } else { System.out.println("Failed to find the ID of the tab setting."); } } catch (ConnectionException ce) { ce.printStackTrace(); } The example deletes the existing tab setting to make the Account tab hidden for the Standard User profile. try { // Query for the ID of the tab setting for the Account tab on the Standard User profile String queryString = "SELECT Id FROM PermissionSetTabSetting " + "WHERE Parent.Profile.Name = 'Standard User' AND Name = 'standard-Account'"; QueryResult queryResult = connection.query(queryString); if (queryResult.getSize() > 0) { // Delete the tab setting String\[\] ids = new String\[\] { queryResult.getRecords()\[0\].getId() }; DeleteResult\[\] deleteResults = connection.delete(ids); for (DeleteResult deleteResult : deleteResults) { if (deleteResult.isSuccess()) { System.out.println("Successfully deleted the tab setting."); System.out.println("ID: " + deleteResult.getId()); } else { Error error = deleteResult.getErrors()\[0\]; System.out.println("Failed to delete the tab setting."); System.out.println("Status code: " + error.getStatusCode()); System.out.println("Message: " + error.getMessage()); } } } else { System.out.println("Failed to find the ID of the tab setting."); } } catch (ConnectionException ce) { ce.printStackTrace(); } # PipelineInspMetricConfig Represents the configuration of a forecast category metric that appears in the Pipeline Inspection view. This object is available in API version 55.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description Read only. The unique name of Pipeline Inspection metric configuration in the API. | | IsCumulative | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Read only. Whether the metric is cumulative. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description Read only. The language of the Pipeline Inspection metric. | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description Customized label of the Pipeline Inspection metric. Limit: 50 characters. | | Metric | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort Description The Pipeline Inspection metric. Possible values are: - BestCase - ClosedLost - ClosedWon - Commit - MostLikely - OpenPipeline - TotalPipeline | # PlatformEventChannel Represents a custom channel that you can subscribe to in order to receive a stream of change data capture events. This object is available in API version 47.0 and later. ## Supported SOAP Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules - To retrieve or query this object, you must have the View Setup and Configuration permission. - To create, update, or delete this object, you must have the Customize Application permission. ## Fields | Field Name | Description | | --- | --- | | ChannelType | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Required. The channel type. Valid values are: - data—Change Data Capture channel corresponding to the selected entities. - event—A channel that contains platform events. | | DeveloperName | Type string Properties Filter, Group, Sort Description The unique name for the PlatformEventChannel object. The developer name doesn’t include the \_\_chn custom channel suffix. For example, the developer name of the MyChannel\_\_chn custom channel is MyChannel. 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 is automatically generated, but you can supply your own value if you create the record using the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note - When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance slows down while Salesforce generates one for each record. - Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | EventType | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The type of events that the channel can hold. A channel can hold only one type of events. Use this field to optionally specify a specific type of events for a channel in combination with the ChannelType field. Valid values are: - custom—The channel contains custom platform events. This value is valid with the channelType of event. - data—The channel contains change data capture events. This value is valid with the channelType of data. - monitoring—The channel contains Real-Time Event Monitoring events. This value is valid with the channelType of event. - standard—Reserved for internal use. Available in API version 61.0 and later. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated PlatformEventChannel in Metadata API. The full name can include a namespace prefix. The full name includes the \_\_chn custom channel suffix. For example, the full name of the MyChannel custom channel is MyChannel\_\_chn. 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. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the MasterLabel. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description The channel label. The label of this field is Label. | | Metadata | Type complexvalue Properties Create, Nillable, Update Description Platform event channel metadata. 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 Properties Filter, Group, Nillable, Sort Description The namespace prefix that is 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 Developer Edition orgs, NamespacePrefix is set to the namespace prefix of the org for all objects that support it, unless 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 orgs that are not Developer Edition orgs, NamespacePrefix is set only for objects that are part of an installed managed package. All other objects have no namespace prefix. | ## Usage This JSON example is the body of a REST API POST request that creates the SalesEvents\_\_chn custom channel. The corresponding REST endpoint is /services/data/v68.0/tooling/sobjects/PlatformEventChannel. { "FullName": "SalesEvents\_\_chn", "Metadata": { "channelType": "data", "label": "My Custom Channel" } } ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note - You can update only the FullName field and the metadata label field of a PlatformEventChannel. - If you delete a PlatformEventChannel, all its member PlatformEventChannelMember components are also deleted. You can query custom channels in SOQL over Tooling API but not the standard channel (ChangeEvents). For example, this query returns fields of channel members from all custom channels. SELECT Id, DeveloperName, ChannelType, MasterLabel FROM PlatformEventChannel #### See Also - [_Change Data Capture Developer Guide_: Subscription Channels](https://developer.salesforce.com/docs/atlas.en-us.264.0.change_data_capture.meta/change_data_capture/cdc_subscribe_channels.htm "Change Data Capture Developer Guide: Subscription Channels - HTML (New Window)") - [_Change Data Capture Developer Guide_: Compose Streams of Change Data Capture Notifications with Custom Channels](https://developer.salesforce.com/docs/atlas.en-us.264.0.change_data_capture.meta/change_data_capture/cdc_custom_channel.htm "Change Data Capture Developer Guide: Compose Streams of Change Data Capture Notifications with Custom Channels - HTML (New Window)") - [PlatformEventChannelMember](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_platformeventchannelmember.htm "Represents an entity selected for Change Data Capture notifications on a standard or custom channel, or a platform event selected on a custom channel.") # PlatformEventChannelMember Represents an entity selected for Change Data Capture notifications on a standard or custom channel, or a platform event selected on a custom channel. This object is available in API version 47.0 and later. ## Supported SOAP Calls create(), delete(), describeSObjects(), query(), retrieve(), update() ## Supported REST HTTP Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules - To retrieve or query this object, you must have the View Setup and Configuration permission. - To create, update, or delete this object, you must have the Customize Application permission. - The EventChannel and SelectedEntity fields can’t be updated. ## Fields | Field Name | Description | | --- | --- | | DeveloperName | Type string Properties Filter, Group, Sort Description The unique name for the PlatformEventChannelMember object. 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 is automatically generated, but you can supply your own value if you create the record using the API. The developer name is in the format ChannelName\_EventName. If your channel member name contains a custom channel name to make it unique, ensure to replace the double underscores in the name with one underscore. For example, the developer name of a member of the MyChannel\_\_chn custom channel is MyChannel\_chn\_AccountChangeEvent. And the developer name of a member of the default standard channel is ChangeEvents\_AccountChangeEvent. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note - When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance slows down while Salesforce generates one for each record. - Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | EventChannel | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The name of a channel. For the standard channel, the name is ChangeEvents. For a custom channel, the name is in this format: MyChannel\_\_chn. | | FilterExpression | Type textarea Properties Nillable Description An expression that is used to filter the stream of events and deliver only the events that match specific criteria. The filter expression can contain one or more field-value expressions. The filter expression format is based on SOQL and supports a subset of SOQL operators and field types. For example, this filter expression delivers only events that contain the City\_\_c field with a value of 'San Francisco'. City\_\_c = 'San Francisco' For more information, see [Filter Your Stream of Platform Events with Channels](https://developer.salesforce.com/docs/atlas.en-us.264.0.platform_events.meta/platform_events/platform_events_filter_section.htm "HTML (New Window)") in the Platform Events Developer Guide and [Filter Your Stream of Change Events with Channels](https://developer.salesforce.com/docs/atlas.en-us.264.0.platform_events.meta/platform_events/cdc_filter_section.htm "HTML (New Window)") in the Change Data Capture Developer Guide. Available in API version 56.0 and later. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated PlatformEventChannelMember object in Metadata API. The full name is in the format ChannelName\_EventName and can include a namespace prefix. Two consecutive underscores in full names designate either a component name suffix or a namespace prefix. In all other cases, two consecutive underscores aren’t supported in full names. If your channel member name contains a custom channel name to make it unique, be sure to replace the double underscores in the name with one underscore. For example, the member name would be MyChannel\_chn\_AccountChangeEvent and not MyChannel\_\_chn\_AccountChangeEvent. 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. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Restricted picklist, Sort Description The language of the MasterLabel. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | Metadata | Type complexvalue Properties Create, Nillable, Update Description Platform event channel member metadata. 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 Properties Filter, Group, Nillable, Sort Description The namespace prefix that is 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 Developer Edition orgs, NamespacePrefix is set to the namespace prefix of the org for all objects that support it, unless 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 orgs that aren’t Developer Edition orgs, NamespacePrefix is set only for objects that are part of an installed managed package. All other objects have no namespace prefix. | | SelectedEntity | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The change event name of an entity selected for Change Data Capture notifications. For example, for the Account standard object, the name is AccountChangeEvent, or for a custom object MyObject\_\_c, the name is MyObject\_\_ChangeEvent. | ## Usage This JSON example is the body of a REST API POST request. It adds a member to a custom channel named SalesEvents\_\_chn. The corresponding REST endpoint is /services/data/v68.0/tooling/sobjects/PlatformEventChannelMember. { "FullName": "SalesEvents\_chn\_AccountChangeEvent", "Metadata": { "eventChannel": "SalesEvents\_\_chn", "selectedEntity": "AccountChangeEvent" } } To add a member to the ChangeEvents default channel, the request body looks as follows. { "FullName": "ChangeEvents\_AccountChangeEvent", "Metadata": { "eventChannel": "ChangeEvents", "selectedEntity": "AccountChangeEvent" } } You can query PlatformEventChannelMember in SOQL over Tooling API. For example, this query returns fields of all channel members on all channels. SELECT Id,DeveloperName,EventChannel,SelectedEntity FROM PlatformEventChannelMember ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note For custom channels, the EventChannel value that the query returns is the channel ID, which starts with the 0YL prefix. You can configure a channel member to include extra fields in change events as part of Change Data Capture Enrichment. For more information, see [Example: Add Event Enrichment Fields with Tooling API](https://developer.salesforce.com/docs/atlas.en-us.264.0.change_data_capture.meta/change_data_capture/cdc_enrich_tooling_api.htm "HTML (New Window)") in the Change Data Capture Developer Guide. #### See Also - [_Change Data Capture Developer Guide_: Filter Your Stream of Change Events with Channels](https://developer.salesforce.com/docs/atlas.en-us.264.0.change_data_capture.meta/change_data_capture/cdc_filter_section.htm "Change Data Capture Developer Guide: Filter Your Stream of Change Events with Channels - HTML (New Window)") - [_Platform Events Developer Guide_: Filter Your Stream of Platform Events with Channels](https://developer.salesforce.com/docs/atlas.en-us.264.0.platform_events.meta/platform_events/platform_events_filter_section.htm "Platform Events Developer Guide: Filter Your Stream of Platform Events with Channels - HTML (New Window)") - [_Change Data Capture Developer Guide_: Example Diagrams for Channels and Channel Members](https://developer.salesforce.com/docs/atlas.en-us.264.0.change_data_capture.meta/change_data_capture/cdc_channel_examples.htm "Change Data Capture Developer Guide: Example Diagrams for Channels and Channel Members - HTML (New Window)") - [_Platform Events Developer Guide_: Filter Your Stream of Platform Events with Channels (Beta)](https://developer.salesforce.com/docs/atlas.en-us.264.0.platform_events.meta/platform_events/platform_events_filter_section.htm "Platform Events Developer Guide: Filter Your Stream of Platform Events with Channels (Beta) - HTML (New Window)") - [PlatformEventChannel](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_platformeventchannel.htm "Represents a custom channel that you can subscribe to in order to receive a stream of change data capture events.") # PlatformEventMigration Represents configuration settings for performing a one-time migration of standard volume platform events to high volume platform events. This object is available in API version 67.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, PATCH, POST ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description The unique name for the PlatformEventMigration object. 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 is automatically generated, but you can supply your own value if you create the record using the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance can slow down while Salesforce generates one for each record. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | EventObject | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description The ID of a standard volume platform event that needs to be migrated to a high volume platform event. You can find the ID by executing this Tooling API SOQL query in the developer console: SELECT Id FROM CustomObject WHERE DeveloperName='YourStandardVolumePlatformEvent' The name to use as the DeveloperName of your SVPE is labeled Object Name in the UI. | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description Label for PlatformEventMigration. | ## Usage All standard volume platform events must be migrated to high volume platform events before Winter ‘27. This API provides a means for migration. Standard volume platform events that aren’t migrated won’t work starting in Winter ‘27. Before starting a migration, ensure that all publish activity has stopped and all subscribers, including triggers and flows, are done processing, then perform a POST request to this endpoint. /services/data/v67.0/tooling/sobjects/PlatformEventMigration Provide the values in the request body. This example request starts migrating the standard volume platform event 01Ixx0000005aUJ to a high volume platform event. { "DeveloperName":"svpeConfig", "MasterLabel":"svpeConfig", "EventObject": "01Ixx0000005aUJ" } A successful POST request returns a response that includes an ID. { "id":"1hXxx00000000mPEAQ", "Success":true, "Errors":\[\], "Warnings":\[\], "infos":\[\] } To check the status of your migration, use the ID in a GET request to this endpoint. /services/data/v67.0/tooling/sobjects/PlatformEventMigration All these requests use the endpoint with the PlatformEventMigration record ID appended. - Get the status of a specific migration with a GET request. - Delete a specific migration with a DELETE request. Deleting a migration may not work because the migration could finish processing before the DELETE request is received. Because migration is a one-way door, it can’t be undone after it’s already happened. - Update a specific migration with a PATCH request. For this request, include the PlatformEventMigration definition in the request body. Once a migration has started, publishes won’t work and you’ll be unable to create new triggers or flows until the migration finishes. A migration usually takes 10–15 minutes, but can last as long as 24 hours in some cases. You will receive an email when the migration is complete. Also, you can query and retrieve the configurations in your org with SOQL. If querying from the Developer Console Query Editor, ensure that you select Use Tooling API. This example query retrieves all configurations set up in your Salesforce org. SELECT Id, DeveloperName, MasterLabel, EventObject, MigrationStatus, StartDate, EndDate, HighVolumePosition FROM PlatformEventMigration # PlatformEventSubscriberConfig Represents configuration settings for a platform event Apex trigger, including the batch size and the trigger’s running user. This object is available in API version 51.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | BatchSize | Type int Properties Create, Filter, Group, Nillable, Sort, Update Description A custom batch size, from 1 through 2,000, for the platform event Apex trigger. The batch size corresponds to the maximum number of event messages that can be sent to a trigger in one execution. The default batch size is 2,000 for platform event triggers. We don't recommend setting the batch size to 1 to process one event at a time. Small batch sizes can slow down the processing of event messages. | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description The unique name for the PlatformEventSubscriberConfig object. 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 is automatically generated, but you can supply your own value if you create the record using the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance can slow down while Salesforce generates one for each record. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The language of PlatformEventSubscriberConfig. Possible values are: - da—Danish - de—German - en\_US—English - es—Spanish - es\_MX—Spanish (Mexico) - fi—Finnish - fr—French - it—Italian - ja—Japanese - ko—Korean - nl\_NL—Dutch - no—Norwegian - pt\_BR—Portuguese (Brazil) - ru—Russian - sv—Swedish - th—Thai - zh\_CN—Chinese (Simplified) - zh\_TW—Chinese (Traditional) | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description Label for PlatformEventSubscriberConfig. In the UI, this field is Platform Event Subscriber Configuration. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The namespace prefix that is 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 these values. - In Developer Edition orgs, NamespacePrefix is set to the namespace prefix of the org for all objects that support it, unless 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 orgs that aren’t Developer Edition orgs, NamespacePrefix is set only for objects that are part of an installed managed package. All other objects have no namespace prefix. | | NumPartitions | Type int Properties Create, Defaulted on create, Filter, Group, Nillable, Sort, Update Description Specifies the number of parallel subscriptions, or partitions, that are created internally for an Apex trigger. Use this field to set up parallel subscriptions for the platform event Apex trigger. It can be a number from 1 through 10. See [Platform Event Processing at Scale with Parallel Subscriptions for Apex Triggers](https://developer.salesforce.com/docs/atlas.en-us.264.0.platform_events.meta/platform_events/platform_events_ps.htm) in the Platform Events Developer Guide. The default value is 1. This field is available in API version 62.0 and later. | | PartitionKey | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description Can be the standard EventUuid field name, or the name of a required custom field of the custom platform event that the Apex trigger subscribes to. For the standard EventUuid field, the partition key format is the field name without the event name: EventUuid. For a custom field, the partition key includes the event name as a prefix in this format: EventName\_\_e.FieldName\_\_c. Based on the field’s generated hash value, the system determines which partition to send the event to. Use this field to specify the platform event field that is used as a partition key for parallel subscriptions. See [Platform Event Processing at Scale with Parallel Subscriptions for Apex Triggers](https://developer.salesforce.com/docs/atlas.en-us.264.0.platform_events.meta/platform_events/platform_events_ps.htm) in the Platform Events Developer Guide. The default value is EventUuid. This field is available in API version 62.0 and later. | | PlatformEventConsumerId | Type reference Properties Create, Filter, Group, Sort, Update Description The ID of the platform event Apex trigger to configure. This field is unique within your Salesforce org. To get the Apex trigger ID, perform a query in Tooling API after replacing the placeholder name with the trigger name. SELECT Id FROM ApexTrigger WHERE Name=''. You can run the Tooling API query in the Developer Console’s Query Editor. For more information, see [Developer Console](https://help.salesforce.com/s/articleView?id=platform.code_dev_console.htm&type=5&language=en_US) in Salesforce Help. | | UserId | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description The ID of the user that the platform event Apex trigger runs as. By default, the platform event trigger runs as the Automated Process entity. Setting the running user to a specific user has these benefits: - Records are created or modified as this user. - Records with OwnerId fields have their OwnerId fields populated to this user when created or modified. - Debug logs for the trigger execution are created by this user. - You can send email from the trigger, which isn’t supported with the default Automated Process user. | ## Usage To add a configuration, perform a POST request to this endpoint. /services/data/v68.0/tooling/sobjects/PlatformEventSubscriberConfig Provide the values in the request body. This example request configures an existing trigger with the batch size of 200 and specifies the ID of a running user. { "BatchSize": "200", "DeveloperName":"OrderEventTriggerConfig", "MasterLabel":"OrderEventTriggerConfig", "PlatformEventConsumerId": "01qRM0000004PEhYAM", "UserId": "005RM00000231cZYAQ" } To get or manipulate a configuration, use this endpoint with the ID of your PlatformEventSubscriberConfig record appended. /services/data/v68.0/tooling/sobjects/PlatformEventSubscriberConfig/ All these requests use the endpoint with the PlatformEventSubscriberConfig record ID appended. - Get a specific configuration with a GET request. - Delete a specific configuration with a DELETE request. - Update a specific configuration with a PATCH request. For this request, include the PlatformEventSubscriberConfig definition in the request body. Also, you can query retrieve the configurations in your org with SOQL. If querying from the Developer Console Query Editor, ensure you select **Use Tooling API**. This example query retrieves all configurations set up in your Salesforce org. SELECT Id,DeveloperName,BatchSize,PlatformEventConsumerId,UserId FROM PlatformEventSubscriberConfig # PostTemplate Represents an approval post template for Approvals in Chatter. This object is available in API version 35.0 and later. ## Supported SOAP Calls query(), retrieve(), search(), update() ## Supported REST HTTP Methods GET, PATCH ## Fields | Field | Details | | --- | --- | | Description | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description A description of the feed post template, limited to 255 characters. | | EntityDefinition | Type [EntityDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_entitydefinition.htm "Provides row-based access to metadata about standard and custom objects.") Properties Filter, Group, Sort Description A relationship lookup to the object type associated with this PostTemplate. You can’t interact directly with this field. Instead, use it in queries. | | EntityDefinitionId | Type string Properties Filter, Group, Sort Description The durable ID for the object defined in the EntityDefinition field. | | Name | Type string Properties Create, Filter, Group, idLookup, Sort, Update Description The template name. | # PresenceDeclineReason Represents the reason an agent can select when declining an Omni-Channel work request. This object is available in API version 65.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules Available only if Omni-Channel is enabled in your org. ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description The unique name of the object in the API. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The language of the presence decline reason. | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description The label of the presence decline reason. | # PresenceUserConfig Represents a configuration that determines a presence user’s settings. This object is available in API version 65.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules Available only if Omni-Channel is enabled in your org. ## Fields | Field | Details | | --- | --- | | AcwExtensionDuration | Type int Properties Create, Filter, Group, Nillable, Sort, Update Description The maximum length of time, measured in seconds, an agent can spend on After Conversation Work (ACW) each time they extend the timer. You must set this field if HasAcwExtensionEnabled is set to true. Specify a value from 10 through 3600. | | AfterConvoWorkMaxTime | Type int Properties Create, Filter, Group, Nillable, Sort, Update Description The maximum length of time, measured in seconds, an agent has to complete ACW. You must set this field if HasAfterConvoWorkTimer is set to true. Specify a value from 10 through 3600. | | Capacity | Type int Properties Create, Filter, Group, Sort, Update Description The maximum number of work units an agent can be assigned at one time. | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description The unique name of the object in the API. | | HasAcwExtensionEnabled | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether agents can extend their ACW time (true) or not (false). Available only if HasAfterConvoWorkTimer is set to true. If this field is set to true, you must also set the AcwExtensionDuration and MaxExtensions fields. The default value is false. | | HasAfterConvoWorkTimer | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether ACW time can be configured for the agent (true) or not (false). If set to true, you must also set the AfterConvoWorkMaxTime field to true. The default value is false. | | InterruptibleCapacity | Type int Properties Create, Filter, Group, Nillable, Sort, Update Description The maximum number of work units using interruptible capacity that can be assigned to an agent at a time. If the value in this field is empty it defaults to the value set in the Capacity field. This field is available only when the [Interruptible Capacity](https://help.salesforce.com/s/articleView?id=service.omnichannel_interruptible_capacity.htm&type=5&language=en_US) feature is enabled. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The language of the presence configuration. | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description The label of the presence configuration. | | MaxExtensions | Type picklist Properties Create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description Maximum number of times an agent can extend their ACW time. Specify a value from 1 through 10. You must set this field if HasAcwExtensionEnabled is set to true. | # ProcessFlowMigration Represents a process's migrated criteria and the resulting migrated flow. This object is available in API version 58.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls describeSObjects(), query(), retrieve() ## Supported REST API Methods GET, HEAD, Query ## Fields | Field | Details | | --- | --- | | DestinationFlowDefinitionId | Type reference Properties Filter, Group, Sort Description The ID of the resulting migrated flow. This field is a relationship field. Relationship Name DestinationFlowDefinition Relationship Type Lookup Refers To FlowDefinition | | DestinationFlowVersionId | Type reference Properties Filter, Group, Nillable, Sort Description The version ID of the migrated flow. This field is a relationship field. Relationship Name DestinationFlowVersion Relationship Type Lookup Refers To Flow | | DeveloperName | Type string Properties Filter, Group, 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. | | Language | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Lanaguage of the MasterLabel. Possible values are: - af—Afrikaans - am—Amharic - ar—Arabic - ar\_AE—Arabic (United Arab Emirates) - ar\_BH—Arabic (Bahrain) - ar\_DZ—Arabic (Algeria) - ar\_EG—Arabic (Egypt) - ar\_IQ—Arabic (Iraq) - ar\_JO—Arabic (Jordan) - ar\_KW—Arabic (Kuwait) - ar\_LB—Arabic (Lebanon) - ar\_LY—Arabic (Libya) - ar\_MA—Arabic (Morocco) - ar\_OM—Arabic (Oman) - ar\_QA—Arabic (Qatar) - ar\_SA—Arabic (Saudi Arabia) - ar\_SD—Arabic (Sudan) - ar\_SY—Arabic (Syria) - ar\_TN—Arabic (Tunisia) - ar\_YE—Arabic (Yemen) - bg—Bulgarian - bn—Bengali - bs—Bosnian - ca—Catalan - cs—Czech - cy—Welsh - da—Danish - de—German - de\_AT—German (Austria) - de\_BE—German (Belgium) - de\_CH—German (Switzerland) - de\_LU—German (Luxembourg) - el—Greek - el\_CY—Greek (Cyprus) - en\_AE—English (United Arab Emirates) - en\_AU—English (Australian) - en\_BE—English (Belgium) - en\_CA—English (Canadian) - en\_CY—English (Cyprus) - en\_DE—English (Germany) - en\_GB—English (UK) - en\_HK—English (Hong Kong) - en\_IE—English (Ireland) - en\_IL—English (Israel) - en\_IN—English (Indian) - en\_MT—English (Malta) - en\_MY—English (Malaysian) - en\_NL—English (Netherlands) - en\_NZ—English (New Zealand) - en\_PH—English (Phillipines) - en\_SG—English (Singapore) - en\_US—English - en\_ZA—English (South Africa) - es—Spanish - es\_AR—Spanish (Argentina) - es\_BO—Spanish (Bolivia) - es\_CL—Spanish (Chile) - es\_CO—Spanish (Colombia) - es\_CR—Spanish (Costa Rica) - es\_DO—Spanish (Dominican Republic) - es\_EC—Spanish (Ecuador) - es\_GT—Spanish (Guatemala) - es\_HN—Spanish (Honduras) - es\_MX—Spanish (Mexico) - es\_NI—Spanish (Nicaragua) - es\_PA—Spanish (Panama) - es\_PE—Spanish (Peru) - es\_PR—Spanish (Puerto Rico) - es\_PY—Spanish (Paraguay) - es\_SV—Spanish (El Salvador) - es\_US—Spanish (United States) - es\_UY—Spanish (Uruguay) - es\_VE—Spanish (Venezuela) - et—Estonian - eu—Basque - fa—Farsi - fi—Finnish - fr—French - fr\_BE—French (Belgium) - fr\_CA—French (Canadian) - fr\_CH—French (Switzerland) - fr\_LU—French (Luxembourg) - fr\_MA—French (Morocco) - ga—Irish - gu—Gujarati - haw—Hawaiian - hi—Hindi - hmn—Hmong - hr—Croatian - ht—Haitian Creole - hu—Hungarian - hy—Armenian - in—Indonesian - is—Icelandic - it—Italian - it\_CH—Italian (Switzerland) - iw—Hebrew - ja—Japanese - ji—Yiddish - ka—Georgian - kk—Kazakh - kl—Greenlandic - km—Khmer - kn—Kannada - ko—Korean - lb—Luxembourgish - lt—Lithuanian - lv—Latvian - mi—Te reo - mk—Macedonian - ml—Malayalam - mr—Marathi - ms—Malay - mt—Maltese - my—Burmese - nl\_BE—Dutch (Belgium) - nl\_NL—Dutch - no—Norwegian - pa—Punjabi - pl—Polish - pt\_BR—Portuguese (Brazil) - pt\_PT—Portuguese (European) - rm—Romansh - ro—Romanian - ro\_MD—Romanian (Moldova) - ru—Russian - ru\_AM—Russian (Armenia) - ru\_BY—Russian (Belarus) - ru\_KG—Russian (Kyrgyzstan) - ru\_KZ—Russian (Kazakhstan) - ru\_LT—Russian (Lithuania) - ru\_MD—Russian (Moldova) - ru\_PL—Russian (Poland) - ru\_UA—Russian (Ukraine) - sh—Serbian (Latin) - sh\_ME—Montenegrin - sk—Slovak - sl—Slovene - sm—Samoan - sq—Albanian - sr—Serbian (Cyrillic) - sv—Swedish - sw—Swahili - ta—Tamil - te—Telugu - th—Thai - tl—Tagalog - tr—Turkish - uk—Ukrainian - ur—Urdu - vi—Vietnamese - xh—Xhosa - zh\_CN—Chinese (Simplified) - zh\_HK—Chinese (Hong Kong) - zh\_MY—Chinese (Malaysia) - zh\_SG—Chinese (Singapore) - zh\_TW—Chinese (Traditional) - zu—Zulu | | ManageableState | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package. Possible values are: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description The label for the ProcessFlowMigration. | | MigratedCriteriaLabel | Type string Properties Filter, Group, Nillable, Sort Description The label of the criteria that was migrated. | | MigratedCriteriaName | Type string Properties Filter, Group, Nillable, Sort Description The name of the criteria that was migrated. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The namespace of the package containing the process flow migration object. | | ProcessVersionId | Type reference Properties Filter, Group, Sort Description The version ID of the originating process. This field is a relationship field. Relationship Name ProcessVersion Relationship Type Lookup Refers To Flow | # ProductAttributeSet Used to group variation attributes that apply to one or more products. This object is available in API version 55.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules B2B Commerce or D2C Commerce must be enabled. ## Fields | Field | Details | | --- | --- | | Description | Type textarea Properties Filter, Group, Nillable, Sort Description A meaningful description of the product attribute set. Limited to 255 characters. | | DeveloperName | Type string Properties Filter, Group, Sort Description Required. 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 organization. Label is **Record Type Name**. This field is automatically generated, but you can supply your own value if you create the record using the API. Note: When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance may slow while Salesforce generates one for each record. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated ProductAttributeSet in Metadata API. The full name can include a namespace prefix. 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. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the product attribute set. Possible values are: - da—Danish - de—German - en\_US—English - es—Spanish - es\_MX—Spanish (Mexico) - fi—Finnish - fr—French - it—Italian - ja—Japanese - ko—Korean - nl\_NL—Dutch - no—Norwegian - pt\_BR—Portuguese (Brazil) - ru—Russian - sv—Swedish - th—Thai - zh\_CN—Chinese (Simplified) - zh\_TW—Chinese (Traditional) | | ManageableState | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description Label for the product attribute set. | | Metadata | Type [mns:ProductAttributeSet](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_productattributeset.htm) Properties Create, Nillable, Update Description The ProductAttributeSet's metadata. 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 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. | # 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. This object is available in API version 32.0 and later. ## Supported SOAP Calls getDeleted(), getUpdated(), query(), retrieve(), search() ## Supported REST HTTP Methods GET, HEAD ## Special Access Rules As of Summer ’20 and later, Customer Portal and Partner Portal users _cannot_ access this object. To view the following settings, assignments, and permissions for standard and custom objects in a specified profile, the View Setup and Configuration permission is required. - Client settings - Field permissions - Layout assignments - Object permissions - Permission dependencies - Permission set tab settings - Permission set group components - Record types As of API version 50.0 and later, only users with correct permissions can view profile names other than their own if the Profile Filtering setting is enabled. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important Profile names are also exposed when users with permissions to perform the following tasks take these actions: - Create a tab or record type with a wizard step that includes the assignment of tabs and record types to profiles. - Configure a login flow where viewing profile lists is required to make flow associations. - Set up delegated admins where looking up profiles is needed to identify assignable profiles. - Administer an org as a delegated customer admin. - Administer an org as a delegated admin to view and assign profiles of the delegated group. ## Fields | Field | Details | | --- | --- | | Description | Type string Properties Filter, Group, Nillable, Sort Description The profile description, limited to 255 characters. | | FullName | Type string Properties Create, Group, Nillable Description The unique profile name. Use this name when creating the profile, before you have an ID. 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. 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. | | Metadata | Type ProfileMetadata Properties Create, Nillable, Update Description The profile metadata. 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. | | Name | Type string Properties Filter, Group, idLookup, Sort Description The profile name. | | TimeSheetTemplateAssignments | Type tns:QueryResult Properties Nillable Description The time sheet template that you assign to a particular profile. Because this field represents a relationship, use it only in subqueries. This field is available in Tooling API version 46.0 and later. | # ProfileLayout Represents a profile layout. This object is available in API version 32.0 and later. ## Supported SOAP Calls query(), retrieve() ## Supported REST HTTP Methods GET ## Special Access Rules As of Summer ’20 and later, only users with the View Setup and Configuration permission can access this object. ## Fields | Field | Details | | --- | --- | | LayoutId | Type ID Properties Filter, Group, Sort Description The unique identifier for this layout. | | ProfileId | Type ID Properties Filter, Group, Sort Description The unique identifier for this profile. | | RecordTypeId | Type ID Properties Filter, Group, Sort Description The unique identifier for the record. | | TableEnumOrId | Type string Properties Filter, Group, Restricted picklist, Sort Description The enum (for example, Account) or ID of the object this field is on. | # Programming Objects Use programming objects to interact with programmatic artifacts: Apex, Visualforce, and Lightning. - **[ApexClass](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexclass.htm)**: Represents the saved copy of an Apex class. ApexClass uses the cached version of the class unless one is unavailable. - **[ApexClassMember](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexclassmember.htm)**: Represents the working copy of an Apex class for editing, saving, or compiling in a MetadataContainer. - **[ApexComponent](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexcomponent.htm)**: Represents the saved copy of a Visualforce component. ApexComponent uses the cached version of the class unless one is unavailable. - **[ApexComponentMember](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexcomponentmember.htm)**: Represents the working copy of a Visualforce component for editing, saving, or compiling in a MetadataContainer. - **[ApexPage](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexpage.htm)**: Represents the saved copy of a Visualforce page. ApexPage uses the cached version of the page unless one is unavailable. - **ApexExecutionOverlayAction**: Specifies an Apex code snippet or SOQL query to execute at a specific line of code in an Apex class or trigger. Optionally, generates a heap dump. - **[ApexPageMember](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexpagemember.htm)**: Represents the working copy of a Visualforce page for editing, saving, or compiling in a MetadataContainer. - **[ApexTrigger](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apextrigger.htm)**: Represents the saved copy of an Apex trigger. ApexTrigger uses the cached version of the class unless one is unavailable. - **[ApexTriggerMember](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apextriggermember.htm)**: Represents the working copy of an Apex trigger for editing, saving, or compiling in a MetadataContainer. - **[AuraDefinition](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_auradefinition.htm)**: Represents an Aura component definition, such as component markup, a client-side controller, or an event. - **[AuraDefinitionBundle](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_auradefinitionbundle.htm)**: Represents a Lightning Aura component definition bundle, such as a component or application bundle. A bundle contains a Lightning Aura component definition and all its related resources. - **[LightningComponentBundle](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_lightningcomponentbundle.htm)**: Represents a Lightning web component bundle. A bundle contains a Lightning web component and its related resources. - **[LightningComponentResource](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_lightningcomponentresource.htm)**: Represents a Lightning web component resource, such as HTML markup, JavaScript code, a CSS file, an SVG resource, or an XML configuration file. - **[StaticResource](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_staticresource.htm)**: Represents the working copy of a static resource file for editing or saving. Static resources allow you to upload content that you can reference in a Visualforce page, including images, stylesheets, JavaScript, and other files. # Publisher Represents the publisher of objects and fields. For example, Salesforce is the publisher for standard objects, the organization is the publisher for custom objects, and the package is the publisher for installed packages. Available in Tooling API version 34.0 and later. ## Supported SOAP Calls query() ## Supported REST HTTP Methods GET ## Limitations [SOQL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_soql_limits.htm "Some Tooling API objects have SOQL limitations. These limitations apply to any Metadata Catalog query, which applies to all Custom Metadata Types and Metadata Catalog entities, not only the ones explicitly listed.") [SOSL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_sosl_limits.htm "Two Tooling API objects, EntityDefinition and FieldDefinition, have some SOSL limitations. ExternalString and MetadataComponentDependency (Beta) don’t support SOSL searches.") ## Special Access Rules As of Spring ’20 and later, only authenticated internal and external users can access this object. ## Fields | Field | Details | | --- | --- | | DurableId | Type string 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. To simplify queries, use this field. | | IsSalesforce | Type boolean Properties Filter, Group, Nillable, Sort Description Indicates whether Salesforce provided the associated objects or fields (true). | | MajorVersion | Type int Properties Filter, Group, Nillable, Sort Description The first number in a package version number. A complete version number combines the values of the MajorVersion and MinorVersion fields into either an x.y format or an x.y.z format. The x represents the major version, y the minor version, and z the patch version. (The patch version can’t be specified; it’s automatically assigned when a managed beta package is uploaded.) | | MinorVersion | Type int Properties Filter, Group, Nillable, Sort Description The second number in a package version number. A complete version number combines the values of the MajorVersion and MinorVersion fields into either an x.y format or an x.y.z format. The x represents the major version, y the minor version, and z the patch version. (The patch version can’t be specified; it’s automatically assigned when a managed beta package is uploaded.) If MinorVersion isn’t specified, the default value is 1 more than the minor version of the currently released package (0 if not released). | | Name | Type string Properties Filter, Group, Nillable, Sort Description The presentation-friendly name of the publisher. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The namespace prefix that is 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 Developer Edition orgs, NamespacePrefix is set to the namespace prefix of the org for all objects that support it, unless 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 orgs that are not Developer Edition orgs, NamespacePrefix is set only for objects that are part of an installed managed package. All other objects have no namespace prefix. NamespacePrefix is null if the publisher is Salesforce. | ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Publisher fields are exposed in SOAP API version 46.0 and later. You can use Tooling API to query for Publisher fields in guest user mode in API version 45.0 and earlier. In API version 46.0 and later, use SOAP API to get this data in guest user mode. Publisher is still exposed in Tooling API to User Profiles with the ViewSetup permission. # QueryResult Represents the results of a query. For example, if you query on the object EntityDefinition, all the layouts for that entity are returned as an array of QueryResult objects in the Layouts field. Available in Tooling API version 34.0 and later. QueryResult is not an extension of sObject. ## Fields | Field | Details | | --- | --- | | done | Type boolean Description If true, no additional rows can be retrieved from the query result. If false, one or more rows remain to be retrieved. Use this value as a loop condition while iterating through query results. | | entityTypeName | Type string Description The object or entity type, such as ApexClass or CompactLayoutInfo. | | nextRecordsUrl | Type string Description If the results exceed the current batch size, this field contains the URL of the next record in the query result set. This field is populated for the REST resource queryAll, and is analogous to queryLocator for SOAP calls. | | queryLocator | Type QueryLocator Description If the results exceed the current batch size, this field contains a unique identifier used to retrieve the next batch of records. This field is populated for SOAP queryMore() and is analogous to the REST resource queryAll. Each new batch returns a new queryLocator value. | | records | Type sObject Description Array of sObjects matching the data specified in the query. | | size | Type int Description Total number of rows returned. If no rows were returned, the value is (0). This field is the same as the size field in QueryResult in the Enterprise and Partner WSDLs. | | totalSize | Type int Description Total number of rows returned. Indicates whether the query retrieved any rows (any value greater than 0) or not (0). This field is the same as the totalSize field in QueryResult using the REST resource query or queryAll. | ## QueryLocator Metadata | Field | Details | | --- | --- | | queryLocator | Type string Description If the results exceed the current batch size, this field contains an identifier. Use with the SOAP queryMore() call to retrieve the next batch of records. Each new batch returns a new queryLocator value. | # QueueRoutingConfig Represents configuration settings that determine how work items are routed to agents. This object is available in API version 65.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules Available only if Omni-Channel is enabled in your org. ## Fields | Field | Details | | --- | --- | | CapacityPercentage | Type percent Properties Create, Filter, Nillable, Sort, Update Description The percentage of an agent’s capacity for work items that’s consumed by a specific type of work item from the service channel. For example, capacity percentage for phone call is 100. If the configured limit is reached, the call isn't routed to the agent. | | CapacityWeight | Type double Properties Create, Filter, Nillable, Sort, Update Description The amount of an agent’s capacity for work items that’s consumed by a work item from the service channel. For example, if an agent has a capacity of 6, and cases are assigned a capacity weight of 2, an agent can be assigned up to 3 cases before the agent is at capacity and can’t receive new work items. | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description The unique name of the object in the API. | | DropAdditionalSkillsTimeout | Type int Properties Create, Filter, Group, Nillable, Sort, Update Description The number of seconds to wait before additional skills are dropped from Omni-Channel routing. In skills-based routing, you can set some skills to **Additional Skill**. After the timeout elapses, a skill marked as **Additional Skill** is dropped from Omni-Channel routing and the case is routed to the best-matched agent, even if the agent doesn’t have all the skills. If CustomRequestedDateTime is set in the [PendingServiceRouting object](https://developer.salesforce.com/docs/atlas.en-us.258.0.object_reference.meta/object_reference/sforce_api_objects_pendingservicerouting.htm), DropAdditionalSkillsTimeout uses CustomRequestedDateTime as the start time. If CustomRequestedDateTime and DropAdditionalSkillsTimeout have already passed, Omni-Channel drops the additional skills. | | IsAttributeBased | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether the routing configuration is used with skills-based routing rules (true) or not (false). The default value is false. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The language of the queue routing configuration. | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description The label of the queue routing configuration. | | PausedCapacityPercentage | Type percent Properties Create, Filter, Nillable, Sort, Update Description The percentage of an agent's capacity that’s consumed when a work item is paused. This field is available only with status-based capacity and Enhanced Omni-Channel. | | PausedCapacityWeight | Type double Properties Create, Filter, Nillable, Sort, Update Description The amount of an agent's capacity that’s consumed when a work item is paused. This field is available only with status-based capacity and Enhanced Omni-Channel. | | PushTimeout | Type int Properties Create, Filter, Group, Nillable, Sort, Update Description The time limit set for an agent to respond to an item before it’s pushed to another agent. The time limit is measured in seconds. | | RoutingModel | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The routing type that determines how work items are routed to agents. Possible values are: - ExternalRouting: integrates third-party routing with Omni-Channel to provide more routing options. - LeastActive: routes work items to the agent whose work is comsuming the smallest amount of capacity. - MostAvailable: routes work items to the agent who has the greatest amount of available capacity. | | RoutingPriority | Type int Properties Create, Filter, Group, Sort, Update Description The priority in which work items from the service channels are routed to agents. Work items that have lower values (for example, 0) are routed to agents first. | # QuickActionDefinition Represents the definition of a quick action. This object is available in API version 32.0 and later. ## Supported SOAP Calls create(), delete(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods DELETE, GET, PATCH, POST ## Fields
Field Details
ActionSubtype
Type
picklist
Properties
Filter, Group, Nillable, Restricted picklist, Sort
Description
The subtype of the action. Valid values are:
  • Action—This value is available only for actions of type LightningWebComponent.
  • Create—This value is available only for actions of type Flexipage. (This value is available as a Beta in API version 68.0 and later)
  • ScreenAction—This value is available only for actions of type LightningWebComponent.
  • Update—This value is available only for actions of type Flexipage. (This value is available as a Beta in API version 68.0 and later)

This field is available in API version 50.0 and later.

This field is available only for Lightning web component quick actions.
Description
Type
textarea
Properties
Filter, Group, Nillable, Sort
Description
The description of the action.
DeveloperName
Type
string
Properties
Filter, Group, Sort
Description
The unique name of the action in the API. This field corresponds to the Name field in the user interface.
Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field.
EntityDefinitionId
Type
string
Properties
Filter, Group, Nillable, Sort
Description
The ID of the object associated with the quick action.
Relationship Name
EntityDefinition
Relationship Type
Lookup
Refers To
EntityDefinition
FullName
Type
string
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.
Height
Type
int
Properties
Filter, Group, Nillable, Sort
Description
The height of the action, in pixels. This field is set only when the quick action has a custom icon.
IconId
Type
reference
Properties
Filter, Group, Nillable, Sort
Description
The ID of the action icon. This field is set only when the quick action has a custom icon.
Relationship Name
Icon
Relationship Type
Lookup
Refers To
StaticResource
Label
Type
string
Properties
Filter, Group, Nillable, Sort
Description
The action label that corresponds to the Label field in the user interface.
Language
Type
picklist
Properties
Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort
Description
The language of the action. Valid values are:
  • 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 Spanish (Mexico) defaults to Spanish for customer-defined translations.
  • Swedish: sv
  • Thai: th The Salesforce user interface is fully translated to Thai, but Help is in English.
ManageableState
Type
ManageableState enumerated list
Properties
Filter, Group, Nillable, Restricted picklist, Sort
Description
Indicates the manageable state of the specified component that is contained in a package:
  • beta
  • deleted
  • deprecated
  • deprecatedEditable
  • installed
  • installedEditable
  • released
  • unmanaged

This field is available in API version 38.0 and later.

MasterLabel
Type
string
Properties
Filter, Group, Sort
Description
The action label.
Metadata
Type
QuickAction
Properties
Create, Nillable, Update
Description
The metadata for the quick action.
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
Properties
Filter, Group, Nillable, Sort
Description
The namespace of the action.
OptionsCreateFeedItem
Type
boolean
Properties
Filter,
Description
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.
SobjectType
Type
picklist
Properties
Filter, Group, Restricted picklist, Sort
Description
The associated object’s API name. For example, FeedItem.
StandardLabel
Type
picklist
Properties
Filter, Group, Nillable, Restricted picklist, Sort
Description
The standard label for the action. Valid values are:
  • AddRecord
  • AddMember
  • ChangeDueDate
  • ChangePriority
  • ChangeStatus
  • CreateNew
  • CreateNewRecordType (For example, a label with something like “Create New Idea”)
  • Defer
  • EditDescription
  • EnrollInProgram (Available in API versions 46.0 and later only if the org has Health Cloud enabled)
  • Escalate
  • EscalateToRecord
  • Forward (Available in API version 42.0 and later)
  • LogACall
  • LogANote
  • ModifyAppointment (Available in API version 47.0 and later)
  • New (A new record)
  • NewChild (A new child record)
  • NewChildRecordType
  • NewRecordType (For example, a label with something like “New Idea”)
  • OfferFeedback
  • PatientDetails (Available in API version 57.0 and later if the org has Health Cloud enabled)
  • PerformCount (Available in API version 63.0 and later.)
  • Quick (A quick record)
  • QuickRecordType
  • RelocateAsset (Available in API version 63.0 and later)
  • ReplaceAsset (Available in API version 63.0 and later)
  • Reply (Available in API version 42.0 and later)
  • ReplyAll (Available in API version 42.0 and later)
  • RequestFeedback
  • SendEmail (This value is available in API version 31.0 and later.)
  • Update
SuccessMessage
Type
string
Properties
Filter, Group, Nillable, Sort
Description
The message that displays to the user upon successful completion of the action. Available in API version 36.0 and later.
TargetField
Type
picklist
Properties
Filter, Group, Nillable, Restricted picklist, Sort
Description
The API name of the parent object for the record created by this quick action. For example, CollaborationGroup.
TargetRecordTypeId
Type
reference
Properties
Filter, Group, Nillable, Sort
Description
The ID of the target record type.
Relationship Name
TargetRecordType
Relationship Type
Lookup
Refers To
RecordType
TargetSobjectType
Type
picklist
Properties
Filter, Group, Nillable, Restricted picklist, Sort
Description
The API name of the type of object record this action creates. For example, OpportunityLineItem.
Type
Type
picklist
Properties
Filter, Group, Restricted picklist, Sort
Description
The type of action. Valid values are:
  • Canvas
  • Create
  • Flexipage (This value is available as a Beta in API version 68.0 and later)
  • Flow (This value is available as a Beta in API version 41.0 and later.)
  • LightningComponent (This value is available in API version 38.0 and later.)
  • LightningWebComponent
  • LogACall
  • Post
  • SendEmail
  • SocialPost
  • Update
  • VisualforcePage
Width
Type
int
Properties
Filter, Group, Nillable, Sort
Description
The width of the action, in pixels. This field is set only when the quick action has a custom icon.
## Usage A QuickActionDefinition represents information about a quick action. The following example creates a global quick action that lets users quickly create a task. QuickActionDefinition qad = new QuickActionDefinition(); qad.setDeveloperName("MyQuickCreateTaskAction"); qad.setSobjectType("Global"); qad.setTargetSobjectType("Task"); qad.setMasterLabel("Quick create a task"); qad.setType(QuickActionType.Create); qad.setDescription("Quickly creates a Task"); sforce.create(new SObject\[\]{qad}); # QuickActionList Represents a list of quick actions. This object is available in API version 32.0 and later. ## Supported SOAP Calls create(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods DELETE, GET, PATCH, POST ## Fields | Field | Details | | --- | --- | | LayoutId | Type reference Properties Create, Filter, Group, Sort Description The ID of the associated layout. | ## Usage A QuickActionList is a junction between QuickActionListItem objects and a layout. If a layout doesn’t have an associated QuickActionList, it inherits the actions from the global page layout. The following example retrieves all quick action lists in an organization and their associated layout ID. String query = "SELECT Id,LayoutId FROM QuickActionList"; SObject\[\] records = sforce.query(query).getRecords(); for (int i = 0; i < records.length; i++) { QuickActionList list = (QuickActionList)records\[i\]; String relatedLayoutId = list.get("LayoutId"); } # QuickActionListItem Represents an item in a quick action list. This object is available in API version 32.0 and later. ## Supported SOAP Calls create(), delete(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods DELETE, GET, PATCH, POST ## Fields | Field | Details | | --- | --- | | QuickActionDefinition | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The enum name or ID of the QuickActionDefinition that’s associated with this list item. Valid values are: - Case.ChangeStatus - Case.LogACall - FeedItem.ContentPost - FeedItem.LinkPost - FeedItem.MobileSmartActions - FeedItem.PollPost - FeedItem.QuestionPost - FeedItem.TextPost | | QuickActionListId | Type reference Properties Create, Filter, Group, Sort Description The ID of the QuickActionList associated with this list item. | | SortOrder | Type int Properties Create, Filter, Group, Sort, Update Description The order in which this list item appears in the picklist. This field must be an ordinal number greater than 0, and must be unique in the list. | ## Usage A QuickActionListItem associates a QuickActionDefinition with a QuickActionList. You can query to find out which quick actions are in a list, insert or delete to add or remove quick actions from a list, and update to change the order of quick actions in the list. The following example reverses the order in the list of the actions, and then removes the first action from the list. String query = "SELECT Id,SortOrder FROM QuickActionListItem Where QuickActionListId='" + listId + "'" SObject\[\] records = sforce.query(query).getRecords(); for(int i=0;i # RecentlyViewed Represents metadata entities typically found in Setup such as page layout definitions, workflow rule definitions, and email templates that the current user has recently viewed. This object is available in the Tooling API version 33.0 and later. ## Supported SOAP Calls query(), update(), ## Supported REST HTTP Methods GET ## Special Usage Rules The RecentlyViewed object supports the following metadata entities: - Apex classes - Apex triggers - Approval processes - Apps - Custom report types - Email templates - Fields - Objects - Page layouts - Permission sets - Profiles - Static resources - Tabs - Users - Validation rules - Visualforce pages - Visualforce components - Workflow email alerts - Workflow field updates - Workflow outbound messages - Workflow rules - Workflow tasks ## Fields | Field | Details | | --- | --- | | Alias | Type string Properties Filter, Group, Nillable, Sort Description The alias on the item. | | Email | Type email Properties Filter, Group, Nillable, Sort Description The email address on the item. | | FirstName | Type string Properties Filter, Group, Nillable, Sort Description The first name on the item. | | Id | Type ID Properties Defaulted on create, Filter, Group, Sort Description The ID of the recently viewed item. | | IsActive | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether the recently viewed item is an active user (true) or not (false). This field contains a value only if the recently viewed item is a user. | | LastName | Type string Properties Filter, Group, Nillable, Sort Description The last name on the item. | | LastReferencedDate | Type dateTime Properties Filter, Nillable, Sort, Update Description The timestamp for when the current user last viewed an item related to this item. | | LastViewedDate | Type dateTimedateTime Properties Filter, Nillable, Sort, Update Description The timestamp for when the current user last viewed this item. If this value is null, this item might only have been referenced (see LastReferencedDate) and not viewed. | | Name | Type string Properties Filter, Group, Nillable, Sort Description If the recently viewed item is a user, this is the user’s name. Specifically, it’s the concatenation of the FirstName and LastName field values. | | NetworkId | Type reference Properties Filter, Group, Nillable, Sort Description The ID of the Experience Cloud site that this recently viewed item is part of. This field is available only if digital experiences is enabled in your org. | | Phone | Type phone Properties Filter, Group, Nillable, Sort Description The phone number on the item. | | ProfileId | Type reference Properties Filter, Group, Nillable, Sort Description If the recently viewed item is a user, this is the user’s profile ID. | | RelatedObject | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The object that the recently viewed item is related to. For example, if the recently viewed item is an Account Custom Field, then the related object will be Account. Not all recently viewed items will have a related object. | | Title | Type string Properties FilterGrouplable, Sort Description If the recently viewed item is a user, this is the user’s title. For example, CFO or CEO. | | Type | Type picklist Properties Filter Group NillableRestricted picklist Sort Description The sObject type for this recently viewed item. | | UserRoleId | Type reference Properties FilterGroupNillableSort Description The ID of the user role associated with this object. | ## Usage This object provides a heterogeneous list of different metadata types and consists of recently viewed records. A record is considered viewed when the user sees the details associated with it, but not when the user sees it in a list with other records. Use this object to programmatically construct a list of recently viewed items specific to the current user, for example, on a custom user interface or for search auto-complete options. You can also retrieve a filtered list of records by object type (Type). The RecentlyViewed data is periodically truncated down to 200 records per object. RecentlyViewed data is retained for 90 days, after which it is removed on a periodic basis. Use this query in your code to retrieve a list of all the records that were recently viewed. The results are ordered from most to least recent. SELECT Id, Name FROM RecentlyViewed WHERE LastViewedDate !=null ORDER BY LastViewedDate DESC Use this query to retrieve data that was either viewed or referenced, but only for a limited set of objects. SELECT Id, Name FROM RecentlyViewed WHERE Type IN ('CustomEntityDefinition', 'CustomFieldDefinition') ORDER BY LastViewedDate DESC # RecommendationStrategy Represents a recommendation strategy. Recommendation strategies are applications, similar to data flows, that determine a set of recommendations to be delivered to the client through data retrieval, branching, filtering, and logic operations. Available in API 45.0 and later. ## Supported SOAP Calls create(), delete(), query(), retrieve(), update(), upsert() ## Supported REST API HTTP Methods DELETE, GET, HEAD, PATCH, POST ## Fields | Field | Details | | --- | --- | | ContextRecordType | Type string Properties Filter, Group, Nillable, Sort Description The sObject type of the $Record used by the flow. | | Description | Type string Properties Filter, Group, Nillable, Sort Description Description of the recommendation strategy. | | DeveloperName | Type string Properties Filter, Group, Sort Description The unique name of the recommendation strategy 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 organization. Label is **Record Type Name**. | | Fullname | Type string Properties Create, Group, Nillable Description The full name of the associated metadata type 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. | | IsTemplate | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether the recommendation strategy is a template (true) or not (false). When installed from managed packages, recommendation strategies can’t be viewed or cloned by subscribers because of intellectual property (IP) protection. But when those recommendation strategies are templates, subscribers can open them in a builder, clone them, and customize the clones. The default value is false. Available in API version 47.0 and later. | | Label | Type string Properties Filter, Group, Sort Description Required. Label for the recommendation strategy. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the recommendation strategy. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description Master label for the recommendation strategy. This display value is the internal label that is not translated. Limit: 40 characters. | | Metadata | Type [mns: RecommendationStrategy](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_recommendationstrategy.htm "HTML (New Window)") Properties Create, Nillable, Update Description The recommendation strategy’s metadata. 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. If the recommendation strategy is part of a managed package, this field will be Null. Metadata isn’t returned for recommendation strategies in managed packages, unless the recommendation strategies are templates. | | NamespacePrefix | Type string 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 the following values: - In Developer Edition organizations, the namespace prefix is set to the namespace prefix of the organization for all objects that support it. There is 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 are not Developer Edition organizations, NamespacePrefix is only set for objects that are part of an installed managed package. There is no namespace prefix for all other objects. | | OnBehalfOfExpression | Type string Properties Filter, Group, Nillable, Sort Description Formula expression defining the intended target of the recommendations (for example, the Contact associated with a Case). Mainly used for reaction tracking. | # RecordActionDeployment Represents configuration settings for the Actions & Recommendations, Action Launcher, and Bulk Action Panel components. RecordActionDeployment is available in API version 45.0 and later. ## Supported SOAP Calls create(), delete(), describeLayout(), describeSObject(), query(), retrieve(), update()upsert() ## Supported REST HTTP Methods GET, HEAD, PATCH, POST, DELETE ## Fields | Field | Details | | --- | --- | | ChannelConfigurations | Type mns:[RecordActionDeploymentChannel](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_recordactiondeployment.htm#recordactiondeployment/recordActionDeploymentChannel "HTML (New Window)") Properties Not applicable. Description Channel default settings for the deployment. This field is visible only in the metadata for a record. | | ComponentName | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Specifies the name of the component used in the deployment. Possible values are: - ActionsAndRecommendations—0 - ActionLauncher—1 - BulkActionPanel—2. This value is available in API version 60.0 and later. For example, a value of 1 indicates that 1 is stored in the database if Action Launcher is used to create a deployment. Available in API version 56.0 and later. Available in API version 56.0 and later. | | DeploymentContexts | Type mns:[RecordActionDeploymentContext](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_recordactiondeployment.htm#recordactiondeployment/recordActionDeploymentContext "HTML (New Window)") Properties Not applicable. Description Object context for the deployment. This field is visible only in the metadata for a record. Available in API version 46.0 and later. | | DeveloperName | Type string Properties Filter, Group, Sort Description A unique name for this record action deployment. 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. Provides a globally unique identifier for the record action deployment, which prevents conflicts with other record action deployments that have the same MasterLabel. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | FullName | Type string Properties Filter, Group, Sort Description The unique name used as the record action deployment 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. 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. | | HasGuidedActions | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, indicates that the component shows standard actions; for example, flows and quick actions. Available in API version 46.0 and later. | | HasComponents | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether the record actions deployment includes components (true) or not (false). | | HasOmniscripts | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether the record actions deployment includes OmniScripts (true) or not (false). Available in API version 56.0 and later. The default value is false. | | HasRecommendations | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, indicates that the component shows recommendations from a Next Best Action strategy. Available in API version 46.0 and later. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The language of the record action deployment. The following values are supported: - 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 Spanish (Mexico) defaults to Spanish for customer-defined translations. - Swedish: sv - Thai: th The Salesforce user interface is fully translated to Thai, but Help is in English. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description The name of the deployment. | | Metadata | Type mns:[RecordActionDeployment](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_recordactiondeployment.htm "HTML (New Window)") Properties Create, Nillable, Update Description Metadata that defines record action deployments. 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 Properties Filter, Group, Nillable, Sort Description The namespace prefix associated with the record action deployment, which is assigned to the AppExchange package. 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. The namespace helps differentiate custom objects and fields from those in use by other record action deployments. | | Recommendation | Type mns:[RecordActionRecommendation](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_recordactiondeployment.htm#recordactiondeployment/recordActionRecommendation "HTML (New Window)") Properties Not applicable. Description Settings for how Next Best Action recommendations appear. This field is visible only in the metadata for a record. Available in API version 46.0 and later. | | SelectableItems | Type mns:[RecordActionSelectableItem](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_recordactiondeployment.htm#recordactiondeployment/recordActionDeploymentSelectableItemsID "HTML (New Window)") Properties Not applicable. Description A subset of actions that users can launch at runtime. This field is visible only in the metadata for a record. | # RecordType Represents a custom record type. This object is available in API version 32.0 and later. ## Supported SOAP Calls create(), getDeleted(), getUpdated(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods GET, PATCH, POST ## Fields | Field | Details | | --- | --- | | BusinessProcessId | Type ID Properties Create, Filter, Group, Nillable, Sort, Update Description ID of an associated BusinessProcess. | | Description | Type string Properties Filter, Group, Nillable, Sort Description The record type description, limited to 255 characters. | | EntityDefinitionId | Type string Properties Filter, Group, Sort Description The ID of the entity containing the record. | | FullName | Type string 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. | | IsActive | Type boolean Properties Defaulted on create, Filter, Group, Sort, Update Description Indicates whether this record is active (true) or not (false). Only active record types can be applied to records. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | Metadata | Type RecordTypeMetadata Properties Create, Nillable, Update Description Record metadata. 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. | | Name | Type string Properties Nillable Description The record type name. | | NamespacePrefix | Type string Properties Nillable Description A unique string to distinguish this type from any others. | | SobjectType | Type string Properties Filter, Group, Nillable, Sort Description The type of standard object that this record type is derived from. | ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Turn on source tracking in your sandboxes in order for the picklist values to appear correctly in the Metadata.picklistValues field when you query RecordType. Without source tracking, custom field picklist values can be omitted. You can also use the Metadata API request with object and field inputs to fetch the picklist values of a record type. # RegisteredExternalService Represents a registered external service used to provide an extension or integration. This object is available in API version 49.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules The RegisteredExternalService object is available only if the B2B Commerce or D2C Commerce license is enabled. ## Fields | Field | Details | | --- | --- | | ConfigUrl | Type url Properties Filter, Nillable, Sort Description Link to the configuration page for the integration. | | Description | Type string Properties Filter, Group, Nillable, Sort Description Description of the external service provider. This field is available in API version 59.0 and later. | | DeveloperName | Type string Properties Filter, Group, 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 organization. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | DocumentationUrl | Type url Properties Filter, Nillable, Sort Description Link to documentation for the registered external service. | | ExtensionPointName | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description This field is available in API version 55.0 and later. Name of an extension point. Possible values are: - Commerce\_Domain\_Cart\_Calculate - Commerce\_Domain\_Checkout\_CreateOrder - Commerce\_Domain\_Inventory\_CartCalculator - Commerce\_Domain\_Inventory\_Service - Commerce\_Domain\_OrderManagement\_Product - Commerce\_Domain\_Pricing\_CartCalculator - Commerce\_Domain\_Pricing\_Service - Commerce\_Domain\_Promotions\_CartCalculator - Commerce\_Domain\_Promotions\_ShippingCalculator - Commerce\_Domain\_Shipping\_CartCalculator - Commerce\_Domain\_Shipping\_SplitShipment - Commerce\_Domain\_Tax\_CartCalculator - Commerce\_Domain\_Tax\_Service - Commerce\_Endpoint\_Account\_Address - Commerce\_Endpoint\_Account\_Addresses - Commerce\_Endpoint\_Cart\_Item - Commerce\_Endpoint\_Cart\_ItemCollection - Commerce\_Endpoint\_Catalog\_Product - Commerce\_Endpoint\_Catalog\_Products - Commerce\_Endpoint\_Search\_ProductSearch - Commerce\_Endpoint\_Search\_Products - Commerce\_Endpoint\_Search\_ProductsByCategory | | ExternalServiceProviderId | Type reference Properties Filter, Group, Sort Description Required. The ID of an Apex class functioning as a provider. The Apex class can either implement one of the following interfaces: - sfdc\_checkout.CartInventoryValidation - sfdc\_checkout.CartPriceCalculations - sfdc\_checkout.CartShippingCharges - sfdc\_checkout.CartTaxCalculations or the Apex class can extend one of the base classes for an extension. See [Available Extensions](https://developer.salesforce.com/docs/commerce/salesforce-commerce/guide/available-extensions.html). This field is a relationship field. Relationship Name ExternalServiceProvider Relationship Type Lookup Refers To ApexClass | | ExternalServiceProviderType | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The type of external service provider. For an extension, you set the type to Extension, and you specify an extensionPointName. For example, for a Pricing Cart Calculator extension, you specify Commerce\_Domain\_Pricing\_CartCalculator as the extensionPointName. For an integration, you set the type to one of the other possible values, such as Price, and you omit extensionPointName. Possible values are: - Extension (this value is available in API version 55.0 and later) - Inventory - Price - Promotions (this value is available in API version 53.0 and later) - Shipment - Tax | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated RegisteredExternalService in the Metadata API. The full name can include a namespace prefix. | | IconUri | Type url Properties Filter, Nillable, Sort Description URI of icon for the extension provider. This field is available in API version 59.0 and later. | | IsApplication | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates if the extension provider is contained within a managed package. The default value is false. This field is available in API version 59.0 and later. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the RegisteredExternalService. Possible values are: - da—Danish - de—German - en\_US—English - es—Spanish - es\_MX—Spanish (Mexico) - fi—Finnish - fr—French - it—Italian - ja—Japanese - ko—Korean - nl\_NL—Dutch - no—Norwegian - pt\_BR—Portuguese (Brazil) - ru—Russian - sv—Swedish - th—Thai - zh\_CN—Chinese (Simplified) - zh\_TW—Chinese (Traditional) | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description Label for the RegisteredExternalService. | | Metadata | Type [https://developer.salesforce.com/docs/atlas.en-us.api\_meta.meta/api\_meta/meta\_flexipage.htm](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_flexipage.htm) Properties Create, Nillable, Update Description The metadata for the RegisteredExternalService. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The namespace prefix that is 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 Developer Edition orgs, NamespacePrefix is set to the namespace prefix of the org for all objects that support it, unless 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 orgs that aren’t Developer Edition orgs, NamespacePrefix is set only for objects that are part of an installed managed package. All other objects have no namespace prefix. | # RelatedListColumnDefinition Represents information about a column in a related list. A related list specifies a set of records for a related object, based on specific criteria. This object is available in API version 55.0 and later. ## Supported SOAP API Calls describeSObjects(), query() ## Supported REST API Methods Query ## Special Access Rules This object is read-only. ## Fields | Field | Details | | --- | --- | | Alias | Type string Properties Filter, Group, Nillable, Sort Description The unique alias of the column in the related list. | | ColumnSoql | Type string Properties Filter, Group, Nillable, Sort Description The SOQL query string used in a SELECT clause for the column. | | DataType | Type string Properties Filter, Group, Nillable, Sort Description The field type of the column. | | DurableId | Type string Properties Filter, Group, Nillable, Sort Description The unique identifier for the column. Always retrieve this value before using it, as the value can change from one release to the next. Simplify queries by using this field instead of making multiple queries. | | FieldDefinitionId | Type string Properties Filter, Group, Nillable, Sort Description The ID of the FieldDefinition associated with the column, if applicable. This is a relationship field. Relationship Name FieldDefinition Relationship Type Lookup Refers To [FieldDefinition](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_fielddefinition.htm) | | IsDefault | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether the column appears on the related list by default (true) or not (false). The default value is false. | | IsDescribable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether the column can appear in the results of a describeLayout call containing the related list (true) or not (false). The default value is false. | | Label | Type string Properties Filter, Group, Nillable, Sort Description The label for the column. | | LookupId | Type string Properties Filter, Group, Nillable, Sort Description The lookup ID for the column. | | RelatedListDefinitionId | Type string Properties Filter, Group, Nillable, Sort Description The ID of the RelatedListDefinition that contains the column. This is a relationship field. Relationship Name RelatedListDefinition Relationship Type Lookup Refers To [RelatedListDefinition](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_relatedlistdefinition.htm "HTML (New Window)") | ## Usage Find all available columns on a related list definition. SELECT Alias, ColumnSoql, DurableId FROM RelatedListColumnDefinition WHERE RelatedListDefinitionId = 'Account.Opportunities' # RelatedListDefinition Represents information about a related list. A related list specifies a set of records for a related object, based on specific criteria. This object is available in API version 55.0 and later. ## Supported SOAP API Calls describeSObjects(), query() ## Supported REST API Methods Query ## Special Access Rules This object is read-only. ## Fields | Field | Details | | --- | --- | | DefaultSort | Type string Properties Filter, Group, Nillable, Sort Description The default sort string for the related list. | | DurableId | Type string Properties Filter, Group, Nillable, Sort Description The unique identifier for the related list. Always retrieve this value before using it, as the value can change from one release to the next. Simplify queries by using this field instead of making multiple queries. | | EntityDefinitionId | Type string Properties Filter, Group, Nillable, Sort Description The ID of the entity containing the related list. This is a relationship field. Relationship Name EntityDefinition Relationship Type Lookup Refers To [EntityDefinition](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_entitydefinition.htm "HTML (New Window)") | | IsCustomizable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether columns on the related list can be customized (true) or not (false). The default value is false. | | IsDescribable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether the related list can appear in describeLayout call results (true) or not (false). The default value is false. | | IsLayoutable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether the related list can be assigned to a layout. (true) or not (false). The default value is false. | | Label | Type string Properties Filter, Group, Nillable, Sort Description The label for the related list. | | ParentEntityDefinitionId | Type string Properties Filter, Group, Nillable, Sort Description The ID of the ParentEntityDefinition that’s associated with the rows in the related list. This is a relationship field. Relationship Name ParentEntityDefinition Relationship Type Lookup Refers To [EntityDefinition](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_entitydefinition.htm "HTML (New Window)") | | RelatedListId | Type string Properties Filter, Group, Nillable, Sort Description The ID of the related list. | | RelatedListName | Type string Properties Filter, Group, Nillable, Sort Description The unique name of the related list in the API. | ## Usage Find all available related lists for a given entity, for example, an Account record. SELECT DurableId, Label, RelatedListName FROM RelatedListDefinition WHERE ParentEntityDefinitionId = 'Account' # RelationshipDomain Represents the relationship an object has with other objects. RelationshipDomain allows you to write simpler queries. For example, “which objects are the child objects for the object defined in ParentSobject” is easier using RelationshipDomain. Available in Tooling API version 34.0 and later. ## Supported SOAP Calls query() ## Supported REST HTTP Methods GET ## Limitations [SOQL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_soql_limits.htm "Some Tooling API objects have SOQL limitations. These limitations apply to any Metadata Catalog query, which applies to all Custom Metadata Types and Metadata Catalog entities, not only the ones explicitly listed.") [SOSL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_sosl_limits.htm "Two Tooling API objects, EntityDefinition and FieldDefinition, have some SOSL limitations. ExternalString and MetadataComponentDependency (Beta) don’t support SOSL searches.") ## Fields | Field | Details | | --- | --- | | ChildSobject | Type [EntityDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_entitydefinition.htm "Provides row-based access to metadata about standard and custom objects.") Properties Filter, Group, Sort Description Metadata for the child object, if any. | | ChildSobjectId | Type string Properties Filter, Group, Nillable, Sort Description ID of the ChildSobject. | | DurableId | Type string 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. To simplify queries, use this field. | | Field | Type [FieldDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_fielddefinition.htm "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.") Properties Filter, Group, Sort Description The relationship field on this object that defines the relationship to ChildSobject or ParentSobject. | | FieldId | Type string Properties Filter, Group, Nillable, Sort Description ID of Field. | | IsCascadeDelete | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, this object’s parent can’t be deleted until all records for this object are deleted. Corresponds to Cascade value for DeleteConstraint in the Metadata API. | | IsDeprecatedAndHidden | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, this object is unavailable for the current version. | | IsRestrictedDelete | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, this object can’t be deleted. Corresponds to Restrict value for DeleteConstraint in the Metadata API. | | JunctionIdListNames | Type complexvalue Properties Nillable Description The names of the lists of junction IDs associated with an object. Each ID represents an object that has a relationship with the associated object. | | ParentSobject | Type [EntityDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_entitydefinition.htm "Provides row-based access to metadata about standard and custom objects.") Properties Filter, Group, Sort Description Metadata for the parent object, if any. | | ParentSobjectId | Type string Properties Filter, Group, Nillable, Sort Description ID of the ParentSobject. | | RelationshipInfo | Type [RelationshipInfo](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_relationshipinfo.htm "Represents the properties of a relationship between objects. Simplify queries with RelationshipInfo, such as answering the question “which objects are parent objects for the object defined in ChildSobject. Available in Tooling API version 34.0 and later.") Properties Filter, Group, Sort Description Properties about the relationship. | | RelationshipInfoId | Type string Properties Filter, Group, Nillable, Sort Description ID of RelationshipInfo for this relationship domain. | | RelationshipName | Type string Properties Filter, Group, Nillable, Sort Description Name of this relationship. | # RelationshipInfo Represents the properties of a relationship between objects. Simplify queries with RelationshipInfo, such as answering the question “which objects are parent objects for the object defined in ChildSobject. Available in Tooling API version 34.0 and later. ## Supported SOAP Calls query(), search() ## Supported REST HTTP Methods GET ## Limitations [SOQL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_soql_limits.htm "Some Tooling API objects have SOQL limitations. These limitations apply to any Metadata Catalog query, which applies to all Custom Metadata Types and Metadata Catalog entities, not only the ones explicitly listed.") [SOSL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_sosl_limits.htm "Two Tooling API objects, EntityDefinition and FieldDefinition, have some SOSL limitations. ExternalString and MetadataComponentDependency (Beta) don’t support SOSL searches.") ## Fields | Field | Details | | --- | --- | | ChildSobject | Type [EntityDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_entitydefinition.htm "Provides row-based access to metadata about standard and custom objects.") Properties Filter, Group, Sort Description Metadata for the child object, if any. | | ChildSobjectId | Type string Properties Filter, Group, Nillable, Sort Description ID of the ChildSobject. | | DurableId | Type string 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. To simplify queries, use this field. | | Field | Type [FieldDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_fielddefinition.htm "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.") Properties Filter, Group, Sort Description The relationship field that defines the relationship to ChildSobject or ParentSobject. | | FieldId | Type string Properties Filter, Group, Nillable, Sort Description ID of Field. | | IsCascadeDelete | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, this object’s parent can’t be deleted until all records for this object are deleted. Corresponds to Cascade value for DeleteConstraint in the Metadata API. | | IsDeprecatedAndHidden | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, this object is unavailable for the current version. | | IsRestrictedDelete | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, this object can’t be deleted. Corresponds to Restrict value for DeleteConstraint in the Metadata API. | | JunctionIdListNames | Type complexvalue Properties Nillable Description The names of the lists of junction IDs associated with an object. Each ID represents an object that has a relationship with the associated object. | | RelationshipDomains | Type [QueryResult](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_queryresult.htm "Represents the results of a query. For example, if you query on the object EntityDefinition, all the layouts for that entity are returned as an array of QueryResult objects in the Layouts field. Available in Tooling API version 34.0 and later.") Properties Filter, Group, Sort Description The RelationshipDomain records associated with this object. Because this field represents a relationship, use only in subqueries. | # ReleaseUpdate Represents an individual release update. Available in API version 50.0 and later. ## Supported SOAP Calls describeSObjects(), query() ## Supported REST HTTP Methods Query ## Fields | Field | Details | | --- | --- | | ApiVersion | Type double Properties Filter, Nillable, Sort Description The API version to which the update is applied. | | Category | Type string Properties Filter, Group, Nillable, Sort Description Indicates the type of the release update. For example, “Security” or “Usability.” | | Description | Type string Properties Filter, Nillable, Sort Description The description of the update that appears on the front of the card. | | DeveloperName | Type string Properties Filter, Group, Nillable, Sort Description The unique name of the release update. | | DueDate | Type date Properties Filter, Group, Nillable, Sort Description The date by which test runs must be completed. | | DurableId | Type string Properties Filter, Group, Nillable, Sort Description The unique name of the release update. | | HasNewSteps | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates if steps have been added to the release update since its original release (true) or not (false). | | IsReleased | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates if the update is released (true) or not (false). | | NumCompSteps | Type integer Properties Filter, Group, Nillable, Sort Description Indicates how many steps have been completed in the update. | | NumReqSteps | Type integer Properties Filter, Group, Nillable, Sort Description Indicates the total number of required steps before proceeding with test run. | | NumSteps | Type integer Properties Filter, Group, Nillable, Sort Description Indicates the total number of all steps in the update. | | | | | Release | Type string Properties Filter, Group, Nillable, Sort Description The release, including patch number, in which the update is available. For example, 50.00.00. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Also see ReleaseDate and ReleaseLabel. | | ReleaseDate | Type date Properties Filter, Group, Nillable, Sort Description The date in which the update is enforced. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only specified if the update is part of a scheduled release, so either Release or ReleaseDate will be non-null. Also see Release and ReleaseLabel. | | ReleaseLabel | Type string Properties Filter, Group, Nillable, Sort Description The release label in which the update is enforced. For example, “Winter ‘21.” The label could also be a formatted date if Release is null and ReleaseDate is non-null. | | Status | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Values include: - Complete: The update has been applied. - Info: An information-only update; no actions to take. - Invocable: The update is not yet applied; ready for invocation. - Invoked: The update has been invoked but can’t be revoked yet. - Nascent: The update has incomplete steps so test run can’t be run yet. - Pending: The Complete Steps By date is in the past and update is awaiting enforcement. - Revocable: The update is in test run mode. | | StepStage | Type string Properties Filter, Group, Nillable, Sort Description Indicates the stage in which the update is at. Options include Needs Action, Due Soon, Overdue, and Archived. | | SupportsRevoke | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates if the update has a test run(true) or not (false). Default is false. | | Title | Type string Properties Filter, Nillable, Sort Description The release update title that appears at the top of the release update in the UI. | # ReleaseUpdateStep Represents an individual release update step. Available in API version 49.0 and later. ## Supported SOAP API Calls create(), describeSObjects(), getDeleted(), getUpdated(), query(), retrieve(), update(), upsert() ## Supported REST API Methods GET, HEAD, PATCH, POST, Query ## Special Access Rules To enable or disable release updates, users must have the Manage Release Updates or Customize Application permission. ## Fields | Field | Details | | --- | --- | | Name | Type string Properties Create, Filter, Group, idLookup, Sort, Update Description The name of the release update step. | | Number | Type int Properties Create, Filter, Group, Sort, Update Description The corresponding number for this release update step. | | ReleaseUpdateId | Type string Properties Create, Filter, Group, Sort, Update Description The ID of the related release update. This field is a relationship field. Relationship Name ReleaseUpdate Refers To ReleaseUpdate | | Status | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The status of the release update step. Possible values are: - Complete - Incomplete - New - Started - Viewed | # RemoteProxy Represents a set of remote site settings that allows you to access an external site from Salesforce. Use RemoteProxy when accessing external sites called by Visualforce pages, Apex callouts, or JavaScript codes using XmlHttpRequest in an s-control or custom button. To be accessible, an external site must have its settings defined with RemoteProxy or registered in the Remote Site Settings page. Available in Tooling API version 37.0 and later. ## Supported SOAP Calls create(), query(), retrieve() update() ## Supported REST HTTP Methods GET ## Fields
Field Details
Description
Type
string
Properties
Filter, Group, Nillable, Sort
Description
The description explaining what this remote site setting is used for.
EndpointUrl
Type
string
Properties
Filter, Group, Sort
Description
Required. The URL of the remote site.
FullName
Type
string
Properties
Create, Group, Nillable
Description
The unique name used as the remote site identifier for API access. The name 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.

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.

IsActive
Type
boolean
Properties
Defaulted on create, Filter, Group, Sort
Description
Required. Indicates whether the remote site setting is active (true) or not (false).
ManageableState
Type
ManageableState enumerated list
Properties
Filter, Group, Nillable, Restricted picklist, Sort
Description
Indicates the manageable state of the specified component that is contained in a package:
  • beta
  • deleted
  • deprecated
  • deprecatedEditable
  • installed
  • installedEditable
  • released
  • unmanaged

This field is available in API version 38.0 and later.

Metadata
Type
complexvalue
Properties
Create, Nillable, Update
Description
Metadata that defines the remote site setting.

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
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 of up to 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 Developer Edition organizations, the namespace prefix is set to the namespace prefix of the organization for all objects that support it. There is 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 are not Developer Edition organizations, NamespacePrefix is set only for objects that are part of an installed managed package. There is no namespace prefix for all other objects.
ProtocolMismatch
Type
boolean
Properties
Defaulted on create, Filter, Group, Sort
Description
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 between HTTPS and HTTP sessions.
Warning

Warning

Only set to true if you understand the security implications.

Note

Note

This field corresponds to the disableProtocolSecurity field in the Metadata API type.

SiteName
Type
string
Properties
Filter, Group, Sort
Description
Required. The name of the remote site.
# REST Header Examples Use these examples to understand REST headers. REST headers in the Tooling API WSDL are described in [REST Headers for Tooling API](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_api_tooling_rest_headers.htm "Tooling API provides a subset of the REST headers available in REST API."). For more details about REST Resources, see the REST API Developer Guide. ## Examples The following examples use Apex to execute REST requests with headers. You can use any standard REST tool to access Tooling REST API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note The examples in this guide use a production login URL with MyDomainName in place of the org’s My Domain name. The format for sandbox login URLs differs. To use these examples, update the login URL. You can find the My Domain name and My Domain login URL for your org on the My Domain page in Setup. First, set up the connection to your org and the HTTP request type: HttpRequest req = new HttpRequest(); req.setHeader('Authorization', 'Bearer ' + UserInfo.getSessionID()); req.setHeader('Content-Type', 'application/json'); At the end of each request, add the following code to send the request and retrieve the body of the response: Http h = new Http(); HttpResponse res = h.send(req); system.debug(res.getBody()); # REST Headers Use REST if you’re using a language that isn’t strongly typed, like JavaScript. For details on usage, syntax, and authentication, see the REST API Developer Guide. REST headers available in the Tooling API WSDL are described in [REST Headers for Tooling API](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_api_tooling_rest_headers.htm "Tooling API provides a subset of the REST headers available in REST API."). For examples of REST headers being used, see [REST Header Examples](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_rest_header_examples.htm "Use these examples to understand REST headers."). # REST Headers for Tooling API Tooling API provides a subset of the REST headers available in REST API. Control the behavior of REST requests: - [Call Options Header](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_rest.meta/api_rest/headers_calloptions.htm) Specifies options for the client you’re using to access REST API resources. For example, you can provide a default namespace prefix so that you don’t need to specify the prefix in your code. - [Limit Info Header](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_rest.meta/api_rest/headers_api_usage.htm) This response header is returned in each request to REST API (except for calls to the Versions URI, /, which do not count towards your org’s limit). You can use the information to monitor API limits. - [Package Version Header](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_rest.meta/api_rest/headers_packageversion.htm) Specifies the version of each package referenced by a client. A package version is a number that identifies the set of components and behavior contained in a package. This header can also be used to specify a package version when making calls to an Apex REST web service. - [Query Options Header](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_rest.meta/api_rest/headers_queryoptions.htm) Specifies options used in a query, such as the query results batch size. Use this request header with the Query resource. # REST Overview Use REST if you’re using a language that isn’t strongly typed, like JavaScript. For details on usage, syntax, and authentication, see the REST API Developer Guide. - **[REST Resources](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_rest_resources.htm)** REST resources give you access to Tooling API objects. When querying Tooling API objects using REST resources, keep in mind that the user permissions needed for access vary from endpoint to endpoint and from object to object. Check the description of the endpoint and object you want to use to determine user permission requirements for access. - **[REST Resources for Unit Testing](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_rest_resources_testing.htm)** Retrieve and execute Apex and flow tests in one place. Get a complete view of your tests by using the Test Discovery API. Execute tests asynchronously or synchronously by using the Test Runner API. These APIs are both Tooling API REST resources. - **[REST Resource Examples](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_rest_resource_examples.htm)** Robust examples using REST resources in the Tooling API. - **[REST Headers](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_rest_headers.htm)** Use REST if you’re using a language that isn’t strongly typed, like JavaScript. - **[REST Header Examples](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_rest_header_examples.htm)** Use these examples to understand REST headers. - **[Improve Performance with the Composite Resource](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_resources_composite_composite.htm)** Use the /composite resource to improve the performance of a development tool or app built with Tooling API. This resource executes a series of Tooling API requests in a single call, minimizing the number of round trips needed between the client and server. You can use the output of one request as the input to a subsequent request. The requests’ response bodies and HTTP statuses are returned in a single response body. The entire request counts as a single call toward your API limits. Available in API version 40.0 and later. - **[Retrieve Compilation Results for Invalid Apex with the apexCompileResults Resource](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_rest_resources_recompile_invalid_apex.htm)** Retrieve compilation results for Apex classes and triggers with validation errors. Routinely monitoring results allows you to detect and respond to compilation issues.Available in API version 68.0 and later. This resource requires the Author Apex org permission. - **[Retrieve Apex Type Information with the Symbols Resource (Beta)](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_rest_resources_apex_symbols.htm)** Use the Apex Symbol API to retrieve detailed metadata for built-in, custom, packaged, and dynamic Apex types, including classes, interfaces, enums, methods, and triggers. Available in API version 68.0 and later. This resource requires the Author Apex org permission and the View Setup user permission. #### See Also - [Tooling API Objects](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_list.htm) - [REST API Developer Guide](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_rest.meta/api_rest/ "REST API Developer Guide - HTML (New Window)") # REST Resource Examples Robust examples using REST resources in the Tooling API. ## Example Setup The following examples use Apex to execute REST requests, but you can use any standard REST tool to access the Tooling API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note The examples in this guide use a production login URL with MyDomainName in place of the org’s My Domain name. The format for sandbox login URLs differs. To use these examples, update the login URL. You can find the My Domain name and My Domain login URL for your org on the My Domain page in Setup. First, set up the connection to your org and the HTTP request type: HttpRequest req = new HttpRequest(); req.setHeader('Authorization', 'Bearer ' + UserInfo.getSessionID()); req.setHeader('Content-Type', 'application/json'); At the end of each request, add the following code to send the request and retrieve the body of the response: Http h = new Http(); HttpResponse res = h.send(req); system.debug(res.getBody()); ## Retrieve a Description To get a description of all available objects in Tooling API: req.setEndpoint('https://MyDomainName.my.salesforce.com/services/data/v68.0/tooling/sobjects/'); req.setMethod('GET'); To get a description of a specific Tooling API object, for example, [TraceFlag](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_traceflag.htm): req.setEndpoint('https://MyDomainName.my.salesforce.com/services/data/v68.0/tooling/sobjects/ TraceFlag/'); req.setMethod('GET'); To get a description of all metadata for a specific Tooling API object, for example, [TraceFlag](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_traceflag.htm): req.setEndpoint('https://MyDomainName.my.salesforce.com/services/data/v68.0/tooling/sobjects/ TraceFlag/describe/'); req.setMethod('GET'); ## Manipulate Objects by ID To create a new Tooling API object, for example, [MetadataContainer](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_metadatacontainer.htm): req.setEndpoint('https://MyDomainName.my.salesforce.com/services/data/v68.0/tooling/sobjects/ MetadataContainer/'); req.setBody('{"Name":"TestContainer"}'); req.setMethod('POST'); ![Tip](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_tip.png) #### Tip Use the ID from this call in the rest of the examples. To retrieve a Tooling API object by ID, for example, [MetadataContainer](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_metadatacontainer.htm): req.setEndpoint('https://MyDomainName.my.salesforce.com/services/data/v68.0/tooling/sobjects/ MetadataContainer/ + containerID + '/'); req.setMethod('GET'); To update a Tooling API object by ID, for example, [MetadataContainer](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_metadatacontainer.htm): req.setEndpoint('https://MyDomainName.my.salesforce.com/services/data/v68.0/tooling/sobjects/ MetadataContainer/ + containerID + '/'); req.setBody('{"Name":"NewlyNamedContainer"}'); req.setMethod('PATCH'); To query a Tooling API object by ID, for example, [MetadataContainer](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_metadatacontainer.htm): req.setEndpoint('https://MyDomainName.my.salesforce.com/services/data/v68.0/tooling/query/?q= Select+id,Name+from+MetadataContainer+Where+ID\=\\'' + containerID + '\\''); req.setMethod('GET'); ## Query Within MetadataContainer To query an object within a [MetadataContainer](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_metadatacontainer.htm): req.setEndpoint('https://MyDomainName.my.salesforce.com/services/data/v68.0/tooling/query/?q= Select+id,Body,LastSyncDate,Metadata+from+ApexClassMember+Where+MetadataContainerID=\\' \+ containerID + '\\''); req.setMethod('GET'); ## Check Deployment Status To check on the status of a deployment, using [ContainerAsyncRequest](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_containerasyncrequest.htm): req.setEndpoint('https://MyDomainName.my.salesforce.com/services/data/v68.0/tooling/sobjects/ ContainerAsyncRequest/' + requestID + '/'); req.setMethod('GET'); ## Execute Anonymous Apex To execute anonymous Apex: req.setEndpoint('https://MyDomainName.my.salesforce.com/services/data/v68.0/tooling/executeAnonymous/? anonymousBody=System.debug('Test')%3B'); req.setMethod('GET'); ## Retrieve Apex To retrieve your Apex classes and triggers, and the global Apex classes and triggers from your installed managed packages: req.setEndpoint('https://MyDomainName.my.salesforce.com/services/data/v68.0/tooling/apexManifest'); req.setMethod('GET'); ## Execute Apex Unit Tests To execute Apex unit tests, use the runTestsSynchronous or runTestsAsynchronous resource. This example illustrates how to POST to the runTestsSynchronous resource using JavaScript. The comment blocks show which objects these calls return. var xhttp = new XMLHttpRequest(); xhttp.open("POST", "https://MyDomainName.my.salesforce.com/services/data/v68.0/tooling/runTestsSynchronous/", true) // SESSION\_ID is the session ID xhttp.setRequestHeader("Authorization", "OAuth ") xhttp.setRequestHeader('Accept', "application/json"); // testObject should include a list of object(s) with the classId and list of // desired test methods for the desired classes to be tested testObject = {tests: \[{classId: "N0tARealClassId", testMethods: \["testMethod1", "testMethod2"\]}\]} requestObject = json.stringify(testObject); response = xhttp.send(requestObject) response = JSON.parse(response) /\* { "successes": \[ { "namespace": null, "name": "MyTestClass", "methodName": "testMethod1", "id": "N0tARealTestId1", "time": 1167, "seeAllData": false }, { "namespace": null, "name": "MyTestClass", "methodName": "testMethod2", "id": "N0tARealTestId2", "time": 47, "seeAllData": false } \], "failures": \[ { "type": "Class", "namespace": null, "name": "MyTestClass", "methodName": "testMethod3", "message": "System.AssertException: Assertion Failed", "stackTrace": "Class.MyTestClass.testMethod3: line 13, column 1", "id": "01pxx0000000JTpAAM", "seeAllData": false, "time": 27, "packageName": "MyTestClass" }, { "type": "Class", "namespace": null, "name": "MyTestClass", "methodName": "testMethod4", "message": "System.AssertException: Assertion Failed", "stackTrace": "Class.MyTestClass.testMethod4: line 17, column 1", "id": "01pxx0000000JTpAAM", "seeAllData": false, "time": 32, "packageName": "MyTestClass" } \], "totalTime": 143, "apexLogId": "07Lxx0000000A9NEAU", "numFailures": 2, "codeCoverage": \[ \], "codeCoverageWarnings": \[ \], "numTestsRun": 4 } \*/ // Check how many tests ran response\["numTestRun"\] === 4 // Check how many tests passed response\["successes"\].length === 2 // Return a list of objects that correspond to the tests that passed response\["successes"\] /\* \[ { "id": "N0tARealTestId1", "methodName": "testMethod1", "name": "MyTestClass", "namespace": null, "seeAllData": false, "time": 1167 } \] \*/ // Access the first object in the list response\["successes"\]\[0\]\["name"\] === "MyTestClass" response\["successes"\]\[0\]\["methodName"\] === "testMethod1" // This ID refers to the classId response\["successes"\]\[0\]\["id"\] === "MyTestClass" response\["successes"\]\[0\]\["time"\] === 1167 // milliseconds response\["failures"\] /\* { "type": "Class", "namespace": null, "name": "MyTestClass", "methodName": "testMethod3", "message": "System.AssertException: Assertion Failed", "stackTrace": "Class.MyTestClass.testMethod3: line 13, column 1", "id": "01pxx0000000JTpAAM", "seeAllData": false, "time": 27, "packageName": "MyTestClass" }, { "type": "Class", "namespace": null, "name": "MyTestClass", "methodName": "testMethod4", "message": "System.AssertException: Assertion Failed", "stackTrace": "Class.MyTestClass.testMethod4: line 17, column 1", "id": "01pxx0000000JTpAAM", "seeAllData": false, "time": 32, "packageName": "MyTestClass" } \*/ response\["failures"\]\[0\]\["name"\] === "MyTestClass" response\["failures"\]\[0\]\["methodName"\] === "testMethod3" response\["failures"\]\[0\]\["message"\] === "System.AssertException: Assertion Failed" response\["failures"\]\[0\]\["stackTrace"\] === "Class.MyTestClass.testMethod3: line 13, column 1" response\["failures"\]\[0\]\["time"\] === 27 # REST Resources REST resources give you access to Tooling API objects. When querying Tooling API objects using REST resources, keep in mind that the user permissions needed for access vary from endpoint to endpoint and from object to object. Check the description of the endpoint and object you want to use to determine user permission requirements for access. For details on usage, syntax, and authentication, see the REST API Developer Guide. For examples, see [REST Resource Examples](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_rest_resource_examples.htm "Robust examples using REST resources in the Tooling API."). For information on how to minimize the number of round trips between client and server, see [Improve Performance with the Composite Resource](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_resources_composite_composite.htm#tooling_resources_composite_composite "Use the /composite resource to improve the performance of a development tool or app built with Tooling API. This resource executes a series of Tooling API requests in a single call, minimizing the number of round trips needed between the client and server. You can use the output of one request as the input to a subsequent request. The requests’ response bodies and HTTP statuses are returned in a single response body. The entire request counts as a single call toward your API limits. Available in API version 40.0 and later."). ## REST Resources Supported by Tooling API The base URI for each Tooling API REST resource is https://domain/services/data/vXX.X**/tooling/** where **domain** is your org’s My Domain login URL and **vXX.X** is the API version number. For example: https://MyDomainName.my.salesforce.com/services/data/v68.0/tooling/ Tooling API uses these resources. ## /apexCompileResults/ Supported methods: POST Retrieve compilation results for Apex classes and triggers with validation errors. Available in API version 68.0 and later. For more information, see [Retrieve Compilation Results for Invalid Apex with the apexCompileResults Resource](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_rest_resources_recompile_invalid_apex.htm "Retrieve compilation results for Apex classes and triggers with validation errors. Routinely monitoring results allows you to detect and respond to compilation issues.Available in API version 68.0 and later. This resource requires the Author Apex org permission."). ## /completions?type= Supported methods: GET Retrieves available code completions of the referenced type for Apex system method symbols (type=apex). Available in API version 28.0 and later. Retrieves available code completions of the referenced type for Visualforce markup (type=visualforce). Available in API version 38.0 and later. ## /executeAnonymous/?anonymousBody= Supported methods: GET Executes Apex code anonymously. Available in API version 29.0 and later. Salesforce blocks all /executeanonymous requests from components in managed packages. See [Block Execute Anonymous from Managed Packages (Release Update)](https://help.salesforce.com/s/articleView?id=release-notes.rn_apex_block_exec_anon_ru.htm&type=5&language=en_US). ## /query/?q=SOQL\_Query\_Statement Supported methods: GET Executes a query against an object and returns data that matches the specified criteria. Tooling API exposes objects like EntityDefinition and FieldDefinition that use the external object framework. That is, they don’t exist in the database but are constructed dynamically. Special query rules apply to virtual entities. If the query result is too large, it’s broken up into batches. The response contains the first batch of results and a query identifier. The identifier can be used in a request to retrieve the next batch. ## /runTestsAsynchronous/ Supported methods: POST Runs Apex and automated flow tests asynchronously. Available for Apex tests in API version 30.0 and later. Available for automated flow tests in API version 65.0 and later. For more information, see [Run Unit Tests Asynchronously](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_rest_resources_testing_runner_async.htm "Use the Test Runner API to execute Apex and flow tests asynchronously. Available for Apex tests in API version 30.0 and later. Available for automated flow tests in API version 65.0 and later."). ## /runTestsSynchronous/ Supported methods: POST Runs Apex and automated flow tests synchronously. Available for Apex tests in API version 30.0 and later. Available for automated flow tests in API version 65.0 and later. For more information, see [Run Unit Tests Synchronously](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_rest_resources_testing_runner_sync.htm "Use the Test Runner API to execute one or more Apex or flow tests synchronously. All test methods in a synchronous test run must be in the same class. Available for Apex tests in API version 30.0 and later. Available for automated flow tests in API version 65.0 and later. In API version 40.0 and later, running Apex tests synchronously using the POST method for /runTestsSynchronous/ requires the View Setup user permission."). ## /search/?q=SOSL\_Search\_Statement Supported methods: GET Search for records containing specified values. ## /sobjects/ Supported methods: GET Lists the available Tooling API objects and their metadata. ## /sobjects/SObjectName/ Supported methods: GET, POST Describes the individual metadata for the specified object or creates a record for a given object. - To retrieve the metadata for the ApexExecutionOverlayAction object, use the GET method. - To create a ApexExecutionOverlayAction object, use the POST method. ## /sobjects/SObjectName/describe/ Supported methods: GET Completely describes the individual metadata at all levels for the specified object. For example, use this resource to retrieve the fields, URLs, and child relationships for a Tooling API object. ## /sobjects/SObjectName/id/ Supported methods: GET, PATCH, DELETE Accesses records based on the specified object ID. Use the GET method to retrieve records or fields, the DELETE method to delete records, and the PATCH method to update records. ## /sobjects/ApexLog/id/Body/ Supported methods: GET Retrieves a raw debug log by ID. Available in API version 28.0 and later. ## /symbols?category= Supported methods: GET Retrieves detailed metadata for built-in, custom, packaged, and dynamic Apex types, including classes, interfaces, enums, methods, and triggers. This resource is available in API version 68.0 and later. For more information, see [Retrieve Apex Type Information with the Symbols Resource (Beta)](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_rest_resources_apex_symbols.htm "Use the Apex Symbol API to retrieve detailed metadata for built-in, custom, packaged, and dynamic Apex types, including classes, interfaces, enums, methods, and triggers. Available in API version 68.0 and later. This resource requires the Author Apex org permission and the View Setup user permission."). ## /tests/ Supported methods: GET Retrieves Apex and automated flow tests. Available in API version 65.0 and later. For more information, see [Retrieve Unit Tests](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_rest_resources_testing_discovery.htm "The Test Discovery API returns details about Apex and automated flow tests. This resource is available in Tooling API version 65.0 and later."). # REST Resources for Unit Testing Retrieve and execute Apex and flow tests in one place. Get a complete view of your tests by using the Test Discovery API. Execute tests asynchronously or synchronously by using the Test Runner API. These APIs are both Tooling API REST resources. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note The Test Discovery API and Test Runner API support only flow tests created with [automated flow testing](https://help.salesforce.com/s/articleView?id=platform.automate_flow_test_record_data_cloud_triggered.htm&type=5&language=en_US) in Flow Builder. The base URI for these Tooling API REST resources is https://domain/services/data/vXX.X/tooling/ where **domain** is your org’s My Domain login URL and vXX.X is the API version number. For example: https://MyDomainName.my.salesforce.com/services/data/v68.0/tooling/ - **[Retrieve Unit Tests](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_rest_resources_testing_discovery.htm)** The Test Discovery API returns details about Apex and automated flow tests. This resource is available in Tooling API version 65.0 and later. - **[Run Unit Tests Asynchronously](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_rest_resources_testing_runner_async.htm)** Use the Test Runner API to execute Apex and flow tests asynchronously. Available for Apex tests in API version 30.0 and later. Available for automated flow tests in API version 65.0 and later. - **[Run Unit Tests Synchronously](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_rest_resources_testing_runner_sync.htm)** Use the Test Runner API to execute one or more Apex or flow tests synchronously. All test methods in a synchronous test run must be in the same class. Available for Apex tests in API version 30.0 and later. Available for automated flow tests in API version 65.0 and later. In API version 40.0 and later, running Apex tests synchronously using the POST method for /runTestsSynchronous/ requires the View Setup user permission. # RestrictionRule Represents a restriction rule or a scoping rule. A restriction rule has EnforcementType set to Restrict and controls the access that specified users have to designated records. A scoping rule has EnforcementType set to Scoping and controls the default records that your users see without restricting access. This object is available in API version 52.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules Only users with the View Restriction and Scoping Rules permission can view restriction rules and scoping rules via the API. Only users with the Manage Sharing permission can view, create, update, and delete restriction rules and scoping rules. ## Fields | Field | Details | | --- | --- | | Description | Type textarea Properties Filter, Group, Nillable, Sort Description Required. The description of the rule. | | DeveloperName | Type string Properties Filter, Group, Sort Description The unique name for the RestrictionRule object. 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 is automatically generated, but you can supply your own value if you create the record using the API. Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | EnforcementType | Type picklist Properties Defaulted on create, Filter, Group, Restricted picklist, Sort Description Required. The type of rule. Possible values are: - FieldRestrict—Don’t use. - Restrict—Restriction rule. - Scoping—Scoping rule. | | FullName | Type string Properties Create, Group, Nillable Description Required. The full name of the associated RestrictionRule in Metadata API. The full name can include a namespaceprefix. 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. | | IsActive | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether the rule is active (true) or not (false). The default value is false. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the rule. The value for this field is the language value of the org. | | MasterLabel | Type string Properties Filter, Group, Sort Description Label for the rule. | | Metadata | Type mns:[RestrictionRule](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_restrictionrule.htm) Properties Create, Nillable, Update Description The restriction rule’s metadata. 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. | | RecordFilter | Type textarea Properties Create, Filter, Group, Sort, Update Description Required. The criteria that determine which records are accessible via the rule. | | TargetEntity | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Required. The object for which you're creating the rule. We recommend that you don’t edit this field after the rule is created. If EnforcementType is set to Restrict, custom objects, external objects, and these objects are supported: - Contract - Event - Quote - Task - TimeSheet - TimeSheetEntry If EnforcementType is set to Scoping, custom objects and these objects are supported: - Account - Case - Contact - Event - Lead - Opportunity - Task | | UserCriteria | Type textarea Properties Create, Filter, Group, Sort, Update Description Required. The users that this rule applies to, such as all active users or users with a specified role or profile. | | Version | Type int Properties Filter, Group, Sort Description Required. The rule's version number. | ## Usage The following is an example of a RestrictionRule representing a restriction rule. { "FullName":"restriction\_rule\_tasks\_you\_own", "Metadata": { "active":true, "description":"Allows users of a specific profile to see only tasks that they own.", "enforcementType":"Restrict", "masterLabel":"Tasks You Own", "recordFilter":"OwnerId = $User.Id", "targetEntity":"Task", "userCriteria":"$User.ProfileId = '00exxxxxxxxxxxx'", "version":1 } } The following is an example of a RestrictionRule representing a scoping rule. { "FullName":"Department A contact scoping rule", "Metadata": { "active":true, "description":"View contacts from Department A.", "enforcementType":"Scoping", "masterLabel":"SR for Department A", "recordFilter":"Department=$User.Department", "targetEntity":"Contact", "userCriteria":"$User.UserRoleId = '00Exxxxxxxxxxxx'", "version":1 } } #### See Also - [https://developer.salesforce.com/docs/atlas.en-us.restriction\_rules.meta/restriction\_rules/restriction\_rules\_about.htm](https://developer.salesforce.com/docs/atlas.en-us.264.0.restriction_rules.meta/restriction_rules/restriction_rules_about.htm) # Retrieve Apex Type Information with the Symbols Resource (Beta) Use the Apex Symbol API to retrieve detailed metadata for built-in, custom, packaged, and dynamic Apex types, including classes, interfaces, enums, methods, and triggers. Available in API version 68.0 and later. This resource requires the Author Apex org permission and the View Setup user permission. ## Syntax ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important Apex Symbol API is a pilot or beta service that is subject to the Beta Services Terms at [Agreements and Terms](https://www.salesforce.com/company/legal/agreements/) or a written Unified Pilot Agreement if executed by Customer, and applicable terms in the [Product Terms Directory](https://ptd.salesforce.com/). Use of this pilot or beta service is at the Customer's sole discretion. **URI**: /services/data/vXX.X/tooling/symbols/ **HTTPS Method**: GET **Authentication**: Authorization: Bearer token **Format**: JSON ## Request Query Parameters ### category - **Type**: String - **Description**: Required. The category of Apex types to retrieve. - **Possible values**: - builtin\-standard Apex types, such as types in the System, Database, and Messaging namespaces. - database\-custom and packaged Apex types. - dynamic\-dynamic Apex types. ### namespace - **Type**: String - **Description**: Optional. Filters the results to a specific namespace. To retrieve only types in the local org namespace, pass an empty string (namespace=). If this parameter is omitted, Apex types from all namespaces in the category are returned. ### name - **Type**: String - **Description**: Optional. Filters the results to the specified Apex type name. If both namespace and name are specified, the results must match both conditions. ## Request Body Properties None. ## Response Body Properties ### typeStubs - **Type**: Object\[\] - **Description**: An array of Apex types. Each object describes one Apex class, interface, enum, or trigger, including members such as fields, properties, methods, annotations, and documentation when available. Each object in the typeStubs array can include these properties. ### name - **Type**: String - **Description**: The developer name of the Apex type stub. ### namespacePrefix - **Type**: String - **Description**: The namespace of the Apex type, or null if the type doesn't have a namespace. ### kind - **Type**: String - **Description**: The kind of Apex type. Possible values are CLASS, INTERFACE, ENUM, and TRIGGER. ### modifiers - **Type**: String\[\] - **Description**: The modifiers applied to the type, such as public, global, virtual, or abstract. ### annotations - **Type**: Object\[\] - **Description**: The annotations applied to the type, such as AuraEnabled, IsTest, or NamespaceAccessible. ### superClass - **Type**: Object - **Description**: A type reference for the superclass, or null if the type doesn't have a superclass. ### interfaces - **Type**: Object\[\] - **Description**: Type references for interfaces implemented by the type. ### fields - **Type**: Object\[\] - **Description**: The fields declared on the type. A field is a variable declared at the type level instead of inside a method. ### properties - **Type**: Object\[\] - **Description**: The properties declared on the type. ### methods - **Type**: Object\[\] - **Description**: The methods and constructors declared on the type. ### innerTypes - **Type**: Object\[\] - **Description**: Nested Apex types declared within the type. Each nested type uses the same structure as a top-level type stub. ### triggerOperations - **Type**: String\[\] - **Description**: For triggers, the trigger operations, such as BEFORE UPDATE. The value is null for non-trigger types. ### documentation - **Type**: String - **Description**: Documentation for the type. For built-in types, this property can include official usage guidance. For custom types, this property can include ApexDoc comments. In API version 68.0, ApexDoc comments from managed packages aren't returned. ### triggerObjectType - **Type**: Object - **Description**: For triggers, a type reference for the sObject that the trigger is defined on. The value is null for non-trigger types. ### compileError - **Type**: String - **Description**: A compilation error message if symbol extraction encountered a compile error for the type; otherwise, null. ## Annotations Array Properties Each object in an annotations array can include these properties. ### name - **Type**: String - **Description**: The annotation name. ### parameters - **Type**: Object\[\] - **Description**: The annotation parameters. ### documentation - **Type**: String - **Description**: Documentation for the annotation, if available. ## Annotation Parameters Array Properties Each object in an annotation parameters array can include these properties. ### name - **Type**: String - **Description**: The parameter name. ### type - **Type**: Object - **Description**: A type reference for the parameter type. ### value - **Type**: String - **Description**: The parameter value. ## Fields Array Properties Each object in the fields array can include these properties. ### name - **Type**: String - **Description**: The field name. ### type - **Type**: Object - **Description**: A type reference for the field type. ### modifiers - **Type**: String\[\] - **Description**: The field modifiers. ### annotations - **Type**: Object\[\] - **Description**: The field annotations. ### documentation - **Type**: String - **Description**: Documentation for the field, if available. ### definingType - **Type**: Object - **Description**: A type reference for the Apex type that originally declares this field. This property is set only for inherited fields and is omitted when the field is declared directly on the enclosing type. ## Properties Array Properties Each object in the properties array can include these properties. ### name - **Type**: String - **Description**: The property name. ### type - **Type**: Object - **Description**: A type reference for the property type. ### modifiers - **Type**: String\[\] - **Description**: The property modifiers. ### annotations - **Type**: Object\[\] - **Description**: The property annotations. ### getter - **Type**: Object - **Description**: Present if the property has a get accessor. The object includes a modifiers array and a documentation property. ### setter - **Type**: Object - **Description**: Present if the property has a set accessor. The object includes a modifiers array and a documentation property. ### documentation - **Type**: String - **Description**: Documentation for the property, if available. ### definingType - **Type**: Object - **Description**: A type reference for the Apex type that originally declares this property. This property is set only for inherited properties and is omitted when the property is declared directly on the enclosing type. ## Methods Array Properties Each object in the methods array can include these properties. ### name - **Type**: String - **Description**: The method or constructor name. ### isConstructor - **Type**: Boolean - **Description**: true if the member is a constructor; otherwise, null. ### returnType - **Type**: Object - **Description**: A type reference for the return type. The value is null for constructors. ### modifiers - **Type**: String\[\] - **Description**: The method modifiers. ### annotations - **Type**: Object\[\] - **Description**: The method annotations. ### parameters - **Type**: Object\[\] - **Description**: The method parameters. ### documentation - **Type**: String - **Description**: Documentation for the method, if available. ### definingType - **Type**: Object - **Description**: A type reference for the Apex type that originally declares this method. This property is set only for inherited methods and is omitted when the method is declared directly on the enclosing type. ## Methods Parameter Array Properties Each object in a method parameters array can include these properties. ### name - **Type**: String - **Description**: The parameter name. ### type - **Type**: Object - **Description**: A type reference for the parameter type. ### annotations - **Type**: Object\[\] - **Description**: The parameter annotations. ### documentation - **Type**: String - **Description**: Documentation for the parameter, if available. ## Type Reference Properties Several response properties use a nested type reference object instead of returning a type as a string. This structure separates the type into parts that developer tools can consume. Type references appear in these properties: - superClass - Objects in the interfaces array - The type property of a field or property - A method's returnType property - The definingType property of an inherited field, method, or property - A parameter's type property - triggerObjectType Each type reference object can include these properties. ### namespacePrefix - **Type**: String - **Description**: The namespace of the referenced type, or null if the type doesn't have a namespace. ### name - **Type**: String - **Description**: The name of the referenced type. ### typeParameters - **Type**: Object\[\] - **Description**: Type references for generic type arguments, such as String in List. The value is null if the type isn't parameterized. ## Usage Use the Apex Symbol API to build tools that: - Provide code completion with full generic type support. For example, List displays with readable type parameters instead of internal encoding. - Display official documentation for built-in types, including usage guidance and examples. - Display ApexDoc comments for custom types. - Show constructor signatures with parameter types, annotations, and modifiers. - Identify trigger operations, such as before insert and after update, without parsing source code. - Access type information across all standard Apex namespaces, such as the System, Database, and Messaging namespaces. ## Considerations - The API enforces a concurrency limit of one request per org. If a request is in progress and a second request is made for the same org, the second request fails. Avoid parallel calls to this API from the same org. - In API version 68.0, ApexDoc comments from managed packages aren't returned. Packaged ApexDoc comments for global identifiers are planned for a later API version. ## Example **Example Request**: Retrieve the built-in ApexPages type in the System namespace. GET "https://MyDomain.my.salesforce.com/services/data/v68.0/tooling/symbols?category=builtin&namespace=System&name=ApexPages" **Example Response Body** (excerpt) { "typeStubs": \[ { "name": "ApexPages", "namespacePrefix": "System", "kind": "CLASS", "modifiers": \[ "global" \], "annotations": \[\], "superClass": null, "interfaces": \[\], "fields": \[\], "properties": \[\], "methods": \[ { "name": "addMessage", "isConstructor": null, "returnType": { "namespacePrefix": null, "name": "void", "typeParameters": null }, "modifiers": \[ "global", "static" \], "annotations": \[\], "parameters": \[ { "name": "message", "type": { "namespacePrefix": "ApexPages", "name": "Message", "typeParameters": null }, "annotations": \[\], "documentation": "" } \], "documentation": "Add a message to the current page context." } \], "innerTypes": \[\], "triggerOperations": null, "documentation": "Use ApexPages to add and check for messages associated...", "triggerObjectType": null, "compileError": null } \] } # Retrieve Compilation Results for Invalid Apex with the apexCompileResults Resource Retrieve compilation results for Apex classes and triggers with validation errors. Routinely monitoring results allows you to detect and respond to compilation issues.Available in API version 68.0 and later. This resource requires the Author Apex org permission. ## Syntax **URI**: /services/data/vXX.X/tooling/apexCompileResults/ **HTTPS Method**: POST **Authentication**: Authorization: Bearer token **Format**: JSON ## Request Parameters None. ## Request Body The request body must be an empty JSON object ({}). Specifying any fields returns an error. ## Response Body Properties ### status - **Type**: String - **Description**: The operation-level outcome of the compilation. - **Possible values**: - OK—all invalid Apex classes and triggers compiled successfully, or no invalid classes or triggers required recompilation. - PARTIAL\_FAILURE—at least one invalid Apex class or trigger failed to compile. ### results - **Type**: Object\[\] - **Description**: An array of compilation outcomes for Apex classes and triggers that failed to compile. Each object includes the class or trigger name, namespace, success indicator, errors, and warnings. Classes and triggers that compile successfully aren’t included. Warnings are included only when the class or trigger also has compilation errors. If the entire compilation succeeds without any failures, this array is empty. Each object in the results array can include these properties. ### name - **Type**: String - **Description**: The developer name of the Apex class or trigger. ### namespace - **Type**: String - **Description**: The namespace of the Apex class or trigger. For the default namespace, the value is an empty string. ### success - **Type**: Boolean - **Description**: Indicates whether the Apex class or trigger compiled successfully. The value is true when there are no compilation problems. The value is false when at least one problem is present. Warning-only outcomes are still considered successful, so these outcomes aren’t returned in the results array. ### problems - **Type**: Object\[\] - **Description**: An array of compilation errors for the Apex class or trigger. Empty when success is true. ### warnings - **Type**: Object\[\] - **Description**: An array of compilation warnings for the Apex class or trigger. Warnings are returned only for classes and triggers that also have compilation errors. Each object in a problems or warnings array can include these properties. ### line - **Type**: Integer - **Description**: The source line of the error or warning. The value is 0 if a line isn’t applicable. ### column - **Type**: Integer - **Description**: The source column of the problem or warning. The value is 0 if a column isn’t applicable. ### message - **Type**: String - **Description**: A description of the compilation error or warning. ## Usage - Use the apexCompileResults resource to retrieve compilation results for invalid Apex class and triggers. To recompile invalid classes or triggers, use the “Compile only invalid classes” and “Compile only invalid triggers” buttons on the Apex Classes or Apex Triggers pages in Setup. Successful compilation via the Setup buttons updates the IsValid field on the corresponding Apex class or trigger to true. Retrieving compilation results via apexCompileResults doesn’t update the field. - The request is synchronous. ## Example **Example Request Body** {} **Example Response Body on Successful Compilation**: Returned if all invalid Apex classes and triggers compiled successfully, or none required recompilation. { "status": "OK", "results": \[\] } **Example Response Body on Partial Failure**: Returned if least one invalid Apex class or trigger failed to compile. { "status": "PARTIAL\_FAILURE", "results": \[ { "name": "MyInvalidClass", "namespace": "MyNamespace", "success": false, "problems": \[ { "line": 14, "column": 9, "message": "Variable does not exist: var1" } \], "warnings": \[ { "line": 0, "column": 0, "message": "Apex API version 18.0 is scheduled for retirement. Update to the latest API version to avoid compile failures." } \] } \] } # Retrieve Unit Tests The Test Discovery API returns details about Apex and automated flow tests. This resource is available in Tooling API version 65.0 and later. ## Syntax **URI**: /services/data/vXX.X/tooling/tests/ **HTTPS Method**: GET **Authentication**: Authorization: Bearer token **Response Encoding**: X-Chatter-Entity-Encoding: false ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important The X-Chatter-Entity-Encoding HTTP request header must be set to false so that the client requests raw (unencoded) output in the response. See [Response Body Encoding](https://developer.salesforce.com/docs/atlas.en-us.264.0.chatterapi.meta/chatterapi/intro_encoding.htm "HTML (New Window)"). **Format**: JSON ## Request Query Parameters ### category - **Type**: Enum of type String - **Description**: Specifies the test category from which tests are retrieved. If this parameter isn’t specified, tests in all categories are retrieved. You can’t specify multiple categories in the same call. This parameter is available in API version 66.0 and later. Existing categories are: - apex—Retrieves only Apex test classes. - flow—Retrieves only automated flow test classes. ### testLevel - **Type**: Enum of type String - **Description**: Specifies which tests to retrieve based on test level. If omitted, defaults to RunAllTestsInOrg. Aligns with the testLevel request body parameter in the [Test Runner API](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_rest_resources_testing_runner_async.htm "Use the Test Runner API to execute Apex and flow tests asynchronously. Available for Apex tests in API version 30.0 and later. Available for automated flow tests in API version 65.0 and later."). Available in API version 68.0 and later and replaces showAllMethods. Valid values: - RunAllTestsInOrg—all tests in the org, regardless of namespace. Includes tests from installed managed packages. - RunLocalTests—tests in the org’s namespace, plus flow tests. Excludes tests from installed managed packages. ### showAllMethods - **Type**: Boolean - **Description**: Deprecated. Available only in API version 67.0 and earlier. In API version 68.0 and later, use testLevel instead. Specifies whether to retrieve all methods (true) or only visible methods (false) in a test class. If this parameter value isn’t specified, the default value is false. Results adhere to standard Apex visibility rules, which are influenced by factors such as namespace, managed package origin, access modifiers, and user permissions. For example, if a test class is private, then it isn’t retrieved unless showAllMethods is set to true. ### namespacePrefix - **Type**: String - **Description**: Specifies the namespace from which tests are retrieved. If this parameter isn’t specified, tests in all namespaces are retrieved. All automated flow tests are in the FlowTesting namespace. In namespaced packages and orgs, the full namespace of an automated flow test is FlowTesting.namespacePrefix. - In API version 66.0 and later, to query for only flow tests in all namespaces, set the category query parameter to flow and don’t specify a namespacePrefix. To query for only flow tests in a specific namespaced package or org, set the category query parameter to flow and set namespacePrefix to the namespace. - In API version 65.0, to query for only flow tests, set the namespacePrefix to FlowTesting. To query for flow tests in a specific namespaced package or org, set namespacePrefix to FlowTesting.namespacePrefix. ### nextRecord - **Type**: String - **Description**: A cursor that specifies the first test class to retrieve in the next page of results. This value is included in the nextRecordUrl property of the current page. ### pageSize - **Type**: Integer - **Description**: Specifies the number of test classes to retrieve per page. If this parameter value isn’t specified, the default value is 1000 classes. The maximum value is 10000 classes. ## Request Body None. ## Response Body Properties ### apexTestClasses - **Type**: Object\[\] - **Description**: An array of Apex test class objects. If there aren’t any tests in the result set, the value is \[\]. ### size - **Type**: Integer - **Description**: The total number of test classes in the result set across all pages. If the result set is empty, the value is 0. ### nextRecordsUrl - **Type**: String - **Description**: The URL of the next page in the result set. If the current page is the last page in a result set, the nextRecordsUrl value is null. ### testSetSignature - **Type**: String - **Description**: An MD5 hash that represents the test classes and methods in the result set. If there aren’t any tests in the result set, the value is "". When a result set spans multiple pages, the testSetSignature can change from one page to the next. A different testSetSignature indicates that the tests in the result set have changed since the retrieval of the previous page. ### message - **Type**: String - **Description**: An informational message about the request, such as an input validation warning, or null if there is no applicable message. Each Apex test class object in the apexTestClasses list includes these properties. ### id - **Type**: String - **Description**: The Salesforce ID of the test class. All Apex test classes have an ID. Not all flow test classes have an ID. If the flow test class doesn’t have an ID, then the id value is "". ### name - **Type**: String - **Description**: The name of the test class. For a flow test, the name is the API name of the flow. ### namespacePrefix - **Type**: String - **Description**: The namespace of the test class. Apex tests are in the default namespace. If an Apex test is in a namespaced package or org, the namespacePrefix value is "NamepacePrefix". Otherwise, the namespacePrefix value is "". All flow tests are in the [FlowTesting](https://developer.salesforce.com/docs/atlas.en-us.264.0.apexref.meta/apexref/apex_namespace_flowtesting.htm) namespace. If a flow test is in a namespaced package or org, the namespacePrefix value is "FlowTesting.NamepacePrefix". Otherwise, the namespacePrefix value is "FlowTesting". ### testMethods - **Type**: Object\[\] - **Description**: An array of test methods in the test class. Each test method object includes the name property, which is set to the name of the test method. For example, {"name": "testSimpleAddition"}. A flow test method name includes the API name of the flow followed by an underscore (\_) and the API name of the flow test. For example, {"name":"FlowName\_UpdateRecordFlowTest"} ## Example **Example Request** curl "https://MyDomain.my.salesforce.com/services/data/v68.0/tooling/tests?namespacePrefix=my\_namespace&pageSize=2" \\ \-H "Authorization: Bearer token" \\ -H "X-Chatter-Entity-Encoding: false" **Example Response Body** { "apexTestClasses":\[ { "id":"01pxx0000004UVl", "name":"BAAdditionTest", "namespacePrefix":"my\_namespace", "testMethods":\[ {"name":"testNegativeAddition"}, {"name":"testSimpleAddition"} \] }, { "id":"01pxx0000004UXN", "name":"BABitwiseTest", "namespacePrefix":"my\_namespace", "testMethods":\[ {"name":"testBitwiseAND"}, {"name":"testBitwiseOR"} \] } \], "message":null, "nextRecordsUrl":"/services/data/v68.0/tooling/tests?namespacePrefix=my\_namespace&pageSize=2&nextRecord=my\_namespace.BAComparisonTest", "size":10, "testSetSignature":"91a678b54197669171f11eb824d6765a" } # Run Unit Tests Asynchronously Use the Test Runner API to execute Apex and flow tests asynchronously. Available for Apex tests in API version 30.0 and later. Available for automated flow tests in API version 65.0 and later. ## Syntax **URI**: /services/data/vXX.X/tooling/runTestsAsynchronous/ **HTTPS Method**: POST **Authentication**: Authorization: Bearer token **Format**: JSON ## Request Parameters None. ## Request Body Properties There are two supported JSON request body formats. You can run asynchronous tests according to the test level or test category. For Apex tests, you can specify test classes or test suites. ### testLevel - **Type**: String - **Description**: Optional. Specifies the level of tests to run. If you set this property to a value other than RunSpecifiedTests, omit the classNames, classids, suitenames, and suiteids properties. If not specified, the default value is RunSpecifiedTests. - **Possible values**: - RunLocalTests—run all tests in your org, except the ones that originate from installed managed packages. - RunAllTestsInOrg—run all tests in your org, including tests in managed packages. - RunSpecifiedTests—run only the test suites or classes that you specify. ### Category - **Type**: String\[\] - **Description**: Optional. Specifies the categories of tests to run. If not specified, tests in all categories are run. - **Possible values**: - Apex–run Apex tests. - Flow–run flow tests. ### maxFailedTests - **Type**: String - **Description**: Optional. Specifies the maximum failed Apex tests allowed to run as an integer value from "0" to "1,000,000". If not specified, all Apex tests run regardless of the number of tests that have passed or failed. A value of "0" causes the test run to stop if any failure occurs. A value of "1" causes the test run to stop on the second failure, and so on. High values can cause slow performance. Each 1,000 tests that you add to your maxFailedTests value adds about three seconds to your test run, not including the time that the tests take to execute. maxFailedTests doesn’t support flow tests. Flow tests that fail during a test run aren’t included in the maxFailedTests count. ### skipCodeCoverage - **Type**: String - **Description**: Optional. Specifies whether to opt out of collecting code coverage information during the test run ("true") or to collect code coverage information ("false"). If not specified, the default value is false. ### classNames - **Type**: String - **Description**: Optional. A comma-separated list of Apex and flow test classes. If not specified, all test classes in the org run, as long as they meet the criteria of the other specified property values. For Apex test classes, use the namespace prefix of the test class, followed by a period (.) and the name of the test class. For example, "customNamepacePrefix.TestClassName". For Apex tests that don’t originate from namespaced packages or orgs, omit the namespace. For example, "TestClassName". All flow tests are in the FlowTesting namespace, and the flow test class name is the API name of the flow. Therefore, for a flow test that doesn’t originate from a namespaced package or org, specify the className value as "FlowTesting.flowName". For a flow test in a namespaced package or org, specify the className value as "FlowTesting.customNamepacePrefix.flowName". classNames doesn’t support flow tests. ### classids - **Type**: String - **Description**: Optional. A comma-separated list of Apex test class IDs. If not specified, all Apex test classes run, as long as they meet the criteria of the other specified property values. classids doesn’t support flow tests. ### suiteNames - **Type**: String - **Description**: Optional. A comma-separated list of Apex test suite names. If not specified, all Apex test suites run, as long as they meet the criteria of the other specified property values. suiteNames doesn’t support flow tests. ### suiteids - **Type**: Strings - **Description**: Optional. A comma-separated list of Apex test suite IDs. If not specified, all Apex test suites run, as long as they meet the criteria of the other specified request properties. suiteids doesn’t support flow tests. You can also run asynchronous tests for specific test classes and methods. With this format, you can specify Apex and flow tests. ### tests - **Type**: Object\[\] - **Description**: Required. An array of objects that represent tests to run. Each test object includes the test class name or test class ID and optionally methods in that class. ### maxFailedTests - **Type**: String - **Description**: Optional. Specifies the maximum failed Apex tests allowed to run as an integer value from "0" to "1,000,000". If not specified, all Apex tests run regardless of the number of tests that have passed or failed. A value of "0" causes the test run to stop if any failure occurs. A value of "1" causes the test run to stop on the second failure, and so on. High values can cause slow performance. Each 1,000 tests that you add to your maxFailedTests value adds about three seconds to your test run, not including the time that the tests take to execute. maxFailedTests doesn’t support flow tests. Flow tests that fail during a test run aren’t included in the maxFailedTests count. ### skipCodeCoverage - **Type**: String - **Description**: Optional. Specifies whether to opt out of collecting code coverage information during the test run ("true") or to collect code coverage information ("false"). If not specified, the default value is "false". Each test object in the tests array can include these properties. ### className - **Type**: String - **Description**: Required if classId isn’t included. The namespace prefix of the test class, followed by a period (.) and the name of the test class. For example, "customNamepacePrefix.TestClassName". For Apex tests that don’t originate from namespaced packages or orgs, omit the namespace. For example, "TestClassName". All flow tests are in the FlowTesting namespace, and the flow test class name is the API name of the flow. Therefore, for a flow test that doesn’t originate from a namespaced package or org, specify the className value as "FlowTesting.flowName". For a flow test in a namespaced package or org, specify the className value as "FlowTesting.customNamepacePrefix.flowName". ### classId - **Type**: String - **Description**: Required if className isn’t included. The Salesforce ID of the Apex test class. classId doesn’t support flow tests. ### testMethods - **Type**: String\[\] - **Description**: Optional. The names of methods in a test class to run. If not specified, all methods in the test class are run. For a flow test, includes the API name of the flow followed by an underscore (\_) and the API name of the flow test. For example, FlowName\_UpdateRecordFlowTest. Multiple occurrences of a test method name in a testMethods array are ignored. Test methods that don’t exist are skipped. ## Response Body Properties ### root - **Type**: String - **Description**: The [AsyncApexJob](https://developer.salesforce.com/docs/atlas.en-us.264.0.object_reference.meta/object_reference/sforce_api_objects_asyncapexjob.htm "HTML (New Window)") ID that identifies the set of tests that were run. ## Usage - To view the test progress and a results summary, query [ApexTestRunResult](https://developer.salesforce.com/docs/atlas.en-us.264.0.object_reference.meta/object_reference/sforce_api_objects_apextestrunresult.htm) and filter by the AsyncApexJob ID. - To view detailed test results after the tests are completed, query [ApexTestResult](https://developer.salesforce.com/docs/atlas.en-us.264.0.object_reference.meta/object_reference/sforce_api_objects_apextestresult.htm) and filter by the ApexTestRunResult ID. - If you set skipCodeCoverage to false, code coverage for each test method is stored in the [ApexCodeCoverage](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexcodecoverage.htm) Tooling API object. See [Testing and Code Coverage](https://developer.salesforce.com/docs/atlas.en-us.264.0.apexcode.meta/apexcode/apex_code_coverage_intro.htm). ## Example **Example Request Body: All Tests By Category**: Run tests according to the test level and test category. { "testLevel": "RunAllTestsInOrg", "Category": \["Flow", "Apex"\], "skipCodeCoverage": "true" } **Example Request Body: Specific Tests**: Execute specific test classes and methods. { "tests": \[ { "className": "FlowTesting.UpdateAccountDescriptionFlow", "testMethods": \[ "UpdateAccountDescriptionFlow\_TestAccountDescriptionUpdated", "UpdateAccountDescriptionFlow\_TestAccountDescriptionHasWords" \] }, { "className": "FlowTesting.pkgNs1.UpdateContactDescriptionFlow" }, { "className": "my\_namespace.BAAdditionTest" }, { "className": "SimpleApexTest" } \], "maxFailedTests": "2", "skipCodeCoverage": "false" } **Example Response Body**: {"root": "707xx0000000bnbh"} # Run Unit Tests Synchronously Use the Test Runner API to execute one or more Apex or flow tests synchronously. All test methods in a synchronous test run must be in the same class. Available for Apex tests in API version 30.0 and later. Available for automated flow tests in API version 65.0 and later. In API version 40.0 and later, running Apex tests synchronously using the POST method for /runTestsSynchronous/ requires the View Setup user permission. ## Syntax **URI**: /services/data/vXX.X/tooling/runTestsSynchronous/ **HTTPS Method**: POST **Authentication**: Authorization: Bearer token **Format**: JSON ## Request Parameters None. ## Request Body Properties ### tests - **Type**: Object\[\] - **Description**: Required. An array that contains a test object. The test object includes the Apex or flow test class name, the Apex test class ID, and optionally methods in that class to run. Only one test object is allowed in the array. For definitions of properties that the test object can include, see the next table. ### maxFailedTests - **Type**: String - **Description**: Optional. Specifies the maximum failed Apex tests allowed to run as an integer value from "0" to "1,000,000". If not specified, all Apex tests run regardless of the number of tests that have passed or failed. A value of "0" causes the test run to stop if any failure occurs. A value of "1" causes the test run to stop on the second failure, and so on. High values can cause slow performance. Each 1,000 tests that you add to your maxFailedTests value adds about three seconds to your test run, not including the time that the tests take to execute. maxFailedTests doesn’t support flow tests. Flow tests that fail during a test run aren’t included in the maxFailedTests count. ### skipCodeCoverage - **Type**: String - **Description**: Optional. Specifies whether to opt out of collecting code coverage information during the test run ("true") or to collect code coverage information ("false"). If not specified, the default value is "false". The test object in the tests array can include these properties. ### className - **Type**: String - **Description**: Required if classId isn’t included. The namespace prefix of the test class, followed by a period (.) and the name of the test class. For example, "customNamepacePrefix.TestClassName". For Apex tests that don’t originate from namespaced packages or orgs, omit the namespace. For example, "TestClassName". All flow tests are in the FlowTesting namespace, and the flow test class name is the API name of the flow. Therefore, for a flow test that doesn’t originate from a namespaced package or org, specify the className value as "FlowTesting.flowName". For a flow test in a namespaced package or org, specify the className value as "FlowTesting.customNamepacePrefix.flowName". ### classId - **Type**: String - **Description**: Required if className isn’t included. The Salesforce ID of the Apex test class. classId doesn’t support flow tests. ### testMethods - **Type**: String\[\] - **Description**: Optional. The names of methods in a test class to run. If not specified, all methods in the test class are run. For a flow test, includes the API name of the flow followed by an underscore (\_) and the API name of the flow test. For example, FlowName\_UpdateRecordFlowTest. Multiple occurrences of a test method name in a testMethods array are ignored. Test methods that don’t exist are skipped. ## Response Body Properties ### apexLogId - **Type**: String - **Description**: The ID of the [ApexLog](https://developer.salesforce.com/docs/atlas.en-us.264.0.object_reference.meta/object_reference/sforce_api_objects_apexlog.htm) object that contains information about the test run if debug logging is enabled. If debug logging disabled, the apexLogId is null. ### codeCoverage - **Type**: CodeCoverageResult\[\] - **Description**: If skipCodeCoverage is "true" or the test run only contains flow tests, returns an empty array. If skipCodeCoverage is "false" and the test run contains Apex tests, returns an array of [CodeCoverageResult](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_deployresult.htm#codecoverageresult) objects that contain the details of the code coverage for the specified unit tests. ### codeCoverageWarnings - **Type**: CodeCoverageWarning\[\] - **Description**: If skipCodeCoverage is "true" or the test run only contains flow tests, returns an empty array. If skipCodeCoverage is "false" and the test run contains Apex tests, returns an array of [CodeCoverageWarning](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_deployresult.htm#codecoveragewarning) objects that contain both the total number of lines that could have been executed, as well as the number, line, and column positions of code that was not executed. ### failures - **Type**: Object\[\] - **Description**: An array of objects that represents test methods that failed during the test run. ### flowCoverage - **Type**: FlowCoverageResult\[\] - **Description**: If skipCodeCoverage is "true" or the test run only contains Apex tests, returns an empty array. If skipCodeCoverage is false and the test run contains flow tests, returns an array of [FlowCoverageResult](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_deployresult.htm#flowcoverageresult) objects that contain information about the flow version and the number of elements executed by the test run. ### flowCoverageWarnings - **Type**: FlowCoverageWarning\[\] - **Description**: If skipCodeCoverage is "true" or the test run only contains Apex tests, returns an empty array. If skipCodeCoverage is false and the test run contains flow tests, returns an array of [FlowCoverageWarning](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_deployresult.htm#flowcoveragewarning) objects that contain information about the flow version that generated warnings. ### numFailures - **Type**: Integer - **Description**: The number of test methods that failed during the test run. ### numTestsRun - **Type**: Integer - **Description**: The total number test methods that were run. ### successes - **Type**: Object\[\] - **Description**: An array of objects that represents test methods that succeeded during the test run. ### totaltime - **Type**: Integer - **Description**: The total duration of the test run in milliseconds. Each failures and successes array is comprised of objects that represent test methods. Each test object has these properties. ### id - **Type**: String - **Description**: The Salesforce ID of the test method. ### methodName - **Type**: String - **Description**: The name of the test method. For a flow test, the methodName value is the API name of the flow test. ### name - **Type**: String - **Description**: The name of the test class. For a flow test, the name value is the API name of the flow. ### namespace - **Type**: String - **Description**: The namespace prefix of the test class that contains the test method. For a flow test that originates from a namespaced package or org, the namespace value is "FlowTesting.NamespacePrefix". For an Apex or flow test that doesn’t originate from a namespaced package or org, the namespace value is null. ### seeAllData - **Type**: Boolean - **Description**: Indicates whether the test method was allowed to access all record data in the org during the test run (true) or not (false). For Apex tests, the seeAllData value is set with the [isTest(SeeAllData=True)](http://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_testing_seealldata_using.htm) annotation on the Apex test class or method. For automated flow tests, the seeAllData value is always true. ### time - **Type**: Integer - **Description**: The time it took the test method to run, in milliseconds. The failures array can also contain these properties. ### message - **Type**: String - **Description**: The error message that the failed test returns. ### stackTrace - **Type**: String - **Description**: The location of the exception in the failed test. ### type - **Type**: String - **Description**: For internal use only. Possible values are: Class ## Example **Example Request Body** { "tests": \[ { "className": "FlowTesting.pkgNs1.UpdateAccountDescriptionFlow", "testMethods": \["UpdateAccountDescriptionFlow\_TestUpdateDescriptionDeleted", "UpdateAccountDescriptionFlow\_TestAccountDescriptionHasWords"\] } \], "maxFailedTests": "2", "skipCodeCoverage": "true" } **Example Response Body** { "apexLogId": null, "codeCoverage": \[\], "codeCoverageWarnings": \[\], "failures": \[\], "flowCoverage": \[\], "flowCoverageWarnings": \[\], "numFailures": 0, "numTestsRun": 2, "successes": \[ { "id": "07Mxx00000000NuEAI", "methodName": "TestUpdateDescriptionDeleted", "name": "UpdateAccountDescriptionFlow", "namespace": "FlowTesting.PkgNs1", "seeAllData": true, "time": 12 }, { "id": "07Mxx00000000NtEAI", "methodName": "TestAccountDescriptionHasWords", "name": "UpdateAccountDescriptionFlow", "namespace": "FlowTesting.PkgNs1", "seeAllData": true, "time": 129 } \], "totalTime": 12189 } # SandboxInfo Represents a sandbox. SandboxInfo enqueues a sandbox for creation or refresh. A create operation on SandboxInfo represents creation of a new sandbox, and an update represents refresh of an existing sandbox. For every creation or update, a SandboxProcess is automatically created and is used for monitoring the sandbox copy process. This object is available in API version 35.0 and later. ## Supported SOAP Calls create(), delete(), query(), retrieve(), update() ## Supported REST HTTP Methods GET, PATCH, POST, DELETE ## Fields | Field | Details | | --- | --- | | ActivationUserGroupId | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description A reference to the ID of the public group consisting of users who can access the sandbox. The user who created the sandbox is added to the group by default. This field is a relationship field. Restrictions - You can specify this value only during sandbox creation and refresh. - Available in API version 60.0 and later. - Behavior change announcement: Starting in Spring ’25, this field will be required when creating or refreshing a Developer or Developer Pro sandbox. To avoid losing the ability to create or refresh Developer and Developer Pro sandboxes, use API version 60.0 or later. Relationship Name ActivationUserGroup Relationship Type Lookup Refers To Group | | ApexClassId | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description A reference to the ID of an Apex class that runs after each copy of the sandbox. Allows you to perform business logic on the sandbox to prepare it for use. Restrictions - You can specify this value only during sandbox creation. - The class must extend the System.SandboxPostCopy interface. - Available in API version 36.0 and later. Relationship Name ApexClass Relationship Type Lookup Refers To ApexClass | | AutoActivate | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description If true, you can activate a sandbox refresh immediately. Restrictions This field only affects behavior for update operations (Sandbox refresh). | | CopyArchivedActivities | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description If true, archived activity data is copied to the sandbox. Restrictions This field is visible only if your organization has purchased an option to copy archived activities for sandbox. To obtain this option, contact Salesforce Customer Support. You can set the value to true only for a Full sandbox. | | CopyChatter | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description If true, archived Chatter data is copied to the sandbox. Restrictions You can set the value to true only for a Full sandbox. | | Description | Type string Properties Create, Filter, Nillable, Sort, Update Description A description of the sandbox, which helps you distinguish it from other sandboxes. Restrictions The description length can’t exceed 1,000 characters. | | Features | Type textarea Properties Create, Nillable, Update Description The add-on features to apply when creating or refreshing the sandbox. Currently there’s one valid value: - \['SandboxStorage'\]: Increases the data storage available for Developer sandboxes from 200 MB to 400 MB and Developer Pro sandboxes from 1 GB to 2 GB. You can’t use this feature with Partial Copy or Full sandboxes. | | HistoryDays | Type int Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Represents the number of days of object history to be copied in the sandbox. Valid values: - \-1, which means all available days - 0 (default) - 10 - 20 - 30 - 60 - 90 - 120 - 150 - 180 Restrictions This field affects behavior only for Full sandboxes. | | IsNonPreview | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description If true, creates a non-preview sandbox. During the transition from one Salesforce major release to another, sandboxes get upgraded on different timelines based on their release type. Preview sandboxes provide early access to new features and are upgraded approximately six weeks before production orgs, while non-preview sandboxes are upgraded as the major release upgrade completes. Between the completion of a major release upgrade and the start of the next release upgrade, we attempt to create preview sandboxes by default when you create or refresh a sandbox. Use a non-preview sandbox to test changes in an environment that’s identical to your production org without potential issues from the next release upgrade. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note If you create a non-preview sandbox 24 hours or less from the start of the next release upgrade, we can’t guarantee that the non-preview sandbox creation will be successful. See [Salesforce Sandbox Preview Instructions](https://help.salesforce.com/s/articleView?id=000357271&language=en_US&type=1) in Salesforce Help for more information on release transitions and timelines. Restrictions - Non-preview sandbox creation is a restricted feature. Contact Salesforce Customer Support to enable the feature and related API in your production org. - The IsNonPreview field is valid only between the completion of a major release upgrade and the start of the next release upgrade. If you create a sandbox outside of this window of time, remove the IsNonPreview field. | | LicenseType | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description Represents the sandbox license type. Valid values: - DEVELOPER - DEVELOPER\_PRO - PARTIAL - FULL | | SandboxName | Type string Properties Create, Filter, Group, idLookup, Sort, Update Description Name of the sandbox. Restrictions - Must be a unique sandbox name. - Must be alphanumeric characters. - Must be 10 or fewer characters. - Can’t be the same as the name of a sandbox that’s pending deletion. | | SourceId | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description A reference to the ID of a SandboxInfo that serves as the source org for a cloned sandbox. Relationship Name Source Relationship Type Lookup Refers To SandboxInfo | | TemplateId | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description A reference to the PartitionLevelScheme that represents the sandbox template associated with this sandbox. A sandbox template lets you select which objects to copy in a sandbox. To use the TemplateId field, you must have the ManageSandboxes user permission. Restrictions - Setting a TemplateId value for a Partial Copy sandbox is required. - Setting a TemplateId value for a Full sandbox is optional. - Setting a TemplateId value for other sandbox types is prohibited, because other sandbox types don’t support sandbox templates. Relationship Name Template Relationship Type Lookup Refers To PartitionLevelScheme | ## Usage SandboxInfo and  [SandboxProcess](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_sandboxprocess.htm#tooling_api_objects_sandboxprocess "Represents the sandbox copy process for a SandboxInfo record.") work together to manage the creation or refresh of a sandbox. ## Creating a Sandbox To enqueue a new sandbox: - Create a SandboxInfo record. - To find the status of a sandbox after it is enqueued, query SandboxProcess for a given SandboxInfoId field to find the latest SandboxProcess record. The value of Completed in Status indicates that the creation process is finished. ## Refreshing a Sandbox To refresh a sandbox: - To start a sandbox refresh, edit the SandboxInfo record. - To find the status of a sandbox after it is enqueued, find the latest SandboxProcess record by querying SandboxProcess for a given SandboxInfoId value. The value of Status indicates the current state of the process. - When the Status field value is Pending Activation, change the value of the RefreshAction field to either ACTIVATE or DISCARD. ## Deleting a Sandbox To delete a sandbox, delete the SandboxInfo record that represents the sandbox. Deleting the SandboxInfo record deletes the sandbox and frees up a license. ## Checking Sandbox Progress Each SandboxProcess record progresses through several stages represented by the StageType and StageNumber on the SandboxProcessStage record. The system updates progress details as the copy proceeds. For every stage, you can view specifics using the Status, StartTime, EndTime, and InfoLastUpdated fields. If your sandbox status is suspended or stopped for more than 1 hour, contact Salesforce customer support. While the system can't provide a time-based estimate, you can track your place in the queue or how much work exists and has been completed. - During the In Queue stage, you can check your current place in the queue with the EstimatedTotalWork field. - During the Data Copy and Activation stages, you can check how much work exists and has been completed to estimate copy completion with the EstimatedTotalWork, ActualTotalWork, and CompletedWork fields. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note - If IsActualWorkFinal = true, then ActualTotalWork is a better representation of the total work required. - If IsActualWorkFinal = false, then EstimatedTotalWork is a better representation of the total work required. # SandboxProcess Represents the sandbox copy process for a SandboxInfo record. When you create a SandboxInfo record, a corresponding SandboxProcess record is created. The latest SandboxProcess record for a SandboxInfo record represents the current state of the sandbox. This object is available in API version 35.0 and later. ## Supported SOAP Calls query(), retrieve(), update() ## Supported REST HTTP Methods GET, PATCH ## Fields Except for RefreshAction, all fields are read only. The read-only fields represent the attributes chosen on SandboxInfo when a copy process was enqueued, or represent the state of the process for monitoring purposes. | Field | Details | | --- | --- | | ActivatedById | Type reference Properties Filter, Group, Nillable, Sort Description A reference to the ID of the user who requested sandbox activation. Relationship Name ActivatedBy Relationship Type Lookup Refers To User | | ActivatedDate | Type dateTime Properties Filter, Nillable, Sort Description Represents when the sandbox was activated during a refresh. | | ActivationUserGroupId | Type reference Properties Filter, Group, Nillable, Sort, Update Description A reference to the ID of the group consisting of users who can access the sandbox. The user who created the sandbox is added to the group by default. Available in API version 60.0 and later. This field is a relationship field. Relationship Name ActivationUserGroup Relationship Type Lookup Refers To Group | | ApexClassId | Type reference Properties Filter, Group, Nillable, Sort Description A reference to the ID of an Apex class to run after each copy of the sandbox. Running this class allows you to perform DML operations on the sandbox to prepare it for use. The class must extend the System.SandboxPostCopy interface. Available in API version 36.0 and later. Relationship Name ApexClass Relationship Type Lookup Refers To ApexClass | | AutoActivate | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Represents whether the sandbox refresh is configured to activate immediately upon completion. | | CopyArchivedActivities | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, archived activity data is copied to the sandbox. Restrictions This field is visible only if your organization has purchased an option to copy archived activities for sandbox. To obtain this option, contact Salesforce Customer Support. You can set the value to true only for a Full sandbox. | | CopyChatter | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Represents whether archived Chatter data is copied to the sandbox. | | CopyProgress | Type int Properties Filter, Group, Nillable, Sort Description Represents how much of a copy has been completed. Available for Developer, Developer Pro, and Full sandboxes. Not available for Full or Partial sandboxes created from sandbox templates. | | Description | Type string Properties Filter, Nillable, Sort Description A description of the sandbox, which helps you distinguish it from other sandboxes. | | EndDate | Type dateTime Properties Filter, Nillable, Sort Description Represents when the sandbox copy process finished. | | Features | Type textarea Properties Nillable, Update Description The list of add-on features to apply after the sandbox is created or refreshed. Currently there’s one valid value: - \['SandboxStorage'\]: Increases the data storage available for Developer sandboxes from 200 MB to 400 MB and Developer Pro sandboxes from 1 GB to 2 GB. You can’t use this feature with Partial Copy or Full sandboxes. | | HistoryDays | Type int Properties Defaulted on create, Filter, Group, Sort Description Represents the number of days of object history to be copied in the sandbox. Valid values: - \-1, which means all available days - 0 - 10 - 20 - 30 - 60 - 90 - 120 - 150 - 180 | | LicenseType | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The sandbox license type. Valid values: - ADVANCED\_DEV - ADVANCED\_FULL - DEVELOPER - DEVELOPER\_PRO - PARTIAL - FULL - FULL\_PLUS | | RefreshAction | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort, Update Description Editing this field activates or discards a sandbox refresh. Valid values: - ACTIVATE - DISCARD Restrictions If all the following are true, you can activate or discard a sandbox refresh by editing the value in this field. - This record is the latest SandboxProcess record. - The associated sandbox has been refreshed. - This record’s Status is Pending Activation. | | SandboxInfoId | Type reference Properties Filter, Group, Nillable, Sort Description A reference to the ID of the SandboxInfo being processed (create or refresh). Relationship Name SandboxInfo Relationship Type Lookup Refers To SandboxInfo | | SandboxName | Type string Properties Filter, Group, idLookup, Sort Description The name of the sandbox. | | SandboxOrganization | Type string Properties Filter, Group, Nillable, Sort Description The ID of the org created by the copy process. This field is available in API version 37.0 and later. | | SourceId | Type reference Properties Filter, Group, Nillable, Sort, Update Description A reference to the ID of the SandboxInfo that this sandbox is a clone of. This field is used only when cloning a sandbox. When this field is used, LicenseType must be null. Your source sandbox must be an existing, completed sandbox, that belongs to the same production org as the sandbox you’re creating or refreshing. Your SourceId value can’t be the same SandboxInfo that you’re updating. Available in API version 37.0 and later. Relationship Name Source Relationship Type Lookup Refers To SandboxInfo | | StartDate | Type dateTime Properties Filter, Nillable, Sort Description Represents when the sandbox copy process started. | | Status | Type string Properties Filter, Group, Nillable, Sort Description Current state of the sandbox copy process. If running a SOQL query, use the values in parentheses. Possible values include: - Activating - Activation Confirmed (5) - Deactivation Confirmed (6) - Deactivation Finished (7) - Activation Processing (8) - Completed (1) - Deleted (D) - Deleting (E) - Discarding (F) - Locked (B) - Locking (L) - Pending (0) - Pending Activation (4) - Processing (2) - Sampling (X) - Stopped (G) - Suspended (S) | | TemplateId | Type reference Properties Filter, Group, Nillable, Sort Description A reference to the ID of the PartitionLevelScheme that represents the sandbox template associated with the sandbox for this process. A sandbox template selects which objects to copy in a sandbox. To use the TemplateId field, you must have the ManageSandboxes user permission. Relationship Name Template Relationship Type Lookup Refers To PartitionLevelScheme | ## Usage [SandboxInfo](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_sandboxinfo.htm#tooling_api_objects_sandboxinfo "Represents a sandbox.") represents a sandbox, and SandboxProcess represents the sandbox copy process, which occurs when you create a sandbox or refresh it. You can also delete a sandbox. ## Creating a Sandbox To enqueue a new sandbox: - Create a SandboxInfo record. - To find the status of a sandbox after it is enqueued, query SandboxProcess for a given SandboxInfoId field to find the latest SandboxProcess record. The value of Completed in Status indicates that the creation process is finished. ## Refreshing a Sandbox To refresh a sandbox: - To start a sandbox refresh, edit the SandboxInfo record. - To find the status of a sandbox after it is enqueued, find the latest SandboxProcess record by querying SandboxProcess for a given SandboxInfoId value. The value of Status indicates the current state of the process. - When the Status field value is Pending Activation, change the value of the RefreshAction field to either ACTIVATE or DISCARD. ## Deleting a Sandbox To delete a sandbox, delete the SandboxInfo record that represents the sandbox. Deleting the SandboxInfo record deletes the sandbox and frees up a license. ## Checking Sandbox Progress Each SandboxProcess record progresses through several stages represented by the StageType and StageNumber on the SandboxProcessStage record. The system updates progress details as the copy proceeds. For every stage, you can view specifics using the Status, StartTime, EndTime, and InfoLastUpdated fields. If your sandbox status is suspended or stopped for more than 1 hour, contact Salesforce customer support. While the system can't provide a time-based estimate, you can track your place in the queue or how much work exists and has been completed. - During the In Queue stage, you can check your current place in the queue with the EstimatedTotalWork field. - During the Data Copy and Activation stages, you can check how much work exists and has been completed to estimate copy completion with the EstimatedTotalWork, ActualTotalWork, and CompletedWork fields. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note - If IsActualWorkFinal = true, then ActualTotalWork is a better representation of the total work required. - If IsActualWorkFinal = false, then EstimatedTotalWork is a better representation of the total work required. # SandboxProcessStage Represents the status and progress during a spectific stage for a SandboxProcess record. Provides real time visibility into the status and progress of the sandbox copy so users can effectively plan and manage their development and testing activities. This object is available in API version 66.0 and later. ## Supported SOAP Calls query(), retrieve() ## Supported REST HTTP Methods GET ## Fields All fields are read only and represent the status and progress of the sandbox for monitoring purposes. | Field | Details | | --- | --- | | SandboxProcess | Type reference Properties Filter, Group, Nillable, Sort Description Indicates the sandbox process that this progress belongs to. Relationship Name SandboxProcess Relationship Type Lookup Refers To SandboxProcess | | StageType | Type picklist Properties Filter, Group, Nillable, Sort Description Indicates the type of stage. Valid values: - In Queue - Data Copy - Pending Activation - Activation Refers To SandboxProcess | | StageNumber | Type int Properties Filter, Group, Nillable, Sort Description Indicates the order of the stages. - 0In Queue - 1Data Copy - 2Pending Activation - 3Activation | | Status | Type picklist Properties Filter, Group, Nillable, Sort Description Indicates whether the stage has completed or not. Valid values: - Pending - In Progress - Completed | | StartTime | Type dateTime Properties Filter, Group, Nillable, Sort Description When the stage's status goes into In Progress. | | EndTime | Type dateTime Properties Filter, Group, Nillable, Sort Description When the stage's status goes into Completed. | | InfoLastUpdated | Type dateTime Properties Filter, Group, Nillable, Sort Description When we last checked the internal system for progress information on this stage. | | CompletedWork | Type int Properties Filter, Group, Nillable, Sort Description Indicates the current amount of work completed. Restrictions Only used for Data Copy and Activation. | | ActualTotalWork | Type int Properties Filter, Group, Nillable, Sort Description Indicates the verified amount of work to be completed. This number calculates continuously and may represent a partial amount while IsActualWorkFinal=false. Restrictions Only used for Data Copy and Activation | | IsActualWorkFinal | Type boolean Properties Filter, Group, Nillable, Sort Description Default false, set to true after calculation of the actual work completes. | | EstimatedTotalWork | Type int Properties Filter, Group, Nillable, Sort Description During the In Queue stage, this represents the number of sandboxes ahead of yours. During the Data Copy and Activation stages, this represents an estimation of work while IsActualWorkFinal=false. The estimation total derives this value from a prior sandbox copy and doesn't change throughout processing. This estimation isn't available if there's no prior copy. | ## Usage [SandboxInfo](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_sandboxinfo.htm#tooling_api_objects_sandboxinfo "Represents a sandbox.") represents a sandbox, and [SandboxProcess](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_sandboxprocess.htm#tooling_api_objects_sandboxprocess "Represents the sandbox copy process for a SandboxInfo record.") represents the sandbox copy process, which occurs when you create a sandbox or refresh it. **SandboxProcessStage** represents the status and progress of a copy during a specific stage within the sandbox copy process. ## Creating a Sandbox To enqueue a new sandbox: - Create a SandboxInfo record. - To find the status of a sandbox after it is enqueued, query SandboxProcess for a given SandboxInfoId field to find the latest SandboxProcess record. The value of Completed in Status indicates that the creation process is finished. ## Refreshing a Sandbox To refresh a sandbox: - To start a sandbox refresh, edit the SandboxInfo record. - To find the status of a sandbox after it is enqueued, find the latest SandboxProcess record by querying SandboxProcess for a given SandboxInfoId value. The value of Status indicates the current state of the process. - When the Status field value is Pending Activation, change the value of the RefreshAction field to either ACTIVATE or DISCARD. ## Deleting a Sandbox To delete a sandbox, delete the SandboxInfo record that represents the sandbox. Deleting the SandboxInfo record deletes the sandbox and frees up a license. ## Checking Sandbox Progress Each SandboxProcess record progresses through several stages represented by the StageType and StageNumber on the SandboxProcessStage record. The system updates progress details as the copy proceeds. For every stage, you can view specifics using the Status, StartTime, EndTime, and InfoLastUpdated fields. If your sandbox status is suspended or stopped for more than 1 hour, contact Salesforce customer support. While the system can't provide a time-based estimate, you can track your place in the queue or how much work exists and has been completed. - During the In Queue stage, you can check your current place in the queue with the EstimatedTotalWork field. - During the Data Copy and Activation stages, you can check how much work exists and has been completed to estimate copy completion with the EstimatedTotalWork, ActualTotalWork, and CompletedWork fields. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note - If IsActualWorkFinal = true, then ActualTotalWork is a better representation of the total work required. - If IsActualWorkFinal = false, then EstimatedTotalWork is a better representation of the total work required. # SchedulingObjective Represents scheduling objective settings for Workforce Engagement. This object is available in API version 55.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeLayout(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules This object is available only if Workforce Engagement is enabled in your org. To view, create, edit, and delete records, the user requires the Workforce Engagement Planner permission set. ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Filter, Group, 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 organization. Label is **Record Type Name**. This field is automatically generated, but you can supply your own value if you create the record using the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance may slow while Salesforce generates one for each record. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated metadata type in Metadata API. The full name can include a namespace prefix. 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. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the scheduling objective. Possible values are the supported languages in Workforce Engagement. | | MasterLabel | Type string Properties Filter, Group, idLookup, Sort Description Label for the scheduling objective. In the UI, this field is Scheduling Objective. | | Metadata | Type mns:[SchedulingObjective](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_schedulingobjective.htm) Properties Create, Nillable, Update Description The scheduling objective’s metadata. 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. | | SchedulingCategory | Type picklist Properties Filter, Group, Restricted picklist, Sort Description What the scheduling logic applies the objective to. Possible values are: - A—Service Appointment - B—Shift | | SchedulingObjectiveType | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Specifies the type of scheduling objective. Possible values are: - AgentPreference—In the UI, this value appears as Maximized Preferences. - BalanceNonStandardShifts - BalanceShifts | # SchedulingRule Represents scheduling rule settings for Workforce Engagement. This object is available in API version 53.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeLayout(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules This object is available only if Workforce Engagement is enabled in your org. To view, create, edit, and delete records, the user requires the Workforce Engagement Planner permission set. ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Filter, Group, 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 organization. Label is **Record Type Name**. This field is automatically generated, but you can supply your own value if you create the record using the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance may slow while Salesforce generates one for each record. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated metadata type in Metadata API. The full name can include a namespace prefix. 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. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the scheduling rule. Possible values are the supported languages in Workforce Engagement. | | MasterLabel | Type string Properties Filter, Group, idLookup, Sort Description Label for the scheduling rule. In the UI, this field is Scheduling Rule. | | Metadata | Type mns:[SchedulingRule](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_schedulingrule.htm) Properties Create, Nillable, Update Description The scheduling rule’s metadata. 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. | | SchedulingCategory | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Required. What the scheduling logic applies the rule to. Possible values are: - A—Service Appointment - B—Shift | | SchedulingRuleType | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Specifies the type of rule. Possible values are: - A—Active Resources - B—Match Skills - C—Availability - LimitNonstandardShifts—Specifies a rule type that limits how many non-standard shifts can be assigned to each agent. Available in API version 54.0 and later. - M—Match Territory - Q—Match Queues - RestTimeMinutes—Specifies a rule type that finds resources who have met the minimum rest time in minutes between consecutive shifts. Available in API version 56.0 and later. - W—Work Limit | # ScndTelephPrvdOtbdDtl Represents the outbound SIP routing configuration for a secondary telephony provider in Agentforce Contact Center BYOC. This object is available in API version 68.0 and later. ## Supported Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Special Access Rules To access ScndTelephPrvdOtbdDtl, you must have the Agentforce Contact Center Admin (Salesforce Voice) permission set assigned. ## Fields | Field | Details | | --- | --- | | CustomHeader | Type textarea Properties Create, Nillable, Update Description Custom SIP headers for outbound calls. | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description Unique name of the object in the API. | | HostConfig | Type textarea Properties Create, Nillable, Update Description Key-value pair of IP address and port. You can specify a maximum of 5 entries. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description Language of the MasterLabel. | | MasterLabel | Type string Properties Create, Filter, Group, idLookup, Sort, Update Description User interface label for the outbound details for the secondary telephony provider. This internal label doesn’t get translated. | | OutboundAuthEnabled | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether outbound authentication is enabled (true) or not (false). The default value is false. | | SecondaryTelephonyProviderId | Type reference Properties Create, Filter, Group, Nillable, Sort Description ID of the associated secondary telephony provider. This field is a relationship field. Relationship Name SecondaryTelephonyProvider Refers To SecondaryTelephonyProvider | # Scontrol Represents a custom s-control, which is custom content that our system hosts, but client applications execute. An s-control can contain any type of content that you can display or run in a Web browser. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### 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. We recommend that you move your s-controls to Visualforce. We continue to support this object. ## Supported SOAP Calls query() ## Supported REST Methods GET ## Special Access Rules - Your organization must be using Enterprise, Developer, or Unlimited Edition and be enabled for custom s-controls. - Customer Portal users can’t access this object. ## Fields | Field | Details | | --- | --- | | ContentSource | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort, Update Description Specify the source of the s-control content, either custom HTML, a snippet (s-controls that are included in other s-controls), or a URL. | | Description | Type string Properties Filter, Group, Nillable, Sort, Update Description Description of the custom s-control. | | DeveloperName | Type string Properties Filter, Group, Sort, Update 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 organization. Label is **S-Control Name**. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, Salesforce generates one for each record, which slows performance. | | EncodingKey | Type picklist Properties Filter, Group, Restricted picklist, Sort, Update Description Picklist of character set encodings, including ISO-08859-1, UTF-8, EUC, JIS, Shift-JIS, Korean (ks\_c\_5601-1987), Simplified Chinese (GB2312), and Traditional Chinese (Big5). | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | Name | Type string Properties Filter, Group, Sort, Update Description Required. Name of this custom s-control. Label is **Label**. | | NamespacePrefix | Type string 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 the following values: - In Developer Edition organizations, the namespace prefix is set to the namespace prefix of the organization for all objects that support it. There is 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 is the namespace prefix of the Developer Edition organization of the package developer. - In organizations that are not Developer Edition organizations, NamespacePrefix is only set for objects that are part of an installed managed package. There is no namespace prefix for all other objects. | | SupportsCaching | Type boolean Properties Defaulted on create, Filter, Group, Sort, Update Description Indicates whether the s-control supports caching (true) or not (false). | ## Usage Use custom s-controls to manage custom content that extends application functionality. All users can view custom s-controls, but the “Customize Application” permission is required to create or update custom s-controls. # SearchLayout Represents a search layout defined for an object. This object is available in the Tooling API version 34.0 and later. ## Supported SOAP Calls describeObjects(), query() ## Supported REST HTTP Methods GET ## Limitations [SOQL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_soql_limits.htm "Some Tooling API objects have SOQL limitations. These limitations apply to any Metadata Catalog query, which applies to all Custom Metadata Types and Metadata Catalog entities, not only the ones explicitly listed.") [SOSL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_sosl_limits.htm "Two Tooling API objects, EntityDefinition and FieldDefinition, have some SOSL limitations. ExternalString and MetadataComponentDependency (Beta) don’t support SOSL searches.") ## Fields | Field | Details | | --- | --- | | ButtonsDisplayed | Type [SearchLayoutButtonsDisplayed](#searchlayoutbuttonsdisplayed) Properties Nillable Description The list of buttons available in list views for an object. This field is equivalent to the Buttons Displayed value in Object Name List View in the Search Layouts related list on the object detail page. It’s also equivalent to the listViewButtons field on SearchLayouts in Metadata API. | | DurableId | Type string 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. DurableId in queries allows you to find the right record without having to retrieve the entire record. | | EntityDefinition | Type string Properties Filter, Group, Nillable, Sort Description The name of the object associated with this search layout. Use in subqueries. | | EntityDefinitionId | Type string Properties Filter, Group, Nillable, Sort Description ID of the record in EntityDefinition. Use in subqueries. | | FieldsDisplayed | Type [SearchLayoutFieldsDisplayed](#searchlayoutfieldsdisplayed) Properties Nillable Description The list of fields displayed in a search result for the object. The name field is required. It’s always displayed as the first column header, so it isn’t included in this list; all additional fields are included. The field name relative to the object name, for example MyCustomField\_\_c, is specified for each custom field. This field is equivalent to the Search Results in the Search Layouts related list on the object detail page in the application user interface. It’s also equivalent to searchResultsAdditionalFields in Metadata API. | | Label | Type string Properties Filter, Group, Nillable, Sort Description The label for this search layout. | | LayoutType | Type string Properties Filter, Group, Nillable, Sort Description The type of search layout. | | ListLayout | Type string Properties Filter, Group, Nillable, Sort Description Unique identifier for the field. Identifies the list layout a search layout is related to. Available in API version 48.0 and later. | | Profile | Type string Properties Filter, Group, Nillable, Sort Description Unique identifier for the field. Identifies the profile to which a search layout applies. Available in API version 48.0 and later. | | ProfileName | Type string Properties Filter, Group, Nillable, Sort Description The name of the profile to which a search layout applies. Available in API version 48.0 and later. | ## SearchLayoutButtonsDisplayed | Type | Details | | --- | --- | | applicable | Type boolean Description If true, the buttons listed in buttons apply to the object associated with this search layout. | | buttons | Type [SearchLayoutButton](#SearchLayoutButton) Description The list of buttons on the object associated with this search layout. | ## SearchLayoutButton | Type | Details | | --- | --- | | apiName | Type string Description The API name of the button. | | label | Type string Description The button’s label text. | ## SearchLayoutFieldsDisplayed | Type | Details | | --- | --- | | applicable | Type boolean Description If true, the fields listed in fields are available in the object associated with this search layout. | | fields | Type string Description The list of fields on the object associated with this search layout. | ## SearchLayoutField | Type | Details | | --- | --- | | apiName | Type string Description The API name of the field. | | label | Type string Description The field’s label text. | | sortable | Type boolean Description If true, the fields can be sorted. | # SecondaryTelephonyProvider Represents the SIP configuration for secondary telephony providers in Agentforce Contact Center Bring Your Own Carrier (BYOC). This object is available in API version 68.0 and later. ## Supported Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Special Access Rules To access SecondaryTelephonyProvider, you must have the Agentforce Contact Center Admin (Salesforce Voice) permission set assigned. ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description Unique name of the object in the API. | | InboundAuthEnabled | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether inbound authentication is enabled (true) or not (false). The default value is false. | | InboundIpAllowlist | Type textarea Properties Create, Nillable, Update Description Allowed inbound caller ID configurations used to process incoming calls from the secondary telephony provider. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description Language of the MasterLabel. | | MasterLabel | Type string Properties Create, Filter, Group, idLookup, Sort, Update Description User interface label for the secondary telephony provider. This internal label doesn’t get translated. | | TelephonyProviderId | Type reference Properties Create, Filter, Group, Sort Description ID of the associated telephony provider. This field is a relationship field. Relationship Name TelephonyProvider Refers To TelephonyProvider | # SecurityHealthCheck Represents your org’s Health Check score. The score indicates how well your org’s security settings comply with Salesforce-recommended values in the baseline standard. Only users with the “View Setup and Configuration” user permission can retrieve data from this object. Available in Tooling API version 37.0 and later. ## Supported SOAP Calls query() ## Supported REST HTTP Methods GET ## Fields | Field | Details | | --- | --- | | CustomBaselineId | Type string Properties Filter, Group, Nillable, Sort Description Unique identifier for the field. Identifies which baseline is used to import settings and calculate score. | | DurableId | Type string 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. To simplify queries, use this field. | | Score | Type string Properties Filter, Group, Nillable, Sort Description The Health Check score for the org. The score can range from 0 to 100. | ## Usage Use this object to query your org’s Health Check score. SELECT Score FROM SecurityHealthCheck More Health Check information is available by querying the object [SecurityHealthCheckRisks](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_securityhealthcheckrisks.htm "Represents your org’s security setting values, risks, and Salesforce-recommended setting values. Only users with the \"View Setup and Configuration\" user permission can retrieve data from this object. Available in Tooling API version 37.0 and later."). # SecurityHealthCheckRisks Represents your org’s security setting values, risks, and Salesforce-recommended setting values. Only users with the "View Setup and Configuration" user permission can retrieve data from this object. Available in Tooling API version 37.0 and later. ## Supported SOAP Calls query() ## Supported REST HTTP Methods GET ## Fields | Field | Details | | --- | --- | | DurableId | Type string 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. To simplify queries, use this field. | | OrgValue | Type string Properties Filter, Nillable, Sort Description The org’s value for the security setting. | | OrgValueRaw | Type string Properties Filter, Nillable, Sort Description The org’s value for the security setting as it is stored in the database, usually without units of measure or extra text. For example, if the Minimum Password Length setting’s OrgValue is 8 characters, the OrgValueRaw is 8. | | RiskType | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The level of risk of the org’s security setting value. Valid values are: - HIGH\_RISK - MEDIUM\_RISK - MEETS\_STANDARD | | SecurityHealthCheckId | Type string Properties Filter, Group, Nillable, Sort Description The ID of the Health Check score record associated with this field. | | Setting | Type string Properties Filter, Group, Nillable, Sort Description The name of the security setting. For example, Minimum password length. | | SettingGroup | Type string Properties Filter, Group, Nillable, Sort Description The name of the security setting group in which the setting resides in the Setup tree. For example, Password Policies. | | SettingRiskCategory | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The level of risk of the org’s security settings. Available in version 40.0 and later. Valid values are: - HIGH\_RISK - MEDIUM\_RISK - LOW\_RISK - INFORMATIONAL | | StandardValue | Type string Properties Filter, Nillable, Sort Description Salesforce-recommended standard value for the security setting. | | StandardValueRaw | Type string Properties Filter, Nillable, Sort Description Salesforce-recommended standard value for the security setting as it is stored in the database, usually without units of measure or extra text. For example, if the Minimum Password Length setting’s StandardValue is 8 characters, the StandardValueRaw is 8. | ## Usage Use this object to query your org’s security setting values, risks, and Salesforce-recommended setting values. Reading security settings and their security status is useful if you have multiple Salesforce applications that require consistency and compliance in their security posture. This query gets a list of your org’s high risk settings. SELECT RiskType, Setting, SettingGroup, OrgValue, StandardValue FROM SecurityHealthCheckRisks where RiskType=’HIGH\_RISK’ This query gets your org’s Health Check score and a list of your org’s high risk settings. SELECT Score, (SELECT RiskType, Setting, SettingGroup, OrgValue, StandardValue FROM SecurityHealthCheckRisks where RiskType=’HIGH\_RISK’) FROM SecurityHealthCheck This query gets your org’s Health Check score and the security settings that meet the Salesforce baseline standard. SELECT Score, (SELECT RiskType, Setting, SettingGroup, OrgValue, StandardValue FROM SecurityHealthCheckRisks where RiskType=’MEETS\_STANDARD’) FROM SecurityHealthCheck This query lists all the values in the Salesforce baseline standard. SELECT Setting, SettingGroup, StandardValue FROM SecurityHealthCheckRisks # SensitiveDataRuleElmnt Represents a predefined PII, PHI, and PCI named-entity type supported by the PII Redaction Model Service. This object is available in API version 68.0 and later. Each record maps to a specific entity type, such as PERSON, SSN, or CREDIT\_CARD that the parent sensitive data rule detects and redacts, and optionally overrides the confidence threshold defined by the parent group. ## Supported Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Fields | Field | Details | | --- | --- | | Category | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description Category of the named-entity type. Possible values are: - PCI: Payment Card Industry Data - PHI: Protected Health Information - PII: Personally Identifiable Information | | IsEnabled | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether the entity type is active for the parent rule (true) or not (false). The default value is false, which temporarily deactivates detection for the entity type without deleting the record. | | SensitiveDataRuleElmntGrpId | Type reference Properties Create, Filter, Group, Sort Description ID of the associated sensitive data rule element group. This field is a relationship field. Relationship Name SensitiveDataRuleElmntGrp Refers To SensitiveDataRuleElmntGrp | | Type | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description PII/PCI named-entity type to detect and redact. Possible values are: - ADDRESS - BANK\_ACCOUNT - CREDIT\_CARD - CREDIT\_CARD\_CVV - CREDIT\_CARD\_EXPIRY - EMAIL - PERSON - PHONE - PIN\_PASSWORD - SSN | # SensitiveDataRuleElmntGrp Stores Named Entity Recognition (NER)-based sensitive-data rules at the organization level to redact PII/PCI from voice and messaging transcripts. This object is available in API version 68.0 and later. Each record defines the redaction action, mask character, participant roles, channel, and an optional default confidence threshold. These rules run in parallel with regex-based [LiveChatSensitiveDataRule](https://developer.salesforce.com/docs/atlas.en-us.264.0.object_reference.meta/object_reference/sforce_api_objects_livechatsensitivedatarule.htm) and merges all detected spans before applying redaction. ## Supported Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Fields | Field | Details | | --- | --- | | ChannelName | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description Channel to which the rule group applies. Possible values are: - MESSAGING\_SESSION - VOICE | | Description | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description Summary of what this rule redacts and its intended purpose. Admins can view the description while managing or reviewing rules. | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description Unique API name of the object. | # ServiceChannel Represents a channel for work items that are received from your customers. This object is available in API version 65.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules Available only if Omni-Channel is enabled in your org. ## Fields | Field | Details | | --- | --- | | AcwExtensionDuration | Type int Properties Create, Filter, Group, Nillable, Sort, Update Description The maximum length of time, measured in seconds, an agent can spend on After Conversation Work (ACW) each time they extend the timer. You must set this field if HasAcwExtensionEnabled is set to true. Specify a value from 10 through 3600. Available only for service channels of type Messaging or Voice. | | AfterConvoWorkMaxTime | Type int Properties Create, Filter, Group, Nillable, Sort, Update Description The maximum length of time, measured in seconds, an agent has to complete ACW. You must set this field if HasAfterConvoWorkTimer is set to true. Specify a value from 10 through 3600. Available only for service channels of type Messaging or Voice. | | CapacityModel | Type picklist Properties Create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The method that determines when an agent's capacity for a work item is released. With the Status-Based capacity routing model, work remains assigned and applied to an agent’s capacity until the work is completed or reassigned to a different agent. In contrast, the tab-based capacity model releases an agent’s capacity when a work tab is closed in the service console. Possible values are: - StatusBased - TabBased | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description The unique name of the object in the API. | | DoesCheckCapOnOwnerChange | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether the override the capacity check is set to on (true) or not (false). In Status-Based capacity routing model, when work is reassigned to an agent, you can choose to override the capacity check and keep the work assigned to a specific agent. This field is available in API version 65.0 and later.
 The default value is false. | | DoesCheckCapOnStatusChange | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether the override the capacity check is set to on (true) or not (false). In the Status-Based capacity routing model, when work is reopened, you can choose to override the capacity check and keep the work assigned to a specific agent. This field is available in API version 65.0 and later.
 The default value is false. | | DoesMinimizeWidgetOnAccept | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether the Omni-Channel widget automatically minimizes when an agent accepts work (true) or not (false). The default value is false. | | HasAcwExtensionEnabled | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether agents can extend their ACW (true) or not (false). Available only if HasAfterConvoWorkTimer is set to true. If set to true, you must also set the AcwExtensionDuration and MaxExtensions fields. Available only for service channels of type Messaging or Voice. The default value is false. | | HasAfterConvoWorkTimer | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether ACW time can be configured for the channel (true) or not (false). If set to true, you must also set the AfterConvoWorkMaxTime field. Available only for service channels of type Messaging or Voice. The default value is false. | | HasAutoAcceptEnabled | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Indicates whether work items in a service channel open automatically in the agent’s workspace so that the agent doesn’t have to manually accept them (true) or not (false). The default value is false. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The language for the service channel. | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description The label for the service channel. | | MaxExtensions | Type picklist Properties Create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The maximum number of times an agent can extend their ACW time. Specify a value from 1 through 10. You must set this field if hasAcwExtensionEnabled is set to true. Available only for service channels of type Messaging or Voice. | | RelatedEntity | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The type of object that’s associated with this service channel. This field is unique within your organization. Possible values are: - Account - Activity - Case - ChangeRequest - Contact - ContactRequest - FlowOrchestrationWorkItem - Incident - Lead - Opportunity - Order - Problem - SocialPost - WorkOrder | # ServiceFieldDataType Deprecated in API version 34.0, the ServiceFieldDataType object is removed in version 58.0 and later. # ServicePresenceStatus Represents a presence status that can be assigned to a service channel. This object is available in API version 65.0 and later. ## Supported SOAP API Calls create(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods GET, HEAD, PATCH, POST, Query ## Special Access Rules Available only if Omni-Channel is enabled in your org. ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description The unique name of the object in the API. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The language of the presence status. | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description The label of the presence status. | # Setup Objects Use setup objects to interact with metadata for declarative development. For example, you can create your own version of Setup, or restrict the amount of data required to push to an app to a mobile phone. - **[AuthorizedEmailDomain](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_authorizedemaildomain.htm)**: Represents an authorized domain for email verification. - **[BusinessProcess](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_businessprocess.htm)**: Represents a business process. - **[CleanDataService](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_cleandataservice.htm)**: Represents a data service that adds and updates data in existing records in an org. - **[CleanRule](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_cleanrule.htm)**: Represents a data integration rule that controls how a data service adds and updates data for existing records in an org. - **[CompactLayout](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_compactlayout.htm)**: Represents the values that define a compact page layout. - **[CompactLayoutInfo](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_compactlayoutinfo.htm)**: Represents the metadata for a custom or standard compact layout. - **[CompactLayoutItemInfo](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_compactlayoutiteminfo.htm)**: Represents a field selected for a compact layout, and the order of that field in the compact layout. - **[CustomField](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_customfield.htm)**: Represents a custom field on a custom object that stores data unique to your organization. - **[CustomFieldMember](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_customfieldmember.htm)**: Represents the working copy of a field for editing or saving in a MetadataContainer. - **[CustomObject](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_customobject.htm)**: Represents a custom object that stores data unique to your organization. Includes access to the associated CustomObject object and related fields in Salesforce Metadata API. - **[CustomTab](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_customtab.htm)**: Represents a custom tab. - **DataAssessmentConfigItem**: Represents a saved configuration for a specific vendor’s package for data assessment. - **[DataIntegrationRecordPurchasePermission](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_dataintegrationrecordpurchasepermission.htm)**: Represents Lightning Data purchase credits that a Salesforce admin has granted to users. - **[DuplicateJobDefinition](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_duplicatejobdefinition.htm)**: Setup object defining a job that identifies duplicate record items globally. - **[DuplicateJobMatchingRuleDefinition](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_duplicatejobmatchingruledefinition.htm)**: Setup object specifying a MatchingRule to use with DuplicateJob instances that share a DuplicateJobDefinition. - **[Document](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_document.htm)**: Represents a file that a user has uploaded. Unlike Attachment records, documents are not attached to a parent object. - **[EmailTemplate](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_emailtemplate.htm)**: Represents a template for an email, mass email, list email, or HVS email. - **[EntityDefinition](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_entitydefinition.htm)**: Provides row-based access to metadata about standard and custom objects. - **[EntityLimit](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_entitylimit.htm)**: Represents the limits for an object as displayed in the Setup UI. - **[FieldDefinition](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_fielddefinition.htm)**: 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. - **[FieldMapping](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_fieldmapping.htm)**: Represents a mapping between fields in an object in the org and fields in a data service. A data service uses two separate field maps: one controls how the data service matches records in an object, and the other controls how the data service adds or updates data for an existing record. - **[FieldMappingField](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_fieldmappingfield.htm)**: Represents a field in an object in the org that maps to a field in a data service. - **[FieldMappingRow](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_fieldmappingrow.htm)**: Represents a field in a data service record that maps to a field in an object record in the org. - **[FieldSet](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_fieldset.htm)**: Represents the metadata for a group of fields. - **[FlexiPage](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_flexipage.htm)**: Represents a Lightning page. A Lightning page is a customizable page composed of regions containing Lightning components. - **[Flow](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_flow.htm)**: Use the Flow object to retrieve and update specific flow versions. - **[FlowDefinition](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_flowdefinition.htm)**: The parent of a set of flow versions. - **[Group](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_group.htm)**: Represents a set of User records. Groups can contain individual users, other groups, or the users in a particular role or territory. In addition, groups can contain all users below a particular role or territory in the hierarchy. - **[HistoryRetentionJob](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_historyretentionjob.htm)**: Represents the body of retained data from the archive, and the status of the archived data. - **[KeywordList](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_keywordlist.htm)**: Represents a list of keywords used in Experience Cloud site moderation. - **[Layout](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_layout.htm)**: Represents a page layout. - **[LookupFilter](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_lookupfilter.htm)**: Represents a lookup filter, which restricts the valid values and lookup dialog results for lookup, master-detail, and hierarchical relationship fields. - **[MatchingRule](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_matchingrule.htm)**: Setup object specifying a MatchingRule to use with DuplicateJob instances that share a DuplicateJobDefinition. Available in Tooling API version 42.0 and later. - **[MenuItem](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_menuitem.htm)**: Represents a menu item. - **[ModerationRule](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_moderationrule.htm)**: Represents a rule used in your Experience Cloud site to moderate member-generated content. - **[PermissionSet](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_permissionset.htm)**: Represents a set of permissions that’s used to grant more access to users without changing their profile or reassigning profiles. Available in API version 28.0 and later. - **[PermissionSetAssignment](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_permissionsetassignment.htm)**: Represents a user’s assignment to a permission set or permission set group. This object is available in API version 22.0 and later. - **[PermissionSetGroup](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_permissionsetgroup.htm)**: Represents a group of permission sets and the permissions within them. Use permission set groups to organize permissions based on job functions or tasks. Then, you can package the groups as needed. Available in Tooling API version 45.0 and later. - **[PermissionSetGroupComponent](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_permissionsetgroupcomponent.htm)**: A junction object that relates the PermissionSetGroup and PermissionSet objects via their respective IDs; enables permission set group recalculation to determine the aggregated permissions for the group. Available in Tooling API version 45.0 and later. - **[PermissionSetTabSetting](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_permissionsettabsetting.htm)**: Represents a tab’s settings for a profile or permission set. Use PermissionSetTabSetting for manipulating tab visibility on profiles and permission sets. Available in Tooling API version 37.0 and later. - **[Profile](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_profile.htm)**: Represents a user profile. A profile defines a user’s permission to perform different functions within Salesforce. - **[ProfileLayout](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_profilelayout.htm)**: Represents a profile layout. - **[QuickActionDefinition](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_quickactiondefinition.htm)**: Represents the definition of a quick action. - **[QuickActionList](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_quickactionlist.htm)**: Represents a list of quick actions. - **[QuickActionListItem](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_quickactionlistitem.htm)**: Represents an item in a quick action list. - **[RecentlyViewed](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_recentlyviewed.htm)**: Represents metadata entities typically found in Setup such as page layout definitions, workflow rule definitions, and email templates that the current user has recently viewed. - **[RecordType](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_recordtype.htm)**: Represents a custom record type. - **[SearchLayout](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_searchlayout.htm)**: Represents a search layout defined for an object. - **[Scontrol](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_scontrol.htm)**: Represents a custom s-control, which is custom content that our system hosts, but client applications execute. An s-control can contain any type of content that you can display or run in a Web browser. - **[User](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_user.htm)**: Represents a user. You can retrieve standard fields on User with the Tooling API, but custom fields can’t be retrieved. - **[WebLink](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_weblink.htm)**: Represents a custom button or link. - **[ValidationRule](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_validationrule.htm)**: Represents a validation rule or workflow rule which specifies the formula for when a condition is met. - **[WorkflowAlert](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_workflowalert.htm)**: Represents a workflow alert. A workflow alert is an email generated by a workflow rule or approval process and sent to designated recipients. - **[WorkflowFieldUpdate](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_workflowfieldupdate.htm)**: Represents a workflow field update. - **[WorkflowOutboundMessage](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_workflowoutboundmessage.htm)**: Represents an 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. - **[WorkflowRule](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_workflowrule.htm)**: Represents a workflow rule that is used to fire off a specific workflow action when the specified criteria is met. Includes access to the associated WorkflowRule object in Salesforce Metadata API. - **[WorkflowTask](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_workflowtask.htm)**: Represents a workflow task that is used to fire off a specific workflow action when the specified criteria is met. Includes access to the associated WorkflowRule object in Salesforce Metadata API. # ShiftSegmentType Represents shift segment type settings for Shift Scheduling and Workforce Engagement. This object is available in API version 55.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeLayout(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules This object is available only if Shift Scheduling or Workforce Engagement is enabled in your org. To view, create, edit, and delete records, the user requires the Shift Scheduling Planner or Workforce Engagement Planner permission set. ## Fields | Field | Details | | --- | --- | | AdherenceThreshold | Type int Properties Filter, Group, Sort Description A threshold, in minutes. If the agent starts the scheduled activity within this threshold, the shift segment activity is in adherence. | | Category | Type picklist Properties Filter, Group, Restricted picklist, Sort Description A category for the type of shift segment. Possible values are: - Break—Break times, such as a coffee or lunch break. - NonWork—Non-working activities, such as training or meetings. - Work—Work activities, such as answering calls, responding to chats, or handling cases. | | Color | Type string Properties Filter, Group, Nillable, Sort Description Sets a background color when shift activities of this type are displayed in the UI. Use a 3- or 6-digit hexadecimal format, for example #FF00FF. | | DeveloperName | Type string Properties Filter, Group, 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 organization. Label is **Record Type Name**. This field is automatically generated, but you can supply your own value if you create the record using the API. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. If no DeveloperName is specified, performance may slow while Salesforce generates one for each record. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated metadata type in Metadata API. The full name can include a namespace prefix. 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. | | IsActive | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates if the shift segment type is active (true) or not (false). The default value is true. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the shift segment type. Possible values are the languages that Workforce Engagement supports. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, idLookup, Sort Description The label of the shift segment type. | | NamespacePrefix | Type string 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 the following values: - In Developer Edition organizations, the namespace prefix is set to the namespace prefix of the organization for all objects that support it. There is 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 are not Developer Edition organizations, NamespacePrefix is only set for objects that are part of an installed managed package. There is no namespace prefix for all other objects. | # SiteDetail Represents the details of a Salesforce site or Experience Cloud site. Available in API version 38.0 and later. ## Supported Calls describeSObjects(), query() ## Supported REST HTTP Methods GET ## Fields | Field | Details | | --- | --- | | DurableId | Type string Properties Filter, Group, Nillable, Sort Description The ID of the Site object. | | IsRegistrationEnabled | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether the site allows users to sign up. | | SecureUrl | Type string Properties Filter, Group, Nillable, Sort Description The URL of the website. | ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note SiteDetail fields are exposed in SOAP API version 45.0 and later. You can use Tooling API to query for SiteDetail 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. SiteDetail is still exposed in Tooling API to User Profiles with the ViewSetup permission. # Skill Represents the settings for a skill used for field service or to route chats to agents in Chat, such as the name of the skill and which agents the skills are assigned to. This object is available in API version 65.0 and later. ## Supported SOAP API Calls create(), describeSObjects(), query(), retrieve(), search(), update(), upsert() ## Supported REST API Methods GET, HEAD, PATCH, POST, Query ## Fields | Field | Details | | --- | --- | | Description | Type textarea Properties Create, Nillable, Update Description Specifies the description of the skill. | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update 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 organization. This field is automatically generated, but you can supply your own value if you create the record using the API. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The language for the Skill. | | MasterLabel | Type string Properties Create, Filter, Group, idLookup, Sort, Update Description The label for Skill. | # SOAP Calls Use SOAP if you’re using a strongly typed language like Java that generates Web service client code. For details about usage, syntax, and authentication, see the SOAP API Developer Guide. To access the Tooling API WSDL, from Setup, enter API in the Quick Find box, then select **API** and click **Generate Tooling WSDL**. Like the Salesforce SOAP API, Tooling API uses the following calls. - **create()**: Adds one or more records to your organization’s data. When creating objects with the Metadata field, only one object can be processed in a request. - **delete()**: Deletes one or more records from your organization’s data. - **describeLayout()**: Retrieve metadata about page layouts for a specified SOjbect. - **describeGlobal()**: Lists the available Tooling API objects and their metadata. - **describeSObjects()**: Describes the metadata (field list and object properties) for the specified object or array of objects. Call describeGlobal() to retrieve a list of all Tooling API objects for your organization, then iterate through the list and use describeSObjects() to obtain metadata about individual objects. - **describeValueType()**: Describes the metadata for a specified namespace and value type. For information about describeValueType, see the Metadata API Developer Guide. - **describeWorkitemActions()**: Describes which actions are available for a specified work item. - **executeanonymous(string apexcode)**: Executes the specified block of Apex anonymously and returns the result. - **query()**: Executes a query against a Tooling API object and returns data that matches the specified criteria. - **queryMore()**: Retrieves the next batch of objects from a query(). - **retrieve()**: Retrieves one or more records based on the specified IDs. - **runTests()**: Runs one or more methods within an Apex class, using the synchronous test execution mechanism. All test methods in a synchronous test run must be in the same class. The synchronous runTests() call accepts a [RunTestsRequest](https://developer.salesforce.com/docs/atlas.en-us.264.0.api.meta/api/sforce_api_calls_runtests_request.htm "HTML (New Window)") object. For sample code and more information, see [runTests()](https://developer.salesforce.com/docs/atlas.en-us.264.0.api.meta/api/sforce_api_calls_runtests.htm "HTML (New Window)"). - **runTestsAsynchronous()**: Runs one or more methods within one or more Apex classes, using the asynchronous test execution mechanism. This example shows a call to a class that calls the runTestsAsynchronous endpoint. conn.runTestsAsynchronous(classids, suiteids, maxFailedTests, testLevel.value, classNames, suiteNames, tests, skipCodeCoverage) For more runTestsAsynchronous() example code, see [ApexTestQueueItem](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apextestqueueitem.htm). All parameters are mandatory. To provide values for only some parameters, specify the others as null. - The classids, suiteids, classNames, and suiteNames parameters must all be specified. To provide values for only some of these parameters, specify the others as null. To use TestLevel.RunLocalTests or TestLevel.RunAllTestsInOrg, specify all class- and suite-related parameters as null. - A value for maxFailedTests is mandatory. To allow all tests in your org to run, regardless of how many tests fail, set maxFailedTests to \-1. To stop the test run from executing new tests after a given number of tests fail, set maxFailedTests to an integer value from 0 to 1,000,000. This integer value sets the maximum allowable test failures. A value of 0 causes the test run to stop if any failure occurs. A value of 1 causes the test run to stop on the second failure, and so on. Keep in mind that high values can cause slow performance. Each 1,000 tests that you add to your maxFailedTests value adds about 3 seconds to your test run, not including the time that the tests take to execute. - The testLevel parameter is available and required in API version 37.0 and later, but its value can be null. Other permissible values include: - **RunSpecifiedTests**: Only the tests that you specify are run. - **RunLocalTests**: All tests in your org are run, except the ones that originate from installed managed packages. Omit identifiers for specific tests when you use this value. - **RunAllTestsInOrg**: All tests are run. The tests include all tests in your org, including tests of managed packages. Omit identifiers for specific tests when you use this value. - The tests parameter is available and required in API version 41.0 and later, but its value can be null. This property is an array of type [TestsNode](https://developer.salesforce.com/docs/atlas.en-us.264.0.api.meta/api/sforce_api_calls_runtests_request.htm "HTML (New Window)"). - The skipCodeCoverage parameter is available in API version 43.0 and later, but its value can be null. This property is a boolean that indicates whether to opt out of collecting code coverage information during the test run. - **search()**: Search for records that match a specified text string. - **update()**: Updates one or more existing records in your org’s data. When updating objects with the Metadata field, only one object can be updated per request. - **upsert()**: Creates records and updates existing records; uses a custom field to determine the presence of existing records. To upsert objects with the Metadata field, pass in only one object per request. ## SOAP Headers The SOAP headers available in the Tooling API WSDL are described in [SOAP Headers for Tooling API](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_api_tooling_soap_headers.htm#intro_api_tooling_soap_headers "Tooling API provides SOAP headers similar to the SOAP API headers."). ## Examples These examples use C#, but you can use any language that supports Web services. To compile Apex classes or triggers in Developer Edition or sandbox organizations, use create(). The next sample uses [ApexClass](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexclass.htm) to compile a simple class with a single method called SayHello. String classBody = "public class Messages {\\n" + "public string SayHello() {\\n" + " return 'Hello';\\n" + "}\\n" + "}"; // create an ApexClass object and set the body ApexClass apexClass = new ApexClass(); apexClass.Body = classBody; ApexClass\[\] classes = { apexClass }; // call create() to add the class SaveResult\[\] saveResults = sforce.create(classes); for (int i = 0; i < saveResults.Length; i++) { if (saveResults\[i\].success) { Console.WriteLine("Successfully created Class: " + saveResults\[i\].id); } else { Console.WriteLine("Error: could not create Class "); Console.WriteLine(" The error reported was: " + saveResults\[i\].errors\[0\].message + "\\n"); } } The IsCheckOnly parameter on [ContainerAsyncRequest](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_containerasyncrequest.htm) indicates whether an asynchronous request compiles code but doesn’t execute or save it (true), or compiles and save the code (false). The next example expands upon the first by modifying the SayHello() method to accept a person’s first and last name. This example uses [MetadataContainer](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_metadatacontainer.htm) with [ApexClassMember](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexclassmember.htm) to retrieve and update the class, and [ContainerAsyncRequest](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_containerasyncrequest.htm) to compile and deploy the changes to the server. You can use the same method with [ApexTriggerMember](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apextriggermember.htm), [ApexComponentMember](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexcomponentmember.htm), and [ApexPageMember](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexpagemember.htm). ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note To test your code, modify the IsCheckOnly parameter in the next sample, and log in to your organization after a successful execution to verify the results. - When IsCheckOnly = true, the SayHello() method remains the same. ApexClassMember contains the compiled results, but the class on the server remains the same. - When IsCheckOnly = false, the SayHello() method shows the change to accept a person’s first and last name. String updatedClassBody = "public class Messages {\\n" + "public string SayHello(string fName, string lName) {\\n" + " return 'Hello ' + fName + ' ' + lName;\\n" + "}\\n" + "}"; //create the metadata container object MetadataContainer Container = new MetadataContainer(); Container.Name = "SampleContainer"; MetadataContainer\[\] Containers = { Container }; SaveResult\[\] containerResults = sforce.create(Containers); if (containerResults\[0\].success) { String containerId = containerResults\[0\].id; //create the ApexClassMember object ApexClassMember classMember = new ApexClassMember(); //pass in the class ID from the first example classMember.ContentEntityId = classId; classMember.Body = updatedClassBody; //pass the ID of the container created in the first step classMember.MetadataContainerId = containerId; ApexClassMember\[\] classMembers = { classMember }; SaveResult\[\] MembersResults = sforce.create(classMembers); if (MembersResults\[0\].success) { //create the ContainerAsyncRequest object ContainerAsyncRequest request = new ContainerAsyncRequest(); //if the code compiled successfully, save the updated class to the server //change to IsCheckOnly = true to compile without saving request.IsCheckOnly = false; request.MetadataContainerId = containerId; ContainerAsyncRequest\[\] requests = { request }; SaveResult\[\] RequestResults = sforce.create(requests); if (RequestResults\[0\].success) { string requestId = RequestResults\[0\].id; //poll the server until the process completes QueryResult queryResult = null; String soql = "SELECT Id, State, ErrorMsg FROM ContainerAsyncRequest Where id = '" + requestId + "'"; queryResult = sforce.query(soql); if (queryResult.size > 0) { ContainerAsyncRequest \_request = (ContainerAsyncRequest)queryResult.records\[0\]; while (\_request.State.ToLower() == "queued") { //pause the process for 2 seconds Thread.Sleep(2000); //poll the server again for completion queryResult = sforce.query(soql); \_request = (ContainerAsyncRequest)queryResult.records\[0\]; } //now process the result switch (\_request.State) { case "Invalidated": break; case "Completed": //class compiled successfully //see the next example on how to process the SymbolTable break; case "Failed": . . break; case "Error": break; case "Aborted": break; } } else { //no rows returned } } else { Console.WriteLine("Error: could not create ContainerAsyncRequest object"); Console.WriteLine(" The error reported was: " + RequestResults\[0\].errors\[0\].message + "\\n"); } } else { Console.WriteLine("Error: could not create Class Member "); Console.WriteLine(" The error reported was: " + MembersResults\[0\].errors\[0\].message + "\\n"); } } else { .. Console.WriteLine("Error: could not create MetadataContainer "); Console.WriteLine(" The error reported was: " + containerResults\[0\].errors\[0\].message + "\\n"); } } To access Apex class and trigger data in a structured format, use a [SymbolTable](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_symboltable.htm). The next sample queries the [ApexClassMember](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexclassmember.htm) object created in the previous example to obtain the [SymbolTable](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_symboltable.htm) of the modified class. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note The SOQL statement used depends on when the data is retrieved. - To execute the query from within the previous sample, use the ID of the [ContainerAsyncRequest](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_containerasyncrequest.htm). For example, SELECT Body, ContentEntityId, SymbolTable FROM ApexClassMember where MetadataContainerId = '" + requestId \+ "'" - Otherwise, use the ID of the modified class as shown in the next sample. For example, SELECT ContentEntityId, SymbolTable FROM ApexClassMember where ContentEntityId = '" + classId + "'" //use the ID of the class from the previous step string classId = "01pA00000036itIIAQ"; QueryResult queryResult = null; String soql = "SELECT ContentEntityId, SymbolTable FROM ApexClassMember where ContentEntityId = '" + classId + "'"; queryResult = sforce.query(soql); if (queryResult.size > 0) { ApexClassMember apexClass = (ApexClassMember)queryResult.records\[0\]; SymbolTable symbolTable = apexClass.SymbolTable; foreach (Method \_method in symbolTable.methods) { //here's the SayHello method String \_methodName = \_method.name; //report the modifiers on the method such as global, public, private, or static String \_methodVisibility = \_method.modifiers; //get the method's return type string \_methodReturnType = \_method.returnType; //get the fName & lName parameters foreach (Parameter \_parameter in \_method.parameters) { string \_paramName = \_parameter.name; string \_parmType = \_parameter.type; } } } else { //unable to locate class }  To add checkpoints to your code for debugging, use [ApexExecutionOverlayAction](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexexecutionoverlayaction.htm). This sample adds a checkpoint to the class from the previous samples: //use the ID of the class from the first sample. string classId = "01pA00000036itIIAQ"; ApexExecutionOverlayAction action = new ApexExecutionOverlayAction(); action.ExecutableEntityId = classId; action.Line = 3; action.LineSpecified = true; action.Iteration = 1; action.IterationSpecified = true; ApexExecutionOverlayAction\[\] actions = { action }; SaveResult\[\] actionResults = sforce.create(actions); if (actionResults\[0\].success) { // checkpoint created successfully } else { Console.WriteLine("Error: could not create Checkpoint "); Console.WriteLine(" The error reported was: " + actionResults\[0\].errors\[0\].message + "\\n"); } #### See Also - [Tooling API Objects](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_list.htm) - [SOAP API Developer Guide](https://developer.salesforce.com/docs/atlas.en-us.264.0.api.meta/api/ "SOAP API Developer Guide - HTML (New Window)") # SOAP Headers for Tooling API Tooling API provides SOAP headers similar to the SOAP API headers. Control the behavior of SOAP calls: - [AllOrNoneHeader](https://developer.salesforce.com/docs/atlas.en-us.264.0.api.meta/api/sforce_api_header_allornoneheader.htm) Allows a call to roll back all changes unless all records are processed successfully. - [AllowFieldTruncationHeader](https://developer.salesforce.com/docs/atlas.en-us.264.0.api.meta/api/sforce_api_header_allowfieldtruncation.htm) Specifies that for some fields, when a string is too large, the operation fails. Without the header, strings for these fields are truncated. - [CallOptions](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_calloptions.htm) Specifies the API client identifier. - [DebuggingHeader](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_debuggingheader.htm) Specifies that the deployment result contains 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. - [DisableFeedTrackingHeader](https://developer.salesforce.com/docs/atlas.en-us.264.0.api.meta/api/sforce_api_header_disablefeedtracking.htm) Specifies that changes made in the current call are tracked in feeds. - [MetadataWarningsHeader](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/api_tooling_soap_header_metadatawarningsheader.htm "Allows you to save metadata even if warnings are returned.") Allows you to save metadata even if warnings are returned. - [PackageVersionHeader](https://developer.salesforce.com/docs/atlas.en-us.264.0.api.meta/api/sforce_api_header_packageversionheader.htm) Specifies the package version for each installed managed package. - [SessionHeader](https://developer.salesforce.com/docs/atlas.en-us.264.0.api.meta/api/sforce_api_header_sessionheader.htm) Specifies the session ID returned from the login server after a successful login(). This session ID is used in all subsequent calls. # SOQL Operation Limitations Some Tooling API objects have SOQL limitations. These limitations apply to any Metadata Catalog query, which applies to all Custom Metadata Types and Metadata Catalog entities, not only the ones explicitly listed. These objects in Tooling API don’t support SOQL operations COUNT(), GROUP BY, LIMIT, LIMIT OFFSET, OR, NOT, and INCLUDES. - CompactLayoutInfo - CompactLayoutItemInfo - DataType - EntityDefinition - EntityLimit - EntityParticle - FieldDefinition - Publisher - RelationshipDomain - RelationshipInfo - SearchLayout - ServiceFieldDataType - StandardAction - TimeSheetTemplate - UserEntityAccess - UserFieldAccess The unsupported operations for these objects return errors or incorrect results, as these examples illustrate. ## GROUP BY Example Query: SELECT COUNT(qualifiedapiname), isfeedenabled FROM EntityDefinition GROUP BY isfeedenabled Error Returned: The requested operation is not yet supported by this SObject storage type, contact salesforce.com support for more information. ## LIMIT, LIMIT OFFSET Example Queries: SELECT qualifiedapiname FROM EntityDefinition LIMIT 5 SELECT qualifiedapiname FROM EntityDefinition LIMIT 5 OFFSET 10 An incorrect result is returned because LIMIT and LIMIT OFFSET are ignored. ## NOT Example Query: SELECT qualifiedapiname FROM EntityDefinition WHERE qualifiedapiname!='Account' Error Returned: Only equals comparisons permitted ## OR Example Query: SELECT qualifiedapiname, keyprefix FROM EntityDefinition WHERE isdeletable=true OR (isfeedenabled=false AND keyprefix='01j') Error Returned: Disjunctions not supported ## ORDER BY Example Query: SELECT EntityDefinition.DeveloperName, ValidationName, Active, Description, ErrorDisplayField, ErrorMessage FROM ValidationRule ORDER BY EntityDefinition.DeveloperName ASC, ValidationName ASC Error Returned: ERROR: relation "core.virtual\_standard\_entity\_data\_template" does not exist You can always order by fields of the object that you’re querying, but you can get an error when you order by the fields of a joined object. ## INCLUDES Example Query: SELECT ComplianceGroup FROM FieldDefinition WHERE EntityDefinitionId = 'Account' AND ComplianceGroup includes('GDPR') Error Returned: Unsupported filter type MetadataComponentDependency (Pilot) doesn’t support GROUP BY or aggregate functions other than COUNT(). ## SOQL Queries in Scratch Orgs When querying the Tooling API from a scratch org, up to 2,000 records may be returned. In all other types of orgs, a query returns a single record. # SOQLResult A complex type that represents the result of a SOQL query in an ApexExecutionOverlayResult object. Available from API version 28.0 or later. ## Fields | Field | Details | | --- | --- | | queryError | Type string Description The error text returned if the execution was unsuccessful. | | queryMetadata | Type QueryResultMetadata Description The structured result returned from a successful execution. QueryResultMetadata includes the following fields: - columnMetadata - entityName - groupBy - idSelected - keyPrefix | | queryResult | Type array of MapValue Description MapValue contains an array of MapEntry, which contains the following fields: - keyDisplayValue - value (reference to StateValue) | ## Usage Overlay SOQL on checkpoints to capture structured debugging information. If your SOQL query may return more than one record when dealing with complex types, select only one row. For example, you can use a LIMIT=1 clause in your SOQL query, or you can list rows for the user and have them select the row to inspect. # SOSL Operation Limitations Two Tooling API objects, EntityDefinition and FieldDefinition, have some SOSL limitations. ExternalString and MetadataComponentDependency (Beta) don’t support SOSL searches. ## EntityDefinition and FieldDefinition EntityDefinition and FieldDefinition support the following SOSL operations: FIND - Literal text search, for example: FIND {account} - Text search with a single wildcard, for example: FIND {account\*} RETURNING EntityDefinition FIND {account?} RETURNING FieldDefinition FIND {account\*fax} RETURNING EntityDefintion FIND {account?fax} RETURNING FieldDefinition The wildcard can’t be the first character in a search term, consistent with search behavior for all objects. - Quotation marks are supported. - The escape character \\ (slash) is supported. For example, to search for the character \* (asterisk), include the escape character: FIND {account\\\*} RETURNING EntityDefinition RETURNING is required. FIND {MyString} RETURNING FieldDefinition - - Multiple object type names are supported. ...RETURNING EntityDefinition, FieldDefinition - A field list is supported. ... RETURNING EntityDefinition (MasterLabel, QualifiedApiName) WHERE is supported, though logical operators are not. LIMIT is supported. Example: FIND {account\*} RETURNING FieldDefinition (MasterLabel, NamespacePrefix WHERE EntityDefinitionId='Account') All other [SOSL operations](https://developer.salesforce.com/docs/atlas.en-us.264.0.soql_sosl.meta/soql_sosl/sforce_api_calls_sosl_about.htm) are unsupported. If you include an unsupported expression in a search term, the expression is ignored, except for the following, which cause an error: - Multiple wildcards in a search term - Unsupported operators OR or NOT - Parentheses for grouping operators - Morphological tokenization - An asterisk wildcard isn’t added at the end of single-character searches. ## ExternalString ExternalString doesn’t support SOSL searches. ## MetadataComponentDependency (Beta) MetadataComponentDependency is a virtual entity, so it doesn’t support SOSL searches. # SourceMember Reserved for internal use. Do not use this object. Accuracy of results isn’t guaranteed. # SourceMemberDeployRequest Reserved for internal use. # StandardAction Represents the buttons, links, and actions (standard actions) for a standard or custom object. This object is available in API version 34.0 and later. You can view the standard actions from an object’s management settings by going to Buttons, Links, and Actions. ## Supported SOAP Calls query() ## Supported REST HTTP Methods GET ## Fields | Field | Details | | --- | --- | | ContentType | Type string Properties Filter, Group, Restricted picklist, Sort Description Indicates whether the button or link is standard, URL, s-control, JavaScript action, or Visualforce page. This value maps to the Content Source field in the user interface. | | Description | Type string Properties Filter, Group, Nillable, Sort Description Text displayed to an administrator in the standard action setup page. Description can be different from the Label, which is the label displayed in the user interface to end users. It can also be different from Name, which is a unique string used in merge fields. | | DurableId | Type string 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. DurableId in queries allows you to find the right record without having to retrieve the entire record. | | EntityDefinitionId | Type string Properties Filter, Group, Sort Description The ID of the standard or custom object for which this standard action is defined. | | IsOverridden | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether this standard action has been overridden (true, or not. | | Label | Type string Properties Filter, Group, Nillable, Sort Description The text that displays in a user interface for the standard action. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | Name | Type string Properties Filter, Group,Sort Description The unique name for the button or link when referenced from a merge field. This name can contain only underscores and alphanumeric characters, and must be unique in your organization. It must begin with a letter, not include spaces, not end with an underscore, and not contain two consecutive underscores. | | OverrideContentId | Type reference Properties Filter, Group, Nillable, Sort Description ID of an OverrideContent record. | ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note StandardAction fields are exposed in SOAP API version 45.0 and later. You can use Tooling API to query for StandardAction 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. StandardAction is still exposed in Tooling API to User Profiles with the ViewSetup permission. # StaticResource Represents the working copy of a static resource file for editing or saving. Static resources allow you to upload content that you can reference in a Visualforce page, including images, stylesheets, JavaScript, and other files. Available in Tooling API version 29.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API HTTP Methods Query, GET, POST, PATCH, DELETE ## Fields | Field Name | Details | | --- | --- | | Body | Type string Properties Create, Update Description The data for the static resource file. | | ContentType | Type string Properties Create, Update Description Required. The content type of the file, for example text/plain. | | CacheControl | Type string Properties Create, Update 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.  The valid values are: - Private - Public | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | Name | Type string Properties Create, Update Description 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 | ## Usage To create, edit, or save a static resource file, create a StaticResource object that references it. # SubscriberPackage Represents an installable package (first- or second-generation) across all Salesforce instances. Available in API version 41.0 and later. ## Supported SOAP Calls describeSObjects(), query(), retrieve() ## Supported REST HTTP Methods GET, Query ## Fields | Field | Details | | --- | --- | | Description | Type string Properties Nillable, Sort Description Description of the package. | | IsPackageValid | Type boolean Properties Defaulted on create, Group, Sort Description Indicates whether the package metadata is available consistently across all Salesforce instances. If this value is false, the package is unavailable for installation. | | Name | Type string Properties Group, idLookup, Sort Description Name of the package. | | NamespacePrefix | Type string Properties Group, idLookup, Nillable, Sort Description Namespace prefix that identifies the components of your package in the subscriber’s org. | ## Usage Represents a package that can be installed. To query this object, include an ID (begins with 033) in your SOQL WHERE clause. # SubscriberPackageVersion Represents a package version (first- or second-generation) across all Salesforce instances. Available in API version 41.0 and later. ## Supported SOAP Calls describeSObjects(), query(), retrieve() ## Supported REST HTTP Methods GET, Query ## Fields | Field | Details | | --- | --- | | AppExchangeDescription | Type string Properties Nillable, Sort Description The AppExchange description for this package. If the AppExchange listing for the package doesn’t contain a value for this field, the field’s value is null. | | AppExchangeLogoUrl | Type string Properties Nillable, Sort Description The URL that AppExchange uses to display the logo for this package. If the AppExchange listing for the package doesn’t contain a value for this field, the field’s value is null. | | AppExchangePackageName | Type string Properties Group, Nillable, Sort Description The AppExchange name for this package. If the AppExchange listing for the package doesn’t contain a value for this field, the field’s value is null. | | AppExchangePublisherName | Type string Properties Group, Nillable, Sort Description The AppExchange publisher name for this package. If the AppExchange listing for the package doesn’t contain a value for this field, the field’s value is null. | | BuildNumber | Type int Properties Group, Nillable, Sort Description Part of the version number of a package version. The complete version number format is major.minor.patch.build—for example, in 1.2.0.5 the build number is 5. | | CspTrustedSites | Type [SubscriberPackageCspTrustedSites](#SubscriberPackageCspTrustedSites) Properties Nillable Description List of new Trusted URLs ([CspTrustedSite](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_csptrustedsite.htm "Represents a trusted URL. For each CspTrustedSite, you can specify Content Security Policy (CSP) directives and permissions policy directives. Each CSP directive allows Lightning components, third-party APIs, and WebSocket connections to access a resource type from the trusted URL. If the Permissions-Policy HTTP header is enabled, each permissions policy directive grants the trusted URL access to a browser feature. In API version 58.0 and earlier, CspTrustedSite included only CSP directives and was referred to as CSP Trusted Sites in Salesforce Setup. Available in API version 39.0 and later.")) that the user must authorize before installing the package version. Package upgrades don't include previously installed Trusted URLs. | | Dependencies | Type [SubscriberPackageDependencies](#SubscriberPackageDependencies) Properties Nillable Description Other subscriber package versions that this subscriber package version depends on. Available in API version 44.0 and later. | | Description | Type string Properties Nillable, Sort Description Description of the package. | | InstallationKey | Type RAW Properties Not applicable Description Installation key for a key-protected package. This field is hidden. It’s not queryable, but you can include it in the WHERE clause of SOQL queries. In some queries, it’s required. To query unlocked packages that have installation keys, you must include the correct InstallationKey value in your WHERE clause. However, if the unlocked package version is already installed in your org you can query it without specifying an InstallationKey value. For managed packages, an InstallationKey value in the WHERE clause is optional. | | InstallValidationStatus | Type picklist Properties Group, Nillable, Restricted picklist, Sort Description Status of the validation tests that are run during the package version install. Valid values are: - NoErrorsDetected - BetaInstallIntoProductionOrg - CannotInstallEarlierVersion - CannotUpgradeBeta - CannotUpgradeUnmanaged - DeprecatedInstallPackage - ExtensionsOnLocalPackages - PackageNotInstalled - PackageHasInDevExtensions - InstallIntoDevOrg - NoAccess - PackagingDisabled - PackagingNoAccess - PackageUnavailable - UninstallInProgress - UnknownError - NamespaceCollision | | IsBeta | Type boolean Properties Defaulted on create, Group, Sort Description Indicates whether the package version is released (false). | | IsDeprecated | Type boolean Properties Defaulted on create, Group, Sort Description Specifies whether this package version has been marked as deprecated (true) or not (false). | | IsManaged | Type boolean Properties Defaulted on create, Group, Sort Description Specifies whether this package is managed (true) or not (false). | | IsPasswordProtected | Type boolean Properties Defaulted on create, Group, Sort Description Specifies whether installation of this package version requires the user to provide an installation key (true) or not (false). | | IsSecurityReviewed | Type boolean Properties Defaulted on create, Group, Sort Description Specifies whether the package has passed the security review required for publishing in AppExchange. | | MajorVersion | Type int Properties Group, Nillable, Sort Description Part of the version number of a package version. The complete version number format is major.minor.patch.build—for example, in 1.2.0.5 the major version is 1. | | MinorVersion | Type int Properties Group, Nillable, Sort Description Part of the version number of a package version. The complete version number format is major.minor.patch.build—for example, in 1.2.0.5 the minor version is 2. | | Name | Type string Properties Group, idLookup, Sort Description Name of the package. | | Package2ContainerOptions | Type picklist Properties Group, Nillable, Restricted picklist, Sort Description Container options for the second-generation package. These options determine the upgrade and editability rules. Valid values are: - Managed - Unlocked | | PatchVersion | Type int Properties Group, Nillable, Sort Description Part of the version number of a package version. The complete version number format is major.minor.patch.build—for example, in 1.2.0.5 the patch version is 0. | | PostInstallUrl | Type string Properties Nillable, Sort Description The fully qualified URL of the post-installation instructions. Instructions are shown as a link after installation and are available from the package detail view. | | Profiles | Type [SubscriberPackageProfiles](#SubscriberPackageProfiles) Properties Nillable Description List of profiles for which the package was installed. | | PublisherName | Type string Properties Group, Nillable, Sort Description The name of the publisher of this package. | | ReleaseNotesUrl | Type string Properties Nillable, Sort Description The fully qualified URL of the package release notes. Release notes are shown as a link during the installation process and are available from the package detail view after installation. | | ReleaseState | Type picklist Properties Group, Nillable, Restricted picklist, Sort Description If the package version is a beta version, the value is Beta. Otherwise, the value is Released. | | RemoteSiteSettings | Type [SubscriberPackageRemoteSiteSettings](#SubscriberPackageRemoteSiteSettings) Properties Nillable Description List of new Remote Site Settings that the user must authorize before installing the package. Package upgrades don’t include previously installed Remote Site Settings. | | SubscriberPackageId | Type ID Properties Group, Nillable, Sort Description ID of the parent SubscriberPackage. The ID starts with the string 033. This value is case-sensitive and must be unique. | | IsOrgDependent | Type boolean Properties Defaulted on create, Group, Sort Description Indicates whether the package depends on unpackaged metadata in the installation org (true) or not (false). This field applies to unlocked packages only. The default value is false. Available in API version 49.0 and later. | ## SubscriberPackageCspTrustedSites Represents the list of new Trusted URLs that the user must authorize before installing the package version. Available in API version 41.0 and later. In API version 58. | Field | Details | | --- | --- | | settings | Type [SubscriberPackageCspTrustedSite](#SubscriberPackageCspTrustedSite) Description List of Trusted URLs ([CspTrustedSite](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_csptrustedsite.htm "Represents a trusted URL. For each CspTrustedSite, you can specify Content Security Policy (CSP) directives and permissions policy directives. Each CSP directive allows Lightning components, third-party APIs, and WebSocket connections to access a resource type from the trusted URL. If the Permissions-Policy HTTP header is enabled, each permissions policy directive grants the trusted URL access to a browser feature. In API version 58.0 and earlier, CspTrustedSite included only CSP directives and was referred to as CSP Trusted Sites in Salesforce Setup. Available in API version 39.0 and later.")) that have been added to the package. These sites must be authorized before installation. If the AppExchange listing for the package doesn’t contain a value for this field, the field’s value is null. | ## SubscriberPackageCspTrustedSite Represents a new Trusted URLs ([CspTrustedSite](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_csptrustedsite.htm "Represents a trusted URL. For each CspTrustedSite, you can specify Content Security Policy (CSP) directives and permissions policy directives. Each CSP directive allows Lightning components, third-party APIs, and WebSocket connections to access a resource type from the trusted URL. If the Permissions-Policy HTTP header is enabled, each permissions policy directive grants the trusted URL access to a browser feature. In API version 58.0 and earlier, CspTrustedSite included only CSP directives and was referred to as CSP Trusted Sites in Salesforce Setup. Available in API version 39.0 and later.")) that the user must authorize before installing the package version. Available in API version 41.0 and later. | Field | Details | | --- | --- | | endpointUrl | Type string Description The URL associated with the [CspTrustedSite](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_csptrustedsite.htm "Represents a trusted URL. For each CspTrustedSite, you can specify Content Security Policy (CSP) directives and permissions policy directives. Each CSP directive allows Lightning components, third-party APIs, and WebSocket connections to access a resource type from the trusted URL. If the Permissions-Policy HTTP header is enabled, each permissions policy directive grants the trusted URL access to a browser feature. In API version 58.0 and earlier, CspTrustedSite included only CSP directives and was referred to as CSP Trusted Sites in Salesforce Setup. Available in API version 39.0 and later."). | ## SubscriberPackageDependencies Represents a list of subscriber package version IDs that a subscriber package version depends on. Available in API version 44.0 and later. | Field | Details | | --- | --- | | ids | Type SubscriberPackageDependency Description List of SubscriberPackageDependency IDs: 04t IDs for the package versions that a subscriber package version depends on. | ## SubscriberPackageProfiles Represents a mapping between the profiles contained in the package and the profiles that are applied in the target subscriber org. Available in API version 41.0 and later. | Field | Details | | --- | --- | | destinationProfiles | Type [SubscriberPackageDestinationProfile](#SubscriberDestinationProfile) Description The profiles that the administrator installing the package in a target subscriber org actually applies. | | sourceProfiles | Type [SubscriberPackageSourceProfile](#SubscriberPackageSourceProfile) Description The profiles that are contained in the package that is being installed. | ## SubscriberPackageDestinationProfile Represents the profile that an administrator applies when installing the package in a target subscriber org. Available in API version 41.0 and later. | Field | Details | | --- | --- | | description | Type string Description The description of the profile. | | displayName | Type string Description The display name of this profile. | | name | Type string Description The name of the profile. | | noAccess | Type boolean Description Returns true if the profile is internal. | | profileId | Type string Description The ID of the profile. | | type | Type string Description The API name of the profile. | ## SubscriberPackageSourceProfile Represents a profile contained in the package to be installed. Available in API version 41.0 and later. | Field | Details | | --- | --- | | label | Type string Description The profile label. | | value | Type string Description The name of the profile. | ## SubscriberPackageRemoteSiteSettings Represents a list of Remote Site Settings (RSS) that have been added to the package since the last version. Available in API version 41.0 and later. | Field | Details | | --- | --- | | settings | Type [SubscriberPackageRemoteSiteSetting](#SubscriberPackageRemoteSiteSetting)[SubscriberPackageRemoteSiteSetting](#SubscriberPackageRemoteSiteSetting) Description List of RSS added to the package since the last version. | ## SubscriberPackageRemoteSiteSetting Defines a URL to an external service. The administrator of the subscriber org must authorize access to these services. Available in API version 41.0 and later. | Field | Details | | --- | --- | | secure | Type boolean Description Returns true if the URL uses the https protocol. Applies only if protocol security is enabled. | | url | Type string Description The URL of the remote service. | ## Usage Represents a version of an installable package. To query this object, include an ID (begins with 04t) in your SOQL WHERE clause. For subscriber package versions with no installation keys, queries must include an ID value, but an InstallationKey value is not required. SELECT Dependencies FROM SubscriberPackageVersion WHERE ID = '04txxxxxxxxxxxx' For unlocked package versions that have installation keys, queries must include both an ID value and an InstallationKey value. SELECT Dependencies FROM SubscriberPackageVersion WHERE ID = '04txxxxxxxxxxxx' AND InstallationKey='password123' For managed first- and second-generation package versions that have installation keys and for unlocked package versions that are installed in your org, queries must include an ID value, but an InstallationKey value is optional. SELECT Dependencies FROM SubscriberPackageVersion WHERE ID = '04txxxxxxxxxxxx' SELECT Dependencies FROM SubscriberPackageVersion WHERE ID = '04txxxxxxxxxxxx' AND InstallationKey='password123' # SubscriberPackageVersionUninstallRequest Represents a request to uninstall a Package2Version (second-generation package version). Available in API version 41.0 and later. ## Supported SOAP Calls create(), describeSObjects(), query(), retrieve() ## Supported REST HTTP Methods GET, POST, Query ## Fields | Field | Details | | --- | --- | | Status | Type picklist Properties Group, Nillable, Restricted picklist, Sort Description The status of the uninstall. Valid values are: - Error - InProgress - Queued - Success | | SubscriberPackageVersionId | Type ID Properties Create, Filter, Group, Sort Description The ID of the subscriber Package2 version to uninstall. The ID starts with the string 04t. | # SvcCatalogCategory Represents the grouping of individual catalog items in Service Catalog. This object is available in API version 53.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules Available to customers with Employee Productivity Plus or IT Service Center add-ons. ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Filter, Group, Sort Description Developer name for this category. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the category. This name has the following requirements: - It must be unique across the org. - It must contain only alphanumeric characters and underscores. - It must begin with a letter. - It must not include spaces. - It must not end with an underscore. - It must not contain two consecutive underscores. Query this field only if the query result contains up to one record. Otherwise, an error is returned. If more than one record exists, use multiple queries to retrieve the records. This limit protects performance. | | IsActive | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates if a catalog category is active. The default value is 'false'. | | ManageableState | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Describes the manageable state of a category that is contained in a package. Possible values are: - beta—Managed-Beta - deleted—Managed-Proposed-Deleted - deprecated—Managed-Proposed-Deprecated - deprecatedEditable—SecondGen-Installed-Deprecated - installed—Managed-Installed - installedEditable—SecondGen-Installed-Editable - released—Managed-Released - unmanaged—Unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description The primary label for the catalog category record. | | Metadata | Type complexvalue Properties Create, Nillable, Update Description The category’s metadata. Query this field only if the query result contains up to 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 Properties Filter, Group, Nillable, Sort Description The namespace associated with this category. | | ParentCategoryId | Type reference Properties Filter, Group, Nillable, Sort Description If provided, the name of another SvcCatalogCategory that this category appears under. The parent category in this field can’t have its own parent category. Categories can’t have more than one level of nesting. This is a relationship field. Relationship Name ParentCategory Relationship Type Lookup Refers To SvcCatalogCategory | | SortOrder | Type int Properties Filter, Group, Nillable, Sort Description Displays a set order for catalog category entities. | # SvcCatalogCategoryItem Represents the assignment of this service to a category within the Service Catalog. This object is available in API version 53.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules Available to customers with Employee Productivity Plus or IT Service Center add-ons. ## Fields | Field | Details | | --- | --- | | IsPrimaryCategory | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Determines if the catalog category (SvcCatalogCategory) is the primary category for this catalog item. EachSvcCatalogItemDef component can only have one category with this attribute set to true. The default value is 'false'. | | SortOrder | Type int Properties Create, Filter, Group, Nillable, Sort, Update Description The position of the catalog item relative to other catalog items in the catalog category. | | SvcCatalogCategoryId | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description The catalog category that the catalog item is assigned to. This is a relationship field. Relationship Name SvcCatalogCategory Relationship Type Lookup Refers To SvcCatalogCategory | | SvcCatalogItemDefId | Type reference Properties Create, Filter, Group, Sort Description Reference to the SvcCatalogItemDef. This is a relationship field. Relationship Name SvcCatalogItemDef Relationship Type Lookup Refers To SvcCatalogItemDef | # SvcCatalogFulfillFlowItem Represents a variable in a fulfillment flow for Service Catalog that can accept input. This object is available in API version 53.0 through 56.0. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules Available to customers with Employee Productivity Plus or IT Service Center add-ons. ## Fields | Field | Details | | --- | --- | | CatalogFulfillmentId | Type reference Properties Create, Filter, Group, Sort Description Id of the SvcCatalogFulfillmentFlow that this item belongs to. This is a relationship field. Relationship Name CatalogFulfillment Relationship Type Lookup Refers To SvcCatalogFulfillmentFlow | | CatalogInputVariable | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description The FlowVariable the fulfillment flow property represents. | | DisplayType | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The display options available. Possible values are: - Checkbox - Lookup - Number - Picklist - Text The default value is 'Lookup'. | | FieldDefinition | Type picklist Properties Create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description The name of a field in the object provided in ObjectLookupDomainId that specifies the value for this variable. If DisplayType is Picklist, this value must be the name of a picklist field. If DisplayType is Lookup and FieldLookupDomainId is FieldDefinition, this value must be the name of a relationship field. This value can be a field from a standard or custom object. | | FieldLookupDomainId | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description The name of a standard or custom object that specifies the domain of that lookup or picklist. This value is relevant only if displayType is Lookup or Picklist. This is a relationship field. Relationship Name FieldLookupDomain Relationship Type Lookup Refers To EntityDefinition | | IsAdditionalQuestionsInputVariable | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Determines if this variable accepts input for all additional questions that were asked to a user. This value can only be true if the DisplayType for this item is Text. Only one item per SvcCatalogFulfillmentFlow component can set this attribute to true. The default value is 'false'. | | IsRequired | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description Determines if the field is required for the related fulfillment flow to be executed. The default value is 'false'. | | LookupDomainFieldType | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description This value specifies the fields for the object specified by ObjectLookupDomainId that are displayed in the Catalog Builder by type. This value is only relevant if DisplayType is Lookup and fieldLookupDomain is FieldDefinition. | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description The primary label for the fulfillment flow record. | | ObjectLookupDomainId | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description The name of a custom or standard object. If DisplayType is Lookup or Picklist, this value filters the available options to a specific object. This is a relationship field. Relationship Name ObjectLookupDomain Relationship Type Lookup Refers To EntityDefinition | # SvcCatalogFulfillmentFlow Represents the flow associated with a specific catalog item in the Service Catalog. This object is available in API version 53.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules Available to customers with Employee Productivity Plus or IT Service Center add-ons. ## Fields | Field | Details | | --- | --- | | Description | Type textarea Properties Nillable Description Free-text description of the fulfillment flow. | | DeveloperName | Type string Properties Filter, Group, Sort Description Developer name for this fulfillment flow. | | FlowId | Type reference Properties Filter, Group, Nillable, Sort Description The flow represented by this SvcCatalogFulfillmentFlow. This is a relationship field. Relationship Name Flow Relationship Type Lookup Refers To FlowDefinition | | FullName | Type string Properties Create, Group, Nillable Description The full name of the fulfillment flow. This name has the following requirements: - It must be unique across the org. - It must contain only alphanumeric characters and underscores. - It must begin with a letter. - It must not include spaces. - It must not end with an underscore. - It must not contain two consecutive underscores. Query this field only if the query result contains up to one record. Otherwise, an error is returned. If more than one record exists, use multiple queries to retrieve the records. This limit protects performance. | | Icon | Type string Properties Filter, Group, Nillable, Sort Description Reserved for future use. | | ManageableState | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Describes the manageable state of a fulfillment flow that is contained in a package. Possible values are: - beta—Managed-Beta - deleted—Managed-Proposed-Deleted - deprecated—Managed-Proposed-Deprecated - deprecatedEditable—SecondGen-Installed-Deprecated - installed—Managed-Installed - installedEditable—SecondGen-Installed-Editable - released—Managed-Released - unmanaged—Unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description The primary label for the fulfillment flow record. | | Metadata | Type complexvalue Properties Create, Nillable, Update Description The fulfillment flow’s metadata. Query this field only if the query result contains up to 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 Properties Filter, Group, Nillable, Sort Description The namespace associated with this fulfillment flow. | # SvcCatalogItemDef Represents the grouping of individual catalog items in Service Catalog. This object is available in API version 53.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Special Access Rules Available to customers with Employee Productivity Plus or IT Service Center add-ons. ## Fields | Field | Details | | --- | --- | | Description | Type textarea Properties Nillable Description Free-text description of the catalog item. | | DeveloperName | Type string Properties Filter, Group, Sort Description Developer name for this catalog item. | | FlowId | Type reference Properties Filter, Group, Nillable, Sort Description The screen flow associated with the catalog item. This is a relationship field. Relationship Name Flow Relationship Type Lookup Refers To FlowDefinition | | FulfillmentFlowId | Type reference Properties Filter, Group, Nillable, Sort Description This field is a relationship field. Relationship Name FulfillmentFlow Relationship Type Lookup Refers To SvcCatalogFulfillmentFlow | | FullName | Type string Properties Create, Group, Nillable Description The full name of the catalog item. This name has the following requirements: - It must be unique across the org. - It must contain only alphanumeric characters and underscores. - It must begin with a letter. - It must not include spaces. - It must not end with an underscore. - It must not contain two consecutive underscores. Query this field only if the query result contains up to one record. Otherwise, an error is returned. If more than one record exists, use multiple queries to retrieve the records. This limit protects performance. | | InternalNotes | Type textarea Properties Nillable Description Describes what the catalog item does and its implementation. This value is meant for other catalog builders. | | IsFeatured | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Determines if the catalog item is part of the featured catalog items. The default value is 'false'. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted Picklist, Sort Description Possible values are: - da - Danish - de - German - en\_US - English - es - Spanish - es\_MX - Spanish (Mexico) - fi - Finnish - fr - French - it - Italian - ja - Japanese - ko - Korean - nl\_NL - Dutch - no - Norwegian - pt\_BR - Portuguese (Brazil) - ru - Russian - sv - Swedish - th - Thai - zh\_CN - Chinese (Simplified) - zh\_TW - Chinese (Traditional) | | ManageableState | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Describes the manageable state of a catalog item that is contained in a package. Possible values are: - beta—Managed-Beta - deleted—Managed-Proposed-Deleted - deprecated—Managed-Proposed-Deprecated - deprecatedEditable—SecondGen-Installed-Deprecated - installed—Managed-Installed - installedEditable—SecondGen-Installed-Editable - released—Managed-Released - unmanaged—Unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description The primary label for the catalog item record. | | Metadata | Type complexvalue Properties Create, Nillable, Update Description The catalog item’s metadata. Query this field only if the query result contains up to 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 Properties Filter, Group, Nillable, Sort Description The namespace associated with this catalog item. | | Status | Type picklist Properties Defaulted on create, Filter, Group, Restricted picklist, Sort Description Displays the publishing status of a catalog item. Possible values are: - Deprecated - Draft - PendingChanges - Published The default value is 'Draft'. | # SymbolTable A complex type that represents all user-defined tokens in the Body of an ApexClass, ApexClassMember, or ApexTriggerMember and their associated line and column locations within the Body. ## Fields | Field | Details | | --- | --- | | constructors | Type array of Constructor Description Contains the position, scope, and signature of constructors for the Apex class. Apex triggers don't have constructors. Constructor includes the following fields: - [annotations](#annotations_title) - location - [modifiers](#modifiers_title) - name - references - visibility (available only in API versions 33.0 and earlier; scope: Global, Public, or Private) - parameters | | externalReferences | Type array of ExternalReference Description Contains the name, namespace, external class, method, and variable references for the Apex class or trigger. These references can be used for symbol highlighting or code navigation. ExternalReference includes the following fields: - methods - name - namespace - references - variables | | innerClasses | Type array of SymbolTable Description Contains a symbol table for each inner class of the Apex class or trigger. | | interfaces | Type array of String Description Contains a set of strings for each interface with the namespace and name, for example: \['System.Batchable', 'MyNamespace.MyInterface'\]. | | methods | Type array of Method Description Contains the position, name, scope, signature, and return type of available Apex methods. Method includes the following fields: - [annotations](#annotations_title) - location - [modifiers](#modifiers_title) - name - references - visibility (available only in API versions 33.0 and earlier; scope: Global, Public, or Private) - parameters - returnType | | name | Type string Description The name of the Apex class or trigger. | | namespace | Type string Description The namespace of the Apex class or trigger. Null if there is no namespace. | | parentClass | Type string Description Returns parents of inner classes and extending classes. | | properties | Type array of VisibilitySymbol Description Contains the position, name, scope, and references of properties for the Apex class or trigger. VisibilitySymbol includes the following fields: - [annotations](#annotations_title) - location - [modifiers](#modifiers_title) - name - references - visibility (available only in API versions 33.0 and earlier; scope: Global, Public, or Private) | | tableDeclaration | Type array of Symbol Description Contains the position, name, and references of the Apex class or trigger. Symbol includes the following fields: - [annotations](#annotations_title) - location - [modifiers](#modifiers_title) - name - references | | variables | Type array of Symbol Description Contains the position, name, and references of related variables. Symbol includes the following fields: - [annotations](#annotations_title) - location - [modifiers](#modifiers_title) - name - references | ## Annotations Available values for annotations fields include: - Deprecated - Future - HttpDelete - HttpGet - HttpPatch - HttpPost - HttpPut - InvocableMethod - InvocableVariable - IsTest - ReadOnly - RemoteAction - TestSetup - TestVisible - RestResource ## Modifiers Modifiers can include more values than those values explicitly specified in classes and methods. All relevant modifiers, including implicit ones, are now returned. For example, all webservice methods have an implicit global modifier. Also, because fields and methods are private unless otherwise specified, the private modifier is returned by default. The testMethod modifier is returned when either the testMethod modifier or the IsTest annotation is used. Available values for modifiers fields include: - abstract - final - global - inherited sharing - override - private - protected - public - static - testMethod - transient - virtual - webService - with sharing - without sharing ## Usage Use symbol tables instead of building a parser or compiler. Symbol tables allow you to do symbol highlighting, code navigation, code completion, symbol searches, and more. A symbol table can’t be created if the content referenced by the ContentEntityId field doesn’t use a symbol table. Compiler errors for the last deployment of the [MetadataContainer](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_metadatacontainer.htm "Manages working copies of ApexClassMember, ApexTriggerMember, ApexPageMember, and ApexComponentMember objects, including collections of objects to be deployed together.") in the MetadataContainerId field also prevent a symbol table from being created. # System Fields Some fields are system-generated. They are on most Tooling API objects, and are read-only. These fields are automatically updated during API operations. For example, the Id field is automatically generated when a record is created, and the LastModifiedDate is automatically updated during any operation on an object. | Field | Field Type | Description | | --- | --- | --- | | Id | ID | Globally unique string that identifies a record. Id fields have Defaulted on create and Filter access. | | IsDeleted | boolean | Indicates whether the record has been moved to the Recycle Bin (true) or not (false). Because this field does not appear in all objects, it is listed in the field table for each object. | | CreatedBy | User | The user who created the record. CreatedBy fields have Defaulted on create, Filter, Group, and Sort access. | | CreatedById | reference | ID of the User who created this record. CreatedById fields have Defaulted on create, Filter, Group, and Sortaccess. | | CreatedDate | dateTime | Date and time when this record was created. CreatedDate fields have Defaulted on create, Filter, and Sort access. | | LastModifiedBy | User | The user who last modified this record. LastModifiedBy fields have Defaulted on create, Filter, Group, and Sort access. | | LastModifiedById | reference | ID of the User who last updated this record. LastModifiedById fields have Defaulted on create, Filter, Group, and Sortaccess. | | LastModifiedDate | dateTime | Date and time when a user last modified this record. LastModifiedDate fields have Defaulted on create, Filter, and Sort access. | | SystemModstamp | dateTime | Date and time when this record was last modified by a user or by an automated process (such as a trigger). SystemModstamp fields have Defaulted on create and Filter access. | To verify which fields are available for an object, check the Tooling API WSDL. # TabDefinition Represents a tab, and returns all tabs available in the org. Available in API version 43.0 and later. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note In API version 45.0 and later, only users with the “ViewSetup and Configuration” permission can access TabDefinition. ## Supported SOAP Calls query(), search() ## Supported REST HTTP Methods Query, GET ## Fields | Field Name | Details | | --- | --- | | DurableId | Type string 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. To simplify queries, use this field. | | IsAvailableInAloha | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Set to true if the tab is available in the Salesforce Classic user interface. If a tab is available in Salesforce Classic, then IsAvailableInMobile is false. | | IsAvailableInDesktop | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Set to true if the tab is available in the desktop user interface. | | IsAvailableInMobile | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Set to true if the tab is available in the Salesforce mobile app. | | IsAvailableInLightning | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Set to true if the tab is available in the Lightning Experience user interface. | | IsCustom | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Set to true if the tab is a custom tab. | | Label | Type string Properties Filter, Group, Nillable, Sort Description The tab label in the Salesforce org. | | MobileUrl | Type string Properties Filter, Group, Nillable, Sort Description If the tab is available in mobile, this is the URL that the tab directs the user to in the Salesforce mobile app. If the tab isn’t available in mobile, this is set to null. | | Name | Type string Properties Filter, Group, Nillable, Sort Description The name of the tab. | | SobjectName | Type string Properties Filter, Group, Nillable, Sort Description Used with REST to retrieve the metadata for the tab. | | Url | Type string Properties Filter, Group, Nillable, Sort Description The URL for where the tab directs the user. | # TelephonyProvider Represents the telephony provider configuration and trust settings for Agentforce Contact Center BYOC integrations. This object is available in API version 68.0 and later. ## Supported Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Special Access Rules To access TelephonyProvider, you must have the Agentforce Contact Center Admin (Salesforce Voice) permission set assigned. ## Fields | Field | Details | | --- | --- | | Country | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort Description Country associated with the telephony provider. | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description Unique name of the object in the API. | | ExternalIdentifier | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description Identifier for the external telephony provider. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description Language of the MasterLabel. | | MasterLabel | Type string Properties Create, Filter, Group, idLookup, Sort, Update Description User interface label for the telephony provider configuration. This internal label doesn’t get translated. | | ProviderName | Type string Properties Create, Filter, Group, idLookup, Sort, Update Description Unique name for the telephony provider. | | TrunkType | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description Type of trunk relationship with the provider. Possible values are: - Secondary: Associates the provider with a SecondaryTelephonyProvider record. - Trusted: Associates the telephony provider with a TrustedTelephonyProvider record. | # Territory2SupportedObject Represents the object type supported by territories. This object is available in API version 57.0 and later. ## Supported SOAP API Calls describeSObjects(), query(), retrieve() ## Supported REST API Methods GET, HEAD, Query ## Special Access Rules Enable the Manage Territories user permission. ## Fields | Field | Details | | --- | --- | | DefaultAccessLevel | Type string Properties Filter, Group, Nillable, Sort Description Default access level for objects assigned to territories. | | DurableId | Type string Properties Filter, Group, Nillable, Sort Description Unique identifier of the field. | | ObjectType | Type string Properties Filter, Group, Nillable, Sort Description Object type supported by the territory. | | State | Type string Properties Filter, Group, Nillable, Sort Description Status of the support activation of the object type. | # TestSuiteMembership Associates an Apex class with an ApexTestSuite. Available in Tooling API version 36.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API HTTP Methods Query, GET, POST, PATCH, DELETE ## Fields | Field Name | Description | | --- | --- | | ApexClassId | Type reference Properties Create, Filter, Group, Sort Description The Apex class whose tests are to be executed. This is a relationship field. Relationship Name ApexClass Relationship Type Lookup Refers To ApexClass | | ApexTestSuiteId | Type reference Properties Create, Filter, Group, Sort Description The test suite to which the Apex class is assigned. This is a relationship field. Relationship Name ApexTestSuite Relationship Type Lookup Refers To ApexTestSuite | ## Usage Insert a TestSuiteMembership object using an API call to associate an Apex class with an ApexTestSuite object. (ApexTestSuite and TestSuiteMembership aren’t editable through Apex DML.) To remove the class from the test suite, delete the TestSuiteMembership object. If you delete an Apex test class or test suite, all TestSuiteMembership objects that contain that class or suite are deleted. The following SOQL query returns the membership object that relates this Apex class to this test suite. SELECT Id FROM TestSuiteMembership WHERE ApexClassId = '01pD0000000Fhy9IAC' AND ApexTestSuiteId = '05FD00000004CDBMA2' # TimeSheetTemplate Represents a template for creating time sheets in Field Service. Available in API version 46.0 and later. ## Supported SOAP Calls create(), delete(), describeLayout(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods GET, POST, PATCH, DELETE ## Special Access Rules Field Service must be enabled to access TimeSheetTemplate. Users must have the Customize Application and Time Sheet Template permissions. ## Limitations [SOQL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_soql_limits.htm "Some Tooling API objects have SOQL limitations. These limitations apply to any Metadata Catalog query, which applies to all Custom Metadata Types and Metadata Catalog entities, not only the ones explicitly listed.") ## Fields | Field | Details | | --- | --- | | Active | Type boolean Properties Defaulted On Create, Filter, Group, Sort Description Indicates whether the time sheet template is active (true) or not (false). | | Description | Type textarea Properties Nillable Description The time sheet template's description. | | DeveloperName | Type string Properties Filter, Group, Sort Description The API name of the time sheet template. Can contain alphanumeric characters and underscores, and must begin with a letter. Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | Frequency | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Defines the frequency of the time sheet creation period. One of the following values: - Daily - Weekly - EveryTwoWeeks - TwiceAMonth - Monthly | | Fullname | Type string 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. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language associated with the time sheet template. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged Available in API version 48.0 and later. | | MasterLabel | Type string Properties Filter, Group, Sort Description The name of the time sheet template. | | Metadata | Type mns:TimeSheetTemplate Properties Create, Nillable, Update Description The TimeSheetTemplate metadata. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The namespace that identifies the package that manages the time sheet template. Available in API version 48.0 and later. | | StartDate | Type date Properties Filter, Group, Sort Description The date when the time sheet takes effect. | | TimeSheetTemplateAssignments | Type QueryResult Properties Nillable Description A list of profiles that the template is assigned to. This field is only visible when the template has been assigned to at least one user profile. Available in API version 48.0 and later. | | WorkWeekEndDay | Type picklist Properties Defaulted On Create, Filter, Group, Restricted picklist, Sort Description The end day of the template's work week. One of the following values: - Monday - Tuesday - Wednesday - Thursday - Friday - Saturday - Sunday (default) | | WorkWeekStartDay | Type picklist Properties Defaulted On Create, Filter, Group, Restricted picklist, Sort Description The start day of the template's work week. One of the following values: - Monday - Tuesday - Wednesday - Thursday - Friday - Saturday - Sunday (default) | # TimeSheetTemplateAssignment Represents the assignment of a time sheet template to a profile. Available in API version 48.0 and later. ## Supported SOAP Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods GET ## Limitations [SOQL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_soql_limits.htm "Some Tooling API objects have SOQL limitations. These limitations apply to any Metadata Catalog query, which applies to all Custom Metadata Types and Metadata Catalog entities, not only the ones explicitly listed.") [SOSL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_sosl_limits.htm "Two Tooling API objects, EntityDefinition and FieldDefinition, have some SOSL limitations. ExternalString and MetadataComponentDependency (Beta) don’t support SOSL searches.") ## Special Access Rules Field Service must be enabled to access TimeSheetTemplateAssignment. Users must have the Customize Application and Time Sheet Template permissions. ## Fields | Field | Details | | --- | --- | | AssignedToId | Type reference Properties Create, Filter, Group, Nillable, Sort, Unique, Update Description The ID of the user profile assigned to the time sheet template. | | TimeSheetTemplateId | Type reference Properties Create, Filter, Group, Sort, Update Description The ID of the associated time sheet template. | # Tooling API Objects and Namespaces Tooling API objects provide programmatic access to data and metadata. The Tooling API WSDL includes four namespaces.
Namespace Used for Prefix
sobject.tooling.soap.sforce.com Tooling API sObjects. Some sObjects have a Metadata field defined in the mns namespace.

This namespace is available in API version 37.0 and later.

ens
fault.tooling.soap.sforce.com Tooling API error codes.

This namespace is available in API version 37.0 and later.

fns
tooling.soap.sforce.com General complex types, describe results, and all enum types in the Tooling API. tns
metadata.tooling.soap.sforce.com Objects and types that occur in both the Metadata API WSDL and the Tooling API WSDL. Elements in the two WSDLs might be defined differently. mns
Objects and types that are identical in the Tooling API and Metadata API WSDLs are documented in the Metadata API Developer Guide. Objects and types that are different in the Tooling API WSDL or occur only in the Tooling API WSDL are documented in this guide. Frequently occurring system fields are described in [System Fields](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_system_fields.htm "Some fields are system-generated. They are on most Tooling API objects, and are read-only."). You can verify the complete list of fields for an object by generating and reviewing the Tooling API WSDL. ## Object Quick-Reference Tables, System Fields, and SOQL Limitations Learn about objects, system fields that occur on most objects, and SOQL limitations that apply to some objects in Tooling API. An alphabetical list of objects is also available. - **[SOQL Operation Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_soql_limits.htm)** Some Tooling API objects have SOQL limitations. These limitations apply to any Metadata Catalog query, which applies to all Custom Metadata Types and Metadata Catalog entities, not only the ones explicitly listed. - **[SOSL Operation Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_sosl_limits.htm)** Two Tooling API objects, EntityDefinition and FieldDefinition, have some SOSL limitations. ExternalString and MetadataComponentDependency (Beta) don’t support SOSL searches. - **[Considerations for CRUD Operations in Active Orgs](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_crud_operations.htm)** CRUD operations on most Tooling API objects are allowed in active orgs in API version 41.0 and later, just as they are in other kinds of orgs. However, for performance reasons you can’t perform CRUD operations in an active org for some Tooling API objects. - **[Allow Metadata Save Operations to Complete with Returned Warnings](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_metadata_save_warning.htm)** When a metadata save operation generates warnings, the default behavior of Tooling API is to fail the operation without returning the warnings. For objects in both the Tooling API and Metadata API WSDLs, you can indicate that you want error-free save operations to complete successfully, returning any warnings. - **[System Fields](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_system_fields.htm)** Some fields are system-generated. They are on most Tooling API objects, and are read-only. - **[ApiFault Element](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_Fault_set.htm)** An ApiFault element contains information about a fault that occurs when processing a service request. - **[Programming Objects](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_programming.htm)** Use programming objects to interact with programmatic artifacts: Apex, Visualforce, and Lightning. - **[Setup Objects](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_setup.htm)** Use setup objects to interact with metadata for declarative development. For example, you can create your own version of Setup, or restrict the amount of data required to push to an app to a mobile phone. - **[Tooling Objects](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_tooling.htm)** Use these objects to build tools around test results, debugging, code coverage, and more. - **[Operational Objects](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_operational.htm)** Use the following objects for Tooling API operations. # Tooling API Objects Tooling API includes the following objects: - **[AccountPlanObjMeasCalcCond](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_accountplanobjmeascalccond.htm)** Represents a field and value combination for filtering records to include in the calculation of a sales account plan objective measure’s current value. This object is available in API version 63.0 and later. - **[AccountPlanObjMeasCalcDef](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_accountplanobjmeascalcdef.htm)** Represents the metadata associated with an account plan objective measure calculation definition. An account plan objective measure calculation definition contains a target object, rollup field, and logic for calculating the current value of a sales account plan objective measure. This object is available in API version 63.0 and later. - **[ActivationPlatform](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_activationplatform.htm)** Represents metadata about ActivationPlatform, such as platform name, delivery schedule, output format, and destination folder. This object is available in API version 54.0 and later. - **[AdvAcctFrcstDisplayGroup](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_advacctfrcstdisplaygroup.htm)** Represents information about the groups for the advanced account forecast set measures or dimensions. This object is available in API version 57.0 and later. - **[AdvAccountForecastSet](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_advaccountforecastset.htm)** Represents an advanced account forecast set. This object is available in API version 56.0 and later. - **[AdvAcctForecastMeasureDef](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_advacctforecastmeasuredef.htm)** Represents information about the measures to be displayed in the advanced account forecasts grid for the forecast set. This object is available in API version 57.0 and later. - **[AIApplication](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_aiapplication.htm)** Represents an instance of a machine learning (ML) application.Available in API version 50.0 and later. - **[AIApplicationConfig](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_aiapplicationconfig.htm)** Represents additional prediction information related to a machine learning (ML) application.Available in API version 50.0 and later. - **[AnimationRule](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_animationrule.htm)** Represents criteria for determining when an animation is displayed to Path users. Available in API version 46.0 and later. - **[ApexClass](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexclass.htm)** Represents the saved copy of an Apex class. ApexClass uses the cached version of the class unless one is unavailable. Available from API version 28.0 or later. - **[ApexClassMember](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexclassmember.htm)** Represents the working copy of an Apex class for editing, saving, or compiling in a MetadataContainer. - **[ApexCodeCoverage](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexcodecoverage.htm)** Represents code coverage test results for an Apex class or trigger. Available in Tooling API version 29.0 and later. - **[ApexCodeCoverageAggregate](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexcodecoverageaggregate.htm)** Represents aggregate code coverage test results for an Apex class or trigger. Available in Tooling API version 29.0 and later. - **[ApexComponent](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexcomponent.htm)** Represents the saved copy of a Visualforce component. ApexComponent uses the cached version of the class unless one is unavailable. Available from API version 28.0 or later. - **[ApexComponentMember](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexcomponentmember.htm)** Represents the working copy of a Visualforce component for editing, saving, or compiling in a MetadataContainer. - **[ApexEmailNotification](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexemailnotification.htm)** Stores a Salesforce user ID or external email address to be notified when unhandled Apex exceptions occur. This object is available in API version 35.0 and later. - **[ApexExecutionOverlayAction](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexexecutionoverlayaction.htm)** Specifies an Apex code snippet or SOQL query to execute at a specific line of code in an Apex class or trigger. Optionally, generates a heap dump. - **[ApexExecutionOverlayResult](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexexecutionoverlayresult.htm)** Represents the result from the Apex code snippet or SOQL query defined in the associated ApexExecutionOverlayAction, and the resulting heap dump if one was returned. Available from API version 28.0 or later. - **[ApexLog](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexlog.htm)** Represents a debug log. - **[ApexOrgWideCoverage](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexorgwidecoverage.htm)** Represents code coverage test results for an entire organization. Available in Tooling API version 29.0 and later. - **[ApexPage](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexpage.htm)** Represents the saved copy of a Visualforce page. ApexPage uses the cached version of the page unless one is unavailable. Available from API version 28.0 or later. - **[ApexPageInfo](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexpageinfo.htm)** Represents metadata about a Visualforce page. This object is available in API version 37.0 and later. - **[ApexPageMember](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexpagemember.htm)** Represents the working copy of a Visualforce page for editing, saving, or compiling in a MetadataContainer. - **[ApexResult](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexresult.htm)** A complex type that represents the result of Apex code executed as part of an ApexExecutionOverlayAction , returned in an ApexExecutionOverlayResult. Available from API version 28.0 or later. - **[ApexTestQueueItem](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apextestqueueitem.htm)** Represents a single Apex class in the Apex job queue. Available in API version 30.0 and later. - **[ApexTestResult](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apextestresult.htm)** Represents the result of an Apex test method execution. Available from API version 30.0 or later. - **[ApexTestResultLimits](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apextestresultlimits.htm)** Captures the Apex test limits used for a particular test method execution. An instance of this object is associated with each ApexTestResult object. Available from API version 37.0 or later. - **[ApexTestRunResult](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apextestrunresult.htm)** Contains summary information about all the test methods that were run in a particular Apex job. Available from API version 37.0 or later. - **[ApexTestSuite](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apextestsuite.htm)** Represents a suite of Apex classes to include in a test run. A TestSuiteMembership object associates each class with the suite. Available in the ens namespace in Tooling API version 36.0 and later. Also, available in the mns namespace in Tooling API version 38.0 and later. - **[ApexTrigger](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apextrigger.htm)** Represents the saved copy of an Apex trigger. ApexTrigger uses the cached version of the class unless one is unavailable. Available from API version 28.0 or later. - **[ApexTriggerMember](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apextriggermember.htm)** Represents the working copy of an Apex trigger for editing, saving, or compiling in a MetadataContainer. - **[AssignmentRule](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_assignmentrule.htm)** Don’t use this object. - **[AuraDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_auradefinition.htm)** Represents an Aura component definition, such as component markup, a client-side controller, or an event. Available in API version 32.0 and later. - **[AuraDefinitionBundle](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_auradefinitionbundle.htm)** Represents a Lightning Aura component definition bundle, such as a component or application bundle. A bundle contains a Lightning Aura component definition and all its related resources. Available in API version 32.0 and later. - **[AuthorizedEmailDomain](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_authorizedemaildomain.htm)** Represents an authorized domain for email verification. This object is available in API version 64.0 and later. - **[AutoResponseRule](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_autoresponserule.htm)** Specifies whether the autoresponse rule is active (true). - **[BrandingSet](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_brandingset.htm)** Represents a set of branding properties for an Experience Builder site, as defined in the Theme panel in Experience Builder. This object is available in API version 40.0 and later. - **[BrandingSetProperty](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_brandingsetproperty.htm)** Represents a branding set property in the Theme panel in Experience Builder. This object is available in API version 40.0 and later. - **[BriefcaseDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_briefcasedefinition.htm)** Represents a briefcase definition. A briefcase makes selected records available for users and groups to view when they’re offline in the Salesforce Field Service mobile app for iOS and Android. This object is available in API version 50.0 and later. - **[BusinessProcess](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_businessprocess.htm)** Represents a business process. - **[BusinessProcessDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_businessprocessdefinition.htm)** Represents information about stages in a customer lifecycle map. This object is available in API version 51.0 and later. - **[BusinessProcessFeedback](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_businessprocessfeedback.htm)** Represents information about the survey and the question associated with each stage in a customer lifecycle map. This object is available in API version 51.0 and later. - **[BusinessProcessGroup](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_businessprocessgroup.htm)** Represents information about the customer lifecycle maps. Customer lifecycle maps are used to track the scores provided by customers across their lifecycle using Salesforce Surveys. For example, the lifecycle stages for an Insurance business process group can include acquisition, onboarding, claims, routine services, and renewal. This object is available in API version 51.0 and later. - **[BusProcessFeedbackConfig](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_busprocessfeedbackconfig.htm)** Represents information about the configuration for feedback collection. The feedback collection method triggers against pre-determined conditions on object to gather feedback. This object is available in API version 51.0 and later. - **[Certificate](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_certificate.htm)** Represents a certificate used for digital signatures that verify requests are coming from your org. Certificates are used for either authenticated single sign-on with an external website or when using your org as an identity provider. This object is available in Tooling API version 37.0 and later. - **[CleanDataService](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_cleandataservice.htm)** Represents a data service that adds and updates data in existing records in an org. - **[CleanRule](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_cleanrule.htm)** Represents a data integration rule that controls how a data service adds and updates data for existing records in an org. - **[ColorDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_colordefinition.htm)** Represents color metadata for a tab. Available in API version 43.0 and later. - **[CommunityWorkspacesNode](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_communityworkspacesnode.htm)** Represents a node used in Experience Workspaces. Available in Tooling API version 39.0 and later. - **[CompactLayout](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_compactlayout.htm)** Represents the values that define a compact page layout. - **[CompactLayoutInfo](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_compactlayoutinfo.htm)** Represents the metadata for a custom or standard compact layout. - **[CompactLayoutItemInfo](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_compactlayoutiteminfo.htm)** Represents a field selected for a compact layout, and the order of that field in the compact layout. - **[ConnectedApplication](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_connectedapplication.htm)** For internal use only. - **[ContactCenterChannel](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_contactcenterchannel.htm)** Represents a junction object that relates a Bring Your Own Channel for Contact Center as a Service (CCaaS) messaging channel to a CallCenter object for Bring Your Own Channel for CCaaS. This object also represents the routing details for a voicemail configuration. This object is available in API version 56.0 and later. - **[ContainerAsyncRequest](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_containerasyncrequest.htm)** Allows you to compile and asynchronously deploy a MetadataContainer object to your organization. - **[ConversationChannelDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_conversationchanneldefinition.htm)** Represents a configurable definition of a conversation channel that’s implemented for Interaction Service for Bring Your Own Channel for Messaging and Bring Your Own Channel for CCaaS messaging channels. This object is available in API version 60.0 and later. - **[ConversationVendorInfo](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_conversationvendorinfo.htm)** This setup object connects the partner vendor system to the Service Cloud feature. For example, for Service Cloud Voice, this object contains information about the partner telephony or Contact Center as a Service (CCaaS) partner system. For Bring Your Own Channel for Messaging this object contains information about the partner messaging system, and for Bring Your Own Channel for CCaaS, this object contains information about the CCaaS partner system. This object is available in API version 52.0 and later. - **[CspTrustedSite](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_csptrustedsite.htm)** Represents a trusted URL. For each CspTrustedSite, you can specify Content Security Policy (CSP) directives and permissions policy directives. Each CSP directive allows Lightning components, third-party APIs, and WebSocket connections to access a resource type from the trusted URL. If the Permissions-Policy HTTP header is enabled, each permissions policy directive grants the trusted URL access to a browser feature. In API version 58.0 and earlier, CspTrustedSite included only CSP directives and was referred to as CSP Trusted Sites in Salesforce Setup. Available in API version 39.0 and later. - **[CustomApplication](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_customapplication.htm)** Represents a custom or standard application. An application is a list of tab references, a description, and a logo. It also includes access to the associated CustomApplication type and related fields in Metadata API. Available in Tooling API version 42.0 or later. - **[CustomField](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_customfield.htm)** Represents a custom field on a custom object that stores data unique to your organization. Includes access to the associated CustomField object and related fields in Salesforce Metadata API. Available from API version 28.0 or later. - **[CustomFieldDisplay](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_customfielddisplay.htm)** Represents the view type assigned to product attribute custom fields. This object is available in API version 63.0 and later. - **[CustomFieldMember](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_customfieldmember.htm)** Represents the working copy of a field for editing or saving in a MetadataContainer. This object is available in API version 33.0 and later. - **[CustomHelpMenuSection](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_customhelpmenusection.htm)** Represents a section of the Lightning Experience help menu that the admin added to display custom, org-specific help resources. Available in API version 45.0 and later. - **[CustomHttpHeader](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_customhttpheader.htm)** Represents a custom HTTP header used with OData 2.0 or OData 4.0 external data sources. Custom HTTP headers provide context information from Salesforce such as region, org details, or the role of the person viewing the external object. This object is available in API version 51.0 and later. - **[CustomNotificationActionGroup](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_customnotificationactiongroup.htm)** Stores information about custom notification action groups. This object is available in API version 66.0 and later. - **[CustomNotifActionDef](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_customnotifactiondef.htm)** Represents the metadata associated with a mobile action group notification definition. This object is available in API version 66.0 and later. - **[CustomNotificationType](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_customnotificationtype.htm)** Stores information about custom notification types. This object is available in API version 46.0 and later. - **[CustomMsgChannel](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_custommsgchannel.htm)** Represents a custom conversation channel and stores event-driven Messaging settings. Custom conversation channels are implemented for Bring Your Own Channel for Messaging and Bring Your Own Channel for CCaaS Messaging channels. This object is available in API version 63.0 and later. - **[CustomObject](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_customobject.htm)** Represents a custom object that stores data unique to your organization. Includes access to the associated CustomObject object and related fields in Salesforce Metadata API. Available from API version 31.0 or later. - **[CustomTab](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_customtab.htm)** Represents a custom tab. - **[DataAssessmentConfigItem](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_dataassessmentconfigitem.htm)** Represents a saved configuration for a specific vendor’s package for data assessment. This object is available in API version 40.0 and later. - **[DataIntegrationRecordPurchasePermission](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_dataintegrationrecordpurchasepermission.htm)** Represents Lightning Data purchase credits that a Salesforce admin has granted to users. Available in Tooling API version 42.0 and later. - **[DataSourceBundleDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_datasourcebundledefinition.htm)** Represents the bundle of streams that a user adds to a data kit. This object is available in API version 52.0 and later. - **[DataStreamTemplate](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_datastreamtemplate.htm)** Represents metadata about the data stream that a user adds to a data kit. This object is available in API version 52.0 and later. - **[DataType](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_datatype.htm)** Represents the datatype of a field. Use this object with EntityDefinition, EntityParticle, or FieldDefinition to simplify queries. Available in Tooling API version 34.0 and later. - **[DebugLevel](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_debuglevel.htm)** Represents a set of log category levels to assign to a TraceFlag object. Multiple trace flags can use a debug level. - **[DelegateGroup](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_delegategroup.htm)** Represents a Delegate Group for queries. This object is available in Tooling API version 57.0 and later. - **[DelegateGroupGrant](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_delegategroupgrant.htm)** Represents a Delegate Group Grant, indicating permissions granted to a delegate group. This object is available in Tooling API version 57.0 and later. - **[DelegateGroupMember](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_delegategroupmember.htm)** Represents users assigned to the delegate group This object is available in Tooling API version 57.0 and later. - **[DeployDetails](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_deploydetails.htm)** A complex type that contains detailed XML for any compile errors reported in the asynchronous request defined by a ContainerAsyncRequest object. Replaces the JSON field CompilerErrors in Tooling API version 31.0 and later. - **[DeployRequest](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_deployrequest.htm)** Uses file representations of metadata components to create, update, or delete those components in a Salesforce org. This object is available in API version 49.0 and later. - **[DocProcDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_docprocdefinition.htm)** Represents an Intelligent Document Processing (IDP) definition, which holds the identity and type of the definition. The versioned processing payload is stored on the child DocProcDefinitionVer object. This object is available in API version 68.0 and later. - **[DocProcDefinitionVer](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_docprocdefinitionver.htm)** Represents an immutable version of an Intelligent Document Processing (IDP) definition (DocProcDefinition). Multiple versions of the same definition can be active at the same time. A version is identified by its parent definition and VersionNumber. This object is available in API version 68.0 and later. - **[Document](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_document.htm)** Represents a file that a user has uploaded. Unlike Attachment records, documents are not attached to a parent object. Available in Tooling API version 38.0 and later. - **[DomainProvision](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_domainprovision.htm)** Represents provisioned changes to custom domains. This object is available in API version 50.0 and later. - **[DuplicateJobDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_duplicatejobdefinition.htm)** Setup object defining a job that identifies duplicate record items globally. Available in Tooling API version 42.0 and later. - **[DuplicateJobMatchingRuleDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_duplicatejobmatchingruledefinition.htm)** Setup object specifying a MatchingRule to use with DuplicateJob instances that share a DuplicateJobDefinition. Available in Tooling API version 42.0 and later. - **[EmailTemplate](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_emailtemplate.htm)** Represents a template for an email, mass email, list email, or Sales Engagement email. Supported in first-generation managed packages only. - **[EmbeddedServiceBranding](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_embeddedservicebranding.htm)** Represents branding for each Embedded Service deployment. Available in Tooling API version 39.0 and later. - **[EmbeddedServiceConfig](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_embeddedserviceconfig.htm)** Represents a setup node for creating an Embedded Service deployment. Available in API version 38.0 and later. - **[EmbeddedServiceCustomComponent](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_embeddedservicecustomcomponent.htm)** Represents a custom component created for an Embedded Service feature. The custom components can be an Aura or Lightning Web Component. This object is available in API version 44.0 and later. - **[EmbeddedServiceCustomization](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_embeddedservicecustomization.htm)** Represents a mapping between the EmbeddedServiceCustomization record parent and the EmbeddedServiceConfiguration or EmbeddedServiceMenuSettings, for a set of Embedded Service resources. Each resource is set of customizations applied via an uploaded static resource for your Embedded Chat. This object is available in API version 52.0 and later. - **[EmbeddedServiceCustomLabel](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_embeddedservicecustomlabel.htm)** Represents a customized label that appears in the embedded component for a particular Embedded Service deployment. Labels can be customized for both Embedded Chat and embedded Appointment Management (beta). Available in API version 44.0 and later. - **[EmbeddedServiceFieldService](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_embeddedservicefieldservice.htm)** Represents a setup node for creating an embedded Appointment Management (beta) deployment. Available in Tooling API version 43.0 and later. - **[EmbeddedServiceFlow](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_embeddedserviceflow.htm)** Represents a Flow Definition used by an Embedded Service deployment. This object is available in API version 45.0 and later. - **[EmbeddedServiceFlowConfig](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_embeddedserviceflowconfig.htm)** Represents whether an Embedded Service Flow feature is enabled or not. This object is available in API version 45.0 and later. - **[EmbeddedServiceLiveAgent](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_embeddedserviceliveagent.htm)** Represents a setup node for creating an Embedded Chat deployment. Available in Tooling API version 38.0 and later. - **[EmbeddedServiceMenuItem](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_embeddedservicemenuitem.htm)** Represents the information needed to configure a Channel Menu item. This object is available in API version 47.0 and later. - **[EmbeddedServiceMenuSettings](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_embeddedservicemenusettings.htm)** Represents a setup node for creating a channel menu deployment. Channel menus list the ways in which customers can contact your business. This object is available in API version 47.0 and later. - **[EmbeddedServiceQuickAction](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_embeddedservicequickaction.htm)** Returns a quick action that is associated with an EmbeddedServiceLiveAgent setup. The quick action includes the pre-chat form fields that the embedded chat window displays and shows the order in which the fields are displayed. Available in Tooling API version 39.0 and later. - **[EmbeddedServiceResource](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_embeddedserviceresource.htm)** Represents a mapping from an EmbeddedServiceCustomization record parent to a set of resources. Each resource is a set of customizations applied via an uploaded static resource for your Embedded Chat. This object is available in API version 50.0 and later. - **[EngagementInsightType](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_engagementinsighttype.htm)** Represents the configuration for engagement insight types for voice and video call insights. This object is available in API version 66.0 and later. - **[EnrichedField](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_enrichedfield.htm)** Represents a field selected for Change Data Capture Enrichment for a channel and channel member. A non-empty enriched field is added to an update or delete change event even when not changed. Available in API version 51.0 and later. - **[EntityDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_entitydefinition.htm)** Provides row-based access to metadata about standard and custom objects. - **[EntityLimit](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_entitylimit.htm)** Represents the limits for an object as displayed in the Setup UI. - **[EntityParticle](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_entityparticle.htm)** Represents each element of a field that can be presented in a user interface. Contrast EntityParticle with FieldDefinition, which represents each element of a field defined in the Metadata API. EntityParticle has parity with describe, which returns API accessible fields only for an entity. Available in Tooling API version 34.0 and later. - **[EventDelivery](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_eventdelivery.htm)** Represents how an event instant maps to a target payload. Removed in API version 46.0. Available in API version 41.0 to 45.0. - **[EventRelayConfig](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_eventrelayconfig.htm)** Represents the configuration of an event relay, which relays platform events and change data capture events from Salesforce to Amazon EventBridge. This object is available in API version 56.0 and later. - **[EventSubscription](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_eventsubscription.htm)** Represents a subscription to an event type. Removed in API version 46.0. Available in API version 41.0 to 45.0. - **[ExtConvParticipantIntegDef](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_extconvparticipantintegdef.htm)** Represents the integration configuration for external conversation participants, used for communication between Salesforce and external messaging platforms. This object is available in API version 66.0 and later. - **[ExternalAuthIdentityProvider](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_externalauthidentityprovider.htm)** Represents an external authentication (auth) identity provider. An external auth identity provider links to an external credential and obtains OAuth tokens for outbound callouts to external systems. - **[ExternalClientAppSettings](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_externalclientappsettings.htm)** For internal use only. - **[ExternalCredential](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_externalcredential.htm)** Represents the details of how Salesforce authenticates to the external system. This object is available in API version 56.0 and later. - **[ExternalDataSource](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_externaldatasource.htm)** 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 object is available in API version 51.0 and later. - **[ExternalDataSrcDescriptor](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_externaldatasrcdescriptor.htm)** Contains the metadata information for the external schema of an external data source. Use the metadata to map attributes from an AWS data source, such as Amazon DynamoDB and Amazon Athena, to Salesforce external object fields. Also, use the metadata to customize the data retrieval queries to an AWS data source. This object is available in API version 55.0 and later for Amazon DynamoDB and in API version 56.0 and later for Amazon Athena. - **[ExternalServiceRegistration](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_externalserviceregistration.htm)** Represents the external service configuration for an org. Available in API version 39.0 and later. - **[ExternalString](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_externalstring.htm)** Represents a custom label for a translatable UI component. Includes access to the associated label in the Metadata API. Available in API version 38.0 and later. - **[ExternalDataTransportFieldTemplate](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_externaldatatransportfieldtemplate.htm)** Reserved for internal use. - **[ExternalDataTransportObjectTemplate](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_externaldatatransportobjecttemplate.htm)** Reserved for internal use. - **[ExternalStringLocalization](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_externalstringlocalization.htm)** Represents the translation of custom labels for a UI component represented by the [ExternalString](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_externalstring.htm "Represents a custom label for a translatable UI component. Includes access to the associated label in the Metadata API. Available in API version 38.0 and later.") object. This object is available in API version 49.0 and later. - **[FieldDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_fielddefinition.htm)** 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. - **[FieldMapping](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_fieldmapping.htm)** Represents a mapping between fields in an object in the org and fields in a data service. A data service uses two separate field maps: one controls how the data service matches records in an object, and the other controls how the data service adds or updates data for an existing record. - **[FieldMappingField](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_fieldmappingfield.htm)** Represents a field in an object in the org that maps to a field in a data service. - **[FieldMappingRow](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_fieldmappingrow.htm)** Represents a field in a data service record that maps to a field in an object record in the org. - **[FieldRestrictionRule](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_fieldrestrictionrule.htm)** Represents a field visibility rule that controls whether a field is visible to a user, based on the field’s inclusion in the PersonalInfo\_EPIM field set. If Enhanced Personal Information Management setting was enabled before Spring ’22, field visibility is based on the field’s compliance categorization. This object is available in API version 52.0 and later. - **[FieldSet](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_fieldset.htm)** Represents the metadata for a group of fields. Available from API version 33.0 or later. - **[FlexiPage](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_flexipage.htm)** Represents a Lightning page. A Lightning page is a customizable page composed of regions containing Lightning components. - **[Flow](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_flow.htm)** Use the Flow object to retrieve and update specific flow versions. - **[FlowDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_flowdefinition.htm)** The parent of a set of flow versions. - **[FlowElementTestCoverage](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_flowelementtestcoverage.htm)** Represents a flow element that was executed by a given Apex test method. Available in API version 44.0 and later. - **[FlowTest](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_flowtest.htm)** Represents the description of a flow test associated with a flow definition. This object is available in API version 55.0 and later. - **[FlowTestCoverage](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_flowtestcoverage.htm)** Represents test coverage for a flow or process by a given Apex method. Available in API version 44.0 and later. - **[FlowTestResult](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_flowtestresult.htm)** This object is reserved for internal use. - **[ForecastingDisplayedFamily](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_forecastingdisplayedfamily.htm)** Represents the product families that an admin chooses to allow forecasting on in Lightning Experience. Available in Tooling API version 40.0 and later. - **[ForecastingFilter](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_forecastingfilter.htm)** Represents the custom filter for including or excluding data from opportunity forecasts. This object is available in API version 55.0 and later. - **[ForecastingFilterCondition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_forecastingfiltercondition.htm)** Represents the custom filter condition logic for including or excluding data from opportunity forecasts. This object is available in API version 55.0 and later. - **[ForecastingSourceDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_forecastingsourcedefinition.htm)** Represents the object, measure, date type, and hierarchy that a forecast uses to project sales. This object is available in API version 52.0 and later. - **[ForecastingType](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_forecastingtype.htm)** Represents a forecast type. This object is available in API version 52.0 and later. - **[ForecastingTypeSource](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_forecastingtypesource.htm)** Represents the mapping of a forecasting source definition to a forecast type. This object is available in API version 52.0 and later. - **[FormulaFunction](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_formulafunction.htm)** Represents a function used when building a formula, including examples and uses. This object is available in Tooling API version 39.0 and later. - **[FormulaFunctionAllowedType](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_formulafunctionallowedtype.htm)** Represents the functions that are supported in the given formula context. Available in API version 48.0 and later. - **[FormulaOperator](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_formulaoperator.htm)** Represents an operator used when building a formula, including examples and uses. This object is available in Tooling API version 39.0 and later. - **[GenAiFunctionDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_genaifunctiondefinition.htm)** Represents an agent action. This object is available in API version 60.0 and later. - **[GenAiPlannerDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_genaiplannerdefinition.htm)** Represents an agent planner service that uses a large language model (LLM) and a reasoning strategy to decompose a given task into smaller subtasks, identify the most suitable actions for each subtask, and invoke them. This object is available in API version 60.0 and later. - **[GlobalValueSet](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_globalvalueset.htm)** Represents a set of values used by a global picklist. Available from API version 39.0 or later. - **[Group](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_group.htm)** Represents a set of User records. Groups can contain individual users, other groups, or the users in a particular role or territory. In addition, groups can contain all users below a particular role or territory in the hierarchy. Available in Tooling API version 38.0 and later. - **[GtwyProvPaymentMethodType](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_gtwyprovpaymentmethodtype.htm)** Represents a type that allows integrators and payment providers to choose an active payment to receive an order's payment data rather than allowing the Salesforce Order Management platform to select a default payment method. This object is available in API version 50.0 and later. - **[HeapDump](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_heapdump.htm)** A complex type that represents a heap dump in an ApexExecutionOverlayResult object. Available from API version 28.0 or later. - **[HistoryRetentionJob](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_historyretentionjob.htm)** Represents the body of retained data from the archive, and the status of the archived data. Available in API version 29.0 or later. - **[HomePageComponent](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_homepagecomponent.htm)** Represents a home page component. - **[HomePageLayout](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_homepagelayout.htm)** Represents a home page layout. - **[IconDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_icondefinition.htm)** Represents an icon, such as used for a tab. Available in API version 43.0 and later. - **[InboundNetworkConnection](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_inboundnetworkconnection.htm)** Represents the a private connection between a third-party data service and a Salesforce org. The connection is inbound because the callouts are coming _into_ Salesforce.. Available in API version 49.0 and later. - **[InboundNetworkConnProperty](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_inboundnetworkconnproperty.htm)** Represents a name-value pair that describes the properties of the inbound network connection. Available in API version 49.0 and later. - **[Index](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_index.htm)** Represents the index defined within a custom big object. Available in Tooling API version 41.0 and later. - **[IndexField](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_indexfield.htm)** Represents the fields in the index of a custom big object. Available in Tooling API version 41.0 and later. - **[InstalledSubscriberPackage](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_installedsubscriberpackage.htm)** Represents a package (first- or second-generation) that is installed in a subscriber’s org. Available in API version 41.0 and later. - **[InstalledSubscriberPackageVersion](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_installedsubscriberpackageversion.htm)** Deprecated and slated for removal. Represents a package version (first- or second-generation) that is installed in a subscriber’s org. Available in API version 41.0 and later. - **[InvocableActionExtension](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_invocableactionextension.htm)** Represents an extension to an invocable action in Salesforce. This object is available in API version 65.0 and later. - **[IPAddressRange](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_ipaddressrange.htm)** Represents a range of IP addresses to include in or exclude from the specified feature. - **[KeywordList](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_keywordlist.htm)** Represents a list of keywords used in Experience Cloud site moderation. Available in Tooling API version 36.0 and later. - **[Layout](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_layout.htm)** Represents a page layout. - **[LightningComponentBundle](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_lightningcomponentbundle.htm)** Represents a Lightning web component bundle. A bundle contains a Lightning web component and its related resources. Available in API version 45.0 and later. - **[LightningComponentResource](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_lightningcomponentresource.htm)** Represents a Lightning web component resource, such as HTML markup, JavaScript code, a CSS file, an SVG resource, or an XML configuration file. Available in API version 45.0 and later. - **[LightningOutApp](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_lightningoutapp.htm)** Represents a Lightning Out 2.0 application. With a Lightning Out 2.0 app, you can embed Lightning web components (LWC) into external applications. This object is available in API version 65.0 and later. - **[LookupFilter](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_lookupfilter.htm)** Represents a lookup filter, which restricts the valid values and lookup dialog results for lookup, master-detail, and hierarchical relationship fields. - **[ManagedContentNodeType](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_managedcontentnodetype.htm)** Represents standard and custom content node types created for use with your org. Available in API version 47.0 and later. - **[ManagedContentType](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_managedcontenttype.htm)** Represents standard and custom content types created for use with your org. Available in API version 47.0 and later. - **[ManagedEventSubscription (Beta)](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_managedeventsubscription.htm)** Represents a managed event subscription in Pub/Sub API. Use a managed event subscription to track the events that a subscriber client consumed and resume a subscription where it left off. This object is available in API version 60.0 and later. - **[MarketingAppExtension](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_marketingappextension.htm)** Represents an integration with a third-party app or service that generates prospect external activity. Available in API version 53.0 and later. - **[MarketingAppExtAssignment](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_marketingappextassignment.htm)** Represents a Marketing App Extension Business Unit assignment, which dictates which Account Engagement business unit the external activity data is available in. Available in API version 53.0 and later. - **[MarketingAppExtActivity](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_marketingappextactivity.htm)** Represents an Activity Type, which is a prospect activity that occurs in a third-party app and can be used in Account Engagement automations. . Available in API version 53.0 and later. - **[MarketingAppExtAction](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_marketingappextaction.htm)** Represents an Action Type, which is an action that you can add to Engagement Studio programs in Account Engagement and execute in a third-party app. This object is available in API version 56.0 and later. - **[MarketingHierarchyGroupDef](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_marketinghierarchygroupdef.htm)** Represents the top-level category of a marketing hierarchy that can be defined on various dimensions such as brand, industry, and region. This object is available in API version 68.0 and later. - **[MarketingHierarchyGroupNodeDef](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_marketinghierarchygroupnodedef.htm)** Represents the membership of a node within a marketing hierarchy group, defining which hierarchy levels belong to a given group category. This object is available in API version 68.0 and later. - **[MarketingHierarchyNodeDef](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_marketinghierarchynodedef.htm)** Represents a node in a marketing hierarchy whose depth in the hierarchy is determined by its sequence number. This object is available in API version 68.0 and later. - **[MatchingRule](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_matchingrule.htm)** Setup object specifying a MatchingRule to use with DuplicateJob instances that share a DuplicateJobDefinition. Available in Tooling API version 42.0 and later. - **[MenuItem](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_menuitem.htm)** Represents a menu item. - **[MetadataComponentDependency (Beta)](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_metadatacomponentdependency.htm)** Represents dependency relationships between the metadata components in your org. You can query MetadataComponentDependency using Tooling API in API version 43.0 and later or using Bulk API 2.0 in API 49.0 and later. - **[MetadataContainer](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_metadatacontainer.htm)** Manages working copies of ApexClassMember, ApexTriggerMember, ApexPageMember, and ApexComponentMember objects, including collections of objects to be deployed together. - **[MetadataPackage](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_metadatapackage.htm)** Represents a package that has been developed in the org you’re logged in to. Applies to unlocked, unmanaged, first-generation, and second-generation managed packages. Available in Tooling API version 38.0 and later. - **[MetadataPackageVersion](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_metadatapackageversion.htm)** Represents a package version (managed or unmanaged) that has been uploaded from the org you’re logged in to. Available in Tooling API version 38.0 and later. - **[MktHierGrpNodeRuleDef](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_mkthiergrpnoderuledef.htm)** Represents a rule for a node in a marketing hierarchy group. Based on the rule type, the rule defines the allowed parent node or the user, group, or profile that can create marketing programs. This object is available in API version 68.0 and later. - **[MLDataDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_mldatadefinition.htm)** Represents a modeling data definition, which specifies the data used to create a model for a machine learning (ML) application. Examples of such data can include filters, fields to include, and fields to exclude. Available from API version 50.0 or later. - **[MLField](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_mlfield.htm)** Represents a field in a modeling data definition. A modeling data definition specifies the data used to create a model for a machine learning (ML) application. Available from API version 50.0 or later. - **[MLFilter](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_mlfilter.htm)** Represents a data filter based on a data comparison in a machine learning (ML) application. For each comparison, there’s a left-hand element, an operator, and a right-hand element. Available in API version 50.0 and later. - **[MLPredictionDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_mlpredictiondefinition.htm)** Represents the details about a prediction within a prediction definition used in a machine learning (ML) application. Available in API version 50.0 and later. - **[ModerationRule](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_moderationrule.htm)** Represents a rule used in your Experience Cloud site to moderate member-generated content. Available in Tooling API version 36.0 and later. - **[NamedCredential](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_namedcredential.htm)** 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 object is available in API version 51.0 and later. - **[ObjectHierarchyRelationship](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_objecthierarchyrelationship.htm)** Represents the mapping between an input source object and an output target object. For example, mapping details to transform a sales quote into a sales agreement. This object is available in API version 56.0 and later. - **[OmniSupervisorConfig](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_omnisupervisorconfig.htm)** Represents the Omni-Channel supervisor configuration for an assigned group of supervisors. This object is available in API version 57.0 and later. - **[OperationLog](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_operationlog.htm)** Represents long-running or asynchronous operations triggered and tracked through Tooling API. This object is available in API version 37.0 and later. - **[OpportunitySplitType](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_opportunitysplittype.htm)** Represents labels and behavior for each split type Available in Tooling API version 37.0 and later. - **[OrgDomainLog](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_mydomainlog.htm)** Represents a Salesforce org’s previous My Domain. This object is available in API version 51.0 and later. - **[OutboundNetworkConnection](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_outboundnetworkconnection.htm)** Represents a private connection between a Salesforce org and a third-party data service. The connection is outbound because the callouts are going _out_ of Salesforce.Available in API version 49.0 and later. - **[OutboundNetworkConnProperty](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_outboundnetworkconnproperty.htm)** Represents a name-value pair that describes the properties of the outbound network connection. Available in API version 49.0 and later. - **[OwnerChangeOptionInfo](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_ownerchangeoptioninfo.htm)** Represents default and optional actions that can be performed when a record’s owner is changed. Available in Tooling API version 35.0 and later. - **[PackageInstallRequest](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_packageinstallrequest.htm)** Represents a request to install a package (first- or second-generation) in a target subscriber org. Available in API version 41.0 and later. - **[PackageUploadRequest](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_packageuploadrequest.htm)** Represents a request to upload a first-generation package version and its components so that subscribers can install it. Available in API version 38.0 and later. - **[PackageVersionUninstallRequestError](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_packageversionuninstallrequesterror.htm)** Represents an error encountered while requesting an uninstall of a Package2Version (second-generation package version). Available in API version 41.0 and later. - **[PathAssistant](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_pathassistant.htm)** Represents a Path. Available in Tooling API version 36.0 and later. - **[Package2](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_package2.htm)** Represents a second-generation managed package or an unlocked package in a Dev Hub org. Values for all fields are visible to the subscriber. Available in API version 41.0 and later. - **[Package2Member](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_package2member.htm)** Represents a component in a second-generation managed package in a subscriber’s org. Created when the subscriber installs the package. Available in API version 41.0 and later. - **[Package2Version](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_package2version.htm)** Represents a second-generation package version in a Dev Hub org. Values for all fields except for Tag and Branch are visible to the subscriber. Available in API version 41.0 and later. - **[Package2VersionCreateRequest](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_package2versioncreaterequest.htm)** Represents a request to create a second-generation managed package or an unlocked package version in a Dev Hub org. Available in API version 41.0 and later. - **[Package2VersionCreateRequestError](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_package2versioncreaterequesterror.htm)** Represents an error encountered while creating a second-generation managed package or an unlocked package version. Available in API version 41.0 and later. - **[PardotTenant](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_pardottenant.htm)** Represents an Account Engagement business unit. This object is available in API version 56.0 and later. - **[PathAssistantStepInfo](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_pathassistantstepinfo.htm)** Represents guidance for a step on a Path. Available in Tooling API version 36.0 and later. - **[PathAssistantStepItem](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_pathassistantstepitem.htm)** Represents layout or guidance details for a step on a Path. Available in Tooling API version 36.0 and later. - **[PaymentGatewayProvider](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_paymentgatewayprovider.htm)** Represents the payment gateway provider processing payments. This object is available in API version 48.0 and later. - **[PermissionDependency](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_permissiondependency.htm)** Represents permission dependencies for a specified permission. For example, return all child dependencies for the Modify All Data permission. Available in Tooling API version 46.0 and later. - **[PermissionSet](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_permissionset.htm)** Represents a set of permissions that’s used to grant more access to users without changing their profile or reassigning profiles. Available in API version 28.0 and later. - **[PermissionSetAssignment](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_permissionsetassignment.htm)** Represents a user’s assignment to a permission set or permission set group. This object is available in API version 22.0 and later. - **[PermissionSetGroup](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_permissionsetgroup.htm)** Represents a group of permission sets and the permissions within them. Use permission set groups to organize permissions based on job functions or tasks. Then, you can package the groups as needed. Available in Tooling API version 45.0 and later. - **[PermissionSetGroupComponent](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_permissionsetgroupcomponent.htm)** A junction object that relates the PermissionSetGroup and PermissionSet objects via their respective IDs; enables permission set group recalculation to determine the aggregated permissions for the group. Available in Tooling API version 45.0 and later. - **[PermissionSetTabSetting](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_permissionsettabsetting.htm)** Represents a tab’s settings for a profile or permission set. Use PermissionSetTabSetting for manipulating tab visibility on profiles and permission sets. Available in Tooling API version 37.0 and later. - **[PipelineInspMetricConfig](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_pipelineinspmetricconfig.htm)** Represents the configuration of a forecast category metric that appears in the Pipeline Inspection view. This object is available in API version 55.0 and later. - **[PlatformEventChannel](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_platformeventchannel.htm)** Represents a custom channel that you can subscribe to in order to receive a stream of change data capture events. - **[PlatformEventChannelMember](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_platformeventchannelmember.htm)** Represents an entity selected for Change Data Capture notifications on a standard or custom channel, or a platform event selected on a custom channel. - **[PlatformEventMigration](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_platformeventmigration.htm)** Represents configuration settings for performing a one-time migration of standard volume platform events to high volume platform events. This object is available in API version 67.0 and later. - **[PlatformEventSubscriberConfig](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_platformeventsubscriberconfig.htm)** Represents configuration settings for a platform event Apex trigger, including the batch size and the trigger’s running user. This object is available in API version 51.0 and later. - **[PresenceDeclineReason](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_presencedeclinereason.htm)** Represents the reason an agent can select when declining an Omni-Channel work request. This object is available in API version 65.0 and later. - **[PresenceUserConfig](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_presenceuserconfig.htm)** Represents a configuration that determines a presence user’s settings. This object is available in API version 65.0 and later. - **[PostTemplate](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_posttemplate.htm)** Represents an approval post template for Approvals in Chatter. - **[ProcessFlowMigration](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_processflowmigration.htm)** Represents a process's migrated criteria and the resulting migrated flow. This object is available in API version 58.0 and later. - **[ProductAttributeSet](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_productattributeset.htm)** Used to group variation attributes that apply to one or more products. This object is available in API version 55.0 and later. - **[Profile](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_profile.htm)** 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. - **[ProfileLayout](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_profilelayout.htm)** Represents a profile layout. - **[Publisher](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_publisher.htm)** Represents the publisher of objects and fields. For example, Salesforce is the publisher for standard objects, the organization is the publisher for custom objects, and the package is the publisher for installed packages. Available in Tooling API version 34.0 and later. - **[QueryResult](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_queryresult.htm)** Represents the results of a query. For example, if you query on the object EntityDefinition, all the layouts for that entity are returned as an array of QueryResult objects in the Layouts field. Available in Tooling API version 34.0 and later. - **[QueueRoutingConfig](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_queueroutingconfig.htm)** Represents configuration settings that determine how work items are routed to agents. This object is available in API version 65.0 and later. - **[QuickActionDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_quickactiondefinition.htm)** Represents the definition of a quick action. - **[QuickActionList](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_quickactionlist.htm)** Represents a list of quick actions. - **[QuickActionListItem](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_quickactionlistitem.htm)** Represents an item in a quick action list. - **[RecentlyViewed](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_recentlyviewed.htm)** Represents metadata entities typically found in Setup such as page layout definitions, workflow rule definitions, and email templates that the current user has recently viewed. - **[RecommendationStrategy](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_recommendationstrategy.htm)** Represents a recommendation strategy. Recommendation strategies are applications, similar to data flows, that determine a set of recommendations to be delivered to the client through data retrieval, branching, filtering, and logic operations. Available in API 45.0 and later. - **[RecordActionDeployment](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_recordactiondeployment.htm)** Represents configuration settings for the Actions & Recommendations, Action Launcher, and Bulk Action Panel components. RecordActionDeployment is available in API version 45.0 and later. - **[RecordType](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_recordtype.htm)** Represents a custom record type. - **[RegisteredExternalService](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_registeredexternalservice.htm)** Represents a registered external service used to provide an extension or integration. This object is available in API version 49.0 and later. - **[RelatedListColumnDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_relatedlistcolumndefinition.htm)** Represents information about a column in a related list. A related list specifies a set of records for a related object, based on specific criteria. This object is available in API version 55.0 and later. - **[RelatedListDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_relatedlistdefinition.htm)** Represents information about a related list. A related list specifies a set of records for a related object, based on specific criteria. This object is available in API version 55.0 and later. - **[RelationshipDomain](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_relationshipdomain.htm)** Represents the relationship an object has with other objects. RelationshipDomain allows you to write simpler queries. For example, “which objects are the child objects for the object defined in ParentSobject” is easier using RelationshipDomain. Available in Tooling API version 34.0 and later. - **[RelationshipInfo](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_relationshipinfo.htm)** Represents the properties of a relationship between objects. Simplify queries with RelationshipInfo, such as answering the question “which objects are parent objects for the object defined in ChildSobject. Available in Tooling API version 34.0 and later. - **[ReleaseUpdate](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_releaseupdate.htm)** Represents an individual release update. Available in API version 50.0 and later. - **[ReleaseUpdateStep](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_releaseupdatestep.htm)** Represents an individual release update step. Available in API version 49.0 and later. - **[RemoteProxy](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_remoteproxy.htm)** Represents a set of remote site settings that allows you to access an external site from Salesforce. Use RemoteProxy when accessing external sites called by Visualforce pages, Apex callouts, or JavaScript codes using XmlHttpRequest in an s-control or custom button. To be accessible, an external site must have its settings defined with RemoteProxy or registered in the Remote Site Settings page. Available in Tooling API version 37.0 and later. - **[RestrictionRule](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_restrictionrule.htm)** Represents a restriction rule or a scoping rule. A restriction rule has EnforcementType set to Restrict and controls the access that specified users have to designated records. A scoping rule has EnforcementType set to Scoping and controls the default records that your users see without restricting access. - **[SandboxInfo](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_sandboxinfo.htm)** Represents a sandbox. - **[SandboxProcess](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_sandboxprocess.htm)** Represents the sandbox copy process for a SandboxInfo record. - **[SandboxProcessStage](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_sandboxprocessstage.htm)** Represents the status and progress during a spectific stage for a SandboxProcess record. - **[SchedulingObjective](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_schedulingobjective.htm)** Represents scheduling objective settings for Workforce Engagement. This object is available in API version 55.0 and later. - **[SchedulingRule](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_schedulingrule.htm)** Represents scheduling rule settings for Workforce Engagement. This object is available in API version 53.0 and later. - **[ScndTelephPrvdOtbdDtl](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_scndtelephprvdotbddtl.htm)** Represents the outbound SIP routing configuration for a secondary telephony provider in Agentforce Contact Center BYOC. This object is available in API version 68.0 and later. - **[SearchLayout](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_searchlayout.htm)** Represents a search layout defined for an object. - **[SecondaryTelephonyProvider](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_secondarytelephonyprovider.htm)** Represents the SIP configuration for secondary telephony providers in Agentforce Contact Center Bring Your Own Carrier (BYOC). This object is available in API version 68.0 and later. - **[SecurityHealthCheck](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_securityhealthcheck.htm)** Represents your org’s Health Check score. The score indicates how well your org’s security settings comply with Salesforce-recommended values in the baseline standard. Only users with the “View Setup and Configuration” user permission can retrieve data from this object. Available in Tooling API version 37.0 and later. - **[SecurityHealthCheckRisks](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_securityhealthcheckrisks.htm)** Represents your org’s security setting values, risks, and Salesforce-recommended setting values. Only users with the "View Setup and Configuration" user permission can retrieve data from this object. Available in Tooling API version 37.0 and later. - **[SensitiveDataRuleElmnt](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_sensitivedataruleelmnt.htm)** Represents a predefined PII, PHI, and PCI named-entity type supported by the PII Redaction Model Service. This object is available in API version 68.0 and later. - **[SensitiveDataRuleElmntGrp](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_sensitivedataruleelmntgrp.htm)** Stores Named Entity Recognition (NER)-based sensitive-data rules at the organization level to redact PII/PCI from voice and messaging transcripts. This object is available in API version 68.0 and later. - **[ServiceChannel](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_servicechannel.htm)** Represents a channel for work items that are received from your customers. This object is available in API version 65.0 and later. - **[ServiceFieldDataType](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_servicefielddatatype.htm)** Deprecated in API version 34.0, the ServiceFieldDataType object is removed in version 58.0 and later. - **[ServicePresenceStatus](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_servicepresencestatus.htm)** Represents a presence status that can be assigned to a service channel. This object is available in API version 65.0 and later. - **[Scontrol](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_scontrol.htm)** Represents a custom s-control, which is custom content that our system hosts, but client applications execute. An s-control can contain any type of content that you can display or run in a Web browser. - **[ShiftSegmentType](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_shiftsegmenttype.htm)** Represents shift segment type settings for Shift Scheduling and Workforce Engagement. This object is available in API version 55.0 and later. - **[SiteDetail](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_sitedetail.htm)** Represents the details of a Salesforce site or Experience Cloud site. Available in API version 38.0 and later. - **[Skill](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_skill.htm)** Represents the settings for a skill used for field service or to route chats to agents in Chat, such as the name of the skill and which agents the skills are assigned to. This object is available in API version 65.0 and later. - **[SOQLResult](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_soqlresult.htm)** A complex type that represents the result of a SOQL query in an ApexExecutionOverlayResult object. Available from API version 28.0 or later. - **[SourceMember](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_sourcemember.htm)** Reserved for internal use. Do not use this object. Accuracy of results isn’t guaranteed. - **[SourceMemberDeployRequest](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_sourcememberdeployrequest.htm)** Reserved for internal use. - **[StandardAction](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_standardaction.htm)** Represents the buttons, links, and actions (standard actions) for a standard or custom object. This object is available in API version 34.0 and later. - **[StaticResource](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_staticresource.htm)** Represents the working copy of a static resource file for editing or saving. Static resources allow you to upload content that you can reference in a Visualforce page, including images, stylesheets, JavaScript, and other files. Available in Tooling API version 29.0 and later. - **[SubscriberPackage](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_subscriberpackage.htm)** Represents an installable package (first- or second-generation) across all Salesforce instances. Available in API version 41.0 and later. - **[SubscriberPackageVersion](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_subscriberpackageversion.htm)** Represents a package version (first- or second-generation) across all Salesforce instances. Available in API version 41.0 and later. - **[SubscriberPackageVersionUninstallRequest](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_subscriberpackageversionuninstallrequest.htm)** Represents a request to uninstall a Package2Version (second-generation package version). Available in API version 41.0 and later. - **[SvcCatalogCategory](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_svccatalogcategory.htm)** Represents the grouping of individual catalog items in Service Catalog. This object is available in API version 53.0 and later. - **[SvcCatalogCategoryItem](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_svccatalogcategoryitem.htm)** Represents the assignment of this service to a category within the Service Catalog. This object is available in API version 53.0 and later. - **[SvcCatalogFulfillFlowItem](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_svccatalogfulfillflowitem.htm)** Represents a variable in a fulfillment flow for Service Catalog that can accept input. This object is available in API version 53.0 through 56.0. - **[SvcCatalogFulfillmentFlow](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_svccatalogfulfillmentflow.htm)** Represents the flow associated with a specific catalog item in the Service Catalog. This object is available in API version 53.0 and later. - **[SvcCatalogItemDef](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_svccatalogitemdef.htm)** Represents the grouping of individual catalog items in Service Catalog. This object is available in API version 53.0 and later. - **[SymbolTable](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_symboltable.htm)** A complex type that represents all user-defined tokens in the Body of an ApexClass, ApexClassMember, or ApexTriggerMember and their associated line and column locations within the Body. - **[TabDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_tabdefinition.htm)** Represents a tab, and returns all tabs available in the org. Available in API version 43.0 and later. - **[TelephonyProvider](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_telephonyprovider.htm)** Represents the telephony provider configuration and trust settings for Agentforce Contact Center BYOC integrations. This object is available in API version 68.0 and later. - **[Territory2SupportedObject](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_territory2supportedobject.htm)** Represents the object type supported by territories. This object is available in API version 57.0 and later. - **[TestSuiteMembership](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_testsuitemembership.htm)** Associates an Apex class with an ApexTestSuite. Available in Tooling API version 36.0 and later. - **[TimeSheetTemplate](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_timesheettemplate.htm)** Represents a template for creating time sheets in Field Service. Available in API version 46.0 and later. - **[TimeSheetTemplateAssignment](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_timesheettemplateassignment.htm)** Represents the assignment of a time sheet template to a profile. Available in API version 48.0 and later. - **[TraceFlag](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_traceflag.htm)** Represents a trace flag that triggers an Apex debug log at the specified logging level. - **[TransactionSecurityPolicy](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_transactionsecurity.htm)** Represents a transaction security policy definition. - **[TrustedTelephonyProvider](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_trustedtelephonyprovider.htm)** Represents the mapping between an organization and its trusted telephony carrier configuration for Agentforce Contact Center BYOC. This object is available in API version 68.0 and later. - **[User](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_user.htm)** Represents a user. You can retrieve standard fields on User with the Tooling API, but custom fields can’t be retrieved. - **[UserAccessPolicy](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_useraccesspolicy.htm)** Represents a user access policy. This object is available in API version 57.0 and later. - **[UserAccessPolicyAction](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_useraccesspolicyaction.htm)** Represents an action applied by the user access policy. This object is available in API version 57.0 and later. - **[UserAccessPolicyFilter](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_useraccesspolicyfilter.htm)** Represents a user criteria filter for a user access policy. This object is available in API version 57.0 and later. - **[UserCriteria](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_usercriteria.htm)** Represents the member criteria to use in Experience Cloud site moderation rules. Available in Tooling API version 39.0 and later. - **[UserEntityAccess](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_userentityaccess.htm)** Represents the access that the current user has to an object. Available in Tooling API version 34.0 and later. - **[UserFieldAccess](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_userfieldaccess.htm)** Represents the access that the current user has to a field. Available in Tooling API version 34.0 and later. - **[ValidationRule](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_validationrule.htm)** Represents a validation rule or workflow rule which specifies the formula for when a condition is met. Available from API version 34.0 or later. - **[VirtualVisitConfig](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_virtualvisitconfig.htm)** Represents the configuration of an external video provider, which relays events from Salesforce to the provider. This object is available in API version 56.0 and later. - **[VoiceTelephonyDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_voicetelephonydefinition.htm)** Represents the org-level voice telephony configuration for Agentforce Contact Center, including the dialing prefix, dialing region, default caller ID, and pre-dial flow used when placing outbound calls. This object is available in API version 68.0 and later. - **[VoiceTelephonyGroupOvride](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_voicetelephonygroupovride.htm)** Represents group-level telephony settings that override the default org-level configuration. This object is available in API version 68.0 and later. - **[VoiceTelephonyProfileOvride](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_voicetelephonyprofileovride.htm)** Represents profile-level telephony settings that override the default org-level configuration. This object is available in API version 68.0 and later. - **[VoiceTelephonyUserOvride](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_voicetelephonyuserovride.htm)** Represents user-level telephony settings that override the default org-level configuration. This object is available in API version 68.0 and later. - **[WebLink](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_weblink.htm)** Represents a custom button or link. Available in the Tooling APIfrom API version 34.0 or later. - **[WebStoreTemplate](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_webstoretemplate.htm)** Represents a configuration for creating commerce stores. This object is available in API version 49.0 and later. - **[WorkflowAlert](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_workflowalert.htm)** Represents a workflow alert. A workflow alert is an email generated by a workflow rule or approval process and sent to designated recipients. - **[WorkflowFieldUpdate](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_workflowfieldupdate.htm)** Represents a workflow field update. - **[WorkflowOutboundMessage](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_workflowoutboundmessage.htm)** Represents an 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. - **[WorkflowRule](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_workflowrule.htm)** Represents a workflow rule that is used to fire off a specific workflow action when the specified criteria is met. Includes access to the associated WorkflowRule object in Salesforce Metadata API. - **[WorkflowTask](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_workflowtask.htm)** Represents a workflow task that is used to fire off a specific workflow action when the specified criteria is met. Includes access to the associated WorkflowRule object in Salesforce Metadata API. - **[WorkSkillRouting](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_workskillrouting.htm)** Represents a setup object that stores a set of WorkSkillRoutingAttribute objects used to route a work item to an agent who has the skills necessary to take the work. Available in API version 46.0 and later. - **[WorkSkillRoutingAttribute](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_workskillroutingattribute.htm)** Represents a setup object that stores metadata related to the routing assignments between object field values and skills. Field values are used to route a work item to an agent who has the skills necessary to take the work. Available in API version 46.0 and later. #### See Also - [REST Overview](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_rest_overview.htm "Use REST if you’re using a language that isn’t strongly typed, like JavaScript.") - [SOAP Calls](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_soap_overview.htm) # Tooling API Release Notes Use the Salesforce Release Notes to learn about the most recent updates and changes to Tooling API. For updates and changes that impact the Salesforce Platform, including Tooling API, see the [API Release Notes](https://help.salesforce.com/s/articleView?id=release-notes.rn_api.htm&language=en_US). For new, changed, and deprecated Tooling API objects and other changes specific to Tooling API, see [Tooling API New and Changed Objects](https://help.salesforce.com/s/articleView?id=release-notes.rn_api_tooling_new_and_changed_objects.htm&language=en_US). # Tooling API Usage Use SOQL queries to list the relationships between the metadata components in your org. The query results include one row for each relationship. Each relationship is a directional dependency between two metadata components. This Apex class (YourClass) references a custom field (yourField\_\_c) on the Account object. public class YourClass { public void updateAccount(Account acc, String value) { acc.yourField\_\_c = value; update(acc); } } In the output of a MetadataComponentDependency query, the Apex class is represented as a metadata component (the component doing the referencing, represented by MetadataComponent\* field values). The custom field is represented as a referenced metadata component (represented by RefMetadataComponent\* field values). Each row in the output shows a directional dependency from one metadata component (such as YourClass) to one of the metadata components that it references (such as yourField). Each of the two components is represented using four fields. Id The ID of this component. Name The name of this component (for example, YourClass). Namespace The namespace this component belongs to (or, if the component isn’t in a package, null). Type The type of the component (for example, ApexClass). In the example of the Apex class referencing a custom field, a row in the output would include something like these values. - MetadataComponentId: "01p000000000SOMEID" - MetadataComponentName: "YourClass" - MetadataComponentNamespace: null - MetadataComponentType: "ApexClass" - RefMetadataComponentId: "00N000000000SOMEID" - RefMetadataComponentName: "yourField" - RefMetadataComponentNamespace: null - RefMetadataComponentType: "CustomField" All the MetadataComponent\* field values represent the Apex class, and the RefMetadataComponent\* field values represent the custom field that the Apex class references. Each row is a directional dependency, where the metadata component references the referenced metadata component. If two components reference each other, the circular relationship is described as two separate rows. For example, two Apex classes can reference each other. public class ClassA { public ClassB newB() { return new ClassB(); } } public class ClassB { public ClassA newA() { return new ClassA(); } } The output for a MetadataComponentDependency query that includes these two classes, each directional relationship (ClassA -> ClassB, and ClassB -> ClassA) are represented as a separate row. Row 1 (ClassA -> ClassB): - MetadataComponentId: "01p00000000SOMEIDA" - MetadataComponentName: "ClassA" - MetadataComponentNamespace: null - MetadataComponentType: "ApexClass" - RefMetadataComponentId: "00N00000000SOMEIDB" - RefMetadataComponentName: "ClassB" - RefMetadataComponentNamespace: null - RefMetadataComponentType: "ApexClass" Row 2 (ClassB -> ClassA): - MetadataComponentId: "01p00000000SOMEIDB" - MetadataComponentName: "ClassB" - MetadataComponentNamespace: null - MetadataComponentType: "ApexClass" - RefMetadataComponentId: "00N00000000SOMEIDA" - RefMetadataComponentName: "ClassA" - RefMetadataComponentNamespace: null - RefMetadataComponentType: "ApexClass" In all but the simplest orgs, MetadataComponentDependency queries return a huge number of rows. It can be useful to limit the scope of your requests by type, name, or ID, to help isolate dependencies on specific components. This SOQL query shows all references to the Apex class YourClass. For example, it shows pages, components, flows, and other classes that YourClass depends on. SELECT MetadataComponentName, MetadataComponentType FROM MetadataComponentDependency WHERE RefMetadataComponentType = 'ApexClass' This example shows all references to a field, including references from layouts, Apex code, flows, and so on. In this example, the code determines the field ID by querying the FieldDefinition object. The query’s output shows all the metadata components that depend on the field with the ID yourFieldId. SELECT MetadataComponentName, MetadataComponentType FROM MetadataComponentDependency WHERE RefMetadataComponentId = yourFieldId # Tooling Objects Use these objects to build tools around test results, debugging, code coverage, and more. - **[ApexCodeCoverage](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexcodecoverage.htm)**: Represents code coverage test results for an Apex class or trigger. - **[ApexCodeCoverageAggregate](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexcodecoverageaggregate.htm)**: Represents aggregate code coverage test results for an Apex class or trigger. Available in Tooling API version 29.0 and later. - **[ApexExecutionOverlayAction](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexexecutionoverlayaction.htm)**: Specifies an Apex code snippet or SOQL query to execute at a specific line of code in an Apex class or trigger. Optionally, generates a heap dump. - **[ApexExecutionOverlayResult](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexexecutionoverlayresult.htm)**: Represents the result from the Apex code snippet or SOQL query defined in the associated ApexExecutionOverlayAction, and the resulting heap dump if one was returned. - **[ApexLog](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexlog.htm)**: Represents a debug log. - **[ApexOrgWideCoverage](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexorgwidecoverage.htm)**: Represents code coverage test results for an entire organization. - **[ApexResult](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexresult.htm)** : A complex type that represents the result of Apex code executed as part of an ApexExecutionOverlayAction, returned in an ApexExecutionOverlayResult . - **[ApexTestQueueItem](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apextestqueueitem.htm)**: Represents a single Apex class in the Apex job queue. - **[HeapDump](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_heapdump.htm)**: A complex type that represents a heap dump in an ApexExecutionOverlayResult object. - **[SOQLResult](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_soqlresult.htm)**: A complex type that represents the result of a SOQL query in an ApexExecutionOverlayResult object. - **[SymbolTable](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_symboltable.htm)**: A complex type that represents all user-defined tokens in the Body of an ApexClass, ApexClassMember, or ApexTriggerMember and their associated line and column locations within the Body. - **[TraceFlag](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_traceflag.htm)**: Represents a trace flag that triggers an Apex debug log at the specified logging level. # TraceFlag Represents a trace flag that triggers an Apex debug log at the specified logging level. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API HTTP Methods Query, GET, POST, PATCH, DELETE ## Fields | Field Name | Details | | --- | --- | | ApexCode | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The log category level for Apex code. Includes information about Apex code. Can also include log messages generated by data manipulation language (DML) statements, inline SOQL or SOSL queries, the start and completion of triggers, the start and completion of test methods, and so on. The following are valid values. - NONE - ERROR - WARN - INFO - DEBUG - FINE - FINER - FINEST This field is required. | | ApexProfiling | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The log category level for profiling information. Includes cumulative profiling information, such as the limits for your namespace, the number of emails sent, and so on. The following are valid values. - NONE - ERROR - WARN - INFO - DEBUG - FINE - FINER - FINEST This field is required. | | Callout | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The log category level for callouts. Includes the request-response XML that the server is sending and receiving from an external Web service. The request-response XML is useful when debugging issues related to SOAP API calls. The following are valid values. - NONE - ERROR - WARN - INFO - DEBUG - FINE - FINER - FINEST This field is required. | | Database | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The log category for database activity. Includes information about database activity, including every DML statement or inline SOQL or SOSL query. The following are valid values. - NONE - ERROR - WARN - INFO - DEBUG - FINE - FINER - FINEST This field is required. | | DebugLevelId | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description The ID of the debug level assigned to this trace flag. A debug level, which is a set of log category levels, can be assigned to multiple trace flags. | | ExpirationDate | Type dateTime Properties Create, Filter, Sort, Update Description The date and time that the trace flag expires. ExpirationDate must be less than 24 hours after StartDate. Only one trace flag per traced entity can be active at a time. If StartDate is null, the current time is used, and the ExpirationDate must be less than 24 hours from the current time. This field is required. | | LogType | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort Description The type of log to generate. The following are valid values. - CLASS\_TRACING - DEVELOPER\_LOG - PROFILING (reserved for future use) - USER\_DEBUG When you open the Developer Console, it sets a DEVELOPER\_LOG trace flag to log your activities. USER\_DEBUG trace flags cause logging of an individual user’s activities. CLASS\_TRACING trace flags override logging levels for Apex classes and triggers, but don’t generate logs. This field is required. | | ScopeId | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description **Deprecated.** This field is available in API version 34.0 and earlier. A reference to a user. This field is used with the TracedEntityID field. - When the value is user, the actions of the user or entity specified by TracedEntityID are traced to the system log at the described level. System logs are visible only to you. Use this scope for class-level filtering. If there are both user and entity-level flags, the user flags take precedence until a method from a class with an entity trace flag is entered. When the method returns, the user trace flags are restored. - When the value is emptyid, the user’s actions are traced to the org’s debug log at the described level. Debug logs are visible to all administrators. This option is only available if TracedEntityID references a user (not an Apex class or Apex trigger). The variable emptyid can be the value 0000000000000000 or null. The scope defined here is reflected in the [ApexLog](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_apexlog.htm "Represents a debug log.") Location field. | | StartDate | Type dateTime Properties Create, Filter, Group, Nillable, Sort, Update Description The date and time when the trace flag takes effect. ExpirationDate must be less than 24 hours after StartDate. Only one trace flag per traced entity can be active at a time. If StartDate is null, ExpirationDate must be less than 24 hours from the current time. | | System | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The log category level for calls to all system methods, such as the System.debug method. The following are valid values. - NONE - ERROR - WARN - INFO - DEBUG - FINE - FINER - FINEST This field is required. | | TracedEntityId | Type reference Properties Create, Filter, Group, Sort, Update Description A reference to the following: - Apex class - Apex trigger - User This field is used with the LogType field. This field is required. | | Validation | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The log category level for validation rules. Includes information about validation rules, such as the name of the rule, or whether the rule evaluated true or false. The following are valid values. - NONE - ERROR - WARN - INFO - DEBUG - FINE - FINER - FINEST This field is required. | | Visualforce | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The log category level for Visualforce. Includes information about Visualforce events, including serialization and deserialization of the view state or the evaluation of a formula field in a Visualforce page. The following are valid values. - NONE - ERROR - WARN - INFO - DEBUG - FINE - FINER - FINEST This field is required. | | Workflow | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The log category level for workflow rules. Includes information for workflow rules, such as the rule name and the actions taken. This field is required. The following are valid values. - NONE - ERROR - WARN - INFO - DEBUG - FINE - FINER - FINEST | ## Usage To diagnose a functional issue or a performance problem, use the TraceFlag object to set up logging for yourself or for another user. The following options are available. - To set up logging for a specific user, set LogType to USER\_DEBUG and TracedEntityId to the ID of the user. This option can be configured only for a user, not for an Apex class or Apex trigger. - To set up logging level overrides for an Apex class or trigger, set LogType to CLASS\_TRACING and TracedEntityId to the ID of the Apex class or trigger. CLASS\_TRACING trace flags override other logging levels, but don’t cause logs to be generated or persisted. # TransactionSecurityPolicy Represents a transaction security policy definition. This object is available in Tooling API version 35.0 and later. ## Supported Calls create(), delete(), query(), retrieve(), update(), upsert() ## Supported REST Methods Query, DELETE, GET, PATCH, POST ## Fields
Field Details
ActionConfig
Type
textarea
Properties
Create, Update
Description
Describes the action to take when the matching Transaction Security policy is triggered. Also indicates the type of notifications selected and the ID of the intended recipient. The recipient must be active and assigned the Modify All Data and View Setup user permissions. Multiple actions can be taken. The actions available depend on the EventType field.
ApexPolicyId
Type
reference
Properties
Filter, Group, Nillable, Sort
Description
Represents the Apex TxnSecurity.PolicyCondition or TxnSecurity.EventCondition interface for this policy.
BlockMessage
Type
string
Properties
Filter, Nillable, Sort
Description
The custom message a user receives when their action is blocked by a policy. Used in Real-Time Event Monitoring only. Maximum of 1000 characters. This field appears as null when the default message option is selected and is available only when EventName is set to ApiEvent, ListViewEvent, and ReportEvent. Available in API version 49.0 and later.
CustomEmailContent
Type
string
Properties
Filter, Nillable, Sort,
Description
The administrator-created custom email content sent when a policy is triggered. Used in Real-Time Event Monitoring only. Maximum of 1333 characters. This field is null when the Custom Email Content setting is selected in the UI but no message content is entered. Available in API version 54.0 and later.

Custom messages aren’t translatable.

Description
Type
string
Properties
Filter, Nillable, Sort
Description
The description entered for this policy. This field available in API 39.0 and later.
DeveloperName
Type
string
Properties
Filter, Group, Sort
Description
The API, or program name, for this policy.
Note

Note

Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field.

EventName
Type
picklist
Properties
Filter, Group, Nillable, Restricted picklist, Sort
Description
Used in Real-Time Event Monitoring only. Indicates the name of the event the policy monitors. This field is available in API 31.0 and later. Valid values are:
  • ApiEvent—Tracks these user-initiated read-only API calls: query(), queryMore(), and count(). Captures API requests through SOAP API and Bulk API for the Enterprise and Partner WSDLs. Tooling API calls and API calls originating from a Salesforce mobile app aren’t captured.
  • CredentialStuffingEventStore—Tracks when a user successfully logs into Salesforce during an identified credential stuffing attack. Credential stuffing refers to large-scale automated login requests using stolen user credentials.This value is available in API 49.0 and later.
  • FileEventStore (beta)—Tracks when a user downloads, previews, or uploads a file. FileEventStore is a big object that stores the event data of FileEvent. This object is available in API version 57.0 and later.
  • ListViewEvent—Tracks when users access data with list views using Lightning Experience, Salesforce Classic, or the API. It doesn’t track list views of Setup entities.
  • LoginAnomalyEventStore—Stores the records of data access anomalies that are caused by potentially malicious login actions.
  • LoginAsEvent—Tracks the login activity of admins who log in to Salesforce as other users. This object is available in API version 46.0 and later.
  • LoginEvent—LoginEvent tracks the login activity of users who log in to Salesforce.
  • PermissionSetEventStore—Tracks changes to permission sets and permission set groups.
  • ReportAnomalyEventStore—Tracks anomalies in how users run or export reports, including unsaved reports. This value is available in API 49.0 and later.
  • ReportEvent—Tracks when reports are run in your org.
  • SessionHijackingEventStore—Tracks when unauthorized users gain ownership of a Salesforce user’s session with a stolen session identifier. To detect such an event, Salesforce evaluates how significantly a user’s current browser fingerprint diverges from the previously known fingerprint using a probabilistically inferred significance of change. This value is available in API 49.0 and later.
EventType
Type
picklist
Properties
Filter, Group, Nillable, Restricted picklist, Sort
Description
Used in Legacy Transaction Security only. Indicates the type of event the policy monitors. Valid values are:
  • AccessResource—Notifies you when the selected resource has been accessed.
  • AuditTrail—Reserved for future use.
  • DataExport—Notifies you when any API query is made, such as from the Data Loader API client, or when a Report export occurs.
  • Entity—Notifies you on use of an object type such as an authentication provider or chatter post.
  • Login—Notifies you when a user logs in.
Note

Note

As of Summer '20, Legacy Transaction Security is a retired feature in all Salesforce orgs.

ExecutionUserId
Type
reference
Properties
Filter, Group, Nillable, Sort
Description
Used in Legacy Transaction Security only. The ID of an active user who is assigned the Modify All Data and View Setup user permissions.
Note

Note

As of Summer '20, Legacy Transaction Security is a retired feature in all Salesforce orgs.

FullName
Type
string
Properties
Create, Group, Nillable
Description
The full name of the associated object in the Metadata API. Use to avoid race conditions on create, before you have IDs.
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.
ManageableState
Type
ManageableState enumerated list
Properties
Filter, Group, Nillable, Restricted picklist, Sort
Description
Indicates the manageable state of the specified component that is contained in a package:
  • beta
  • deleted
  • deprecated
  • deprecatedEditable
  • installed
  • installedEditable
  • released
  • unmanaged

This field is available in API version 38.0 and later.

MasterLabel
Type
string
Properties
Filter, Group, Sort
Description
The policy’s name.
Important

Important

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.

Metadata
Type
mns:TransactionSecurityPolicy
Properties
Create, Nillable, Update
Description
The policy’s metadata. See the Metadata API Developer Guide for details.
NamespacePrefix
Type
string
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 the following values:

  • In Developer Edition organizations, the namespace prefix is set to the namespace prefix of the organization for all objects that support it. There is 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 are not Developer Edition organizations, NamespacePrefix is only set for objects that are part of an installed managed package. There is no namespace prefix for all other objects.
ResourceName
Type
string
Properties
Filter, Group, Nillable, Sort
Description
Used in Legacy Transaction Security only. A resource used to narrow down the conditions under which the policy triggers. For example, with a DataExport event, you can select a resource Lead to specifically monitor export activity occurring on your Lead entities. The resources available depend on the EventType field.
Note

Note

As of Summer '20, Legacy Transaction Security is a retired feature in all Salesforce orgs.

State
Type
picklist
Properties
Filter, Group, Restricted picklist, Sort
Description
Indicates whether the policy is active. Valid values are:
  • Disabled
  • Enabled
Type
Type
picklist
Properties
Filter, Group, Restricted picklist, Sort
Description
The type of validation that the policy uses. The valid values are:
  • CustomApexPolicy— Created with Apex editor.
  • CustomConditionBuilderPolicy— Created with Condition Builder
The default value is CustomApexPolicy.
# TrustedTelephonyProvider Represents the mapping between an organization and its trusted telephony carrier configuration for Agentforce Contact Center BYOC. This object is available in API version 68.0 and later. ## Supported Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Special Access Rules To access TrustedTelephonyProvider, you must have the Agentforce Contact Center Admin (Salesforce Voice) permission set assigned. ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description Unique name of the object in the API. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description Language of the MasterLabel. | | MasterLabel | Type string Properties Create, Filter, Group, idLookup, Sort, Update Description User interface label for the trusted telephony provider. This internal label doesn’t get translated. | | ProviderCarrier | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description Carrier aggregator type associated with the trusted telephony provider. Possible value: - Bandwidth | | TelephonyProviderId | Type reference Properties Create, Filter, Group, Sort Description ID of the associated telephony provider. This field is a relationship field. Relationship Name TelephonyProvider Refers To TelephonyProvider | # User Represents a user. You can retrieve standard fields on User with the Tooling API, but custom fields can’t be retrieved. This object is available in API version 32.0 and later. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note User fields are exposed in SOAP API version 45.0 and later. You can use Tooling API to query for User 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. User is still exposed in Tooling API to User Profiles with the ViewSetup permission. ## Supported SOAP Calls describeLayout(), getDeleted(), getUpdated(), query(), retrieve(), search(), update() ## Supported REST HTTP Methods GET, PATCH ## Fields | Field | Details | | --- | --- | | FirstName | Type string Properties Create, Filter, Group, NillableSort, Update Description The user’s first name. | | LastName | Type string Properties Create, Filter, Group, NillableSort, Update Description The user’s last name. | | Name | Type string Properties Filter, Group, Sort Description Concatenation of FirstName and LastName. Limited to 121 characters. | | Username | Type string Properties Create, Filter, Group, idLookup, Sort, Update Description The name of the user in your organization. | | WorkspaceId | Type ID Properties Filter, Group, Nillable, Sort, Update Description The ID of the last open Developer Console workspace. | # UserAccessPolicy Represents a user access policy. This object is available in API version 57.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update() , upsert() ## Supported REST API Methods GET, POST, PATCH, DELETE, HEAD, Query ## Special Access Rules To create or modify user access policies, users must have the Manage User Access Policies permission. ## Fields | Field | Details | | --- | --- | | BooleanFilter | Type string Properties Filter, Group, Nillable, Sort Description Required. The logic that determines how your user criteria filters are applied in the user access policy. For instance, if you have two user access policy filters with the SortOrder equal to 1 and 2, respectively, the BooleanFilter can be 1 AND 2 or 1 OR 2. | | Description | Type textarea Properties Filter, Group, Nillable, Sort Description Description of the user access policy. | | DeveloperName | Type string Properties Filter, Group, Sort Description The unique name for the user access policy. 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 organization. Label is **Name**. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note When creating large sets of data, always specify a unique DeveloperName for each record. | | Language | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The language of the user access policy. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description Label for the user access policy. In the UI, this field is Label. | | NamespacePrefix | Type string 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 the following values: - In Developer Edition organizations, the namespace prefix is set to the namespace prefix of the organization for all objects that support it. There is 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 are not Developer Edition organizations, NamespacePrefix is only set for objects that are part of an installed managed package. There is no namespace prefix for all other objects. | | Order | Type int Properties Create, Filter, Group, Nillable, Sort, Update Description Indicates the order for which active policy is applied when a user meets the criteria for multiple policies. Must be an integer from 0 to 10,000. Only the active policy with the lowest Order value is applied. This field is required only if the Status field is set to Active. Available in API version 61.0 and later. | | Status | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The status of the user access policy. Possible values are: - Active - Completed - Design - Failed - Migrate - Testing - Updating The default value is Design. If you deploy a policy with a status of Active, the status is changed to Design. A Salesforce admin can then set the status to Active by automating the policy in Setup. | | TriggerType | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The type of user record trigger for which this user access policy runs. Possible values are: - Create—The user access policy runs when a user who matches the policy criteria is created. - CreateAndUpdate—The user access policy runs when a user who matches the policy criteria is either created or updated. - Update—The user access policy runs when a user who matches the policy criteria is updated. | ## Usage For more information, see [User Access Policies](https://help.salesforce.com/s/articleView?id=platform.perm_user_access_policies.htm&type=5&language=en_US) in Salesforce Help. # UserAccessPolicyAction Represents an action applied by the user access policy. This object is available in API version 57.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update() , upsert() ## Supported REST API Methods GET, POST, PATCH, DELETE, HEAD, Query ## Special Access Rules To create or modify user access policies, users must have the Manage User Access Policies permission. ## Fields | Field | Details | | --- | --- | | Action | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Indicates whether the user access policy grants access to or removes access from the target access mechanism. Possible values are: - Grant - Revoke | | TargetId | Type reference Properties Filter, Group, Nillable, Sort Description The ID of the access mechanism that the user access policy applies. This field is a polymorphic relationship field. Relationship Name Target Relationship Type Lookup Refers To Group, Queue, PermissionSet, PermissionSetGroup | ## Usage For more information, see [User Access Policies](https://help.salesforce.com/s/articleView?id=platform.perm_user_access_policies.htm&type=5&language=en_US) in Salesforce Help. # UserAccessPolicyFilter Represents a user criteria filter for a user access policy. This object is available in API version 57.0 and later. You can use the UserAccessPolicyFilter Tooling API object to configure more complex user criteria filters for your user access policies. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods GET, POST, PATCH, DELETE, HEAD, Query ## Special Access Rules To create or modify user access policies, users must have the Manage User Access Policies permission. ## Fields | Field | Details | | --- | --- | | ColumnName | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description If Target is set to User, the user field that your user criteria filter is based on. Possible values are: - CommunityNickname - Department - Division - Email - FirstName - IsActive - LastName - Title Some custom fields are also supported, depending on the field type. If you don’t set Target to User, then this field isn’t used. | | Operation | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The operator of the user criteria filter. Possible values are: - equals - equalsIgnoreCase— Available in API version 59.0 and later. - in— Available in API version 58.0 and later. - includes— Available in API version 59.0 and later. - notEquals Select in if you want to reference multiple profile or role IDs in the same user criteria filter. To do this, create multiple UserAccessPolicyFilter objects with Operation set to in and with the same SortOrder value. The only field that differs between these UserAccessPolicyFilter objects is the Value field, which references the various IDs. All of the IDs referenced in the in expression must be of the same type. | | SortOrder | Type int Properties Filter, Group, Sort Description The numeric reference used to identify the specific filter. | | Target | Type picklist Properties Filter, Group, Restricted picklist, Sort Description If your user criteria filter is based on a user field, set to User. If your user criteria filter is based on a package license, permission set, permission set group, permission set license, profile, or role, then this field isn’t used. | | Value | Type string Properties Filter, Group, Nillable, Sort Description If Target is set to User, the value of the user field specified in ColumnName that your user filter is operating on. Otherwise, the ID of the group, package license, permission set, permission set group, permission set license, profile, role, or queue that your user filter is operating on. | ## Usage For more information, see [User Access Policies](https://help.salesforce.com/s/articleView?id=platform.perm_user_access_policies.htm&type=5&language=en_US) in Salesforce Help. # UserCriteria Represents the member criteria to use in Experience Cloud site moderation rules. Available in Tooling API version 39.0 and later. ## Supported SOAP Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods GET ## Fields | Field | Details | | --- | --- | | Description | Type textarea Properties Filter, Nillable, Sort Description The description of the user criteria. | | Developer Name | Type string Properties Filter, Group, Sort Description API name of the developer. 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 organization. | | FullName | Type string 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. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the moderation rule. Valid values are: - 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 Spanish (Mexico) defaults to Spanish for customer-defined translations. - Swedish: sv - Thai: th The Salesforce user interface is fully translated to Thai, but Help is in English. | | MasterLabel | Type string Properties Filter, Group Sort Description The label for the user criteria. | | Metadata | Type mns:UserCriteria Properties Create, Nillable, Update Description The user criteria metadata. 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. | # UserEntityAccess Represents the access that the current user has to an object. Available in Tooling API version 34.0 and later. ## Supported SOAP Calls query(), search() ## Supported REST HTTP Methods GET ## Limitations [SOQL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_soql_limits.htm "Some Tooling API objects have SOQL limitations. These limitations apply to any Metadata Catalog query, which applies to all Custom Metadata Types and Metadata Catalog entities, not only the ones explicitly listed.") [SOSL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_sosl_limits.htm "Two Tooling API objects, EntityDefinition and FieldDefinition, have some SOSL limitations. ExternalString and MetadataComponentDependency (Beta) don’t support SOSL searches.") ## Fields | Field | Details | | --- | --- | | DurableId | Type string 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. To simplify queries, use this field. | | EntityDefinition | Type EntityDefinition Properties Filter, Group, Nillable, Sort Description The entity definition for the object associated with this user entity access record. Because this field represents a relationship, use only in subqueries. | | EntityDefinitionId | Type string Properties Filter, Group, Nillable, Sort Description ID of the EntityDefinition. | | IsActivateable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the user specified in the User field has access to activate records of the associated object type if the User owns them. For example, a user owns an Apex trigger or workflow rule, and can activate them if this field is true for ApexTrigger or WorkflowRule. | | IsCreatable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the user specified in the User field has access to create records of the associated object type. | | IsDeletable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the user specified in the User field has access to delete records of the associated object type. | | IsEditable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the user specified in the User field has access to edit records of the associated object type. | | IsFlsUpdatable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the user specified in the User field has access to change field-level security settings on appropriate fields of the associated object type. For example, an administrator could deny a group of users access to the Type field on Account. | | IsMergeable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the user specified in the User field has access to merge records of the associated object type. | | IsReadable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the user specified in the User field has access to view records of the associated object type. | | IsUndeletable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the user specified in the User field has access to undelete records of the associated object type. | | IsUpdatable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the user specified in the User field has access to edit records of the associated object type. | | User | Type User Properties Filter, Group, Nillable, Sort Description The user who has the access defined in this user entity access record, for the entity specified in the EntityDefinition field. Because this field represents a relationship, use only in subqueries. | | UserId | Type ID Properties Filter, Group, Nillable, Sort Description ID of the user specified in the User field. | ## Usage Queries on UserEntityAcces need filters on both the entity side and the user side. Example: Entity Side SELECT EntityDefinition.QualifiedApiName, EntityDefinition.MasterLabel FROM UserEntityAccess WHERE UserId={current\_user\_id} AND IsCreateable=true AND EntityDefinition.IsCustomizable=true Example: User Side UserId={current\_user\_id} # UserFieldAccess Represents the access that the current user has to a field. Available in Tooling API version 34.0 and later. ## Fields | Field | Details | | --- | --- | | DurableId | Type string 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. To simplify queries, use this field. | | EntityDefinition | Type EntityDefinition Properties Filter, Group, Nillable, Sort Description The entity definition for the object associated with this user entity access record. | | EntityDefinitionId | Type string Properties Filter, Group, Nillable, Sort Description ID of the EntityDefinition. | | IsAccessible | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the user specified in the User field has access to view the associated field. | | IsCreatable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the user specified in the User field has access to create records of the associated field. | | IsUpdatable | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If true, the user specified in the User field has access to edit the associated field. | | User | Type [User](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_user.htm#tooling_api_objects_user "Represents a user. You can retrieve standard fields on User with the Tooling API, but custom fields can’t be retrieved.") Properties Filter, Group, Nillable, Sort Description The user who has access defined in this user field access record, for the entity specified in the EntityDefinition field. Because this field represents a relationship, use only in subqueries. | | UserId | Type ID Properties Filter, Group, Nillable, Sort Description ID of the user specified in the User field. | ## SOQL Limitations This object doesn't support some SOQL operations. GROUP BY Example Query: SELECT COUNT(qualifiedapiname), isfeedenabled FROM EntityDefinition GROUP BY isfeedenabled Error Returned: The requested operation is not yet supported by this SObject storage type, contact salesforce.com support for more information. LIMIT, LIMIT OFFSET Example Queries: SELECT qualifiedapiname FROM EntityDefinition LIMIT 5 SELECT qualifiedapiname FROM EntityDefinition LIMIT 5 OFFSET 10 An incorrect result is returned because LIMIT and LIMIT OFFSET are ignored. NOT Example Query: SELECT qualifiedapiname FROM EntityDefinition WHERE qualifiedapiname!='Account' Error Returned: Only equals comparisons permitted OR Example Query: SELECT qualifiedapiname, keyprefix FROM EntityDefinition WHERE isdeletable=true OR (isfeedenabled=false AND keyprefix='01j') Error Returned: Disjunctions not supported INCLUDES Example Query: SELECT ComplianceGroup FROM FieldDefinition WHERE EntityDefinitionId = 'Account' AND ComplianceGroup includes('GDPR') Error Returned: Unsupported filter type # ValidationRule Represents a validation rule or workflow rule which specifies the formula for when a condition is met. Available from API version 34.0 or later. ## Supported SOAP Calls create(), delete(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods Query, GET, POST, PATCH ## Fields | Field Name | Details | | --- | --- | | Active | Type boolean Properties Defaulted on create, Filter, Group, Sort. Description Required. Indicates whether this validation rule is active, (true), or not active (false). | | Description | Type string Properties Filter, Nillable, Sort. Description A description of the validation rule. | | EntityDefinition | Type [EntityDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_entitydefinition.htm "Provides row-based access to metadata about standard and custom objects.") Properties Filter, Group, Sort. Description Required. The entity definition for the object associated with the validation rule. | | EntityDefinitionId | Type string Properties Filter, Group, Sort. Description Required. ID of the record in EntityDefinition. | | ErrorDisplayField | Type string Properties Filter, Group, Nillable, Sort. Description The fully specified name of a field in the application. If a value is supplied, the error message appears next to the specified field. If you do not specify a value or the field isn’t visible on the page layout, the value changes automatically to Top of Page. | | ErrorMessage | Type string Properties Filter, Group, Nillable, Sort . Description Required. The message that appears if the validation rule fails. The message must be 255 characters or less. | | FullName | Type string Properties Create, Group, Nillable. Description 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. 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. | | Id | Type Id Properties Defaulted on create, Filter, Group, idLookup, Sort. Description The unique system ID for this record. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | Metadata | Type ValidationRule Metadata Properties Create, Nillable, Update. Description Validation rule metadata. 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 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 the following values: - In Developer Edition organizations, the namespace prefix is set to the namespace prefix of the organization for all objects that support it. There is 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 are not Developer Edition organizations, NamespacePrefix is only set for objects that are part of an installed managed package. There is no namespace prefix for all other objects. | | ValidationName | Type string Properties Filter, Group, Namefield, Sort. Description The name or ID of the object that this rule is associated with. | ## ValidationRule Metadata active, description, errorDisplayField, and errorMessage are described in the previous table. | Field Name | Details | | --- | --- | | errorConditionFormula | Type string Properties Filter, Group, Nillable, Sort Description Required. The formula defined in the validation rule. If the formula returns a value of true, an error message is displayed. | # VirtualVisitConfig Represents the configuration of an external video provider, which relays events from Salesforce to the provider. This object is available in API version 56.0 and later. ![Important](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note_important.png) #### Important 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. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST API Methods DELETE, GET, HEAD, PATCH, POST, Query ## Fields To use the Virtual Visit feature you need the Video Call license add on | Field | Details | | --- | --- | | ComprehendServiceType | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Specifies the type of service used to convert speech into text or to analyze the converted speech text. Possible values are: - ComprehendMedicalService—Transcribe Medical - ComprehendService—Transcribe | | DeveloperName | Type string Properties Filter, Group, Sort Description The unique name for the VirtualVisitConfig object. Required. 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 organization. Label is **Record Type Name**. | | ExperienceCloudSiteUrl | Type string Properties Filter, Group, Nillable, Sort Description The URL of the Digital Experience site where the Video Call component is available to portal or guest users. | | ExternalRoleIdentifier | Type string Properties Filter, Nillable, Sort Description Enter the ID of the role that's used to allow users join a video call and to grant them temporary access to certain functions needed to participate in the call. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated VirtualVisitConfig in Metadata API. The full name can include a namespaceprefix. 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. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language of the VirtualVisitConfig. | | ManageableState | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: Possible values are: - beta—Managed-Beta - deleted—Managed-Proposed-Deleted - deprecated—Managed-Proposed-Deprecated - deprecatedEditable—SecondGen-Installed-Deprecated - installed—Managed-Installed - installedEditable—SecondGen-Installed-Editable - released—Managed-Released - unmanaged—Unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description Label for the VirtualVisitConfig. In the UI, this field is Virtual Visit Config. | | MessagingRegion | Type string Properties Filter, Group, Nillable, Sort Description Specifies the region in which the waiting room and messaging channel data is processed and stored. Available in API version 57.0 and later. | | Metadata | Type [EventRelayConfig](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_eventrelayconfig.htm) Properties Create, Nillable, Update Description The VirtualVisitConfig’s metadata. | | NamedCredentialId | Type reference Properties Filter, Group, Nillable, Sort Description The named credential record that's used to authenticate and authorize an account of the video call vendor. This field is a relationship field. Relationship Name NamedCredential Relationship Type Lookup Refers To NamedCredential | | NamespacePrefix | Type string 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 the following values: - In Developer Edition organizations, the namespace prefix is set to the namespace prefix of the organization for all objects that support it. There is 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 are not Developer Edition organizations, NamespacePrefix is only set for objects that are part of an installed managed package. There is no namespace prefix for all other objects. | | StorageBucketName | Type string Properties Filter, Group, Nillable, Sort Description The name of the storage bucket that stores the meeting transcript. | | UsageType | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The name of the Salesforce feature for which the video call configuration record is created. Possible values are: - CHIME—Chime - INTELLIGENT\_FORM\_READER—Intelligent Form Reader - SENTIMENT\_ANALYSIS—Sentiment Analysis | | VideoCallApptTypeValue | Type string Properties Filter, Group, Nillable, Sort Description The Default Appointment Type picklist values from the Service Appointment object that represent a video appointment type. Use semicolons to separate multiple values. | | VideoControlRegion | Type string Properties Filter, Group, Nillable, Sort Description Specifies the region through which API calls related to Video Calls are made. Available in API version 57.0 and later. | | VisitRegion | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Specifies the region through which the Video Call video and audio data are processed. Possible values are: - af-south-1—Africa (Cape Town) - ap-east-1—Asia Pacific (Hong Kong) - ap-northeast-1—Asia Pacific (Tokyo) - ap-northeast-2—Asia Pacific (Seoul) - ap-northeast-3—Asia Pacific (Osaka) - ap-south-1—Asia Pacific (Mumbai) - ap-southeast-1—Asia Pacific (Singapore) - ap-southeast-2—Asia Pacific (Sydney) - ca-central-1—Canada (Central) - eu-central-1—Europe (Frankfurt) - eu-north-1—Europe (Stockholm) - eu-south-1—Europe (Milan) - eu-west-1—Europe (Ireland) - eu-west-2—Europe (London) - eu-west-3—Europe (Paris) - me-south-1—Middle East (Bahrain) - sa-east-1—South America (São Paulo) - us-east-1—US East (N. Virginia) - us-east-2—US East (Ohio) - us-west-1—US West (N. California) - us-west-2—US West (Oregon) | # VoiceTelephonyDefinition Represents the org-level voice telephony configuration for Agentforce Contact Center, including the dialing prefix, dialing region, default caller ID, and pre-dial flow used when placing outbound calls. This object is available in API version 68.0 and later. ## Supported Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Special Access Rules To access this object, enable Agentforce Contact Center Admin (Salesforce Voice) permission set. ## Fields | Field | Details | | --- | --- | | DefaultCallerIdentifier | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description Caller ID displayed on outbound calls placed with this configuration. | | Description | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description Purpose and scope of the voice telephony configuration. | | DeveloperName | Type string Properties Create, Filter, Group, Sort, Update Description Unique name of the object in the API. | | DialingPrefix | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description Dialing prefix prepended to outbound phone numbers for the telephony configuration. | | DialingRegion | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description Dialing region associated with the telephony configuration, used to determine routing and number formatting. | | Language | Type picklist Properties Create, Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort, Update Description Language of the MasterLabel. | | MasterLabel | Type string Properties Create, Filter, Group, Sort, Update Description User interface name of the voice telephony configuration. | | PreDialFlowId | Type reference Properties Create, Filter, Group, Nillable, Sort, Update Description ID of the flow executed before an outbound call is placed using the voice telephony configuration. This field is a relationship field. Relationship Name PreDialFlow Refers To FlowDefinition | # VoiceTelephonyGroupOvride Represents group-level telephony settings that override the default org-level configuration. This object is available in API version 68.0 and later. ## Supported Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Special Access Rules To access this object, you must enable Salesforce Voice Contact Center Admin for Amazon Connect and Salesforce Voice Contact Center Admin (Partner Telephony) for partner telephony providers. ## Fields | Field | Details | | --- | --- | | UserGroupId | Type reference Properties Create, Filter, Group, Nillable, Sort Description Unique ID of the group to which the telephony configuration override applies. Each group can have only one override assignment. This field is a relationship field. Relationship Name UserGroup Refers To Group | | VoiceTelephonyDefinitionId | Type reference Properties Create, Filter, Group, Sort Description ID of the voice telephony configuration associated with the override. This field is a relationship field. Relationship Name VoiceTelephonyDefinition Relationship Type Master-detail Refers To VoiceTelephonyDefinition (the master object) | ## Usage Use VoiceTelephonyGroupOvride to associate a Salesforce queue with a VoiceTelephonyDefinition record. This association determines which generic outbound caller ID configurations are available to contact center representatives who are members of the queue. A representative can access definitions associated with any eligible queue that they belong to. Multiple VoiceTelephonyGroupOvride records can reference the same VoiceTelephonyDefinition record. # VoiceTelephonyProfileOvride Represents profile-level telephony settings that override the default org-level configuration. This object is available in API version 68.0 and later. ## Supported Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Special Access Rules To access this object, enable Agentforce Contact Center Admin (Salesforce Voice) permission set. ## Fields | Field | Details | | --- | --- | | ProfileId | Type reference Properties Create, Filter, Group, Nillable, Sort Description Unique ID of the profile assignment to which the telephony configuration override applies. Each profile can have only one override assignment. This field is a relationship field. Relationship Name Profile Refers To Profile | | VoiceTelephonyDefinitionId | Type reference Properties Create, Filter, Group, Sort Description ID of the voice telephony configuration associated with the override. This field is a relationship field. Relationship Name VoiceTelephonyDefinition Relationship Type Master-detail Refers To VoiceTelephonyDefinition (the master object) | # VoiceTelephonyUserOvride Represents user-level telephony settings that override the default org-level configuration. This object is available in API version 68.0 and later. ## Supported Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Special Access Rules To access this object, enable Agentforce Contact Center Admin (Salesforce Voice) permission set. ## Fields | Field | Details | | --- | --- | | UserId | Type reference Properties Create, Filter, Group, Nillable, Sort Description Unique ID of the user to which the telephony configuration override applies. Each user can have only one override assignment. This field is a relationship field. Relationship Name User Refers To User | | VoiceTelephonyDefinitionId | Type reference Properties Create, Filter, Group, Sort Description ID of the voice telephony configuration associated with the override. This field is a relationship field. Relationship Name VoiceTelephonyDefinition Relationship Type Master-detail Refers To VoiceTelephonyDefinition (the master object) | # WebLink Represents a custom button or link. Available in the Tooling APIfrom API version 34.0 or later. ## Supported SOAP Calls getUpdated(), query(), retrieve(), search() ## Supported REST HTTP Methods GET ## Fields | Field Name | Details | | --- | --- | | Description | Type string Properties Filter, Nillable, Sort Description A description of the button or link. | | DisplayType | Type string Properties Filter, Group, Restricted picklist, Sort Description Represents how the button or link is rendered. Valid values are: - link for a hyperlink - button for a button - massActionButton for a button attached to a related list | | EncodingKey | Type string Properties Filter, Sort Description 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) | | EntityDefinition | Type [EntityDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_entitydefinition.htm "Provides row-based access to metadata about standard and custom objects.") Properties Filter, Group, Sort. Description Required. Available in API version 34.0. The entity definition for the object associated with this button or link. | | EntityDefinitionId | Type string Properties Filter, Group, Sort. Description Required. ID of the record associated with the button or link. The record’s object type is in EntityDefinition. | | FullName | Type string Properties Filter, Group, Sort. 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. | | HasMenubar | Type boolean Properties Defaulted on create, Filter, Group, Sort. Description If OpenType is newWindow, this field indicates whether to show the browser menu bar for the popup window (true, or not (false). For other values of OpenType, don't specify a value here. | | HasScrollbars | Type boolean Properties Defaulted on create, Filter, Group, Sort. Description If the value of OpenType is newWindow, this field indicates whether to show the scroll bars for the window (true) or not (false). For other values of OpenType, don’t specify a value here. | | HasToolbar | Type boolean Properties Defaulted on create, Filter, Group, Sort. Description If the value of OpenType is newWindow, this field indicates whether to show the browser toolbar for the window (true) or not (false). For other values of OpenType, don’t specify a value here. | | Height | Type int Properties Filter, Group, Nillable, Sort. Description Required if the value of OpenType is newWindow. Height in pixels of the window opened by the button or link. For other values of OpenType, don’t specify a value here. | | IsResizable | Type boolean Properties Defaulted on create, Filter, Group, Sort. Description If the value of OpenType is newWindow, this field indicates whether to allow resizing of the window (true) or not (false). For other values of OpenType, don’t specify a value here. | | LinkType | Type WebLinkType enumerated list Properties Filter, Group, Restricted picklist, Sort Description Required. Represents whether the content of the button or link is specified by a URL, an sControl, a JavaScript code block, or a Visualforce page. - url - sControl - javascript - page - flow—Reserved for future use. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Nillable, Sort, Update Description Master label for this object. This display value is the internal label that is not translated. Limit: 240 characters. | | Metadata | Type mns:WebLink Properties Filter, Group, idLookup, Sort Description The metadata for this object as defined in the 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. | | Name | Type string Properties Filter, Group, idLookup, Sort Description Required. Name to display on the page. | | NamespacePrefix | Type string Properties Filter, Group, 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 the following values: - In Developer Edition organizations, the namespace prefix is set to the namespace prefix of the organization for all objects that support it. There is 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 are not Developer Edition organizations, NamespacePrefix is only set for objects that are part of an installed managed package. There is no namespace prefix for all other objects. | | OpenType | Type WebLinkWindowType enumerated list Properties Filter, Group, Sort Description The window style used to display the content. Valid values are: - newWindow - sidebar - noSidebar - replace - onClickJavaScript | | Position | Type WebLinkPosition enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description If the value of OpenType is newWindow, this field indicates how the new window should be displayed. Otherwise, don’t specify a value. Valid values are: - fullScreen - none - topLeft | | RequireRowSelection | Type boolean Properties Defaulted on create, Filter, Group, Sort Description If the value of OpenType is massAction, this field indicates whether to require individual row selection to execute the action for this button (true) or not (false). Otherwise, leave this field empty. | | Scontrol | Type string Properties Filter, Group, Sort Description If the value of LinkType is sControl, this field represents the name of the sControl. Otherwise, leave this field empty. | | ShowsLocation | Type boolean Properties Filter, Group, Sort Description If the value of OpenType is newWindow, this field indicates whether to show the browser location bar for the window (true) or not (false). Otherwise, leave this field empty. | | ShowsStatus | Type boolean Properties Filter, Group, Sort Description If the value of OpenType is newWindow, show the browser status bar for the window (true. Otherwise, don’t specify a value. | | Url | Type string Properties Filter, Group, Nillable, Sort Description Required. Represents the URL of the page to link to. Can include fields as tokens within the URL. Limit: 1,024 KB. If the value of LinkType is url, this field represents the URL value. If the value of LinkType is javascript, this field represents the JavaScript content. For other values of LinkType, leave this field empty. Content must be escaped in a manner consistent with XML parsing rules. | | Width | Type int Properties Filter, Group, Nillable, Sort Description The width in pixels of the window opened by the button or link. Required if the value of OpenType is newWindow. Otherwise, leave this field empty. | # WebStoreTemplate Represents a configuration for creating commerce stores. This object is available in API version 49.0 and later. ## Supported SOAP API Calls create(), delete(), describeSObjects(), query(), retrieve() ## Supported REST API Methods DELETE, GET, HEAD, POST, Query ## Special Access Rules A B2B Commerce or D2C Commerce license and access to Commerce objects is required. ## Fields | Field | Details | | --- | --- | | CheckoutTimeToLive | Type int Properties Filter, Group, Nillable, Sort Description Amount of time in minutes that a checkout stays active and doesn’t expire. If you use a Null value, your checkout never expires. If you use a 0 value, checkout is disabled. This field is available in API version 50.0 and later. | | CheckoutValidAfterDate | Type dateTime Properties Filter, Nillable, Sort Description A timestamp in the default server timezone (GMT). All checkouts that start before this date are considered expired. A Null value means that all checkouts are valid. Example format: 2020-07-14T14:27:00.000Z. This field is available in API version 50.0 and later. | | Country | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description Two-digit ISO code of the store's country. Purchases can be shipped only to the country assigned to the store. Valid for only D2C stores. This field is available in API version 56.0 and later. | | DefaultCurrency | Type string Properties Filter, Group, Sort Description The template’s default currency setting for new records. | | DefaultLanguage | Type string Properties Filter, Group, Sort Description Required. The template’s default language setting for new records. | | DefaultTaxLocaleType | Type picklist Properties Filter, Group, Restricted picklist, Sort Description Required. The template’s default tax type for your webstore. Possible values include: - Gross - Net This field is available in API version 55.0 and later. | | Description | Type textarea Properties Nillable Description The description of the template. | | DeveloperName | Type string Properties Filter, Group, Sort Description Required. 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 organization. Label is **Record Type Name**. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated WebStoreTemplate in Metadata API. The full name can include a namespaceprefix. 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. | | GuestCartTimeToLive | Type int Properties Filter, Group, Nillable, Sort Description The time that a guest cart is to remain valid before it expires. The default value is 168 hours (7 days), and the maximum value is 720 hours (30 days). This field is available in API version 52.0 and later. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Restricted picklist, Sort Description The language of the WebStoreTemplate. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | MasterLabel | Type string Properties Filter, Group, Sort Description Label for the WebStoreTemplate. | | MaxValuesPerFacet | Type int Properties Filter, Group, Nillable, Sort Description Maximum number of values that can be added to a facet. | | Metadata | Type [WebStoreTemplate](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_meta.meta/api_meta/meta_webstoretemplate.htm) Properties Create, Nillable, Update Description The metadata for the WebStoreTemplate. | | NamespacePrefix | Type string 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 the following values: - In Developer Edition organizations, the namespace prefix is set to the namespace prefix of the organization for all objects that support it. There is 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 are not Developer Edition organizations, NamespacePrefix is only set for objects that are part of an installed managed package. There is no namespace prefix for all other objects. | | OptionsAutoFacetingEnabled | Type boolean Properties Filter Description If enabled (True), the most relevant search facets are automatically returned, in addition to the configured search facets, in the product search results. If disabled (False), only the configured search facets are returned. The default is False. See [Add Product Search Filters (Facets)](https://help.salesforce.com/s/articleView?id=commerce.comm_search_add_filters.htm&type=5&language=en_US) for more information. This field is available in API version 50.0 or later. | | OptionsCartAsyncProcessingEnabled | Type boolean Properties Filter Description Indicates whether add-to-cart requests are processed asynchronously (True) or not (False). The default value is True. This field is available in API version 59.0 or later. | | OptionsCartCalculateEnabled | Type boolean Properties Filter Description Indicates whether the cart calculate extension is enabled (True) or not (False). The default value is False. This field is available in API version 59.0 or later. | | OptionsCartToOrderAutoCustomFieldMapping | Type boolean Properties Filter Description Indicates whether custom field mapping for cart and order objects is enabled (True) or not (False). The default value is True. This field is available in API version 57.0 or later. | | OptionsCommerceEinsteinActivitiesTracked | Type boolean Properties Filter Description Indicates whether Commerce Einstein activities tracking is enabled (true) or not (false). | | OptionsCommerceEinsteinDeployed | Type boolean Properties Filter Description Indicates whether Commerce Einstein is deployed (true) or not (false). | | OptionsDuplicateCartItemsEnabled | Type boolean Properties Filter Description Indicates whether a cart can include multiple items with the same product ID (True) or not (False). The default value is False. This field is available in API version 59.0 or later. | | OptionsGuestBrowsingEnabled | Type boolean Properties Filter Description Indicates whether guest browsing is enabled for this store. Set the option to True to allow guest buyers access to products in the store. | | OptionsGuestCartEnabled | Type boolean Properties Filter Description Required. Indicates whether guest cart access is enabled for a store created with an LWR template. Set the option to True to allow guest buyers access to products in the store. This field is available in API version 58.0 and later. | | OptionsGuestCheckoutEnabled | Type boolean Properties Filter Description Required. Indicates whether guest checkout access is enabled for a store created with an LWR template. Set the option to True to allow guest buyers access to products in the store. This field is available in API version 58.0 and later. | | OptionsPreserveGuestCartEnabled | Type boolean Properties Filter Description Required. Indicates whether cart contents are preserved when a guest logs in to the store. Set the option to True to preserve guest carts. This field is available in API version 60.0 and later. | | OptionsSkipAdditionalEntitlementCheckForSearch | Type boolean Properties Filter Description By default, user entitlement checks are run as part of a search index rebuild and again when product search results are returned. Skips the second check to promote faster search performance. Set the option to True to skip additional entitlement checks on a search. This field is available in API version 52.0 and later. | | OptionsSkuDetectionEnabled | Type boolean Properties Filter Description Indicates whether SKU detection is enabled (true) or not (false). | | OptionsSplitShipmentEnabled | Type boolean Properties Filter Description Required. Indicates whether split shipments are enabled (true) or not (false). | | OrderActivationStatus | Type string Properties Filter, Group, Nillable, Sort Description Status of the order. Possible values include: - Activated - Draft | | OrderLifeCycleType | Type picklist Properties Filter, Group, Nillable, Restricted picklist, Sort Description The order life cycle type. Possible values include: - MANAGED - UNMANAGED | | PaginationSize | Type int Properties Filter, Group, Nillable, Sort Description Number of results displayed per search results page. | | PricingStrategy | Type picklist Properties Defaulted on create, Filter, Group, Restricted picklist, Sort Description Required. The price selected to display to buyers. Possible values include: - LowestPrice - Priority The default value is LowestPrice. | | ProductGrouping | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description Determines whether product variations are listed individually in search results or are represented by the parent product, which links to its children. Possible values are: - NoGrouping—Variations are listed individually in search results. - VariationParent—The parent product is returned in search results with a link to its children. The default value is VariationParent. This field is available in API version 52.0 and later. | | SupportedCurrencies | Type textarea Properties Description Currencies supported for store template. | | SupportedLanguages | Type textarea Properties Description Required. Languages supported for store template. | | SupportedShipToCountries | Type textarea Properties Nillable Description Countries that a store created from the template can ship to. | | Type | Type picklist Properties Defaulted on create, Filter, Group, Restricted picklist, Sort Description Required. Possible values are: - B2B - B2C - B2CE - OMS The default value is B2B. | # When to Use Tooling API Use Tooling API when you need fine-grained access to an org’s metadata. Tooling API’s SOQL capabilities for many metadata types allow you to retrieve smaller pieces of metadata. Smaller retrieves improve performance, which makes Tooling API a better fit for developing interactive applications. Because Tooling API allows you to change just one element within a complex type, it can be easier to use than Metadata API. Other use cases include: - Source control integration - Continuous integration - Apex classes or trigger deployment Some of the specific tasks you can accomplish using the Tooling API: - **Retrieve metadata about an object’s field**: Use [FieldDefinition](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_fielddefinition.htm). - **Retrieve custom or standard object properties**: Use [EntityDefinition](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_entitydefinition.htm). - **Manage working copies of Apex classes and triggers and Visualforce pages and components.**: Use [ApexClassMember](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexclassmember.htm), [ApexTriggerMember](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apextriggermember.htm), [ApexPageMember](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexpagemember.htm), [ApexComponentMember](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexcomponentmember.htm), and [MetadataContainer](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_metadatacontainer.htm) . - **Manage working copies of static resource files.**: Use [StaticResource](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_staticresource.htm). - **Check for updates and errors in working copies of Apex classes and triggers and Visualforce pages and components.**: [ContainerAsyncRequest](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_containerasyncrequest.htm) - **Commit changes to your organization.**: Use [ContainerAsyncRequest](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_containerasyncrequest.htm). - **Set heap dump markers.**: Use [ApexExecutionOverlayAction](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexexecutionoverlayaction.htm) - **Overlay Apex code or SOQL statements on an Apex execution.**: Use [ApexExecutionOverlayAction](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexexecutionoverlayaction.htm). - **Execute anonymous Apex.**: For sample code, see [SOAP Calls](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_soap_overview.htm) and [REST Overview](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_rest_overview.htm "Use REST if you’re using a language that isn’t strongly typed, like JavaScript."). - **Generate log files for yourself or for other users.**: Set checkpoints with [TraceFlag](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_traceflag.htm) - **Access debug log and heap dump files.**: Use [ApexLog](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexlog.htm) and [ApexExecutionOverlayResult](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexexecutionoverlayresult.htm). - **Manage custom fields on custom objects.**: Use [CustomField](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_customfield.htm). - **Access code coverage results.**: Use [ApexCodeCoverage](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexcodecoverage.htm), [ApexOrgWideCoverage](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexorgwidecoverage.htm), and [ApexCodeCoverageAggregate](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apexcodecoverageaggregate.htm). - **Execute tests, and manage test results.**: Use [ApexTestQueueItem](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apextestqueueitem.htm) and [ApexTestResult](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_apextestresult.htm). - **Manage validation rules and workflow rules.**: Use [ValidationRule](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_validationrule.htm) and [WorkflowRule](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_workflowrule.htm). #### See Also - [REST Overview](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_rest_overview.htm "Use REST if you’re using a language that isn’t strongly typed, like JavaScript.") - [SOAP Calls](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/intro_soap_overview.htm) # WorkflowAlert Represents a workflow alert. A workflow alert is an email generated by a workflow rule or approval process and sent to designated recipients. This object is available in API version 32.0 and later. ## Supported SOAP Calls create(), delete(), query(), retrieve(), search(), update(), upsert() ## Supported REST HTTP Methods DELETE, GET, PATCH, POST ## Fields | Field | Details | | --- | --- | | CcEmails | Type string Properties Filter, Nillable, Sort Description Additional CC email addresses. | | Description | Type string Properties Filter, Group, idLookup, Sort Description A description of the workflow alert. | | DeveloperName | Type string Properties Filter, Group, Sort Description The unique name of the workflow alert in the API. | | EntityDefinition | Type [EntityDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_entitydefinition.htm "Provides row-based access to metadata about standard and custom objects.") Properties Filter, Group, Sort. Description Required. Available in version 34.0. The entity definition for the object associated with this WebLink. | | EntityDefinitionId | Type string Properties Filter, Group, Sort Description The ID of the entity containing the alert. | | FullName | Type string 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. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | Metadata | Type mns:WorkflowAlert Properties Create, Nillable, Update Description Alert definition metadata. 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 Properties Filter, Group, Sort Description The namespace of the package to uniquely identify the workflow alert. | | SenderType | Type ActionEmailSenderType enumerated list Properties Defaulted on create, Filter, Group, Restricted picklist, Sort Description The type of sender. Values are: - CurrentUser - OrgWideEmailAddress - DefaultWorkflowUser | | TemplateId | Type ID Properties Filter, Group, Sort Description A reference to an email template. | # WorkflowFieldUpdate Represents a workflow field update. This object is available in API version 32.0 and later. ## Supported SOAP Calls create(), delete(), query(), retrieve(), search(), update(), upsert() ## Supported REST HTTP Methods DELETE, GET, PATCH, POST ## Fields | Field | Details | | --- | --- | | EntityDefinition | Type [EntityDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_entitydefinition.htm "Provides row-based access to metadata about standard and custom objects.") Properties Filter, Group, Sort. Description Required. Available in API version 34.0. The entity definition for the object associated with this workflow field update. | | EntityDefinitionId | Type string Properties Filter, Group, Sort Description The ID of the entity containing the workflow field update. | | FieldDefinition | Type [FieldDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_fielddefinition.htm "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.") Properties Filter, Group, Sort Description Required. The definition of this field. | | FieldDefinitionId | Type string Properties Filter, Group, Sort Description The ID of the field for the workflow field update. | | FullName | Type string 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. | | LiteralValue | Type string Properties Filter, Group, Nillable, Sort Description If the update uses a literal value, this is that value. | | LookupValueId | Type ID Properties Filter, Group, Nillable, Sort Description If the update looks up a value, this lookup value is referenced. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | Metadata | Type mns:WorkflowFieldUpdate Properties Create, Nillable, Update Description The workflow field update metadata. 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. | | Name | Type string Properties Filter, Group, idLookup, Sort Description The name of the workflow field update. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The namespace of the package containing the workflow field update object. | | SourceTableEnumOrId | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The enum (for example, Account) or ID of the object this workflow field update is on. | # WorkflowOutboundMessage Represents an 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. This object is available in API version 32.0 and later. ## Supported SOAP Calls create(), delete(), query(), retrieve(), search(), update(), upsert() ## Supported REST HTTP Methods DELETE, GET, PATCH, POST ## Fields | Field | Details | | --- | --- | | ApiVersion | Type double Properties Filter, Sort Description The API version is automatically generated and set to the current API version when the outbound message was created. | | EntityDefinition | Type [EntityDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_entitydefinition.htm "Provides row-based access to metadata about standard and custom objects.") Properties Filter, Group, Sort. Description Required. Available in version 34.0. The entity definition for the object associated with this WebLink. | | EntityDefinitionId | Type string Properties Filter, Group, Sort Description The ID of the entity containing the outbound message. | | FullName | Type string 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. | | IntegrationUserId | Type ID Properties Filter, Group, Sort Description The ID of the user under which this message is sent. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | Metadata | Type mns:WorkflowOutboundMessage Properties Create, Nillable, Update Description Outbound message definition metadata. 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. | | Name | Type string Properties Filter, Group, idLookup, Sort Description The name of the outbound message. | | NamespacePrefix | Type string Properties Filter, Group, Nillable, Sort Description The namespace of the package containing the outbound message. | # WorkflowRule Represents a workflow rule that is used to fire off a specific workflow action when the specified criteria is met. Includes access to the associated WorkflowRule object in Salesforce Metadata API. Available from API version 30.0 or later. ## Supported SOAP Calls create(), delete(), query(), retrieve(), search(), update(), upsert() ## Supported REST HTTP Methods Query, DELETE, GET, PATCH, POST ## Fields | Field Name | Details | | --- | --- | | FullName | Type string 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. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | Metadata | Type mns:WorkflowRule Properties Create, Nillable, Update Description Workflow rule metadata. 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. | | Name | Type string Properties Filter, Group, Sort Description The enum name or ID of entity this rule is associated with. | | NamespacePrefix | Type string Properties Filter, Group, idLookup, Sort Description The namespace of the package containing the workflow rule object. | | TableEnumOrId | Type picklist Properties Filter, Group, Restricted picklist, Sort Description The enum (for example, Account) or ID of the object for this workflow rule. | # WorkflowTask Represents a workflow task that is used to fire off a specific workflow action when the specified criteria is met. Includes access to the associated WorkflowRule object in Salesforce Metadata API. Available from API version 32.0 or later. ## Supported SOAP Calls create(), delete(), query(), retrieve(), search(), update(), upsert() ## Supported REST HTTP Methods Query, DELETE, GET, PATCH, POST ## Fields | Field Name | Details | | --- | --- | | EntityDefinition | Type [EntityDefinition](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_entitydefinition.htm "Provides row-based access to metadata about standard and custom objects.") Properties Filter, Group, Sort. Description Required. The entity definition for the object associated with the validation rule. | | EntityDefinitionId | Type string Properties Filter, Group, Sort Description The ID of the entity containing the workflow task. | | FullName | Type string 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. | | ManageableState | Type ManageableState enumerated list Properties Filter, Group, Nillable, Restricted picklist, Sort Description Indicates the manageable state of the specified component that is contained in a package: - beta - deleted - deprecated - deprecatedEditable - installed - installedEditable - released - unmanaged | | Metadata | Type mns:WorkflowTask Properties Create, Nillable, Update Description Workflow task metadata. 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 Properties Filter, Group, Nillable, Sort Description The namespace of the package containing the workflow task object. | | Priority | Type picklist Properties Filter, Group, Sort Description The task’s priority. Values are: - High - Normal - Low | | Status | Type picklist Properties Filter, Group, Sort Description The task’s status. Values are: - Not Started - In Progress - Completed - Waiting on someone else - Deferred | | Subject | Type string Properties Filter, Group, idLookup, Sort Description A subject for the workflow task. It is used if an email notification is sent when the task is assigned. | # WorkSkillRouting Represents a setup object that stores a set of WorkSkillRoutingAttribute objects used to route a work item to an agent who has the skills necessary to take the work. Available in API version 46.0 and later. ## Supported SOAP Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods DELETE, GET, PATCH, POST ## Limitations [SOQL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_soql_limits.htm "Some Tooling API objects have SOQL limitations. These limitations apply to any Metadata Catalog query, which applies to all Custom Metadata Types and Metadata Catalog entities, not only the ones explicitly listed.") [SOSL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_sosl_limits.htm "Two Tooling API objects, EntityDefinition and FieldDefinition, have some SOSL limitations. ExternalString and MetadataComponentDependency (Beta) don’t support SOSL searches.") ## Fields | Field | Details | | --- | --- | | DeveloperName | Type string Properties Filter, Group, Sort Description The developer name for the WorkSkillRouting. ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/images/icon_note.png) #### Note Only users with View DeveloperName OR View Setup and Configuration permission can view, group, sort, and filter this field. | | FullName | Type string Properties Create, Group, Nillable Description The full name of the associated metadata type in Metadata API. | | IsActive | Type boolean Properties Defaulted on create, Filter, Group, Sort Description Indicates whether assignment rules are active and can be evaluated. | | Language | Type picklist Properties Defaulted on create, Filter, Group, Nillable, Restricted picklist, Sort Description The language in the user’s personal settings. | | MasterLabel | Type string Properties Filter, Group, Sort Description Master label for this object. This display value is the internal label that is not translated. | | Metadata | Type mns:WorkSkillRouting Properties Create, Nillable, Update Description The associated metadata type in Metadata API. | | RelatedEntity | Type picklist Properties Filter, Group, Restricted picklist, Sort, Unique Description Type of Salesforce object that the attributes are associated with. | # WorkSkillRoutingAttribute Represents a setup object that stores metadata related to the routing assignments between object field values and skills. Field values are used to route a work item to an agent who has the skills necessary to take the work. Available in API version 46.0 and later. ## Supported SOAP Calls create(), delete(), describeSObjects(), query(), retrieve(), update(), upsert() ## Supported REST HTTP Methods DELETE, GET, PATCH, POST ## Limitations [SOQL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_soql_limits.htm "Some Tooling API objects have SOQL limitations. These limitations apply to any Metadata Catalog query, which applies to all Custom Metadata Types and Metadata Catalog entities, not only the ones explicitly listed.") [SOSL Limitations](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/reference_objects_sosl_limits.htm "Two Tooling API objects, EntityDefinition and FieldDefinition, have some SOSL limitations. ExternalString and MetadataComponentDependency (Beta) don’t support SOSL searches.") ## Fields | Field | Details | | --- | --- | | Field | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The field corresponding to the field values that the skill is mapped to. Skills-Based Routing Rules support fields of type picklist, lookup, and checkbox. For example, Case Reason, Case Type, and Escalated. To see the complete list of valid values representing supported fields, see the Tooling API WSDL. | | IsAdditionalSkill | Type boolean Properties Create, Defaulted on create, Filter, Group, Sort, Update Description In skills-based routing, you can set some skills to additional. After a designated timeout period, a skill marked as additional is dropped from Omni-Channel routing. The case is then routed to the best-matched agent, even if the agent doesn’t have all the skills. | | RelatedEntity | Type picklist Properties Create, Filter, Group, Restricted picklist, Sort, Update Description The type of object being routed. Valid values are: - Case - ContactRequest - Lead - Order - SocialPost - Custom | | SkillLevel | Type double Properties Create, Defaulted on create, Filter, Nillable, Sort, Update Description Level of the skill required. This value can range from 0 to 10. | | SkillPriority | Type int Properties Create, Filter, Group, Nillable, Sort, Update Description For additional skills, specify the order in which a skill is dropped if after the Drop Additional Skills Timeout on the routing configuration, no agent with that skill is available. Skills with a lower priority rank (9 or 10) are dropped first. Skills with a higher priority rank (0 or 1) are dropped last. Skills with the same priority value are dropped as a group. You can set skill priority using skills-based routing rules or Apex code. Available in API version 49.0 and later. | | Value | Type string Properties Create, Filter, Group, Nillable, Sort, Update Description The field value that is mapped to the selected skill. | | WorkSkillRoutingId | Type reference Properties Create, Filter, Group, Sort Description The ID of the [WorkSkillRouting](https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_workskillrouting.htm "Represents a setup object that stores a set of WorkSkillRoutingAttribute objects used to route a work item to an agent who has the skills necessary to take the work. Available in API version 46.0 and later.") object with which this field value is associated. |