Number health diagnostics console walkthrough
When a DID stops delivering, the first signal is not a carrier notice — it is a drift in the health counters the daily scheduler already collects. The per-number health surface surfaces that drift before it becomes a blocked campaign: a delivery-rate drop, a complaint-rate tick up, a DLR-miss spike, or an abnormal trunk counter that says the upstream route is degrading, not the number itself. This guide covers the Numbers → [select a number] → Health surface in the dashboard: what each metric means, how the score-tier bands map to decisions, how to tell a number problem from a trunk problem, and when to swap, wait, or reroute. For the API that backs this surface, see Number health, warming, and carrier reputation tracking; for trunk-level diagnostics, see SIP trunk health and connectivity diagnostics.Where the health surface lives
Open Numbers in the dashboard, select a DID from the list, and open the Health tab. The surface has two panels:- Reputation score — a 30-day rolling deliverability score with a tier badge (Excellent / Good / Fair / Poor / Critical / Unknown), the breakdown rates (delivery, failure, complaint), the minimum sample-size threshold, and the last-computed timestamp.
- Health trend & forecast — a time-series panel that plots the score over a configurable window (30, 60, or 90 days) and projects it forward. It also flags step-change anomalies — a score dropping 12+ points between two ticks — which a slow slope would smear away.
GET /api/v1/numbers/reputation-alerts. The per-number Health tab is the
drill-down that tells you why a flagged number landed on that banner.
What health telemetry is gathered per DID
The daily scheduler computes five counters for every number that has sent outbound traffic in the rolling 30-day window:
The scheduler folds these counters into a composite health score (0–100) and
assigns a tier:
excellent (85+), good (70–84), fair (50–69), poor
(30–49), or critical (under 30). Numbers under the minimum sample-size
threshold return tier: "unknown" with no numeric score — there is not enough
history to give a reliable signal.
How to read a degraded signal and decide swap vs wait vs reroute
When a number’s tier drops topoor or critical, you have three choices. The
right one depends on what the breakdown tells you.
Decision tree
- Check the breakdown. Open the Health tab and look at the three rate columns — delivery, failure, complaint. Which one moved?
- Cross-reference the trunk. Open Voice → SIP trunks → [the trunk this number rides on] → Health and compare. Are the trunk’s peers also degraded?
- Decide.
When to wait and re-check
The daily scheduler runs once per 24-hour cycle. A single bad tick is not a trend. Wait and re-check when:- The DLR-miss rate spiked on one tick but the delivery and complaint rates are unchanged.
- The failure rate moved by less than 5 percentage points and the number is
still in
fairor better. - The trend line shows
stable(movement under 0.2 points/day) even though the current score is lower than you would like.
When to reroute (trunk-level, not number-level)
Reroute means keeping the number but pointing it at a different termination trunk — a carrier-level change, not a number replacement. Do this when the trunk-abnormal counters spike across every number riding that trunk. The SIP trunk diagnostics page (Voice → SIP trunks → Health) tells you whether the
trunk itself is degraded; when it is, rotating the number does nothing — the
next number on the same trunk hits the same failing upstream. Reroute first,
then re-check the number health after the new trunk settles.
Number intelligence vs voice SIP trunk diagnostics: which page for which signal
Operators commonly confuse a per-number health signal with a trunk health signal because both surfaces show delivery and failure metrics. The table below disambiguates them.
The rule of thumb: if the Health tab on the SIP trunk page shows green but the
number Health tab shows red, the problem is the number. If both are red, the
problem is the trunk — fix the trunk first, then re-evaluate the number.
Worked examples
Troubleshooting a degraded US 10DLC DID
A US 10DLC number (+1 415 555 0100) shows tier: "poor" with a complaint rate
of 1.8 % and a delivery rate of 82 %. The failure rate is 6 % and stable.
- Open the number’s Health tab. The complaint rate is above the 1 % threshold.
- Open the SIP trunk Health tab for the trunk this number rides on. The trunk
is
registeredwith every probe stepok, and peer numbers on the same trunk showgoodorexcellenttiers with complaint rates under 0.5 %. - Decision: swap. The number has drawn a carrier flag. Quarantine the number, order or select a warmed replacement from the same 10DLC campaign, migrate the dialer campaign and sender pools to the replacement, and retire the original. If you configured the closed-loop reputation remediation policy under Settings → Numbers → Reputation, this sequence runs automatically on the next daily tick.
Cross-SIP compare vs the SIP trunk diagnostics guide
A number showstier: "critical" with a failure rate of 45 %. You suspect a
trunk problem but are not sure.
- Check the trunk Health tab: the trunk is
unregisteredwith theregistersteppending. The SIP trunk diagnostics page tells you this is a NAT pinhole — the registrar did not answer theREGISTERwithin the probe budget. - Check peer numbers on the same trunk: every one shows
tier: "critical"or"poor"with the same failure-rate spike. - Decision: reroute. The trunk is not reachable, so every number on it is
failing. Switch the trunk’s transport from
udptotcp(as the SIP trunk diagnostics guide recommends for NAT pinholes), or reroute traffic to a different trunk. Do not swap any individual number — the numbers are fine; the trunk is not. - After the trunk recovers, re-check the number Health tab. If the failure rate drops back to normal within one tick, no number action is needed.
API surface
The Health tab reads from two endpoints underGET /api/v1/numbers:
GET /api/v1/numbers/:id/health— the point-in-time health snapshot. Returnsscore,tier,breakdown(delivery / failure / complaint rates),min_sample_size, andlast_computed_at. When the sample is too small,scoreisnullandtierisunknown.GET /api/v1/numbers/:id/health/trend— the time-series panel. Acceptswindow(30d / 60d / 90d),bucket(day / week), andhorizon_days(1–60). Returns the per-period score array, thedirection(improving / declining / stable), theforecast(projected score and tier), and anyanomalydetection.
Tenant scope
Every metric on the Health tab is scoped to your own numbers and your own outbound traffic. The daily scheduler computes counters from your tenant’s message and call records; a number you do not own returns404, and a wrong
number ID from another tenant is indistinguishable from a wrong ID in your own
tenant — ownership is never leaked across tenants.
See also
- Number health, warming, and carrier reputation tracking — the full API endpoint catalog.
- SIP trunk health and connectivity diagnostics — the trunk-level diagnostics surface.
- Number Intelligence dashboard — the lookup console, metering, and spend caps.
- Number inventory and lifecycle — purchase, port, release.
- Number warming — per-number 10DLC warming ramp.
- Closed-loop reputation remediation — automate the swap-and-retire pipeline.