telnyx-verify-go
npx skills add https://github.com/team-telnyx/telnyx-ext-agent-skills --skill telnyx-verify-go
Agent 安装分布
Skill 文档
Telnyx Verify – 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.
Lookup phone number data
Returns information about the provided phone number.
GET /number_lookup/{phone_number}
numberLookup, err := client.NumberLookup.Get(
context.TODO(),
"+18665552368",
telnyx.NumberLookupGetParams{},
)
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", numberLookup.Data)
Trigger Call verification
POST /verifications/call â Required: phone_number, verify_profile_id
Optional: custom_code ([‘string’, ‘null’]), extension ([‘string’, ‘null’]), timeout_secs (integer)
createVerificationResponse, err := client.Verifications.TriggerCall(context.TODO(), telnyx.VerificationTriggerCallParams{
PhoneNumber: "+13035551234",
VerifyProfileID: "12ade33a-21c0-473b-b055-b3c836e1c292",
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", createVerificationResponse.Data)
Trigger Flash call verification
POST /verifications/flashcall â Required: phone_number, verify_profile_id
Optional: timeout_secs (integer)
createVerificationResponse, err := client.Verifications.TriggerFlashcall(context.TODO(), telnyx.VerificationTriggerFlashcallParams{
PhoneNumber: "+13035551234",
VerifyProfileID: "12ade33a-21c0-473b-b055-b3c836e1c292",
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", createVerificationResponse.Data)
Trigger SMS verification
POST /verifications/sms â Required: phone_number, verify_profile_id
Optional: custom_code ([‘string’, ‘null’]), timeout_secs (integer)
createVerificationResponse, err := client.Verifications.TriggerSMS(context.TODO(), telnyx.VerificationTriggerSMSParams{
PhoneNumber: "+13035551234",
VerifyProfileID: "12ade33a-21c0-473b-b055-b3c836e1c292",
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", createVerificationResponse.Data)
Retrieve verification
GET /verifications/{verification_id}
verification, err := client.Verifications.Get(context.TODO(), "12ade33a-21c0-473b-b055-b3c836e1c292")
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", verification.Data)
Verify verification code by ID
POST /verifications/{verification_id}/actions/verify
Optional: code (string), status (enum)
verifyVerificationCodeResponse, err := client.Verifications.Actions.Verify(
context.TODO(),
"12ade33a-21c0-473b-b055-b3c836e1c292",
telnyx.VerificationActionVerifyParams{},
)
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", verifyVerificationCodeResponse.Data)
List verifications by phone number
GET /verifications/by_phone_number/{phone_number}
byPhoneNumbers, err := client.Verifications.ByPhoneNumber.List(context.TODO(), "+13035551234")
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", byPhoneNumbers.Data)
Verify verification code by phone number
POST /verifications/by_phone_number/{phone_number}/actions/verify â Required: code, verify_profile_id
verifyVerificationCodeResponse, err := client.Verifications.ByPhoneNumber.Actions.Verify(
context.TODO(),
"+13035551234",
telnyx.VerificationByPhoneNumberActionVerifyParams{
Code: "17686",
VerifyProfileID: "12ade33a-21c0-473b-b055-b3c836e1c292",
},
)
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", verifyVerificationCodeResponse.Data)
List all Verify profiles
Gets a paginated list of Verify profiles.
GET /verify_profiles
page, err := client.VerifyProfiles.List(context.TODO(), telnyx.VerifyProfileListParams{})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", page)
Create a Verify profile
Creates a new Verify profile to associate verifications with.
POST /verify_profiles â Required: name
Optional: call (object), flashcall (object), language (string), rcs (object), sms (object), webhook_failover_url (string), webhook_url (string)
verifyProfileData, err := client.VerifyProfiles.New(context.TODO(), telnyx.VerifyProfileNewParams{
Name: "Test Profile",
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", verifyProfileData.Data)
Retrieve Verify profile
Gets a single Verify profile.
GET /verify_profiles/{verify_profile_id}
verifyProfileData, err := client.VerifyProfiles.Get(context.TODO(), "12ade33a-21c0-473b-b055-b3c836e1c292")
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", verifyProfileData.Data)
Update Verify profile
PATCH /verify_profiles/{verify_profile_id}
Optional: call (object), flashcall (object), language (string), name (string), rcs (object), sms (object), webhook_failover_url (string), webhook_url (string)
verifyProfileData, err := client.VerifyProfiles.Update(
context.TODO(),
"12ade33a-21c0-473b-b055-b3c836e1c292",
telnyx.VerifyProfileUpdateParams{},
)
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", verifyProfileData.Data)
Delete Verify profile
DELETE /verify_profiles/{verify_profile_id}
verifyProfileData, err := client.VerifyProfiles.Delete(context.TODO(), "12ade33a-21c0-473b-b055-b3c836e1c292")
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", verifyProfileData.Data)
Retrieve Verify profile message templates
List all Verify profile message templates.
GET /verify_profiles/templates
response, err := client.VerifyProfiles.GetTemplates(context.TODO())
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", response.Data)
Create message template
Create a new Verify profile message template.
POST /verify_profiles/templates â Required: text
messageTemplate, err := client.VerifyProfiles.NewTemplate(context.TODO(), telnyx.VerifyProfileNewTemplateParams{
Text: "Your {{app_name}} verification code is: {{code}}.",
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", messageTemplate.Data)
Update message template
Update an existing Verify profile message template.
PATCH /verify_profiles/templates/{template_id} â Required: text
messageTemplate, err := client.VerifyProfiles.UpdateTemplate(
context.TODO(),
"12ade33a-21c0-473b-b055-b3c836e1c292",
telnyx.VerifyProfileUpdateTemplateParams{
Text: "Your {{app_name}} verification code is: {{code}}.",
},
)
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", messageTemplate.Data)