tag:github.com,2008:https://github.com/WebexCommunity/WebexPythonSDK/releases Release notes from WebexPythonSDK 2025-08-15T20:30:22Z tag:github.com,2008:Repository/63186293/v2.0.5 2025-08-15T21:23:19Z Docs, Tests, Bug fixes <h2>v2.0.5 - Docs, Tests, Bug fixes</h2> <h3>What's Fixed</h3> <ul> <li>Fixed critical bug where malformed Retry-After headers from Webex API caused application crashes</li> <li>Applications now handle rate limit responses gracefully, even with unexpected header values</li> <li>Added comprehensive error handling for malformed API responses</li> <li><code>max</code> parameter in the <code>list_messages()</code> function</li> <li>Contributor docs updated to reflect better local testing instructions</li> </ul> <h3>Impact</h3> <ul> <li>Eliminates unexpected crashes during rate limit situations</li> <li>Improves application stability and user experience</li> <li>Maintains backward compatibility</li> <li><strong>Always preserve critical parameters</strong>: Parameters like <code>max</code>, <code>roomId</code>, <code>parentId</code>, <code>mentionedPeople</code>, <code>before</code>, and <code>beforeMessage</code> are always preserved with their original values</li> <li><strong>Consistent pagination</strong>: Ensures the <code>max</code> parameter maintains consistent page sizes across all pagination requests</li> </ul> <h3>Technical Details</h3> <ul> <li>Enhanced RateLimitError constructor with robust error handling</li> <li>Added graceful fallback to 15-second retry intervals for malformed headers</li> <li>Comprehensive test coverage to prevent future regressions</li> <li><code>list_messages(roomId="123", max=10)</code> will consistently return pages of 10 messages</li> <li><code>list_rooms(max=5)</code> will consistently return pages of 5 rooms</li> <li>All other list methods will maintain consistent page sizes</li> </ul> Joezanini tag:github.com,2008:Repository/63186293/v2.0.4 2025-01-22T17:10:40Z v2.0.4 <h2>What's Changed</h2> <ul> <li>fix(utils): only verify netloc if scheme isn't data by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/adamweeks/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/adamweeks">@adamweeks</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2796212414" data-permission-text="Title is private" data-url="https://github.com/WebexCommunity/WebexPythonSDK/issues/250" data-hovercard-type="pull_request" data-hovercard-url="/WebexCommunity/WebexPythonSDK/pull/250/hovercard" href="https://github.com/WebexCommunity/WebexPythonSDK/pull/250">#250</a></li> </ul> <p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/WebexCommunity/WebexPythonSDK/compare/v2.0.3...v2.0.4"><tt>v2.0.3...v2.0.4</tt></a></p> adamweeks tag:github.com,2008:Repository/63186293/v2.0.3 2025-01-11T00:37:34Z v2.0.3 <p>Remove backslash from f-string (Patch for Issue: <a class="issue-link js-issue-link" href="https://github.com/WebexCommunity/WebexPythonSDK/issues/247">#247</a>) (<a class="issue-link js-issue-link" href="https://github.com/WebexCommunity/WebexPythonSDK/pull/248">#248</a>)</p> <p>Remove backslash from f-string to maintain backward compatibility with <br />Python 3.10 and 3.11 versions.</p> <p>Also, corrected little (very minor non-impacting) cosmetic issues.</p> <p>Patch for Issue: <a class="issue-link js-issue-link" href="https://github.com/WebexCommunity/WebexPythonSDK/issues/247">#247</a></p> Joezanini tag:github.com,2008:Repository/63186293/v2.0.2 2024-12-16T18:27:53Z v2.0.2 <h1>Webex Python SDK Release</h1> <p>We are excited to announce the latest release of the Webex Python SDK, which includes several enhancements and updates to improve functionality and compatibility. Below are the key changes introduced in this release:</p> <h2>Enhancements to Room Class and Rooms API</h2> <p><strong>Additional Properties</strong>: The Room class has been enhanced with new properties to provide more detailed information and capabilities. These properties include:</p> <ul> <li>classificationId</li> <li>isAnnouncementOnly</li> <li>isReadOnly</li> <li>isPublic</li> <li>madePublic</li> <li>description</li> </ul> <p><strong>API Argument Fix</strong>: Corrected missing arguments in the rooms API to ensure proper functionality. This includes adding the necessary create room arguments to the post_data method.</p> <h2>Migration to Adaptive Card Version 1.3</h2> <p><strong>Version Upgrade</strong>: The SDK has been upgraded from Adaptive Card 1.1 to 1.3. This includes a restructuring of code files to align with Adaptive Card's official documentation, ensuring compatibility and taking advantage of the latest features.</p> <p>For more detailed information, please refer to the <a href="https://adaptivecards.io/explorer/" rel="nofollow">official Adaptive Cards documentation</a>.<br> We encourage you to update to this latest version to benefit from these improvements. As always, your feedback is invaluable to us. Thank you for using the Webex Python SDK!</p> Joezanini tag:github.com,2008:Repository/63186293/v2.0.1 2024-08-08T17:21:35Z WebexPythonSDK 2.0 Documentation <p>Documentation for the newly named package <code>webexpythonsdk</code> is now hosted on github pages at <a href="https://webexcommunity.github.io/WebexPythonSDK/" rel="nofollow">https://webexcommunity.github.io/WebexPythonSDK/</a></p> <h2>What's Changed</h2> <ul> <li>chore(docs): use rtd theme by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/adamweeks/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/adamweeks">@adamweeks</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2454306830" data-permission-text="Title is private" data-url="https://github.com/WebexCommunity/WebexPythonSDK/issues/238" data-hovercard-type="pull_request" data-hovercard-url="/WebexCommunity/WebexPythonSDK/pull/238/hovercard" href="https://github.com/WebexCommunity/WebexPythonSDK/pull/238">#238</a></li> <li>docs: update to gh-pages links by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/adamweeks/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/adamweeks">@adamweeks</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2454375895" data-permission-text="Title is private" data-url="https://github.com/WebexCommunity/WebexPythonSDK/issues/239" data-hovercard-type="pull_request" data-hovercard-url="/WebexCommunity/WebexPythonSDK/pull/239/hovercard" href="https://github.com/WebexCommunity/WebexPythonSDK/pull/239">#239</a></li> </ul> <p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/WebexCommunity/WebexPythonSDK/compare/v2.0.0...v2.0.1"><tt>v2.0.0...v2.0.1</tt></a></p> adamweeks tag:github.com,2008:Repository/63186293/v2.0.0 2024-08-03T02:05:56Z webexpythonsdk v2.0.0 Now Released! <p>Welcome to the new <em><strong><code>webexpythonsdk</code></strong></em> library! The latest release removes support for Python v2 and is compatible with Python v3.10+. The new Webex Python SDK replaces the previous <code>webexteamssdk</code>; and with the exception of the Python version support and the name change, the two libraries are functionally equivalent. The new library is the recommended choice for new projects, and <code>webexteamssdk</code> users are encouraged to migrate.</p> cmlccie tag:github.com,2008:Repository/63186293/v1.7 2024-06-14T21:22:28Z v1.7 <p>Update release.yml</p> Joezanini tag:github.com,2008:Repository/63186293/v1.6.1 2022-06-07T15:59:21Z Hotfix <p>This release is a hotfix that merges Pull request <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1254277516" data-permission-text="Title is private" data-url="https://github.com/WebexCommunity/WebexPythonSDK/issues/175" data-hovercard-type="pull_request" data-hovercard-url="/WebexCommunity/WebexPythonSDK/pull/175/hovercard" href="https://github.com/WebexCommunity/WebexPythonSDK/pull/175">#175</a> into the main branch.</p> <h2>What's Changed</h2> <ul> <li>Fix for <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="772023918" data-permission-text="Title is private" data-url="https://github.com/WebexCommunity/WebexPythonSDK/issues/147" data-hovercard-type="issue" data-hovercard-url="/WebexCommunity/WebexPythonSDK/issues/147/hovercard" href="https://github.com/WebexCommunity/WebexPythonSDK/issues/147">#147</a> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/fbradyirl/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/fbradyirl">@fbradyirl</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="841821381" data-permission-text="Title is private" data-url="https://github.com/WebexCommunity/WebexPythonSDK/issues/157" data-hovercard-type="pull_request" data-hovercard-url="/WebexCommunity/WebexPythonSDK/pull/157/hovercard" href="https://github.com/WebexCommunity/WebexPythonSDK/pull/157">#157</a></li> <li>Bump pygments from 2.6.1 to 2.7.4 by <a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="843559460" data-permission-text="Title is private" data-url="https://github.com/WebexCommunity/WebexPythonSDK/issues/158" data-hovercard-type="pull_request" data-hovercard-url="/WebexCommunity/WebexPythonSDK/pull/158/hovercard" href="https://github.com/WebexCommunity/WebexPythonSDK/pull/158">#158</a></li> <li>Fix type check in <code>update</code> by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mallamanis/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mallamanis">@mallamanis</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="789938476" data-permission-text="Title is private" data-url="https://github.com/WebexCommunity/WebexPythonSDK/issues/150" data-hovercard-type="pull_request" data-hovercard-url="/WebexCommunity/WebexPythonSDK/pull/150/hovercard" href="https://github.com/WebexCommunity/WebexPythonSDK/pull/150">#150</a></li> <li>Added option to disable ssl cert verification by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sQu4rks/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sQu4rks">@sQu4rks</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="730382074" data-permission-text="Title is private" data-url="https://github.com/WebexCommunity/WebexPythonSDK/issues/142" data-hovercard-type="pull_request" data-hovercard-url="/WebexCommunity/WebexPythonSDK/pull/142/hovercard" href="https://github.com/WebexCommunity/WebexPythonSDK/pull/142">#142</a></li> <li>Update Cards Handling to check correct attribute for instance of AdaptiveCards (solves <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="728330689" data-permission-text="Title is private" data-url="https://github.com/WebexCommunity/WebexPythonSDK/issues/140" data-hovercard-type="issue" data-hovercard-url="/WebexCommunity/WebexPythonSDK/issues/140/hovercard" href="https://github.com/WebexCommunity/WebexPythonSDK/issues/140">#140</a>) by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/sQu4rks/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/sQu4rks">@sQu4rks</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="730368913" data-permission-text="Title is private" data-url="https://github.com/WebexCommunity/WebexPythonSDK/issues/141" data-hovercard-type="pull_request" data-hovercard-url="/WebexCommunity/WebexPythonSDK/pull/141/hovercard" href="https://github.com/WebexCommunity/WebexPythonSDK/pull/141">#141</a></li> <li>fixing OpenUrl action by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/craigers521/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/craigers521">@craigers521</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1254277516" data-permission-text="Title is private" data-url="https://github.com/WebexCommunity/WebexPythonSDK/issues/175" data-hovercard-type="pull_request" data-hovercard-url="/WebexCommunity/WebexPythonSDK/pull/175/hovercard" href="https://github.com/WebexCommunity/WebexPythonSDK/pull/175">#175</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/fbradyirl/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/fbradyirl">@fbradyirl</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="841821381" data-permission-text="Title is private" data-url="https://github.com/WebexCommunity/WebexPythonSDK/issues/157" data-hovercard-type="pull_request" data-hovercard-url="/WebexCommunity/WebexPythonSDK/pull/157/hovercard" href="https://github.com/WebexCommunity/WebexPythonSDK/pull/157">#157</a></li> <li><a class="user-mention notranslate" data-hovercard-type="organization" data-hovercard-url="/orgs/dependabot/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/dependabot">@dependabot</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="843559460" data-permission-text="Title is private" data-url="https://github.com/WebexCommunity/WebexPythonSDK/issues/158" data-hovercard-type="pull_request" data-hovercard-url="/WebexCommunity/WebexPythonSDK/pull/158/hovercard" href="https://github.com/WebexCommunity/WebexPythonSDK/pull/158">#158</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mallamanis/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mallamanis">@mallamanis</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="789938476" data-permission-text="Title is private" data-url="https://github.com/WebexCommunity/WebexPythonSDK/issues/150" data-hovercard-type="pull_request" data-hovercard-url="/WebexCommunity/WebexPythonSDK/pull/150/hovercard" href="https://github.com/WebexCommunity/WebexPythonSDK/pull/150">#150</a></li> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/craigers521/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/craigers521">@craigers521</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1254277516" data-permission-text="Title is private" data-url="https://github.com/WebexCommunity/WebexPythonSDK/issues/175" data-hovercard-type="pull_request" data-hovercard-url="/WebexCommunity/WebexPythonSDK/pull/175/hovercard" href="https://github.com/WebexCommunity/WebexPythonSDK/pull/175">#175</a></li> </ul> <p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/WebexCommunity/WebexPythonSDK/compare/v1.6...v1.6.1"><tt>v1.6...v1.6.1</tt></a></p> sQu4rks tag:github.com,2008:Repository/63186293/v1.6 2020-07-13T15:23:47Z The Catch-Up Release <p>In v1.6, we have updated all of the currently wrapped and supported Webex Teams API endpoints and closed out all existing issues that users opened on the v1.x releases. The library should now be up-to-date in supporting the Webex Teams APIs documented at developer.webex.com. It <em><strong>is not</strong></em> yet up-to-date in supporting the newer and broader Webex Meetings, Calling, and Devices APIs. We are tracking adding these additional API endpoints in issue <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="627480410" data-permission-text="Title is private" data-url="https://github.com/WebexCommunity/WebexPythonSDK/issues/113" data-hovercard-type="issue" data-hovercard-url="/WebexCommunity/WebexPythonSDK/issues/113/hovercard" href="https://github.com/WebexCommunity/WebexPythonSDK/issues/113">#113</a>, and we will work to add full support for all of the published Webex APIs in v2.x of the library.</p> <p>With release v1.6, we are wrapping up active development on the v1.x release and shifting our focus to the next major release v2!</p> <h2>Breaking Change(s)</h2> <p>We have introduced <strong>one (1)</strong> breaking change in v1.6:</p> <ul> <li> <p>We have changed the function signature (parameter names) for the <code>WebexTeamsAPI.guest_issuer.create()</code> method to align it with the developer documentation at developer.webex.com.</p> <p>Previous method definition:</p> <div class="highlight highlight-source-python notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="def create(self, subject, displayName, issuerToken, expiration, secret): ..."><pre><span class="pl-k">def</span> <span class="pl-en">create</span>(<span class="pl-s1">self</span>, <span class="pl-s1">subject</span>, <span class="pl-s1">displayName</span>, <span class="pl-s1">issuerToken</span>, <span class="pl-s1">expiration</span>, <span class="pl-s1">secret</span>): ...</pre></div> <div class="highlight highlight-source-python notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="def create(self, sub, name, iss, exp, secret): ..."><pre><span class="pl-k">def</span> <span class="pl-en">create</span>(<span class="pl-s1">self</span>, <span class="pl-s1">sub</span>, <span class="pl-s1">name</span>, <span class="pl-s1">iss</span>, <span class="pl-s1">exp</span>, <span class="pl-s1">secret</span>): ...</pre></div> </li> </ul> cmlccie tag:github.com,2008:Repository/63186293/v1.5 2020-07-09T19:00:59Z Accessible Webex Tracking IDs & Custom User-Agent Header <p>Version 1.5 adds several minor backend improvements, including:</p> <ul> <li> <p>Webex Tracking IDs are now prominently displayed for all API errors and warnings.</p> <p><strong>Example Error Message:</strong></p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="ApiError: [401] Unauthorized - The request requires a valid access token set in the Authorization request header. [Tracking ID: ROUTER_5F05F384-D9E9-01BB-00FF-4B0C804F00FF]"><pre class="notranslate"><code>ApiError: [401] Unauthorized - The request requires a valid access token set in the Authorization request header. [Tracking ID: ROUTER_5F05F384-D9E9-01BB-00FF-4B0C804F00FF] </code></pre></div> <p>You can also access the Tracking IDs via the <code>tracking_id</code> attribute available on the raised exception and warning objects.</p> <div class="highlight highlight-source-python notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="api = webexteamssdk.WebexTeamsAPI(access_token=&quot;abc&quot;) try: api.people.me() except webexteamssdk.ApiError as e: print(e.tracking_id)"><pre><span class="pl-s1">api</span> <span class="pl-c1">=</span> <span class="pl-s1">webexteamssdk</span>.<span class="pl-c1">WebexTeamsAPI</span>(<span class="pl-s1">access_token</span><span class="pl-c1">=</span><span class="pl-s">"abc"</span>) <span class="pl-k">try</span>: <span class="pl-s1">api</span>.<span class="pl-c1">people</span>.<span class="pl-c1">me</span>() <span class="pl-k">except</span> <span class="pl-s1">webexteamssdk</span>.<span class="pl-c1">ApiError</span> <span class="pl-k">as</span> <span class="pl-s1">e</span>: <span class="pl-en">print</span>(<span class="pl-s1">e</span>.<span class="pl-c1">tracking_id</span>)</pre></div> </li> </ul> <ul> <li> <p>The webexteamssdk library now sends a custom User-Agent header (inspired by PIP's User-Agent header).</p> <p><strong>Example User-Agent Header:</strong></p> <div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="webexteamssdk/1.5 {&quot;implementation&quot;: {&quot;name&quot;: &quot;CPython&quot;, &quot;version&quot;: &quot;3.7.8&quot;}, &quot;distro&quot;: {&quot;name&quot;: &quot;macOS&quot;, &quot;version&quot;: &quot;10.15.5&quot;}, &quot;system&quot;: {&quot;name&quot;: &quot;Darwin&quot;, &quot;release&quot;: &quot;19.5.0&quot;}, &quot;cpu&quot;: &quot;x86_64&quot;}"><pre class="notranslate"><code>webexteamssdk/1.5 {"implementation": {"name": "CPython", "version": "3.7.8"}, "distro": {"name": "macOS", "version": "10.15.5"}, "system": {"name": "Darwin", "release": "19.5.0"}, "cpu": "x86_64"} </code></pre></div> </li> <li> <p>Minor package and PEP8 improvements.</p> </li> </ul> cmlccie