Skip to content

Most MDL commands follow the general syntax shown below:

COMMAND Componenttypename component_name ( attribute_name(attribute_value), attribute_name(attribute_value), Subcomponenttypename subcomponent_name ( attribute_name(attribute_value), attribute_name(attribute_value) ) );

The following elements are used to build most types of MDL commands:

ElementDescriptionExample
Component Type NameThe name of the MDL component type. It is expressed as a string starting with an uppercase letter followed by lowercase letters.Picklist
Component NameThe name of the MDL component. An MDL component is an instance of a component type. It is expressed as a snake_case string that ends with the applicable Veeva namespace. Component names can represent a hierarchy using dot-notation. For example, my_baseobject__c.my_objecttype__c. In this example, my_objecttype__c is a child component of my_baseobject__c.color__c
Subcomponent Type NameThe name of the subcomponent type, defined within the context of the component type. Subcomponents only exist within the parent component and cannot stand alone.Picklistentry
Subcomponent NameThe name of the subcomponent. A subcomponent is an instance of a subcomponent type. A subcomponent name can represent a hierarchy using dot-notation. For example, my_object__c.my_field__cred__c
Attribute NameThe name of the attribute of the component or a subcomponent. It is expressed as a lowercase, snake_case string. For example, a Docfield component has a max_length attribute.label
Attribute ValueThe value which is set on to an attribute. The value is expressed depending on the type accepted by the attribute metadata. For example, attributes of type Number are expressed as my_number_attribute(5), while attributes of type Boolean are expressed as my_bool_attribute(true). See Attribute Data Types for more information.'Color'

Upon failure, Vault returns detailed error messages.

Not all component types support all commands. See the Component Support Matrix for details.