Re-quotes a pending alteration package against the policy's current product module definition and replaces it. The new package is created with refreshed_from_alteration_package_id set to the original, and the original is archived. If quoting fails, nothing is archived and the original stays pending.
The original's input is replayed: data from the request body if present, otherwise the data the original was created with.
A refresh is only sound when the alteration hook's validation accepts its own output unchanged, and when the hook reads no policy data other than monthly_premium, sum_assured, billing_frequency and the module keys the package carries.
Requires both the create and the archive alteration package permissions.
400The package is not pending, its alteration hook is not in the policy's current product module definition, its stored input failed validation, the product module returned other than one alteration package, or the currency changed. The original stays pending.
404The alteration package was not found, or it is archived.
409Another request superseded, archived or applied the package first. When another refresh won, the message names the alteration package that replaced it.