Compatibility Intelligence
Determine whether two products work together using structured specifications, compatibility rules, and intelligent evaluation. Works for any industry: you define what compatibility means, and every result shows the requirements checked and the request fields behind them.
- Four outcomes: compatible, incompatible, conditional, or unknown
- Your own requirements are compared exactly, with unit conversion
- Conditions are returned only when your documentation states them
- Missing information is reported, never filled in
{
"product_a": {
"name": "Example Ceramic Front Brake Pads",
"category": "brake pads",
"specifications": {
"vehicle_make": "Honda",
"vehicle_model": "Civic",
"model_years": "2016-2021"
}
},
"product_b": {
"name": "2018 Honda Civic LX",
"category": "vehicle",
"specifications": {
"make": "Honda",
"model": "Civic",
"model_year": 2018
}
},
"context": {
"use_case": "Install the brake pads on the vehicle's front axle"
},
"requirements": [
{
"name": "make",
"check": "equal",
"value": "product_a.specifications.vehicle_make",
"against": "product_b.specifications.make"
},
{
"name": "model",
"check": "equal",
"value": "product_a.specifications.vehicle_model",
"against": "product_b.specifications.model"
},
{
"name": "model_year",
"check": "in_range",
"value": "product_b.specifications.model_year",
"against": "product_a.specifications.model_years"
}
]
}{
"request_id": "req_Q8vN2kLx7RmT4bYc",
"status": "compatible",
"compatible": true,
"summary": "The supplied evidence supports using these products together, with no unresolved requirements.",
"checks": [
{
"requirement": "make",
"status": "passed",
"method": "deterministic",
"product_a_value": "Honda",
"product_b_value": "Honda",
"explanation": "The values match.",
"evidence": [
"product_a.specifications.vehicle_make",
"product_b.specifications.make"
]
},
{
"requirement": "model",
"status": "passed",
"method": "deterministic",
"product_a_value": "Civic",
"product_b_value": "Civic",
"explanation": "The values match.",
"evidence": [
"product_a.specifications.vehicle_model",
"product_b.specifications.model"
]
},
{
"requirement": "model_year",
"status": "passed",
"method": "deterministic",
"product_a_value": "2016-2021",
"product_b_value": "2018",
"explanation": "The value is within the other product's range.",
"evidence": [
"product_b.specifications.model_year",
"product_a.specifications.model_years"
]
}
],
"conditions": [],
"missing_information": [],
"requires_review": false
}"Will these work together?" is hard to answer at scale
Vehicle parts, HVAC equipment, electronics, plumbing, and industrial components all have their own fitment rules. Hand-written logic for each catalog doesn't scale, and a plausible-sounding guess is worse than no answer when the wrong part ships.
Four answers, never a forced yes or no
Where teams use it
- Ecommerce compatibility checks
- Automotive parts fitment
- HVAC equipment matching
- Electronics and accessories
- Industrial components
- Product configuration
- CPQ validation
- Evaluates only the product information you send. It doesn't research products or fetch documentation.
- Without requirements or documentation, many results are unknown. Send requirements for dependable answers.
- Not a guarantee of compatibility. Check unknown and requires_review results before acting on them.
- Compares two products per request.
One HTTP call
const response = await fetch("https://kovca.io/api/v1/compatibility/check", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.KOVCA_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
"product_a": {
"name": "Example Ceramic Front Brake Pads",
"category": "brake pads",
"specifications": {
"vehicle_make": "Honda",
"vehicle_model": "Civic",
"model_years": "2016-2021"
}
},
"product_b": {
"name": "2018 Honda Civic LX",
"category": "vehicle",
"specifications": {
"make": "Honda",
"model": "Civic",
"model_year": 2018
}
},
"context": {
"use_case": "Install the brake pads on the vehicle's front axle"
},
"requirements": [
{
"name": "make",
"check": "equal",
"value": "product_a.specifications.vehicle_make",
"against": "product_b.specifications.make"
},
{
"name": "model",
"check": "equal",
"value": "product_a.specifications.vehicle_model",
"against": "product_b.specifications.model"
},
{
"name": "model_year",
"check": "in_range",
"value": "product_b.specifications.model_year",
"against": "product_a.specifications.model_years"
}
]
}),
});
if (!response.ok) {
const { error, request_id } = await response.json();
throw new Error(`${error.code}: ${error.message} (${request_id})`);
}
const { status, compatible, checks, conditions, missing_information } = await response.json();Related APIs
- Returns Intelligence
Classify return requests, check them against your return policy, and get a suggested next step.
- Catalog Matching
Decide whether two product records are the same item, a different variant, or a different product.
- Listing Intelligence
Check product listings for contradictions, missing attributes, unsupported claims, and your listing requirements before publication.
- Warranty Intelligence
Classify warranty claims, check them against the warranty terms you supply, and get the next workflow step.