> ## Documentation Index
> Fetch the complete documentation index at: https://docs.orbit.devotel.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Numbers console: pools, porting, subscriptions, and validation

> Orient the Numbers console — the four operational surfaces (tracking pools, porting, subscriptions on the numbers you hold, and pre-send validation) — and map each console destination to the guide that walks it end to end.

# Numbers console

The Numbers console under **Numbers** in the dashboard is the operator surface for every DID you hold or are moving in. This page indexes the four operational surfaces it hands off to — **pools**, **porting**, **subscriptions**, and **validate (lookup)** — names what each one does, and points at the guide that walks it end to end. The endpoint-level contract behind each surface is the [Numbers API reference](/api-reference/numbers); the recipe-level walk-throughs cluster under the [Numbers cookbook](/guides/numbers-cookbook).

<Note>Buying a number provisions inbound routing and lifecycle ownership only. Outbound voice and SMS always terminate through Orbit's own network — no pool, port, subscription, or validation step creates or hands off an outbound path to a third-party carrier.</Note>

## Surface index

| Console destination | Route | What it does | | |
| - | - | - | - | - |
| **Tracking pools** | `/numbers/tracking-pools` | Dynamic Number Insertion — swap the displayed number by marketing source and attribute inbound calls back to the ad, campaign, or keyword that drove them. | | |
| **Porting** | `/numbers/porting` | Move numbers you already own at another carrier onto Orbit — check eligibility, upload and sign the LOA, track the carrier review to a FOC date, and resume a parked draft. | | |
| **Subscriptions** | \`/numbers?tab=active | buy | applications\` | The ongoing ownership state of your numbers — auto-renew, scheduled release, reassign between subaccounts, and trial pool claims. |
| **Validate (lookup)** | `/numbers?tab=lookup` | Pre-send validation — normalize a number to E.164, check reachability, and screen SIM-swap or line-type risk before a campaign or OTP send. | | |

## Tracking pools — `/numbers/tracking-pools`

Tracking pools are the Dynamic Number Insertion surface. Create a named pool of swappable tracking numbers, bind it to a marketing source, paste the swap snippet on your website, and read inbound-call attribution per source, campaign, and keyword. A tracking number is inbound-only — it terminates inbound calls; opening a pool never opens an outbound path.

Deep guide: [Dynamic number pools (tracking pools) end-to-end](/guides/tracking-pools-dni). Endpoint map: [Call tracking & DNI](/guides/call-tracking-dni).

## Porting — `/numbers/porting`

Porting is the flow that moves a number you already own elsewhere onto Orbit: eligibility check → request → LOA upload → sign → submit → carrier review → FOC → cutover. A port request checkpoints as a **draft** (`staging: "draft"`) the moment you create it — nothing dispatches to a carrier until the LOA is uploaded, signed, and submitted — so the console is also where you **resume** a parked port: reopen the draft, attach the LOA, and the flow continues from where it stopped.

Deep guides: [Port a number end-to-end](/guides/port-numbers), [Your first port-in walkthrough](/guides/number-porting-walkthrough-first-port), [Port numbers in bulk (CSV walkthrough)](/guides/port-numbers-batch-walkthrough), and [Port out safely](/guides/port-out-numbers).

## Subscriptions — the numbers you hold

There is no separate "subscriptions" route because every number you buy becomes a subscription the moment it lands. The Numbers console surfaces that state under three tabs: **Active** lists the DIDs your tenant holds, **Buy** provisions new ones, and **Applications** binds a DID to an inbound routing target. The lifecycle layer on each subscriptions-row — auto-renew on, a scheduled release date, reassign to a sibling subaccount, reclaim within the grace window, and the trial-pool claim path — is what keeps a number billing correctly instead of lapsing.

Deep guides: [Buy and provision numbers](/guides/buy-numbers), [Number lifecycle](/numbers/lifecycle), [Number applications: bind DID inbound routing](/guides/number-applications), and [Number assignments](/guides/number-assignments).

## Validate — pre-send lookup

The **Lookup** tab inside `/numbers` is the pre-send validation surface. Run a number through it before you send — normalize to E.164, read carrier and reachability, and check the risk fields (SIM-swap, line-type intelligence, call-forwarding) that should gate an OTP, account-recovery, or campaign send. Bulk lookup covers the batch-import path; the same lookup contract backs the dashboard, the API, and every send-time pre-flight.

Deep guides: [Number Lookup](/numbers/lookup) and the quick-lookup and intelligence recipes in the [Numbers cookbook](/guides/numbers-cookbook).

## The cookbook recipes

The [Numbers cookbook](/guides/numbers-cookbook) is the recipe cluster for the four surfaces above — copy-pasteable requests with the decoded envelope, one recipe per task:

1. [Quick lookup — unwrap `data.valid`](/guides/numbers-cookbook#1-quick-lookup--unwrap-datavalid) — the pre-send E.164 + HLR gate (`/numbers/lookup`).
2. [Intelligence lookup — SIM-swap risk routing](/guides/numbers-cookbook#2-intelligence-lookup--sim-swap-risk-routing) — the risk-flag decision before an OTP or recovery send.
3. [Porting pre-check chain — search to purchase](/guides/numbers-cookbook#3-porting-pre-check-chain--search-to-purchase) — availability → purchase → porting check → open the port request.
4. [Batch-export CSV — finance inventory + health](/guides/numbers-cookbook#4-batch-export-csv--finance-inventory--health) — the audit sweep over the numbers your subscription holds.
