Extension Fields
Summary
An extension field is a key-value pair, where the key is a string, and the value is a string or list of strings.
Extension fields are used to hold values that do not have an explicit representation in the SyncHive schema.
Data Definitions
Data Type | Field Name | Rules | About |
---|---|---|---|
AttributeField | attributeField | Zero to Many | Refer to: Atttribute Field |
ExtensionField | extendedBy | Zero to Many | Refer to: Extension Field |
ExternalID | externalIdentity | Zero to Many | Refer to: External ID |
String | key | Exactly One | the key for the extension field |
RecordedByUser | recordedBy | Zero to Many | Refer to: Recorded By User |
String | sourceSystemCode | Zero or One | Refer to: Source System |
String | sourceSystemID | Zero or One | Refer to: Source System |
String | uniqueText | Exactly One | A unique primary key for the item assigned by SyncHive. |
String | value | Zero to Many | the value for the extension field |
Sample JSON
An example product with 3 extension fields capturing information about the product that is not explicitly represented in the SyncHive schema:
{
"@type": "Product",
"externalIdentity": [
{
"@type": "ExternalID",
"internalType": "Product",
"externalSystemCode": "Config1",
"externalId": "DEV-10002282"
}
],
"extendedBy": [
{
"@type": "ExtensionField",
"key": "SmartPartNumber",
"value": [
"DEV-10002282_2"
],
"uniqueText": "7c48852f-7371-46a1-b49d-5d6a870e071c"
},
{
"@type": "ExtensionField",
"key": "inventoryType",
"value": [
"2"
],
"uniqueText": "17f27f97-6fa9-49d6-9a66-0f4506ca5876"
},
{
"@type": "ExtensionField",
"key": "additionalDistributionChannel",
"value": [
"99"
],
"uniqueText": "66621d84-57cc-41bd-b1b6-c4c07b0358f4"
}
],
...
}