- a present Health estimate and its source;
- an action configured by your project or an operator; and
- a restriction observed from WhatsApp.
bansafe.incident and the number’s incident history.
Project Health-rule actions
Configure one rule per project on the Safety page. The rule evaluates only a fresh, available Health estimate. It acts whenhealth < threshold;
equality does not trigger it.
Unknown Health, stale evidence, or an unavailable estimator triggers no action.
The worker checks the latest Health again
before applying a queued action.
Read
GET /platform/bansafe/health-actions?projectId={projectId} or open Health
rule activity on the Safety page to see queued actions and their durable
outcomes. Filter the API list by session or public status. Results are
newest first and cursor-paginated. A returned outcome is one of applied,
cleared, notification_queued, superseded, expired, not_applied, or
delivery_failed.
Pacing rates
Theslow_down action caps outbound sending at the messages-per-second value
saved on the project Health rule. The value must be positive and cannot exceed
the project’s sending limit. Console and the API reject a higher value instead
of silently changing it.
Email and webhook delivery are optional. A webhook selection emits
bansafe.health_threshold; its stable action ID is also the webhook envelope
ID for retry deduplication.
Existing operator controls
An operator control remains in force until it is changed or lifted. The Health estimator cutover clears retired automatic ladder controls; it does not clear an operator control and does not report a WhatsApp restriction change.GET /platform/bansafe/enforcement reads controls and their application state.
state: "applying" means the control is stored but a connected runner has not
yet confirmed it. Polymorfa retries stored policy delivery.
Provider restrictions
bansafe.incident reports an outcome observed from WhatsApp or one your
team reports, once when it is recorded and again when it settles. It does not
mean Polymorfa applied a Health-rule action.
A stopped or slowed session can continue to have a separately observed account
state. Console displays that observation with its own timestamp and source.
session.restriction_updated reports one specific WhatsApp restriction as it
starts and ends: the limit on starting conversations and calls with people the
number has not chatted with. While it is active, Polymorfa refuses calls to
those people with number_restricted. See
Webhooks for the payload and
Calls for the call path.