Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Configure SIP trunking connections and outbound voice profiles. Use when connecting PBX systems or managing SIP infrastructure. This skill provides Go SDK examples.
.claude/skills/team-telnyx-telnyx-sip-go/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 367% | 0% |
| case-02 | ✗→✓ | ▲ Improved | 485% | 0% |
| case-03 | ✗→✓ | ▲ Improved | 586% | 0% |
| case-06 | ✗→✓ | ▲ Improved | 870% | 0% |
| case-07 | ✗→✓ | ▲ Improved | 174% | 0% |
<!-- Auto-generated from Telnyx OpenAPI specs. Do not edit. -->
bashgo get github.com/team-telnyx/telnyx-go
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")), )
All examples below assume client is already initialized as shown above.
All API calls can fail with network errors, rate limits (429), validation errors (422), or authentication errors (401). Always handle errors in production code:
goimport "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).
ListAutoPaging() for automatic iteration: iter := client.Resource.ListAutoPaging(ctx, params); for iter.Next() { item := iter.Current() }.GET /access_ip_ranges
gopage, err := client.AccessIPRanges.List(context.Background(), telnyx.AccessIPRangeListParams{}) if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", page)
Returns: cidr_block (string), created_at (date-time), description (string), id (string), status (enum: pending, added), updated_at (date-time), user_id (string)
POST /access_ip_ranges — Required: cidr_block
Optional: description (string)
goaccessIPRange, err := client.AccessIPRanges.New(context.Background(), telnyx.AccessIPRangeNewParams{ CidrBlock: "203.0.113.0/24", }) if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", accessIPRange.ID)
Returns: cidr_block (string), created_at (date-time), description (string), id (string), status (enum: pending, added), updated_at (date-time), user_id (string)
DELETE /access_ip_ranges/{access_ip_range_id}
goaccessIPRange, err := client.AccessIPRanges.Delete(context.Background(), "access_ip_range_id") if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", accessIPRange.ID)
Returns: cidr_block (string), created_at (date-time), description (string), id (string), status (enum: pending, added), updated_at (date-time), user_id (string)
Returns a list of your connections irrespective of type.
GET /connections
gopage, err := client.Connections.List(context.Background(), telnyx.ConnectionListParams{}) if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", page)
Returns: active (boolean), anchorsite_override (enum: Latency, Chicago, IL, Ashburn, VA, San Jose, CA, Sydney, Australia, Amsterdam, Netherlands, London, UK, Toronto, Canada, Vancouver, Canada, Frankfurt, Germany), connection_name (string), created_at (string), id (string), outbound_voice_profile_id (string), record_type (string), tags (arraystring]), updated_at (string), webhook_api_version (enum: 1, 2), webhook_event_failover_url (uri), webhook_event_url (uri)
Retrieves the high-level details of an existing connection. To retrieve specific authentication information, use the endpoint for the specific connection type.
GET /connections/{id}
goconnection, err := client.Connections.Get(context.Background(), "id") if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", connection.Data)
Returns: active (boolean), anchorsite_override (enum: Latency, Chicago, IL, Ashburn, VA, San Jose, CA, Sydney, Australia, Amsterdam, Netherlands, London, UK, Toronto, Canada, Vancouver, Canada, Frankfurt, Germany), connection_name (string), created_at (string), id (string), outbound_voice_profile_id (string), record_type (string), tags (arraystring]), updated_at (string), webhook_api_version (enum: 1, 2), webhook_event_failover_url (uri), webhook_event_url (uri)
Returns a list of your credential connections.
GET /credential_connections
gopage, err := client.CredentialConnections.List(context.Background(), telnyx.CredentialConnectionListParams{}) if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", page)
Returns: active (boolean), anchorsite_override (enum: Latency, Chicago, IL, Ashburn, VA, San Jose, CA, Sydney, Australia, Amsterdam, Netherlands, London, UK, Toronto, Canada, Vancouver, Canada, Frankfurt, Germany), android_push_credential_id (string | null), call_cost_in_webhooks (boolean), connection_name (string), created_at (string), default_on_hold_comfort_noise_enabled (boolean), dtmf_type (enum: RFC 2833, Inband, SIP INFO), encode_contact_header_enabled (boolean), encrypted_media (enum: SRTP, None), id (string), inbound (object), ios_push_credential_id (string | null), jitter_buffer (object), noise_suppression (enum: inbound, outbound, both, disabled), noise_suppression_details (object), onnet_t38_passthrough_enabled (boolean), outbound (object), password (string), record_type (string), rtcp_settings (object), sip_uri_calling_preference (enum: disabled, unrestricted, internal), tags (arraystring]), updated_at (string), user_name (string), webhook_api_version (enum: 1, 2), webhook_event_failover_url (uri), webhook_event_url (uri), webhook_timeout_secs (integer | null)
Creates a credential connection.
POST /credential_connections — Required: user_name, password, connection_name
Optional: active (boolean), anchorsite_override (enum: Latency, Chicago, IL, Ashburn, VA, San Jose, CA, Sydney, Australia, Amsterdam, Netherlands, London, UK, Toronto, Canada, Vancouver, Canada, Frankfurt, Germany), android_push_credential_id (string | null), call_cost_in_webhooks (boolean), default_on_hold_comfort_noise_enabled (boolean), dtmf_type (enum: RFC 2833, Inband, SIP INFO), encode_contact_header_enabled (boolean), encrypted_media (enum: SRTP, None), inbound (object), ios_push_credential_id (string | null), jitter_buffer (object), noise_suppression (enum: inbound, outbound, both, disabled), noise_suppression_details (object), onnet_t38_passthrough_enabled (boolean), outbound (object), rtcp_settings (object), sip_uri_calling_preference (enum: disabled, unrestricted, internal), tags (arraystring]), webhook_api_version (enum: 1, 2, texml), webhook_event_failover_url (uri), webhook_event_url (uri), webhook_timeout_secs (integer | null)
gocredentialConnection, err := client.CredentialConnections.New(context.Background(), telnyx.CredentialConnectionNewParams{ ConnectionName: "my name", Password: "my123secure456password789", UserName: "myusername123", }) if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", credentialConnection.Data)
Returns: active (boolean), anchorsite_override (enum: Latency, Chicago, IL, Ashburn, VA, San Jose, CA, Sydney, Australia, Amsterdam, Netherlands, London, UK, Toronto, Canada, Vancouver, Canada, Frankfurt, Germany), android_push_credential_id (string | null), call_cost_in_webhooks (boolean), connection_name (string), created_at (string), default_on_hold_comfort_noise_enabled (boolean), dtmf_type (enum: RFC 2833, Inband, SIP INFO), encode_contact_header_enabled (boolean), encrypted_media (enum: SRTP, None), id (string), inbound (object), ios_push_credential_id (string | null), jitter_buffer (object), noise_suppression (enum: inbound, outbound, both, disabled), noise_suppression_details (object), onnet_t38_passthrough_enabled (boolean), outbound (object), password (string), record_type (string), rtcp_settings (object), sip_uri_calling_preference (enum: disabled, unrestricted, internal), tags (arraystring]), updated_at (string), user_name (string), webhook_api_version (enum: 1, 2), webhook_event_failover_url (uri), webhook_event_url (uri), webhook_timeout_secs (integer | null)
Retrieves the details of an existing credential connection.
GET /credential_connections/{id}
gocredentialConnection, err := client.CredentialConnections.Get(context.Background(), "id") if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", credentialConnection.Data)
Returns: active (boolean), anchorsite_override (enum: Latency, Chicago, IL, Ashburn, VA, San Jose, CA, Sydney, Australia, Amsterdam, Netherlands, London, UK, Toronto, Canada, Vancouver, Canada, Frankfurt, Germany), android_push_credential_id (string | null), call_cost_in_webhooks (boolean), connection_name (string), created_at (string), default_on_hold_comfort_noise_enabled (boolean), dtmf_type (enum: RFC 2833, Inband, SIP INFO), encode_contact_header_enabled (boolean), encrypted_media (enum: SRTP, None), id (string), inbound (object), ios_push_credential_id (string | null), jitter_buffer (object), noise_suppression (enum: inbound, outbound, both, disabled), noise_suppression_details (object), onnet_t38_passthrough_enabled (boolean), outbound (object), password (string), record_type (string), rtcp_settings (object), sip_uri_calling_preference (enum: disabled, unrestricted, internal), tags (arraystring]), updated_at (string), user_name (string), webhook_api_version (enum: 1, 2), webhook_event_failover_url (uri), webhook_event_url (uri), webhook_timeout_secs (integer | null)
Updates settings of an existing credential connection.
PATCH /credential_connections/{id}
Optional: active (boolean), anchorsite_override (enum: Latency, Chicago, IL, Ashburn, VA, San Jose, CA, Sydney, Australia, Amsterdam, Netherlands, London, UK, Toronto, Canada, Vancouver, Canada, Frankfurt, Germany), android_push_credential_id (string | null), call_cost_in_webhooks (boolean), connection_name (string), default_on_hold_comfort_noise_enabled (boolean), dtmf_type (enum: RFC 2833, Inband, SIP INFO), encode_contact_header_enabled (boolean), encrypted_media (enum: SRTP, None), inbound (object), ios_push_credential_id (string | null), jitter_buffer (object), noise_suppression (enum: inbound, outbound, both, disabled), noise_suppression_details (object), onnet_t38_passthrough_enabled (boolean), outbound (object), password (string), rtcp_settings (object), sip_uri_calling_preference (enum: disabled, unrestricted, internal), tags (arraystring]), user_name (string), webhook_api_version (enum: 1, 2), webhook_event_failover_url (uri), webhook_event_url (uri), webhook_timeout_secs (integer | null)
gocredentialConnection, err := client.CredentialConnections.Update( context.Background(), "id", telnyx.CredentialConnectionUpdateParams{}, ) if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", credentialConnection.Data)
Returns: active (boolean), anchorsite_override (enum: Latency, Chicago, IL, Ashburn, VA, San Jose, CA, Sydney, Australia, Amsterdam, Netherlands, London, UK, Toronto, Canada, Vancouver, Canada, Frankfurt, Germany), android_push_credential_id (string | null), call_cost_in_webhooks (boolean), connection_name (string), created_at (string), default_on_hold_comfort_noise_enabled (boolean), dtmf_type (enum: RFC 2833, Inband, SIP INFO), encode_contact_header_enabled (boolean), encrypted_media (enum: SRTP, None), id (string), inbound (object), ios_push_credential_id (string | null), jitter_buffer (object), noise_suppression (enum: inbound, outbound, both, disabled), noise_suppression_details (object), onnet_t38_passthrough_enabled (boolean), outbound (object), password (string), record_type (string), rtcp_settings (object), sip_uri_calling_preference (enum: disabled, unrestricted, internal), tags (arraystring]), updated_at (string), user_name (string), webhook_api_version (enum: 1, 2), webhook_event_failover_url (uri), webhook_event_url (uri), webhook_timeout_secs (integer | null)
Deletes an existing credential connection.
DELETE /credential_connections/{id}
gocredentialConnection, err := client.CredentialConnections.Delete(context.Background(), "id") if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", credentialConnection.Data)
Returns: active (boolean), anchorsite_override (enum: Latency, Chicago, IL, Ashburn, VA, San Jose, CA, Sydney, Australia, Amsterdam, Netherlands, London, UK, Toronto, Canada, Vancouver, Canada, Frankfurt, Germany), android_push_credential_id (string | null), call_cost_in_webhooks (boolean), connection_name (string), created_at (string), default_on_hold_comfort_noise_enabled (boolean), dtmf_type (enum: RFC 2833, Inband, SIP INFO), encode_contact_header_enabled (boolean), encrypted_media (enum: SRTP, None), id (string), inbound (object), ios_push_credential_id (string | null), jitter_buffer (object), noise_suppression (enum: inbound, outbound, both, disabled), noise_suppression_details (object), onnet_t38_passthrough_enabled (boolean), outbound (object), password (string), record_type (string), rtcp_settings (object), sip_uri_calling_preference (enum: disabled, unrestricted, internal), tags (arraystring]), updated_at (string), user_name (string), webhook_api_version (enum: 1, 2), webhook_event_failover_url (uri), webhook_event_url (uri), webhook_timeout_secs (integer | null)
Checks the registration_status for a credential connection, (registration_status) as well as the timestamp for the last SIP registration event (registration_status_updated_at)
POST /credential_connections/{id}/actions/check_registration_status
goresponse, err := client.CredentialConnections.Actions.CheckRegistrationStatus(context.Background(), "id") if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", response.Data)
Returns: ip_address (string), last_registration (string), port (integer), record_type (string), sip_username (string), status (enum: Not Applicable, Not Registered, Failed, Expired, Registered, Unregistered), transport (string), user_agent (string)
Returns a list of your FQDN connections.
GET /fqdn_connections
gopage, err := client.FqdnConnections.List(context.Background(), telnyx.FqdnConnectionListParams{}) if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", page)
Returns: active (boolean), adjust_dtmf_timestamp (boolean), anchorsite_override (enum: Latency, Chicago, IL, Ashburn, VA, San Jose, CA, Sydney, Australia, Amsterdam, Netherlands, London, UK, Toronto, Canada, Vancouver, Canada, Frankfurt, Germany), android_push_credential_id (string | null), call_cost_enabled (boolean), call_cost_in_webhooks (boolean), connection_name (string), created_at (string), default_on_hold_comfort_noise_enabled (boolean), dtmf_type (enum: RFC 2833, Inband, SIP INFO), encode_contact_header_enabled (boolean), encrypted_media (enum: SRTP, None), id (string), ignore_dtmf_duration (boolean), ignore_mark_bit (boolean), inbound (object), ios_push_credential_id (string | null), jitter_buffer (object), microsoft_teams_sbc (boolean), noise_suppression (enum: inbound, outbound, both, disabled), noise_suppression_details (object), onnet_t38_passthrough_enabled (boolean), outbound (object), password (string), record_type (string), rtcp_settings (object), rtp_pass_codecs_on_stream_change (boolean), send_normalized_timestamps (boolean), tags (arraystring]), third_party_control_enabled (boolean), transport_protocol (enum: UDP, TCP, TLS), txt_name (string), txt_ttl (integer), txt_value (string), updated_at (string), user_name (string), webhook_api_version (enum: 1, 2), webhook_event_failover_url (uri), webhook_event_url (uri), webhook_timeout_secs (integer | null)
Creates a FQDN connection.
POST /fqdn_connections — Required: connection_name
Optional: active (boolean), anchorsite_override (enum: Latency, Chicago, IL, Ashburn, VA, San Jose, CA, Sydney, Australia, Amsterdam, Netherlands, London, UK, Toronto, Canada, Vancouver, Canada, Frankfurt, Germany), android_push_credential_id (string | null), call_cost_in_webhooks (boolean), default_on_hold_comfort_noise_enabled (boolean), dtmf_type (enum: RFC 2833, Inband, SIP INFO), encode_contact_header_enabled (boolean), encrypted_media (enum: SRTP, None), inbound (object), ios_push_credential_id (string | null), jitter_buffer (object), microsoft_teams_sbc (boolean), noise_suppression (enum: inbound, outbound, both, disabled), noise_suppression_details (object), onnet_t38_passthrough_enabled (boolean), outbound (object), rtcp_settings (object), tags (arraystring]), transport_protocol (enum: UDP, TCP, TLS), webhook_api_version (enum: 1, 2), webhook_event_failover_url (uri), webhook_event_url (uri), webhook_timeout_secs (integer | null)
gofqdnConnection, err := client.FqdnConnections.New(context.Background(), telnyx.FqdnConnectionNewParams{ ConnectionName: "my-resource", }) if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", fqdnConnection.Data)
Returns: active (boolean), adjust_dtmf_timestamp (boolean), anchorsite_override (enum: Latency, Chicago, IL, Ashburn, VA, San Jose, CA, Sydney, Australia, Amsterdam, Netherlands, London, UK, Toronto, Canada, Vancouver, Canada, Frankfurt, Germany), android_push_credential_id (string | null), call_cost_enabled (boolean), call_cost_in_webhooks (boolean), connection_name (string), created_at (string), default_on_hold_comfort_noise_enabled (boolean), dtmf_type (enum: RFC 2833, Inband, SIP INFO), encode_contact_header_enabled (boolean), encrypted_media (enum: SRTP, None), id (string), ignore_dtmf_duration (boolean), ignore_mark_bit (boolean), inbound (object), ios_push_credential_id (string | null), jitter_buffer (object), microsoft_teams_sbc (boolean), noise_suppression (enum: inbound, outbound, both, disabled), noise_suppression_details (object), onnet_t38_passthrough_enabled (boolean), outbound (object), password (string), record_type (string), rtcp_settings (object), rtp_pass_codecs_on_stream_change (boolean), send_normalized_timestamps (boolean), tags (arraystring]), third_party_control_enabled (boolean), transport_protocol (enum: UDP, TCP, TLS), txt_name (string), txt_ttl (integer), txt_value (string), updated_at (string), user_name (string), webhook_api_version (enum: 1, 2), webhook_event_failover_url (uri), webhook_event_url (uri), webhook_timeout_secs (integer | null)
Retrieves the details of an existing FQDN connection.
GET /fqdn_connections/{id}
gofqdnConnection, err := client.FqdnConnections.Get(context.Background(), "1293384261075731499") if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", fqdnConnection.Data)
Returns: active (boolean), adjust_dtmf_timestamp (boolean), anchorsite_override (enum: Latency, Chicago, IL, Ashburn, VA, San Jose, CA, Sydney, Australia, Amsterdam, Netherlands, London, UK, Toronto, Canada, Vancouver, Canada, Frankfurt, Germany), android_push_credential_id (string | null), call_cost_enabled (boolean), call_cost_in_webhooks (boolean), connection_name (string), created_at (string), default_on_hold_comfort_noise_enabled (boolean), dtmf_type (enum: RFC 2833, Inband, SIP INFO), encode_contact_header_enabled (boolean), encrypted_media (enum: SRTP, None), id (string), ignore_dtmf_duration (boolean), ignore_mark_bit (boolean), inbound (object), ios_push_credential_id (string | null), jitter_buffer (object), microsoft_teams_sbc (boolean), noise_suppression (enum: inbound, outbound, both, disabled), noise_suppression_details (object), onnet_t38_passthrough_enabled (boolean), outbound (object), password (string), record_type (string), rtcp_settings (object), rtp_pass_codecs_on_stream_change (boolean), send_normalized_timestamps (boolean), tags (arraystring]), third_party_control_enabled (boolean), transport_protocol (enum: UDP, TCP, TLS), txt_name (string), txt_ttl (integer), txt_value (string), updated_at (string), user_name (string), webhook_api_version (enum: 1, 2), webhook_event_failover_url (uri), webhook_event_url (uri), webhook_timeout_secs (integer | null)
Updates settings of an existing FQDN connection.
PATCH /fqdn_connections/{id}
Optional: active (boolean), anchorsite_override (enum: Latency, Chicago, IL, Ashburn, VA, San Jose, CA, Sydney, Australia, Amsterdam, Netherlands, London, UK, Toronto, Canada, Vancouver, Canada, Frankfurt, Germany), android_push_credential_id (string | null), call_cost_in_webhooks (boolean), connection_name (string), default_on_hold_comfort_noise_enabled (boolean), dtmf_type (enum: RFC 2833, Inband, SIP INFO), encode_contact_header_enabled (boolean), encrypted_media (enum: SRTP, None), inbound (object), ios_push_credential_id (string | null), jitter_buffer (object), noise_suppression (enum: inbound, outbound, both, disabled), noise_suppression_details (object), onnet_t38_passthrough_enabled (boolean), outbound (object), rtcp_settings (object), tags (arraystring]), transport_protocol (enum: UDP, TCP, TLS), webhook_api_version (enum: 1, 2), webhook_event_failover_url (uri), webhook_event_url (uri), webhook_timeout_secs (integer | null)
gofqdnConnection, err := client.FqdnConnections.Update( context.Background(), "1293384261075731499", telnyx.FqdnConnectionUpdateParams{}, ) if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", fqdnConnection.Data)
Returns: active (boolean), adjust_dtmf_timestamp (boolean), anchorsite_override (enum: Latency, Chicago, IL, Ashburn, VA, San Jose, CA, Sydney, Australia, Amsterdam, Netherlands, London, UK, Toronto, Canada, Vancouver, Canada, Frankfurt, Germany), android_push_credential_id (string | null), call_cost_enabled (boolean), call_cost_in_webhooks (boolean), connection_name (string), created_at (string), default_on_hold_comfort_noise_enabled (boolean), dtmf_type (enum: RFC 2833, Inband, SIP INFO), encode_contact_header_enabled (boolean), encrypted_media (enum: SRTP, None), id (string), ignore_dtmf_duration (boolean), ignore_mark_bit (boolean), inbound (object), ios_push_credential_id (string | null), jitter_buffer (object), microsoft_teams_sbc (boolean), noise_suppression (enum: inbound, outbound, both, disabled), noise_suppression_details (object), onnet_t38_passthrough_enabled (boolean), outbound (object), password (string), record_type (string), rtcp_settings (object), rtp_pass_codecs_on_stream_change (boolean), send_normalized_timestamps (boolean), tags (arraystring]), third_party_control_enabled (boolean), transport_protocol (enum: UDP, TCP, TLS), txt_name (string), txt_ttl (integer), txt_value (string), updated_at (string), user_name (string), webhook_api_version (enum: 1, 2), webhook_event_failover_url (uri), webhook_event_url (uri), webhook_timeout_secs (integer | null)
Deletes an FQDN connection.
DELETE /fqdn_connections/{id}
gofqdnConnection, err := client.FqdnConnections.Delete(context.Background(), "1293384261075731499") if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", fqdnConnection.Data)
Returns: active (boolean), adjust_dtmf_timestamp (boolean), anchorsite_override (enum: Latency, Chicago, IL, Ashburn, VA, San Jose, CA, Sydney, Australia, Amsterdam, Netherlands, London, UK, Toronto, Canada, Vancouver, Canada, Frankfurt, Germany), android_push_credential_id (string | null), call_cost_enabled (boolean), call_cost_in_webhooks (boolean), connection_name (string), created_at (string), default_on_hold_comfort_noise_enabled (boolean), dtmf_type (enum: RFC 2833, Inband, SIP INFO), encode_contact_header_enabled (boolean), encrypted_media (enum: SRTP, None), id (string), ignore_dtmf_duration (boolean), ignore_mark_bit (boolean), inbound (object), ios_push_credential_id (string | null), jitter_buffer (object), microsoft_teams_sbc (boolean), noise_suppression (enum: inbound, outbound, both, disabled), noise_suppression_details (object), onnet_t38_passthrough_enabled (boolean), outbound (object), password (string), record_type (string), rtcp_settings (object), rtp_pass_codecs_on_stream_change (boolean), send_normalized_timestamps (boolean), tags (arraystring]), third_party_control_enabled (boolean), transport_protocol (enum: UDP, TCP, TLS), txt_name (string), txt_ttl (integer), txt_value (string), updated_at (string), user_name (string), webhook_api_version (enum: 1, 2), webhook_event_failover_url (uri), webhook_event_url (uri), webhook_timeout_secs (integer | null)
Get all FQDNs belonging to the user that match the given filters.
GET /fqdns
gopage, err := client.Fqdns.List(context.Background(), telnyx.FqdnListParams{}) if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", page)
Returns: connection_id (string), created_at (string), dns_record_type (string), fqdn (string), id (string), port (integer), record_type (string), updated_at (string)
Create a new FQDN object.
POST /fqdns — Required: fqdn, dns_record_type, connection_id
Optional: port (integer | null)
gofqdn, err := client.Fqdns.New(context.Background(), telnyx.FqdnNewParams{ ConnectionID: "1516447646313612565", DNSRecordType: "a", Fqdn: "example.com", }) if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", fqdn.Data)
Returns: connection_id (string), created_at (string), dns_record_type (string), fqdn (string), id (string), port (integer), record_type (string), updated_at (string)
Return the details regarding a specific FQDN.
GET /fqdns/{id}
gofqdn, err := client.Fqdns.Get(context.Background(), "1517907029795014409") if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", fqdn.Data)
Returns: connection_id (string), created_at (string), dns_record_type (string), fqdn (string), id (string), port (integer), record_type (string), updated_at (string)
Update the details of a specific FQDN.
PATCH /fqdns/{id}
Optional: connection_id (string), dns_record_type (string), fqdn (string), port (integer | null)
gofqdn, err := client.Fqdns.Update( context.Background(), "1517907029795014409", telnyx.FqdnUpdateParams{}, ) if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", fqdn.Data)
Returns: connection_id (string), created_at (string), dns_record_type (string), fqdn (string), id (string), port (integer), record_type (string), updated_at (string)
Delete an FQDN.
DELETE /fqdns/{id}
gofqdn, err := client.Fqdns.Delete(context.Background(), "1517907029795014409") if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", fqdn.Data)
Returns: connection_id (string), created_at (string), dns_record_type (string), fqdn (string), id (string), port (integer), record_type (string), updated_at (string)
Returns a list of your IP connections.
GET /ip_connections
gopage, err := client.IPConnections.List(context.Background(), telnyx.IPConnectionListParams{}) if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", page)
Returns: active (boolean), anchorsite_override (enum: Latency, Chicago, IL, Ashburn, VA, San Jose, CA, Sydney, Australia, Amsterdam, Netherlands, London, UK, Toronto, Canada, Vancouver, Canada, Frankfurt, Germany), android_push_credential_id (string | null), call_cost_in_webhooks (boolean), connection_name (string), created_at (string), default_on_hold_comfort_noise_enabled (boolean), dtmf_type (enum: RFC 2833, Inband, SIP INFO), encode_contact_header_enabled (boolean), encrypted_media (enum: SRTP, None), id (string), inbound (object), ios_push_credential_id (string | null), jitter_buffer (object), noise_suppression (enum: inbound, outbound, both, disabled), noise_suppression_details (object), onnet_t38_passthrough_enabled (boolean), outbound (object), record_type (string), rtcp_settings (object), tags (arraystring]), transport_protocol (enum: UDP, TCP, TLS), updated_at (string), webhook_api_version (enum: 1, 2), webhook_event_failover_url (uri), webhook_event_url (uri), webhook_timeout_secs (integer | null)
Creates an IP connection.
POST /ip_connections
Optional: active (boolean), anchorsite_override (enum: Latency, Chicago, IL, Ashburn, VA, San Jose, CA, Sydney, Australia, Amsterdam, Netherlands, London, UK, Toronto, Canada, Vancouver, Canada, Frankfurt, Germany), android_push_credential_id (string | null), call_cost_in_webhooks (boolean), connection_name (string), default_on_hold_comfort_noise_enabled (boolean), dtmf_type (enum: RFC 2833, Inband, SIP INFO), encode_contact_header_enabled (boolean), encrypted_media (enum: SRTP, None), inbound (object), ios_push_credential_id (string | null), jitter_buffer (object), noise_suppression (enum: inbound, outbound, both, disabled), noise_suppression_details (object), onnet_t38_passthrough_enabled (boolean), outbound (object), rtcp_settings (object), tags (arraystring]), transport_protocol (enum: UDP, TCP, TLS), webhook_api_version (enum: 1, 2), webhook_event_failover_url (uri), webhook_event_url (uri), webhook_timeout_secs (integer | null)
goipConnection, err := client.IPConnections.New(context.Background(), telnyx.IPConnectionNewParams{ ConnectionName: "my-ip-connection", }) if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", ipConnection.Data)
Returns: active (boolean), anchorsite_override (enum: Latency, Chicago, IL, Ashburn, VA, San Jose, CA, Sydney, Australia, Amsterdam, Netherlands, London, UK, Toronto, Canada, Vancouver, Canada, Frankfurt, Germany), android_push_credential_id (string | null), call_cost_in_webhooks (boolean), connection_name (string), created_at (string), default_on_hold_comfort_noise_enabled (boolean), dtmf_type (enum: RFC 2833, Inband, SIP INFO), encode_contact_header_enabled (boolean), encrypted_media (enum: SRTP, None), id (string), inbound (object), ios_push_credential_id (string | null), jitter_buffer (object), noise_suppression (enum: inbound, outbound, both, disabled), noise_suppression_details (object), onnet_t38_passthrough_enabled (boolean), outbound (object), record_type (string), rtcp_settings (object), tags (arraystring]), transport_protocol (enum: UDP, TCP, TLS), updated_at (string), webhook_api_version (enum: 1, 2), webhook_event_failover_url (uri), webhook_event_url (uri), webhook_timeout_secs (integer | null)
Retrieves the details of an existing ip connection.
GET /ip_connections/{id}
goipConnection, err := client.IPConnections.Get(context.Background(), "id") if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", ipConnection.Data)
Returns: active (boolean), anchorsite_override (enum: Latency, Chicago, IL, Ashburn, VA, San Jose, CA, Sydney, Australia, Amsterdam, Netherlands, London, UK, Toronto, Canada, Vancouver, Canada, Frankfurt, Germany), android_push_credential_id (string | null), call_cost_in_webhooks (boolean), connection_name (string), created_at (string), default_on_hold_comfort_noise_enabled (boolean), dtmf_type (enum: RFC 2833, Inband, SIP INFO), encode_contact_header_enabled (boolean), encrypted_media (enum: SRTP, None), id (string), inbound (object), ios_push_credential_id (string | null), jitter_buffer (object), noise_suppression (enum: inbound, outbound, both, disabled), noise_suppression_details (object), onnet_t38_passthrough_enabled (boolean), outbound (object), record_type (string), rtcp_settings (object), tags (arraystring]), transport_protocol (enum: UDP, TCP, TLS), updated_at (string), webhook_api_version (enum: 1, 2), webhook_event_failover_url (uri), webhook_event_url (uri), webhook_timeout_secs (integer | null)
Updates settings of an existing IP connection.
PATCH /ip_connections/{id}
Optional: active (boolean), anchorsite_override (enum: Latency, Chicago, IL, Ashburn, VA, San Jose, CA, Sydney, Australia, Amsterdam, Netherlands, London, UK, Toronto, Canada, Vancouver, Canada, Frankfurt, Germany), android_push_credential_id (string | null), call_cost_in_webhooks (boolean), connection_name (string), default_on_hold_comfort_noise_enabled (boolean), dtmf_type (enum: RFC 2833, Inband, SIP INFO), encode_contact_header_enabled (boolean), encrypted_media (enum: SRTP, None), inbound (object), ios_push_credential_id (string | null), jitter_buffer (object), noise_suppression (enum: inbound, outbound, both, disabled), noise_suppression_details (object), onnet_t38_passthrough_enabled (boolean), outbound (object), rtcp_settings (object), tags (arraystring]), transport_protocol (enum: UDP, TCP, TLS), webhook_api_version (enum: 1, 2), webhook_event_failover_url (uri), webhook_event_url (uri), webhook_timeout_secs (integer | null)
goipConnection, err := client.IPConnections.Update( context.Background(), "id", telnyx.IPConnectionUpdateParams{}, ) if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", ipConnection.Data)
Returns: active (boolean), anchorsite_override (enum: Latency, Chicago, IL, Ashburn, VA, San Jose, CA, Sydney, Australia, Amsterdam, Netherlands, London, UK, Toronto, Canada, Vancouver, Canada, Frankfurt, Germany), android_push_credential_id (string | null), call_cost_in_webhooks (boolean), connection_name (string), created_at (string), default_on_hold_comfort_noise_enabled (boolean), dtmf_type (enum: RFC 2833, Inband, SIP INFO), encode_contact_header_enabled (boolean), encrypted_media (enum: SRTP, None), id (string), inbound (object), ios_push_credential_id (string | null), jitter_buffer (object), noise_suppression (enum: inbound, outbound, both, disabled), noise_suppression_details (object), onnet_t38_passthrough_enabled (boolean), outbound (object), record_type (string), rtcp_settings (object), tags (arraystring]), transport_protocol (enum: UDP, TCP, TLS), updated_at (string), webhook_api_version (enum: 1, 2), webhook_event_failover_url (uri), webhook_event_url (uri), webhook_timeout_secs (integer | null)
Deletes an existing IP connection.
DELETE /ip_connections/{id}
goipConnection, err := client.IPConnections.Delete(context.Background(), "id") if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", ipConnection.Data)
Returns: active (boolean), anchorsite_override (enum: Latency, Chicago, IL, Ashburn, VA, San Jose, CA, Sydney, Australia, Amsterdam, Netherlands, London, UK, Toronto, Canada, Vancouver, Canada, Frankfurt, Germany), android_push_credential_id (string | null), call_cost_in_webhooks (boolean), connection_name (string), created_at (string), default_on_hold_comfort_noise_enabled (boolean), dtmf_type (enum: RFC 2833, Inband, SIP INFO), encode_contact_header_enabled (boolean), encrypted_media (enum: SRTP, None), id (string), inbound (object), ios_push_credential_id (string | null), jitter_buffer (object), noise_suppression (enum: inbound, outbound, both, disabled), noise_suppression_details (object), onnet_t38_passthrough_enabled (boolean), outbound (object), record_type (string), rtcp_settings (object), tags (arraystring]), transport_protocol (enum: UDP, TCP, TLS), updated_at (string), webhook_api_version (enum: 1, 2), webhook_event_failover_url (uri), webhook_event_url (uri), webhook_timeout_secs (integer | null)
Get all IPs belonging to the user that match the given filters.
GET /ips
gopage, err := client.IPs.List(context.Background(), telnyx.IPListParams{}) if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", page)
Returns: connection_id (string), created_at (string), id (string), ip_address (string), port (integer), record_type (string), updated_at (string)
Create a new IP object.
POST /ips — Required: ip_address
Optional: connection_id (string), port (integer)
goip, err := client.IPs.New(context.Background(), telnyx.IPNewParams{ IPAddress: "192.168.0.0", }) if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", ip.Data)
Returns: connection_id (string), created_at (string), id (string), ip_address (string), port (integer), record_type (string), updated_at (string)
Return the details regarding a specific IP.
GET /ips/{id}
goip, err := client.IPs.Get(context.Background(), "6a09cdc3-8948-47f0-aa62-74ac943d6c58") if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", ip.Data)
Returns: connection_id (string), created_at (string), id (string), ip_address (string), port (integer), record_type (string), updated_at (string)
Update the details of a specific IP.
PATCH /ips/{id} — Required: ip_address
Optional: connection_id (string), port (integer)
goip, err := client.IPs.Update( context.Background(), "6a09cdc3-8948-47f0-aa62-74ac943d6c58", telnyx.IPUpdateParams{ IPAddress: "192.168.0.0", }, ) if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", ip.Data)
Returns: connection_id (string), created_at (string), id (string), ip_address (string), port (integer), record_type (string), updated_at (string)
Delete an IP.
DELETE /ips/{id}
goip, err := client.IPs.Delete(context.Background(), "6a09cdc3-8948-47f0-aa62-74ac943d6c58") if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", ip.Data)
Returns: connection_id (string), created_at (string), id (string), ip_address (string), port (integer), record_type (string), updated_at (string)
Get all outbound voice profiles belonging to the user that match the given filters.
GET /outbound_voice_profiles
gopage, err := client.OutboundVoiceProfiles.List(context.Background(), telnyx.OutboundVoiceProfileListParams{}) if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", page)
Returns: billing_group_id (uuid), call_recording (object), calling_window (object), concurrent_call_limit (integer | null), connections_count (integer), created_at (string), daily_spend_limit (string), daily_spend_limit_enabled (boolean), enabled (boolean), id (string), max_destination_rate (number), name (string), record_type (string), service_plan (enum: global), tags (arraystring]), traffic_type (enum: conversational), updated_at (string), usage_payment_method (enum: rate-deck), whitelisted_destinations (arraystring])
Create an outbound voice profile.
POST /outbound_voice_profiles — Required: name
Optional: billing_group_id (uuid), call_recording (object), calling_window (object), concurrent_call_limit (integer | null), daily_spend_limit (string), daily_spend_limit_enabled (boolean), enabled (boolean), max_destination_rate (number), service_plan (enum: global), tags (arraystring]), traffic_type (enum: conversational), usage_payment_method (enum: rate-deck), whitelisted_destinations (arraystring])
gooutboundVoiceProfile, err := client.OutboundVoiceProfiles.New(context.Background(), telnyx.OutboundVoiceProfileNewParams{ Name: "office", }) if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", outboundVoiceProfile.Data)
Returns: billing_group_id (uuid), call_recording (object), calling_window (object), concurrent_call_limit (integer | null), connections_count (integer), created_at (string), daily_spend_limit (string), daily_spend_limit_enabled (boolean), enabled (boolean), id (string), max_destination_rate (number), name (string), record_type (string), service_plan (enum: global), tags (arraystring]), traffic_type (enum: conversational), updated_at (string), usage_payment_method (enum: rate-deck), whitelisted_destinations (arraystring])
Retrieves the details of an existing outbound voice profile.
GET /outbound_voice_profiles/{id}
gooutboundVoiceProfile, err := client.OutboundVoiceProfiles.Get(context.Background(), "1293384261075731499") if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", outboundVoiceProfile.Data)
Returns: billing_group_id (uuid), call_recording (object), calling_window (object), concurrent_call_limit (integer | null), connections_count (integer), created_at (string), daily_spend_limit (string), daily_spend_limit_enabled (boolean), enabled (boolean), id (string), max_destination_rate (number), name (string), record_type (string), service_plan (enum: global), tags (arraystring]), traffic_type (enum: conversational), updated_at (string), usage_payment_method (enum: rate-deck), whitelisted_destinations (arraystring])
PATCH /outbound_voice_profiles/{id} — Required: name
Optional: billing_group_id (uuid), call_recording (object), calling_window (object), concurrent_call_limit (integer | null), daily_spend_limit (string), daily_spend_limit_enabled (boolean), enabled (boolean), max_destination_rate (number), service_plan (enum: global), tags (arraystring]), traffic_type (enum: conversational), usage_payment_method (enum: rate-deck), whitelisted_destinations (arraystring])
gooutboundVoiceProfile, err := client.OutboundVoiceProfiles.Update( context.Background(), "1293384261075731499", telnyx.OutboundVoiceProfileUpdateParams{ Name: "office", }, ) if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", outboundVoiceProfile.Data)
Returns: billing_group_id (uuid), call_recording (object), calling_window (object), concurrent_call_limit (integer | null), connections_count (integer), created_at (string), daily_spend_limit (string), daily_spend_limit_enabled (boolean), enabled (boolean), id (string), max_destination_rate (number), name (string), record_type (string), service_plan (enum: global), tags (arraystring]), traffic_type (enum: conversational), updated_at (string), usage_payment_method (enum: rate-deck), whitelisted_destinations (arraystring])
Deletes an existing outbound voice profile.
DELETE /outbound_voice_profiles/{id}
gooutboundVoiceProfile, err := client.OutboundVoiceProfiles.Delete(context.Background(), "1293384261075731499") if err != nil { log.Fatal(err) } fmt.Printf("%+v\n", outboundVoiceProfile.Data)
Returns: billing_group_id (uuid), call_recording (object), calling_window (object), concurrent_call_limit (integer | null), connections_count (integer), created_at (string), daily_spend_limit (string), daily_spend_limit_enabled (boolean), enabled (boolean), id (string), max_destination_rate (number), name (string), record_type (string), service_plan (enum: global), tags (arraystring]), traffic_type (enum: conversational), updated_at (string), usage_payment_method (enum: rate-deck), whitelisted_destinations (arraystring])
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→pass | 16,267 | 7,048 | -57% | 1 | 1 | 0% | 3,495 | 16,307 | +367% | 0 | 0 | — |
case-02 | fail→pass | 13,454 | 8,001 | -41% | 1 | 1 | 0% | 2,852 | 16,679 | +485% | 0 | 0 | — |
case-03 | fail→pass | 11,230 | 10,750 | -4% | 1 | 1 | 0% | 2,433 | 16,684 | +586% | 0 | 0 | — |
case-04 | pass→pass | 6,233 | 6,107 | -2% | 1 | 1 | 0% | 1,427 | 16,112 | +1029% | 0 | 0 | — |
case-05 | pass→pass | 5,500 | 4,680 | -15% | 1 | 1 | 0% | 1,073 | 15,745 | +1367% | 0 | 0 | — |
case-06 | fail→pass | 7,360 | 5,721 | -22% | 1 | 1 | 0% | 1,655 | 16,048 | +870% | 0 | 0 | — |
case-07 | fail→pass | 29,788 | 7,748 | -74% | 1 | 1 | 0% | 5,963 | 16,367 | +174% | 0 | 0 | — |
case-08 | pass→pass | 9,508 | 5,650 | -41% | 1 | 1 | 0% | 1,936 | 15,944 | +724% | 0 | 0 | — |
case-09 | fail→pass | 4,796 | 3,075 | -36% | 1 | 1 | 0% | 962 | 15,350 | +1496% | 0 | 0 | — |
case-10 | fail→pass | 8,310 | 3,327 | -60% | 1 | 1 | 0% | 1,594 | 15,322 | +861% | 0 | 0 | — |
case-11 | pass→pass | 8,004 | 3,031 | -62% | 1 | 1 | 0% | 1,711 | 15,300 | +794% | 0 | 0 | — |
case-12 | pass→pass | 9,545 | 4,559 | -52% | 1 | 1 | 0% | 1,893 | 15,630 | +726% | 0 | 0 | — |
case-13 | fail→pass | 12,104 | 5,693 | -53% | 1 | 1 | 0% | 1,794 | 15,764 | +779% | 0 | 0 | — |
case-14 | fail→pass | 12,088 | 3,467 | -71% | 1 | 1 | 0% | 2,440 | 15,309 | +527% | 0 | 0 | — |
case-15 | pass→pass | 10,589 | 3,888 | -63% | 1 | 1 | 0% | 2,104 | 15,530 | +638% | 0 | 0 | — |
case-16 | fail→pass | 9,372 | 4,571 | -51% | 1 | 1 | 0% | 1,891 | 15,601 | +725% | 0 | 0 | — |
case-17 | fail→pass | 8,258 | 2,872 | -65% | 1 | 1 | 0% | 1,694 | 15,221 | +799% | 0 | 0 | — |
case-18 | fail→pass | 8,832 | 4,162 | -53% | 1 | 1 | 0% | 1,762 | 15,543 | +782% | 0 | 0 | — |
case-19 | fail→pass | 8,036 | 6,214 | -23% | 1 | 1 | 0% | 1,636 | 16,091 | +884% | 0 | 0 | — |
case-20 | fail→pass | 9,814 | 4,640 | -53% | 1 | 1 | 0% | 2,149 | 15,679 | +630% | 0 | 0 | — |
case-21 | fail→pass | 10,595 | 4,422 | -58% | 1 | 1 | 0% | 2,014 | 15,545 | +672% | 0 | 0 | — |
case-22 | fail→pass | 9,795 | 4,000 | -59% | 1 | 1 | 0% | 1,949 | 15,437 | +692% | 0 | 0 | — |
case-23 | fail→pass | 7,410 | 3,524 | -52% | 1 | 1 | 0% | 1,409 | 15,379 | +991% | 0 | 0 | — |
case-24 | fail→pass | 8,422 | 4,099 | -51% | 1 | 1 | 0% | 1,772 | 15,545 | +777% | 0 | 0 | — |
case-25 | pass→pass | 7,199 | 3,264 | -55% | 1 | 1 | 0% | 1,378 | 15,388 | +1017% | 0 | 0 | — |
case-26 | pass→pass | 8,739 | 7,046 | -19% | 1 | 1 | 0% | 1,747 | 16,078 | +820% | 0 | 0 | — |
case-27 | fail→pass | 8,169 | 3,226 | -61% | 1 | 1 | 0% | 1,685 | 15,363 | +812% | 0 | 0 | — |
case-28 | pass→pass | 5,333 | 4,312 | -19% | 1 | 1 | 0% | 1,059 | 15,564 | +1370% | 0 | 0 | — |
case-29 | fail→pass | 9,378 | 6,120 | -35% | 1 | 1 | 0% | 1,612 | 15,854 | +883% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 29 cases were attempted. The headline lift of +69 percentage points is the difference between those two pass rates over the 29 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.