SuperAPI AI Directory

telnyx-numbers-config-go

Coding & development

View repository

Updated 10-16 09:52

About this skill

Telnyx Numbers Config - Go

Installation

go get github.com/team-telnyx/telnyx-go

Setup

import (
  "context"
  "fmt"
  "os"

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

client := telnyx.NewClient( option.WithAPIKey(os.Getenv("TELNYX_API_KEY")), )


All examples below assume `client` is already initialized as shown above.

## Error Handling

All API calls can fail with network errors, rate limits (429), validation errors (422),
or authentication errors (401). Always handle errors in production code:

```go
import "errors"

result, err := client.Messages.Send(ctx, params)
if err != nil {
  var apiErr *telnyx.Error
  if errors.As(err, &apiErr) {
    switch apiErr.StatusCode {
    case 422:
      fmt.Println("Validation error — check required fields and formats")
    case 429:
      // Rate limited — wait and retry with exponential backoff
      fmt.Println("Rate limited, retrying...")
    default:
      fmt.Printf("API error %d: %s\n", apiErr.StatusCode, apiErr.Error())
    }
  } else {
    fmt.Println("Network error — check connectivity and retry")
  }
}

Common error codes: 401 invalid API key, 403 insufficient permissions, 404 resource not found, 422 validation error (check field formats), 429 rate limited (retry with exponential backoff).

Important Notes

  • Phone numbers must be in E.164 format (e.g., +13125550001). Include the + prefix and country code. No spaces, dashes, or parentheses.
  • Pagination: Use ListAutoPaging() for automatic iteration: iter := client.Resource.ListAutoPaging(ctx, params); for iter.Next() { item := iter.Current() }.

Bulk update phone number profiles

POST /messaging_numbers_bulk_updates — Required: messaging_profile_id, numbers

Optional: assign_only (boolean)

	messagingNumbersBulkUpdate, err := client.MessagingNumbersBulkUpdates.New(context.Background(), telnyx.MessagingNumbersBulkUpdateNewParams{
		MessagingProfileID: "00000000-0000-0000-0000-000000000000",
		Numbers:            []string{"+18880000000", "+18880000001", "+18880000002"},
	})
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%+v\n", messagingNumbersBulkUpdate.Data)

Returns: failed (array[string]), order_id (uuid), pending (array[string]), record_type (enum: messaging_numbers_bulk_update), success (array[string])

Retrieve bulk update status

GET /messaging_numbers_bulk_updates/{order_id}

	messagingNumbersBulkUpdate, err := client.MessagingNumbersBulkUpdates.Get(context.Background(), "order_id")
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%+v\n", messagingNumbersBulkUpdate.Data)

Returns: failed (array[string]), order_id (uuid), pending (array[string]), record_type (enum: messaging_numbers_bulk_update), success (array[string])

List mobile phone numbers with messaging settings

GET /mobile_phone_numbers/messaging

	page, err := client.MobilePhoneNumbers.Messaging.List(context.Background(), telnyx.MobilePhoneNumberMessagingListParams{})
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%+v\n", page)

Returns: country_code (string), created_at (date-time), features (object), id (string), messaging_product (string), messaging_profile_id (string | null), organization_id (string), phone_number (string), record_type (enum: messaging_phone_number, messaging_settings), tags (array[string]), traffic_type (string), type (enum: longcode), updated_at (date-time)

Retrieve a mobile phone number with messaging settings

GET /mobile_phone_numbers/{id}/messaging

	messaging, err := client.MobilePhoneNumbers.Messaging.Get(context.Background(), "id")
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%+v\n", messaging.Data)

Returns: country_code (string), created_at (date-time), features (object), id (string), messaging_product (string), messaging_profile_id (string | null), organization_id (string), phone_number (string), record_type (enum: messaging_phone_number, messaging_settings), tags (array[string]), traffic_type (string), type (enum: longcode), updated_at (date-time)

List phone numbers

GET /phone_numbers

	page, err := client.PhoneNumbers.List(context.Background(), telnyx.PhoneNumberListParams{})
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%+v\n", page)

Returns: billing_group_id (string | null), call_forwarding_enabled (boolean), call_recording_enabled (boolean), caller_id_name_enabled (boolean), cnam_listing_enabled (boolean), connection_id (string | null), connection_name (string | null), country_iso_alpha2 (string), created_at (date-time), customer_reference (string | null), deletion_lock_enabled (boolean), emergency_address_id (string | null), emergency_enabled (boolean), emergency_status (enum: active, deprovisioning, disabled, provisioning, provisioning-failed), external_pin (string | null), hd_voice_enabled (boolean), id (string), inbound_call_screening (enum: disabled, reject_calls, flag_calls), messaging_profile_id (string | null), messaging_profile_name (string | null), phone_number (string), phone_number_type (enum: local, toll_free, mobile, national, shared_cost, landline, tollfree, shortcode, longcode), purchased_at (string), record_type (string), source_type (object), status (enum: purchase-pending, purchase-failed, port-pending, port-failed, active, deleted, emergency-only, ported-out, port-out-pending, requirement-info-pending, requirement-info-under-review, requirement-info-exception, provision-pending), t38_fax_gateway_enabled (boolean), tags (array[string]), updated_at (string)

Verify ownership of phone numbers

Verifies ownership of the provided phone numbers and returns a mapping of numbers to their IDs, plus a list of numbers not found in the account.

POST /phone_numbers/actions/verify_ownership — Required: phone_numbers

	response, err := client.PhoneNumbers.Actions.VerifyOwnership(context.Background(), telnyx.PhoneNumberActionVerifyOwnershipParams{
		PhoneNumbers: []string{"+15551234567"},
	})
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%+v\n", response.Data)

Returns: found (array[object]), not_found (array[string]), record_type (string)

Lists the phone numbers jobs

GET /phone_numbers/jobs

	page, err := client.PhoneNumbers.Jobs.List(context.Background(), telnyx.PhoneNumberJobListParams{})
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%+v\n", page)

Returns: created_at (string), etc (date-time), failed_operations (array[object]), id (uuid), pending_operations (array[object]), phone_numbers (array[object]), record_type (string), status (enum: pending, in_progress, completed, failed, expired), successful_operations (array[object]), type (enum: update_emergency_settings, delete_phone_numbers, update_phone_numbers), updated_at (string)

Delete a batch of numbers

Creates a new background job to delete a batch of numbers. At most one thousand numbers can be updated per API call.

POST /phone_numbers/jobs/delete_phone_numbers — Required: phone_numbers

	response, err := client.PhoneNumbers.Jobs.DeleteBatch(context.Background(), telnyx.PhoneNumberJobDeleteBatchParams{
		PhoneNumbers: []string{"+19705555098", "+19715555098", "32873127836"},
	})
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%+v\n", response.Data)

Returns: created_at (string), etc (date-time), failed_operations (array[object]), id (uuid), pending_operations (array[object]), phone_numbers (array[object]), record_type (string), status (enum: pending, in_progress, completed, failed, expired), successful_operations (array[object]), type (enum: update_emergency_settings, delete_phone_numbers, update_phone_numbers), updated_at (string)

Update the emergency settings from a batch of numbers

Creates a background job to update the emergency settings of a collection of phone numbers. At most one thousand numbers can be updated per API call.

POST /phone_numbers/jobs/update_emergency_settings — Required: emergency_enabled, phone_numbers

Optional: emergency_address_id (string | null)

	response, err := client.PhoneNumbers.Jobs.UpdateEmergencySettingsBatch(context.Background(), telnyx.PhoneNumberJobUpdateEmergencySettingsBatchParams{
		EmergencyEnabled: true,
		PhoneNumbers:     []string{"+19705555098", "+19715555098", "32873127836"},
	})
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%+v\n", response.Data)

Returns: created_at (string), etc (date-time), failed_operations (array[object]), id (uuid), pending_operations (array[object]), phone_numbers (array[object]), record_type (string), status (enum: pending, in_progress, completed, failed, expired), successful_operations (array[object]), type (enum: update_emergency_settings, delete_phone_numbers, update_phone_numbers), updated_at (string)

Update a batch of numbers

Creates a new background job to update a batch of numbers. At most one thousand numbers can be updated per API call. At least one of the updateable fields must be submitted.

POST /phone_numbers/jobs/update_phone_numbers — Required: phone_numbers

Optional: billing_group_id (string), connection_id (string), customer_reference (string), deletion_lock_enabled (boolean), external_pin (string), hd_voice_enabled (boolean), tags (array[string]), voice (object)

	response, err := client.PhoneNumbers.Jobs.UpdateBatch(context.Background(), telnyx.PhoneNumberJobUpdateBatchParams{
		PhoneNumbers: []string{"1583466971586889004", "+13127367254"},
	})
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%+v\n", response.Data)

Returns: created_at (string), etc (date-time), failed_operations (array[object]), id (uuid), pending_operations (array[object]), phone_numbers (array[object]), record_type (string), status (enum: pending, in_progress, completed, failed, expired), successful_operations (array[object]), type (enum: update_emergency_settings, delete_phone_numbers, update_phone_numbers), updated_at (string)

Retrieve a phone numbers job

GET /phone_numbers/jobs/{id}

	job, err := client.PhoneNumbers.Jobs.Get(context.Background(), "id")
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%+v\n", job.Data)

Returns: created_at (string), etc (date-time), failed_operations (array[object]), id (uuid), pending_operations (array[object]), phone_numbers (array[object]), record_type (string), status (enum: pending, in_progress, completed, failed, expired), successful_operations (array[object]), type (enum: update_emergency_settings, delete_phone_numbers, update_phone_numbers), updated_at (string)

List phone numbers with messaging settings

GET /phone_numbers/messaging

	page, err := client.PhoneNumbers.Messaging.List(context.Background(), telnyx.PhoneNumberMessagingListParams{})
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%+v\n", page)

Returns: country_code (string), created_at (date-time), eligible_messaging_products (array[string]), features (object), health (object), id (string), messaging_product (string), messaging_profile_id (string | null), organization_id (string), phone_number (string), record_type (enum: messaging_phone_number, messaging_settings), tags (array[string]), traffic_type (string), type (enum: long-code, toll-free, short-code, longcode, tollfree, shortcode), updated_at (date-time)

Slim List phone numbers

List phone numbers, This endpoint is a lighter version of the /phone_numbers endpoint having higher performance and rate limit.

GET /phone_numbers/slim

	page, err := client.PhoneNumbers.SlimList(context.Background(), telnyx.PhoneNumberSlimListParams{})
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%+v\n", page)

Returns: billing_group_id (string), call_forwarding_enabled (boolean), call_recording_enabled (boolean), caller_id_name_enabled (boolean), cnam_listing_enabled (boolean), connection_id (string), country_iso_alpha2 (string), created_at (string), customer_reference (string), emergency_address_id (string), emergency_enabled (boolean), emergency_status (enum: active, deprovisioning, disabled, provisioning, provisioning-failed), external_pin (string), hd_voice_enabled (boolean), id (string), inbound_call_screening (enum: disabled, reject_calls, flag_calls), phone_number (string), phone_number_type (enum: local, toll_free, mobile, national, shared_cost, landline, tollfree, shortcode, longcode), purchased_at (string), record_type (string), status (enum: purchase-pending, purchase-failed, port-pending, port-failed, active, deleted, emergency-only, ported-out, port-out-pending, requirement-info-pending, requirement-info-under-review, requirement-info-exception, provision-pending), t38_fax_gateway_enabled (boolean), updated_at (string)

List phone numbers with voice settings

GET /phone_numbers/voice

	page, err := client.PhoneNumbers.Voice.List(context.Background(), telnyx.PhoneNumberVoiceListParams{})
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%+v\n", page)

Returns: call_forwarding (object), call_recording (object), cnam_listing (object), connection_id (string), customer_reference (string), emergency (object), id (string), inbound_call_screening (enum: disabled, reject_calls, flag_calls), media_features (object), phone_number (string), record_type (string), tech_prefix_enabled (boolean), translated_number (string), usage_payment_method (enum: pay-per-minute, channel)

Retrieve a phone number

GET /phone_numbers/{id}

	phoneNumber, err := client.PhoneNumbers.Get(context.Background(), "1293384261075731499")
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%+v\n", phoneNumber.Data)

Returns: billing_group_id (string | null), call_forwarding_enabled (boolean), call_recording_enabled (boolean), caller_id_name_enabled (boolean), cnam_listing_enabled (boolean), connection_id (string | null), connection_name (string | null), country_iso_alpha2 (string), created_at (date-time), customer_reference (string | null), deletion_lock_enabled (boolean), emergency_address_id (string | null), emergency_enabled (boolean), emergency_status (enum: active, deprovisioning, disabled, provisioning, provisioning-failed), external_pin (string | null), hd_voice_enabled (boolean), id (string), inbound_call_screening (enum: disabled, reject_calls, flag_calls), messaging_profile_id (string | null), messaging_profile_name (string | null), phone_number (string), phone_number_type (enum: local, toll_free, mobile, national, shared_cost, landline, tollfree, shortcode, longcode), purchased_at (string), record_type (string), source_type (object), status (enum: purchase-pending, purchase-failed, port-pending, port-failed, active, deleted, emergency-only, ported-out, port-out-pending, requirement-info-pending, requirement-info-under-review, requirement-info-exception, provision-pending), t38_fax_gateway_enabled (boolean), tags (array[string]), updated_at (string)

Update a phone number

PATCH /phone_numbers/{id}

Optional: address_id (string), billing_group_id (string), connection_id (string), customer_reference (string), external_pin (string), hd_voice_enabled (boolean), id (string), tags (array[string])

	phoneNumber, err := client.PhoneNumbers.Update(
		context.Background(),
		"1293384261075731499",
		telnyx.PhoneNumberUpdateParams{},
	)
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%+v\n", phoneNumber.Data)

Returns: billing_group_id (string | null), call_forwarding_enabled (boolean), call_recording_enabled (boolean), caller_id_name_enabled (boolean), cnam_listing_enabled (boolean), connection_id (string | null), connection_name (string | null), country_iso_alpha2 (string), created_at (date-time), customer_reference (string | null), deletion_lock_enabled (boolean), emergency_address_id (string | null), emergency_enabled (boolean), emergency_status (enum: active, deprovisioning, disabled, provisioning, provisioning-failed), external_pin (string | null), hd_voice_enabled (boolean), id (string), inbound_call_screening (enum: disabled, reject_calls, flag_calls), messaging_profile_id (string | null), messaging_profile_name (string | null), phone_number (string), phone_number_type (enum: local, toll_free, mobile, national, shared_cost, landline, tollfree, shortcode, longcode), purchased_at (string), record_type (string), source_type (object), status (enum: purchase-pending, purchase-failed, port-pending, port-failed, active, deleted, emergency-only, ported-out, port-out-pending, requirement-info-pending, requirement-info-under-review, requirement-info-exception, provision-pending), t38_fax_gateway_enabled (boolean), tags (array[string]), updated_at (string)

Delete a phone number

DELETE /phone_numbers/{id}

	phoneNumber, err := client.PhoneNumbers.Delete(context.Background(), "1293384261075731499")
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%+v\n", phoneNumber.Data)

Returns: billing_group_id (string), call_forwarding_enabled (boolean), call_recording_enabled (boolean), caller_id_name_enabled (boolean), cnam_listing_enabled (boolean), connection_id (string), connection_name (string), created_at (string), customer_reference (string), deletion_lock_enabled (boolean), emergency_address_id (string), emergency_enabled (boolean), external_pin (string), hd_voice_enabled (boolean), id (string), messaging_profile_id (string), messaging_profile_name (string), phone_number (string), phone_number_type (enum: local, toll_free, mobile, national, shared_cost, landline), purchased_at (string), record_type (string), status (enum: purchase-pending, purchase-failed, port-pending, port-failed, active, deleted, emergency-only, ported-out, port-out-pending), t38_fax_gateway_enabled (boolean), tags (array[string]), updated_at (string)

Change the bundle status for a phone number (set to being in a bundle or remove from a bundle)

PATCH /phone_numbers/{id}/actions/bundle_status_change — Required: bundle_id

	response, err := client.PhoneNumbers.Actions.ChangeBundleStatus(
		context.Background(),
		"1293384261075731499",
		telnyx.PhoneNumberActionChangeBundleStatusParams{
			BundleID: "5194d8fc-87e6-4188-baa9-1c434bbe861b",
		},
	)
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%+v\n", response.Data)

Returns: call_forwarding (object), call_recording (object), cnam_listing (object), connection_id (string), customer_reference (string), emergency (object), id (string), inbound_call_screening (enum: disabled, reject_calls, flag_calls), media_features (object), phone_number (string), record_type (string), tech_prefix_enabled (boolean), translated_number (string), usage_payment_method (enum: pay-per-minute, channel)

Enable emergency for a phone number

POST /phone_numbers/{id}/actions/enable_emergency — Required: emergency_enabled, emergency_address_id

	response, err := client.PhoneNumbers.Actions.EnableEmergency(
		context.Background(),
		"1293384261075731499",
		telnyx.PhoneNumberActionEnableEmergencyParams{
			EmergencyAddressID: "53829456729313",
			EmergencyEnabled:   true,
		},
	)
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%+v\n", response.Data)

Returns: call_forwarding (object), call_recording (object), cnam_listing (object), connection_id (string), customer_reference (string), emergency (object), id (string), inbound_call_screening (enum: disabled, reject_calls, flag_calls), media_features (object), phone_number (string), record_type (string), tech_prefix_enabled (boolean), translated_number (string), usage_payment_method (enum: pay-per-minute, channel)

Retrieve a phone number with messaging settings

GET /phone_numbers/{id}/messaging

	messaging, err := client.PhoneNumbers.Messaging.Get(context.Background(), "id")
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%+v\n", messaging.Data)

Returns: country_code (string), created_at (date-time), eligible_messaging_products (array[string]), features (object), health (object), id (string), messaging_product (string), messaging_profile_id (string | null), organization_id (string), phone_number (string), record_type (enum: messaging_phone_number, messaging_settings), tags (array[string]), traffic_type (string), type (enum: long-code, toll-free, short-code, longcode, tollfree, shortcode), updated_at (date-time)

Update the messaging profile and/or messaging product of a phone number

PATCH /phone_numbers/{id}/messaging

Optional: messaging_product (string), messaging_profile_id (string), tags (array[string])

	messaging, err := client.PhoneNumbers.Messaging.Update(
		context.Background(),
		"id",
		telnyx.PhoneNumberMessagingUpdateParams{},
	)
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%+v\n", messaging.Data)

Returns: country_code (string), created_at (date-time), eligible_messaging_products (array[string]), features (object), health (object), id (string), messaging_product (string), messaging_profile_id (string | null), organization_id (string), phone_number (string), record_type (enum: messaging_phone_number, messaging_settings), tags (array[string]), traffic_type (string), type (enum: long-code, toll-free, short-code, longcode, tollfree, shortcode), updated_at (date-time)

Retrieve a phone number with voice settings

GET /phone_numbers/{id}/voice

	voice, err := client.PhoneNumbers.Voice.Get(context.Background(), "1293384261075731499")
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%+v\n", voice.Data)

Returns: call_forwarding (object), call_recording (object), cnam_listing (object), connection_id (string), customer_reference (string), emergency (object), id (string), inbound_call_screening (enum: disabled, reject_calls, flag_calls), media_features (object), phone_number (string), record_type (string), tech_prefix_enabled (boolean), translated_number (string), usage_payment_method (enum: pay-per-minute, channel)

Update a phone number with voice settings

PATCH /phone_numbers/{id}/voice

Optional: call_forwarding (object), call_recording (object), caller_id_name_enabled (boolean), cnam_listing (object), inbound_call_screening (enum: disabled, reject_calls, flag_calls), media_features (object), tech_prefix_enabled (boolean), translated_number (string), usage_payment_method (enum: pay-per-minute, channel)

	voice, err := client.PhoneNumbers.Voice.Update(
		context.Background(),
		"1293384261075731499",
		telnyx.PhoneNumberVoiceUpdateParams{
			UpdateVoiceSettings: telnyx.UpdateVoiceSettingsParam{},
		},
	)
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%+v\n", voice.Data)

Returns: call_forwarding (object), call_recording (object), cnam_listing (object), connection_id (string), customer_reference (string), emergency (object), id (string), inbound_call_screening (enum: disabled, reject_calls, flag_calls), media_features (object), phone_number (string), record_type (string), tech_prefix_enabled (boolean), translated_number (string), usage_payment_method (enum: pay-per-minute, channel)

List Mobile Phone Numbers

GET /v2/mobile_phone_numbers

	page, err := client.MobilePhoneNumbers.List(context.Background(), telnyx.MobilePhoneNumberListParams{})
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%+v\n", page)

Returns: call_forwarding (object), call_recording (object), caller_id_name_enabled (boolean), cnam_listing (object), connection_id (string | null), connection_name (string | null), connection_type (string | null), country_iso_alpha2 (string), created_at (date-time), customer_reference (string | null), id (string), inbound (object), inbound_call_screening (enum: disabled, reject_calls, flag_calls), mobile_voice_enabled (boolean), noise_suppression (enum: inbound, outbound, both, disabled), outbound (object), phone_number (string), record_type (string), sim_card_id (uuid), status (string), tags (array[string]), updated_at (date-time)

Retrieve a Mobile Phone Number

GET /v2/mobile_phone_numbers/{id}

	mobilePhoneNumber, err := client.MobilePhoneNumbers.Get(context.Background(), "id")
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%+v\n", mobilePhoneNumber.Data)

Returns: call_forwarding (object), call_recording (object), caller_id_name_enabled (boolean), cnam_listing (object), connection_id (string | null), connection_name (string | null), connection_type (string | null), country_iso_alpha2 (string), created_at (date-time), customer_reference (string | null), id (string), inbound (object), inbound_call_screening (enum: disabled, reject_calls, flag_calls), mobile_voice_enabled (boolean), noise_suppression (enum: inbound, outbound, both, disabled), outbound (object), phone_number (string), record_type (string), sim_card_id (uuid), status (string), tags (array[string]), updated_at (date-time)

Update a Mobile Phone Number

PATCH /v2/mobile_phone_numbers/{id}

Optional: call_forwarding (object), call_recording (object), caller_id_name_enabled (boolean), cnam_listing (object), connection_id (string | null), customer_reference (string | null), inbound (object), inbound_call_screening (enum: disabled, reject_calls, flag_calls), noise_suppression (boolean), outbound (object), tags (array[string])

	mobilePhoneNumber, err := client.MobilePhoneNumbers.Update(
		context.Background(),
		"id",
		telnyx.MobilePhoneNumberUpdateParams{},
	)
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%+v\n", mobilePhoneNumber.Data)

Returns: call_forwarding (object), call_recording (object), caller_id_name_enabled (boolean), cnam_listing (object), connection_id (string | null), connection_name (string | null), connection_type (string | null), country_iso_alpha2 (string), created_at (date-time), customer_reference (string | null), id (string), inbound (object), inbound_call_screening (enum: disabled, reject_calls, flag_calls), mobile_voice_enabled (boolean), noise_suppression (enum: inbound, outbound, both, disabled), outbound (object), phone_number (string), record_type (string), sim_card_id (uuid), status (string), tags (array[string]), updated_at (date-time)