DC 5.6 Metadata

This section describes how to set metadata on assets. Setting any data in Digizuite is done using the BatchUpdate endpoint.

BatchUpdate is an endpoint that always takes the following parameters:

NameDescription
updateXMLA xml object that describes what should be updated
valuesA Json object that has the values of what should be updated
accessKeyThe accessKey that grants access

UpdateXML

The updateXML is a XML object that refers to what should be updated (i.e. metadata, configuration, security etc.) and which fields. An example looks like this:

<r>
	<asset fieldId="MetaDataUpdate">
		<metafield fieldId="MetaFieldLabelid_50727" labelId="50727"/>
	</asset>
</r>
  • The first <r> tag always encapsulated everything and has to be there.
  • The <asset> tag refers to what should be updated.
  • The <metafield> tag refers to which field should be updated.
  • The fieldIds which are used in the values JSON to match fields and values
  • The labelId refers to the metafield labelId (language versioned metafield id) - basically which field should be updated.

Values

The values JSON object contains all the values of what should be updated. An example looks like this:

[{
	"Id": "MetaDataUpdate",
	"FieldId": "MetaDataUpdate",
	"ContainerType": 7,
	"RowId": 1,
	"Values": [{
		"FieldId": "MetaFieldLabelid_50727",
		"Type": 1,
		"Values": ["test"]
	}],
	"ItemIds": ["10585"]
}]
  • The Id refers to what xml container should be used to (i.e. see <asset> tag in updateXML example)
  • The FieldId is the same as ID. It is there for backwards compatibility
  • ContainerType defines the type of the values
  • RowId is only used for iterative metadata, which is a special type of metadata that contains multiple rows (e.g. comments on a video). For any other metadata type this should ALWAYS be 1.
  • Values contain the actual values
    • FieldId refers to the inner xml tag that also has a fieldid (i.e. see <metafield> tag in updateXML example)
    • Type refers to the datatype of the value. See appendix for datatypes
    • Values contains the actual values that has to be set. This is different as per datatype.
  • ItemIds refers to the itemid of the item on which the data should be set.