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

# Purchase phone number

> A step by step guide to buy a number from Retell

This guide will walk through how to purchase a number from Retell. The numbers
are managed by Retell, so you don't have to worry about the telephony infrastructure.

<Note>Currently we only support purchase of US and Canada numbers and support making calls to [15 countries](/deploy/international-call). If you are looking to use numbers from other countries, or to make calls to more countries, or to use your own telephony provider, check out [Custom Telephony guide](/deploy/custom-telephony).</Note>

### From Dashboard

You can purchase and bind agents to the number from the dashboard. You can optionally specify the
area codes you want to purchase from.

<img height="200" src="https://mintcdn.com/retellai/rxvYffEkEJPRL1KD/images/deploy/purchase-number/purchase-new.png?fit=max&auto=format&n=rxvYffEkEJPRL1KD&q=85&s=37af1861e983af1260f2ecc0fec5337d" data-path="images/deploy/purchase-number/purchase-new.png" />

After the number is purchased, you can change its nickname so that it's easier for you to find and identify.

<img height="200" src="https://mintcdn.com/retellai/rxvYffEkEJPRL1KD/images/deploy/purchase-number/rename.jpeg?fit=max&auto=format&n=rxvYffEkEJPRL1KD&q=85&s=2d38919aecddc341584dff635e13d6a1" data-path="images/deploy/purchase-number/rename.jpeg" />

At this stage, the number should already be ready to accept inbound calls if you have assigned an inbound agent.
Give it a try by calling it!

### From API

Check out [Create Phone Number API Reference](/api-references/create-phone-number)
for all the parameters you can use programmatically.

* Phone numbers are yours once purchased, and can be used indefinitely.
  Find numbers you own [here](/api-references/list-phone-numbers).
* You can assign different inbound and outbound agent to the number.
* If you don't want user to be able to call this number (maybe you are doing outbound and don't
  want callbacks), you can leave `inbound_agent_id` unset.

<CodeGroup>
  ```typescript Node theme={null}
  const phoneNumberResponse = await retell.phoneNumber.create({
    inbound_agent_id: "oBeDLoLOeuAbiuaMFXRtDOLriTJ5tSxD", // replace with the agent id you want to assign
    outbound_agent_id: "oBeDLoLOeuAbiuaMFXRtDOLriTJ5tSxD", // replace with the agent id you want to assign
  });

  console.log(phoneNumberResponse);
  ```

  ```python Python theme={null}
  # Purhcase a phone number
  phone_number = client.phone_number.create(
    inbound_agent_id="oBeDLoLOeuAbiuaMFXRtDOLriTJ5tSxD", # replace with the agent id you want to assign
    outbound_agent_id: "oBeDLoLOeuAbiuaMFXRtDOLriTJ5tSxD", # replace with the agent id you want to assign
  )
  print(phone_number)
  ```
</CodeGroup>

### Pricing

We support both **Twilio** and **Telnyx** numbers:

* **Twilio**
  * US numbers: **\$2/month**
  * US toll-free numbers: **\$5/month**
  * Canadian numbers: **\$2/month**
* **Telnyx**
  * US numbers only: **\$2/month**

> ⚠️ **Note:** Toll-free numbers cost \$0.06 per minute for inbound calls. Outbound calls are charged at the same rate as regular U.S. numbers.
