{{ platformDays() }} platform days of the {{ addChannelDays() }} total — the rest is credentials and app review, which no framework can shorten.
{{ channel.family }} · {{ stateLabels[channel.state] }}
{{ channel.detail }}
{{ option.oneApi ? 'One API across channels' : 'A code path of its own' }}
Nothing uses this path today.
}{{ deliveryRate(stat) }}% delivered
No failover configured — a failure stays failed.
}{{ consentGated() }} of the workspace’s failover rules move a message to a channel the contact must have consented to.
{{ merge.autoMerged ? 'Merged automatically' : 'Waiting for a person' }}
Anything under 90% is proposed, never applied. Merging two people by accident is far more expensive than asking.
{{ campaign.platform }} · {{ campaign.state }}