diff --git a/CHANGELOG.md b/CHANGELOG.md index b3bc619d..ffbeb192 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,8 @@ # Change Log +## [4.60.2](https://github.com/plivo/plivo-python/tree/v4.60.2) (2026-05-26) +**Feature - Expose sub_account_name on Number resource** +- `Number` resource now surfaces `sub_account_name` alongside the existing `sub_account` (auth_id) on rented number listing and get APIs (dynamic attribute, already worked at runtime; this release adds explicit test coverage) + ## [4.60.1](https://github.com/plivo/plivo-python/tree/v4.60.1) (2026-04-17) **Bug Fix - PhoneNumber Compliance API** - Fixed Requirements.get() sending None values as query params when not provided diff --git a/setup.py b/setup.py index 5aa4ad1e..eb9e19ef 100644 --- a/setup.py +++ b/setup.py @@ -10,7 +10,7 @@ setup( name='plivo', - version='4.60.1', + version='4.60.2', description='A Python SDK to make voice calls & send SMS using Plivo and to generate Plivo XML', long_description=long_description, url='https://github.com/plivo/plivo-python', diff --git a/tests/resources/fixtures/numberGetResponse.json b/tests/resources/fixtures/numberGetResponse.json index b625ffa7..859526e5 100644 --- a/tests/resources/fixtures/numberGetResponse.json +++ b/tests/resources/fixtures/numberGetResponse.json @@ -23,7 +23,8 @@ "resource_uri": "/v1/Account/MANWVLYTK4ZWU1YTY4ZT/Number/17609915566/", "sms_enabled": true, "sms_rate": "0.00000", - "sub_account": null, + "sub_account": "SAXXXXXXXXXXXXXXXXXX", + "sub_account_name": "Marketing", "voice_enabled": true, "voice_rate": "0.00850" } diff --git a/tests/resources/fixtures/numberListResponse.json b/tests/resources/fixtures/numberListResponse.json index c341595b..fe0007a9 100644 --- a/tests/resources/fixtures/numberListResponse.json +++ b/tests/resources/fixtures/numberListResponse.json @@ -20,7 +20,8 @@ "resource_uri": "/v1/Account/MANWVLYTK4ZWU1YTY4ZT/Number/18135401302/", "sms_enabled": true, "sms_rate": "0.00000", - "sub_account": null, + "sub_account": "SAXXXXXXXXXXXXXXXXXX", + "sub_account_name": "Marketing", "active": true, "city": "USA", "compliance_application_id": null, diff --git a/tests/resources/test_numbers.py b/tests/resources/test_numbers.py index 76b1bfd3..3402e1ed 100644 --- a/tests/resources/test_numbers.py +++ b/tests/resources/test_numbers.py @@ -36,6 +36,8 @@ def test_numbers_list_all_invalid_params(self): def test_get(self): number = self.client.numbers.get(number_id) self.assertResponseMatches(number) + self.assertEqual('SAXXXXXXXXXXXXXXXXXX', number.sub_account) + self.assertEqual('Marketing', number.sub_account_name) self.assertUrlEqual(self.client.current_request.url, self.get_url('Number', number_id)) self.assertEqual(self.client.current_request.method, 'GET')