Loading...
Loading...
Manage WebRTC credentials and mobile push notification settings. Use when building browser-based or mobile softphone applications. This skill provides Go SDK examples.
npx skill4agent add team-telnyx/skills telnyx-webrtc-gogo get github.com/team-telnyx/telnyx-goimport (
"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")),
)clientimport "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")
}
}401403404422429ListAutoPaging()iter := client.Resource.ListAutoPaging(ctx, params); for iter.Next() { item := iter.Current() }GET /mobile_push_credentials page, err := client.MobilePushCredentials.List(context.Background(), telnyx.MobilePushCredentialListParams{})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", page)aliascertificatecreated_atidprivate_keyproject_account_json_filerecord_typetypeupdated_atPOST /mobile_push_credentialstypecertificateprivate_keyalias pushCredentialResponse, err := client.MobilePushCredentials.New(context.Background(), telnyx.MobilePushCredentialNewParams{
OfIos: &telnyx.MobilePushCredentialNewParamsCreateMobilePushCredentialRequestIos{
Alias: "LucyIosCredential",
Certificate: "-----BEGIN CERTIFICATE----- MIIGVDCCBTKCAQEAsNlRJVZn9ZvXcECQm65czs... -----END CERTIFICATE-----",
PrivateKey: "-----BEGIN RSA PRIVATE KEY----- MIIEpQIBAAKCAQEAsNlRJVZn9ZvXcECQm65czs... -----END RSA PRIVATE KEY-----",
},
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", pushCredentialResponse.Data)aliascertificatecreated_atidprivate_keyproject_account_json_filerecord_typetypeupdated_atpush_credential_idGET /mobile_push_credentials/{push_credential_id} pushCredentialResponse, err := client.MobilePushCredentials.Get(context.Background(), "0ccc7b76-4df3-4bca-a05a-3da1ecc389f0")
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", pushCredentialResponse.Data)aliascertificatecreated_atidprivate_keyproject_account_json_filerecord_typetypeupdated_atpush_credential_idDELETE /mobile_push_credentials/{push_credential_id} err := client.MobilePushCredentials.Delete(context.Background(), "0ccc7b76-4df3-4bca-a05a-3da1ecc389f0")
if err != nil {
log.Fatal(err)
}GET /telephony_credentials page, err := client.TelephonyCredentials.List(context.Background(), telnyx.TelephonyCredentialListParams{})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", page)created_atexpiredexpires_atidnamerecord_typeresource_idsip_passwordsip_usernameupdated_atuser_idPOST /telephony_credentialsconnection_idexpires_atnametag telephonyCredential, err := client.TelephonyCredentials.New(context.Background(), telnyx.TelephonyCredentialNewParams{
ConnectionID: "1234567890",
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", telephonyCredential.Data)created_atexpiredexpires_atidnamerecord_typeresource_idsip_passwordsip_usernameupdated_atuser_idGET /telephony_credentials/{id} telephonyCredential, err := client.TelephonyCredentials.Get(context.Background(), "id")
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", telephonyCredential.Data)created_atexpiredexpires_atidnamerecord_typeresource_idsip_passwordsip_usernameupdated_atuser_idPATCH /telephony_credentials/{id}connection_idexpires_atnametag telephonyCredential, err := client.TelephonyCredentials.Update(
context.Background(),
"id",
telnyx.TelephonyCredentialUpdateParams{},
)
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", telephonyCredential.Data)created_atexpiredexpires_atidnamerecord_typeresource_idsip_passwordsip_usernameupdated_atuser_idDELETE /telephony_credentials/{id} telephonyCredential, err := client.TelephonyCredentials.Delete(context.Background(), "id")
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", telephonyCredential.Data)created_atexpiredexpires_atidnamerecord_typeresource_idsip_passwordsip_usernameupdated_atuser_id