Schema Changes - 2025-09-09
This document contains the changes to the schema files compared to the main branch.
Changes
diff --git a/schema/Api/CustomerBroker/CreateCustomerRequest.json b/schema/Api/CustomerBroker/CreateCustomerRequest.json
index c330907..266ac8e 100644
--- a/schema/Api/CustomerBroker/CreateCustomerRequest.json
+++ b/schema/Api/CustomerBroker/CreateCustomerRequest.json
@@ -10,42 +10,47 @@
"type": "string",
"minLength": 1
},
- "brokerScopes": { "type": ["array", "null"], "items": {"type": "string"} },
+ "billingEntities": {
+ "type": ["array", "null"],
+ "items": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "id" : { "type": ["string", "null"] },
+ "xmlSenderId" : { "type": ["string", "null"] },
+ "isDefaultForCustomer": { "type": ["boolean", "null"] }
+ },
+ "required": ["id", "xmlSenderId", "isDefaultForCustomer"]
+ }
+ },
+ "brokerScopes": { "type": "array", "items": {"type": "string"} },
"contactAddress": {
"type": ["object", "null"],
"additionalProperties": false,
"properties": {
"address1": {
"description": "Required if contactAddress is present. Address line 1. Must not be empty.",
- "type": "string",
- "minLength": 1
+ "type": ["string", "null"]
},
"address2": { "description": "Optional. Address line 2.", "type": ["string", "null"] },
"address3": { "description": "Optional. Address line 3.", "type": ["string", "null"] },
"city": {
"description": "Required if contactAddress is present. City. Must not be empty.",
- "type": "string",
- "minLength": 1
+ "type": ["string", "null"]
},
"company": { "description": "Optional. Company name.", "type": ["string", "null"] },
"country": {
"description": "Required if contactAddress is present. Country. Must not be empty.",
- "type": "string",
- "minLength": 1
+ "type": ["string", "null"]
},
"faxNumber": { "description": "Optional. Fax number.", "type": ["string", "null"] },
"name": { "description": "Optional. Contact name.", "type": ["string", "null"] },
"phoneNumber": { "description": "Optional. Phone number.", "type": ["string", "null"] },
"postalCode": {
"description": "Required if contactAddress is present. Postal code. Must not be empty.",
- "type": "string",
- "minLength": 1
+ "type": ["string", "null"]
},
- "stateProvince": {
- "description": "Required. State or province.",
- "type": "string",
- "minLength": 1
- }
+ "stateProvince": { "description": "Required. State or province.", "type": ["string", "null"] }
},
"required": ["address1", "city", "country", "postalCode", "stateProvince"]
},
@@ -60,13 +65,13 @@
},
"emailNotificationSubscriptions": {
"description": "Optional. List of email notification subscriptions.",
- "type": ["array", "null"],
+ "type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
- "emailNotificationTemplateId": { "type": ["string", "null"] },
- "emailAddresses" : { "type": ["array", "null"] , "items": {"type": "string"} }
+ "emailNotificationTemplateId": { "type": "string" },
+ "emailAddresses" : { "type": "array" , "items": {"type": "string"} }
}
}
},
@@ -83,7 +88,7 @@
"properties": {
"id": {
"description": "Required. Must not be the same as the customer id. Must exist in the system.",
- "type": "string"
+ "type": ["string", "null"]
},
"name": { "type": ["string", "null"] }
},
@@ -103,7 +108,7 @@
"salesRep": { "description": "Optional. Sales representative.", "type": ["string", "null"] },
"shipMethodMappings": {
"description": "Optional. Ship method mappings for the customer.",
- "type": ["array", "null"],
+ "type": "array",
"items": {
"type": "object",
"additionalProperties": false,
@@ -116,7 +121,7 @@
"type": "object",
"additionalProperties": false,
"properties": {
- "fulfillmentSystemId" : { "type": "integer", "format": "int32" },
+ "fulfillmentSystemId" : { "type": "integer", "format": "int64" },
"fulfillmentSystemShipMethodId": { "type": "string" }
},
"required": ["fulfillmentSystemId", "fulfillmentSystemShipMethodId"]
@@ -130,14 +135,18 @@
}
},
"sourceSystems": {
- "type": ["array", "null"],
+ "type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
- "id": {"type": "integer", "format": "int32"},
+ "id": {
+ "description": "Required. Source system identifier.",
+ "type": "integer",
+ "format": "int64"
+ },
"sourceSystemCustomerId": {
- "description": "This is an automatically generated field added by middleware. It is considered read-only",
+ "description": "Required. Source system customer identifier.",
"type": "string"
}
},
@@ -147,5 +156,5 @@
"subsidiary": { "description": "Optional. Subsidiary name.", "type": ["string", "null"] },
"website": { "description": "Optional. Website URL.", "type": ["string", "null"] }
},
- "required": ["id", "name"]
+ "required": ["billingEntities", "id", "name"]
}
diff --git a/schema/Api/CustomerBroker/GetCustomerIdResponse.json b/schema/Api/CustomerBroker/GetCustomerIdResponse.json
index 26dce69..fe6d290 100644
--- a/schema/Api/CustomerBroker/GetCustomerIdResponse.json
+++ b/schema/Api/CustomerBroker/GetCustomerIdResponse.json
@@ -7,7 +7,7 @@
"data": {
"type": ["object", "null"],
"additionalProperties": false,
- "properties": { "id": { "type": ["string", "null"] } }
+ "properties": { "id": { "description": "Customer identifier.", "type": ["string", "null"] } }
},
"failureMessages": { "type": "array", "items": {"type": "string"} },
"informationalMessages": { "type": "array", "items": {"type": "string"} },
diff --git a/schema/Api/CustomerBroker/GetCustomerResponse.json b/schema/Api/CustomerBroker/GetCustomerResponse.json
index bc1d34c..ecab5ac 100644
--- a/schema/Api/CustomerBroker/GetCustomerResponse.json
+++ b/schema/Api/CustomerBroker/GetCustomerResponse.json
@@ -11,45 +11,50 @@
"defaultWarehouseId": { "description": "Optional. Warehouse identifier.", "type": ["string", "null"] },
"id": {
"description": "Required. Unique customer identifier. Must not be empty. Must exist for update. Cannot be the same as parent.id.",
- "type": "string",
+ "type": ["string", "null"],
"minLength": 1
},
- "brokerScopes": { "type": ["array", "null"], "items": {"type": "string"} },
+ "billingEntities": {
+ "type": ["array", "null"],
+ "items": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "id" : { "type": ["string", "null"] },
+ "xmlSenderId" : { "type": ["string", "null"] },
+ "isDefaultForCustomer": { "type": ["boolean", "null"] }
+ },
+ "required": ["id", "xmlSenderId", "isDefaultForCustomer"]
+ }
+ },
+ "brokerScopes": { "type": "array", "items": {"type": "string"} },
"contactAddress": {
"type": ["object", "null"],
"additionalProperties": false,
"properties": {
"address1": {
"description": "Required if contactAddress is present. Address line 1. Must not be empty.",
- "type": "string",
- "minLength": 1
+ "type": ["string", "null"]
},
"address2": { "description": "Optional. Address line 2.", "type": ["string", "null"] },
"address3": { "description": "Optional. Address line 3.", "type": ["string", "null"] },
"city": {
"description": "Required if contactAddress is present. City. Must not be empty.",
- "type": "string",
- "minLength": 1
+ "type": ["string", "null"]
},
"company": { "description": "Optional. Company name.", "type": ["string", "null"] },
"country": {
"description": "Required if contactAddress is present. Country. Must not be empty.",
- "type": "string",
- "minLength": 1
+ "type": ["string", "null"]
},
"faxNumber": { "description": "Optional. Fax number.", "type": ["string", "null"] },
"name": { "description": "Optional. Contact name.", "type": ["string", "null"] },
"phoneNumber": { "description": "Optional. Phone number.", "type": ["string", "null"] },
"postalCode": {
"description": "Required if contactAddress is present. Postal code. Must not be empty.",
- "type": "string",
- "minLength": 1
+ "type": ["string", "null"]
},
- "stateProvince": {
- "description": "Required. State or province.",
- "type": "string",
- "minLength": 1
- }
+ "stateProvince": { "description": "Required. State or province.", "type": ["string", "null"] }
},
"required": ["address1", "city", "country", "postalCode", "stateProvince"]
},
@@ -59,13 +64,13 @@
"format": "email"
},
"emailNotificationSubscriptions": {
- "type": ["array", "null"],
+ "type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
- "emailNotificationTemplateId": { "type": ["string", "null"] },
- "emailAddresses" : { "type": ["array", "null"] , "items": {"type": "string"} }
+ "emailNotificationTemplateId": { "type": "string" },
+ "emailAddresses" : { "type": "array" , "items": {"type": "string"} }
}
}
},
@@ -74,7 +79,7 @@
"type": ["string", "null"],
"format": "email"
},
- "name": {"description": "Required. Customer name.", "type": "string", "minLength": 1},
+ "name": { "type": ["string", "null"] },
"offerRevisionDelimiter": { "type": ["string", "null"] },
"parent": {
"type": ["object", "null"],
@@ -82,7 +87,7 @@
"properties": {
"id": {
"description": "Required. Must not be the same as the customer id. Must exist in the system.",
- "type": "string"
+ "type": ["string", "null"]
},
"name": { "type": ["string", "null"] }
},
@@ -101,27 +106,39 @@
},
"salesRep": { "description": "Optional. Sales representative.", "type": ["string", "null"] },
"shipMethodMappings": {
+ "description": "Optional. Ship method mappings for the customer.",
"type": ["array", "null"],
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
- "ratesProviderShipMethodId": {"type": "string"},
- "sourceSystemShipMethodId": {"type": "string"},
+ "ratesProviderShipMethodId": {"description": "Rates provider ship method identifier.", "type": "string"},
+ "sourceSystemShipMethodId": {"description": "Source system ship method identifier.", "type": "string"},
"fulfillmentSystemShipMethods": {
- "type": ["array", "null"],
+ "description": "Fulfillment system ship methods.",
+ "type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
- "fulfillmentSystemId": {"type": "integer", "format": "int32"},
- "fulfillmentSystemShipMethodId": { "type": ["string", "null"] },
- "fulfillmentSystemName": { "type": ["string", "null"] }
- }
+ "fulfillmentSystemId": {
+ "description": "Fulfillment system identifier.",
+ "type": "integer",
+ "format": "int64"
+ },
+ "fulfillmentSystemShipMethodId": {"description": "Fulfillment system ship method identifier.", "type": "string"},
+ "fulfillmentSystemName": {"description": "Fulfillment system name.", "type": "string"}
+ },
+ "required": [
+ "fulfillmentSystemId", "fulfillmentSystemName", "fulfillmentSystemShipMethodId"
+ ]
}
}
},
- "required": ["sourceSystemShipMethodId", "ratesProviderShipMethodId"]
+ "required": [
+ "fulfillmentSystemShipMethods", "ratesProviderShipMethodId",
+ "sourceSystemShipMethodId"
+ ]
}
},
"sourceSystems": {
@@ -130,22 +147,31 @@
"type": "object",
"additionalProperties": false,
"properties": {
- "authClientId": { "type": ["string", "null"] },
- "id": {"type": "integer", "format": "int32"},
+ "authClientId": {
+ "description": "Authentication client identifier.",
+ "type": ["string", "null"]
+ },
+ "id": {
+ "description": "Source system identifier.",
+ "type": "integer",
+ "format": "int64"
+ },
"sourceSystemCustomerId": {
- "description": "This is an automatically generated field added by middleware. It is considered read-only",
+ "description": "Source system customer identifier.",
+ "type": ["string", "null"]
+ },
+ "clientSecret": {
+ "description": "Client secret for authentication.",
"type": ["string", "null"]
},
- "clientSecret": { "type": ["string", "null"] },
- "name": {"type": "string"}
+ "name": { "description": "Source system name.", "type": ["string", "null"] }
},
- "required": ["id", "name"]
+ "required": ["id"]
}
},
"subsidiary": { "description": "Optional. Subsidiary name.", "type": ["string", "null"] },
"website": { "description": "Optional. Website URL.", "type": ["string", "null"] }
- },
- "required": ["id", "name"]
+ }
},
"failureMessages": { "type": "array", "items": {"type": "string"} },
"informationalMessages": { "type": "array", "items": {"type": "string"} },
diff --git a/schema/Api/CustomerBroker/UpdateCustomerRequest.json b/schema/Api/CustomerBroker/UpdateCustomerRequest.json
index 61fa93d..57e6261 100644
--- a/schema/Api/CustomerBroker/UpdateCustomerRequest.json
+++ b/schema/Api/CustomerBroker/UpdateCustomerRequest.json
@@ -10,42 +10,47 @@
"type": "string",
"minLength": 1
},
- "brokerScopes": { "type": ["array", "null"], "items": {"type": "string"} },
+ "billingEntities": {
+ "type": ["array", "null"],
+ "items": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "id" : { "type": ["string", "null"] },
+ "xmlSenderId" : { "type": ["string", "null"] },
+ "isDefaultForCustomer": { "type": ["boolean", "null"] }
+ },
+ "required": ["id", "xmlSenderId", "isDefaultForCustomer"]
+ }
+ },
+ "brokerScopes": { "type": "array", "items": {"type": "string"} },
"contactAddress": {
"type": ["object", "null"],
"additionalProperties": false,
"properties": {
"address1": {
"description": "Required if contactAddress is present. Address line 1. Must not be empty.",
- "type": "string",
- "minLength": 1
+ "type": ["string", "null"]
},
"address2": { "description": "Optional. Address line 2.", "type": ["string", "null"] },
"address3": { "description": "Optional. Address line 3.", "type": ["string", "null"] },
"city": {
"description": "Required if contactAddress is present. City. Must not be empty.",
- "type": "string",
- "minLength": 1
+ "type": ["string", "null"]
},
"company": { "description": "Optional. Company name.", "type": ["string", "null"] },
"country": {
"description": "Required if contactAddress is present. Country. Must not be empty.",
- "type": "string",
- "minLength": 1
+ "type": ["string", "null"]
},
"faxNumber": { "description": "Optional. Fax number.", "type": ["string", "null"] },
"name": { "description": "Optional. Contact name.", "type": ["string", "null"] },
"phoneNumber": { "description": "Optional. Phone number.", "type": ["string", "null"] },
"postalCode": {
"description": "Required if contactAddress is present. Postal code. Must not be empty.",
- "type": "string",
- "minLength": 1
+ "type": ["string", "null"]
},
- "stateProvince": {
- "description": "Required. State or province.",
- "type": "string",
- "minLength": 1
- }
+ "stateProvince": { "description": "Required. State or province.", "type": ["string", "null"] }
},
"required": ["address1", "city", "country", "postalCode", "stateProvince"]
},
@@ -55,13 +60,14 @@
"format": "email"
},
"emailNotificationSubscriptions": {
- "type": ["array", "null"],
+ "description": "Optional. List of email notification subscriptions.",
+ "type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
- "emailNotificationTemplateId": { "type": ["string", "null"] },
- "emailAddresses" : { "type": ["array", "null"] , "items": {"type": "string"} }
+ "emailNotificationTemplateId": { "type": "string" },
+ "emailAddresses" : { "type": "array" , "items": {"type": "string"} }
}
}
},
@@ -78,7 +84,7 @@
"properties": {
"id": {
"description": "Required. Must not be the same as the customer id. Must exist in the system.",
- "type": "string"
+ "type": ["string", "null"]
},
"name": { "type": ["string", "null"] }
},
@@ -97,7 +103,7 @@
},
"salesRep": { "description": "Optional. Sales representative.", "type": ["string", "null"] },
"shipMethodMappings": {
- "type": ["array", "null"],
+ "type": "array",
"items": {
"type": "object",
"additionalProperties": false,
@@ -110,7 +116,7 @@
"type": "object",
"additionalProperties": false,
"properties": {
- "fulfillmentSystemId" : { "type": "integer", "format": "int32" },
+ "fulfillmentSystemId" : { "type": "integer", "format": "int64" },
"fulfillmentSystemShipMethodId": { "type": "string" }
},
"required": ["fulfillmentSystemId", "fulfillmentSystemShipMethodId"]
@@ -124,14 +130,18 @@
}
},
"sourceSystems": {
- "type": ["array", "null"],
+ "type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
- "id": {"type": "integer", "format": "int32"},
+ "id": {
+ "description": "Required. Source system identifier.",
+ "type": "integer",
+ "format": "int64"
+ },
"sourceSystemCustomerId": {
- "description": "This is an automatically generated field added by middleware. It is considered read-only",
+ "description": "Required. Source system customer identifier.",
"type": "string"
}
},
@@ -139,8 +149,11 @@
}
},
"subsidiary": { "description": "Optional. Subsidiary name.", "type": ["string", "null"] },
- "updateDateTimeUtc": { "type": ["string", "null"] },
+ "updateDateTimeUtc": {
+ "description": "Optional. Update date/time in UTC. Must not be in the future if provided.",
+ "type": ["string", "null"]
+ },
"website": { "description": "Optional. Website URL.", "type": ["string", "null"] }
},
- "required": ["id", "name"]
+ "required": ["billingEntities", "id", "name"]
}
diff --git a/schema/Api/OfferBroker/CreateOfferRequest.json b/schema/Api/OfferBroker/CreateOfferRequest.json
index 58c3a93..5ed286e 100644
--- a/schema/Api/OfferBroker/CreateOfferRequest.json
+++ b/schema/Api/OfferBroker/CreateOfferRequest.json
@@ -28,10 +28,10 @@
"type": "object",
"additionalProperties": false,
"properties": {
- "type" : { "type": ["string", "null"] },
- "hint" : { "type": ["string", "null"] },
+ "type": {"type": "string", "default": "string"},
+ "hint": { "type": ["string", "null"] },
"label": { "type": ["string", "null"] },
- "name" : { "type": "string" },
+ "name": {"type": "string"},
"value": { "type": ["string", "null"] }
},
"required": ["name"]
@@ -68,9 +68,12 @@
"minLength": 1
},
"offerType": {
- "description": "Required. Must be one of: Product List, Drop Ship, Download, VDM, Omnichannel.",
+ "description": "Required. Must be one of: Direct Mail, Download, Drop Ship, Email, Omnichannel, Product List, VDM.",
"type": "string",
- "enum": ["Product List", "Drop Ship", "Download", "VDM", "Omnichannel"],
+ "enum": [
+ "Direct Mail", "Download", "Drop Ship", "Email", "Omnichannel", "Product List",
+ "VDM"
+ ],
"minLength": 1
},
"omniChannel": {
@@ -91,8 +94,8 @@
}
},
"onlyShipMethodsAvailable": { "type": ["array", "null"], "items": {"type": "string"} },
- "orderMaximum": { "type": ["integer", "null"], "format": "int32", "minimum": 1 },
- "orderMinimum": { "type": ["integer", "null"], "format": "int32", "minimum": 1 },
+ "orderMaximum": { "type": ["integer", "null"], "format": "int64", "minimum": 1 },
+ "orderMinimum": { "type": ["integer", "null"], "format": "int64", "minimum": 1 },
"pdfUrl": { "type": ["string", "null"] },
"priceClasses": {
"type": ["array", "null"],
@@ -108,17 +111,17 @@
"type": "object",
"additionalProperties": false,
"properties": {
- "maximumQuantity": { "type": ["integer", "null"], "format": "int32" },
- "minimumQuantity": { "type": ["integer", "null"], "format": "int32" },
+ "maximumQuantity": { "type": ["integer", "null"], "format": "int64" },
+ "minimumQuantity": { "type": ["integer", "null"], "format": "int64" },
"pageCounts": {
"type": ["array", "null"],
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
- "maximumPages": { "type": ["integer", "null"], "format": "int32" },
- "minimumPages": { "type": ["integer", "null"], "format": "int32" },
- "price" : { "type": ["number", "null"] , "format": "double" }
+ "maximumPages": { "type": ["integer", "null"], "format": "int64" },
+ "minimumPages": { "type": ["integer", "null"], "format": "int64" },
+ "price" : { "type": ["number", "null"] , "format": "decimal" }
}
}
},
@@ -137,7 +140,7 @@
"type": "object",
"additionalProperties": false,
"properties": {
- "id": {"type": "string"},
+ "id": { "type": ["string", "null"] },
"products": {
"type": ["array", "null"],
"items": {
@@ -145,15 +148,14 @@
"additionalProperties": false,
"properties": {
"productId" : { "type": "string" },
- "pageCount" : { "type": ["integer", "null"], "format": "int32" },
- "productQuantityInOffer": { "type": "integer" , "format": "int32" }
+ "pageCount" : { "type": ["integer", "null"], "format": "int64" },
+ "productQuantityInOffer": { "type": "integer" , "format": "int64" }
},
"required": ["productId", "productQuantityInOffer"]
},
"minItems": 1
}
- },
- "required": ["id"]
+ }
}
},
"requiresApproval": { "type": ["boolean", "null"] },
@@ -162,7 +164,7 @@
"surcharge": { "type": ["number", "null"], "format": "double" },
"thumbnailUrl": { "type": ["string", "null"] },
"unitOfMeasure": { "type": ["string", "null"] },
- "weightInPounds": { "type": ["number", "null"], "format": "float" }
+ "weightInPounds": { "type": ["number", "null"], "format": "double" }
},
"required": ["number", "offerType", "omsOfferId"]
}
diff --git a/schema/Api/OfferBroker/GetOfferCategoriesResponse.json b/schema/Api/OfferBroker/GetOfferCategoriesResponse.json
index d1410c8..efcb10e 100644
--- a/schema/Api/OfferBroker/GetOfferCategoriesResponse.json
+++ b/schema/Api/OfferBroker/GetOfferCategoriesResponse.json
@@ -10,12 +10,27 @@
"type": "object",
"additionalProperties": false,
"properties": {
- "id": { "type": ["string", "null"] },
- "categoryKey": { "type": ["string", "null"] },
- "categoryLevel": { "type": ["integer", "null"], "format": "int32" },
- "categoryName": { "type": ["string", "null"] },
- "subCategories": { "type": ["array", "null"], "items": {"type": "object"} }
- }
+ "id": {"type": "string"},
+ "categoryKey": {"type": "string"},
+ "categoryLevel": { "type": ["integer", "null"] },
+ "categoryName": {"type": "string"},
+ "subCategories": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "id": {"type": "string"},
+ "categoryKey": {"type": "string"},
+ "categoryLevel": { "type": ["integer", "null"] },
+ "categoryName": {"type": "string"},
+ "subCategories": { "type": "array", "items": {"type": "object"} }
+ },
+ "required": ["id", "categoryKey", "categoryName", "subCategories"]
+ }
+ }
+ },
+ "required": ["id", "categoryKey", "categoryName", "subCategories"]
}
},
"failureMessages": { "type": "array", "items": {"type": "string"} },
diff --git a/schema/Api/OfferBroker/GetOfferInventoryResponse.json b/schema/Api/OfferBroker/GetOfferInventoryResponse.json
index f94e01d..325da97 100644
--- a/schema/Api/OfferBroker/GetOfferInventoryResponse.json
+++ b/schema/Api/OfferBroker/GetOfferInventoryResponse.json
@@ -5,19 +5,19 @@
"additionalProperties": false,
"properties": {
"data": {
- "type": ["array", "null"],
+ "type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
- "offerId" : { "type": "string" },
- "currentAvailableQty": { "type": "integer" , "format": "int32" },
- "currentOnHandQty" : { "type": ["integer", "null"], "format": "int32" },
- "expected" : { "type": ["integer", "null"], "format": "int32" },
- "onBackorder" : { "type": ["integer", "null"], "format": "int32" },
- "reserved" : { "type": "integer" , "format": "int32" }
+ "offerId" : { "type": "string" },
+ "currentAvailableQty": { "type": "integer" },
+ "currentOnHandQty" : { "type": "integer" },
+ "expected" : { "type": ["integer", "null"] },
+ "onBackorder" : { "type": ["integer", "null"] },
+ "reserved" : { "type": "integer" }
},
- "required": ["currentAvailableQty", "offerId", "reserved"]
+ "required": ["offerId", "currentAvailableQty", "reserved"]
}
},
"failureMessages": { "type": "array", "items": {"type": "string"} },
diff --git a/schema/Api/OfferBroker/GetOfferResponse.json b/schema/Api/OfferBroker/GetOfferResponse.json
index 6acd452..e234c89 100644
--- a/schema/Api/OfferBroker/GetOfferResponse.json
+++ b/schema/Api/OfferBroker/GetOfferResponse.json
@@ -56,7 +56,7 @@
"defaultPrice": { "type": ["number", "null"], "format": "double" },
"deliveryScheduleCron": { "type": ["string", "null"] },
"doSuppressShippingAndHandling": { "type": ["boolean", "null"] },
- "fixedOrderQuantities": { "type": ["array", "null"], "items": {"type": "integer", "format": "int32"} },
+ "fixedOrderQuantities": { "type": ["array", "null"], "items": {"type": "number", "format": "double"} },
"fullImageUrl": { "type": ["string", "null"] },
"integrationBrokerLastUpdatedDateTimeUtc": { "type": ["string", "null"] },
"isActive": { "type": ["boolean", "null"] },
@@ -99,8 +99,8 @@
"omsIdentifier": { "type": ["string", "null"] },
"omsRootSystemName": { "type": ["string", "null"] },
"onlyShipMethodsAvailable": { "type": ["array", "null"], "items": {"type": "string"} },
- "orderMaximum": { "type": ["integer", "null"], "format": "int32" },
- "orderMinimum": { "type": ["integer", "null"], "format": "int32" },
+ "orderMaximum": { "type": ["integer", "null"], "format": "int64" },
+ "orderMinimum": { "type": ["integer", "null"], "format": "int64" },
"pdfUrl": { "type": ["string", "null"] },
"priceClasses": {
"type": ["array", "null"],
@@ -116,16 +116,16 @@
"type": "object",
"additionalProperties": false,
"properties": {
- "maximumQuantity": { "type": ["integer", "null"], "format": "int32" },
- "minimumQuantity": { "type": ["integer", "null"], "format": "int32" },
+ "maximumQuantity": { "type": ["integer", "null"], "format": "int64" },
+ "minimumQuantity": { "type": ["integer", "null"], "format": "int64" },
"pageCounts": {
"type": ["array", "null"],
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
- "maximumPages": { "type": "integer", "format": "int32" },
- "minimumPages": { "type": "integer", "format": "int32" },
+ "maximumPages": { "type": "integer", "format": "int64" },
+ "minimumPages": { "type": "integer", "format": "int64" },
"price" : { "type": "number" , "format": "double" }
}
}
@@ -154,12 +154,12 @@
"omsProductId": { "type": ["string", "null"] },
"productId": { "type": ["string", "null"] },
"associatedFileName": { "type": ["string", "null"] },
- "buildType": { "type": "integer", "enum": [0, 1, 2, 3, 4, 5], "format": "int32" },
- "pageCount": { "type": ["integer", "null"], "format": "int32" },
+ "buildType": { "type": "integer", "enum": [0, 1, 2, 3, 4, 5], "format": "int64" },
+ "pageCount": { "type": ["integer", "null"], "format": "int64" },
"productColor": { "type": ["string", "null"] },
"productDescription": { "type": ["string", "null"] },
"productNumber": { "type": ["string", "null"] },
- "productQuantityInOffer": {"type": "integer", "format": "int32"},
+ "productQuantityInOffer": {"type": "integer", "format": "int64"},
"productSize": { "type": ["string", "null"] },
"surcharge": { "type": ["number", "null"], "format": "double" }
}
@@ -176,7 +176,7 @@
"surcharge": { "type": ["number", "null"], "format": "double" },
"thumbnailUrl": { "type": ["string", "null"] },
"unitOfMeasure": { "type": ["string", "null"] },
- "weightInPounds": { "type": ["number", "null"], "format": "float" }
+ "weightInPounds": { "type": ["number", "null"], "format": "double" }
},
"required": ["omsOfferId", "number", "offerType"]
},
diff --git a/schema/Api/OfferBroker/GetOffersResponse.json b/schema/Api/OfferBroker/GetOffersResponse.json
index 5640ad4..8f2a7a0 100644
--- a/schema/Api/OfferBroker/GetOffersResponse.json
+++ b/schema/Api/OfferBroker/GetOffersResponse.json
@@ -58,7 +58,7 @@
"defaultPrice": { "type": ["number", "null"], "format": "double" },
"deliveryScheduleCron": { "type": ["string", "null"] },
"doSuppressShippingAndHandling": { "type": ["boolean", "null"] },
- "fixedOrderQuantities": { "type": ["array", "null"], "items": {"type": "integer", "format": "int32"} },
+ "fixedOrderQuantities": { "type": ["array", "null"], "items": {"type": "number", "format": "double"} },
"fullImageUrl": { "type": ["string", "null"] },
"integrationBrokerLastUpdatedDateTimeUtc": { "type": ["string", "null"] },
"isActive": { "type": ["boolean", "null"] },
@@ -101,8 +101,8 @@
"omsIdentifier": { "type": ["string", "null"] },
"omsRootSystemName": { "type": ["string", "null"] },
"onlyShipMethodsAvailable": { "type": ["array", "null"], "items": {"type": "string"} },
- "orderMaximum": { "type": ["integer", "null"], "format": "int32" },
- "orderMinimum": { "type": ["integer", "null"], "format": "int32" },
+ "orderMaximum": { "type": ["integer", "null"], "format": "int64" },
+ "orderMinimum": { "type": ["integer", "null"], "format": "int64" },
"pdfUrl": { "type": ["string", "null"] },
"priceClasses": {
"type": ["array", "null"],
@@ -118,16 +118,16 @@
"type": "object",
"additionalProperties": false,
"properties": {
- "maximumQuantity": { "type": ["integer", "null"], "format": "int32" },
- "minimumQuantity": { "type": ["integer", "null"], "format": "int32" },
+ "maximumQuantity": { "type": ["integer", "null"], "format": "int64" },
+ "minimumQuantity": { "type": ["integer", "null"], "format": "int64" },
"pageCounts": {
"type": ["array", "null"],
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
- "maximumPages": { "type": "integer", "format": "int32" },
- "minimumPages": { "type": "integer", "format": "int32" },
+ "maximumPages": { "type": "integer", "format": "int64" },
+ "minimumPages": { "type": "integer", "format": "int64" },
"price" : { "type": "number" , "format": "double" }
}
}
@@ -156,12 +156,12 @@
"omsProductId": { "type": ["string", "null"] },
"productId": { "type": ["string", "null"] },
"associatedFileName": { "type": ["string", "null"] },
- "buildType": { "type": "integer", "enum": [0, 1, 2, 3, 4, 5], "format": "int32" },
- "pageCount": { "type": ["integer", "null"], "format": "int32" },
+ "buildType": { "type": "integer", "enum": [0, 1, 2, 3, 4, 5], "format": "int64" },
+ "pageCount": { "type": ["integer", "null"], "format": "int64" },
"productColor": { "type": ["string", "null"] },
"productDescription": { "type": ["string", "null"] },
"productNumber": { "type": ["string", "null"] },
- "productQuantityInOffer": {"type": "integer", "format": "int32"},
+ "productQuantityInOffer": {"type": "integer", "format": "int64"},
"productSize": { "type": ["string", "null"] },
"surcharge": { "type": ["number", "null"], "format": "double" }
}
@@ -179,7 +179,7 @@
"surcharge": { "type": ["number", "null"], "format": "double" },
"thumbnailUrl": { "type": ["string", "null"] },
"unitOfMeasure": { "type": ["string", "null"] },
- "weightInPounds": { "type": ["number", "null"], "format": "float" }
+ "weightInPounds": { "type": ["number", "null"], "format": "double" }
},
"required": ["omsOfferId", "number", "offerType"]
}
diff --git a/schema/Api/OfferBroker/InternalGetOffersResponse.json b/schema/Api/OfferBroker/InternalGetOffersResponse.json
index 4bd76f7..0b925fd 100644
--- a/schema/Api/OfferBroker/InternalGetOffersResponse.json
+++ b/schema/Api/OfferBroker/InternalGetOffersResponse.json
@@ -58,7 +58,7 @@
"defaultPrice": { "type": ["number", "null"], "format": "double" },
"deliveryScheduleCron": { "type": ["string", "null"] },
"doSuppressShippingAndHandling": { "type": ["boolean", "null"] },
- "fixedOrderQuantities": { "type": ["array", "null"], "items": {"type": "integer", "format": "int32"} },
+ "fixedOrderQuantities": { "type": ["array", "null"], "items": {"type": "number", "format": "double"} },
"fullImageUrl": { "type": ["string", "null"] },
"integrationBrokerLastUpdatedDateTimeUtc": { "type": ["string", "null"] },
"isActive": { "type": ["boolean", "null"] },
@@ -101,8 +101,8 @@
"omsIdentifier": { "type": ["string", "null"] },
"omsRootSystemName": { "type": ["string", "null"] },
"onlyShipMethodsAvailable": { "type": ["array", "null"], "items": {"type": "string"} },
- "orderMaximum": { "type": ["integer", "null"], "format": "int32" },
- "orderMinimum": { "type": ["integer", "null"], "format": "int32" },
+ "orderMaximum": { "type": ["integer", "null"], "format": "int64" },
+ "orderMinimum": { "type": ["integer", "null"], "format": "int64" },
"pdfUrl": { "type": ["string", "null"] },
"priceClasses": {
"type": ["array", "null"],
@@ -118,16 +118,16 @@
"type": "object",
"additionalProperties": false,
"properties": {
- "maximumQuantity": { "type": ["integer", "null"], "format": "int32" },
- "minimumQuantity": { "type": ["integer", "null"], "format": "int32" },
+ "maximumQuantity": { "type": ["integer", "null"], "format": "int64" },
+ "minimumQuantity": { "type": ["integer", "null"], "format": "int64" },
"pageCounts": {
"type": ["array", "null"],
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
- "maximumPages": { "type": "integer", "format": "int32" },
- "minimumPages": { "type": "integer", "format": "int32" },
+ "maximumPages": { "type": "integer", "format": "int64" },
+ "minimumPages": { "type": "integer", "format": "int64" },
"price" : { "type": "number" , "format": "double" }
}
}
@@ -156,12 +156,12 @@
"omsProductId": { "type": ["string", "null"] },
"productId": { "type": ["string", "null"] },
"associatedFileName": { "type": ["string", "null"] },
- "buildType": { "type": "integer", "enum": [0, 1, 2, 3, 4, 5], "format": "int32" },
- "pageCount": { "type": ["integer", "null"], "format": "int32" },
+ "buildType": { "type": "integer", "enum": [0, 1, 2, 3, 4, 5], "format": "int64" },
+ "pageCount": { "type": ["integer", "null"], "format": "int64" },
"productColor": { "type": ["string", "null"] },
"productDescription": { "type": ["string", "null"] },
"productNumber": { "type": ["string", "null"] },
- "productQuantityInOffer": {"type": "integer", "format": "int32"},
+ "productQuantityInOffer": {"type": "integer", "format": "int64"},
"productSize": { "type": ["string", "null"] },
"surcharge": { "type": ["number", "null"], "format": "double" }
}
@@ -170,8 +170,7 @@
}
},
"required": ["id"]
- },
- "required": ["id"]
+ }
},
"requiresApproval": { "type": ["boolean", "null"] },
"schemaVersion": { "type": ["string", "null"] },
@@ -180,7 +179,7 @@
"surcharge": { "type": ["number", "null"], "format": "double" },
"thumbnailUrl": { "type": ["string", "null"] },
"unitOfMeasure": { "type": ["string", "null"] },
- "weightInPounds": { "type": ["number", "null"], "format": "float" }
+ "weightInPounds": { "type": ["number", "null"], "format": "double" }
},
"required": ["omsOfferId", "number", "offerType", "productClusters"]
}
diff --git a/schema/Api/OfferBroker/UpdateOfferParameters.json b/schema/Api/OfferBroker/UpdateOfferParameters.json
index 6b5e6cb..b2c54d7 100644
--- a/schema/Api/OfferBroker/UpdateOfferParameters.json
+++ b/schema/Api/OfferBroker/UpdateOfferParameters.json
@@ -6,5 +6,11 @@
"name": "x-correlation-id",
"schema": {"type": "string"},
"required": false
+ },
+ "OfferId": {
+ "in": "path",
+ "name": "offerId",
+ "schema": {"type": "string"},
+ "required": true
}
}
diff --git a/schema/Api/OfferBroker/UpdateOfferRequest.json b/schema/Api/OfferBroker/UpdateOfferRequest.json
index 82682c2..e6c2ac6 100644
--- a/schema/Api/OfferBroker/UpdateOfferRequest.json
+++ b/schema/Api/OfferBroker/UpdateOfferRequest.json
@@ -15,7 +15,7 @@
"properties": {
"omsOfferId": {
"description": "Required. Unique offer identifier. Must not be empty.",
- "type": "string",
+ "type": ["string", "null"],
"minLength": 1
},
"xmPieTemplateId": { "type": ["string", "null"] },
@@ -47,6 +47,15 @@
"type": ["string", "null"],
"examples": ["2025-06-06T00:00:00Z"]
},
+ "categories": {
+ "type": ["array", "null"],
+ "items": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": { "categoryKey": {"type": "string"}, "name": {"type": "string"} },
+ "required": ["categoryKey", "name"]
+ }
+ },
"categoryIds": { "type": ["array", "null"], "items": {"type": "string"} },
"comments": { "type": ["string", "null"] },
"defaultPrice": { "type": ["number", "null"], "format": "double" },
@@ -54,6 +63,7 @@
"doSuppressShippingAndHandling": { "type": ["boolean", "null"] },
"fixedOrderQuantities": { "type": ["array", "null"], "items": {"type": "number", "format": "double"} },
"fullImageUrl": { "type": ["string", "null"] },
+ "integrationBrokerLastUpdatedDateTimeUtc": { "type": ["string", "null"] },
"isActive": { "type": ["boolean", "null"] },
"isAvailableViaCoopFunds": { "type": ["boolean", "null"] },
"isDeleted": { "type": ["boolean", "null"] },
@@ -91,9 +101,11 @@
}
}
},
+ "omsIdentifier": { "type": ["string", "null"] },
+ "omsRootSystemName": { "type": ["string", "null"] },
"onlyShipMethodsAvailable": { "type": ["array", "null"], "items": {"type": "string"} },
- "orderMaximum": { "type": ["integer", "null"], "format": "int32", "minimum": 1 },
- "orderMinimum": { "type": ["integer", "null"], "format": "int32", "minimum": 1 },
+ "orderMaximum": { "type": ["integer", "null"], "format": "int64", "minimum": 1 },
+ "orderMinimum": { "type": ["integer", "null"], "format": "int64", "minimum": 1 },
"pdfUrl": { "type": ["string", "null"] },
"priceClasses": {
"type": ["array", "null"],
@@ -109,16 +121,16 @@
"type": "object",
"additionalProperties": false,
"properties": {
- "maximumQuantity": { "type": ["integer", "null"], "format": "int32" },
- "minimumQuantity": { "type": ["integer", "null"], "format": "int32" },
+ "maximumQuantity": { "type": ["integer", "null"], "format": "int64" },
+ "minimumQuantity": { "type": ["integer", "null"], "format": "int64" },
"pageCounts": {
"type": ["array", "null"],
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
- "maximumPages": { "type": ["integer", "null"], "format": "int32" },
- "minimumPages": { "type": ["integer", "null"], "format": "int32" },
+ "maximumPages": { "type": ["integer", "null"], "format": "int64" },
+ "minimumPages": { "type": ["integer", "null"], "format": "int64" },
"price" : { "type": ["number", "null"] , "format": "double" }
}
}
@@ -146,8 +158,8 @@
"additionalProperties": false,
"properties": {
"productId" : { "type": "string" },
- "pageCount" : { "type": ["integer", "null"], "format": "int32" },
- "productQuantityInOffer": { "type": "integer" , "format": "int32" }
+ "pageCount" : { "type": ["integer", "null"], "format": "int64" },
+ "productQuantityInOffer": { "type": "integer" , "format": "int64" }
},
"required": ["productId", "productQuantityInOffer"]
},
@@ -158,12 +170,13 @@
}
},
"requiresApproval": { "type": ["boolean", "null"] },
+ "schemaVersion": { "type": ["string", "null"] },
"secureEmailBody": { "type": ["string", "null"] },
"secureEmailSubject": { "type": ["string", "null"] },
"surcharge": { "type": ["number", "null"], "format": "double" },
"thumbnailUrl": { "type": ["string", "null"] },
"unitOfMeasure": { "type": ["string", "null"] },
- "weightInPounds": { "type": ["number", "null"], "format": "float" }
+ "weightInPounds": { "type": ["number", "null"], "format": "double" }
},
- "required": ["number", "offerType", "omsOfferId"]
+ "required": ["number", "offerType"]
}
diff --git a/schema/Api/OrderBroker/InternalGetOrderParameters.json b/schema/Api/OrderBroker/InternalGetOrderParameters.json
new file mode 100644
index 0000000..e77939e
--- /dev/null
+++ b/schema/Api/OrderBroker/InternalGetOrderParameters.json
@@ -0,0 +1,16 @@
+{
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "CorrelationId": {
+ "description": "Correlation ID. This is added by the API Management service if not present. Once added, it should be propagated to any downstream services.",
+ "in": "header",
+ "name": "x-correlation-id",
+ "schema": {"type": "string"},
+ "required": false
+ },
+ "OrderId": {
+ "in": "path",
+ "name": "orderId",
+ "schema": {"type": "string"},
+ "required": true
+ }
+}
diff --git a/schema/Api/OrderBroker/InternalGetOrderResponse.json b/schema/Api/OrderBroker/InternalGetOrderResponse.json
new file mode 100644
index 0000000..6ca77b8
--- /dev/null
+++ b/schema/Api/OrderBroker/InternalGetOrderResponse.json
@@ -0,0 +1,952 @@
+{
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "InternalGetOrderResponse.json",
+ "description": "Response for Get Order API containing the Order schema",
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "data": {
+ "type": ["object", "null"],
+ "additionalProperties": false,
+ "properties": {
+ "omsCustomerId": {
+ "description": "Unique customer ID in the order management system (system where order lifecycle will be managed)",
+ "type": ["string", "null"],
+ "maxLength": 100
+ },
+ "omsId": {
+ "description": "Order management system ID",
+ "type": ["string", "null"],
+ "maxLength": 100
+ },
+ "omsOrderId": {
+ "description": "Unique order ID in the order management system (system where order lifecycle will be managed)",
+ "type": ["string", "null"],
+ "maxLength": 100
+ },
+ "orderId": {
+ "description": "Unique ID for order within order management system (system where order lifecycle will be managed). Required, must not be null or empty.",
+ "type": "string",
+ "maxLength": 100,
+ "minLength": 1
+ },
+ "referenceId": { "type": ["string", "null"], "maxLength": 255 },
+ "sourceSystemCustomerId": {
+ "description": "Unique customer ID in the source system. Required, must not be null or empty.",
+ "type": "string",
+ "maxLength": 100,
+ "minLength": 1
+ },
+ "sourceSystemId": {
+ "description": "Source system ID. Required, must not be null.",
+ "type": ["integer", "null"],
+ "format": "int32"
+ },
+ "sourceSystemOrderId": {
+ "description": "Unique order ID in the source system (system where order was originally placed)",
+ "type": ["string", "null"],
+ "maxLength": 100
+ },
+ "accessGroups": { "type": ["array", "null"], "items": {"type": "string"} },
+ "affiliateIdentifier": {
+ "description": "Unique ID for affiliate within source system (system where order was originally placed)",
+ "type": ["string", "null"],
+ "maxLength": 100
+ },
+ "affiliateName": {
+ "description": "Name for affiliate within source system (system where order was originally placed)",
+ "type": ["string", "null"],
+ "maxLength": 255
+ },
+ "billTos": {
+ "description": "Bill to addresses array for Order. Required, must not be empty. Each item must have required address fields and a non-null key.",
+ "oneOf": [
+ {"type": "null"},
+ {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "address1": {"description": "Address line 1 for address", "type": "string"},
+ "address2": { "description": "Address line 2 for address", "type": ["string", "null"] },
+ "address3": { "description": "Address line 3 for address", "type": ["string", "null"] },
+ "city": {"description": "City name for address", "type": "string"},
+ "company": { "description": "Company name for address", "type": ["string", "null"] },
+ "country": {"description": "Country name for address", "type": "string"},
+ "emailAddress": {
+ "description": "Contact email address for address",
+ "type": ["string", "null"]
+ },
+ "faxNumber": { "description": "Fax number for address", "type": ["string", "null"] },
+ "isDeleted": {
+ "description": "Flag indicating if this bill to address has been deleted",
+ "type": ["boolean", "null"]
+ },
+ "key": {"description": "Unique ID for individual contact", "type": "string"},
+ "name": {"description": "Contact name for this address", "type": "string"},
+ "phoneNumber": { "description": "Phone number for address", "type": ["string", "null"] },
+ "postalCode": {"description": "Postal code for address", "type": "string"},
+ "stateProvince": {"description": "State or province name for address", "type": "string"}
+ },
+ "required": ["address1", "city", "country", "key", "name", "postalCode", "stateProvince"]
+ },
+ "minItems": 1
+ }
+ ]
+ },
+ "costCenter": { "type": ["string", "null"], "maxLength": 255 },
+ "createDateTime": {
+ "description": "Datetime of when order was created",
+ "type": ["string", "null"]
+ },
+ "creditCardFee": {
+ "description": "Credit card transaction fee applied to Order",
+ "type": ["number", "null"],
+ "format": "double",
+ "minimum": 0
+ },
+ "defaultBillToKey": {
+ "description": "Unique ID for default billing contact details pulled from Order.BillTos.Key property (Only if applicable. Otherwise DefaultBillToKey will be null/empty value) (NOTE: If this value is not set, BillToKey must be set on all line items.)",
+ "type": ["string", "null"]
+ },
+ "defaultOrderedByKey": {
+ "description": "Unique ID for default ordered by contact details pulled from Order.OrderedBy.Key property (Only if applicable. Otherwise DefaultOrderedByKey will be null/empty value)",
+ "type": ["string", "null"]
+ },
+ "defaultShipToKey": {
+ "description": "Unique ID for default ship to contact pulled from Order.ShipTos.Key property (Only if applicable. Otherwise DefaultShipToKey will be null/empty value) (NOTE: If this value is not set, ShipToKey must be set on all line items.)",
+ "type": ["string", "null"]
+ },
+ "dueDate": {
+ "description": "Datetime of expected due date for Order. If present, must be a valid date and not in the past (enforced in backend).",
+ "type": ["string", "null"],
+ "pattern": "^(\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}|\\d{8}|\\d{2}[-/]\\d{2}[-/]\\d{4}(\\s\\d{2}:\\d{2}:\\d{2})?)$",
+ "examples": ["2024-04-20T10:30:00", "20240420", "04/20/2024 10:30:00"]
+ },
+ "lineItems": {
+ "description": "Order level line item details. Required, must not be empty. Each item must have offerId, quantityOrdered > 0, price >= 0, taxAmount >= 0, lineItemFee >= 0. If defaultBillToKey, defaultOrderedByKey, or defaultShipToKey are null, corresponding keys must be set on each line item.",
+ "type": ["array"],
+ "items": {
+ "description": "Order level line item details",
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "offerId": {
+ "description": "Unique ID for offer within Integration Broker",
+ "type": "string"
+ },
+ "productManagementSystemCustomerId": {
+ "description": "Unique customer ID in the product management system (system where ordered line item products will be managed)",
+ "type": ["string", "null"],
+ "maxLength": 100
+ },
+ "productManagementSystemId": {
+ "description": "Product management system ID",
+ "type": ["string", "null"],
+ "maxLength": 100
+ },
+ "referenceId": { "type": ["string", "null"] },
+ "variableTemplatePrintId": {
+ "description": "Unique ID for variable template file associated to offer on individual line item",
+ "type": ["string", "null"]
+ },
+ "additionalProperties": {
+ "description": "Additional properties details for Order LineItems",
+ "type": ["array", "null"],
+ "items": {
+ "description": "Order.LineItems level additional properties details",
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "key" : { "type": ["string", "null"] },
+ "value": { "type": ["string", "null"] }
+ },
+ "required": ["key", "value"]
+ }
+ },
+ "billToKey": {
+ "description": "Unique ID for Order.BillTos.Key property associated to individual line item (NOTE: If top-level DefaultBillToKey is not set, this must be.)",
+ "type": ["string", "null"]
+ },
+ "comment": {
+ "description": "Manually entered comment for individual line item",
+ "type": ["string", "null"]
+ },
+ "costCenter": { "type": ["string", "null"] },
+ "dueDate": {
+ "description": "Datetime of expected due date for individual line item",
+ "type": ["string", "null"]
+ },
+ "isDeleted": {
+ "description": "Flag indicating if this line item has been deleted",
+ "type": ["boolean", "null"]
+ },
+ "lineItemFee": {
+ "description": "Fee applied to individual line item",
+ "type": "number",
+ "format": "double"
+ },
+ "offerDescription": {
+ "description": "Description for offer within product management system (system where ordered line item products will be managed)",
+ "type": ["string", "null"]
+ },
+ "offerLineNumber": {
+ "description": "Unique ID for individual line item",
+ "type": ["string", "null"]
+ },
+ "offerNumber": {
+ "description": "Name for offer within product management system (system where ordered line item products will be managed)",
+ "type": ["string", "null"]
+ },
+ "orderedByKey": {
+ "description": "Unique ID for Order.OrderedBy.Key property associated to individual line item",
+ "type": ["string", "null"]
+ },
+ "poNumber": {
+ "description": "Purchase order number for individual line item",
+ "type": ["string", "null"]
+ },
+ "price": {
+ "description": "Total offer price of individual line item",
+ "type": "number",
+ "format": "double"
+ },
+ "products": {
+ "type": ["array", "null"],
+ "items": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "fulfillmentSystemCustomerId": {
+ "description": "Unique customer ID in the fulfillment system (system where products will be fulfilled)",
+ "type": ["string", "null"],
+ "maxLength": 100
+ },
+ "fulfillmentSystemId": {
+ "description": "Fulfillment system ID",
+ "type": ["string", "null"],
+ "maxLength": 100
+ },
+ "productId": {"type": "string"},
+ "associatedFileName": { "type": ["string", "null"] },
+ "color": { "type": ["string", "null"] },
+ "comment": { "type": ["string", "null"] },
+ "components": {
+ "type": ["array", "null"],
+ "items": {
+ "description": "Order.LineItems.Products level component details",
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "productId": {
+ "description": "Unique ID for component product within Integration Broker",
+ "type": "string"
+ },
+ "associatedFileName": {
+ "description": "Name of file associated to component product (if applicable)",
+ "type": ["string", "null"]
+ },
+ "color": { "description": "Color of component product", "type": ["string", "null"] },
+ "comment": {
+ "description": "Manually entered comment for component product",
+ "type": ["string", "null"]
+ },
+ "componentLineNumber": {
+ "description": "Unique ID for component product within parent product",
+ "type": ["string", "null"]
+ },
+ "productDescription": {
+ "description": "Description for component product within product management system (system where ordered line item products will be managed)",
+ "type": ["string", "null"]
+ },
+ "productNumber": {
+ "description": "Name for component product within product management system (system where ordered line item products will be managed)",
+ "type": ["string", "null"]
+ },
+ "productOwner": { "description": "Owner of component product", "type": ["string", "null"] },
+ "quantityBackordered": {
+ "description": "Amount of component product back-ordered within parent product",
+ "type": ["integer", "null"],
+ "format": "int32"
+ },
+ "quantityOrdered": {
+ "description": "Amount of component product ordered within parent product",
+ "type": ["integer", "null"],
+ "format": "int32"
+ },
+ "size": { "description": "Size of component product", "type": ["string", "null"] }
+ },
+ "required": ["productId"]
+ }
+ },
+ "isDeleted": {
+ "description": "Flag indicating if this product has been deleted",
+ "type": ["boolean", "null"]
+ },
+ "offerLineNumber": {
+ "description": "Line number reference to the parent offer line item",
+ "type": ["string", "null"]
+ },
+ "pageCount": { "type": ["integer", "null"], "format": "int32" },
+ "productDescription": { "type": ["string", "null"] },
+ "productLineNumber": { "type": ["string", "null"] },
+ "productNumber": { "type": ["string", "null"] },
+ "productOwner": { "type": ["string", "null"] },
+ "quantityBackordered": { "type": ["integer", "null"], "format": "int32" },
+ "quantityOrdered": { "type": ["integer", "null"], "format": "int32" },
+ "size": { "type": ["string", "null"] }
+ },
+ "required": ["productId"]
+ }
+ },
+ "quantityCanceled": {
+ "description": "Amount of offer canceled for individual line item",
+ "type": ["integer", "null"],
+ "format": "int32",
+ "minimum": 0
+ },
+ "quantityOrdered": {
+ "description": "Amount of offer ordered for individual line item",
+ "type": ["integer", "null"],
+ "format": "int32"
+ },
+ "rushOrder": {
+ "description": "True/false indicator if individual line item is expedited",
+ "type": ["boolean", "null"]
+ },
+ "shipToKey": {
+ "description": "Unique ID for Order.ShipTos.Key property associated to individual line item (NOTE: If top-level DefaultShipToKey is not set, this must be.)",
+ "type": ["string", "null"]
+ },
+ "status": { "description": "Current status of the line item", "type": ["string", "null"] },
+ "taxAmount": {
+ "description": "Total tax amount applied to individual line item",
+ "type": ["number", "null"],
+ "format": "double"
+ }
+ },
+ "required": ["offerId"]
+ },
+ "minItems": 1,
+ "uniqueItems": false
+ },
+ "modifiedDateTime": {
+ "description": "Datetime of when order was last modified",
+ "type": ["string", "null"]
+ },
+ "omsCustomerName": {
+ "description": "Customer name in the order management system (system where order lifecycle will be managed)",
+ "type": ["string", "null"],
+ "maxLength": 255
+ },
+ "orderFee": {
+ "description": "Fee applied to Order",
+ "type": ["number", "null"],
+ "format": "double",
+ "minimum": 0
+ },
+ "orderVariables": {
+ "description": "Manually entered variables for order within order management system (system where order lifecycle will be managed in)",
+ "oneOf": [ {"type": "null"}, {"type": "object"} ]
+ },
+ "orderedBys": {
+ "description": "Order level ordered by contact and address details. Not required, but if present, each item must have required address fields and a non-null key.",
+ "oneOf": [
+ {"type": "null"},
+ {
+ "type": "array",
+ "items": {
+ "description": "Bill to address object for Order",
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "address1": {"description": "Address line 1 for address", "type": "string"},
+ "address2": { "description": "Address line 2 for address", "type": ["string", "null"] },
+ "address3": { "description": "Address line 3 for address", "type": ["string", "null"] },
+ "city": {"description": "City name for address", "type": "string"},
+ "company": { "description": "Company name for address", "type": ["string", "null"] },
+ "country": {"description": "Country name for address", "type": "string"},
+ "emailAddress": {
+ "description": "Contact email address for address",
+ "type": ["string", "null"]
+ },
+ "faxNumber": { "description": "Fax number for address", "type": ["string", "null"] },
+ "key": {"description": "Unique ID for individual contact", "type": "string"},
+ "name": {"type": "string"},
+ "phoneNumber": { "description": "Phone number for address", "type": ["string", "null"] },
+ "postalCode": {"description": "Postal code for address", "type": "string"},
+ "stateProvince": {"description": "State or province name for address", "type": "string"}
+ },
+ "required": ["address1", "city", "country", "name", "postalCode", "stateProvince"]
+ },
+ "minItems": 1
+ }
+ ]
+ },
+ "paymentMethods": {
+ "description": "Order.ShipTos level payment method details",
+ "type": ["array", "null"],
+ "items": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "amount": {
+ "description": "Total Amount. Required if MethodName specified",
+ "type": "number",
+ "format": "double"
+ },
+ "methodName": {
+ "description": "Name of payment method. Required if Payment Amount specified",
+ "type": "string"
+ }
+ },
+ "required": ["amount", "methodName"]
+ }
+ },
+ "pickPackHandlingFee": {
+ "description": "Sum of pick & pack handling fees for all Order.ShipTos",
+ "type": ["number", "null"],
+ "format": "double",
+ "minimum": 0
+ },
+ "poNumber": {
+ "description": "Purchase order number for Order. Maximum length 20 characters.",
+ "type": ["string", "null"],
+ "maxLength": 20
+ },
+ "rushOrder": {
+ "description": "True/false indicator if Order is expedited",
+ "type": ["boolean", "null"]
+ },
+ "shipTos": {
+ "description": "Order level ship to details. Required, must not be empty. Each item must have required address fields and a non-null key.",
+ "type": ["array", "null"],
+ "items": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "affiliateId": { "type": ["string", "null"] },
+ "omsShippingMethodId": {
+ "description": "Shipping method ID in the order management system",
+ "type": ["string", "null"],
+ "maxLength": 100
+ },
+ "referenceId": { "type": ["string", "null"] },
+ "sourceSystemShippingMethodId": { "type": ["string", "null"] },
+ "affiliateName": { "type": ["string", "null"] },
+ "comment": { "type": ["string", "null"] },
+ "costCenter": { "type": ["string", "null"] },
+ "creditCardFee": { "type": ["number", "null"], "format": "double" },
+ "dueDate": { "type": ["string", "null"] },
+ "key": {"type": "string"},
+ "orderFee": { "type": ["number", "null"], "format": "double" },
+ "paymentMethods": {
+ "type": ["array", "null"],
+ "items": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "amount": {
+ "description": "Total Amount. Required if MethodName specified",
+ "type": "number",
+ "format": "double"
+ },
+ "methodName": {
+ "description": "Name of payment method. Required if Payment Amount specified",
+ "type": "string"
+ }
+ },
+ "required": ["amount", "methodName"]
+ }
+ },
+ "pickPackHandlingFee": { "type": ["number", "null"], "format": "double" },
+ "poNumber": { "type": ["string", "null"] },
+ "rushFee": {
+ "description": "Rush fee applied to this ship to location",
+ "type": ["number", "null"],
+ "format": "double",
+ "minimum": 0
+ },
+ "rushOrder": { "type": ["boolean", "null"] },
+ "shipToAddress": {
+ "description": "Ship to addresses array for Order",
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "address1": {"description": "Address line 1 for address", "type": "string"},
+ "address2": { "description": "Address line 2 for address", "type": ["string", "null"] },
+ "address3": { "description": "Address line 3 for address", "type": ["string", "null"] },
+ "city": {"description": "City name for address", "type": "string"},
+ "company": { "description": "Company name for address", "type": ["string", "null"] },
+ "country": {"description": "Country name for address", "type": "string"},
+ "emailAddress": {
+ "description": "Contact email address for address",
+ "type": ["string", "null"]
+ },
+ "faxNumber": { "description": "Fax number for address", "type": ["string", "null"] },
+ "name": {"type": "string"},
+ "phoneNumber": { "description": "Phone number for address", "type": ["string", "null"] },
+ "postalCode": {"description": "Postal code for address", "type": "string"},
+ "stateProvince": {"description": "State or province name for address", "type": "string"}
+ },
+ "required": ["address1", "city", "country", "name", "postalCode", "stateProvince"]
+ },
+ "shippingCarrier": { "description": "Shipping carrier name", "type": ["string", "null"] },
+ "shippingCost": { "type": ["number", "null"], "format": "double" },
+ "shippingHandlingTax": { "type": ["number", "null"], "format": "double" },
+ "shippingService": { "description": "Shipping service level", "type": ["string", "null"] },
+ "status": {
+ "description": "Current status of the ship to location",
+ "type": ["string", "null"]
+ },
+ "totalOrderFee": { "type": ["number", "null"], "format": "double" }
+ },
+ "required": ["key"]
+ },
+ "minItems": 1,
+ "uniqueItems": false
+ },
+ "shippingHandlingTax": {
+ "description": "Sum of shipping & handling taxes for all Order.ShipTos. Required, must not be null.",
+ "type": "number",
+ "format": "double",
+ "minimum": 0
+ },
+ "statuses": {
+ "description": "Array of status values for the order",
+ "type": ["array", "null"],
+ "items": {"type": "string"}
+ },
+ "totalOrderFee": {
+ "description": "Sum of OrderFee",
+ "type": ["number", "null"],
+ "format": "double",
+ "minimum": 0
+ },
+ "totalShippingCost": {
+ "description": "Sum of shipping cost for all Order.ShipTos.Shipments",
+ "type": ["number", "null"],
+ "format": "double",
+ "minimum": 0
+ }
+ },
+ "required": [
+ "orderId", "sourceSystemCustomerId", "sourceSystemId", "createDateTime",
+ "lineItems", "billTos", "shipTos"
+ ],
+ "allOf": [
+ {
+ "description": "Either a defaultBillToKey must be provided, or the billTos array must be populated.",
+ "oneOf": [
+ {
+ "properties": { "defaultBillToKey": {"type": "string"} },
+ "required": ["defaultBillToKey"]
+ },
+ {
+ "properties": { "billTos": {"type": "array", "minItems": 1} },
+ "required": ["billTos"]
+ }
+ ]
+ },
+ {
+ "description": "Either a defaultShipToKey must be provided, or the shipTos array must be populated.",
+ "oneOf": [
+ {
+ "properties": { "defaultShipToKey": {"type": "string"} },
+ "required": ["defaultShipToKey"]
+ },
+ {
+ "properties": { "shipTos": {"type": "array", "minItems": 1} },
+ "required": ["shipTos"]
+ }
+ ]
+ },
+ {
+ "description": "If a defaultBillToKey is not provided at the root, each line item must specify a billToKey.",
+ "oneOf": [
+ {
+ "properties": { "defaultBillToKey": {"type": "string"} },
+ "required": ["defaultBillToKey"]
+ },
+ {
+ "properties": {
+ "lineItems": {
+ "type": ["array", "null"],
+ "items": {
+ "type": "object",
+ "properties": { "billToKey": {"type": "string"} },
+ "required": ["billToKey"]
+ }
+ }
+ }
+ }
+ ]
+ },
+ {
+ "description": "If a defaultShipToKey is not provided at the root, each line item must specify a shipToKey.",
+ "oneOf": [
+ {
+ "properties": { "defaultShipToKey": {"type": "string"} },
+ "required": ["defaultShipToKey"]
+ },
+ {
+ "properties": {
+ "lineItems": {
+ "type": ["array", "null"],
+ "items": { "properties": { "shipToKey": {"type": "string"} }, "required": ["shipToKey"] }
+ }
+ }
+ }
+ ]
+ },
+ {
+ "description": "If a defaultOrderedByKey is not provided at the root, each line item must specify an orderedByKey.",
+ "oneOf": [
+ {
+ "properties": { "defaultOrderedByKey": {"type": "string"} },
+ "required": ["defaultOrderedByKey"]
+ },
+ {
+ "properties": {
+ "lineItems": {
+ "type": ["array", "null"],
+ "items": {
+ "properties": { "orderedByKey": {"type": "string"} },
+ "required": ["orderedByKey"]
+ }
+ }
+ }
+ },
+ {
+ "properties": {
+ "defaultOrderedByKey": {"type": "null"},
+ "orderedBys": { "oneOf": [ {"type": "null"}, {"type": "array", "maxItems": 0} ] }
+ },
+ "required": ["defaultOrderedByKey", "orderedBys"]
+ }
+ ]
+ },
+ {
+ "properties": {
+ "lineItems": {
+ "type": ["array", "null"],
+ "items": {
+ "type": "object",
+ "properties": { "offerLineNumber": {"type": "string", "minLength": 1} },
+ "required": ["offerLineNumber"]
+ }
+ }
+ }
+ }
+ ],
+ "examples": []
+ },
+ "failureMessages": { "type": "array", "items": {"type": "string"} },
+ "informationalMessages": { "type": "array", "items": {"type": "string"} },
+ "operationWasSuccessful": {"type": "boolean"}
+ },
+ "required": ["failureMessages", "informationalMessages", "operationWasSuccessful", "data"],
+ "examples": [
+ {
+ "data": {
+ "orderId": "7-mkkutsde-3-K-5649-4005-64",
+ "referenceId": "OWMR WSKFA - LNSSZT XBUUJ & MS XXQ QCHX",
+ "sourceSystemCustomerId": "Big Chicken",
+ "sourceSystemId": 2,
+ "accessGroups": ["TS-Retail", "CDM Tuff Shed", "Tuff shed Act on behalf and see all orders"],
+ "affiliateIdentifier": "QJ-987",
+ "affiliateName": "UJ-143-ABWJINHFVL, QD",
+ "billTos": [
+ {
+ "address1": "16013 Valenzuela Turnpike",
+ "address2": null,
+ "address3": null,
+ "city": "Rosaleshaven",
+ "company": "Rosales-Shea",
+ "country": "USA",
+ "emailAddress": "chelseamiller@example.org",
+ "faxNumber": "",
+ "key": "0",
+ "name": "Gail Stewart",
+ "phoneNumber": "411-770-8380",
+ "postalCode": "12507",
+ "stateProvince": "Washington"
+ }
+ ],
+ "costCenter": "020 - Denver",
+ "createDateTime": "2025-02-28T20:37:42.018+00:00",
+ "creditCardFee": 0.0,
+ "defaultBillToKey": null,
+ "defaultOrderedByKey": null,
+ "defaultShipToKey": null,
+ "dueDate": null,
+ "lineItems": [
+ {
+ "offerId": "t87grb75-e9pe-5405-y8yv-25n5q70bu93i",
+ "referenceId": "BEHZ QUJNS - TPGJXT MMGVN & UX ZDN HHQS",
+ "variableTemplatePrintId": null,
+ "additionalProperties": [],
+ "billToKey": "0",
+ "comment": null,
+ "costCenter": "020 - Denver",
+ "dueDate": null,
+ "lineItemFee": 0.75,
+ "offerDescription": "<p>$17.00 Each \u2013 S - XL<br>\n$20.00 Each \u2013 2XL - XLarge/Tall Sizes<br>\n$21.50 Each \u2013 3XL - 2XLarge/Tall sizes<br>$25.00 Each - 4XL Sizes - 3XL tall <br>$35.00 Each - 5XL Sizes<br><br></p>",
+ "offerLineNumber": "0",
+ "offerNumber": "TS_A-A0050",
+ "orderedByKey": "0",
+ "poNumber": null,
+ "price": 17.0,
+ "products": [
+ {
+ "productId": "3j8hu98q-s0t6-409v-029r-321r0uo02k30",
+ "associatedFileName": "",
+ "color": null,
+ "comment": null,
+ "components": [],
+ "productDescription": "8\"x8\" square paint swatch.",
+ "productLineNumber": "1",
+ "productNumber": "R_962_24008_TSO",
+ "productOwner": null,
+ "quantityOrdered": null,
+ "size": null
+ },
+ {
+ "productId": "7jv34sz5-m4q8-8q8f-187d-jt7791j02958",
+ "associatedFileName": "",
+ "color": null,
+ "comment": null,
+ "components": [],
+ "productDescription": "Tuff Shed Men's Polo",
+ "productLineNumber": "2",
+ "productNumber": "TS_A-A0050",
+ "productOwner": null,
+ "quantityOrdered": null,
+ "size": null
+ }
+ ],
+ "quantityOrdered": 1,
+ "rushOrder": false,
+ "shipToKey": "0",
+ "taxAmount": 0.0
+ }
+ ],
+ "orderFee": 4.0,
+ "orderVariables": {},
+ "orderedBys": [
+ {
+ "address1": "42801 Pamela Run",
+ "address2": null,
+ "address3": null,
+ "city": "Port Rickside",
+ "company": "Trujillo-Sims",
+ "country": "USA",
+ "emailAddress": "jonesjeff@example.net",
+ "faxNumber": "",
+ "key": "0",
+ "name": "Benjamin Smith",
+ "phoneNumber": "+1-310-761-3615x7115",
+ "postalCode": "10330",
+ "stateProvince": "California"
+ }
+ ],
+ "paymentMethods": [ {"amount": 35.8, "methodName": "invoice"} ],
+ "pickPackHandlingFee": 0.75,
+ "poNumber": null,
+ "rushOrder": false,
+ "shipTos": [
+ {
+ "affiliateId": "EK-023",
+ "referenceId": "QGSN VNSAH - PWJRVG OCYIA & PG GAE RZTN",
+ "sourceSystemShippingMethodId": "qnigy_cxdcmo",
+ "affiliateName": "JK-467-WLTQIEOCCZ, PA",
+ "comment": null,
+ "costCenter": "020 - Denver",
+ "creditCardFee": 0.0,
+ "dueDate": null,
+ "key": "0",
+ "orderFee": 4.0,
+ "paymentMethods": [],
+ "pickPackHandlingFee": 0.75,
+ "poNumber": null,
+ "rushOrder": false,
+ "shipToAddress": {
+ "address1": "130 Owen Gateway",
+ "address2": null,
+ "address3": null,
+ "city": "Arthurborough",
+ "company": "Bryant-Compton",
+ "country": "USA",
+ "emailAddress": "yduran@example.com",
+ "faxNumber": "",
+ "name": "Patricia Parker",
+ "phoneNumber": "317.410.1217",
+ "postalCode": "96718",
+ "stateProvince": "Georgia"
+ },
+ "shippingCost": 13.66,
+ "shippingHandlingTax": 0.39,
+ "totalOrderFee": 4.0
+ }
+ ],
+ "shippingHandlingTax": 0.39,
+ "totalOrderFee": 4.0,
+ "totalShippingCost": 13.66
+ },
+ "failureMessages": [],
+ "informationalMessages": [],
+ "operationWasSuccessful": true
+ },
+ {
+ "data": {
+ "orderId": "1-qrhjtpek-8-Q-0286-8859-25",
+ "referenceId": "WUQD HWKPE - XIWHAC BTVOM & BH WAK DXRI",
+ "sourceSystemCustomerId": "Big Chicken",
+ "sourceSystemId": 2,
+ "accessGroups": ["TS-Retail", "CDM Tuff Shed", "Tuff shed Act on behalf and see all orders"],
+ "affiliateIdentifier": "VJ-268",
+ "affiliateName": "GZ-589-WUOFETGVLG, RM",
+ "billTos": [
+ {
+ "address1": "547 James Ports",
+ "address2": null,
+ "address3": null,
+ "city": "Angelastad",
+ "company": "Jones-Hurst",
+ "country": "USA",
+ "emailAddress": "rjohnson@example.net",
+ "faxNumber": "",
+ "key": "0",
+ "name": "Joseph Hayes",
+ "phoneNumber": "001-226-553-1291x1555",
+ "postalCode": "68236",
+ "stateProvince": "Missouri"
+ }
+ ],
+ "costCenter": "020 - Denver",
+ "createDateTime": "2025-02-28T20:37:42.018+00:00",
+ "creditCardFee": 0.0,
+ "defaultBillToKey": null,
+ "defaultOrderedByKey": null,
+ "defaultShipToKey": null,
+ "dueDate": null,
+ "lineItems": [
+ {
+ "offerId": "s59otw94-k6go-1114-c6ja-17q7i68pu06t",
+ "referenceId": "VNMV APSLE - GMGDGG ELXCC & VS FUP NCHR",
+ "variableTemplatePrintId": null,
+ "additionalProperties": [],
+ "billToKey": "0",
+ "comment": null,
+ "costCenter": "020 - Denver",
+ "dueDate": null,
+ "lineItemFee": 0.75,
+ "offerDescription": "<p>$17.00 Each \u2013 S - XL<br>\n$20.00 Each \u2013 2XL - XLarge/Tall Sizes<br>\n$21.50 Each \u2013 3XL - 2XLarge/Tall sizes<br>$25.00 Each - 4XL Sizes - 3XL tall <br>$35.00 Each - 5XL Sizes<br><br></p>",
+ "offerLineNumber": "0",
+ "offerNumber": "TS_A-A0050",
+ "orderedByKey": "0",
+ "poNumber": null,
+ "price": 17.0,
+ "products": [
+ {
+ "productId": "1t6xb26e-g4n3-882j-217s-200f1fp92e83",
+ "associatedFileName": "",
+ "color": null,
+ "comment": null,
+ "components": [],
+ "productDescription": "8\"x8\" square paint swatch.",
+ "productLineNumber": "1",
+ "productNumber": "R_962_24008_TSO",
+ "productOwner": null,
+ "quantityOrdered": null,
+ "size": null
+ },
+ {
+ "productId": "3sn29wd7-z0g3-5z6f-133y-yt7327a65247",
+ "associatedFileName": "",
+ "color": null,
+ "comment": null,
+ "components": [],
+ "productDescription": "Tuff Shed Men's Polo",
+ "productLineNumber": "2",
+ "productNumber": "TS_A-A0050",
+ "productOwner": null,
+ "quantityOrdered": null,
+ "size": null
+ }
+ ],
+ "quantityOrdered": 1,
+ "rushOrder": false,
+ "shipToKey": "0",
+ "taxAmount": 0.0
+ }
+ ],
+ "orderFee": 4.0,
+ "orderVariables": {},
+ "orderedBys": [
+ {
+ "address1": "6084 Stephanie Lodge",
+ "address2": null,
+ "address3": null,
+ "city": "South Donald",
+ "company": "Mccullough Group",
+ "country": "USA",
+ "emailAddress": "murphytracy@example.net",
+ "faxNumber": "",
+ "key": "0",
+ "name": "Joshua Pena",
+ "phoneNumber": "898-997-8385x11658",
+ "postalCode": "44793",
+ "stateProvince": "Alaska"
+ }
+ ],
+ "paymentMethods": [ {"amount": 35.8, "methodName": "invoice"} ],
+ "pickPackHandlingFee": 0.75,
+ "poNumber": null,
+ "rushOrder": false,
+ "shipTos": [
+ {
+ "affiliateId": "XU-170",
+ "referenceId": "ZVZT XMPKV - IZQTEP WTIUT & UL QCX WPSI",
+ "sourceSystemShippingMethodId": "bzman_ehfsxc",
+ "affiliateName": "EH-565-JEYFOGBQJW, UU",
+ "comment": null,
+ "costCenter": "020 - Denver",
+ "creditCardFee": 0.0,
+ "dueDate": null,
+ "key": "0",
+ "orderFee": 4.0,
+ "paymentMethods": [],
+ "pickPackHandlingFee": 0.75,
+ "poNumber": null,
+ "rushOrder": false,
+ "shipToAddress": {
+ "address1": "9947 Rich Estate",
+ "address2": null,
+ "address3": null,
+ "city": "North Megan",
+ "company": "Lewis, Pierce and Alvarez",
+ "country": "USA",
+ "emailAddress": "freemanrobert@example.com",
+ "faxNumber": "",
+ "name": "Zachary Gilbert",
+ "phoneNumber": "001-937-677-3517x2443",
+ "postalCode": "49875",
+ "stateProvince": "Ohio"
+ },
+ "shippingCost": 13.66,
+ "shippingHandlingTax": 0.39,
+ "totalOrderFee": 4.0
+ }
+ ],
+ "shippingHandlingTax": 0.39,
+ "totalOrderFee": 4.0,
+ "totalShippingCost": 13.66
+ },
+ "failureMessages": [],
+ "informationalMessages": [],
+ "operationWasSuccessful": true
+ }
+ ]
+}
diff --git a/schema/Api/OrderBroker/InternalNewOrderRequest.json b/schema/Api/OrderBroker/InternalNewOrderRequest.json
index 0114fa5..c808714 100644
--- a/schema/Api/OrderBroker/InternalNewOrderRequest.json
+++ b/schema/Api/OrderBroker/InternalNewOrderRequest.json
@@ -9,39 +9,30 @@
"description": "Unique ID for order within order management system (system where order lifecycle will be managed). Required, must not be null or empty.",
"type": "string",
"maxLength": 100,
- "minLength": 1,
- "examples": ["123456789"]
+ "minLength": 1
},
- "referenceId": { "type": ["string", "null"], "maxLength": 255, "examples": ["REF123456"] },
+ "referenceId": { "type": ["string", "null"], "maxLength": 255 },
"sourceSystemCustomerId": {
"description": "Unique customer ID in the source system. Required, must not be null or empty.",
"type": "string",
"maxLength": 100,
- "minLength": 1,
- "examples": ["CUST123456"]
+ "minLength": 1
},
"sourceSystemId": {
"description": "Source system ID. Required, must not be null.",
"type": "integer",
- "format": "int32",
- "examples": [2, 12]
- },
- "accessGroups": {
- "type": ["array", "null"],
- "items": {"type": "string"},
- "examples": [ ["Group1", "Group2"] ]
+ "format": "int32"
},
+ "accessGroups": { "type": ["array", "null"], "items": {"type": "string"} },
"affiliateIdentifier": {
"description": "Unique ID for affiliate within source system (system where order was originally placed)",
"type": ["string", "null"],
- "maxLength": 100,
- "examples": ["AFF123456"]
+ "maxLength": 100
},
"affiliateName": {
"description": "Name for affiliate within source system (system where order was originally placed)",
"type": ["string", "null"],
- "maxLength": 255,
- "examples": ["Affiliate Name"]
+ "maxLength": 255
},
"billTos": {
"description": "Bill to addresses array for Order. Required, must not be empty. Each item must have required address fields and a non-null key.",
@@ -64,7 +55,7 @@
"type": ["string", "null"]
},
"faxNumber": { "description": "Fax number for address", "type": ["string", "null"] },
- "key": {"type": "integer", "format": "int32"},
+ "key": {"description": "Unique ID for individual contact", "type": "string"},
"name": {"description": "Contact name for this address", "type": "string"},
"phoneNumber": { "description": "Phone number for address", "type": ["string", "null"] },
"postalCode": {"description": "Postal code for address", "type": "string"},
@@ -74,58 +65,30 @@
},
"minItems": 1
}
- ],
- "examples": [
- {
- "address1": "106 Tyler Street Suite 175",
- "address2": "3181 George Vista",
- "address3": "",
- "city": "West Savannahside",
- "company": "Matthews, Mclean and Huynh",
- "country": "USA",
- "emailAddress": "ghunt@example.com",
- "faxNumber": "",
- "key": 0,
- "name": "Kristin Tyler",
- "phoneNumber": "001-990-377-8647x21426",
- "postalCode": "69532",
- "stateProvince": "Idaho"
- }
]
},
- "costCenter": { "type": ["string", "null"], "maxLength": 255, "examples": ["CC123456"] },
+ "costCenter": { "type": ["string", "null"], "maxLength": 255 },
"createDateTime": {
"description": "Datetime of when order was created",
- "type": ["string", "null"],
- "examples": ["2024-03-20T10:30:00Z"]
+ "type": ["string", "null"]
},
"creditCardFee": {
"description": "Credit card transaction fee applied to Order",
"type": ["number", "null"],
"format": "double",
- "minimum": 0,
- "examples": [2.5]
+ "minimum": 0
},
"defaultBillToKey": {
"description": "Unique ID for default billing contact details pulled from Order.BillTos.Key property (Only if applicable. Otherwise DefaultBillToKey will be null/empty value) (NOTE: If this value is not set, BillToKey must be set on all line items.)",
- "type": ["integer", "null"],
- "format": "int32",
- "minimum": 0,
- "examples": [1]
+ "type": ["string", "null"]
},
"defaultOrderedByKey": {
"description": "Unique ID for default ordered by contact details pulled from Order.OrderedBy.Key property (Only if applicable. Otherwise DefaultOrderedByKey will be null/empty value)",
- "type": ["integer", "null"],
- "format": "int32",
- "minimum": 0,
- "examples": [1]
+ "type": ["string", "null"]
},
"defaultShipToKey": {
"description": "Unique ID for default ship to contact pulled from Order.ShipTos.Key property (Only if applicable. Otherwise DefaultShipToKey will be null/empty value) (NOTE: If this value is not set, ShipToKey must be set on all line items.)",
- "type": ["integer", "null"],
- "format": "int32",
- "minimum": 0,
- "examples": [1]
+ "type": ["string", "null"]
},
"dueDate": {
"description": "Datetime of expected due date for Order. If present, must be a valid date and not in the past (enforced in backend).",
@@ -166,8 +129,7 @@
},
"billToKey": {
"description": "Unique ID for Order.BillTos.Key property associated to individual line item (NOTE: If top-level DefaultBillToKey is not set, this must be.)",
- "type": ["integer", "null"],
- "format": "int32"
+ "type": ["string", "null"]
},
"comment": {
"description": "Manually entered comment for individual line item",
@@ -197,8 +159,7 @@
},
"orderedByKey": {
"description": "Unique ID for Order.OrderedBy.Key property associated to individual line item",
- "type": ["integer", "null"],
- "format": "int32"
+ "type": ["string", "null"]
},
"poNumber": {
"description": "Purchase order number for individual line item",
@@ -280,7 +241,7 @@
},
"quantityOrdered": {
"description": "Amount of offer ordered for individual line item",
- "type": "integer",
+ "type": ["integer", "null"],
"format": "int32"
},
"rushOrder": {
@@ -289,8 +250,7 @@
},
"shipToKey": {
"description": "Unique ID for Order.ShipTos.Key property associated to individual line item (NOTE: If top-level DefaultShipToKey is not set, this must be.)",
- "type": ["integer", "null"],
- "format": "int32"
+ "type": ["string", "null"]
},
"taxAmount": {
"description": "Total tax amount applied to individual line item",
@@ -298,29 +258,16 @@
"format": "double"
}
},
- "required": ["lineItemFee", "price", "quantityOrdered"]
+ "required": ["offerId"]
},
"minItems": 1,
- "uniqueItems": false,
- "examples": [
- [
- {
- "offerId": "OFFER123",
- "billToKey": 1,
- "offerLineNumber": "1",
- "quantity": 1,
- "shipToKey": 1,
- "unitPrice": 99.99
- }
- ]
- ]
+ "uniqueItems": false
},
"orderFee": {
"description": "Fee applied to Order",
"type": ["number", "null"],
"format": "double",
- "minimum": 0,
- "examples": [5.0]
+ "minimum": 0
},
"orderVariables": {
"description": "Manually entered variables for order within order management system (system where order lifecycle will be managed in)",
@@ -328,7 +275,6 @@
},
"orderedBys": {
"description": "Order level ordered by contact and address details. Not required, but if present, each item must have required address fields and a non-null key.",
- "type": ["array", "null"],
"oneOf": [
{"type": "null"},
{
@@ -349,11 +295,7 @@
"type": ["string", "null"]
},
"faxNumber": { "description": "Fax number for address", "type": ["string", "null"] },
- "key": {
- "description": "Unique ID for individual contact",
- "type": "integer",
- "format": "int32"
- },
+ "key": {"description": "Unique ID for individual contact", "type": "string"},
"name": {"type": "string"},
"phoneNumber": { "description": "Phone number for address", "type": ["string", "null"] },
"postalCode": {"description": "Postal code for address", "type": "string"},
@@ -363,22 +305,6 @@
},
"minItems": 1
}
- ],
- "examples": [
- {
- "address1": "106 Tyler Street Suite 175",
- "address2": "3181 George Vista",
- "address3": "",
- "city": "West Savannahside",
- "company": "Matthews, Mclean and Huynh",
- "country": "USA",
- "emailAddress": "ghunt@example.com",
- "faxNumber": "",
- "key": 0,
- "phoneNumber": "001-990-377-8647x21426",
- "postalCode": "02019",
- "stateProvince": "Idaho"
- }
]
},
"paymentMethods": {
@@ -399,36 +325,22 @@
}
},
"required": ["amount", "methodName"]
- },
- "examples": [
- [
- {
- "type": "CREDIT_CARD",
- "amount": 99.99,
- "cardNumber": "4111111111111111",
- "cvv": "123",
- "expirationDate": "12/25"
- }
- ]
- ]
+ }
},
"pickPackHandlingFee": {
"description": "Sum of pick & pack handling fees for all Order.ShipTos",
"type": ["number", "null"],
"format": "double",
- "minimum": 0,
- "examples": [3.5]
+ "minimum": 0
},
"poNumber": {
"description": "Purchase order number for Order. Maximum length 20 characters.",
"type": ["string", "null"],
- "maxLength": 20,
- "examples": ["PO123456"]
+ "maxLength": 20
},
"rushOrder": {
"description": "True/false indicator if Order is expedited",
- "type": ["boolean", "null"],
- "examples": [true]
+ "type": ["boolean", "null"]
},
"shipTos": {
"description": "Order level ship to details. Required, must not be empty. Each item must have required address fields and a non-null key.",
@@ -445,7 +357,7 @@
"costCenter": { "type": ["string", "null"] },
"creditCardFee": { "type": ["number", "null"], "format": "double" },
"dueDate": { "type": ["string", "null"] },
- "key": {"type": "integer", "format": "int32"},
+ "key": {"type": "string"},
"orderFee": { "type": ["number", "null"], "format": "double" },
"paymentMethods": {
"type": ["array", "null"],
@@ -499,57 +411,34 @@
"required": ["key"]
},
"minItems": 1,
- "uniqueItems": false,
- "examples": [
- [
- {
- "address": {
- "address1": "123 Main St",
- "city": "Anytown",
- "country": "US",
- "postalCode": "12345",
- "state": "CA"
- },
- "email": "john.doe@example.com",
- "key": 1,
- "name": "John Doe",
- "phone": "123-456-7890"
- }
- ]
- ]
+ "uniqueItems": false
},
"shippingHandlingTax": {
"description": "Sum of shipping & handling taxes for all Order.ShipTos. Required, must not be null.",
"type": "number",
"format": "double",
- "minimum": 0,
- "examples": [8.5]
+ "minimum": 0
},
"totalOrderFee": {
"description": "Sum of OrderFee",
"type": ["number", "null"],
"format": "double",
- "minimum": 0,
- "examples": [5.0]
+ "minimum": 0
},
"totalShippingCost": {
"description": "Sum of shipping cost for all Order.ShipTos.Shipments",
"type": ["number", "null"],
"format": "double",
- "minimum": 0,
- "examples": [10.0]
+ "minimum": 0
}
},
- "required": [
- "orderId", "sourceSystemCustomerId", "sourceSystemId", "createDateTime",
- "lineItems", "shippingHandlingTax", "billTos", "shipTos"
- ],
+ "required": ["orderId", "createDateTime", "lineItems", "billTos", "shipTos"],
"allOf": [
{
"description": "Either a defaultBillToKey must be provided, or the billTos array must be populated.",
"oneOf": [
{
- "properties": { "defaultBillToKey": {"type": "integer"} },
+ "properties": { "defaultBillToKey": {"type": "string"} },
"required": ["defaultBillToKey"]
},
{
@@ -562,7 +451,7 @@
"description": "Either a defaultShipToKey must be provided, or the shipTos array must be populated.",
"oneOf": [
{
- "properties": { "defaultShipToKey": {"type": "integer"} },
+ "properties": { "defaultShipToKey": {"type": "string"} },
"required": ["defaultShipToKey"]
},
{
@@ -575,7 +464,7 @@
"description": "If a defaultBillToKey is not provided at the root, each line item must specify a billToKey.",
"oneOf": [
{
- "properties": { "defaultBillToKey": {"type": "integer"} },
+ "properties": { "defaultBillToKey": {"type": "string"} },
"required": ["defaultBillToKey"]
},
{
@@ -584,7 +473,7 @@
"type": ["array", "null"],
"items": {
"type": "object",
- "properties": { "billToKey": {"type": "integer", "minimum": 0} },
+ "properties": { "billToKey": {"type": "string"} },
"required": ["billToKey"]
}
}
@@ -596,17 +485,14 @@
"description": "If a defaultShipToKey is not provided at the root, each line item must specify a shipToKey.",
"oneOf": [
{
- "properties": { "defaultShipToKey": {"type": "integer"} },
+ "properties": { "defaultShipToKey": {"type": "string"} },
"required": ["defaultShipToKey"]
},
{
"properties": {
"lineItems": {
"type": ["array", "null"],
- "items": {
- "properties": { "shipToKey": {"type": "integer", "minimum": 0} },
- "required": ["shipToKey"]
- }
+ "items": { "properties": { "shipToKey": {"type": "string"} }, "required": ["shipToKey"] }
}
}
}
@@ -616,7 +502,7 @@
"description": "If a defaultOrderedByKey is not provided at the root, each line item must specify an orderedByKey.",
"oneOf": [
{
- "properties": { "defaultOrderedByKey": {"type": "integer"} },
+ "properties": { "defaultOrderedByKey": {"type": "string"} },
"required": ["defaultOrderedByKey"]
},
{
@@ -624,7 +510,7 @@
"lineItems": {
"type": ["array", "null"],
"items": {
- "properties": { "orderedByKey": {"type": "integer", "minimum": 0} },
+ "properties": { "orderedByKey": {"type": "string"} },
"required": ["orderedByKey"]
}
}
@@ -656,7 +542,7 @@
{
"orderId": "7-mkkutsde-3-K-5649-4005-64",
"referenceId": "OWMR WSKFA - LNSSZT XBUUJ & MS XXQ QCHX",
- "sourceSystemCustomerId": "Big Chicken",
+ "sourceSystemCustomerId": "CustomerName",
"sourceSystemId": 2,
"accessGroups": ["TS-Retail", "CDM Tuff Shed", "Tuff shed Act on behalf and see all orders"],
"affiliateIdentifier": "QJ-987",
@@ -671,7 +557,7 @@
"country": "USA",
"emailAddress": "chelseamiller@example.org",
"faxNumber": "",
- "key": 0,
+ "key": "0",
"name": "Gail Stewart",
"phoneNumber": "411-770-8380",
"postalCode": "12507",
@@ -681,9 +567,6 @@
"costCenter": "020 - Denver",
"createDateTime": "2025-02-28T20:37:42.018+00:00",
"creditCardFee": 0.0,
- "defaultBillToKey": null,
- "defaultOrderedByKey": null,
- "defaultShipToKey": null,
"dueDate": null,
"lineItems": [
{
@@ -691,7 +574,7 @@
"referenceId": "BEHZ QUJNS - TPGJXT MMGVN & UX ZDN HHQS",
"variableTemplatePrintId": null,
"additionalProperties": [],
- "billToKey": 0,
+ "billToKey": "0",
"comment": null,
"costCenter": "020 - Denver",
"dueDate": null,
@@ -699,7 +582,7 @@
"offerDescription": "<p>$17.00 Each \u2013 S - XL<br>\n$20.00 Each \u2013 2XL - XLarge/Tall Sizes<br>\n$21.50 Each \u2013 3XL - 2XLarge/Tall sizes<br>$25.00 Each - 4XL Sizes - 3XL tall <br>$35.00 Each - 5XL Sizes<br><br></p>",
"offerLineNumber": "0",
"offerNumber": "TS_A-A0050",
- "orderedByKey": 0,
+ "orderedByKey": "0",
"poNumber": null,
"price": 17.0,
"products": [
@@ -732,7 +615,7 @@
],
"quantityOrdered": 1,
"rushOrder": false,
- "shipToKey": 0,
+ "shipToKey": "0",
"taxAmount": 0.0
}
],
@@ -748,7 +631,7 @@
"country": "USA",
"emailAddress": "jonesjeff@example.net",
"faxNumber": "",
- "key": 0,
+ "key": "0",
"name": "Benjamin Smith",
"phoneNumber": "+1-310-761-3615x7115",
"postalCode": "10330",
@@ -769,7 +652,7 @@
"costCenter": "020 - Denver",
"creditCardFee": 0.0,
"dueDate": null,
- "key": 0,
+ "key": "0",
"orderFee": 4.0,
"paymentMethods": [],
"pickPackHandlingFee": 0.75,
@@ -801,7 +684,7 @@
{
"orderId": "1-qrhjtpek-8-Q-0286-8859-25",
"referenceId": "WUQD HWKPE - XIWHAC BTVOM & BH WAK DXRI",
- "sourceSystemCustomerId": "Big Chicken",
+ "sourceSystemCustomerId": "CustomerName",
"sourceSystemId": 2,
"accessGroups": ["TS-Retail", "CDM Tuff Shed", "Tuff shed Act on behalf and see all orders"],
"affiliateIdentifier": "VJ-268",
@@ -816,7 +699,7 @@
"country": "USA",
"emailAddress": "rjohnson@example.net",
"faxNumber": "",
- "key": 0,
+ "key": "0",
"name": "Joseph Hayes",
"phoneNumber": "001-226-553-1291x1555",
"postalCode": "68236",
@@ -826,9 +709,6 @@
"costCenter": "020 - Denver",
"createDateTime": "2025-02-28T20:37:42.018+00:00",
"creditCardFee": 0.0,
- "defaultBillToKey": null,
- "defaultOrderedByKey": null,
- "defaultShipToKey": null,
"dueDate": null,
"lineItems": [
{
@@ -836,7 +716,7 @@
"referenceId": "VNMV APSLE - GMGDGG ELXCC & VS FUP NCHR",
"variableTemplatePrintId": null,
"additionalProperties": [],
- "billToKey": 0,
+ "billToKey": "0",
"comment": null,
"costCenter": "020 - Denver",
"dueDate": null,
@@ -844,7 +724,7 @@
"offerDescription": "<p>$17.00 Each \u2013 S - XL<br>\n$20.00 Each \u2013 2XL - XLarge/Tall Sizes<br>\n$21.50 Each \u2013 3XL - 2XLarge/Tall sizes<br>$25.00 Each - 4XL Sizes - 3XL tall <br>$35.00 Each - 5XL Sizes<br><br></p>",
"offerLineNumber": "0",
"offerNumber": "TS_A-A0050",
- "orderedByKey": 0,
+ "orderedByKey": "0",
"poNumber": null,
"price": 17.0,
"products": [
@@ -877,7 +757,7 @@
],
"quantityOrdered": 1,
"rushOrder": false,
- "shipToKey": 0,
+ "shipToKey": "0",
"taxAmount": 0.0
}
],
@@ -893,7 +773,7 @@
"country": "USA",
"emailAddress": "murphytracy@example.net",
"faxNumber": "",
- "key": 0,
+ "key": "0",
"name": "Joshua Pena",
"phoneNumber": "898-997-8385x11658",
"postalCode": "44793",
@@ -914,7 +794,7 @@
"costCenter": "020 - Denver",
"creditCardFee": 0.0,
"dueDate": null,
- "key": 0,
+ "key": "0",
"orderFee": 4.0,
"paymentMethods": [],
"pickPackHandlingFee": 0.75,
diff --git a/schema/Api/OrderBroker/NewOrderRequest.json b/schema/Api/OrderBroker/NewOrderRequest.json
index aa3a24f..4020215 100644
--- a/schema/Api/OrderBroker/NewOrderRequest.json
+++ b/schema/Api/OrderBroker/NewOrderRequest.json
@@ -1,6 +1,6 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "InternalNewOrderRequest.json",
+ "$id": "NewOrderRequest.json",
"description": "Details for Order JSON schema. Conditional constraints (enforced in backend): If defaultBillToKey, defaultOrderedByKey, or defaultShipToKey are null, corresponding keys must be set on each line item. If defaultBillToKey, defaultOrderedByKey, or defaultShipToKey are not null, they must match a key in billTos, orderedBys, or shipTos respectively. OfferLineNumber, productLineNumber, and componentLineNumber values must be unique within their collections if provided.",
"type": "object",
"additionalProperties": false,
@@ -9,26 +9,19 @@
"description": "Unique ID for order within order management system (system where order lifecycle will be managed). Required, must not be null or empty.",
"type": "string",
"maxLength": 100,
- "minLength": 1,
- "examples": ["123456789"]
- },
- "referenceId": { "type": ["string", "null"], "maxLength": 255, "examples": ["REF123456"] },
- "accessGroups": {
- "type": ["array", "null"],
- "items": {"type": "string"},
- "examples": [ ["Group1", "Group2"] ]
+ "minLength": 1
},
+ "referenceId": { "type": ["string", "null"], "maxLength": 255 },
+ "accessGroups": { "type": ["array", "null"], "items": {"type": "string"} },
"affiliateIdentifier": {
"description": "Unique ID for affiliate within source system (system where order was originally placed)",
"type": ["string", "null"],
- "maxLength": 100,
- "examples": ["AFF123456"]
+ "maxLength": 100
},
"affiliateName": {
"description": "Name for affiliate within source system (system where order was originally placed)",
"type": ["string", "null"],
- "maxLength": 255,
- "examples": ["Affiliate Name"]
+ "maxLength": 255
},
"billTos": {
"description": "Bill to addresses array for Order. Required, must not be empty. Each item must have required address fields and a non-null key.",
@@ -51,7 +44,7 @@
"type": ["string", "null"]
},
"faxNumber": { "description": "Fax number for address", "type": ["string", "null"] },
- "key": {"type": "integer", "format": "int32"},
+ "key": {"description": "Unique ID for individual contact", "type": "string"},
"name": {"description": "Contact name for this address", "type": "string"},
"phoneNumber": { "description": "Phone number for address", "type": ["string", "null"] },
"postalCode": {"description": "Postal code for address", "type": "string"},
@@ -61,58 +54,30 @@
},
"minItems": 1
}
- ],
- "examples": [
- {
- "address1": "106 Tyler Street Suite 175",
- "address2": "3181 George Vista",
- "address3": "",
- "city": "West Savannahside",
- "company": "Matthews, Mclean and Huynh",
- "country": "USA",
- "emailAddress": "ghunt@example.com",
- "faxNumber": "",
- "key": 0,
- "name": "Kristin Tyler",
- "phoneNumber": "001-990-377-8647x21426",
- "postalCode": "69532",
- "stateProvince": "Idaho"
- }
]
},
- "costCenter": { "type": ["string", "null"], "maxLength": 255, "examples": ["CC123456"] },
+ "costCenter": { "type": ["string", "null"], "maxLength": 255 },
"createDateTime": {
"description": "Datetime of when order was created",
- "type": ["string", "null"],
- "examples": ["2024-03-20T10:30:00Z"]
+ "type": ["string", "null"]
},
"creditCardFee": {
"description": "Credit card transaction fee applied to Order",
"type": ["number", "null"],
"format": "double",
- "minimum": 0,
- "examples": [2.5]
+ "minimum": 0
},
"defaultBillToKey": {
"description": "Unique ID for default billing contact details pulled from Order.BillTos.Key property (Only if applicable. Otherwise DefaultBillToKey will be null/empty value) (NOTE: If this value is not set, BillToKey must be set on all line items.)",
- "type": ["integer", "null"],
- "format": "int32",
- "minimum": 0,
- "examples": [1]
+ "type": ["string", "null"]
},
"defaultOrderedByKey": {
"description": "Unique ID for default ordered by contact details pulled from Order.OrderedBy.Key property (Only if applicable. Otherwise DefaultOrderedByKey will be null/empty value)",
- "type": ["integer", "null"],
- "format": "int32",
- "minimum": 0,
- "examples": [1]
+ "type": ["string", "null"]
},
"defaultShipToKey": {
"description": "Unique ID for default ship to contact pulled from Order.ShipTos.Key property (Only if applicable. Otherwise DefaultShipToKey will be null/empty value) (NOTE: If this value is not set, ShipToKey must be set on all line items.)",
- "type": ["integer", "null"],
- "format": "int32",
- "minimum": 0,
- "examples": [1]
+ "type": ["string", "null"]
},
"dueDate": {
"description": "Datetime of expected due date for Order. If present, must be a valid date and not in the past (enforced in backend).",
@@ -153,8 +118,7 @@
},
"billToKey": {
"description": "Unique ID for Order.BillTos.Key property associated to individual line item (NOTE: If top-level DefaultBillToKey is not set, this must be.)",
- "type": ["integer", "null"],
- "format": "int32"
+ "type": ["string", "null"]
},
"comment": {
"description": "Manually entered comment for individual line item",
@@ -184,8 +148,7 @@
},
"orderedByKey": {
"description": "Unique ID for Order.OrderedBy.Key property associated to individual line item",
- "type": ["integer", "null"],
- "format": "int32"
+ "type": ["string", "null"]
},
"poNumber": {
"description": "Purchase order number for individual line item",
@@ -267,7 +230,7 @@
},
"quantityOrdered": {
"description": "Amount of offer ordered for individual line item",
- "type": "integer",
+ "type": ["integer", "null"],
"format": "int32"
},
"rushOrder": {
@@ -276,8 +239,7 @@
},
"shipToKey": {
"description": "Unique ID for Order.ShipTos.Key property associated to individual line item (NOTE: If top-level DefaultShipToKey is not set, this must be.)",
- "type": ["integer", "null"],
- "format": "int32"
+ "type": ["string", "null"]
},
"taxAmount": {
"description": "Total tax amount applied to individual line item",
@@ -285,29 +247,16 @@
"format": "double"
}
},
- "required": ["lineItemFee", "price", "quantityOrdered"]
+ "required": ["offerId"]
},
"minItems": 1,
- "uniqueItems": false,
- "examples": [
- [
- {
- "offerId": "OFFER123",
- "billToKey": 1,
- "offerLineNumber": "1",
- "quantity": 1,
- "shipToKey": 1,
- "unitPrice": 99.99
- }
- ]
- ]
+ "uniqueItems": false
},
"orderFee": {
"description": "Fee applied to Order",
"type": ["number", "null"],
"format": "double",
- "minimum": 0,
- "examples": [5.0]
+ "minimum": 0
},
"orderVariables": {
"description": "Manually entered variables for order within order management system (system where order lifecycle will be managed in)",
@@ -315,7 +264,6 @@
},
"orderedBys": {
"description": "Order level ordered by contact and address details. Not required, but if present, each item must have required address fields and a non-null key.",
- "type": ["array", "null"],
"oneOf": [
{"type": "null"},
{
@@ -336,11 +284,7 @@
"type": ["string", "null"]
},
"faxNumber": { "description": "Fax number for address", "type": ["string", "null"] },
- "key": {
- "description": "Unique ID for individual contact",
- "type": "integer",
- "format": "int32"
- },
+ "key": {"description": "Unique ID for individual contact", "type": "string"},
"name": {"type": "string"},
"phoneNumber": { "description": "Phone number for address", "type": ["string", "null"] },
"postalCode": {"description": "Postal code for address", "type": "string"},
@@ -350,22 +294,6 @@
},
"minItems": 1
}
- ],
- "examples": [
- {
- "address1": "106 Tyler Street Suite 175",
- "address2": "3181 George Vista",
- "address3": "",
- "city": "West Savannahside",
- "company": "Matthews, Mclean and Huynh",
- "country": "USA",
- "emailAddress": "ghunt@example.com",
- "faxNumber": "",
- "key": 0,
- "phoneNumber": "001-990-377-8647x21426",
- "postalCode": "02019",
- "stateProvince": "Idaho"
- }
]
},
"paymentMethods": {
@@ -386,36 +314,22 @@
}
},
"required": ["amount", "methodName"]
- },
- "examples": [
- [
- {
- "type": "CREDIT_CARD",
- "amount": 99.99,
- "cardNumber": "4111111111111111",
- "cvv": "123",
- "expirationDate": "12/25"
- }
- ]
- ]
+ }
},
"pickPackHandlingFee": {
"description": "Sum of pick & pack handling fees for all Order.ShipTos",
"type": ["number", "null"],
"format": "double",
- "minimum": 0,
- "examples": [3.5]
+ "minimum": 0
},
"poNumber": {
"description": "Purchase order number for Order. Maximum length 20 characters.",
"type": ["string", "null"],
- "maxLength": 20,
- "examples": ["PO123456"]
+ "maxLength": 20
},
"rushOrder": {
"description": "True/false indicator if Order is expedited",
- "type": ["boolean", "null"],
- "examples": [true]
+ "type": ["boolean", "null"]
},
"shipTos": {
"description": "Order level ship to details. Required, must not be empty. Each item must have required address fields and a non-null key.",
@@ -432,7 +346,7 @@
"costCenter": { "type": ["string", "null"] },
"creditCardFee": { "type": ["number", "null"], "format": "double" },
"dueDate": { "type": ["string", "null"] },
- "key": {"type": "integer", "format": "int32"},
+ "key": {"type": "string"},
"orderFee": { "type": ["number", "null"], "format": "double" },
"paymentMethods": {
"type": ["array", "null"],
@@ -486,57 +400,34 @@
"required": ["key"]
},
"minItems": 1,
- "uniqueItems": false,
- "examples": [
- [
- {
- "address": {
- "address1": "123 Main St",
- "city": "Anytown",
- "country": "US",
- "postalCode": "12345",
- "state": "CA"
- },
- "email": "john.doe@example.com",
- "key": 1,
- "name": "John Doe",
- "phone": "123-456-7890"
- }
- ]
- ]
+ "uniqueItems": false
},
"shippingHandlingTax": {
"description": "Sum of shipping & handling taxes for all Order.ShipTos. Required, must not be null.",
"type": "number",
"format": "double",
- "minimum": 0,
- "examples": [8.5]
+ "minimum": 0
},
"totalOrderFee": {
"description": "Sum of OrderFee",
"type": ["number", "null"],
"format": "double",
- "minimum": 0,
- "examples": [5.0]
+ "minimum": 0
},
"totalShippingCost": {
"description": "Sum of shipping cost for all Order.ShipTos.Shipments",
"type": ["number", "null"],
"format": "double",
- "minimum": 0,
- "examples": [10.0]
+ "minimum": 0
}
},
- "required": [
- "orderId", "createDateTime", "lineItems", "shippingHandlingTax", "billTos",
- "shipTos"
- ],
+ "required": ["orderId", "createDateTime", "lineItems", "billTos", "shipTos"],
"allOf": [
{
"description": "Either a defaultBillToKey must be provided, or the billTos array must be populated.",
"oneOf": [
{
- "properties": { "defaultBillToKey": {"type": "integer"} },
+ "properties": { "defaultBillToKey": {"type": "string"} },
"required": ["defaultBillToKey"]
},
{
@@ -549,7 +440,7 @@
"description": "Either a defaultShipToKey must be provided, or the shipTos array must be populated.",
"oneOf": [
{
- "properties": { "defaultShipToKey": {"type": "integer"} },
+ "properties": { "defaultShipToKey": {"type": "string"} },
"required": ["defaultShipToKey"]
},
{
@@ -562,7 +453,7 @@
"description": "If a defaultBillToKey is not provided at the root, each line item must specify a billToKey.",
"oneOf": [
{
- "properties": { "defaultBillToKey": {"type": "integer"} },
+ "properties": { "defaultBillToKey": {"type": "string"} },
"required": ["defaultBillToKey"]
},
{
@@ -571,7 +462,7 @@
"type": ["array", "null"],
"items": {
"type": "object",
- "properties": { "billToKey": {"type": "integer", "minimum": 0} },
+ "properties": { "billToKey": {"type": "string"} },
"required": ["billToKey"]
}
}
@@ -583,17 +474,14 @@
"description": "If a defaultShipToKey is not provided at the root, each line item must specify a shipToKey.",
"oneOf": [
{
- "properties": { "defaultShipToKey": {"type": "integer"} },
+ "properties": { "defaultShipToKey": {"type": "string"} },
"required": ["defaultShipToKey"]
},
{
"properties": {
"lineItems": {
"type": ["array", "null"],
- "items": {
- "properties": { "shipToKey": {"type": "integer", "minimum": 0} },
- "required": ["shipToKey"]
- }
+ "items": { "properties": { "shipToKey": {"type": "string"} }, "required": ["shipToKey"] }
}
}
}
@@ -603,7 +491,7 @@
"description": "If a defaultOrderedByKey is not provided at the root, each line item must specify an orderedByKey.",
"oneOf": [
{
- "properties": { "defaultOrderedByKey": {"type": "integer"} },
+ "properties": { "defaultOrderedByKey": {"type": "string"} },
"required": ["defaultOrderedByKey"]
},
{
@@ -611,7 +499,7 @@
"lineItems": {
"type": ["array", "null"],
"items": {
- "properties": { "orderedByKey": {"type": "integer", "minimum": 0} },
+ "properties": { "orderedByKey": {"type": "string"} },
"required": ["orderedByKey"]
}
}
@@ -656,7 +544,7 @@
"country": "USA",
"emailAddress": "chelseamiller@example.org",
"faxNumber": "",
- "key": 0,
+ "key": "0",
"name": "Gail Stewart",
"phoneNumber": "411-770-8380",
"postalCode": "12507",
@@ -666,9 +554,6 @@
"costCenter": "020 - Denver",
"createDateTime": "2025-02-28T20:37:42.018+00:00",
"creditCardFee": 0.0,
- "defaultBillToKey": null,
- "defaultOrderedByKey": null,
- "defaultShipToKey": null,
"dueDate": null,
"lineItems": [
{
@@ -676,7 +561,7 @@
"referenceId": "BEHZ QUJNS - TPGJXT MMGVN & UX ZDN HHQS",
"variableTemplatePrintId": null,
"additionalProperties": [],
- "billToKey": 0,
+ "billToKey": "0",
"comment": null,
"costCenter": "020 - Denver",
"dueDate": null,
@@ -684,7 +569,7 @@
"offerDescription": "<p>$17.00 Each \u2013 S - XL<br>\n$20.00 Each \u2013 2XL - XLarge/Tall Sizes<br>\n$21.50 Each \u2013 3XL - 2XLarge/Tall sizes<br>$25.00 Each - 4XL Sizes - 3XL tall <br>$35.00 Each - 5XL Sizes<br><br></p>",
"offerLineNumber": "0",
"offerNumber": "TS_A-A0050",
- "orderedByKey": 0,
+ "orderedByKey": "0",
"poNumber": null,
"price": 17.0,
"products": [
@@ -717,7 +602,7 @@
],
"quantityOrdered": 1,
"rushOrder": false,
- "shipToKey": 0,
+ "shipToKey": "0",
"taxAmount": 0.0
}
],
@@ -733,7 +618,7 @@
"country": "USA",
"emailAddress": "jonesjeff@example.net",
"faxNumber": "",
- "key": 0,
+ "key": "0",
"name": "Benjamin Smith",
"phoneNumber": "+1-310-761-3615x7115",
"postalCode": "10330",
@@ -754,7 +639,7 @@
"costCenter": "020 - Denver",
"creditCardFee": 0.0,
"dueDate": null,
- "key": 0,
+ "key": "0",
"orderFee": 4.0,
"paymentMethods": [],
"pickPackHandlingFee": 0.75,
@@ -799,7 +684,7 @@
"country": "USA",
"emailAddress": "rjohnson@example.net",
"faxNumber": "",
- "key": 0,
+ "key": "0",
"name": "Joseph Hayes",
"phoneNumber": "001-226-553-1291x1555",
"postalCode": "68236",
@@ -809,9 +694,6 @@
"costCenter": "020 - Denver",
"createDateTime": "2025-02-28T20:37:42.018+00:00",
"creditCardFee": 0.0,
- "defaultBillToKey": null,
- "defaultOrderedByKey": null,
- "defaultShipToKey": null,
"dueDate": null,
"lineItems": [
{
@@ -819,7 +701,7 @@
"referenceId": "VNMV APSLE - GMGDGG ELXCC & VS FUP NCHR",
"variableTemplatePrintId": null,
"additionalProperties": [],
- "billToKey": 0,
+ "billToKey": "0",
"comment": null,
"costCenter": "020 - Denver",
"dueDate": null,
@@ -827,7 +709,7 @@
"offerDescription": "<p>$17.00 Each \u2013 S - XL<br>\n$20.00 Each \u2013 2XL - XLarge/Tall Sizes<br>\n$21.50 Each \u2013 3XL - 2XLarge/Tall sizes<br>$25.00 Each - 4XL Sizes - 3XL tall <br>$35.00 Each - 5XL Sizes<br><br></p>",
"offerLineNumber": "0",
"offerNumber": "TS_A-A0050",
- "orderedByKey": 0,
+ "orderedByKey": "0",
"poNumber": null,
"price": 17.0,
"products": [
@@ -860,7 +742,7 @@
],
"quantityOrdered": 1,
"rushOrder": false,
- "shipToKey": 0,
+ "shipToKey": "0",
"taxAmount": 0.0
}
],
@@ -876,7 +758,7 @@
"country": "USA",
"emailAddress": "murphytracy@example.net",
"faxNumber": "",
- "key": 0,
+ "key": "0",
"name": "Joshua Pena",
"phoneNumber": "898-997-8385x11658",
"postalCode": "44793",
@@ -897,7 +779,7 @@
"costCenter": "020 - Denver",
"creditCardFee": 0.0,
"dueDate": null,
- "key": 0,
+ "key": "0",
"orderFee": 4.0,
"paymentMethods": [],
"pickPackHandlingFee": 0.75,
diff --git a/schema/Api/OrderBroker/UpdateFulfillmentOrderRequest.json b/schema/Api/OrderBroker/UpdateFulfillmentOrderRequest.json
index 16e8cd9..2f88a29 100644
--- a/schema/Api/OrderBroker/UpdateFulfillmentOrderRequest.json
+++ b/schema/Api/OrderBroker/UpdateFulfillmentOrderRequest.json
@@ -1,6 +1,6 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "FulfillmentOrder.json",
+ "$id": "UpdateFulfillmentOrderRequest.json",
"type": "object",
"properties": {
"customerId": { "type": ["string", "null"] },
diff --git a/schema/Api/ProductBroker/GetAllProductsResponse.json b/schema/Api/ProductBroker/GetAllProductsResponse.json
index b3f330b..91bb7a0 100644
--- a/schema/Api/ProductBroker/GetAllProductsResponse.json
+++ b/schema/Api/ProductBroker/GetAllProductsResponse.json
@@ -28,12 +28,12 @@
"type": "string"
},
"ProductOwner": { "description": "Owner of component product", "type": ["string", "null"] },
- "ProductType": {"type": "string"},
+ "ProductType": {"description": "Type of the product", "type": "string"},
"Size": { "description": "Size of component product", "type": ["string", "null"] },
- "Status": {"type": "string"},
- "UnitOfMeasure": { "type": ["string", "null"] }
+ "Status": {"description": "Current status of the product", "type": "string"},
+ "UnitOfMeasure": { "description": "Unit of measure for the product", "type": ["string", "null"] }
},
- "required": ["LastUpdateDateTimeUtc", "ProductId", "ProductNumber", "ProductType", "Status"]
+ "required": ["ProductId", "ProductNumber", "ProductType", "Status", "LastUpdateDateTimeUtc"]
}
},
"failureMessages": { "type": "array", "items": {"type": "string"} },
diff --git a/schema/Api/ProductBroker/GetProductInventoryResponse.json b/schema/Api/ProductBroker/GetProductInventoryResponse.json
index 40b029c..209ca97 100644
--- a/schema/Api/ProductBroker/GetProductInventoryResponse.json
+++ b/schema/Api/ProductBroker/GetProductInventoryResponse.json
@@ -8,14 +8,37 @@
"type": ["object", "null"],
"additionalProperties": false,
"properties": {
- "ProductId" : { "type": "string" },
- "CurrentAvailableQty": { "type": "integer" , "format": "int32" },
- "CurrentOnHandQty" : { "type": "integer" , "format": "int32" },
- "Expected" : { "type": ["integer", "null"], "format": "int32" },
- "OnBackorder" : { "type": ["integer", "null"], "format": "int32" },
- "Reserved" : { "type": "integer" , "format": "int32" }
+ "ProductId": {
+ "description": "Unique ID for component product within Integration Broker",
+ "type": "string"
+ },
+ "CurrentAvailableQty": {
+ "description": "Current available quantity for the product",
+ "type": "integer",
+ "format": "int32"
+ },
+ "CurrentOnHandQty": {
+ "description": "Current quantity on hand for the product",
+ "type": "integer",
+ "format": "int32"
+ },
+ "Expected": {
+ "description": "Expected quantity for the product",
+ "type": ["integer", "null"],
+ "format": "int32"
+ },
+ "OnBackorder": {
+ "description": "Quantity on backorder for the product",
+ "type": ["integer", "null"],
+ "format": "int32"
+ },
+ "Reserved": {
+ "description": "Quantity reserved for the product",
+ "type": "integer",
+ "format": "int32"
+ }
},
- "required": ["CurrentAvailableQty", "CurrentOnHandQty", "ProductId", "Reserved"]
+ "required": ["ProductId", "CurrentOnHandQty", "CurrentAvailableQty", "Reserved"]
},
"failureMessages": { "type": "array", "items": {"type": "string"} },
"informationalMessages": { "type": "array", "items": {"type": "string"} },
diff --git a/schema/Api/ProductBroker/GetProductsInventoryResponse.json b/schema/Api/ProductBroker/GetProductsInventoryResponse.json
index 48c14a8..5d69b75 100644
--- a/schema/Api/ProductBroker/GetProductsInventoryResponse.json
+++ b/schema/Api/ProductBroker/GetProductsInventoryResponse.json
@@ -10,14 +10,37 @@
"type": "object",
"additionalProperties": false,
"properties": {
- "ProductId" : { "type": "string" },
- "CurrentAvailableQty": { "type": "integer" , "format": "int32" },
- "CurrentOnHandQty" : { "type": "integer" , "format": "int32" },
- "Expected" : { "type": ["integer", "null"], "format": "int32" },
- "OnBackorder" : { "type": ["integer", "null"], "format": "int32" },
- "Reserved" : { "type": "integer" , "format": "int32" }
+ "ProductId": {
+ "description": "Unique ID for component product within Integration Broker",
+ "type": "string"
+ },
+ "CurrentAvailableQty": {
+ "description": "Current available quantity for the product",
+ "type": "integer",
+ "format": "int32"
+ },
+ "CurrentOnHandQty": {
+ "description": "Current quantity on hand for the product",
+ "type": "integer",
+ "format": "int32"
+ },
+ "Expected": {
+ "description": "Expected quantity for the product",
+ "type": ["integer", "null"],
+ "format": "int32"
+ },
+ "OnBackorder": {
+ "description": "Quantity on backorder for the product",
+ "type": ["integer", "null"],
+ "format": "int32"
+ },
+ "Reserved": {
+ "description": "Quantity reserved for the product",
+ "type": "integer",
+ "format": "int32"
+ }
},
- "required": ["CurrentAvailableQty", "CurrentOnHandQty", "ProductId", "Reserved"]
+ "required": ["ProductId", "CurrentOnHandQty", "CurrentAvailableQty", "Reserved"]
}
},
"failureMessages": { "type": "array", "items": {"type": "string"} },
diff --git a/schema/Api/ShippingBroker/GetShippingratesRequest.json b/schema/Api/ShippingBroker/GetShippingratesRequest.json
index b362c01..502807e 100644
--- a/schema/Api/ShippingBroker/GetShippingratesRequest.json
+++ b/schema/Api/ShippingBroker/GetShippingratesRequest.json
@@ -6,36 +6,44 @@
"properties": {
"SourceSystemCustomerId": {
"description": "This is an automatically generated field added by middleware. It is considered read-only",
- "type": ["string", "null"],
+ "type": "string",
"readonly": true
},
"SourceSystemId": {
"description": "This is an automatically generated field added by middleware. It is considered read-only",
"type": ["integer", "null"],
- "format": "int32",
+ "format": "int64",
"readonly": true
},
- "OfferIds": { "type": ["array", "null"], "items": {"type": "string"} },
- "PackageWeight": { "type": ["number", "null"], "format": "float" },
+ "OfferIds": { "type": "array", "items": {"type": "string"} },
+ "PackageWeight": {"type": "number", "format": "float"},
"ShipToAddress": {
- "type": ["object", "null"],
+ "type": "object",
"additionalProperties": false,
"properties": {
- "Address1" : { "type": ["string", "null"] },
- "Address2" : { "type": ["string", "null"] },
- "Address3" : { "type": ["string", "null"] },
- "City" : { "type": ["string", "null"] },
- "Company" : { "type": ["string", "null"] },
- "Country" : { "type": ["string", "null"] },
- "EmailAddress" : { "type": ["string", "null"] },
- "FaxNumber" : { "type": ["string", "null"] },
- "IsResidential": { "type": ["boolean", "null"] },
- "Name" : { "type": ["string", "null"] },
- "PhoneNumber" : { "type": ["string", "null"] },
- "PostalCode" : { "type": ["string", "null"] },
- "StateProvince": { "type": ["string", "null"] }
- }
+ "Address1": {"type": "string"},
+ "Address2": { "type": ["string", "null"] },
+ "Address3": { "type": ["string", "null"] },
+ "City": {"type": "string"},
+ "Company": { "type": ["string", "null"] },
+ "Country": {
+ "description": "3-letter ISO country code",
+ "type": "string",
+ "pattern": "^[A-Z]{3}$"
+ },
+ "EmailAddress": {"type": "string", "format": "email"},
+ "FaxNumber": { "type": ["string", "null"] },
+ "IsResidential": {"type": "boolean"},
+ "Name": {"type": "string"},
+ "PhoneNumber": { "type": ["string", "null"] },
+ "PostalCode": {"type": "string"},
+ "StateProvince": {"type": "string"}
+ },
+ "required": [
+ "Name", "Address1", "City", "StateProvince", "PostalCode", "EmailAddress",
+ "Country", "IsResidential"
+ ]
},
- "SourceSystemShippingMethods": { "type": ["array", "null"], "items": {"type": "string"} }
+ "SourceSystemShippingMethods": { "type": "array", "items": {"type": "string"} }
}
}
diff --git a/schema/Event/Customer/Customer.json b/schema/Event/Customer/Customer.json
new file mode 100644
index 0000000..424da5e
--- /dev/null
+++ b/schema/Event/Customer/Customer.json
@@ -0,0 +1,72 @@
+{
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "Customer.json",
+ "description": "Customer properties for CustomerEvent",
+ "type": "object",
+ "properties": {
+ "Id": {"description": "Customer ID", "type": "string"},
+ "BillingEntities": {
+ "description": "Billing entities",
+ "type": ["array", "null"],
+ "items": {
+ "type": "object",
+ "properties": {
+ "Id": {"description": "Billing entity ID", "type": "string"},
+ "XmlSenderId": {"description": "XML sender ID", "type": "string"},
+ "IsDefaultForCustomer": {
+ "description": "Whether this is the default billing entity for the customer",
+ "type": "boolean"
+ }
+ },
+ "required": ["Id", "IsDefaultForCustomer", "XmlSenderId"]
+ }
+ },
+ "Parent": {
+ "description": "Parent customer",
+ "type": ["object", "null"],
+ "properties": {
+ "Id" : { "description": "Parent customer ID" , "type": "string" },
+ "Name": { "description": "Parent customer name", "type": "string" }
+ }
+ },
+ "ShipMethodMappings": {
+ "description": "Ship method mappings",
+ "type": ["array", "null"],
+ "items": {
+ "type": "object",
+ "properties": {
+ "SourceSystemShipMethodId": { "description": "Source system ship method ID", "type": ["string", "null"] },
+ "FulfillmentSystemShipMethods": {
+ "description": "Fulfillment system ship methods",
+ "type": ["array", "null"],
+ "items": {
+ "type": "object",
+ "properties": {
+ "FulfillmentSystemId": {"description": "Fulfillment system ID", "type": "integer"},
+ "FulfillmentSystemShipMethodId": {
+ "description": "Fulfillment system ship method ID",
+ "type": ["string", "null"]
+ }
+ },
+ "required": ["FulfillmentSystemId"]
+ }
+ }
+ }
+ }
+ },
+ "SourceSystems": {
+ "description": "Source systems",
+ "type": ["array", "null"],
+ "items": {
+ "type": "object",
+ "properties": {
+ "Id" : { "description": "Source system ID" , "type": "integer" },
+ "SourceSystemCustomerId": { "description": "Source system customer ID", "type": "string" },
+ "Name" : { "description": "Source system name" , "type": "string" }
+ },
+ "required": ["Id", "Name", "SourceSystemCustomerId"]
+ }
+ }
+ },
+ "required": ["Id"]
+}
diff --git a/schema/Event/Customer/CustomerEvent.json b/schema/Event/Customer/CustomerEvent.json
new file mode 100644
index 0000000..09a7d0b
--- /dev/null
+++ b/schema/Event/Customer/CustomerEvent.json
@@ -0,0 +1,47 @@
+{
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "$id": "CustomerEvent.json",
+ "description": "CustomerEvent schema",
+ "type": "object",
+ "allOf": [
+ {"$ref": "../../Common/EventBase.json"},
+ {
+ "type": "object",
+ "properties": { "Customer": {"$ref": "Customer.json"} },
+ "required": ["Customer"]
+ },
+ {
+ "type": "object",
+ "properties": {
+ "EventName": {
+ "description": "Name of triggered event",
+ "type": "string",
+ "enum": ["Customer Created", "Customer Updated"]
+ }
+ }
+ }
+ ],
+ "examples": [
+ {
+ "AggregateId": "6-mzvanhki-4-C-5606-0046-03",
+ "CorrelationId": "282so37c-sac5-77s3-1ow7-74u10g0386cq",
+ "AggregateType": "Customer",
+ "Customer": {
+ "Id": "customer-123",
+ "BillingEntities": [
+ {"Id": "billing-1", "XmlSenderId": "xml-sender-1", "IsDefaultForCustomer": true}
+ ],
+ "Parent": {"Id": "parent-456", "Name": "Parent Customer"},
+ "ShipMethodMappings": null,
+ "SourceSystems": [ {"Id": 1, "SourceSystemCustomerId": "vc-123", "Name": "VeraCore"} ]
+ },
+ "EventActionUser": null,
+ "EventDateTimeUtc": "2024-11-22T22:16:00.263",
+ "EventName": "Customer Created",
+ "EventNameValuePairs": null,
+ "EventPublisherApp": "Customer Event Publisher",
+ "EventSchemaVersion": "1.6.1",
+ "EventSource": "CustomerBroker"
+ }
+ ]
+}
diff --git a/schema/Event/CustomerFile/CustomerFile.json b/schema/Event/CustomerFile/CustomerFile.json
deleted file mode 100644
index 273e664..0000000
--- a/schema/Event/CustomerFile/CustomerFile.json
+++ /dev/null
@@ -1,32 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "CustomerFile.json",
- "description": "CustomerFile properties",
- "type": "object",
- "properties": {
- "CustomerId": {"description": "SOB unique ID of customer owner of the file", "type": "string"},
- "Id": {
- "description": "SOB unique ID for the file",
- "type": "string",
- "format": "uuid"
- },
- "ContentLength": {"description": "Length in bytes of the file", "type": "integer", "minimum": 0},
- "ContentType": {"description": "MIME type of the file contents", "type": "string"},
- "FullPathName": {
- "description": "Full path of file, containing directories and full file name",
- "type": "string"
- },
- "StorageSystem": {
- "description": "Name of storage provider",
- "type": "string",
- "enum": ["Azure Blob"]
- },
- "StorageSystemAccount": {"description": "Account name or ID at the storage provider", "type": "string"},
- "Url": {
- "description": "Full URL to access the file",
- "type": "string",
- "format": "uri"
- }
- },
- "required": ["Id", "FullPathName", "StorageSystem"]
-}
diff --git a/schema/Event/CustomerFile/CustomerFileEvent.json b/schema/Event/CustomerFile/CustomerFileEvent.json
deleted file mode 100644
index bd5e522..0000000
--- a/schema/Event/CustomerFile/CustomerFileEvent.json
+++ /dev/null
@@ -1,23 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "CustomerFileEvent.json",
- "description": "Details for Shipping Order JSON schema",
- "type": "object",
- "allOf": [
- {"$ref": "../../Common/EventBase.json"},
- {
- "type": "object",
- "properties": { "CustomFile": {"$ref": "CustomerFile.json"} }
- },
- {
- "type": "object",
- "properties": {
- "EventName": {
- "description": "Name of triggered event",
- "type": "string",
- "enum": ["File Received", "File Decrypted"]
- }
- }
- }
- ]
-}
diff --git a/schema/Event/FulfillmentOrder/FulfillmentOrder.json b/schema/Event/FulfillmentOrder/FulfillmentOrder.json
index 3e75b52..e1165a7 100644
--- a/schema/Event/FulfillmentOrder/FulfillmentOrder.json
+++ b/schema/Event/FulfillmentOrder/FulfillmentOrder.json
@@ -26,33 +26,39 @@
"description": "Fulfillment order ID within the fulfillment system",
"type": ["string", "null"]
},
+ "ReferenceId": {
+ "description": "Reference ID for the fulfillment order",
+ "type": ["string", "null"]
+ },
"BillTo": {
"description": "Fulfillment order level bill to contact and address details",
"type": ["object", "null"],
- "items": {"$ref": "parts/BillTo.json"},
- "examples": [
- {
- "Address1": "106 Tyler Street Suite 175",
- "Address2": "3181 George Vista",
- "Address3": "",
- "City": "West Savannahside",
- "Company": "Matthews, Mclean and Huynh",
- "Country": "USA",
- "EmailAddress": "ghunt@example.com",
- "FaxNumber": "",
- "Key": 0,
- "Name": "Kristin Tyler",
- "PhoneNumber": "001-990-377-8647x21426",
- "PostalCode": "69532",
- "StateProvince": "Idaho"
+ "properties": {
+ "Address1": { "description": "Address line 1 for address", "type": ["string", "null"] },
+ "Address2": { "description": "Address line 2 for address", "type": ["string", "null"] },
+ "Address3": { "description": "Address line 3 for address", "type": ["string", "null"] },
+ "City": { "description": "City name for address", "type": ["string", "null"] },
+ "Company": { "description": "Company name for address", "type": ["string", "null"] },
+ "Country": { "description": "Country name for address", "type": ["string", "null"] },
+ "EmailAddress": {
+ "description": "Contact email address for address",
+ "type": ["string", "null"]
+ },
+ "FaxNumber": { "description": "Fax number for address", "type": ["string", "null"] },
+ "Name": { "description": "Contact name for this address", "type": ["string", "null"] },
+ "PhoneNumber": { "description": "Phone number for address", "type": ["string", "null"] },
+ "PostalCode": { "description": "Postal code for address", "type": ["string", "null"] },
+ "StateProvince": {
+ "description": "State or province name for address",
+ "type": ["string", "null"]
}
- ]
+ }
},
"CreateDateTime": {
"description": "Created date time of the fulfillment order",
"type": ["string", "null"]
},
- "DefaultShipToKey": {"description": "Default key for ShipTo", "type": "integer"},
+ "DefaultShipToKey": { "description": "Default key for ShipTo", "type": ["string", "null"] },
"DueDate": {
"description": "Due date of the fulfillment order",
"type": ["string", "null"]
@@ -73,88 +79,183 @@
"PaymentMethods": {
"description": "PaymentMethod details",
"type": ["array", "null"],
- "items": {"$ref": "parts/PaymentMethod.json"}
+ "items": {
+ "type": "object",
+ "properties": {
+ "Amount" : { "description": "Amount for the payment method", "type": ["number", "null"] },
+ "MethodName": { "description": "Name of the payment method" , "type": ["string", "null"] }
+ },
+ "required": ["MethodName", "Amount"]
+ }
},
"Products": {
"description": "Fulfillment order level product details",
"type": ["array", "null"],
- "items": {"$ref": "parts/FOProduct.json"}
+ "items": {
+ "type": "object",
+ "properties": {
+ "FulfillmentSystemId": { "description": "Fulfillment system ID", "type": ["string", "null"] },
+ "FulfillmentSystemProductId": { "description": "Fulfillment system product ID", "type": ["string", "null"] },
+ "ProductId": { "description": "Product ID", "type": ["string", "null"] },
+ "ProductLineId": { "description": "Product line ID", "type": ["string", "null"] },
+ "AssociatedFileName": { "description": "Associated file name", "type": ["string", "null"] },
+ "Comment": { "description": "Comment for the product", "type": ["string", "null"] },
+ "IsDeleted": { "description": "Whether the product is deleted", "type": ["boolean", "null"] },
+ "PageCount": { "description": "Page count for the product", "type": ["integer", "null"] },
+ "Price": { "description": "Price of the product", "type": ["number", "null"] },
+ "QuantityOrdered": { "description": "Quantity ordered", "type": ["integer", "null"] },
+ "ShipToKey": { "description": "Ship to key for the product", "type": ["string", "null"] },
+ "ShipmentPackages": {
+ "description": "Shipment packages for the product",
+ "type": ["array", "null"],
+ "items": {
+ "type": "object",
+ "properties": {
+ "ShipmentId": { "description": "Shipment ID", "type": ["string", "null"] },
+ "IsDeleted": {
+ "description": "Whether the shipment package is deleted",
+ "type": ["boolean", "null"]
+ },
+ "PackageNumber": { "description": "Package number", "type": ["string", "null"] },
+ "ShipQuantity": { "description": "Ship quantity", "type": ["number", "null"] }
+ }
+ }
+ },
+ "Status": { "description": "Status of the product", "type": ["string", "null"] }
+ }
+ }
},
"RushOrder": {
"description": "Indicator if the order is a rush order",
- "type": ["string", "null"]
+ "type": ["boolean", "null"]
},
"ShipTos": {
"description": "Fulfillment order level ship to details",
"type": ["array", "null"],
- "items": {"$ref": "parts/FOShipTo.json"},
- "examples": [
- {
- "FulfillmentSystemShippingMethodId": "FedEx Ground",
- "Comment": null,
- "DueDate": null,
- "Key": 0,
- "PONumber": null,
- "PaymentMethods": null,
- "RushOrder": null,
+ "items": {
+ "type": "object",
+ "properties": {
+ "FulfillmentSystemShippingMethodId": {
+ "description": "Fulfillment system shipping method ID",
+ "type": ["string", "null"]
+ },
+ "ReferenceId": { "description": "Reference ID", "type": ["string", "null"] },
+ "Comment": { "description": "Comment", "type": ["string", "null"] },
+ "DueDate": { "description": "Due date", "type": ["string", "null"] },
+ "IsDeleted": { "description": "Whether the ship to is deleted", "type": ["boolean", "null"] },
+ "Key": {"description": "Key for the ship to", "type": "string"},
+ "PONumber": { "description": "PO number", "type": ["string", "null"] },
+ "PaymentMethods": {
+ "description": "Payment methods for this ship to",
+ "type": ["array", "null"],
+ "items": {
+ "type": "object",
+ "properties": {
+ "Amount" : { "description": "Amount for the payment method", "type": ["number", "null"] },
+ "MethodName": { "description": "Name of the payment method" , "type": ["string", "null"] }
+ },
+ "required": ["MethodName", "Amount"]
+ }
+ },
+ "RushFee": { "description": "Rush fee", "type": ["number", "null"] },
+ "RushOrder": { "description": "Whether this is a rush order", "type": ["boolean", "null"] },
"ShipToAddress": {
- "Address1": "21133 Mraz Estate",
- "Address2": null,
- "Address3": null,
- "City": "Port Novella",
- "Company": null,
- "Country": "United States",
- "EmailAddress": "Leda.Hudson@yahoo.com",
- "FaxNumber": "(389) 855-1980 x01354",
- "Name": "Gerard Hamill",
- "PhoneNumber": "778-483-8935",
- "PostalCode": "16141-8021",
- "StateProvince": "TX"
+ "description": "Ship to address",
+ "type": ["object", "null"],
+ "properties": {
+ "Address1": { "description": "Address line 1 for address", "type": ["string", "null"] },
+ "Address2": { "description": "Address line 2 for address", "type": ["string", "null"] },
+ "Address3": { "description": "Address line 3 for address", "type": ["string", "null"] },
+ "City": { "description": "City name for address", "type": ["string", "null"] },
+ "Company": { "description": "Company name for address", "type": ["string", "null"] },
+ "Country": { "description": "Country name for address", "type": ["string", "null"] },
+ "EmailAddress": {
+ "description": "Contact email address for address",
+ "type": ["string", "null"]
+ },
+ "FaxNumber": { "description": "Fax number for address", "type": ["string", "null"] },
+ "Name": { "description": "Contact name for this address", "type": ["string", "null"] },
+ "PhoneNumber": { "description": "Phone number for address", "type": ["string", "null"] },
+ "PostalCode": { "description": "Postal code for address", "type": ["string", "null"] },
+ "StateProvince": {
+ "description": "State or province name for address",
+ "type": ["string", "null"]
+ }
+ }
},
- "ShippingCarrier": null,
- "ShippingCost": 10.0,
- "ShippingService": null,
- "Status": null
- }
- ]
+ "ShippingCarrier": { "description": "Shipping carrier", "type": ["string", "null"] },
+ "ShippingCost": { "description": "Shipping cost", "type": ["number", "null"] },
+ "ShippingService": { "description": "Shipping service", "type": ["string", "null"] },
+ "Status": { "description": "Status", "type": ["string", "null"] }
+ },
+ "required": ["Key"]
+ }
},
"Shipments": {
"description": "Shipments tied to the fulfillment order",
"type": ["array", "null"],
- "items": {"$ref": "parts/Shipment.json"},
- "examples": [
- {
- "ShipmentId": "000000116",
- "Carrier": "Customer Pickup",
- "Freight": 0,
- "IsDeleted": null,
- "MasterTrackingNumber": null,
- "Packages": [
- {
- "IsDeleted": null,
- "PackageNumber": "1",
- "TrackingNumber": "TrackingNumber123123"
- }
- ],
- "PackingSlipNumber": "000000116",
- "Service": "Customer Pickup (H)",
- "ShipDateUtc": "2025-05-09T00:00:00",
+ "items": {
+ "type": "object",
+ "properties": {
+ "ShipmentId": { "description": "Shipment ID", "type": ["string", "null"] },
+ "Carrier": { "description": "Carrier", "type": ["string", "null"] },
+ "Freight": { "description": "Freight cost", "type": ["number", "null"] },
+ "IsDeleted": {
+ "description": "Whether the shipment is deleted",
+ "type": ["boolean", "null"]
+ },
+ "MasterTrackingNumber": { "description": "Master tracking number", "type": ["string", "null"] },
+ "Packages": {
+ "oneOf": [
+ {"type": "null"},
+ {
+ "description": "Packages in the shipment",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "IsDeleted" : { "description": "Whether the package is deleted", "type": ["boolean", "null"] },
+ "PackageNumber" : { "description": "Package number" , "type": ["string", "null"] },
+ "TrackingNumber": { "description": "Tracking number" , "type": ["string", "null"] }
+ }
+ }
+ }
+ ]
+ },
+ "PackingSlipNumber": { "description": "Packing slip number", "type": ["string", "null"] },
+ "Service": { "description": "Service", "type": ["string", "null"] },
+ "ShipDateUtc": { "description": "Ship date in UTC", "type": ["string", "null"] },
"ShipToAddress": {
- "Address1": "377 Mireille Causeway",
- "Address2": "Suite 048",
- "Address3": "",
- "City": "North Fridamouth",
- "Company": "Kidde Residential/Commercial Division",
- "Country": "United States",
- "EmailAddress": null,
- "FaxNumber": null,
- "Name": "Amya Kreiger",
- "PhoneNumber": "(984) 633-1221 x3373",
- "PostalCode": "76996",
- "StateProvince": "WA"
+ "description": "Ship to address",
+ "type": ["object", "null"],
+ "properties": {
+ "Address1": { "description": "Address line 1 for address", "type": ["string", "null"] },
+ "Address2": { "description": "Address line 2 for address", "type": ["string", "null"] },
+ "Address3": { "description": "Address line 3 for address", "type": ["string", "null"] },
+ "City": { "description": "City name for address", "type": ["string", "null"] },
+ "Company": { "description": "Company name for address", "type": ["string", "null"] },
+ "Country": { "description": "Country name for address", "type": ["string", "null"] },
+ "EmailAddress": {
+ "description": "Contact email address for address",
+ "type": ["string", "null"]
+ },
+ "FaxNumber": { "description": "Fax number for address", "type": ["string", "null"] },
+ "Name": { "description": "Contact name for this address", "type": ["string", "null"] },
+ "PhoneNumber": { "description": "Phone number for address", "type": ["string", "null"] },
+ "PostalCode": { "description": "Postal code for address", "type": ["string", "null"] },
+ "StateProvince": {
+ "description": "State or province name for address",
+ "type": ["string", "null"]
+ }
+ }
}
}
- ]
+ }
+ },
+ "Statuses": {
+ "description": "Statuses tied to the fulfillment order",
+ "type": ["array", "null"],
+ "items": {"type": "string"}
}
},
"required": [
@@ -163,27 +264,6 @@
"FulfillmentSystemLocationId", "Products", "ShipTos", "BillTo",
"DefaultShipToKey"
],
- "allOf": [
- {
- "oneOf": [
- {
- "properties": { "DefaultShipToKey": {"type": "integer"} },
- "required": ["DefaultShipToKey"]
- },
- {
- "not": {
- "properties": { "DefaultShipToKey": {"type": "integer"} },
- "required": ["DefaultShipToKey"]
- },
- "properties": {
- "DefaultShipToKey": { "type": ["null", "integer"] },
- "ShipTos" : { "type": "array" , "minItems": 1 }
- },
- "required": ["ShipTos"]
- }
- ]
- }
- ],
"examples": [
{
"CustomerId": "aa6b0d33-ef54-cdd0-497b-e54be56ed661",
@@ -207,7 +287,7 @@
"StateProvince": "OK"
},
"CreateDateTime": "2025-03-13T22:26:59.3895106Z",
- "DefaultShipToKey": 0,
+ "DefaultShipToKey": "0",
"DueDate": "2025-03-14T22:26:59.3895111Z",
"OrderIds": ["88236a77-813d-a65a-3311-e1facde69736"],
"OrderVariables": "{}",
@@ -223,7 +303,7 @@
"IsDeleted": null,
"Price": 0.13,
"QuantityOrdered": 250,
- "ShipToKey": 0,
+ "ShipToKey": "0",
"Status": null
},
{
@@ -235,17 +315,17 @@
"IsDeleted": null,
"Price": 0.13,
"QuantityOrdered": 375,
- "ShipToKey": 0,
+ "ShipToKey": "0",
"Status": null
}
],
- "RushOrder": "True",
+ "RushOrder": true,
"ShipTos": [
{
"FulfillmentSystemShippingMethodId": "FedEx Ground",
"Comment": null,
"DueDate": null,
- "Key": 0,
+ "Key": "0",
"PONumber": null,
"PaymentMethods": null,
"RushOrder": null,
diff --git a/schema/Event/FulfillmentOrder/FulfillmentOrderEvent.json b/schema/Event/FulfillmentOrder/FulfillmentOrderEvent.json
index ac29479..0609fd1 100644
--- a/schema/Event/FulfillmentOrder/FulfillmentOrderEvent.json
+++ b/schema/Event/FulfillmentOrder/FulfillmentOrderEvent.json
@@ -1,13 +1,21 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "FulfillmentOrderEvent.json",
- "description": "Details for Shipping Order JSON schema",
+ "description": "FulfillmentOrderEvent schema",
"type": "object",
"allOf": [
{"$ref": "../../Common/EventBase.json"},
{
"type": "object",
- "properties": { "FulfillmentOrder": {"$ref": "FulfillmentOrder.json"} }
+ "properties": {
+ "EventSchemaVersion": {
+ "description": "Version of event schema being used",
+ "type": "string",
+ "enum": ["0.2"]
+ },
+ "FulfillmentOrder": {"$ref": "FulfillmentOrder.json"}
+ },
+ "required": ["FulfillmentOrder"]
},
{
"type": "object",
@@ -16,9 +24,9 @@
"description": "Name of triggered event",
"type": "string",
"enum": [
- "FulfillmentOrder Created", "FulfillmentOrder Submitted to FulfillmentSystem",
- "FulfillmentOrder Submission Failed", "FulfillmentOrder Updated",
- "FulfillmentOrder Validation Failed"
+ "Fulfillment Order Created", "Fulfillment Order Submitted to Fulfillment System",
+ "Fulfillment Order Submission Failed", "Fulfillment Order Updated",
+ "Fulfillment Order Update Validation Failed"
]
}
}
diff --git a/schema/Event/FulfillmentOrder/parts/BillTo.json b/schema/Event/FulfillmentOrder/parts/BillTo.json
deleted file mode 100644
index b5eedf7..0000000
--- a/schema/Event/FulfillmentOrder/parts/BillTo.json
+++ /dev/null
@@ -1,50 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "BillTo.json",
- "description": "Bill to address object for Order",
- "type": "object",
- "additionalProperties": false,
- "properties": {
- "Address1": { "description": "Address line 1 for address", "type": ["string", "null"] },
- "Address2": { "description": "Address line 2 for address", "type": ["string", "null"] },
- "Address3": { "description": "Address line 3 for address", "type": ["string", "null"] },
- "City": { "description": "City name for address", "type": ["string", "null"] },
- "Company": { "description": "Company name for address", "type": ["string", "null"] },
- "Country": { "description": "Country name for address", "type": ["string", "null"] },
- "EmailAddress": {
- "description": "Contact email address for address",
- "type": ["string", "null"]
- },
- "FaxNumber": { "description": "Fax number for address", "type": ["string", "null"] },
- "Key": {
- "description": "Unique ID for individual contact",
- "type": "integer",
- "format": "int32"
- },
- "Name": { "description": "Contact name for this address", "type": ["string", "null"] },
- "PhoneNumber": { "description": "Phone number for address", "type": ["string", "null"] },
- "PostalCode": { "description": "Postal code for address", "type": ["string", "null"] },
- "StateProvince": {
- "description": "State or province name for address",
- "type": ["string", "null"]
- }
- },
- "required": ["Address1", "City", "Country", "Name", "PostalCode", "StateProvince"],
- "examples": [
- {
- "Address1": "106 Tyler Street Suite 175",
- "Address2": "3181 George Vista",
- "Address3": "",
- "City": "West Savannahside",
- "Company": "Matthews, Mclean and Huynh",
- "Country": "USA",
- "EmailAddress": "ghunt@example.com",
- "FaxNumber": "",
- "Key": 0,
- "Name": "Kristin Tyler",
- "PhoneNumber": "001-990-377-8647x21426",
- "PostalCode": "69532",
- "StateProvince": "Idaho"
- }
- ]
-}
diff --git a/schema/Event/FulfillmentOrder/parts/FOProduct.json b/schema/Event/FulfillmentOrder/parts/FOProduct.json
deleted file mode 100644
index f71f404..0000000
--- a/schema/Event/FulfillmentOrder/parts/FOProduct.json
+++ /dev/null
@@ -1,80 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "FOProduct.json",
- "description": "FulfillmentOrder.Products level details",
- "type": "object",
- "title": "ApiFulfillmentOrderProduct",
- "properties": {
- "FulfillmentSystemId": {
- "description": "System used to fulfill the product. This should match the FulfillmentSystemId directly under FulfillmentOrder.",
- "type": ["string", "null"]
- },
- "FulfillmentSystemProductId": {
- "description": "Product ID in fulfillment system",
- "type": ["string", "null"]
- },
- "ProductId": {
- "description": "Unique ID for product within Integration Broker",
- "type": ["string", "null"]
- },
- "ProductLineId": {
- "description": "Identifier for product line within fulfillment order. Format: {fulfillmentSystemId}-{customerId}-{fulfillmentSystemProductId}",
- "type": ["string", "null"]
- },
- "AssociatedFileName": {
- "description": "Name of file associated to product (if applicable)",
- "type": ["string", "null"]
- },
- "Comment": { "description": "Comment for product", "type": ["string", "null"] },
- "IsDeleted": {
- "description": "Flag to indicate the product line item is deleted",
- "type": ["boolean", "null"]
- },
- "PageCount": {
- "description": "Number of pages in the product (if applicable)",
- "type": ["integer", "null"],
- "format": "int32"
- },
- "Price": { "description": "Price of product line item", "type": ["number", "null"] },
- "QuantityOrdered": {"description": "Amount of product ordered", "type": "integer"},
- "ShipToKey": {"description": "ShipTo key for shipping this product", "type": "integer"},
- "ShipmentPackages": {
- "description": "Shipment packages associated with this product line item",
- "type": ["array", "null"],
- "items": {"$ref": "ShipmentPackage.json"},
- "examples": [ {"ShipmentId": "ShipmentId123", "PackageNumber": "1", "ShipQuantity": 2} ]
- },
- "Status": { "description": "Status of product line item", "type": ["string", "null"] }
- },
- "required": ["ProductLineId", "QuantityOrdered", "FulfillmentSystemProductId", "Price"],
- "examples": [
- {
- "FulfillmentSystemId": "6",
- "FulfillmentSystemProductId": "123456",
- "ProductId": "77beb98f-d8c6-bf90-1456-a6e7504d678a-c0e6d4d7-a458-8dab-191a-87467ed2388c-cc96a6c8-dcea-204c-11c2-e4741262be75",
- "ProductLineId": "69835a29-20fd-df3a-5f2a-915b9455fcf8|721917346|1761063354",
- "AssociatedFileName": "https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf",
- "Comment": "This is a comment for 123456",
- "IsDeleted": null,
- "PageCount": 10,
- "Price": 0.13,
- "QuantityOrdered": 250,
- "ShipToKey": 0,
- "Status": null
- },
- {
- "FulfillmentSystemId": "6",
- "FulfillmentSystemProductId": "123456_2",
- "ProductId": "f03e85a9-3478-78bf-a214-b3eab2c643ba-3ae01e39-3493-5fce-12ef-dc8bb593950f-f25e49d2-1f8f-b80d-7cd9-bc41047d7464",
- "ProductLineId": "d69e99b8-7a5c-20d5-1aa9-1d9080bb9be5|2794780662|1752188148",
- "AssociatedFileName": "https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf",
- "Comment": "This is a comment for 123456_2",
- "IsDeleted": null,
- "PageCount": 20,
- "Price": 0.13,
- "QuantityOrdered": 375,
- "ShipToKey": 1,
- "Status": null
- }
- ]
-}
diff --git a/schema/Event/FulfillmentOrder/parts/FOShipTo.json b/schema/Event/FulfillmentOrder/parts/FOShipTo.json
deleted file mode 100644
index 075f34b..0000000
--- a/schema/Event/FulfillmentOrder/parts/FOShipTo.json
+++ /dev/null
@@ -1,94 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "FOShipTo.json",
- "description": "Fulfillment Order level ship to details",
- "type": "object",
- "title": "ApiFulfillmentOrderShipTo",
- "properties": {
- "FulfillmentSystemShippingMethodId": {
- "description": "Shipping method ID in fulfillment system",
- "type": ["string", "null"]
- },
- "ReferenceId": { "type": ["string", "null"] },
- "Comment": {
- "description": "Manually entered comment for individual Order.ShipTos",
- "type": ["string", "null"]
- },
- "DueDate": {
- "description": "Datetime of expected due date for individual Order.ShipTos",
- "type": ["string", "null"]
- },
- "IsDeleted": {
- "description": "Flag to indicate the ship to is deleted",
- "type": ["boolean", "null"]
- },
- "Key": {"description": "Unique ID for individual ship to", "type": "integer"},
- "PONumber": {
- "description": "Purchase order number for individual Order.ShipTos",
- "type": ["string", "null"]
- },
- "PaymentMethods": { "type": ["array", "null"], "items": {"$ref": "PaymentMethod.json"} },
- "RushOrder": {
- "description": "True/false indicator if individual Order.ShipTos is expedited",
- "type": ["boolean", "null"]
- },
- "ShipToAddress": {
- "$ref": "ShipToAddress.json",
- "description": "Ship to addresses array for Order",
- "examples": [
- {
- "Address1": "106 Tyler Street Suite 175",
- "Address2": "3181 George Vista",
- "Address3": "",
- "City": "West Savannahside",
- "Company": "Matthews, Mclean and Huynh",
- "Country": "USA",
- "EmailAddress": "ghunt@example.com",
- "FaxNumber": "",
- "Key": 0,
- "PhoneNumber": "001-990-377-8647x21426",
- "PostalCode": "02019",
- "StateProvince": "Idaho"
- }
- ]
- },
- "ShippingCarrier": { "description": "Shipping carrier", "type": ["string", "null"] },
- "ShippingCost": {
- "description": "Shipping cost for individual Order.ShipTos",
- "type": ["number", "null"]
- },
- "ShippingService": { "description": "Shipping service", "type": ["string", "null"] },
- "Status": { "description": "status", "type": ["string", "null"] }
- },
- "required": ["FulfillmentSystemShippingMethodId"],
- "examples": [
- {
- "FulfillmentSystemShippingMethodId": "FedEx Ground",
- "ReferenceId": null,
- "Comment": null,
- "DueDate": null,
- "Key": 0,
- "PONumber": null,
- "PaymentMethods": null,
- "RushOrder": null,
- "ShipToAddress": {
- "Address1": "11832 Simonis Prairie",
- "Address2": null,
- "Address3": null,
- "City": "Casperhaven",
- "Company": null,
- "Country": "United States",
- "EmailAddress": "Gia_Mills@gmail.com",
- "FaxNumber": "(739) 615-3707 x390",
- "Name": "Ansel Leannon",
- "PhoneNumber": "1-564-490-0380 x494",
- "PostalCode": "90673-3604",
- "StateProvince": "NV"
- },
- "ShippingCarrier": null,
- "ShippingCost": 10.0,
- "ShippingService": null,
- "Status": null
- }
- ]
-}
diff --git a/schema/Event/FulfillmentOrder/parts/OrderVariable.json b/schema/Event/FulfillmentOrder/parts/OrderVariable.json
deleted file mode 100644
index 0ab44a4..0000000
--- a/schema/Event/FulfillmentOrder/parts/OrderVariable.json
+++ /dev/null
@@ -1,6 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "OrderVariable.json",
- "description": "Additional order variables",
- "type": "object"
-}
diff --git a/schema/Event/FulfillmentOrder/parts/Package.json b/schema/Event/FulfillmentOrder/parts/Package.json
deleted file mode 100644
index fcac931..0000000
--- a/schema/Event/FulfillmentOrder/parts/Package.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "Package.json",
- "type": "object",
- "additionalProperties": false,
- "properties": {
- "IsDeleted": {
- "description": "Flag to indicate the package is deleted",
- "type": ["boolean", "null"]
- },
- "PackageNumber": { "type": ["string", "null"] },
- "TrackingNumber": { "type": ["string", "null"] }
- },
- "required": ["PackageNumber", "TrackingNumber"]
-}
diff --git a/schema/Event/FulfillmentOrder/parts/PaymentMethod.json b/schema/Event/FulfillmentOrder/parts/PaymentMethod.json
deleted file mode 100644
index 0c509ef..0000000
--- a/schema/Event/FulfillmentOrder/parts/PaymentMethod.json
+++ /dev/null
@@ -1,7 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "PaymentMethod.json",
- "type": "object",
- "properties": { "Amount": {"type": "number"}, "MethodName": {"type": "string"} },
- "required": ["MethodName", "Amount"]
-}
diff --git a/schema/Event/FulfillmentOrder/parts/ShipToAddress.json b/schema/Event/FulfillmentOrder/parts/ShipToAddress.json
deleted file mode 100644
index 133ab9c..0000000
--- a/schema/Event/FulfillmentOrder/parts/ShipToAddress.json
+++ /dev/null
@@ -1,46 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "ShipToAddress.json",
- "description": "Ship to addresses array for Order",
- "type": "object",
- "additionalProperties": false,
- "properties": {
- "Address1": { "description": "Address line 1 for address", "type": ["string", "null"] },
- "Address2": { "description": "Address line 2 for address", "type": ["string", "null"] },
- "Address3": { "description": "Address line 3 for address", "type": ["string", "null"] },
- "City": { "description": "City name for address", "type": ["string", "null"] },
- "Company": { "description": "Company name for address", "type": ["string", "null"] },
- "Country": { "description": "Country name for address", "type": ["string", "null"] },
- "EmailAddress": {
- "description": "Contact email address for address",
- "type": ["string", "null"]
- },
- "FaxNumber": { "description": "Fax number for address", "type": ["string", "null"] },
- "Key": {"description": "Unique ID for individual contact"},
- "Name": { "type": ["string", "null"] },
- "PhoneNumber": { "description": "Phone number for address", "type": ["string", "null"] },
- "PostalCode": { "description": "Postal code for address", "type": ["string", "null"] },
- "StateProvince": {
- "description": "State or province name for address",
- "type": ["string", "null"]
- }
- },
- "required": ["Address1", "City", "Country", "Name", "PostalCode", "StateProvince"],
- "examples": [
- {
- "Address1": "106 Tyler Street Suite 175",
- "Address2": "3181 George Vista",
- "Address3": "",
- "City": "West Savannahside",
- "Company": "Matthews, Mclean and Huynh",
- "Country": "USA",
- "EmailAddress": "ghunt@example.com",
- "FaxNumber": "",
- "Key": 0,
- "Name": "Kristin Tyler",
- "PhoneNumber": "001-990-377-8647x21426",
- "PostalCode": "02019",
- "StateProvince": "Idaho"
- }
- ]
-}
diff --git a/schema/Event/FulfillmentOrder/parts/Shipment.json b/schema/Event/FulfillmentOrder/parts/Shipment.json
deleted file mode 100644
index 253f0bf..0000000
--- a/schema/Event/FulfillmentOrder/parts/Shipment.json
+++ /dev/null
@@ -1,50 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "Shipment.json",
- "type": "object",
- "additionalProperties": false,
- "properties": {
- "ShipmentId": { "type": ["string", "null"] },
- "Carrier": { "type": ["string", "null"] },
- "Freight": { "type": ["number", "null"], "format": "double" },
- "IsDeleted": {
- "description": "Flag to indicate the shipment is deleted",
- "type": ["boolean", "null"]
- },
- "MasterTrackingNumber": { "type": ["string", "null"] },
- "Packages": {
- "type": ["array", "null"],
- "items": {"$ref": "Package.json"},
- "examples": [
- {
- "IsDeleted": null,
- "PackageNumber": "1",
- "TrackingNumber": "TrackingNumber123123"
- }
- ]
- },
- "PackingSlipNumber": { "type": ["string", "null"] },
- "Service": { "type": ["string", "null"] },
- "ShipDateUtc": { "type": ["string", "null"] },
- "ShipToAddress": {
- "$ref": "ShipToAddress.json",
- "examples": [
- {
- "Address1": "377 Mireille Causeway",
- "Address2": "Suite 048",
- "Address3": "",
- "City": "North Fridamouth",
- "Company": "Kidde Residential/Commercial Division",
- "Country": "United States",
- "EmailAddress": null,
- "FaxNumber": null,
- "Name": "Amya Kreiger",
- "PhoneNumber": "(984) 633-1221 x3373",
- "PostalCode": "76996",
- "StateProvince": "WA"
- }
- ]
- }
- },
- "required": ["ShipmentId", "Service", "ShipDateUtc", "Freight"]
-}
diff --git a/schema/Event/FulfillmentOrder/parts/ShipmentPackage.json b/schema/Event/FulfillmentOrder/parts/ShipmentPackage.json
deleted file mode 100644
index c09c8af..0000000
--- a/schema/Event/FulfillmentOrder/parts/ShipmentPackage.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "ShipmentPackage.json",
- "type": "object",
- "additionalProperties": false,
- "properties": {
- "ShipmentId": { "type": ["string", "null"] },
- "IsDeleted": {
- "description": "Flag to indicate the shipment package is deleted",
- "type": ["boolean", "null"]
- },
- "PackageNumber": { "type": ["string", "null"] },
- "ShipQuantity": { "type": ["number", "null"], "format": "double" }
- },
- "required": ["ShipmentId", "PackageNumber", "ShipQuantity"]
-}
diff --git a/schema/Event/Offer/Offer.json b/schema/Event/Offer/Offer.json
index bc2afbf..8edeea2 100644
--- a/schema/Event/Offer/Offer.json
+++ b/schema/Event/Offer/Offer.json
@@ -1,6 +1,6 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "OfferEventBase.json",
+ "$id": "Offer.json",
"description": "Offer properties",
"type": "object",
"properties": {
@@ -8,18 +8,21 @@
"description": "Customer that the offer belongs to",
"type": ["string", "null"]
},
- "Id": {"description": "Unique ID assigned to the offer by SOB", "type": "string"},
+ "Id": {
+ "description": "Unique ID assigned to the offer by SOB",
+ "type": ["string", "null"]
+ },
"OmsOfferId": {
"description": "Unique ID assigned to the offer by the OMS",
"type": ["string", "null"]
},
- "XMPieTemplateId": {
+ "XmPieTemplateId": {
"description": "Id of XMPie template to be used in production",
- "type": "string"
+ "type": ["string", "null"]
},
- "XMPieUStoreId": {
+ "XmPieUStoreId": {
"description": "Id of offer in UStore, for variable template production",
- "type": "string"
+ "type": ["string", "null"]
},
"AccessGroups": {
"description": "An array of access groups assigned to have access to the offer",
@@ -29,7 +32,24 @@
"AdditionalPropsRequiredOnOrder": {
"description": "Any properties that are required for this offer that wouldn't otherwise be required for an offer order",
"type": ["array", "null"],
- "items": {"$ref": "./parts/AdditionalPropertiesRequiredOnOrder.json"}
+ "items": {
+ "type": "object",
+ "properties": {
+ "Hint": { "description": "Hint for entry of the value", "type": ["string", "null"] },
+ "IsDeleted": {
+ "description": "Flag to indicate the property is deleted",
+ "type": ["boolean", "null"]
+ },
+ "Label": {
+ "description": "Label for presenting the prompt to the client",
+ "type": ["string", "null"]
+ },
+ "Name": {"description": "Name of required property", "type": "string"},
+ "Type": { "description": "Type of property", "type": ["string", "null"] },
+ "Value": { "description": "Default Value", "type": ["string", "null"] }
+ },
+ "required": ["Name"]
+ }
},
"AvailableEndDate": {
"description": "Date that offer is no longer available for sale",
@@ -52,6 +72,10 @@
"description": "Default price of the offer if no price classes are applied",
"type": ["number", "null"]
},
+ "DeliveryScheduleCron": {
+ "description": "Cron expression that defines the delivery schedule",
+ "type": ["string", "null"]
+ },
"Description": {
"description": "More detailed description of the offer",
"type": ["string", "null"]
@@ -63,7 +87,7 @@
"FixedOrderQuantities": {
"description": "Indicates the offer should only be orderable in the defined quantities",
"type": ["array", "null"],
- "items": {"type": "number"}
+ "items": {"type": "integer"}
},
"FullImageUrl": {
"description": "URL of full product image for the offer",
@@ -73,9 +97,18 @@
"description": "Flag indicating whether offer is available for sale, if within the availability dates",
"type": ["boolean", "null"]
},
- "IsAvailableViaCoopFunds": { "type": ["boolean", "null"] },
- "IsDeleted": { "type": ["boolean", "null"] },
- "IsInventoried": { "type": ["boolean", "null"] },
+ "IsAvailableViaCoopFunds": {
+ "description": "Flag indicating whether offer is available for payment with Coop funds",
+ "type": ["boolean", "null"]
+ },
+ "IsDeleted": {
+ "description": "Flag indicating a soft delete of the offer",
+ "type": ["boolean", "null"]
+ },
+ "IsInventoried": {
+ "description": "Flag indicating whether offer is inventoried",
+ "type": ["boolean", "null"]
+ },
"IsTaxable": {
"description": "Indicates whether the offer can be taxed",
"type": ["boolean", "null"]
@@ -85,8 +118,25 @@
"description": "Indicates whether the offer is a product list, drop ship, etc",
"type": ["string", "null"]
},
+ "OmniChannel": {
+ "description": "Offer OmniChannel",
+ "type": ["object", "null"],
+ "properties": {
+ "Offers": {
+ "description": "List of omni channel offers",
+ "type": ["array", "null"],
+ "items": {
+ "type": "object",
+ "properties": {
+ "OfferId" : { "description": "ID of the offer" , "type": ["string", "null"] },
+ "DeliveryChannel": { "description": "Delivery channel for the offer", "type": ["string", "null"] }
+ }
+ }
+ }
+ }
+ },
"OmsLastUpdateDateTimeUtc": {
- "description": "UTC DateTime that the offer was last updated by the system that manages it. This value is set by the OMS",
+ "description": "UTC DateTime that the offer was last updated by the system that manages it",
"type": ["string", "null"]
},
"OnlyShipMethodsAvailable": {
@@ -96,27 +146,127 @@
},
"OrderMaximum": {
"description": "The maximum quantity of the offer that can be ordered",
- "type": ["number", "null"]
+ "type": ["integer", "null"]
},
"OrderMinimum": {
"description": "The minimum quantity of the offer that can be ordered",
- "type": ["number", "null"]
+ "type": ["integer", "null"]
},
"PdfUrl": {
"description": "URL of a PDF that may be associated with the offer",
"type": ["string", "null"]
},
"PriceClasses": {
- "description": "Array of price classes",
+ "description": "An array of different classes of pricing by access group",
"type": ["array", "null"],
- "items": {"$ref": "./parts/PriceClass.json"}
+ "items": {
+ "type": "object",
+ "properties": {
+ "IsDeleted": {
+ "description": "Flag to indicate price class has been deleted",
+ "type": ["boolean", "null"]
+ },
+ "Name": {
+ "description": "Name of access group this pricing applies to",
+ "type": ["string", "null"]
+ },
+ "Price": {
+ "description": "Default price for the access group if not covered by price tiers",
+ "type": ["number", "null"]
+ },
+ "PriceTiers": {
+ "description": "Pricing tiered by quantity being ordered",
+ "type": ["array", "null"],
+ "items": {
+ "type": "object",
+ "properties": {
+ "IsDeleted": {
+ "description": "Flag to indicate price tier has been deleted",
+ "type": ["boolean", "null"]
+ },
+ "MaximumQuantity": {
+ "description": "Ending quantity of the range for this price",
+ "type": ["integer", "null"]
+ },
+ "MinimumQuantity": {
+ "description": "Starting quantity of the range for this price",
+ "type": ["integer", "null"]
+ },
+ "PageCounts": {
+ "description": "Collection of PageCounts",
+ "type": ["array", "null"],
+ "items": {
+ "type": "object",
+ "properties": {
+ "MaximumPages": { "description": "Maximum Page Count Allowed", "type": ["integer", "null"] },
+ "MinimumPages": { "description": "Minimum Page Count Allowed", "type": ["integer", "null"] },
+ "Price" : { "description": "Price" , "type": ["number", "null"] }
+ }
+ }
+ },
+ "Price": {
+ "description": "The price of the offer within this quantity range",
+ "type": ["number", "null"]
+ }
+ }
+ }
+ }
+ }
+ }
},
"ProductClusters": {
- "description": "Array of product clusters",
+ "description": "An array of any product clusters included in the offer",
"type": ["array", "null"],
- "items": {"$ref": "./parts/ProductCluster.json"}
+ "items": {
+ "type": "object",
+ "properties": {
+ "Id": {"description": "SOB unique ID for the cluster", "type": "string"},
+ "IsDeleted": {
+ "description": "Flag to indicate this cluster has been removed",
+ "type": ["boolean", "null"]
+ },
+ "Products": {
+ "description": "An array of products included in the offer",
+ "type": ["array", "null"],
+ "items": {
+ "type": "object",
+ "properties": {
+ "ProductId": { "description": "SOB unique ID for the product", "type": ["string", "null"] },
+ "AssociatedFileName": {
+ "description": "File name of associated file, if applicable",
+ "type": ["string", "null"]
+ },
+ "IsDeleted": {
+ "description": "Flag to indicate this product has been removed",
+ "type": ["boolean", "null"]
+ },
+ "PageCount": { "description": "PageCount for Template", "type": ["integer", "null"] },
+ "ProductColor": {
+ "description": "Color of the product, if applicable",
+ "type": ["string", "null"]
+ },
+ "ProductDescription": { "description": "Description of the product", "type": ["string", "null"] },
+ "ProductNumber": { "description": "Number to identify product", "type": ["string", "null"] },
+ "ProductQuantityInOffer": {
+ "description": "Indicates the quantity of the selected cluster item included in the offer",
+ "type": "integer"
+ },
+ "ProductSize": {
+ "description": "Size of the product, if applicable",
+ "type": ["string", "null"]
+ }
+ },
+ "required": ["ProductQuantityInOffer"]
+ }
+ }
+ },
+ "required": ["Id"]
+ }
+ },
+ "RequiresApproval": {
+ "description": "Flag indicating whether offer requires approval for order-fulfillment",
+ "type": ["boolean", "null"]
},
- "RequiresApproval": { "type": ["boolean", "null"] },
"SecureEmailBody": {
"description": "If this offer is a secure email type, this is the body that should be used",
"type": ["string", "null"]
@@ -125,6 +275,7 @@
"description": "If this offer is a secure email type, this is the subject that should be used",
"type": ["string", "null"]
},
+ "Surcharge": { "description": "Offer Surcharge", "type": ["number", "null"] },
"ThumbnailUrl": {
"description": "URL of thumbnail image for the offer",
"type": ["string", "null"]
@@ -132,5 +283,5 @@
"UnitOfMeasure": { "description": "Orderable units of the offer", "type": ["string", "null"] },
"WeightInPounds": { "description": "Weight of offer", "type": ["number", "null"] }
},
- "required": ["Id"]
+ "required": []
}
diff --git a/schema/Event/Offer/OfferEvent.json b/schema/Event/Offer/OfferEvent.json
index 4e610fa..222089a 100644
--- a/schema/Event/Offer/OfferEvent.json
+++ b/schema/Event/Offer/OfferEvent.json
@@ -1,11 +1,15 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "OfferEvent.json",
- "description": "Details for Shipping Order JSON schema",
+ "description": "OfferEvent schema",
"type": "object",
"allOf": [
{"$ref": "../../Common/EventBase.json"},
- { "type": "object", "properties": { "Offer": {"$ref": "Offer.json"} } },
+ {
+ "type": "object",
+ "properties": { "Offer": {"$ref": "Offer.json"} },
+ "required": ["Offer"]
+ },
{
"type": "object",
"properties": {
diff --git a/schema/Event/Offer/parts/AdditionalPropertiesRequiredOnOrder.json b/schema/Event/Offer/parts/AdditionalPropertiesRequiredOnOrder.json
deleted file mode 100644
index 6b076df..0000000
--- a/schema/Event/Offer/parts/AdditionalPropertiesRequiredOnOrder.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "AdditionalPropertiesRequiredOnOrder.json",
- "type": "object",
- "properties": {
- "IsDeleted": {
- "description": "Flag to indicate the property has been removed from the line item.",
- "type": ["boolean", "null"]
- },
- "Name": {"description": "Name of required property", "type": "string"},
- "Type": {"description": "Type of property", "type": "string"}
- },
- "required": ["Name"]
-}
diff --git a/schema/Event/Offer/parts/PriceClass.json b/schema/Event/Offer/parts/PriceClass.json
deleted file mode 100644
index f1b3a85..0000000
--- a/schema/Event/Offer/parts/PriceClass.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "PriceClass.json",
- "type": "object",
- "properties": {
- "AccessGroup": {
- "description": "Name of access group this pricing applies to",
- "type": "string"
- },
- "IsDeleted": {
- "description": "Flag to indicate the property has been removed from the line item.",
- "type": ["boolean", "null"]
- },
- "Price": {
- "description": "Default price for the access group if not covered by price tiers",
- "type": "number"
- },
- "PriceTiers": {
- "description": "Pricing tiered by quantity being ordered",
- "type": "array",
- "items": {"$ref": "PriceTier.json"}
- }
- }
-}
diff --git a/schema/Event/Offer/parts/PriceTier.json b/schema/Event/Offer/parts/PriceTier.json
deleted file mode 100644
index f17c3aa..0000000
--- a/schema/Event/Offer/parts/PriceTier.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "PriceTier.json",
- "type": "object",
- "properties": {
- "MaximumQuantity": {"description": "Ending quantity of the range for this price", "type": "number"},
- "MinimumQuantity": {
- "description": "Starting quantity of the range for this price",
- "type": "number"
- },
- "Price": {
- "description": "The price of the offer within this quantity range",
- "type": "number"
- }
- }
-}
diff --git a/schema/Event/Offer/parts/ProductCluster.json b/schema/Event/Offer/parts/ProductCluster.json
deleted file mode 100644
index b298f9c..0000000
--- a/schema/Event/Offer/parts/ProductCluster.json
+++ /dev/null
@@ -1,17 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "ProductCluster.json",
- "type": "object",
- "properties": {
- "ClusterId": {"description": "SOB unique ID for the cluster", "type": "string"},
- "IsDeleted": {
- "description": "Flag to indicate the property has been removed from the line item.",
- "type": ["boolean", "null"]
- },
- "ProductQuantityInOffer": {
- "description": "Indicates the quantity of the selected cluster item included in the offer",
- "type": "integer"
- }
- },
- "required": ["ClusterId", "ProductQuantityInOffer"]
-}
diff --git a/schema/Event/OfferCategory/OfferCategory.json b/schema/Event/OfferCategory/OfferCategory.json
index 1075bc5..3b5d5dc 100644
--- a/schema/Event/OfferCategory/OfferCategory.json
+++ b/schema/Event/OfferCategory/OfferCategory.json
@@ -10,11 +10,7 @@
"description": "SOB unique ID of the parent category, if there is one",
"type": ["string", "null"]
},
- "Name": { "description": "Name to identify category", "type": ["string", "null"] },
- "OmsLastUpdateDateTimeUtc": {
- "description": "UTC date/time of last update to this category",
- "type": "string"
- }
+ "Name": {"description": "Name to identify category", "type": "string"}
},
- "required": ["OfferCategoryId"]
+ "required": ["OfferCategoryId", "CustomerId", "Name"]
}
diff --git a/schema/Event/OfferCategory/OfferCategoryEvent.json b/schema/Event/OfferCategory/OfferCategoryEvent.json
index 6b46b75..09e05ea 100644
--- a/schema/Event/OfferCategory/OfferCategoryEvent.json
+++ b/schema/Event/OfferCategory/OfferCategoryEvent.json
@@ -1,23 +1,54 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "OfferCategoryEvent.json",
- "description": "Details for Shipping Order JSON schema",
+ "description": "OfferCategoryEvent schema",
"type": "object",
- "allOf": [
- {"$ref": "../../Common/EventBase.json"},
- {
- "type": "object",
- "properties": { "OfferCategory": {"$ref": "OfferCategory.json"} }
+ "properties": {
+ "AggregateId": {
+ "description": "Unique ID for shipping order within Integration Broker",
+ "type": "string",
+ "format": "{FulfillmentSystemId}-{FulfillmentSystemCustomerId}-{ShippingOrderId}"
+ },
+ "CorrelationId": {"description": "Unique ID for SOB-external event trigger", "type": "string"},
+ "AggregateType": {"description": "Type of event schema", "type": "string"},
+ "EventActionUser": {
+ "description": "Username of user who triggered event",
+ "type": ["string", "null"],
+ "veraCoreSource": "SHPACK_UserName in warehouse DB. SHPACK in the OMS contains a SeqId for the warehouse table."
+ },
+ "EventDateTimeUtc": {
+ "description": "UTC based datetime of when event was triggered",
+ "type": "string"
+ },
+ "EventName": {
+ "description": "Name of triggered event",
+ "type": "string",
+ "enum": ["Offer Category Created", "Offer Category Updated", "Offer Category Deleted"]
+ },
+ "EventNameValuePairs": { "type": ["array", "null"], "items": {"type": "object"} },
+ "EventPublisherApp": {
+ "description": "Name of source application that published event",
+ "type": "string"
},
- {
+ "EventSchemaVersion": {"description": "Version of event schema being used", "type": "string"},
+ "EventSource": {"description": "Name of system where event was triggered", "type": "string"},
+ "OfferCategory": {
+ "description": "OfferCategory properties",
"type": "object",
"properties": {
- "EventName": {
- "description": "Name of triggered event",
- "type": "string",
- "enum": ["Offer Category Created", "Offer Category Updated", "Offer Category Deleted"]
- }
- }
+ "CustomerId": {"description": "SOB unique ID of customer", "type": "string"},
+ "OfferCategoryId": {"description": "SOB globally-unique ID of category", "type": "string"},
+ "ParentId": {
+ "description": "SOB unique ID of the parent category, if there is one",
+ "type": ["string", "null"]
+ },
+ "Name": {"description": "Name to identify category", "type": "string"}
+ },
+ "required": ["OfferCategoryId", "CustomerId", "Name"]
}
+ },
+ "required": [
+ "AggregateId", "AggregateType", "CorrelationId", "EventDateTimeUtc", "EventName",
+ "EventPublisherApp", "EventSchemaVersion", "EventSource", "OfferCategory"
]
}
diff --git a/schema/Event/Order/Order.json b/schema/Event/Order/Order.json
index 5322ca8..519fd89 100644
--- a/schema/Event/Order/Order.json
+++ b/schema/Event/Order/Order.json
@@ -1,188 +1,305 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "OrderEventBase.json",
+ "$id": "Order.json",
"description": "Order level line item details",
"type": "object",
"properties": {
- "OmsCustomerId": { "type": ["string", "null"] },
- "OmsId": { "type": ["string", "null"] },
- "OmsOrderId": { "type": ["string", "null"] },
+ "BillingEntityId": { "description": "Billing entity ID", "type": ["string", "null"] },
"OrderId": {
- "description": "Unique ID for order within order management system (system where order lifecycle will be managed)",
+ "description": "Unique ID for order within order management system",
"type": ["string", "null"]
},
- "ReferenceId": { "type": ["string", "null"] },
- "SourceSystemCustomerId": { "type": ["string", "null"] },
- "SourceSystemId": { "type": ["integer", "null"] },
- "SourceSystemOrderId": { "type": ["string", "null"] },
- "AccessGroups": { "type": ["array", "null"], "items": {"type": "string"} },
- "AffiliateIdentifier": {
- "description": "Unique ID for affiliate within source system (system where order was originally placed)",
- "type": ["string", "null"]
- },
- "AffiliateName": {
- "description": "Name for affiliate within source system (system where order was originally placed)",
- "type": ["string", "null"]
+ "ReferenceId": { "description": "Reference ID", "type": ["string", "null"] },
+ "SourceSystemCustomerId": { "description": "Source system customer ID", "type": ["string", "null"] },
+ "SourceSystemId": { "description": "Source system ID", "type": ["integer", "null"] },
+ "AccessGroups": {
+ "description": "Access groups",
+ "type": ["array", "null"],
+ "items": {"type": "string"}
},
+ "AffiliateIdentifier": { "description": "Affiliate identifier", "type": ["string", "null"] },
+ "AffiliateName": { "description": "Affiliate name", "type": ["string", "null"] },
"BillTos": {
- "description": "Array of bill to addresses",
- "type": "array",
- "items": {"$ref": "./parts/BillTo.json"}
- },
- "CostCenter": { "type": ["string", "null"] },
- "DueDate": {
- "description": "Datetime of expected due date for Order",
- "type": ["string", "null"]
+ "description": "Bill to addresses",
+ "type": ["array", "null"],
+ "items": {
+ "type": "object",
+ "properties": {
+ "Address1": { "description": "Address line 1 for address", "type": ["string", "null"] },
+ "Address2": { "description": "Address line 2 for address", "type": ["string", "null"] },
+ "Address3": { "description": "Address line 3 for address", "type": ["string", "null"] },
+ "City": { "description": "City name for address", "type": ["string", "null"] },
+ "Company": { "description": "Company name for address", "type": ["string", "null"] },
+ "Country": { "description": "Country name for address", "type": ["string", "null"] },
+ "EmailAddress": {
+ "description": "Contact email address for address",
+ "type": ["string", "null"]
+ },
+ "FaxNumber": { "description": "Fax number for address", "type": ["string", "null"] },
+ "IsDeleted": {
+ "description": "Whether the bill to address is deleted",
+ "type": ["boolean", "null"]
+ },
+ "Key": { "description": "Key for the bill to address", "type": ["integer", "null"] },
+ "Name": { "description": "Contact name for this address", "type": ["string", "null"] },
+ "PhoneNumber": { "description": "Phone number for address", "type": ["string", "null"] },
+ "PostalCode": { "description": "Postal code for address", "type": ["string", "null"] },
+ "StateProvince": {
+ "description": "State or province name for address",
+ "type": ["string", "null"]
+ }
+ }
+ }
},
+ "CostCenter": { "description": "Cost center", "type": ["string", "null"] },
+ "CreateDateTime": { "description": "Create date time", "type": ["string", "null"] },
+ "CreditCardFee": { "description": "Credit card fee", "type": ["number", "null"] },
+ "DefaultBillToKey": { "description": "Default bill to key", "type": ["string", "null"] },
+ "DefaultOrderedByKey": { "description": "Default ordered by key", "type": ["string", "null"] },
+ "DefaultShipToKey": { "description": "Default ship to key", "type": ["string", "null"] },
+ "DueDate": { "description": "Due date", "type": ["string", "null"] },
"LineItems": {
- "description": "Order level line item details",
+ "description": "Order line items",
"type": ["array", "null"],
- "items": {"$ref": "./parts/LineItem.json"}
- },
- "ModifiedDateTime": { "type": ["string", "null"] },
- "OmsCustomerName": { "type": ["string", "null"] },
- "OrderFee": {
- "description": "Fee applied to Order",
- "type": ["number", "null"],
- "format": "double"
+ "items": {
+ "type": "object",
+ "properties": {
+ "OfferId": {
+ "description": "Unique ID for offer within Integration Broker",
+ "type": ["string", "null"]
+ },
+ "ProductManagementSystemCustomerId": { "type": ["string", "null"] },
+ "ProductManagementSystemId": {
+ "description": "Identifier for a product management system that can be an integer, string, or null",
+ "type": ["integer", "string", "null"]
+ },
+ "ReferenceId": { "type": ["string", "null"] },
+ "VariableTemplatePrintId": {
+ "description": "Unique ID for variable template file associated to offer on individual line item",
+ "type": ["string", "null"]
+ },
+ "AdditionalProperties": {
+ "description": "Additional properties details for Order LineItems",
+ "type": ["array", "null"],
+ "items": {
+ "type": "object",
+ "properties": {
+ "IsDeleted": {
+ "description": "Whether the additional property is deleted",
+ "type": ["boolean", "null"]
+ },
+ "Name": { "description": "Name of the additional property", "type": ["string", "null"] },
+ "Value": {
+ "description": "Value of the additional property",
+ "type": ["string", "null"]
+ }
+ }
+ }
+ },
+ "BillToKey": {
+ "description": "Unique ID for Order.BillTos.Key property associated to individual line item",
+ "type": ["integer", "null"]
+ },
+ "Comment": {
+ "description": "Manually entered comment for individual line item",
+ "type": ["string", "null"]
+ },
+ "CostCenter": { "type": ["string", "null"] },
+ "DueDate": {
+ "description": "Datetime of expected due date for individual line item",
+ "type": ["string", "null"]
+ },
+ "LineItemFee": {
+ "description": "Fee applied to individual line item",
+ "type": ["number", "null"]
+ },
+ "OfferDescription": {
+ "description": "Description for offer within product management system",
+ "type": ["string", "null"]
+ },
+ "OfferLineNumber": {
+ "description": "Unique ID for individual line item",
+ "type": ["string", "null"]
+ },
+ "OfferNumber": {
+ "description": "Name for offer within product management system",
+ "type": ["string", "null"]
+ },
+ "OrderedByKey": {
+ "description": "Unique ID for Order.OrderedBy.Key property associated to individual line item",
+ "type": ["integer", "null"]
+ },
+ "PONumber": {
+ "description": "Purchase order number for individual line item",
+ "type": ["string", "null"]
+ },
+ "Price": {
+ "description": "Total offer price of individual line item",
+ "type": ["number", "null"]
+ },
+ "Products": {
+ "description": "Order.LineItems level product details",
+ "type": ["array", "null"],
+ "items": {
+ "type": "object",
+ "properties": {
+ "FulfillmentSystemProductId": { "description": "Fulfillment system product ID", "type": ["string", "null"] },
+ "ProductId": { "description": "Product ID", "type": ["string", "null"] },
+ "AssociatedFileName": { "description": "Associated file name", "type": ["string", "null"] },
+ "Comment": { "description": "Comment for the product", "type": ["string", "null"] },
+ "Components": {
+ "description": "Product components",
+ "type": ["array", "null"],
+ "items": {
+ "type": "object",
+ "properties": {
+ "ProductId": { "description": "Component product ID", "type": ["string", "null"] },
+ "AssociatedFileName": { "description": "Component associated file name", "type": ["string", "null"] },
+ "Comment": { "description": "Component comment", "type": ["string", "null"] },
+ "ComponentLineNumber": { "description": "Component line number", "type": ["string", "null"] },
+ "IsDeleted": {
+ "description": "Whether the component is deleted",
+ "type": ["boolean", "null"]
+ },
+ "OfferLineNumber": { "description": "Component offer line number", "type": ["string", "null"] },
+ "ProductLineNumber": { "description": "Component product line number", "type": ["string", "null"] },
+ "QuantityBackordered": { "description": "Component quantity backordered", "type": ["integer", "null"] },
+ "QuantityOrdered": { "description": "Component quantity ordered", "type": ["integer", "null"] }
+ }
+ }
+ },
+ "IsDeleted": { "description": "Whether the product is deleted", "type": ["boolean", "null"] },
+ "OfferLineNumber": { "description": "Offer line number", "type": ["string", "null"] },
+ "ProductLineNumber": { "description": "Product line number", "type": ["string", "null"] },
+ "QuantityBackordered": { "description": "Quantity backordered", "type": ["integer", "null"] },
+ "QuantityOrdered": { "description": "Quantity ordered", "type": ["integer", "null"] }
+ }
+ }
+ },
+ "QuantityCanceled": { "type": ["integer", "null"] },
+ "QuantityOrdered": {
+ "description": "Amount of offer ordered for individual line item",
+ "type": ["integer", "null"]
+ },
+ "RushOrder": {
+ "description": "True/false indicator if individual line item is expedited",
+ "type": ["boolean", "null"]
+ },
+ "ShipToKey": {
+ "description": "Unique ID for Order.ShipTos.Key property associated to individual line item",
+ "type": ["integer", "null"]
+ },
+ "Status": { "type": ["string", "null"] },
+ "TaxAmount": {
+ "description": "Total tax amount applied to individual line item",
+ "type": ["number", "null"]
+ }
+ }
+ }
},
- "OrderVariables": {"$ref": "./parts/OrderVariable.json"},
+ "OrderFee": { "description": "Order fee", "type": ["number", "null"] },
+ "OrderVariables": { "description": "Order variables", "type": ["object", "null"] },
"OrderedBys": {
- "description": "Array of ordered by addresses",
+ "description": "Ordered by addresses",
"type": ["array", "null"],
- "items": {"$ref": "./parts/OrderedBy.json"}
+ "items": {
+ "type": "object",
+ "properties": {
+ "Address1": { "description": "Address line 1 for address", "type": ["string", "null"] },
+ "Address2": { "description": "Address line 2 for address", "type": ["string", "null"] },
+ "Address3": { "description": "Address line 3 for address", "type": ["string", "null"] },
+ "City": { "description": "City name for address", "type": ["string", "null"] },
+ "Company": { "description": "Company name for address", "type": ["string", "null"] },
+ "Country": { "description": "Country name for address", "type": ["string", "null"] },
+ "EmailAddress": {
+ "description": "Contact email address for address",
+ "type": ["string", "null"]
+ },
+ "FaxNumber": { "description": "Fax number for address", "type": ["string", "null"] },
+ "IsDeleted": {
+ "description": "Whether the ordered by address is deleted",
+ "type": ["boolean", "null"]
+ },
+ "Key": { "description": "Key for the ordered by address", "type": ["integer", "null"] },
+ "Name": { "description": "Contact name for this address", "type": ["string", "null"] },
+ "PhoneNumber": { "description": "Phone number for address", "type": ["string", "null"] },
+ "PostalCode": { "description": "Postal code for address", "type": ["string", "null"] },
+ "StateProvince": {
+ "description": "State or province name for address",
+ "type": ["string", "null"]
+ }
+ }
+ }
},
+ "PONumber": { "description": "PO number", "type": ["string", "null"] },
"PaymentMethods": {
- "description": "Order.ShipTos level payment method details",
+ "description": "Payment methods",
"type": ["array", "null"],
- "items": {"$ref": "./parts/PaymentMethod.json"}
- },
- "PickPackHandlingFee": {
- "description": "Sum of pick & pack handling fees for all Order.ShipTos",
- "type": ["number", "null"],
- "format": "double"
+ "items": {
+ "type": "object",
+ "properties": {
+ "Amount": {
+ "description": "Total amount applied to payment method",
+ "type": ["number", "null"]
+ },
+ "MethodName": { "description": "Name of payment method", "type": ["string", "null"] }
+ },
+ "required": ["Amount", "MethodName"]
+ }
},
+ "PickPackHandlingFee": { "description": "Pick pack handling fee", "type": ["number", "null"] },
+ "RushOrder": { "description": "Rush order flag", "type": ["boolean", "null"] },
"ShipTos": {
- "description": "Order level ship to details",
+ "description": "Ship to addresses",
"type": ["array", "null"],
- "items": {"$ref": "./parts/ShipTo.json"}
- },
- "ShippingHandlingTax": {
- "description": "Sum of shipping & handling taxes for all Order.ShipTos",
- "type": ["number", "null"],
- "format": "double"
- },
- "Statuses": { "type": "array", "items": {"type": "string"} },
- "TotalOrderFee": {
- "description": "Sum of OrderFee",
- "type": ["number", "null"],
- "format": "double"
+ "items": {
+ "type": "object",
+ "properties": {
+ "ReferenceId": { "description": "Reference ID", "type": ["string", "null"] },
+ "SourceSystemShippingMethodId": {
+ "description": "Source system shipping method ID",
+ "type": ["string", "null"]
+ },
+ "Comment": { "description": "Comment", "type": ["string", "null"] },
+ "DueDate": { "description": "Due date", "type": ["string", "null"] },
+ "IsDeleted": { "description": "Whether the ship to is deleted", "type": ["boolean", "null"] },
+ "Key": { "description": "Key for the ship to", "type": ["integer", "null"] },
+ "PONumber": { "description": "PO number", "type": ["string", "null"] },
+ "RushOrder": { "description": "Whether this is a rush order", "type": ["boolean", "null"] },
+ "ShipToAddress": {
+ "description": "Ship to address",
+ "type": ["object", "null"],
+ "properties": {
+ "Address1": { "description": "Address line 1 for address", "type": ["string", "null"] },
+ "Address2": { "description": "Address line 2 for address", "type": ["string", "null"] },
+ "Address3": { "description": "Address line 3 for address", "type": ["string", "null"] },
+ "City": { "description": "City name for address", "type": ["string", "null"] },
+ "Company": { "description": "Company name for address", "type": ["string", "null"] },
+ "Country": { "description": "Country name for address", "type": ["string", "null"] },
+ "EmailAddress": {
+ "description": "Contact email address for address",
+ "type": ["string", "null"]
+ },
+ "FaxNumber": { "description": "Fax number for address", "type": ["string", "null"] },
+ "Name": { "description": "Contact name for this address", "type": ["string", "null"] },
+ "PhoneNumber": { "description": "Phone number for address", "type": ["string", "null"] },
+ "PostalCode": { "description": "Postal code for address", "type": ["string", "null"] },
+ "StateProvince": {
+ "description": "State or province name for address",
+ "type": ["string", "null"]
+ }
+ }
+ },
+ "ShippingCarrier": { "description": "Shipping carrier", "type": ["string", "null"] },
+ "ShippingCost": { "description": "Shipping cost", "type": ["number", "null"] },
+ "ShippingService": { "description": "Shipping service", "type": ["string", "null"] },
+ "Status": { "description": "Status", "type": ["string", "null"] }
+ }
+ }
},
- "TotalShippingCost": {
- "description": "Sum of shipping cost for all Order.ShipTos.Shipments",
- "type": ["number", "null"],
- "format": "double"
- }
+ "ShippingHandlingTax": { "description": "Shipping handling tax", "type": ["number", "null"] },
+ "TotalOrderFee": { "description": "Total order fee", "type": ["number", "null"] },
+ "TotalShippingCost": { "description": "Total shipping cost", "type": ["number", "null"] }
},
- "required": ["BillTos", "LineItems", "OrderId", "ShipTos", "ShippingHandlingTax"],
- "examples": [
- {
- "OmsCustomerId": "001146",
- "OmsId": "1",
- "OmsOrderId": "2-gbdstorefrontcust-2-P-4692-3606-50",
- "OrderId": "2-gbdstorefrontcust-2-P-4692-3606-50",
- "ReferenceId": "2-P-4692-3606-50",
- "SourceSystemCustomerId": null,
- "SourceSystemId": null,
- "SourceSystemOrderId": null,
- "AccessGroups": ["IN"],
- "AffiliateIdentifier": 9,
- "AffiliateName": "ZT - iHPqWad",
- "BillTos": [
- {
- "Address1": "77185 Juan Ford Apt. 265",
- "Address2": "",
- "Address3": "",
- "City": "Lovechester",
- "Company": "",
- "Country": "USA",
- "EmailAddress": "cody09@example.com",
- "FaxNumber": "",
- "IsDeleted": null,
- "Key": 0,
- "Name": "Leslie Harmon",
- "PhoneNumber": "377.454.4845",
- "PostalCode": "52209",
- "StateProvince": "Georgia"
- }
- ],
- "CostCenter": "6342091000- IN Medicaid Case Mgmt",
- "CreateDateTime": null,
- "CreditCardFee": null,
- "DefaultBillToKey": 0,
- "DefaultOrderedByKey": 0,
- "DefaultShipToKey": null,
- "DueDate": null,
- "LineItems": [
- {
- "OfferId": "1-001146-23788",
- "ProductManagementSystemCustomerId": "001146",
- "ProductManagementSystemId": 1,
- "ReferenceId": null,
- "VariableTemplatePrintId": null,
- "AdditionalProperties": [],
- "BillToKey": null,
- "Comment": "1022385INMENABS Rev. 11/22 PM:https://xxxxx.cloudfront.net/temporary/example.pdf,e47de917-5db4-45dc-9079-203690246f0a.pdf",
- "CostCenter": null,
- "DueDate": null,
- "IsDeleted": false,
- "LineItemFee": 0,
- "OfferDescription": "Important Phone Numbers Update SH MKT (IN)",
- "OfferLineNumber": "15602",
- "OfferNumber": "1022385INMENABS Rev. 11/22 PM",
- "OrderedByKey": null,
- "PONumber": null,
- "Price": 35,
- "Products": [],
- "QuantityCanceled": null,
- "QuantityOrdered": 1,
- "RushOrder": null,
- "ShipToKey": 0,
- "Status": null,
- "TaxAmount": 0
- }
- ],
- "ModifiedDateTime": "2024-11-20T14:26:38",
- "OmsCustomerName": "Ryan Griffin",
- "OrderFee": null,
- "OrderVariables": {},
- "OrderedBys": [
- {
- "Address1": "28133 Derrick Rapids",
- "Address2": "",
- "Address3": "",
- "City": "New Emilyside",
- "Company": "",
- "Country": "USA",
- "EmailAddress": "sarah01@example.com",
- "FaxNumber": "",
- "IsDeleted": null,
- "Key": 0,
- "Name": "Dawn Conway",
- "PhoneNumber": "+1-963-434-5913x919",
- "PostalCode": 9945,
- "StateProvince": "Montana"
- }
- ],
- "PONumber": "",
- "PaymentMethods": null,
- "PickPackHandlingFee": null,
- "RushOrder": false,
- "ShipTos": null,
- "ShippingHandlingTax": null,
- "Statuses": ["Order In Process"],
- "TotalOrderFee": null,
- "TotalShippingCost": null
- }
- ]
+ "required": ["OrderId"]
}
diff --git a/schema/Event/Order/OrderEvent.json b/schema/Event/Order/OrderEvent.json
index 1a383b1..565d943 100644
--- a/schema/Event/Order/OrderEvent.json
+++ b/schema/Event/Order/OrderEvent.json
@@ -1,11 +1,15 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "OrderEvent.json",
- "description": "Details for Order JSON schema",
+ "description": "OrderEvent schema",
"type": "object",
"allOf": [
{"$ref": "../../Common/EventBase.json"},
- { "type": "object", "properties": { "Order": {"$ref": "Order.json"} } },
+ {
+ "type": "object",
+ "properties": { "Order": {"$ref": "Order.json"} },
+ "required": ["Order"]
+ },
{
"type": "object",
"properties": {
@@ -13,11 +17,10 @@
"description": "Name of triggered event",
"type": "string",
"enum": [
- "Order Accepted By OMS", "Order Complete", "Order File Copy Complete",
- "Order Item(s) Backordered", "Order Item(s) Canceled", "Order Item(s) Shipped",
- "Order Received", "Order Rejected by OMS", "Order Secure Email Sent",
- "Order Submitted to OMS", "Order Updated", "Order Validated",
- "Order Validation Failed", "Partially Shipped"
+ "Order Received", "Order Validated", "Order Validation Failed",
+ "Order Submitted to OMS", "Order Rejected by OMS", "Fulfillment Order Created",
+ "Order Updated", "Order Update Requested", "Order Update Request Validated",
+ "Order Update Request Validation Failed", "Fulfillment Order Creation Failed"
]
}
}
diff --git a/schema/Event/Order/parts/AdditionalProperty.json b/schema/Event/Order/parts/AdditionalProperty.json
deleted file mode 100644
index a33efb2..0000000
--- a/schema/Event/Order/parts/AdditionalProperty.json
+++ /dev/null
@@ -1,21 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "AdditionalProperty.json",
- "description": "Order.LineItems level additional properties details",
- "type": "object",
- "properties": {
- "IsDeleted": {
- "description": "Flag to indicate the property has been removed from the line item.",
- "type": ["boolean", "null"]
- },
- "Key": { "type": ["string", "null"] },
- "Value": { "type": ["string", "null"] }
- },
- "required": ["Key", "Value"],
- "examples": [
- {
- "Key": "SingleMailing_File",
- "Value": "https://example.onetouchpoint.com/some-file.pdf"
- }
- ]
-}
diff --git a/schema/Event/Order/parts/BillTo.json b/schema/Event/Order/parts/BillTo.json
deleted file mode 100644
index 24056e0..0000000
--- a/schema/Event/Order/parts/BillTo.json
+++ /dev/null
@@ -1,49 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "BillTo.json",
- "description": "Bill to address object for Order",
- "type": "object",
- "properties": {
- "Address1": { "description": "Address line 1 for address", "type": ["string", "null"] },
- "Address2": { "description": "Address line 2 for address", "type": ["string", "null"] },
- "Address3": { "description": "Address line 3 for address", "type": ["string", "null"] },
- "City": { "description": "City name for address", "type": ["string", "null"] },
- "Company": { "description": "Company name for address", "type": ["string", "null"] },
- "Country": { "description": "Country name for address", "type": ["string", "null"] },
- "EmailAddress": {
- "description": "Contact email address for address",
- "type": ["string", "null"]
- },
- "FaxNumber": { "description": "Fax number for address", "type": ["string", "null"] },
- "Key": {
- "description": "Unique ID for individual contact",
- "type": "integer",
- "format": "int32"
- },
- "Name": { "description": "Contact name for this address", "type": ["string", "null"] },
- "PhoneNumber": { "description": "Phone number for address", "type": ["string", "null"] },
- "PostalCode": { "description": "Postal code for address", "type": ["string", "null"] },
- "StateProvince": {
- "description": "State or province name for address",
- "type": ["string", "null"]
- }
- },
- "required": ["Address1", "City", "Country", "Name", "PostalCode", "StateProvince"],
- "examples": [
- {
- "Address1": "106 Tyler Street Suite 175",
- "Address2": "3181 George Vista",
- "Address3": "",
- "City": "West Savannahside",
- "Company": "Matthews, Mclean and Huynh",
- "Country": "USA",
- "EmailAddress": "ghunt@example.com",
- "FaxNumber": "",
- "Key": 0,
- "Name": "Kristin Tyler",
- "PhoneNumber": "001-990-377-8647x21426",
- "PostalCode": "02019",
- "StateProvince": "Idaho"
- }
- ]
-}
diff --git a/schema/Event/Order/parts/Component.json b/schema/Event/Order/parts/Component.json
deleted file mode 100644
index 7095f1b..0000000
--- a/schema/Event/Order/parts/Component.json
+++ /dev/null
@@ -1,51 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "Component.json",
- "description": "Order.LineItems.Products level component details",
- "type": "object",
- "properties": {
- "ProductId": {
- "description": "Unique ID for component product within Integration Broker",
- "type": ["string", "null"]
- },
- "AssociatedFileName": {
- "description": "Name of file associated to component product (if applicable)",
- "type": ["string", "null"]
- },
- "Color": { "description": "Color of component product", "type": ["string", "null"] },
- "Comment": {
- "description": "Manually entered comment for component product",
- "type": ["string", "null"]
- },
- "ComponentLineNumber": {
- "description": "Unique ID for component product within parent product",
- "type": ["string", "null"]
- },
- "OfferLineNumber": { "description": "Unique ID for parent line item", "type": ["string", "null"] },
- "ProductDescription": {
- "description": "Description for component product within product management system (system where ordered line item products will be managed)",
- "type": ["string", "null"]
- },
- "ProductLineNumber": {
- "description": "Unique ID for parent product within parent line item",
- "type": ["string", "null"]
- },
- "ProductNumber": {
- "description": "Name for component product within product management system (system where ordered line item products will be managed)",
- "type": ["string", "null"]
- },
- "ProductOwner": { "description": "Owner of component product", "type": ["string", "null"] },
- "QuantityBackordered": {
- "description": "Amount of component product back-ordered within parent product",
- "type": ["integer", "null"],
- "format": "int32"
- },
- "QuantityOrdered": {
- "description": "Amount of component product ordered within parent product",
- "type": ["integer", "null"],
- "format": "int32"
- },
- "Size": { "description": "Size of component product", "type": ["string", "null"] }
- },
- "required": ["ProductId"]
-}
diff --git a/schema/Event/Order/parts/LineItem.json b/schema/Event/Order/parts/LineItem.json
deleted file mode 100644
index 642d222..0000000
--- a/schema/Event/Order/parts/LineItem.json
+++ /dev/null
@@ -1,124 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "LineItem.json",
- "description": "Order level line item details",
- "type": "object",
- "properties": {
- "OfferId": {
- "description": "Unique ID for offer within Integration Broker",
- "type": ["string", "null"]
- },
- "ProductManagementSystemCustomerId": { "type": ["string", "null"] },
- "ProductManagementSystemId": {
- "$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "ProductManagementSystemId.json",
- "description": "Identifier for a product management system that can be an integer, string, or null",
- "type": ["integer", "string", "null"]
- },
- "ReferenceId": { "type": ["string", "null"] },
- "VariableTemplatePrintId": {
- "description": "Unique ID for variable template file associated to offer on individual line item",
- "type": ["string", "null"]
- },
- "AdditionalProperties": {
- "description": "Additional properties details for Order LineItems",
- "type": "array",
- "items": {"$ref": "AdditionalProperty.json"}
- },
- "BillToKey": {
- "description": "Unique ID for Order.BillTos.Key property associated to individual line item (NOTE: If top-level DefaultBillToKey is not set, this must be.)",
- "type": ["integer", "null"],
- "format": "int32"
- },
- "Comment": {
- "description": "Manually entered comment for individual line item",
- "type": ["string", "null"]
- },
- "CostCenter": { "type": ["string", "null"] },
- "DueDate": {
- "description": "Datetime of expected due date for individual line item",
- "type": ["string", "null"]
- },
- "LineItemFee": {
- "description": "Fee applied to individual line item",
- "type": ["number", "null"],
- "format": "double"
- },
- "OfferDescription": {
- "description": "Description for offer within product management system (system where ordered line item products will be managed)",
- "type": ["string", "null"]
- },
- "OfferLineNumber": {
- "description": "Unique ID for individual line item",
- "type": ["string", "null"]
- },
- "OfferNumber": {
- "description": "Name for offer within product management system (system where ordered line item products will be managed)",
- "type": ["string", "null"]
- },
- "OrderedByKey": {
- "description": "Unique ID for Order.OrderedBy.Key property associated to individual line item",
- "type": ["integer", "null"],
- "format": "int32"
- },
- "PONumber": {
- "description": "Purchase order number for individual line item",
- "type": ["string", "null"]
- },
- "Price": {
- "description": "Total offer price of individual line item",
- "type": ["number", "null"],
- "format": "double"
- },
- "Products": {
- "description": "Order.LineItems level product details",
- "type": ["array", "null"],
- "items": {"$ref": "Product.json"}
- },
- "QuantityCanceled": { "type": ["integer", "null"] },
- "QuantityOrdered": {
- "description": "Amount of offer ordered for individual line item",
- "type": ["integer", "null"],
- "format": "int32"
- },
- "RushOrder": {
- "description": "True/false indicator if individual line item is expedited",
- "type": ["boolean", "null"]
- },
- "ShipToKey": {
- "description": "Unique ID for Order.ShipTos.Key property associated to individual line item (NOTE: If top-level DefaultShipToKey is not set, this must be.)",
- "type": ["integer", "null"],
- "format": "int32"
- },
- "Status": { "type": ["string", "null"] },
- "TaxAmount": {
- "description": "Total tax amount applied to individual line item",
- "type": ["number", "null"],
- "format": "double"
- }
- },
- "required": ["LineItemFee", "OfferId", "Price", "QuantityOrdered", "TaxAmount"],
- "examples": [
- {
- "OfferId": "8-998608-269",
- "ProductManagementSystemCustomerId": "455163",
- "ProductManagementSystemId": 1,
- "ReferenceId": null,
- "VariableTemplatePrintId": null,
- "Comment": "HPD-PNP-DRS-TEACONT-0322:",
- "CostCenter": null,
- "DueDate": null,
- "LineItemFee": 1,
- "OfferDescription": "Tea Container Sticker",
- "OfferLineNumber": "1",
- "OfferNumber": "HPD-PNP-DRS-TEACONT-0322",
- "PONumber": null,
- "Price": 4.57,
- "QuantityCanceled": null,
- "QuantityOrdered": 1,
- "RushOrder": null,
- "Status": null,
- "TaxAmount": 2.92
- }
- ]
-}
diff --git a/schema/Event/Order/parts/OrderVariable.json b/schema/Event/Order/parts/OrderVariable.json
deleted file mode 100644
index 034800b..0000000
--- a/schema/Event/Order/parts/OrderVariable.json
+++ /dev/null
@@ -1,7 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "OrderVariable.json",
- "description": "Manually entered variables for order within order management system (system where order lifecycle will be managed in)",
- "type": ["object", "null"],
- "additionalProperties": true
-}
diff --git a/schema/Event/Order/parts/OrderedBy.json b/schema/Event/Order/parts/OrderedBy.json
deleted file mode 100644
index 8800822..0000000
--- a/schema/Event/Order/parts/OrderedBy.json
+++ /dev/null
@@ -1,47 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "OrderedBy.json",
- "description": "Bill to address object for Order",
- "type": "object",
- "properties": {
- "Address1": { "description": "Address line 1 for address", "type": ["string", "null"] },
- "Address2": { "description": "Address line 2 for address", "type": ["string", "null"] },
- "Address3": { "description": "Address line 3 for address", "type": ["string", "null"] },
- "City": { "description": "City name for address", "type": ["string", "null"] },
- "Company": { "description": "Company name for address", "type": ["string", "null"] },
- "Country": { "description": "Country name for address", "type": ["string", "null"] },
- "EmailAddress": {
- "description": "Contact email address for address",
- "type": ["string", "null"]
- },
- "FaxNumber": { "description": "Fax number for address", "type": ["string", "null"] },
- "Key": {
- "description": "Unique ID for individual contact",
- "type": "integer",
- "format": "int32"
- },
- "PhoneNumber": { "description": "Phone number for address", "type": ["string", "null"] },
- "PostalCode": { "description": "Postal code for address", "type": ["string", "null"] },
- "StateProvince": {
- "description": "State or province name for address",
- "type": ["string", "null"]
- }
- },
- "required": ["Address1", "City", "Country", "PostalCode", "StateProvince"],
- "examples": [
- {
- "Address1": "106 Tyler Street Suite 175",
- "Address2": "3181 George Vista",
- "Address3": "",
- "City": "West Savannahside",
- "Company": "Matthews, Mclean and Huynh",
- "Country": "USA",
- "EmailAddress": "ghunt@example.com",
- "FaxNumber": "",
- "Key": 0,
- "PhoneNumber": "001-990-377-8647x21426",
- "PostalCode": "02019",
- "StateProvince": "Idaho"
- }
- ]
-}
diff --git a/schema/Event/Order/parts/PaymentMethod.json b/schema/Event/Order/parts/PaymentMethod.json
deleted file mode 100644
index df203a1..0000000
--- a/schema/Event/Order/parts/PaymentMethod.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "PaymentMethod.json",
- "type": "object",
- "properties": {
- "Amount": {
- "description": "Total amount applied to payment method",
- "type": ["number", "null"],
- "format": "double"
- },
- "MethodName": { "description": "Name of payment method", "type": ["string", "null"] }
- },
- "required": ["Amount", "MethodName"]
-}
diff --git a/schema/Event/Order/parts/Product.json b/schema/Event/Order/parts/Product.json
deleted file mode 100644
index c7c0f61..0000000
--- a/schema/Event/Order/parts/Product.json
+++ /dev/null
@@ -1,75 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "Product.json",
- "description": "Order.LineItems level product details",
- "type": "object",
- "properties": {
- "FulfillmentSystemCustomerId": { "type": ["string", "null"] },
- "FulfillmentSystemId": { "type": ["integer", "null"] },
- "ProductId": {
- "description": "Unique ID for product within Integration Broker",
- "type": ["string", "null"]
- },
- "AssociatedFileName": {
- "description": "Name of file associated to product (if applicable)",
- "type": ["string", "null"]
- },
- "Color": { "description": "Color of product", "type": ["string", "null"] },
- "Comment": {
- "description": "Manually entered comment for product",
- "type": ["string", "null"]
- },
- "Components": {
- "description": "Components array for Order LineItems Products",
- "type": ["array", "null"],
- "items": {"$ref": "Component.json"}
- },
- "OfferLineNumber": { "description": "Unique ID for parent line item", "type": ["string", "null"] },
- "PageCount": {
- "description": "Number of pages in the product (if applicable)",
- "type": ["integer", "null"],
- "format": "int32"
- },
- "ProductDescription": {
- "description": "Description for product within product management system (system where ordered line item products will be managed)",
- "type": ["string", "null"]
- },
- "ProductLineNumber": {
- "description": "Unique ID for product within parent line item",
- "type": ["string", "null"]
- },
- "ProductNumber": {
- "description": "Name for product within product management system (system where ordered line item products will be managed)",
- "type": ["string", "null"]
- },
- "ProductOwner": { "description": "Owner of product", "type": ["string", "null"] },
- "QuantityBackordered": { "type": ["integer", "null"] },
- "QuantityOrdered": {
- "description": "Amount of product ordered within parent line item",
- "type": ["integer", "null"],
- "format": "int32"
- },
- "Size": { "description": "Size of product", "type": ["string", "null"] }
- },
- "required": ["ProductId"],
- "examples": [
- {
- "FulfillmentSystemCustomerId": 16936,
- "FulfillmentSystemId": 1,
- "ProductId": "JGI-BTU-BFUI-5022-9773",
- "AssociatedFileName": "https://example.onetouchpoint.com/some-file.pdf",
- "Color": "Black",
- "Comment": null,
- "Components": [],
- "OfferLineNumber": "1",
- "PageCount": 16,
- "ProductDescription": "ToGo Labels - Double Bacon Jam (Roll of 500)",
- "ProductLineNumber": "7807",
- "ProductNumber": "HPD-PNP-TOGO-2600-0322",
- "ProductOwner": "Davis-Avila",
- "QuantityBackordered": 1000,
- "QuantityOrdered": 1,
- "Size": "Medium"
- }
- ]
-}
diff --git a/schema/Event/Order/parts/ShipTo.json b/schema/Event/Order/parts/ShipTo.json
deleted file mode 100644
index c171e4b..0000000
--- a/schema/Event/Order/parts/ShipTo.json
+++ /dev/null
@@ -1,116 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "ShipTo.json",
- "description": "Order level ship to details",
- "type": "object",
- "properties": {
- "AffiliateId": {
- "description": "Unique ID for affiliate within source system (system where order was originally placed)",
- "type": ["string", "null"]
- },
- "OmsShippingMethodId": { "type": ["string", "null"] },
- "ReferenceId": { "type": ["string", "null"] },
- "SourceSystemShippingMethodId": {
- "description": "Unique ID for shipping method within source system (system where order was originally placed)",
- "type": ["string", "null"]
- },
- "AffiliateName": {
- "description": "Name for affiliate within source system (system where order was originally placed)",
- "type": ["string", "null"]
- },
- "Comment": {
- "description": "Manually entered comment for individual Order.ShipTos",
- "type": ["string", "null"]
- },
- "CostCenter": { "type": ["string", "null"] },
- "CreditCardFee": {
- "description": "Credit card transaction fee applied for individual Order.ShipTos",
- "type": ["number", "null"],
- "format": "double"
- },
- "DueDate": {
- "description": "Datetime of expected due date for individual Order.ShipTos",
- "type": ["string", "null"]
- },
- "IsDeleted": {
- "description": "Flag to indicate the property has been removed from the line item.",
- "type": ["boolean", "null"]
- },
- "Key": {
- "description": "Unique ID for individual ship to",
- "type": "integer",
- "format": "int32"
- },
- "OrderFee": {
- "description": "Fee applied to Order",
- "type": ["number", "null"],
- "format": "double"
- },
- "PONumber": {
- "description": "Purchase order number for individual Order.ShipTos",
- "type": ["string", "null"]
- },
- "PaymentMethods": {
- "description": "Order.ShipTos level payment method details",
- "type": ["array", "null"],
- "items": {"$ref": "PaymentMethod.json"}
- },
- "PickPackHandlingFee": {
- "description": "Pick & pack handling fees for individual Order.ShipTos",
- "type": ["number", "null"],
- "format": "double"
- },
- "RushFee": {
- "description": "Rush fee applied for individual Order.ShipTos",
- "type": ["number", "null"],
- "format": "double"
- },
- "RushOrder": {
- "description": "True/false indicator if individual Order.ShipTos is expedited",
- "type": ["boolean", "null"]
- },
- "ShipToAddress": {"$ref": "ShipToAddress.json"},
- "ShippingCarrier": { "type": ["string", "null"] },
- "ShippingCost": {
- "description": "Shipping cost for individual Order.ShipTos",
- "type": ["number", "null"],
- "format": "double"
- },
- "ShippingHandlingTax": {
- "description": "Shipping & handling taxes for individual Order.ShipTos",
- "type": ["number", "null"],
- "format": "double"
- },
- "ShippingService": { "type": ["string", "null"] },
- "Status": { "type": ["string", "null"] },
- "TotalOrderFee": {
- "description": "Sum of OrderFee",
- "type": ["number", "null"],
- "format": "double"
- }
- },
- "required": [
- "Key", "ShipToAddress", "ShippingCost", "ShippingHandlingTax",
- "SourceSystemShippingMethodId"
- ],
- "examples": [
- {
- "AffiliateId": null,
- "OmsShippingMethodId": null,
- "ReferenceId": "BQJ efg Deebjplybqjtgr ",
- "SourceSystemShippingMethodId": "vos_vrzuqz",
- "AffiliateName": null,
- "CostCenter": "6342091000- IN Medicaid Case Mgmt",
- "CreditCardFee": null,
- "DueDate": null,
- "Key": 0,
- "OrderFee": 5,
- "PickPackHandlingFee": 21,
- "ShippingCarrier": null,
- "ShippingCost": 20.22,
- "ShippingHandlingTax": 2.15,
- "ShippingService": "Ground",
- "TotalOrderFee": 5
- }
- ]
-}
diff --git a/schema/Event/Order/parts/ShipToAddress.json b/schema/Event/Order/parts/ShipToAddress.json
deleted file mode 100644
index f7be28b..0000000
--- a/schema/Event/Order/parts/ShipToAddress.json
+++ /dev/null
@@ -1,47 +0,0 @@
-{
- "$schema": "http://json-schema.org/draft-07/schema#",
- "$id": "ShipToAddress.json",
- "description": "Ship to addresses array for Order",
- "type": "object",
- "properties": {
- "Address1": { "description": "Address line 1 for address", "type": ["string", "null"] },
- "Address2": { "description": "Address line 2 for address", "type": ["string", "null"] },
- "Address3": { "description": "Address line 3 for address", "type": ["string", "null"] },
- "City": { "description": "City name for address", "type": ["string", "null"] },
- "Company": { "description": "Company name for address", "type": ["string", "null"] },
- "Country": { "description": "Country name for address", "type": ["string", "null"] },
- "EmailAddress": {
- "description": "Contact email address for address",
- "type": ["string", "null"]
- },
- "FaxNumber": { "description": "Fax number for address", "type": ["string", "null"] },
- "Key": {
- "description": "Unique ID for individual contact",
- "type": "integer",
- "format": "int32"
- },
- "PhoneNumber": { "description": "Phone number for address", "type": ["string", "null"] },
- "PostalCode": { "description": "Postal code for address", "type": ["string", "null"] },
- "StateProvince": {
- "description": "State or province name for address",
- "type": ["string", "null"]
- }
- },
- "required": ["Address1", "City", "Country", "PostalCode", "StateProvince"],
- "examples": [
- {
- "Address1": "106 Tyler Street Suite 175",
- "Address2": "3181 George Vista",
- "Address3": "",
- "City": "West Savannahside",
- "Company": "Matthews, Mclean and Huynh",
- "Country": "USA",
- "EmailAddress": "ghunt@example.com",
- "FaxNumber": "",
- "Key": 0,
- "PhoneNumber": "001-990-377-8647x21426",
- "PostalCode": "02019",
- "StateProvince": "Idaho"
- }
- ]
-}