---
title: "List areas (rate centres) with stock and your price"
method: GET
path: "/api/v1/wholesale/areas"
tags: ["Wholesale"]
---

# List areas (rate centres) with stock and your price

`GET /api/v1/wholesale/areas`

## Request

- Base URL: `https://api.callnode.io`
- URL: `https://api.callnode.io/api/v1/wholesale/areas`
- Auth: API key in header `X-Api-Key` and API key in header `X-Timestamp` and API key in header `X-Signature`

Areas with available stock and `estMonthlyUsd` — YOUR contract price
per number in that area, resolved server-side. There is no per-number
search on wholesale inventory: you order from an area and a number is
allocated.

The first fetch for a large country (the UK has 600+ rate centres) can
take up to a minute; results are cached server-side for ~10 minutes.
Stock above zero does not guarantee an order succeeds — on an order
failure, pick a different area rather than retrying the same one.

## Query parameters

- `countryId` string
- `stateId` string

## Response `200`

Areas offering wholesale numbers.

- object
  - `areas` object[]
    - `areaId` string: Opaque token. Order with it in the same session.
    - `areaName` string
    - `areaCode` string
    - `stock` integer
    - `orderable` boolean
    - `estMonthlyUsd` number, nullable: Your monthly price per number in this area, at your contract rates.

## Other responses

- `401`: Missing, unknown, or badly signed credentials — check the HMAC and the timestamp skew.
- `403`: Wholesale not active, or verification incomplete.

---

[API](https://skmtc.dev/callnode/apis/callnode-outbound-api.md) · [All operations](https://skmtc.dev/callnode/apis/callnode-outbound-api/llms.txt) · [OpenAPI document](https://skmtc.dev/callnode/apis/callnode-outbound-api/revisions/c7da6ad06509?raw)
