> For a complete page index, fetch https://developer.close.com/llms.txt

# Retrieve a single phone number

GET https://api.close.com/api/v1/phone_number/{id}/

Reference: https://developer.close.com/api/resources/phone-numbers/get

## Authentication

- `Authorization` header (basic auth, required) — Use your API key as the username and leave the password empty.
- `Authorization` header (bearer token, required)

## Request

### Path parameters

- `id` (string, required)

### Query parameters

- `_fields` (string, optional) — Comma-separated list of fields to include in the response.

## Response

### 200

Successful response

- `address_id` (string, required, nullable)
- `bundle_id` (string, required, nullable)
- `carrier` (enum, required, nullable)
  - Allowed values: `twilio`, `plivo`
- `carrier_type` (enum, required, nullable)
  - Allowed values: `local`, `national`, `mobile`, `tollfree`, `shortcode`
- `country` (string, required, nullable)
- `date_created` (datetime, required)
- `date_updated` (datetime, required)
- `id` (string, required)
- `is_premium` (boolean, required)
- `is_verified` (boolean, required)
- `label` (string, required)
- `last_billed_price` (double, required, nullable)
- `mms_enabled` (boolean, required)
- `next_billing_on` (datetime, required, nullable)
- `number` (string, required)
- `number_formatted` (string, required)
- `organization_id` (string, required)
- `sms_enabled` (boolean, required)
- `supports_mms_to_countries` (list of string, required)
- `supports_sms_to_countries` (list of string, required)
- `type` (enum, required)
  - Allowed values: `internal`, `external`, `virtual`
- `is_group_number` (boolean, required, deprecated) — Deprecated. The distinction between personal and group numbers is being removed, and `is_group_number` will be removed in a future update.
- `user_id` (string, required, nullable, deprecated) — Deprecated. Set to the sole member's user ID for single-member numbers, otherwise `null`. `user_id` will be removed in a future update.
- `forward_to` (string, optional, nullable)
- `forward_to_enabled` (boolean, optional)
- `forward_to_formatted` (string, optional, nullable)
- `inbound_ring_duration` (integer, optional, nullable) — Number of seconds we ring this number on inbound calls before moving on (e.g. to voicemail). `null` means the default of 30 seconds is used.
- `participants` (list of string, optional)
- `phone_numbers` (list of string, optional)
- `phone_numbers_formatted` (list of string, optional)
- `press_1_to_accept` (boolean, optional)
- `voicemail_greeting_url` (string, optional, nullable)
- `was_ported` (boolean, optional)

## Examples

**Response**

```json
{
  "address_id": null,
  "bundle_id": null,
  "carrier": null,
  "carrier_type": null,
  "country": "US",
  "date_created": "2016-07-18T22:54:24.787000+00:00",
  "date_updated": "2016-07-18T22:55:55.938000+00:00",
  "id": "phon_asdjkfev50ZKOqTVndOFN4effzv99vDvpDxrks9XLU3",
  "is_premium": false,
  "is_verified": true,
  "label": "Primary Number",
  "last_billed_price": null,
  "mms_enabled": true,
  "next_billing_on": null,
  "number": "+16503335555",
  "number_formatted": "+1 650-333-5555",
  "organization_id": "orga_RbREgmiiwcr1w2b4cOnCMQaQPSIFxMqAD2Dh243uxcH",
  "sms_enabled": true,
  "supports_mms_to_countries": [
    "CA",
    "US"
  ],
  "supports_sms_to_countries": [
    "CA",
    "US"
  ],
  "type": "internal",
  "is_group_number": false,
  "user_id": "user_N6KhMpzHRCYQHdn4gRNIFNN5JExnsrprKA6ekxM63XA",
  "forward_to": null,
  "forward_to_enabled": false,
  "forward_to_formatted": null,
  "inbound_ring_duration": null,
  "press_1_to_accept": false,
  "voicemail_greeting_url": null
}
```

**SDK Code**

```python phone_numbers_get_example
import requests

url = "https://api.close.com/api/v1/phone_number/id/"

response = requests.get(url, auth=("<CLOSE_API_KEY>", ""))

print(response.json())
```

```javascript phone_numbers_get_example
const url = 'https://api.close.com/api/v1/phone_number/id/';
const credentials = btoa("<CLOSE_API_KEY>:");

const options = {method: 'GET', headers: {Authorization: `Basic ${credentials}`}};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go phone_numbers_get_example
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "https://api.close.com/api/v1/phone_number/id/"

	req, _ := http.NewRequest("GET", url, nil)

	req.SetBasicAuth("<CLOSE_API_KEY>", "")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby phone_numbers_get_example
require 'uri'
require 'net/http'

url = URI("https://api.close.com/api/v1/phone_number/id/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request.basic_auth("<CLOSE_API_KEY>", "")

response = http.request(request)
puts response.read_body
```

```java phone_numbers_get_example
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.get("https://api.close.com/api/v1/phone_number/id/")
  .basicAuth("<CLOSE_API_KEY>", "")
  .asString();
```

```php phone_numbers_get_example
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('GET', 'https://api.close.com/api/v1/phone_number/id/', [
  'headers' => [
  ],
    'auth' => ['<CLOSE_API_KEY>', ''],
]);

echo $response->getBody();
```

```csharp phone_numbers_get_example
using RestSharp;
using RestSharp.Authenticators;

var client = new RestClient("https://api.close.com/api/v1/phone_number/id/");
client.Authenticator = new HttpBasicAuthenticator("<CLOSE_API_KEY>", "");
var request = new RestRequest(Method.GET);

IRestResponse response = client.Execute(request);
```