{"id":"26434a01-a73d-413d-b1ca-78f60d67c17a","shortId":"qsqPPz","kind":"skill","title":"telnyx-numbers-ruby","tagline":">-","description":"<!-- Auto-generated from Telnyx OpenAPI specs. Do not edit. -->\n\n# Telnyx Numbers - Ruby\n\n## Installation\n\n```bash\ngem install telnyx\n```\n\n## Setup\n\n```ruby\nrequire \"telnyx\"\n\nclient = Telnyx::Client.new(\n  api_key: ENV[\"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```ruby\navailable_phone_numbers = client.available_phone_numbers.list\nputs(available_phone_numbers)\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:** Use `.auto_paging_each` for automatic iteration: `page.auto_paging_each { |item| puts item.id }`.\n\n## Reference Use Rules\n\nDo not invent Telnyx parameters, enums, response fields, or webhook fields.\n\n- If the parameter, enum, or response field you need is not shown inline in this skill, read [references/api-details.md](references/api-details.md) before writing code.\n- Before using any operation in `## Additional Operations`, read [the optional-parameters section](references/api-details.md#optional-parameters) and [the response-schemas section](references/api-details.md#response-schemas).\n\n## Core Tasks\n\n### Search available phone numbers\n\nNumber search is the entrypoint for provisioning. Agents need the search method, key query filters, and the fields returned for candidate numbers.\n\n`client.available_phone_numbers.list()` — `GET /available_phone_numbers`\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `filter` | object | No | Consolidated filter parameter (deepObject style). |\n\n```ruby\navailable_phone_numbers = client.available_phone_numbers.list\n\nputs(available_phone_numbers)\n```\n\nResponse wrapper:\n- items: `available_phone_numbers.data`\n- pagination: `available_phone_numbers.meta`\n\nPrimary item fields:\n- `phone_number`\n- `record_type`\n- `quickship`\n- `reservable`\n- `best_effort`\n- `cost_information`\n\n### Create a number order\n\nNumber ordering is the production provisioning step after number selection.\n\n`client.number_orders.create()` — `POST /number_orders`\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `phone_numbers` | array[object] | Yes |  |\n| `connection_id` | string (UUID) | No | Identifies the connection associated with this phone number. |\n| `messaging_profile_id` | string (UUID) | No | Identifies the messaging profile associated with the phone n... |\n| `billing_group_id` | string (UUID) | No | Identifies the billing group associated with the phone numbe... |\n| ... | | | +1 optional params in [references/api-details.md](references/api-details.md) |\n\n```ruby\nnumber_order = client.number_orders.create(phone_numbers: [{\"phone_number\": \"+18005550101\"}])\nputs(number_order)\n```\n\nPrimary response fields:\n- `number_order.data.id`\n- `number_order.data.status`\n- `number_order.data.phone_numbers_count`\n- `number_order.data.requirements_met`\n- `number_order.data.messaging_profile_id`\n- `number_order.data.connection_id`\n\n### Check number order status\n\nOrder status determines whether provisioning completed or additional requirements are still blocking fulfillment.\n\n`client.number_orders.retrieve()` — `GET /number_orders/{number_order_id}`\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `number_order_id` | string (UUID) | Yes | The number order ID. |\n\n```ruby\nnumber_order = client.number_orders.retrieve(\"550e8400-e29b-41d4-a716-446655440000\")\n\nputs(number_order)\n```\n\nPrimary response fields:\n- `number_order.data.id`\n- `number_order.data.status`\n- `number_order.data.requirements_met`\n- `number_order.data.phone_numbers_count`\n- `number_order.data.phone_numbers`\n- `number_order.data.connection_id`\n\n---\n\n## Important Supporting Operations\n\nUse these when the core tasks above are close to your flow, but you need a common variation or follow-up step.\n\n### Create a number reservation\n\nCreate or provision an additional resource when the core tasks do not cover this flow.\n\n`client.number_reservations.create()` — `POST /number_reservations`\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `phone_numbers` | array[object] | Yes |  |\n| `status` | enum (pending, success, failure) | No | The status of the entire reservation. |\n| `id` | string (UUID) | No |  |\n| `record_type` | string | No |  |\n| ... | | | +3 optional params in [references/api-details.md](references/api-details.md) |\n\n```ruby\nnumber_reservation = client.number_reservations.create(phone_numbers: [{\"phone_number\": \"+18005550101\"}])\nputs(number_reservation)\n```\n\nPrimary response fields:\n- `number_reservation.data.id`\n- `number_reservation.data.status`\n- `number_reservation.data.created_at`\n- `number_reservation.data.updated_at`\n- `number_reservation.data.customer_reference`\n- `number_reservation.data.errors`\n\n### Retrieve a number reservation\n\nFetch the current state before updating, deleting, or making control-flow decisions.\n\n`client.number_reservations.retrieve()` — `GET /number_reservations/{number_reservation_id}`\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `number_reservation_id` | string (UUID) | Yes | The number reservation ID. |\n\n```ruby\nnumber_reservation = client.number_reservations.retrieve(\"550e8400-e29b-41d4-a716-446655440000\")\n\nputs(number_reservation)\n```\n\nPrimary response fields:\n- `number_reservation.data.id`\n- `number_reservation.data.status`\n- `number_reservation.data.created_at`\n- `number_reservation.data.updated_at`\n- `number_reservation.data.customer_reference`\n- `number_reservation.data.errors`\n\n### List Advanced Orders\n\nInspect available resources or choose an existing resource before mutating it.\n\n`client.advanced_orders.list()` — `GET /advanced_orders`\n\n```ruby\nadvanced_orders = client.advanced_orders.list\n\nputs(advanced_orders)\n```\n\nResponse wrapper:\n- items: `advanced_orders.data`\n\nPrimary item fields:\n- `id`\n- `status`\n- `area_code`\n- `comments`\n- `country_code`\n- `customer_reference`\n\n### Create Advanced Order\n\nCreate or provision an additional resource when the core tasks do not cover this flow.\n\n`client.advanced_orders.create()` — `POST /advanced_orders`\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `phone_number_type` | enum (local, mobile, toll_free, shared_cost, national, ...) | No |  |\n| `requirement_group_id` | string (UUID) | No | The ID of the requirement group to associate with this advan... |\n| `country_code` | string (ISO 3166-1 alpha-2) | No |  |\n| ... | | | +5 optional params in [references/api-details.md](references/api-details.md) |\n\n```ruby\nadvanced_order = client.advanced_orders.create\n\nputs(advanced_order)\n```\n\nPrimary response fields:\n- `advanced_order.id`\n- `advanced_order.status`\n- `advanced_order.area_code`\n- `advanced_order.comments`\n- `advanced_order.country_code`\n- `advanced_order.customer_reference`\n\n### Update Advanced Order\n\nModify an existing resource without recreating it.\n\n`client.advanced_orders.update_requirement_group()` — `PATCH /advanced_orders/{advanced-order-id}/requirement_group`\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `advanced-order-id` | string (UUID) | Yes |  |\n| `phone_number_type` | enum (local, mobile, toll_free, shared_cost, national, ...) | No |  |\n| `requirement_group_id` | string (UUID) | No | The ID of the requirement group to associate with this advan... |\n| `country_code` | string (ISO 3166-1 alpha-2) | No |  |\n| ... | | | +5 optional params in [references/api-details.md](references/api-details.md) |\n\n```ruby\nresponse = client.advanced_orders.update_requirement_group(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n\nputs(response)\n```\n\nPrimary response fields:\n- `response.id`\n- `response.status`\n- `response.area_code`\n- `response.comments`\n- `response.country_code`\n- `response.customer_reference`\n\n### Get Advanced Order\n\nFetch the current state before updating, deleting, or making control-flow decisions.\n\n`client.advanced_orders.retrieve()` — `GET /advanced_orders/{order_id}`\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `order_id` | string (UUID) | Yes |  |\n\n```ruby\nadvanced_order = client.advanced_orders.retrieve(\"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e\")\n\nputs(advanced_order)\n```\n\nPrimary response fields:\n- `advanced_order.id`\n- `advanced_order.status`\n- `advanced_order.area_code`\n- `advanced_order.comments`\n- `advanced_order.country_code`\n- `advanced_order.customer_reference`\n\n### List available phone number blocks\n\nInspect available resources or choose an existing resource before mutating it.\n\n`client.available_phone_number_blocks.list()` — `GET /available_phone_number_blocks`\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `filter` | object | No | Consolidated filter parameter (deepObject style). |\n\n```ruby\navailable_phone_number_blocks = client.available_phone_number_blocks.list\n\nputs(available_phone_number_blocks)\n```\n\nResponse wrapper:\n- items: `available_phone_number_blocks.data`\n- pagination: `available_phone_number_blocks.meta`\n\nPrimary item fields:\n- `phone_number`\n- `cost_information`\n- `features`\n- `range`\n- `record_type`\n- `region_information`\n\n### Retrieve all comments\n\nInspect available resources or choose an existing resource before mutating it.\n\n`client.comments.list()` — `GET /comments`\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `filter` | object | No | Consolidated filter parameter (deepObject style). |\n\n```ruby\ncomments = client.comments.list\n\nputs(comments)\n```\n\nResponse wrapper:\n- items: `comments.data`\n- pagination: `comments.meta`\n\nPrimary item fields:\n- `id`\n- `body`\n- `created_at`\n- `updated_at`\n- `comment_record_id`\n- `comment_record_type`\n\n---\n\n## Additional Operations\n\nUse the core tasks above first. The operations below are indexed here with exact SDK methods and required params; use [references/api-details.md](references/api-details.md) for full optional params, response schemas, and lower-frequency webhook payloads.\nBefore using any operation below, read [the optional-parameters section](references/api-details.md#optional-parameters) and [the response-schemas section](references/api-details.md#response-schemas) so you do not guess missing fields.\n\n| Operation | SDK method | Endpoint | Use when | Required params |\n|-----------|------------|----------|----------|-----------------|\n| Create a comment | `client.comments.create()` | `POST /comments` | Create or provision an additional resource when the core tasks do not cover this flow. | None |\n| Retrieve a comment | `client.comments.retrieve()` | `GET /comments/{id}` | Fetch the current state before updating, deleting, or making control-flow decisions. | `id` |\n| Mark a comment as read | `client.comments.mark_as_read()` | `PATCH /comments/{id}/read` | Modify an existing resource without recreating it. | `id` |\n| Get country coverage | `client.country_coverage.retrieve()` | `GET /country_coverage` | Inspect available resources or choose an existing resource before mutating it. | None |\n| Get coverage for a specific country | `client.country_coverage.retrieve_country()` | `GET /country_coverage/countries/{country_code}` | Fetch the current state before updating, deleting, or making control-flow decisions. | `country_code` |\n| List customer service records | `client.customer_service_records.list()` | `GET /customer_service_records` | Inspect available resources or choose an existing resource before mutating it. | None |\n| Create a customer service record | `client.customer_service_records.create()` | `POST /customer_service_records` | Create or provision an additional resource when the core tasks do not cover this flow. | None |\n| Verify CSR phone number coverage | `client.customer_service_records.verify_phone_number_coverage()` | `POST /customer_service_records/phone_number_coverages` | Create or provision an additional resource when the core tasks do not cover this flow. | None |\n| Get a customer service record | `client.customer_service_records.retrieve()` | `GET /customer_service_records/{customer_service_record_id}` | Fetch the current state before updating, deleting, or making control-flow decisions. | `customer_service_record_id` |\n| List inexplicit number orders | `client.inexplicit_number_orders.list()` | `GET /inexplicit_number_orders` | Inspect available resources or choose an existing resource before mutating it. | None |\n| Create an inexplicit number order | `client.inexplicit_number_orders.create()` | `POST /inexplicit_number_orders` | Create or provision an additional resource when the core tasks do not cover this flow. | `ordering_groups` |\n| Retrieve an inexplicit number order | `client.inexplicit_number_orders.retrieve()` | `GET /inexplicit_number_orders/{id}` | Fetch the current state before updating, deleting, or making control-flow decisions. | `id` |\n| Create an inventory coverage request | `client.inventory_coverage.list()` | `GET /inventory_coverage` | Inspect available resources or choose an existing resource before mutating it. | None |\n| List mobile network operators | `client.mobile_network_operators.list()` | `GET /mobile_network_operators` | Inspect available resources or choose an existing resource before mutating it. | None |\n| List network coverage locations | `client.network_coverage.list()` | `GET /network_coverage` | Inspect available resources or choose an existing resource before mutating it. | None |\n| List number block orders | `client.number_block_orders.list()` | `GET /number_block_orders` | Inspect available resources or choose an existing resource before mutating it. | None |\n| Create a number block order | `client.number_block_orders.create()` | `POST /number_block_orders` | Create or provision an additional resource when the core tasks do not cover this flow. | `starting_number`, `range` |\n| Retrieve a number block order | `client.number_block_orders.retrieve()` | `GET /number_block_orders/{number_block_order_id}` | Fetch the current state before updating, deleting, or making control-flow decisions. | `number_block_order_id` |\n| Retrieve a list of phone numbers associated to orders | `client.number_order_phone_numbers.list()` | `GET /number_order_phone_numbers` | Inspect available resources or choose an existing resource before mutating it. | None |\n| Retrieve a single phone number within a number order. | `client.number_order_phone_numbers.retrieve()` | `GET /number_order_phone_numbers/{number_order_phone_number_id}` | Fetch the current state before updating, deleting, or making control-flow decisions. | `number_order_phone_number_id` |\n| Update requirements for a single phone number within a number order. | `client.number_order_phone_numbers.update_requirements()` | `PATCH /number_order_phone_numbers/{number_order_phone_number_id}` | Modify an existing resource without recreating it. | `number_order_phone_number_id` |\n| List number orders | `client.number_orders.list()` | `GET /number_orders` | Create or inspect provisioning orders for number purchases. | None |\n| Update a number order | `client.number_orders.update()` | `PATCH /number_orders/{number_order_id}` | Modify an existing resource without recreating it. | `number_order_id` |\n| List number reservations | `client.number_reservations.list()` | `GET /number_reservations` | Inspect available resources or choose an existing resource before mutating it. | None |\n| Extend a number reservation | `client.number_reservations.actions.extend_()` | `POST /number_reservations/{number_reservation_id}/actions/extend` | Trigger a follow-up action in an existing workflow rather than creating a new top-level resource. | `number_reservation_id` |\n| Retrieve the features for a list of numbers | `client.numbers_features.create()` | `POST /numbers_features` | Create or provision an additional resource when the core tasks do not cover this flow. | `phone_numbers` |\n| Lists the phone number blocks jobs | `client.phone_number_blocks.jobs.list()` | `GET /phone_number_blocks/jobs` | Inspect available resources or choose an existing resource before mutating it. | None |\n| Deletes all numbers associated with a phone number block | `client.phone_number_blocks.jobs.delete_phone_number_block()` | `POST /phone_number_blocks/jobs/delete_phone_number_block` | Create or provision an additional resource when the core tasks do not cover this flow. | `phone_number_block_id` |\n| Retrieves a phone number blocks job | `client.phone_number_blocks.jobs.retrieve()` | `GET /phone_number_blocks/jobs/{id}` | Fetch the current state before updating, deleting, or making control-flow decisions. | `id` |\n| List sub number orders | `client.sub_number_orders.list()` | `GET /sub_number_orders` | Inspect available resources or choose an existing resource before mutating it. | None |\n| Retrieve a sub number order | `client.sub_number_orders.retrieve()` | `GET /sub_number_orders/{sub_number_order_id}` | Fetch the current state before updating, deleting, or making control-flow decisions. | `sub_number_order_id` |\n| Update a sub number order's requirements | `client.sub_number_orders.update()` | `PATCH /sub_number_orders/{sub_number_order_id}` | Modify an existing resource without recreating it. | `sub_number_order_id` |\n| Cancel a sub number order | `client.sub_number_orders.cancel()` | `PATCH /sub_number_orders/{sub_number_order_id}/cancel` | Modify an existing resource without recreating it. | `sub_number_order_id` |\n| Create a sub number orders report | `client.sub_number_orders_report.create()` | `POST /sub_number_orders_report` | Create or provision an additional resource when the core tasks do not cover this flow. | None |\n| Retrieve a sub number orders report | `client.sub_number_orders_report.retrieve()` | `GET /sub_number_orders_report/{report_id}` | Fetch the current state before updating, deleting, or making control-flow decisions. | `report_id` |\n| Download a sub number orders report | `client.sub_number_orders_report.download()` | `GET /sub_number_orders_report/{report_id}/download` | Fetch the current state before updating, deleting, or making control-flow decisions. | `report_id` |\n\n### Other Webhook Events\n\n| Event | `data.event_type` | Description |\n|-------|-------------------|-------------|\n| `numberOrderStatusUpdate` | `number.order.status.update` | Number Order Status Update |\n\n---\n\nFor exhaustive optional parameters, full response schemas, and complete webhook payloads, see [references/api-details.md](references/api-details.md).","tags":["telnyx","numbers","ruby","team-telnyx","agent-skills","ai-coding-agent","claude-code","cpaas","cursor","iot","llm","sdk"],"capabilities":["skill","source-team-telnyx","skill-telnyx-numbers-ruby","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-ruby","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 (19,153 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:43.600Z","embedding":null,"createdAt":"2026-04-18T22:07:16.662Z","updatedAt":"2026-04-22T06:54:43.600Z","lastSeenAt":"2026-04-22T06:54:43.600Z","tsv":"'+1':346 '+13125550001':117 '+18005550101':360,534 '+3':520 '+5':715,809 '-1':711,805 '-2':713,807 '/actions/extend':1647 '/advanced_orders':628,672,754,858 '/available_phone_number_blocks':913 '/available_phone_numbers':236 '/cancel':1862 '/comments':972,1092,1114,1139 '/country_coverage':1155 '/country_coverage/countries':1177 '/customer_service_records':1201,1221,1272 '/customer_service_records/phone_number_coverages':1248 '/download':1936 '/inexplicit_number_orders':1300,1320,1345 '/inventory_coverage':1368 '/mobile_network_operators':1387 '/network_coverage':1406 '/number_block_orders':1425,1445,1471 '/number_order_phone_numbers':1504,1528,1566 '/number_orders':293,398,1589,1605 '/number_reservations':490,569,1624,1643 '/numbers_features':1680 '/phone_number_blocks/jobs':1706,1761 '/phone_number_blocks/jobs/delete_phone_number_block':1733 '/read':1141 '/requirement_group':759 '/sub_number_orders':1783,1803,1834,1857 '/sub_number_orders_report':1882,1907,1933 '182bd5e5':821,875 '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e':820,874 '3166':710,804 '401':64,83 '403':87 '404':90 '41d4':423,594 '422':60,94 '429':57,100 '446655440000':425,596 '4fe4':823,877 '550e8400':420,591 '6e1a':822,876 'a716':424,595 'a799':824,878 'aa6d9a6ab26e':825,879 'action':1653 'addit':184,390,477,659,1011,1097,1226,1253,1325,1450,1685,1738,1887 'advan':705,799 'advanc':613,630,634,653,722,726,741,756,765,841,871,881 'advanced-order-id':755,764 'advanced_order.area':733,888 'advanced_order.comments':735,890 'advanced_order.country':736,891 'advanced_order.customer':738,893 'advanced_order.id':731,886 'advanced_order.status':732,887 'advanced_orders.data':639 'agent':219 'alpha':712,806 'alreadi':40 'alway':65 'api':20,24,48,85 'area':645 'array':300,497 'associ':311,326,341,702,796,1499,1722 'assum':37 'authent':62 'auto':131 'automat':135 'avail':72,77,209,250,255,616,896,901,927,933,960,1157,1203,1302,1370,1389,1408,1427,1506,1626,1708,1785 'available_phone_number_blocks.data':940 'available_phone_number_blocks.meta':942 'available_phone_numbers.data':261 'available_phone_numbers.meta':263 'backoff':106 'bash':9 'best':273 'bill':331,339 'block':394,899,930,936,1421,1441,1467,1473,1490,1702,1727,1731,1751,1757 'bodi':1000 'call':49 'cancel':1850 'candid':232 'check':97,379 'choos':619,904,963,1160,1206,1305,1373,1392,1411,1430,1509,1629,1711,1788 'client':17,38 'client.advanced_orders.create':670,724 'client.advanced_orders.list':626,632 'client.advanced_orders.retrieve':856,873 'client.advanced_orders.update':750,817 'client.available_phone_number_blocks.list':911,931 'client.available_phone_numbers.list':75,234,253 'client.comments.create':1090 'client.comments.list':970,987 'client.comments.mark':1135 'client.comments.retrieve':1112 'client.country_coverage.retrieve':1153,1174 'client.customer_service_records.create':1219 'client.customer_service_records.list':1199 'client.customer_service_records.retrieve':1270 'client.customer_service_records.verify':1243 'client.inexplicit_number_orders.create':1318 'client.inexplicit_number_orders.list':1298 'client.inexplicit_number_orders.retrieve':1343 'client.inventory_coverage.list':1366 'client.mobile_network_operators.list':1385 'client.network_coverage.list':1404 'client.new':19 'client.number_block_orders.create':1443 'client.number_block_orders.list':1423 'client.number_block_orders.retrieve':1469 'client.number_order_phone_numbers.list':1502 'client.number_order_phone_numbers.retrieve':1526 'client.number_order_phone_numbers.update':1563 'client.number_orders.create':291,355 'client.number_orders.list':1587 'client.number_orders.retrieve':396,419 'client.number_orders.update':1603 'client.number_reservations.actions.extend':1641 'client.number_reservations.create':488,529 'client.number_reservations.list':1622 'client.number_reservations.retrieve':567,590 'client.numbers_features.create':1678 'client.phone_number_blocks.jobs.delete':1728 'client.phone_number_blocks.jobs.list':1704 'client.phone_number_blocks.jobs.retrieve':1759 'client.sub_number_orders.cancel':1855 'client.sub_number_orders.list':1781 'client.sub_number_orders.retrieve':1801 'client.sub_number_orders.update':1832 'client.sub_number_orders_report.create':1880 'client.sub_number_orders_report.download':1931 'client.sub_number_orders_report.retrieve':1905 'close':454 'code':70,82,123,178,646,649,707,734,737,801,834,837,889,892,1179,1194 'comment':647,958,986,989,1005,1008,1089,1111,1132 'comments.data':993 'comments.meta':995 'common':80,462 'complet':388,1973 'connect':303,310 'consolid':244,921,980 'control':564,853,1126,1190,1287,1357,1486,1544,1773,1818,1920,1947 'control-flow':563,852,1125,1189,1286,1356,1485,1543,1772,1817,1919,1946 'core':206,450,481,663,1015,1101,1230,1257,1329,1454,1689,1742,1891 'cost':275,686,780,948 'count':371,438 'countri':122,648,706,800,1151,1173,1175,1178,1193 'cover':485,667,1105,1234,1261,1333,1458,1693,1746,1895 'coverag':1152,1169,1242,1246,1364,1402 'creat':277,469,473,652,655,1001,1087,1093,1214,1222,1249,1313,1321,1361,1438,1446,1590,1660,1681,1734,1874,1883 'csr':1239 'current':556,845,1118,1182,1279,1349,1478,1536,1765,1810,1912,1939 'custom':650,1196,1216,1267,1273,1290 'dash':126 'data.event':1956 'decis':566,855,1128,1192,1289,1359,1488,1546,1775,1820,1922,1949 'deepobject':247,924,983 'default':29 'delet':560,849,1122,1186,1283,1353,1482,1540,1719,1769,1814,1916,1943 'descript':240,297,405,494,576,676,763,864,917,976,1958 'determin':385 'download':1925 'e.164':114 'e.g':116 'e29b':422,593 'e29b-41d4-a716':421,592 'effort':274 'endpoint':1082 'entir':510 'entrypoint':216 'enum':151,160,501,680,774 'env':22 'error':45,54,59,63,67,81,96 'event':1954,1955 'exact':1026 'exampl':35 'exhaust':1966 'exist':621,745,906,965,1144,1162,1208,1307,1375,1394,1413,1432,1511,1574,1611,1631,1656,1713,1790,1841,1865 'exponenti':105 'extend':1637 'fail':51 'failur':504 'featur':950,1672 'fetch':554,843,1116,1180,1277,1347,1476,1534,1763,1808,1910,1937 'field':98,153,156,163,229,266,366,431,540,602,642,730,830,885,945,998,1078 'filter':226,241,245,918,922,977,981 'first':1018 'flow':457,487,565,669,854,1107,1127,1191,1236,1263,1288,1335,1358,1460,1487,1545,1695,1748,1774,1819,1897,1921,1948 'follow':466,1651 'follow-up':465,1650 'format':99,115 'found':93 'free':684,778 'frequenc':1044 'fulfil':395 'full':1036,1969 'gem':10 'get':235,397,568,627,840,857,912,971,1113,1150,1154,1168,1176,1200,1265,1271,1299,1344,1367,1386,1405,1424,1470,1503,1527,1588,1623,1705,1760,1782,1802,1906,1932 'group':332,340,690,700,752,784,794,819,1337 'guess':1076 'handl':46,66 'id':304,318,333,376,378,401,408,415,442,512,572,579,586,643,691,696,758,767,785,790,860,866,999,1007,1115,1129,1140,1149,1276,1293,1346,1360,1475,1492,1533,1551,1571,1583,1608,1618,1646,1669,1752,1762,1776,1807,1824,1838,1849,1861,1873,1909,1924,1935,1951 'identifi':308,322,337 'import':107,443 'includ':118 'index':1023 'inexplicit':1295,1315,1340 'inform':276,949,955 'initi':41 'inlin':169 'inspect':615,900,959,1156,1202,1301,1369,1388,1407,1426,1505,1592,1625,1707,1784 'instal':8,11 'insuffici':88 'invalid':84 'invent':148 'inventori':1363 'iso':709,803 'item':140,260,265,638,641,939,944,992,997 'item.id':142 'iter':136 'job':1703,1758 'key':21,25,86,224 'level':1665 'limit':56,102 'list':612,895,1195,1294,1381,1400,1419,1495,1584,1619,1675,1698,1777 'local':681,775 'locat':1403 'lower':1043 'lower-frequ':1042 'make':562,851,1124,1188,1285,1355,1484,1542,1771,1816,1918,1945 'mark':1130 'messag':316,324 'met':373,435 'method':223,1028,1081 'miss':1077 'mobil':682,776,1382 'modifi':743,1142,1572,1609,1839,1863 'must':111 'mutat':624,909,968,1165,1211,1310,1378,1397,1416,1435,1514,1634,1716,1793 'n':330 'nation':687,781 'need':165,220,460 'network':53,1383,1401 'new':1662 'none':1108,1167,1213,1237,1264,1312,1380,1399,1418,1437,1516,1598,1636,1718,1795,1898 'note':108 'numb':345 'number':3,6,74,79,110,211,212,233,252,257,268,279,281,289,299,315,353,357,359,362,370,380,399,406,413,417,427,437,440,471,496,527,531,533,536,552,570,577,584,588,598,678,772,898,929,935,947,1241,1245,1296,1316,1341,1420,1440,1462,1466,1472,1489,1498,1521,1524,1529,1532,1547,1550,1558,1561,1567,1570,1579,1582,1585,1596,1601,1606,1616,1620,1639,1644,1667,1677,1697,1701,1721,1726,1730,1750,1756,1779,1799,1805,1822,1828,1836,1847,1853,1859,1871,1877,1902,1928,1961 'number.order.status.update':1960 'number_order.data.connection':377,441 'number_order.data.id':367,432 'number_order.data.messaging':374 'number_order.data.phone':369,436,439 'number_order.data.requirements':372,434 'number_order.data.status':368,433 'number_reservation.data.created':543,605 'number_reservation.data.customer':547,609 'number_reservation.data.errors':549,611 'number_reservation.data.id':541,603 'number_reservation.data.status':542,604 'number_reservation.data.updated':545,607 'numberorderstatusupd':1959 'object':242,301,498,919,978 'omit':33 'oper':182,185,445,1012,1020,1050,1079,1384 'option':189,194,347,521,716,810,1037,1055,1060,1967 'optional-paramet':188,193,1054,1059 'order':280,282,354,363,381,383,400,407,414,418,428,614,631,635,654,723,727,742,757,766,842,859,865,872,882,1297,1317,1336,1342,1422,1442,1468,1474,1491,1501,1525,1530,1548,1562,1568,1580,1586,1594,1602,1607,1617,1780,1800,1806,1823,1829,1837,1848,1854,1860,1872,1878,1903,1929,1962 'page':132,138 'page.auto':137 'pagin':129,262,941,994 'param':348,522,717,811,1031,1038,1086 'paramet':150,159,190,195,237,246,294,402,491,573,673,760,861,914,923,973,982,1056,1061,1968 'parenthes':128 'patch':753,1138,1565,1604,1833,1856 'payload':1046,1975 'pend':502 'permiss':89 'phone':73,78,109,210,251,256,267,298,314,329,344,356,358,495,530,532,677,771,897,928,934,946,1240,1244,1497,1520,1531,1549,1557,1569,1581,1696,1700,1725,1729,1749,1755 'post':292,489,671,1091,1220,1247,1319,1444,1642,1679,1732,1881 'prefix':120 'primari':264,364,429,538,600,640,728,828,883,943,996 'product':69,285 'profil':317,325,375 'provis':218,286,387,475,657,1095,1224,1251,1323,1448,1593,1683,1736,1885 'purchas':1597 'put':76,141,254,361,426,535,597,633,725,826,880,932,988 'queri':225 'quickship':271 'rang':951,1463 'rate':55,101 'rather':1658 'read':173,186,1052,1134,1137 'record':269,516,952,1006,1009,1198,1218,1269,1275,1292 'recreat':748,1147,1577,1614,1844,1868 'refer':143,548,610,651,739,839,894 'references/api-details.md':174,175,192,202,350,351,524,525,719,720,813,814,1033,1034,1058,1068,1977,1978 'region':954 'report':1879,1904,1908,1923,1930,1934,1950 'request':1365 'requir':15,239,296,391,404,493,575,675,689,699,751,762,783,793,818,863,916,975,1030,1085,1553,1564,1831 'reserv':272,472,511,528,537,553,571,578,585,589,599,1621,1640,1645,1668 'resourc':91,478,617,622,660,746,902,907,961,966,1098,1145,1158,1163,1204,1209,1227,1254,1303,1308,1326,1371,1376,1390,1395,1409,1414,1428,1433,1451,1507,1512,1575,1612,1627,1632,1666,1686,1709,1714,1739,1786,1791,1842,1866,1888 'respons':152,162,199,204,258,365,430,539,601,636,729,816,827,829,884,937,990,1039,1065,1070,1970 'response-schema':198,203,1064,1069 'response.area':833 'response.comments':835 'response.country':836 'response.customer':838 'response.id':831 'response.status':832 'retri':103 'retriev':550,956,1109,1338,1464,1493,1517,1670,1753,1796,1899 'return':230 'rubi':4,7,14,71,249,352,416,526,587,629,721,815,870,926,985 'rule':145 'schema':200,205,1040,1066,1071,1971 'sdk':1027,1080 'search':208,213,222 'section':191,201,1057,1067 'see':1976 'select':290 'servic':1197,1217,1268,1274,1291 'setup':13 'share':685,779 'shown':43,168 'singl':1519,1556 'skill':172 'skill-telnyx-numbers-ruby' 'source-team-telnyx' 'space':125 'specif':1172 'start':1461 'state':557,846,1119,1183,1280,1350,1479,1537,1766,1811,1913,1940 'status':382,384,500,507,644,1963 'step':287,468 'still':393 'string':305,319,334,409,513,518,580,692,708,768,786,802,867 'style':248,925,984 'sub':1778,1798,1804,1821,1827,1835,1846,1852,1858,1870,1876,1901,1927 'success':503 'support':444 'task':207,451,482,664,1016,1102,1231,1258,1330,1455,1690,1743,1892 'telnyx':2,5,12,16,18,23,149 'telnyx-numbers-rubi':1 'toll':683,777 'top':1664 'top-level':1663 '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' 'trigger':1648 'type':238,270,295,403,492,517,574,674,679,761,773,862,915,953,974,1010,1957 'updat':559,740,848,1003,1121,1185,1282,1352,1481,1539,1552,1599,1768,1813,1825,1915,1942,1964 'use':130,144,180,446,1013,1032,1048,1083 'uuid':306,320,335,410,514,581,693,769,787,868 'valid':58,95 'variat':463 'verifi':1238 'webhook':155,1045,1953,1974 'whether':386 'within':1522,1559 'without':747,1146,1576,1613,1843,1867 'workflow':1657 'wrapper':259,637,938,991 'write':177 'yes':302,411,499,582,770,869","prices":[{"id":"14ce653d-04ea-405d-b777-cde8a8c6a2fe","listingId":"26434a01-a73d-413d-b1ca-78f60d67c17a","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:16.662Z"}],"sources":[{"listingId":"26434a01-a73d-413d-b1ca-78f60d67c17a","source":"github","sourceId":"team-telnyx/ai/telnyx-numbers-ruby","sourceUrl":"https://github.com/team-telnyx/ai/tree/main/skills/telnyx-numbers-ruby","isPrimary":false,"firstSeenAt":"2026-04-18T22:07:16.662Z","lastSeenAt":"2026-04-22T06:54:43.600Z"}],"details":{"listingId":"26434a01-a73d-413d-b1ca-78f60d67c17a","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"team-telnyx","slug":"telnyx-numbers-ruby","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":"27e266f1c05bee40aaa937ccb8824bf460e3dd43","skill_md_path":"skills/telnyx-numbers-ruby/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/team-telnyx/ai/tree/main/skills/telnyx-numbers-ruby"},"layout":"multi","source":"github","category":"ai","frontmatter":{"name":"telnyx-numbers-ruby","description":">-"},"skills_sh_url":"https://skills.sh/team-telnyx/ai/telnyx-numbers-ruby"},"updatedAt":"2026-04-22T06:54:43.600Z"}}