telnyx-numbers-services-python

📁 team-telnyx/telnyx-ext-agent-skills 📅 2 days ago
3
总安装量
1
周安装量
#62227
全站排名
安装命令
npx skills add https://github.com/team-telnyx/telnyx-ext-agent-skills --skill telnyx-numbers-services-python

Agent 安装分布

windsurf 1
amp 1
opencode 1
cursor 1
kimi-cli 1
kiro-cli 1

Skill 文档

Telnyx Numbers Services – Python

Installation

pip install telnyx

Setup

import os
from telnyx import Telnyx

client = Telnyx(
    api_key=os.environ.get("TELNYX_API_KEY"),  # This is the default and can be omitted
)

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

List dynamic emergency addresses

Returns the dynamic emergency addresses according to filters

GET /dynamic_emergency_addresses

page = client.dynamic_emergency_addresses.list()
page = page.data[0]
print(page.id)

Create a dynamic emergency address.

Creates a dynamic emergency address.

POST /dynamic_emergency_addresses — Required: house_number, street_name, locality, administrative_area, postal_code, country_code

Optional: created_at (string), extended_address (string), house_suffix (string), id (string), record_type (string), sip_geolocation_id (string), status (enum), street_post_directional (string), street_pre_directional (string), street_suffix (string), updated_at (string)

dynamic_emergency_address = client.dynamic_emergency_addresses.create(
    administrative_area="TX",
    country_code="US",
    house_number="600",
    locality="Austin",
    postal_code="78701",
    street_name="Congress",
)
print(dynamic_emergency_address.data)

Get a dynamic emergency address

Returns the dynamic emergency address based on the ID provided

GET /dynamic_emergency_addresses/{id}

dynamic_emergency_address = client.dynamic_emergency_addresses.retrieve(
    "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
)
print(dynamic_emergency_address.data)

Delete a dynamic emergency address

Deletes the dynamic emergency address based on the ID provided

DELETE /dynamic_emergency_addresses/{id}

dynamic_emergency_address = client.dynamic_emergency_addresses.delete(
    "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
)
print(dynamic_emergency_address.data)

List dynamic emergency endpoints

Returns the dynamic emergency endpoints according to filters

GET /dynamic_emergency_endpoints

page = client.dynamic_emergency_endpoints.list()
page = page.data[0]
print(page.dynamic_emergency_address_id)

Create a dynamic emergency endpoint.

Creates a dynamic emergency endpoints.

POST /dynamic_emergency_endpoints — Required: dynamic_emergency_address_id, callback_number, caller_name

Optional: created_at (string), id (string), record_type (string), sip_from_id (string), status (enum), updated_at (string)

dynamic_emergency_endpoint = client.dynamic_emergency_endpoints.create(
    callback_number="+13125550000",
    caller_name="Jane Doe Desk Phone",
    dynamic_emergency_address_id="0ccc7b54-4df3-4bca-a65a-3da1ecc777f0",
)
print(dynamic_emergency_endpoint.data)

Get a dynamic emergency endpoint

Returns the dynamic emergency endpoint based on the ID provided

GET /dynamic_emergency_endpoints/{id}

dynamic_emergency_endpoint = client.dynamic_emergency_endpoints.retrieve(
    "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
)
print(dynamic_emergency_endpoint.data)

Delete a dynamic emergency endpoint

Deletes the dynamic emergency endpoint based on the ID provided

DELETE /dynamic_emergency_endpoints/{id}

dynamic_emergency_endpoint = client.dynamic_emergency_endpoints.delete(
    "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
)
print(dynamic_emergency_endpoint.data)

List your voice channels for non-US zones

Returns the non-US voice channels for your account.

GET /channel_zones

page = client.channel_zones.list()
page = page.data[0]
print(page.id)

Update voice channels for non-US Zones

Update the number of Voice Channels for the Non-US Zones.

PUT /channel_zones/{channel_zone_id} — Required: channels

channel_zone = client.channel_zones.update(
    channel_zone_id="channel_zone_id",
    channels=0,
)
print(channel_zone.id)

List your voice channels for US Zone

Returns the US Zone voice channels for your account.

GET /inbound_channels

inbound_channels = client.inbound_channels.list()
print(inbound_channels.data)

Update voice channels for US Zone

Update the number of Voice Channels for the US Zone.

PATCH /inbound_channels — Required: channels

inbound_channel = client.inbound_channels.update(
    channels=7,
)
print(inbound_channel.data)

List All Numbers using Channel Billing

Retrieve a list of all phone numbers using Channel Billing, grouped by Zone.

GET /list

response = client.list.retrieve_all()
print(response.data)

List Numbers using Channel Billing for a specific Zone

Retrieve a list of phone numbers using Channel Billing for a specific Zone.

GET /list/{channel_zone_id}

response = client.list.retrieve_by_zone(
    "channel_zone_id",
)
print(response.data)

Get voicemail

Returns the voicemail settings for a phone number

GET /phone_numbers/{phone_number_id}/voicemail

voicemail = client.phone_numbers.voicemail.retrieve(
    "123455678900",
)
print(voicemail.data)

Create voicemail

Create voicemail settings for a phone number

POST /phone_numbers/{phone_number_id}/voicemail

Optional: enabled (boolean), pin (string)

voicemail = client.phone_numbers.voicemail.create(
    phone_number_id="123455678900",
)
print(voicemail.data)

Update voicemail

Update voicemail settings for a phone number

PATCH /phone_numbers/{phone_number_id}/voicemail

Optional: enabled (boolean), pin (string)

voicemail = client.phone_numbers.voicemail.update(
    phone_number_id="123455678900",
)
print(voicemail.data)