An identifier to reference this object in the catalog. When a new CatalogObject
is inserted, the client should set the id to a temporary identifier starting with
a "#" character. Other objects being inserted or updated within the same request
may use this identifier to refer to the new object.
When the server receives the new object, it will supply a unique identifier that
replaces the temporary identifier for all future references.
If the CatalogCustomAttributeDefinition object is
defined by another application, the CatalogCustomAttributeDefinition's key attribute value is prefixed by
the defining application ID. For example, if the CatalogCustomAttributeDefinition has a key attribute of
"cocoabrand" and the defining application ID is "abcd1234", the key in the map is "abcd1234:cocoabrand" if the
application making the request is different from the application defining the custom attribute definition.
Otherwise, the key used in the map is simply "cocoa-brand".
Application-defined custom attributes that are set at a global (location-independent) level.
Custom attribute values are intended to store additional information about a catalog object
or associations with an entity in another system. Do not use custom attributes
to store any sensitive information (personally identifiable information, card details, etc.).
The Connect v1 IDs for this object at each location where it is present, where they
differ from the object's Connect V2 ID. The field will only be present for objects that
have been created or modified by legacy APIs.
If true, this object is present at all locations (including future locations), except where specified in
the absent_at_location_ids field. If false, this object is not present at any locations (including future locations),
except where specified in the present_at_location_ids field. If not specified, defaults to true.