Include an Idempotency-Key header to prevent duplicate executions. If a request with the same key has already been processed, the original response is returned without re-executing the policy.
Executes a specific version of a policy group, bypassing traffic routing. Useful for A/B testing a candidate version or testing a rollback target before switching.
POST /groups/{groupId}/versions/{versionId}
Request and response formats are identical to Single Group Execution. The only difference is that the engine uses the specified version instead of the currently deployed one.
The version must be in ACTIVE (published) status. DRAFT versions cannot be executed via the Engine API — use Dry Run for testing DRAFT versions.
Executes multiple fact sets against the same policy group in a single call. All requests in the batch are evaluated against the same version for consistency.
Results are returned in the same order as the input requests. Each item in the context is merged with sharedContext (per-request context takes priority on conflict).
Batch execution counts as 1 API call for TPS throttling, regardless of the number of items. However, billing is based on the total number of items.
Evaluates the same facts against multiple policy groups in a single call. Useful when a transaction must pass through multiple policy checks simultaneously (e.g., product discount + cart coupon + shipping fee + membership points).
The response contains merged outputVariables, executionTraces, and decisionTraces from all evaluated groups.All target groups must be in ACTIVE status. If any group is DISABLED or not found, the entire request fails.
Check which input facts a deployed version requires before calling the execution endpoint. Returns required keys, types, and an auto-generated sample request body.
Call this endpoint before your first integration to see exactly which facts you need to provide. Copy the exampleRequest as a starting template and fill in real values.