Skip to main content

Recommendations Extensions Overview

Recommendation extensions allow you to offer product recommendations to users for cross sell / upsell when building out their bill of materials. You can also make recommendations based on files or other user criteria.

Request

The request will contain a high level list of all products on the workspace and any fields that you have specified in the setup manifest.

{
"additionalFields": {
"field1": "value",
"field2": "value",
"field3": "value"
},
"products": [
{
"id": "{ADAPTIVE CATALOG PRODUCT ID}",
"catalog": "{ADAPTIVE CATALOG PRODUCT CATALOG NAME}",
"mfp": "{MANUFACTURER PART NUMBER}",
"qty": 0.0,
"manufacturer": "{MANUFACTURER NAME}"
}
]
}
caution

Any files that are uploaded to your extension (such as for a document analyzer) after 1 hour or if the user uploads a new file / deletes the workspace. Adaptive Catalog policy is for any approved extensions to also remove any cached files after one hour for privacy and security.

Response

The best way to ensure matches with Adaptive Catalog products is to pass in an Adaptive Catalog product ID. Since all rich content Adaptive Catalog products share a product ID, you can pass in any known products by those IDs. For products without known Adaptive Catalog IDs, you can pass in the manufacturer name and part number and Adaptive Catalog will attempt to match those to products that exist in the user’s catalogs.

{
"success": true,
"error": "value",
"products": ["value"],
"matchedProducts": [
{
"productId": "value",
"score": 0.0,
"scorer": "value",
"source": "value",
"matchedTo": "value",
"qty": 0.0,
"mfp": "value",
"name": "value",
"matchGroup": "value"
}
],
"possibleProducts": [
{
"productId": "value",
"score": 0.0,
"scorer": "value",
"source": "value",
"matchedTo": "value",
"qty": 0.0,
"mfp": "value",
"name": "value",
"matchGroup": "value"
}
]
}

Response Object

FieldRequiredDescription
successtrueBoolean indicating if the extension ran successfully
errorfalseAn error message to display to the user if the extension did not run successfully
productsfalseAn array of Adaptive Catalog product IDs for simple recommendation responses
matchedProductsfalseAn array of Product Match objects that are confirmed (or highly likely) matches
possibleProductsfalseAn array of Product Match objects that are possible matches.

Product Match Object

FieldRequiredDescription
productIdfalseThe Adaptive Catalog product ID
scoretrueThe score out of 100 with certainty of match
scorertrueA name for the scoring method. Can be anything you want but is displayed to the user
sourcefalseA description of the matched data. Example: “manufacturer part number match” or “recommended service”
matchedTofalseA description of why it was matched or the data in the source document that it was matched to. Example: “MFP: 12345” or “Manufacturer: HPE”
qtyfalseA suggested quantity
mfpfalseThe MFP of the product being matched
namefalseA friendly product name
matchGroupfalseMatches are grouped by these when displayed to the user. This allows the user to select just one per group. Can be used for suggesting multiple potential matches or suggested services that are mutually exclusive.