Customizations & Extensibility
Custom Attributes
Tulip provides a mechanism for extending Tulip business data objects to reflect client-side specifics through custom attributes (or custom fields). These are are general-purpose extensions to objects in the Tulip data model. They consist of two parts: attributes and attribute values, and are used to construct key-value pairs that can be attached to clients' business data records on the Tulip platform.
Tip: Custom attribute keys can hold localized data; make sure you specify the type of such data as string.
Using attributes involves these steps:
Create the keys of a new key/value pair to make that attribute available for a particular resource.
This is done byPOST
ing an attribute to its.../{resource}Attribute
endpoint.
TheexternalId
field of an Attribute is the string that will be used as the key in the key/value pair.Attach attribute values to the required record using that resource’s
attributeValues
field.
TheattributeId
field of an Attribute Value is a foreign key to the attribute that we created (representing the key of that key/value pair), and thevalue
field represents the value of that key/value pair.
Attribute values can be localized by specifying a Language ID in itslanguageId
field. See more on localized data.
Attributes in Bulk API targets:
- Attributes are not absolutely necessary for bulk data loading using the API service and should be deemed as a mechanism of additional information for the purpose of future usage. The details of synching custom fields will depend on specific customization requirements provided by clients; these are usually agreed upon in advance.
- Tulip mobile application features are built to operate on the core schema only, and attributes may not surface in apps automatically.
- If these additional Attributes are necessary on each record, then they must be created first before Category records are themselves created.