Print this page

Spring 15 - Tooling API changes

Knowledge Article Number 000206845
Use the Tooling API to build custom development tools for Salesforce applications.
Changes in Tooling API version 33.0 include the following new features:
Metadata namespaceIn previous versions of the SOAP Tooling API, metadata type elements were defined in the same namespace as the sObjects of the API, In order to uniquely name these types, the suffix “Metadata” was appended to the metadata types. In this version of the API, a new namespace is introduced,, and the suffix is no longer used. The old names will continue to work with clients against older API endpoints.
SOSL supportThe Tooling API adds SOSL (Salesforce Object Search Language) support.
Changes in Tooling API version 33.0 include the following new objects:
AutoResponseRuleThere are new AutoResponseRule and AssignmentRule objects in the mns namespace. The earlier AutoResponseRule and AssignmentRule objects are still available in the tns namespace.
BusinessProcessRepresents the metadata for a business process.
CustomFieldMemberRepresents the metadata for a custom field member.
CustomTabRepresents the metadata for a custom tab.
FieldSetRepresents the metadata for a group of fields.
RecentlyViewedRepresents records that the current user has recently viewed or referenced by viewing a related record.
Tooling API version 33.0 includes the following field changes. All fields are new unless otherwise noted.
ApexTriggerApiVersion—The API version for this trigger. Every trigger has an API version specified at creation.

Body—The Apex trigger definition. Limit: 1 million characters.

BodyCrc—The CRC (cyclic redundancy check) of the class or trigger file.

EntityDefinition—The EntityDefinition object associated with this object.

EntityDefinitionId—The Id of the EntityDefinition object associated with this object.

IsValid—Indicates whether any dependent metadata has changed since the trigger was last compiled (true) or not (false).

LengthWithoutComments—Length of the trigger without comments.

Metadata—The trigger metadata.

Status—The current 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 is useful for managed packages, because it allows a class to be deleted when a managed package is updated.

Inactive is not valid for ApexClass. For more information, see Metadata API Developer's Guide.

UsageAfterDelete—Specifies whether the trigger is an after delete trigger (true) or not (false).

UsageAfterInsert—Specifies whether the trigger is an after insert trigger (true) or not (false).

UsageAfterUndelete—Specifies whether the trigger is an after undelete trigger (true) or not (false).

UsageAfterUpdate—Specifies whether the trigger is an after update trigger (true) or not (false).

UsageBeforeDelete—Specifies whether the trigger is an before delete trigger (true) or not (false).

UsageBeforeInsert—Specifies whether the trigger is an before insert trigger (true) or not (false).

UsageBeforeUpdate—Specifies whether the trigger is an before update trigger (true) or not (false).

UsageIsBulk—Specifies whether the trigger is defined as a bulk trigger (true) or not (false).

This field is not used for Apex triggers saved using Salesforce API version 10.0 or higher: all triggers starting with that version are automatically considered bulk, and this field will always return true.

EntityDefintionFieldSets—Any field sets associated with the entity.

Fields—Any fields associated with the entity.

IsCreatable—Specifies whether you can create the object (true) or not (false).

IsDeletable—Specifies whether you can delete the object (true) or not (false).

IsQueryable—Specifies whether the object can be queried (true) or not (false).

KeyPrefix—The first three digits of the entity’s ID, which identify the object type (account, opportunity, etc).

FieldDefinitionDataType—The data type of the field.
LayoutEntityDefinition—The EntityDefinition object associated with this object.

EntityDefinitionId—The Id of the EntityDefinition object associated with this object.

RecordTypeBusinessProcessId—ID of an associated BusinessProcess.

IsActive—Indicates whether this record is active (true) or not (false). Only active record types can be applied to records.

UserFirstName—The user’s first name.

LastName—The user’s last name.

Name—Concatenation of FirstName and LastName. Limited to 121 characters.

WorkflowAlert, WorkflowOutboundMessage, and WorkflowTaskRemoved the TableEnumOrId field.

For details, see the Tooling API Developer’s Guide.

promote demote