{"id":"752c45b2-1e28-4593-a80c-8b8a1eac6ed8","shortId":"RSLhL7","kind":"skill","title":"telnyx-numbers-config-python","tagline":">-","description":"<!-- Auto-generated from Telnyx OpenAPI specs. Do not edit. -->\n\n# Telnyx Numbers Config - Python\n\n## Installation\n\n```bash\npip install telnyx\n```\n\n## Setup\n\n```python\nimport os\nfrom telnyx import Telnyx\n\nclient = Telnyx(\n    api_key=os.environ.get(\"TELNYX_API_KEY\"),  # This is the default and can be omitted\n)\n```\n\nAll examples below assume `client` is already initialized as shown above.\n\n## Error Handling\n\nAll API calls can fail with network errors, rate limits (429), validation errors (422),\nor authentication errors (401). Always handle errors in production code:\n\n```python\nimport telnyx\n\ntry:\n    result = client.messages.send(to=\"+13125550001\", from_=\"+13125550002\", text=\"Hello\")\nexcept telnyx.APIConnectionError:\n    print(\"Network error — check connectivity and retry\")\nexcept telnyx.RateLimitError:\n    # 429: rate limited — wait and retry with exponential backoff\n    import time\n    time.sleep(1)  # Check Retry-After header for actual delay\nexcept telnyx.APIStatusError as e:\n    print(f\"API error {e.status_code}: {e.message}\")\n    if e.status_code == 422:\n        print(\"Validation error — check required fields and formats\")\n```\n\nCommon error codes: `401` invalid API key, `403` insufficient permissions,\n`404` resource not found, `422` validation error (check field formats),\n`429` rate limited (retry with exponential backoff).\n\n## Important Notes\n\n- **Phone numbers** must be in E.164 format (e.g., `+13125550001`). Include the `+` prefix and country code. No spaces, dashes, or parentheses.\n- **Pagination:** List methods return an auto-paginating iterator. Use `for item in page_result:` to iterate through all pages automatically.\n\n## Bulk update phone number profiles\n\n`POST /messaging_numbers_bulk_updates` — Required: `messaging_profile_id`, `numbers`\n\nOptional: `assign_only` (boolean)\n\n```python\nmessaging_numbers_bulk_update = client.messaging_numbers_bulk_updates.create(\n    messaging_profile_id=\"00000000-0000-0000-0000-000000000000\",\n    numbers=[\"+18880000000\", \"+18880000001\", \"+18880000002\"],\n)\nprint(messaging_numbers_bulk_update.data)\n```\n\nReturns: `failed` (array[string]), `order_id` (uuid), `pending` (array[string]), `record_type` (enum: messaging_numbers_bulk_update), `success` (array[string])\n\n## Retrieve bulk update status\n\n`GET /messaging_numbers_bulk_updates/{order_id}`\n\n```python\nmessaging_numbers_bulk_update = client.messaging_numbers_bulk_updates.retrieve(\n    \"order_id\",\n)\nprint(messaging_numbers_bulk_update.data)\n```\n\nReturns: `failed` (array[string]), `order_id` (uuid), `pending` (array[string]), `record_type` (enum: messaging_numbers_bulk_update), `success` (array[string])\n\n## List mobile phone numbers with messaging settings\n\n`GET /mobile_phone_numbers/messaging`\n\n```python\npage = client.mobile_phone_numbers.messaging.list()\npage = page.data[0]\nprint(page.id)\n```\n\nReturns: `country_code` (string), `created_at` (date-time), `features` (object), `id` (string), `messaging_product` (string), `messaging_profile_id` (string | null), `organization_id` (string), `phone_number` (string), `record_type` (enum: messaging_phone_number, messaging_settings), `tags` (array[string]), `traffic_type` (string), `type` (enum: longcode), `updated_at` (date-time)\n\n## Retrieve a mobile phone number with messaging settings\n\n`GET /mobile_phone_numbers/{id}/messaging`\n\n```python\nmessaging = client.mobile_phone_numbers.messaging.retrieve(\n    \"id\",\n)\nprint(messaging.data)\n```\n\nReturns: `country_code` (string), `created_at` (date-time), `features` (object), `id` (string), `messaging_product` (string), `messaging_profile_id` (string | null), `organization_id` (string), `phone_number` (string), `record_type` (enum: messaging_phone_number, messaging_settings), `tags` (array[string]), `traffic_type` (string), `type` (enum: longcode), `updated_at` (date-time)\n\n## List phone numbers\n\n`GET /phone_numbers`\n\n```python\npage = client.phone_numbers.list()\npage = page.data[0]\nprint(page.id)\n```\n\nReturns: `billing_group_id` (string | null), `call_forwarding_enabled` (boolean), `call_recording_enabled` (boolean), `caller_id_name_enabled` (boolean), `cnam_listing_enabled` (boolean), `connection_id` (string | null), `connection_name` (string | null), `country_iso_alpha2` (string), `created_at` (date-time), `customer_reference` (string | null), `deletion_lock_enabled` (boolean), `emergency_address_id` (string | null), `emergency_enabled` (boolean), `emergency_status` (enum: active, deprovisioning, disabled, provisioning, provisioning-failed), `external_pin` (string | null), `hd_voice_enabled` (boolean), `id` (string), `inbound_call_screening` (enum: disabled, reject_calls, flag_calls), `messaging_profile_id` (string | null), `messaging_profile_name` (string | null), `phone_number` (string), `phone_number_type` (enum: local, toll_free, mobile, national, shared_cost, landline, tollfree, shortcode, longcode), `purchased_at` (string), `record_type` (string), `source_type` (object), `status` (enum: purchase-pending, purchase-failed, port-pending, port-failed, active, deleted, emergency-only, ported-out, port-out-pending, requirement-info-pending, requirement-info-under-review, requirement-info-exception, provision-pending), `t38_fax_gateway_enabled` (boolean), `tags` (array[string]), `updated_at` (string)\n\n## Verify ownership of phone numbers\n\nVerifies 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.\n\n`POST /phone_numbers/actions/verify_ownership` — Required: `phone_numbers`\n\n```python\nresponse = client.phone_numbers.actions.verify_ownership(\n    phone_numbers=[\"+15551234567\"],\n)\nprint(response.data)\n```\n\nReturns: `found` (array[object]), `not_found` (array[string]), `record_type` (string)\n\n## Lists the phone numbers jobs\n\n`GET /phone_numbers/jobs`\n\n```python\npage = client.phone_numbers.jobs.list()\npage = page.data[0]\nprint(page.id)\n```\n\nReturns: `created_at` (string), `etc` (date-time), `failed_operations` (array[object]), `id` (uuid), `pending_operations` (array[object]), `phone_numbers` (array[object]), `record_type` (string), `status` (enum: pending, in_progress, completed, failed, expired), `successful_operations` (array[object]), `type` (enum: update_emergency_settings, delete_phone_numbers, update_phone_numbers), `updated_at` (string)\n\n## Delete a batch of numbers\n\nCreates a new background job to delete a batch of numbers. At most one thousand numbers can be updated per API call.\n\n`POST /phone_numbers/jobs/delete_phone_numbers` — Required: `phone_numbers`\n\n```python\nresponse = client.phone_numbers.jobs.delete_batch(\n    phone_numbers=[\"+19705555098\", \"+19715555098\", \"32873127836\"],\n)\nprint(response.data)\n```\n\nReturns: `created_at` (string), `etc` (date-time), `failed_operations` (array[object]), `id` (uuid), `pending_operations` (array[object]), `phone_numbers` (array[object]), `record_type` (string), `status` (enum: pending, in_progress, completed, failed, expired), `successful_operations` (array[object]), `type` (enum: update_emergency_settings, delete_phone_numbers, update_phone_numbers), `updated_at` (string)\n\n## Update the emergency settings from a batch of numbers\n\nCreates a background job to update the emergency settings of a collection of phone numbers. At most one thousand numbers can be updated per API call.\n\n`POST /phone_numbers/jobs/update_emergency_settings` — Required: `emergency_enabled`, `phone_numbers`\n\nOptional: `emergency_address_id` (string | null)\n\n```python\nresponse = client.phone_numbers.jobs.update_emergency_settings_batch(\n    emergency_enabled=True,\n    phone_numbers=[\"+19705555098\", \"+19715555098\", \"32873127836\"],\n)\nprint(response.data)\n```\n\nReturns: `created_at` (string), `etc` (date-time), `failed_operations` (array[object]), `id` (uuid), `pending_operations` (array[object]), `phone_numbers` (array[object]), `record_type` (string), `status` (enum: pending, in_progress, completed, failed, expired), `successful_operations` (array[object]), `type` (enum: update_emergency_settings, delete_phone_numbers, update_phone_numbers), `updated_at` (string)\n\n## Update a batch of numbers\n\nCreates a new background job to update a batch of numbers. At most one thousand numbers can be updated per API call. At least one of the updateable fields must be submitted.\n\n`POST /phone_numbers/jobs/update_phone_numbers` — Required: `phone_numbers`\n\nOptional: `billing_group_id` (string), `connection_id` (string), `customer_reference` (string), `deletion_lock_enabled` (boolean), `external_pin` (string), `hd_voice_enabled` (boolean), `tags` (array[string]), `voice` (object)\n\n```python\nresponse = client.phone_numbers.jobs.update_batch(\n    phone_numbers=[\"1583466971586889004\", \"+13127367254\"],\n)\nprint(response.data)\n```\n\nReturns: `created_at` (string), `etc` (date-time), `failed_operations` (array[object]), `id` (uuid), `pending_operations` (array[object]), `phone_numbers` (array[object]), `record_type` (string), `status` (enum: pending, in_progress, completed, failed, expired), `successful_operations` (array[object]), `type` (enum: update_emergency_settings, delete_phone_numbers, update_phone_numbers), `updated_at` (string)\n\n## Retrieve a phone numbers job\n\n`GET /phone_numbers/jobs/{id}`\n\n```python\njob = client.phone_numbers.jobs.retrieve(\n    \"id\",\n)\nprint(job.data)\n```\n\nReturns: `created_at` (string), `etc` (date-time), `failed_operations` (array[object]), `id` (uuid), `pending_operations` (array[object]), `phone_numbers` (array[object]), `record_type` (string), `status` (enum: pending, in_progress, completed, failed, expired), `successful_operations` (array[object]), `type` (enum: update_emergency_settings, delete_phone_numbers, update_phone_numbers), `updated_at` (string)\n\n## List phone numbers with messaging settings\n\n`GET /phone_numbers/messaging`\n\n```python\npage = client.phone_numbers.messaging.list()\npage = page.data[0]\nprint(page.id)\n```\n\nReturns: `country_code` (string), `created_at` (date-time), `eligible_messaging_products` (array[string]), `features` (object), `health` (object), `id` (string), `messaging_product` (string), `messaging_profile_id` (string | null), `organization_id` (string), `phone_number` (string), `record_type` (enum: messaging_phone_number, messaging_settings), `tags` (array[string]), `traffic_type` (string), `type` (enum: long-code, toll-free, short-code, longcode, tollfree, shortcode), `updated_at` (date-time)\n\n## Slim List phone numbers\n\nList phone numbers, This endpoint is a lighter version of the /phone_numbers endpoint having higher performance and rate limit.\n\n`GET /phone_numbers/slim`\n\n```python\npage = client.phone_numbers.slim_list()\npage = page.data[0]\nprint(page.id)\n```\n\nReturns: `billing_group_id` (string), `call_forwarding_enabled` (boolean), `call_recording_enabled` (boolean), `caller_id_name_enabled` (boolean), `cnam_listing_enabled` (boolean), `connection_id` (string), `country_iso_alpha2` (string), `created_at` (string), `customer_reference` (string), `emergency_address_id` (string), `emergency_enabled` (boolean), `emergency_status` (enum: active, deprovisioning, disabled, provisioning, provisioning-failed), `external_pin` (string), `hd_voice_enabled` (boolean), `id` (string), `inbound_call_screening` (enum: disabled, reject_calls, flag_calls), `phone_number` (string), `phone_number_type` (enum: local, toll_free, mobile, national, shared_cost, landline, tollfree, shortcode, longcode), `purchased_at` (string), `record_type` (string), `status` (enum: purchase-pending, purchase-failed, port-pending, port-failed, active, deleted, emergency-only, ported-out, port-out-pending, requirement-info-pending, requirement-info-under-review, requirement-info-exception, provision-pending), `t38_fax_gateway_enabled` (boolean), `updated_at` (string)\n\n## List phone numbers with voice settings\n\n`GET /phone_numbers/voice`\n\n```python\npage = client.phone_numbers.voice.list()\npage = page.data[0]\nprint(page.id)\n```\n\nReturns: `call_forwarding` (object), `call_recording` (object), `cnam_listing` (object), `connection_id` (string), `customer_reference` (string), `emergency` (object), `id` (string), `inbound_call_screening` (enum: disabled, reject_calls, flag_calls), `media_features` (object), `phone_number` (string), `record_type` (string), `tech_prefix_enabled` (boolean), `translated_number` (string), `usage_payment_method` (enum: pay-per-minute, channel)\n\n## Retrieve a phone number\n\n`GET /phone_numbers/{id}`\n\n```python\nphone_number = client.phone_numbers.retrieve(\n    \"1293384261075731499\",\n)\nprint(phone_number.data)\n```\n\nReturns: `billing_group_id` (string | null), `call_forwarding_enabled` (boolean), `call_recording_enabled` (boolean), `caller_id_name_enabled` (boolean), `cnam_listing_enabled` (boolean), `connection_id` (string | null), `connection_name` (string | null), `country_iso_alpha2` (string), `created_at` (date-time), `customer_reference` (string | null), `deletion_lock_enabled` (boolean), `emergency_address_id` (string | null), `emergency_enabled` (boolean), `emergency_status` (enum: active, deprovisioning, disabled, provisioning, provisioning-failed), `external_pin` (string | null), `hd_voice_enabled` (boolean), `id` (string), `inbound_call_screening` (enum: disabled, reject_calls, flag_calls), `messaging_profile_id` (string | null), `messaging_profile_name` (string | null), `phone_number` (string), `phone_number_type` (enum: local, toll_free, mobile, national, shared_cost, landline, tollfree, shortcode, longcode), `purchased_at` (string), `record_type` (string), `source_type` (object), `status` (enum: purchase-pending, purchase-failed, port-pending, port-failed, active, deleted, emergency-only, ported-out, port-out-pending, requirement-info-pending, requirement-info-under-review, requirement-info-exception, provision-pending), `t38_fax_gateway_enabled` (boolean), `tags` (array[string]), `updated_at` (string)\n\n## Update a phone number\n\n`PATCH /phone_numbers/{id}`\n\nOptional: `address_id` (string), `billing_group_id` (string), `connection_id` (string), `customer_reference` (string), `external_pin` (string), `hd_voice_enabled` (boolean), `id` (string), `tags` (array[string])\n\n```python\nphone_number = client.phone_numbers.update(\n    phone_number_id=\"1293384261075731499\",\n)\nprint(phone_number.data)\n```\n\nReturns: `billing_group_id` (string | null), `call_forwarding_enabled` (boolean), `call_recording_enabled` (boolean), `caller_id_name_enabled` (boolean), `cnam_listing_enabled` (boolean), `connection_id` (string | null), `connection_name` (string | null), `country_iso_alpha2` (string), `created_at` (date-time), `customer_reference` (string | null), `deletion_lock_enabled` (boolean), `emergency_address_id` (string | null), `emergency_enabled` (boolean), `emergency_status` (enum: active, deprovisioning, disabled, provisioning, provisioning-failed), `external_pin` (string | null), `hd_voice_enabled` (boolean), `id` (string), `inbound_call_screening` (enum: disabled, reject_calls, flag_calls), `messaging_profile_id` (string | null), `messaging_profile_name` (string | null), `phone_number` (string), `phone_number_type` (enum: local, toll_free, mobile, national, shared_cost, landline, tollfree, shortcode, longcode), `purchased_at` (string), `record_type` (string), `source_type` (object), `status` (enum: purchase-pending, purchase-failed, port-pending, port-failed, active, deleted, emergency-only, ported-out, port-out-pending, requirement-info-pending, requirement-info-under-review, requirement-info-exception, provision-pending), `t38_fax_gateway_enabled` (boolean), `tags` (array[string]), `updated_at` (string)\n\n## Delete a phone number\n\n`DELETE /phone_numbers/{id}`\n\n```python\nphone_number = client.phone_numbers.delete(\n    \"1293384261075731499\",\n)\nprint(phone_number.data)\n```\n\nReturns: `billing_group_id` (string), `call_forwarding_enabled` (boolean), `call_recording_enabled` (boolean), `caller_id_name_enabled` (boolean), `cnam_listing_enabled` (boolean), `connection_id` (string), `connection_name` (string), `created_at` (string), `customer_reference` (string), `deletion_lock_enabled` (boolean), `emergency_address_id` (string), `emergency_enabled` (boolean), `external_pin` (string), `hd_voice_enabled` (boolean), `id` (string), `messaging_profile_id` (string), `messaging_profile_name` (string), `phone_number` (string), `phone_number_type` (enum: local, toll_free, mobile, national, shared_cost, landline), `purchased_at` (string), `record_type` (string), `status` (enum: purchase-pending, purchase-failed, port-pending, port-failed, active, deleted, emergency-only, ported-out, port-out-pending), `t38_fax_gateway_enabled` (boolean), `tags` (array[string]), `updated_at` (string)\n\n## Change the bundle status for a phone number (set to being in a bundle or remove from a bundle)\n\n`PATCH /phone_numbers/{id}/actions/bundle_status_change` — Required: `bundle_id`\n\n```python\nresponse = client.phone_numbers.actions.change_bundle_status(\n    id=\"1293384261075731499\",\n    bundle_id=\"5194d8fc-87e6-4188-baa9-1c434bbe861b\",\n)\nprint(response.data)\n```\n\nReturns: `call_forwarding` (object), `call_recording` (object), `cnam_listing` (object), `connection_id` (string), `customer_reference` (string), `emergency` (object), `id` (string), `inbound_call_screening` (enum: disabled, reject_calls, flag_calls), `media_features` (object), `phone_number` (string), `record_type` (string), `tech_prefix_enabled` (boolean), `translated_number` (string), `usage_payment_method` (enum: pay-per-minute, channel)\n\n## Enable emergency for a phone number\n\n`POST /phone_numbers/{id}/actions/enable_emergency` — Required: `emergency_enabled`, `emergency_address_id`\n\n```python\nresponse = client.phone_numbers.actions.enable_emergency(\n    id=\"1293384261075731499\",\n    emergency_address_id=\"53829456729313\",\n    emergency_enabled=True,\n)\nprint(response.data)\n```\n\nReturns: `call_forwarding` (object), `call_recording` (object), `cnam_listing` (object), `connection_id` (string), `customer_reference` (string), `emergency` (object), `id` (string), `inbound_call_screening` (enum: disabled, reject_calls, flag_calls), `media_features` (object), `phone_number` (string), `record_type` (string), `tech_prefix_enabled` (boolean), `translated_number` (string), `usage_payment_method` (enum: pay-per-minute, channel)\n\n## Retrieve a phone number with messaging settings\n\n`GET /phone_numbers/{id}/messaging`\n\n```python\nmessaging = client.phone_numbers.messaging.retrieve(\n    \"id\",\n)\nprint(messaging.data)\n```\n\nReturns: `country_code` (string), `created_at` (date-time), `eligible_messaging_products` (array[string]), `features` (object), `health` (object), `id` (string), `messaging_product` (string), `messaging_profile_id` (string | null), `organization_id` (string), `phone_number` (string), `record_type` (enum: messaging_phone_number, messaging_settings), `tags` (array[string]), `traffic_type` (string), `type` (enum: long-code, toll-free, short-code, longcode, tollfree, shortcode), `updated_at` (date-time)\n\n## Update the messaging profile and/or messaging product of a phone number\n\n`PATCH /phone_numbers/{id}/messaging`\n\nOptional: `messaging_product` (string), `messaging_profile_id` (string), `tags` (array[string])\n\n```python\nmessaging = client.phone_numbers.messaging.update(\n    id=\"550e8400-e29b-41d4-a716-446655440000\",\n)\nprint(messaging.data)\n```\n\nReturns: `country_code` (string), `created_at` (date-time), `eligible_messaging_products` (array[string]), `features` (object), `health` (object), `id` (string), `messaging_product` (string), `messaging_profile_id` (string | null), `organization_id` (string), `phone_number` (string), `record_type` (enum: messaging_phone_number, messaging_settings), `tags` (array[string]), `traffic_type` (string), `type` (enum: long-code, toll-free, short-code, longcode, tollfree, shortcode), `updated_at` (date-time)\n\n## Retrieve a phone number with voice settings\n\n`GET /phone_numbers/{id}/voice`\n\n```python\nvoice = client.phone_numbers.voice.retrieve(\n    \"1293384261075731499\",\n)\nprint(voice.data)\n```\n\nReturns: `call_forwarding` (object), `call_recording` (object), `cnam_listing` (object), `connection_id` (string), `customer_reference` (string), `emergency` (object), `id` (string), `inbound_call_screening` (enum: disabled, reject_calls, flag_calls), `media_features` (object), `phone_number` (string), `record_type` (string), `tech_prefix_enabled` (boolean), `translated_number` (string), `usage_payment_method` (enum: pay-per-minute, channel)\n\n## Update a phone number with voice settings\n\n`PATCH /phone_numbers/{id}/voice`\n\nOptional: `call_forwarding` (object), `call_recording` (object), `caller_id_name_enabled` (boolean), `cnam_listing` (object), `inbound_call_screening` (enum: disabled, reject_calls, flag_calls), `media_features` (object), `tech_prefix_enabled` (boolean), `translated_number` (string), `usage_payment_method` (enum: pay-per-minute, channel)\n\n```python\nvoice = client.phone_numbers.voice.update(\n    id=\"1293384261075731499\",\n)\nprint(voice.data)\n```\n\nReturns: `call_forwarding` (object), `call_recording` (object), `cnam_listing` (object), `connection_id` (string), `customer_reference` (string), `emergency` (object), `id` (string), `inbound_call_screening` (enum: disabled, reject_calls, flag_calls), `media_features` (object), `phone_number` (string), `record_type` (string), `tech_prefix_enabled` (boolean), `translated_number` (string), `usage_payment_method` (enum: pay-per-minute, channel)\n\n## List Mobile Phone Numbers\n\n`GET /v2/mobile_phone_numbers`\n\n```python\npage = client.mobile_phone_numbers.list()\npage = page.data[0]\nprint(page.id)\n```\n\nReturns: `call_forwarding` (object), `call_recording` (object), `caller_id_name_enabled` (boolean), `cnam_listing` (object), `connection_id` (string | null), `connection_name` (string | null), `connection_type` (string | null), `country_iso_alpha2` (string), `created_at` (date-time), `customer_reference` (string | null), `id` (string), `inbound` (object), `inbound_call_screening` (enum: disabled, reject_calls, flag_calls), `mobile_voice_enabled` (boolean), `noise_suppression` (enum: inbound, outbound, both, disabled), `outbound` (object), `phone_number` (string), `record_type` (string), `sim_card_id` (uuid), `status` (string), `tags` (array[string]), `updated_at` (date-time)\n\n## Retrieve a Mobile Phone Number\n\n`GET /v2/mobile_phone_numbers/{id}`\n\n```python\nmobile_phone_number = client.mobile_phone_numbers.retrieve(\n    \"id\",\n)\nprint(mobile_phone_number.data)\n```\n\nReturns: `call_forwarding` (object), `call_recording` (object), `caller_id_name_enabled` (boolean), `cnam_listing` (object), `connection_id` (string | null), `connection_name` (string | null), `connection_type` (string | null), `country_iso_alpha2` (string), `created_at` (date-time), `customer_reference` (string | null), `id` (string), `inbound` (object), `inbound_call_screening` (enum: disabled, reject_calls, flag_calls), `mobile_voice_enabled` (boolean), `noise_suppression` (enum: inbound, outbound, both, disabled), `outbound` (object), `phone_number` (string), `record_type` (string), `sim_card_id` (uuid), `status` (string), `tags` (array[string]), `updated_at` (date-time)\n\n## Update a Mobile Phone Number\n\n`PATCH /v2/mobile_phone_numbers/{id}`\n\nOptional: `call_forwarding` (object), `call_recording` (object), `caller_id_name_enabled` (boolean), `cnam_listing` (object), `connection_id` (string | null), `customer_reference` (string | null), `inbound` (object), `inbound_call_screening` (enum: disabled, reject_calls, flag_calls), `noise_suppression` (boolean), `outbound` (object), `tags` (array[string])\n\n```python\nmobile_phone_number = client.mobile_phone_numbers.update(\n    id=\"550e8400-e29b-41d4-a716-446655440000\",\n)\nprint(mobile_phone_number.data)\n```\n\nReturns: `call_forwarding` (object), `call_recording` (object), `caller_id_name_enabled` (boolean), `cnam_listing` (object), `connection_id` (string | null), `connection_name` (string | null), `connection_type` (string | null), `country_iso_alpha2` (string), `created_at` (date-time), `customer_reference` (string | null), `id` (string), `inbound` (object), `inbound_call_screening` (enum: disabled, reject_calls, flag_calls), `mobile_voice_enabled` (boolean), `noise_suppression` (enum: inbound, outbound, both, disabled), `outbound` (object), `phone_number` (string), `record_type` (string), `sim_card_id` (uuid), `status` (string), `tags` (array[string]), `updated_at` (date-time)","tags":["telnyx","numbers","config","python","team-telnyx","agent-skills","ai-coding-agent","claude-code","cpaas","cursor","iot","llm"],"capabilities":["skill","source-team-telnyx","skill-telnyx-numbers-config-python","topic-agent-skills","topic-ai-coding-agent","topic-claude-code","topic-cpaas","topic-cursor","topic-iot","topic-llm","topic-sdk","topic-sip","topic-sms","topic-speech-to-text","topic-telephony"],"categories":["ai"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/team-telnyx/ai/telnyx-numbers-config-python","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add team-telnyx/ai","source_repo":"https://github.com/team-telnyx/ai","install_from":"skills.sh"}},"qualityScore":"0.533","qualityRationale":"deterministic score 0.53 from registry signals: · indexed on github topic:agent-skills · 167 github stars · SKILL.md body (24,433 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-04-22T06:54:42.796Z","embedding":null,"createdAt":"2026-04-18T22:07:10.788Z","updatedAt":"2026-04-22T06:54:42.796Z","lastSeenAt":"2026-04-22T06:54:42.796Z","tsv":"'+13125550001':83,180 '+13125550002':85 '+13127367254':1035 '+15551234567':670 '+18880000000':244 '+18880000001':245 '+18880000002':246 '+19705555098':788,903 '+19715555098':789,904 '-0000':239,240,241 '-000000000000':242 '/actions/bundle_status_change':2048 '/actions/enable_emergency':2133 '/messaging':384,2219,2307 '/messaging_numbers_bulk_updates':219,274 '/mobile_phone_numbers':382 '/mobile_phone_numbers/messaging':315 '/phone_numbers':444,1252,1490,1679,1897,2046,2131,2217,2305,2406,2477 '/phone_numbers/actions/verify_ownership':660 '/phone_numbers/jobs':690,1095 '/phone_numbers/jobs/delete_phone_numbers':778 '/phone_numbers/jobs/update_emergency_settings':880 '/phone_numbers/jobs/update_phone_numbers':997 '/phone_numbers/messaging':1161 '/phone_numbers/slim':1261 '/phone_numbers/voice':1422 '/v2/mobile_phone_numbers':2589,2690,2792 '/voice':2408,2479 '0':321,450,696,1167,1268,1428,2595 '00000000':238 '1':111 '1293384261075731499':1496,1714,1903,2058,2145,2412,2527 '1583466971586889004':1034 '1c434bbe861b':2067 '32873127836':790,905 '401':69,146 '403':150 '404':153 '4188':2064 '41d4':2326,2845 '422':65,134,157 '429':62,99,163 '446655440000':2328,2847 '5194d8fc':2062 '5194d8fc-87e6':2061 '53829456729313':2149 '550e8400':2323,2842 '87e6':2063 'a716':2327,2846 'account':658 'activ':512,589,1316,1379,1558,1635,1776,1853,2003 'actual':118 'address':502,888,1307,1548,1682,1766,1945,2138,2147 'alpha2':486,1298,1532,1750,2627,2729,2879 'alreadi':45 'alway':70 'and/or':2297 'api':25,29,53,126,148,775,877,984 'array':251,257,267,289,295,305,360,427,623,675,679,709,715,719,734,803,809,813,828,918,924,928,943,1024,1048,1054,1058,1073,1113,1119,1123,1138,1182,1213,1669,1705,1887,2021,2238,2269,2317,2343,2374,2677,2779,2834,2929 'assign':226 'assum':42 'authent':67 'auto':198 'auto-pagin':197 'automat':212 'baa9':2066 'baa9-1c434bbe861b':2065 'background':758,855,967 'backoff':107,169 'bash':11 'batch':752,763,785,850,897,961,972,1031 'bill':454,1002,1272,1500,1685,1718,1907 'boolean':228,462,466,471,475,500,508,526,621,1015,1022,1279,1283,1288,1292,1312,1329,1411,1472,1508,1512,1517,1521,1546,1554,1572,1667,1701,1726,1730,1735,1739,1764,1772,1790,1885,1914,1918,1923,1927,1943,1950,1957,2019,2111,2196,2456,2491,2510,2571,2609,2654,2711,2756,2805,2830,2861,2906 'bulk':213,232,264,270,280,302 'bundl':2028,2039,2044,2050,2055,2059 'call':54,459,463,530,535,537,776,878,985,1276,1280,1333,1338,1340,1432,1435,1452,1457,1459,1505,1509,1576,1581,1583,1723,1727,1794,1799,1801,1911,1915,2071,2074,2091,2096,2098,2156,2159,2176,2181,2183,2416,2419,2436,2441,2443,2481,2484,2496,2501,2503,2531,2534,2551,2556,2558,2599,2602,2643,2648,2650,2701,2704,2745,2750,2752,2795,2798,2820,2825,2827,2851,2854,2895,2900,2902 'caller':467,1284,1513,1731,1919,2487,2605,2707,2801,2857 'card':2671,2773,2923 'chang':2026 'channel':1484,2123,2208,2468,2522,2583 'check':93,112,138,160 'client':23,43 'client.messages.send':81 'client.messaging_numbers_bulk_updates.create':234 'client.messaging_numbers_bulk_updates.retrieve':282 'client.mobile_phone_numbers.list':2592 'client.mobile_phone_numbers.messaging.list':318 'client.mobile_phone_numbers.messaging.retrieve':387 'client.mobile_phone_numbers.retrieve':2696 'client.mobile_phone_numbers.update':2840 'client.phone_numbers.actions.change':2054 'client.phone_numbers.actions.enable':2142 'client.phone_numbers.actions.verify':666 'client.phone_numbers.delete':1902 'client.phone_numbers.jobs.delete':784 'client.phone_numbers.jobs.list':693 'client.phone_numbers.jobs.retrieve':1099 'client.phone_numbers.jobs.update':894,1030 'client.phone_numbers.list':447 'client.phone_numbers.messaging.list':1164 'client.phone_numbers.messaging.retrieve':2222 'client.phone_numbers.messaging.update':2321 'client.phone_numbers.retrieve':1495 'client.phone_numbers.slim':1264 'client.phone_numbers.update':1710 'client.phone_numbers.voice.list':1425 'client.phone_numbers.voice.retrieve':2411 'client.phone_numbers.voice.update':2525 'cnam':472,1289,1438,1518,1736,1924,2077,2162,2422,2492,2537,2610,2712,2806,2862 'code':75,129,133,145,186,326,393,1172,1222,1228,2228,2278,2284,2333,2383,2389 'collect':864 'common':143 'complet':729,823,938,1068,1133 'config':4,8 'connect':94,476,480,1006,1293,1441,1522,1526,1689,1740,1744,1928,1931,2080,2165,2425,2540,2613,2617,2621,2715,2719,2723,2809,2865,2869,2873 'cost':561,1354,1607,1825,1981 'countri':185,325,392,484,1171,1296,1530,1748,2227,2332,2625,2727,2877 'creat':328,395,488,700,755,794,853,909,964,1039,1104,1174,1300,1534,1752,1934,2230,2335,2629,2731,2881 'custom':493,1009,1303,1444,1539,1692,1757,1937,2083,2168,2428,2543,2634,2736,2813,2886 'dash':189 'date':331,371,398,438,491,705,799,914,1044,1109,1177,1235,1537,1755,2233,2291,2338,2396,2632,2682,2734,2784,2884,2934 'date-tim':330,370,397,437,490,704,798,913,1043,1108,1176,1234,1536,1754,2232,2290,2337,2395,2631,2681,2733,2783,2883,2933 'default':34 'delay':119 'delet':497,590,741,750,761,835,950,1012,1080,1145,1380,1543,1636,1761,1854,1892,1896,1940,2004 'deprovis':513,1317,1559,1777 'disabl':514,533,1318,1336,1455,1560,1579,1778,1797,2094,2179,2439,2499,2554,2646,2661,2748,2763,2823,2898,2913 'e':123 'e.164':177 'e.g':179 'e.message':130 'e.status':128,132 'e29b':2325,2844 'e29b-41d4-a716':2324,2843 'elig':1179,2235,2340 'emerg':501,506,509,592,739,833,846,860,882,887,895,898,948,1078,1143,1306,1310,1313,1382,1447,1547,1552,1555,1638,1765,1770,1773,1856,1944,1948,2006,2086,2125,2135,2137,2143,2146,2150,2171,2431,2546 'emergency-on':591,1381,1637,1855,2005 'enabl':461,465,470,474,499,507,525,620,883,899,1014,1021,1278,1282,1287,1291,1311,1328,1410,1471,1507,1511,1516,1520,1545,1553,1571,1666,1700,1725,1729,1734,1738,1763,1771,1789,1884,1913,1917,1922,1926,1942,1949,1956,2018,2110,2124,2136,2151,2195,2455,2490,2509,2570,2608,2653,2710,2755,2804,2860,2905 'endpoint':1245,1253 'enum':261,299,353,366,420,433,511,532,554,576,725,737,819,831,934,946,1064,1076,1129,1141,1206,1219,1315,1335,1347,1366,1454,1479,1557,1578,1600,1622,1775,1796,1818,1840,1974,1990,2093,2118,2178,2203,2262,2275,2367,2380,2438,2463,2498,2517,2553,2578,2645,2657,2747,2759,2822,2897,2909 'error':50,59,64,68,72,92,127,137,144,159 'etc':703,797,912,1042,1107 'exampl':40 'except':88,97,120,613,1403,1659,1877 'expir':731,825,940,1070,1135 'exponenti':106,168 'extern':519,1016,1323,1565,1695,1783,1951 'f':125 'fail':56,250,288,518,582,588,707,730,801,824,916,939,1046,1069,1111,1134,1322,1372,1378,1564,1628,1634,1782,1846,1852,1996,2002 'fax':618,1408,1664,1882,2016 'featur':333,400,1184,1461,2100,2185,2240,2345,2445,2505,2560 'field':140,161,992 'flag':536,1339,1458,1582,1800,2097,2182,2442,2502,2557,2649,2751,2826,2901 'format':142,162,178 'forward':460,1277,1433,1506,1724,1912,2072,2157,2417,2482,2532,2600,2702,2796,2852 'found':156,655,674,678 'free':557,1225,1350,1603,1821,1977,2281,2386 'gateway':619,1409,1665,1883,2017 'get':273,314,381,443,689,1094,1160,1260,1421,1489,2216,2405,2588,2689 'group':455,1003,1273,1501,1686,1719,1908 'handl':51,71 'hd':523,1019,1326,1569,1698,1787,1954 'header':116 'health':1186,2242,2347 'hello':87 'higher':1255 'id':223,237,254,276,284,292,335,342,346,383,388,402,409,413,456,468,477,503,527,540,648,711,805,889,920,1004,1007,1050,1096,1100,1115,1188,1195,1199,1274,1285,1294,1308,1330,1442,1449,1491,1502,1514,1523,1549,1573,1586,1680,1683,1687,1690,1702,1713,1720,1732,1741,1767,1791,1804,1898,1909,1920,1929,1946,1958,1962,2047,2051,2057,2060,2081,2088,2132,2139,2144,2148,2166,2173,2218,2223,2244,2251,2255,2306,2314,2322,2349,2356,2360,2407,2426,2433,2478,2488,2526,2541,2548,2606,2614,2638,2672,2691,2697,2708,2716,2740,2774,2793,2802,2810,2841,2858,2866,2890,2924 'import':17,21,77,108,170 'inbound':529,1332,1451,1575,1793,2090,2175,2435,2495,2550,2640,2642,2658,2742,2744,2760,2817,2819,2892,2894,2910 'includ':181 'info':603,607,612,1393,1397,1402,1649,1653,1658,1867,1871,1876 'initi':46 'instal':10,13 'insuffici':151 'invalid':147 'iso':485,1297,1531,1749,2626,2728,2878 'item':203 'iter':200,208 'job':688,759,856,968,1093,1098 'job.data':1102 'key':26,30,149 'landlin':562,1355,1608,1826,1982 'least':987 'lighter':1248 'limit':61,101,165,1259 'list':193,307,440,473,651,684,1154,1238,1241,1265,1290,1415,1439,1519,1737,1925,2078,2163,2423,2493,2538,2584,2611,2713,2807,2863 'local':555,1348,1601,1819,1975 'lock':498,1013,1544,1762,1941 'long':1221,2277,2382 'long-cod':1220,2276,2381 'longcod':367,434,565,1229,1358,1611,1829,2285,2390 'map':643 'media':1460,2099,2184,2444,2504,2559 'messag':221,230,235,262,278,300,312,337,340,354,357,379,386,404,407,421,424,538,543,1158,1180,1190,1193,1207,1210,1584,1589,1802,1807,1960,1964,2214,2221,2236,2246,2249,2263,2266,2295,2298,2309,2312,2320,2341,2351,2354,2368,2371 'messaging.data':390,2225,2330 'messaging_numbers_bulk_update.data':248,286 'method':194,1478,2117,2202,2462,2516,2577 'minut':1483,2122,2207,2467,2521,2582 'mobil':308,375,558,1351,1604,1822,1978,2585,2651,2686,2693,2753,2788,2837,2903 'mobile_phone_number.data':2699,2849 'must':174,993 'name':469,481,545,1286,1515,1527,1591,1733,1745,1809,1921,1932,1966,2489,2607,2618,2709,2720,2803,2859,2870 'nation':559,1352,1605,1823,1979 'network':58,91 'new':757,966 'nois':2655,2757,2828,2907 'note':171 'null':344,411,458,479,483,496,505,522,542,547,891,1197,1504,1525,1529,1542,1551,1568,1588,1593,1722,1743,1747,1760,1769,1786,1806,1811,2253,2358,2616,2620,2624,2637,2718,2722,2726,2739,2812,2816,2868,2872,2876,2889 'number':3,7,173,216,224,231,243,263,279,301,310,349,356,377,416,423,442,549,552,632,639,645,653,663,669,687,718,743,746,754,765,770,781,787,812,837,840,852,867,872,885,902,927,952,955,963,974,979,1000,1033,1057,1082,1085,1092,1122,1147,1150,1156,1202,1209,1240,1243,1342,1345,1417,1464,1474,1488,1494,1595,1598,1677,1709,1712,1813,1816,1895,1901,1969,1972,2033,2103,2113,2129,2188,2198,2212,2258,2265,2303,2363,2370,2401,2448,2458,2472,2512,2563,2573,2587,2665,2688,2695,2767,2790,2839,2917 'object':334,401,574,676,710,716,720,735,804,810,814,829,919,925,929,944,1027,1049,1055,1059,1074,1114,1120,1124,1139,1185,1187,1434,1437,1440,1448,1462,1620,1838,2073,2076,2079,2087,2101,2158,2161,2164,2172,2186,2241,2243,2346,2348,2418,2421,2424,2432,2446,2483,2486,2494,2506,2533,2536,2539,2547,2561,2601,2604,2612,2641,2663,2703,2706,2714,2743,2765,2797,2800,2808,2818,2832,2853,2856,2864,2893,2915 'omit':38 'one':768,870,977,988 'oper':708,714,733,802,808,827,917,923,942,1047,1053,1072,1112,1118,1137 'option':225,886,1001,1681,2308,2480,2794 'order':253,275,283,291 'organ':345,412,1198,2254,2359 'os':18 'os.environ.get':27 'outbound':2659,2662,2761,2764,2831,2911,2914 'ownership':629,634,667 'page':205,211,317,319,446,448,692,694,1163,1165,1263,1266,1424,1426,2591,2593 'page.data':320,449,695,1166,1267,1427,2594 'page.id':323,452,698,1169,1270,1430,2597 'pagin':192,199 'parenthes':191 'patch':1678,2045,2304,2476,2791 'pay':1481,2120,2205,2465,2519,2580 'pay-per-minut':1480,2119,2204,2464,2518,2579 'payment':1477,2116,2201,2461,2515,2576 'pend':256,294,579,585,600,604,616,713,726,807,820,922,935,1052,1065,1117,1130,1369,1375,1390,1394,1406,1625,1631,1646,1650,1662,1843,1849,1864,1868,1880,1993,1999,2014 'per':774,876,983,1482,2121,2206,2466,2520,2581 'perform':1256 'permiss':152 'phone':172,215,309,348,355,376,415,422,441,548,551,631,638,662,668,686,717,742,745,780,786,811,836,839,866,884,901,926,951,954,999,1032,1056,1081,1084,1091,1121,1146,1149,1155,1201,1208,1239,1242,1341,1344,1416,1463,1487,1493,1594,1597,1676,1708,1711,1812,1815,1894,1900,1968,1971,2032,2102,2128,2187,2211,2257,2264,2302,2362,2369,2400,2447,2471,2562,2586,2664,2687,2694,2766,2789,2838,2916 'phone_number.data':1498,1716,1905 'pin':520,1017,1324,1566,1696,1784,1952 'pip':12 'plus':649 'port':584,587,595,598,1374,1377,1385,1388,1630,1633,1641,1644,1848,1851,1859,1862,1998,2001,2009,2012 'port-fail':586,1376,1632,1850,2000 'port-out-pend':597,1387,1643,1861,2011 'port-pend':583,1373,1629,1847,1997 'ported-out':594,1384,1640,1858,2008 'post':218,659,777,879,996,2130 'prefix':183,1470,2109,2194,2454,2508,2569 'print':90,124,135,247,285,322,389,451,671,697,791,906,1036,1101,1168,1269,1429,1497,1715,1904,2068,2153,2224,2329,2413,2528,2596,2698,2848 'product':74,338,405,1181,1191,2237,2247,2299,2310,2342,2352 'profil':217,222,236,341,408,539,544,1194,1585,1590,1803,1808,1961,1965,2250,2296,2313,2355 'progress':728,822,937,1067,1132 'provid':637 'provis':515,517,615,1319,1321,1405,1561,1563,1661,1779,1781,1879 'provision-pend':614,1404,1660,1878 'provisioning-fail':516,1320,1562,1780 'purchas':566,578,581,1359,1368,1371,1612,1624,1627,1830,1842,1845,1983,1992,1995 'purchase-fail':580,1370,1626,1844,1994 'purchase-pend':577,1367,1623,1841,1991 'python':5,9,16,76,229,277,316,385,445,664,691,782,892,1028,1097,1162,1262,1423,1492,1707,1899,2052,2140,2220,2319,2409,2523,2590,2692,2836 'rate':60,100,164,1258 'record':259,297,351,418,464,569,681,721,815,930,1060,1125,1204,1281,1362,1436,1466,1510,1615,1728,1833,1916,1986,2075,2105,2160,2190,2260,2365,2420,2450,2485,2535,2565,2603,2667,2705,2769,2799,2855,2919 'refer':494,1010,1304,1445,1540,1693,1758,1938,2084,2169,2429,2544,2635,2737,2814,2887 'reject':534,1337,1456,1580,1798,2095,2180,2440,2500,2555,2647,2749,2824,2899 'remov':2041 'requir':139,220,602,606,611,661,779,881,998,1392,1396,1401,1648,1652,1657,1866,1870,1875,2049,2134 'requirement-info-except':610,1400,1656,1874 'requirement-info-pend':601,1391,1647,1865 'requirement-info-under-review':605,1395,1651,1869 'resourc':154 'respons':665,783,893,1029,2053,2141 'response.data':672,792,907,1037,2069,2154 'result':80,206 'retri':96,104,114,166 'retriev':269,373,1089,1485,2209,2398,2684 'retry-aft':113 'return':195,249,287,324,391,453,641,673,699,793,908,1038,1103,1170,1271,1431,1499,1717,1906,2070,2155,2226,2331,2415,2530,2598,2700,2850 'review':609,1399,1655,1873 'screen':531,1334,1453,1577,1795,2092,2177,2437,2497,2552,2644,2746,2821,2896 'set':313,358,380,425,740,834,847,861,896,949,1079,1144,1159,1211,1420,2034,2215,2267,2372,2404,2475 'setup':15 'share':560,1353,1606,1824,1980 'short':1227,2283,2388 'short-cod':1226,2282,2387 'shortcod':564,1231,1357,1610,1828,2287,2392 'shown':48 'sim':2670,2772,2922 'skill' 'skill-telnyx-numbers-config-python' 'slim':1237 'sourc':572,1618,1836 'source-team-telnyx' 'space':188 'status':272,510,575,724,818,933,1063,1128,1314,1365,1556,1621,1774,1839,1989,2029,2056,2674,2776,2926 'string':252,258,268,290,296,306,327,336,339,343,347,350,361,364,394,403,406,410,414,417,428,431,457,478,482,487,495,504,521,528,541,546,550,568,571,624,627,680,683,702,723,749,796,817,843,890,911,932,958,1005,1008,1011,1018,1025,1041,1062,1088,1106,1127,1153,1173,1183,1189,1192,1196,1200,1203,1214,1217,1275,1295,1299,1302,1305,1309,1325,1331,1343,1361,1364,1414,1443,1446,1450,1465,1468,1475,1503,1524,1528,1533,1541,1550,1567,1574,1587,1592,1596,1614,1617,1670,1673,1684,1688,1691,1694,1697,1703,1706,1721,1742,1746,1751,1759,1768,1785,1792,1805,1810,1814,1832,1835,1888,1891,1910,1930,1933,1936,1939,1947,1953,1959,1963,1967,1970,1985,1988,2022,2025,2082,2085,2089,2104,2107,2114,2167,2170,2174,2189,2192,2199,2229,2239,2245,2248,2252,2256,2259,2270,2273,2311,2315,2318,2334,2344,2350,2353,2357,2361,2364,2375,2378,2427,2430,2434,2449,2452,2459,2513,2542,2545,2549,2564,2567,2574,2615,2619,2623,2628,2636,2639,2666,2669,2675,2678,2717,2721,2725,2730,2738,2741,2768,2771,2777,2780,2811,2815,2835,2867,2871,2875,2880,2888,2891,2918,2921,2927,2930 'submit':995 'success':266,304,732,826,941,1071,1136 'suppress':2656,2758,2829,2908 't38':617,1407,1663,1881,2015 'tag':359,426,622,1023,1212,1668,1704,1886,2020,2268,2316,2373,2676,2778,2833,2928 'tech':1469,2108,2193,2453,2507,2568 'telnyx':2,6,14,20,22,24,28,78 'telnyx-numbers-config-python':1 'telnyx.apiconnectionerror':89 'telnyx.apistatuserror':121 'telnyx.ratelimiterror':98 'text':86 'thousand':769,871,978 'time':109,332,372,399,439,492,706,800,915,1045,1110,1178,1236,1538,1756,2234,2292,2339,2397,2633,2683,2735,2785,2885,2935 'time.sleep':110 'toll':556,1224,1349,1602,1820,1976,2280,2385 'toll-fre':1223,2279,2384 'tollfre':563,1230,1356,1609,1827,2286,2391 'topic-agent-skills' 'topic-ai-coding-agent' 'topic-claude-code' 'topic-cpaas' 'topic-cursor' 'topic-iot' 'topic-llm' 'topic-sdk' 'topic-sip' 'topic-sms' 'topic-speech-to-text' 'topic-telephony' 'traffic':362,429,1215,2271,2376 'translat':1473,2112,2197,2457,2511,2572 'tri':79 'true':900,2152 'type':260,298,352,363,365,419,430,432,553,570,573,682,722,736,816,830,931,945,1061,1075,1126,1140,1205,1216,1218,1346,1363,1467,1599,1616,1619,1817,1834,1837,1973,1987,2106,2191,2261,2272,2274,2366,2377,2379,2451,2566,2622,2668,2724,2770,2874,2920 'updat':214,233,265,271,281,303,368,435,625,738,744,747,773,832,838,841,844,858,875,947,953,956,959,970,982,991,1077,1083,1086,1142,1148,1151,1232,1412,1671,1674,1889,2023,2288,2293,2393,2469,2679,2781,2786,2931 'usag':1476,2115,2200,2460,2514,2575 'use':201 'uuid':255,293,712,806,921,1051,1116,2673,2775,2925 'valid':63,136,158 'verifi':628,633 'version':1249 'voic':524,1020,1026,1327,1419,1570,1699,1788,1955,2403,2410,2474,2524,2652,2754,2904 'voice.data':2414,2529 'wait':102","prices":[{"id":"4a38c81e-9ab8-4ca3-9c35-c55f6b2b9cff","listingId":"752c45b2-1e28-4593-a80c-8b8a1eac6ed8","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"team-telnyx","category":"ai","install_from":"skills.sh"},"createdAt":"2026-04-18T22:07:10.788Z"}],"sources":[{"listingId":"752c45b2-1e28-4593-a80c-8b8a1eac6ed8","source":"github","sourceId":"team-telnyx/ai/telnyx-numbers-config-python","sourceUrl":"https://github.com/team-telnyx/ai/tree/main/skills/telnyx-numbers-config-python","isPrimary":false,"firstSeenAt":"2026-04-18T22:07:10.788Z","lastSeenAt":"2026-04-22T06:54:42.796Z"}],"details":{"listingId":"752c45b2-1e28-4593-a80c-8b8a1eac6ed8","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"team-telnyx","slug":"telnyx-numbers-config-python","github":{"repo":"team-telnyx/ai","stars":167,"topics":["agent-skills","ai","ai-coding-agent","claude-code","cpaas","cursor","iot","llm","sdk","sip","sms","speech-to-text","telephony","telnyx","tts","twilio-migration","voice-agents","voice-ai","webrtc","windsurf"],"license":"mit","html_url":"https://github.com/team-telnyx/ai","pushed_at":"2026-04-21T22:09:49Z","description":"Official one-stop shop for AI Agents and developers building with Telnyx.","skill_md_sha":"e342cc37165e1d047952f5fc114a616de12a5d85","skill_md_path":"skills/telnyx-numbers-config-python/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/team-telnyx/ai/tree/main/skills/telnyx-numbers-config-python"},"layout":"multi","source":"github","category":"ai","frontmatter":{"name":"telnyx-numbers-config-python","description":">-"},"skills_sh_url":"https://skills.sh/team-telnyx/ai/telnyx-numbers-config-python"},"updatedAt":"2026-04-22T06:54:42.796Z"}}