Skip to content
Get started

List phone numbers

client.PhoneNumbers.List(ctx) (*PhoneNumberListResponse, error)
GET/v3/phone_numbers

Returns all phone numbers assigned to the authenticated partner. Use this endpoint to discover which phone numbers are available for use as the from field when creating a chat, listing chats, or sending a voice memo.

ReturnsExpand Collapse
type PhoneNumberListResponse struct{…}
PhoneNumbers []PhoneNumberListResponsePhoneNumber

List of phone numbers assigned to the partner

ID string

Unique identifier for the phone number

formatuuid
HealthStatus PhoneNumberListResponsePhoneNumberHealthStatus

[BETA] Current health for a phone line. Always present — lines start at HEALTHY and may shift based on aggregate engagement and delivery signals across all conversations on the line.

Unlike chat health, line health does not include opted_out — opt-out applies to individual recipients, not the whole line.

See the Phone Health guide for what each status means and how to react.

DocURL string

Deep-link to the relevant section of the Phone Health guide for this status.

formaturi
Status string

Current health of this phone line as assessed by risk-service.

  • HEALTHY — No elevated risk detected.
  • AT_RISK — Elevated risk indicators present; consider reducing send volume or reviewing messaging patterns.
  • CRITICAL — High risk; further sending may result in line flagging or restriction.
  • FLAGGED — The line is actively dropping iMessages and is in a degraded state. Move traffic off it immediately. Depending on severity it may recover in at least 24 hours.

Defaults to HEALTHY for lines that have not yet been scored.

One of the following:
const PhoneNumberListResponsePhoneNumberHealthStatusStatusHealthy PhoneNumberListResponsePhoneNumberHealthStatusStatus = "HEALTHY"
const PhoneNumberListResponsePhoneNumberHealthStatusStatusAtRisk PhoneNumberListResponsePhoneNumberHealthStatusStatus = "AT_RISK"
const PhoneNumberListResponsePhoneNumberHealthStatusStatusCritical PhoneNumberListResponsePhoneNumberHealthStatusStatus = "CRITICAL"
const PhoneNumberListResponsePhoneNumberHealthStatusStatusFlagged PhoneNumberListResponsePhoneNumberHealthStatusStatus = "FLAGGED"
PhoneNumber string

Phone number in E.164 format

List phone numbers

package main

import (
  "context"
  "fmt"

  "github.com/linq-team/linq-go"
  "github.com/linq-team/linq-go/option"
)

func main() {
  client := linqgo.NewClient(
    option.WithAPIKey("My API Key"),
  )
  phoneNumbers, err := client.PhoneNumbers.List(context.TODO())
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", phoneNumbers.PhoneNumbers)
}
{
  "phone_numbers": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "phone_number": "+12025551234",
      "health_status": {
        "status": "HEALTHY",
        "doc_url": "https://docs.linqapp.com/guides/phone-numbers/phone-health#healthy"
      }
    },
    {
      "id": "550e8400-e29b-41d4-a716-446655440001",
      "phone_number": "+12025559876",
      "health_status": {
        "status": "AT_RISK",
        "doc_url": "https://docs.linqapp.com/guides/phone-numbers/phone-health#at-risk"
      }
    }
  ]
}
{
  "error": {
    "status": 401,
    "code": 2004,
    "message": "Unauthorized - missing or invalid authentication token",
    "doc_url": "https://docs.linqapp.com/error/codes/2xxx/2004/"
  },
  "success": false
}
{
  "error": {
    "status": 500,
    "code": 3006,
    "message": "Internal server error",
    "doc_url": "https://docs.linqapp.com/error/codes/3xxx/3006/"
  },
  "success": false
}
Returns Examples
{
  "phone_numbers": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "phone_number": "+12025551234",
      "health_status": {
        "status": "HEALTHY",
        "doc_url": "https://docs.linqapp.com/guides/phone-numbers/phone-health#healthy"
      }
    },
    {
      "id": "550e8400-e29b-41d4-a716-446655440001",
      "phone_number": "+12025559876",
      "health_status": {
        "status": "AT_RISK",
        "doc_url": "https://docs.linqapp.com/guides/phone-numbers/phone-health#at-risk"
      }
    }
  ]
}
{
  "error": {
    "status": 401,
    "code": 2004,
    "message": "Unauthorized - missing or invalid authentication token",
    "doc_url": "https://docs.linqapp.com/error/codes/2xxx/2004/"
  },
  "success": false
}
{
  "error": {
    "status": 500,
    "code": 3006,
    "message": "Internal server error",
    "doc_url": "https://docs.linqapp.com/error/codes/3xxx/3006/"
  },
  "success": false
}