api/go/telnyx-numbers-config-go/SKILL.md
Configure phone number settings including caller ID, call forwarding, messaging enablement, and connection assignments. This skill provides Go SDK examples.
npx skillsauth add team-telnyx/telnyx-toolkit telnyx-numbers-config-goInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
go get github.com/team-telnyx/telnyx-go
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.
GET /phone_number_blocks/jobs
page, err := client.PhoneNumberBlocks.Jobs.List(context.TODO(), telnyx.PhoneNumberBlockJobListParams{})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", page)
GET /phone_number_blocks/jobs/{id}
job, err := client.PhoneNumberBlocks.Jobs.Get(context.TODO(), "id")
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", job.Data)
Creates a new background job to delete all the phone numbers associated with the given block.
POST /phone_number_blocks/jobs/delete_phone_number_block — Required: phone_number_block_id
response, err := client.PhoneNumberBlocks.Jobs.DeletePhoneNumberBlock(context.TODO(), telnyx.PhoneNumberBlockJobDeletePhoneNumberBlockParams{
PhoneNumberBlockID: "f3946371-7199-4261-9c3d-81a0d7935146",
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", response.Data)
GET /phone_numbers
page, err := client.PhoneNumbers.List(context.TODO(), telnyx.PhoneNumberListParams{})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", page)
GET /phone_numbers/{id}
phoneNumber, err := client.PhoneNumbers.Get(context.TODO(), "1293384261075731499")
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", phoneNumber.Data)
PATCH /phone_numbers/{id}
phoneNumber, err := client.PhoneNumbers.Update(
context.TODO(),
"1293384261075731499",
telnyx.PhoneNumberUpdateParams{},
)
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", phoneNumber.Data)
DELETE /phone_numbers/{id}
phoneNumber, err := client.PhoneNumbers.Delete(context.TODO(), "1293384261075731499")
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", phoneNumber.Data)
PATCH /phone_numbers/{id}/actions/bundle_status_change — Required: bundle_id
response, err := client.PhoneNumbers.Actions.ChangeBundleStatus(
context.TODO(),
"1293384261075731499",
telnyx.PhoneNumberActionChangeBundleStatusParams{
BundleID: "5194d8fc-87e6-4188-baa9-1c434bbe861b",
},
)
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", response.Data)
POST /phone_numbers/{id}/actions/enable_emergency — Required: emergency_enabled, emergency_address_id
response, err := client.PhoneNumbers.Actions.EnableEmergency(
context.TODO(),
"1293384261075731499",
telnyx.PhoneNumberActionEnableEmergencyParams{
EmergencyAddressID: "53829456729313",
EmergencyEnabled: true,
},
)
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", response.Data)
GET /phone_numbers/{id}/voice
voice, err := client.PhoneNumbers.Voice.Get(context.TODO(), "1293384261075731499")
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", voice.Data)
PATCH /phone_numbers/{id}/voice
voice, err := client.PhoneNumbers.Voice.Update(
context.TODO(),
"1293384261075731499",
telnyx.PhoneNumberVoiceUpdateParams{
UpdateVoiceSettings: telnyx.UpdateVoiceSettingsParam{},
},
)
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", voice.Data)
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.TODO(), telnyx.PhoneNumberActionVerifyOwnershipParams{
PhoneNumbers: []string{"+15551234567"},
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", response.Data)
GET /phone_numbers/csv_downloads
page, err := client.PhoneNumbers.CsvDownloads.List(context.TODO(), telnyx.PhoneNumberCsvDownloadListParams{})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", page)
POST /phone_numbers/csv_downloads
csvDownload, err := client.PhoneNumbers.CsvDownloads.New(context.TODO(), telnyx.PhoneNumberCsvDownloadNewParams{})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", csvDownload.Data)
GET /phone_numbers/csv_downloads/{id}
csvDownload, err := client.PhoneNumbers.CsvDownloads.Get(context.TODO(), "id")
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", csvDownload.Data)
GET /phone_numbers/jobs
page, err := client.PhoneNumbers.Jobs.List(context.TODO(), telnyx.PhoneNumberJobListParams{})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", page)
GET /phone_numbers/jobs/{id}
job, err := client.PhoneNumbers.Jobs.Get(context.TODO(), "id")
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", job.Data)
Creates a new background job to delete a batch of numbers.
POST /phone_numbers/jobs/delete_phone_numbers — Required: phone_numbers
response, err := client.PhoneNumbers.Jobs.DeleteBatch(context.TODO(), telnyx.PhoneNumberJobDeleteBatchParams{
PhoneNumbers: []string{"+19705555098", "+19715555098", "32873127836"},
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", response.Data)
Creates a background job to update the emergency settings of a collection of phone numbers.
POST /phone_numbers/jobs/update_emergency_settings — Required: emergency_enabled, phone_numbers
response, err := client.PhoneNumbers.Jobs.UpdateEmergencySettingsBatch(context.TODO(), telnyx.PhoneNumberJobUpdateEmergencySettingsBatchParams{
EmergencyEnabled: true,
PhoneNumbers: []string{"+19705555098", "+19715555098", "32873127836"},
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", response.Data)
Creates a new background job to update a batch of numbers.
POST /phone_numbers/jobs/update_phone_numbers — Required: phone_numbers
response, err := client.PhoneNumbers.Jobs.UpdateBatch(context.TODO(), telnyx.PhoneNumberJobUpdateBatchParams{
PhoneNumbers: []string{"1583466971586889004", "+13127367254"},
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", response.Data)
GET /phone_numbers/regulatory_requirements
phoneNumbersRegulatoryRequirement, err := client.PhoneNumbersRegulatoryRequirements.Get(context.TODO(), telnyx.PhoneNumbersRegulatoryRequirementGetParams{})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", phoneNumbersRegulatoryRequirement.Data)
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.TODO(), telnyx.PhoneNumberSlimListParams{})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", page)
GET /phone_numbers/voice
page, err := client.PhoneNumbers.Voice.List(context.TODO(), telnyx.PhoneNumberVoiceListParams{})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", page)
GET /v2/mobile_phone_numbers
page, err := client.MobilePhoneNumbers.List(context.TODO(), telnyx.MobilePhoneNumberListParams{})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", page)
GET /v2/mobile_phone_numbers/{id}
mobilePhoneNumber, err := client.MobilePhoneNumbers.Get(context.TODO(), "id")
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", mobilePhoneNumber.Data)
PATCH /v2/mobile_phone_numbers/{id}
mobilePhoneNumber, err := client.MobilePhoneNumbers.Update(
context.TODO(),
"id",
telnyx.MobilePhoneNumberUpdateParams{},
)
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", mobilePhoneNumber.Data)
tools
Build cross-platform VoIP calling apps with React Native using Telnyx Voice SDK. High-level reactive API with automatic lifecycle management, CallKit/ConnectionService integration, and push notifications. Use for mobile VoIP apps with minimal setup.
tools
Build browser-based VoIP calling apps using Telnyx WebRTC JavaScript SDK. Covers authentication, voice calls, events, debugging, call quality metrics, and AI Agent integration. Use for web-based real-time communication.
tools
Build VoIP calling apps on iOS using Telnyx WebRTC SDK. Covers authentication, making/receiving calls, CallKit integration, PushKit/APNS push notifications, call quality metrics, and AI Agent integration. Use when implementing real-time voice communication on iOS.
tools
Build cross-platform VoIP calling apps with Flutter using Telnyx WebRTC SDK. Covers authentication, making/receiving calls, push notifications (FCM + APNS), call quality metrics, and AI Agent integration. Works on Android, iOS, and Web.