Validate that a product is discoverable at runtime by checking price book entries, selling models, pricing procedures, and decision table configurations.
Use this resource at design time to confirm that a product’s discovery-related setup is correct before runtime product discovery. Provide a product ID, product code, or developer name. The API resolves the target product and validates pricing, price book entries, and selling model configurations that would otherwise surface as failures during discovery.
Validations include confirming that at least one product identifier is provided; that the product exists; that an active price book entry with a unit price greater than zero is associated with an active price book; and that the product is associated with an active product selling model option. When the Select Pricing Procedure preference is enabled, the API also checks that a product discovery pricing procedure is configured with an active version, that an active decision table with source object PricebookEntry exists, and that the product’s price book entry can be resolved by that decision table.
When the discovery setup is valid, isValid is true. When setup fails, isValid is false and errors parameter includes the failure details. Discovery setup failures are returned in the response body with HTTP status 200. Examples include:
SF-INS-DSAV-00011 — the product doesn’t have a price book entry.
SF-INS-DSAV-00004 — the product isn’t associated with a product selling model option.
SF-INS-DSAV-00040 — the product discovery pricing procedure isn’t configured.
SF-INS-DSAV-00047 — no active decision table with source object PricebookEntry was found.
SF-INS-DSAV-00046 — the product’s price book entries aren’t included in any active decision table.
Request-level failures are also returned in errors. A missing product identifier returns SF-INS-DSAV-00038 with HTTP status 400. A product that can’t be found returns SF-INS-DSAV-00044 with HTTP status 400. Insufficient access, or Digital Insurance not enabled for the org, returns INSUFFICIENT_ACCESS with HTTP status 403. An unexpected failure returns INTERNAL_SERVER_ERROR with HTTP status 500.
Informational messages appear in infos. For example, SF-INS-DSAV-00042 indicates that pricing is disabled for product discovery and pricing procedure validation was skipped, and SF-INS-DSAV-00043 reminds you to refresh decision tables after recent changes.