> ## 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.

# Announcements hub: the provisioning-capability inventory behind Numbers → Buy

> How the announcements hub anchors the per-country capability inventory that powers the Numbers → Buy a number picker, and how to read that inventory yourself before you buy.

# Announcements hub and the provisioning-capability inventory

The [announcements hub](https://orbit.devotel.io/announcements) carries a new entry, **Provisioning-capable country numbers**, that names what the **Numbers → Buy a number** picker has been reading all along: the per-country capability inventory behind the `GET /numbers/country-capabilities` endpoint. This guide explains what the announcement anchors, what the inventory actually contains, and how to run the same check yourself before you buy.

## What the rebuilt page contains

The announcement has two halves, and both are on the hub entry:

1. **The inventory counts themselves** — provisioning-capable bucket counts by country, announced as generally available on every workspace. Line types (mobile, local, toll-free) are counted separately, and voice and SMS capability are counted per type.
2. **The hub-style subject** — the announcements hub is the surface that now pins this read. Before the entry shipped, the capability inventory existed and powered the picker, but no announcement anchor ever named it; the hub entry is the record that closes that gap.

The hub is a marketing surface, so it does not render live counts. It links the country capabilities docs page, which is where the inventory is described field by field.

## Per-country capability inventory breakdown

Each country summary breaks into the following buckets:

| Bucket                                  | What it counts                                                                                                                                                                                     |
| --------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `mobile_sms` / `mobile_voice`           | Mobile numbers with SMS / voice capability.                                                                                                                                                        |
| `local_sms` / `local_voice`             | Local numbers with SMS / voice capability. A zero `local_sms` in most of Europe is a carrier-level fact — landlines there do not carry SMS.                                                        |
| `toll_free`                             | Toll-free numbers, any capability.                                                                                                                                                                 |
| `toll_free_sms`                         | Toll-free numbers advertising SMS — **send-only**, with no inbound reply leg.                                                                                                                      |
| `two_way_sms`                           | Derived count of numbers whose carrier confirms a receive leg as well as a send leg. It is **not** the sum of the SMS buckets: send-only toll-free is excluded entirely.                           |
| `us_uses_10dlc` / `local_sms_via_10dlc` | US-specific shaping: upstream carriers hold no mobile DID inventory for the US, so every A2P sender is a 10DLC-registered local number, and the extra field counts locals eligible for a campaign. |

Counts clamp at 100 per bucket — read `100` as "plenty in stock", not an exact count — and each probe sums across every carrier that serves the country without attributing a provider name to any bucket.

## Pre-purchase workflow

In the dashboard:

1. Open **Numbers → Buy a number** and pick a country.
2. The picker issues one summary read for that country and pre-dims the buckets that would come back empty — a Germany-local SMS option appears dimmed instead of returning an empty search.
3. Run the live search inside a bucket that has stock. The search is uncached and returns the specific numbers, prices, and regulatory requirements the summary deliberately omits.

The summary read and the live search are separate calls: the summary tells you which buckets to aim at, and the search enumerates individual numbers inside them.

## Relationship to `GET /numbers/country-capabilities`

The picker reads the same endpoint you can call directly:

```bash theme={null}
curl "https://api.orbit.devotel.io/api/v1/numbers/country-capabilities?country=GB" \
  -H "X-API-Key: dv_live_sk_..."
```

The response carries the bucket table above plus a `last_updated` timestamp. Two properties of the contract matter for how you use it:

* **Counts are inventory checks, not pricing quotes.** A non-zero bucket tells you stock exists; it never tells you what a number costs, its monthly or setup price, or its regulatory requirements. All three come from the live number search and the [regulatory preview](/numbers/regulatory-preview).
* **The result is cached for 5 minutes server-side** (degraded aggregates self-heal in about 20 seconds). Refetching more often than the TTL re-reads the cache, so cache client-side at the same cadence.

## Check before buying

The field-by-field meanings, the clamping and caching contract, and the worked UK/Germany/US scenarios are documented on the [country capabilities page](/numbers/country-capabilities) — also reachable at `https://orbit.devotel.io/docs/numbers/country-capabilities`. Read that page before encoding any bucket logic into your own tooling; the two scenarios most often misread are a non-zero `toll_free_sms` alongside a zero `two_way_sms` (send-only toll-free) and a zero `local_sms` in European countries (carrier-level, not a stock outage).

## See also

* [Country capabilities reference](/numbers/country-capabilities) — endpoint contract, fields, caching, and scenarios.
* [Buy numbers guide](/guides/buy-numbers) — the full search → buy → wire loop.
* [Regulatory preview](/numbers/regulatory-preview) — document requirements a count never conveys.
* [Phone Numbers overview](/numbers/overview) — the full endpoint surface including the live search.
