Overview
What your dialers can draw from right now.
Coverage by state
Green bar = share of that state’s DIDs in batches that are live now.
DIDs by supplier
Recent denied requests
Batches
Each batch runs live for its run period, rests, then comes back on its own. New batches start paused: activate them now, or schedule a start time. A daily limit of 0 means no limit; once a DID reaches its limit it sits out until midnight.
New batch
DIDs
Upload, move, switch off or delete numbers. Files can be .txt, .csv or .xlsx; any column holding 10- or 11-digit US numbers is picked up, and the leading 1 is dropped.
Bulk upload
Bulk delete
Every number in the file or list is removed from all batches.
| DID | State | Batch | Supplier | On | Today | Uses | Last used |
|---|
Clients & IP access
Each client gets an API key, a list of IPs allowed to use it, and the batches it draws caller IDs from. A client with no IPs listed can’t make requests.
New client
Clients
Blocked IPs
Blocked addresses can’t reach the API or this admin page, even if a client allows them.
Rejections
Calls the far end refused (SIP 603, 607 or 608, or hangup cause 21), reported by your dial plan when a call doesn’t connect. Rates are worked out against the caller IDs the portal handed out. A DID that keeps getting rejected usually has a reputation problem, so check its registration with Hiya, First Orion and the other registries before using it again.
By day
Failure codes
By route
By batch
By supplier
DIDs with the most rejections
0 selected| DID | State | Batch | Calls | Rejected | Rate | On |
|---|
Usage
Caller IDs handed out to each client, requests that got no caller ID, and requests refused by a client’s rate limit. Days run midnight to midnight in the portal’s time zone ().
Totals
By month
By day
Alerts
The portal checks these every minute and posts to a Discord channel. Each alert repeats at most once per cooldown period.
Recent alerts
Dialer setup
Point VICIdial’s carrier dial plan at the portal so every outbound call gets a caller ID from the client’s live batches.
1. API request
Returns just the 10-digit DID, or an empty 404 when nothing is live (the call then keeps the campaign’s default caller ID). Add &format=json to see the match details.
2. VICIdial carrier dial plan
Admin → Carriers → your carrier → Dialplan Entry. The lines after Dial() report how each call went, which feeds the Rejections page.
If the portal returns nothing, the call hangs up. To dial with the campaign’s default caller ID instead, change the Hangup() under invalid to Goto(next).
3. Try it
4. Monitoring
Point Uptime Kuma (or any uptime checker) at the health address. It returns 503 if the portal can’t reach its database. Prometheus or Grafana Agent can scrape the metrics address; allow your monitoring server with METRICS_IPS or METRICS_TOKEN.
A client that goes over its requests-per-second limit gets HTTP 429 with an empty body, so the dial plan treats it like no caller ID.