Release Notes
June 3, 2025
Days since last major release: 28 days
Node Client
Improvements
- Open sourced the TS SDK generation code to allow for easy evaluation and inspection and to line up with Python/Java.
- Adding ability to directly execute a PolyAPI API function–bypassing the gateway–and enabling the use of MTLS for these requests.
- Updated OpenAPI specification translation service to clean up invalid or poorly formatted parameter names with dashes in them. For OAS based training.
- Failed schemas now return clear validation errors when containing invalid exclusiveMinimum definitions in nested structures. For OAS based training.
- Improved OpenAPI specification translation to follow $refs for parameters, request bodies, and responses.
Bug Fixes
- Fixed a bug where the SDK for poly.OOB.polyapi.v2.apiFunctions.publicVisibility.list was incorrect due to not handling the results array in the response data.
- Fixed bug where object type attributes with non-alphanumeric names (ex. ‘@nexLink’) were not being generated correctly–causing type errors.
Python Client
Improvements
- Added ability to directly execute a PolyAPI API function–bypassing the gateway–and enabling the use of MTLS for these requests.
- Adding ability to return custom response headers using the polyCustom[‘responseHeaders’] dict.
- Adding support for calling asynchronous server functions and generating the correct return type.
- Updated to support a generateContexts argument which speeds up wakeup times for Server Functions by generating a more limited SDK.
Bug Fixes
- Fixed bug where argument descriptions with newlines were causing issues when generating the SDK.
- Fixed bug where arguments with a value of ‘None’ were not being submitted when executing a function.
- Added a fallback when generating SDK for server functions which lack a return type.
- Fixed bug where execution_id in polyCustom dict could be overwritten.
- Fixed bug where response types of API functions were generated as Any instead of their more specific type.
Java Client
Bug Fixes
- Fixed SDK to safely parse function arguments.
- Fixed SDK to safely handle functions and schemas with duplicate names.
- Fixed bug that sometimes prevented users from deploying new server functions.
- Fixed bug where redeploying a Java function would sometimes fail.
- Fixed bug where original Java code of Server and Client functions was not shown in Canopy.
Gateway and Function Runtime
Improvements
- Improved server function startup time by removing type generation from the server function runtime.
- Improved gateway to more safely handle jobs whose target functions are deleted.
Bug Fixes
- Fixed the way logs are parsed for Python functions so no logs are missed.
- Fixed bug where API functions returning XML payloads were returning truncated XML.
- Fixed a bug where ‘request completed’ system log statement was showing before the last user defined log statement.
- Fixed an issue where removeInNotPresentOnExecute arguments were not set properly when the value was undefined.
Canopy Service and Management APIs
Improvements
- Refactored Variables to support secrecy: None (visible to everyone), Obscured (not visible but can be obtained at runtime), and Secret (cannot be viewed and can only injected at runtime).
- Updated server and client function collections in the UI to allow for searching by context and name, as well as filtering by visibility
- Added ability to reference PolyAPI Schemas in Webhooks.
- Added support for public OOB client functions in the PolyAPI management UI.
- Adding ability to replicate Client Functions, Server Functions, and Snippets using the PolyAPI UI or via the API directly.
- Updated webhook POST to strictly create and return an error if a webhook with the same name and context already exists.
- Added error response “A WebhookHandle with name and context is already registered.” when creating a webhook with a duplicate name and context.
- Adjusted triggers to only allow creating a single trigger per webhook to avoid race conditions and accidental miss configurations.
- Added a check to ensure that a client function and server function with the same context name are not deployed.
- Implemented new UX designs for form field errors in the Poly Management UI
- Adding ability to infer a canopy collections’s properties using the return type of the collection’s “get” function when using `”propertyMode“: “auto“` in the collection configuration.
- Enabled scrolling of server function selection modal within trigger and job creation experiences.
- Adding ability to designate any collection property as the ‘idProperty‘ to enable Canopy to use that property as the ID in the url and in requests.
Bug Fixes
- Removed a few attributes from the client functions get API and functions which only apply to server functions.
- Fixed a bug with generation of types for functions with destructured arguments in both TS and Python.
VS Code Extension
Improvements
- Added support for a refresh button to regenerate the library using the Tree View.
Bug Fixes
- Fixed extension to support VSCode-managed virtual environments.
Docs, Public Functions and Content
OOB Functions
- OOB Functions:
- poly.OOB.zoom.v2.phone.users.list() – lists Zoom Phone users and their details.
- poly.OOB.zoom.v2.phone.users.update() – updates settings for a specific Zoom Phone user.
- poly.OOB.zoom.v2.users.update() – updates general Zoom user settings.
- poly.OOB.zoom.v2.phone.users.callHistory.delete() – deletes call history entries for a Zoom Phone user.
- poly.OOB.zoom.v2.phone.users.callHistory.list() – lists call history records for a Zoom Phone user.
- Deprecated: poly.OOB.zoom.phone.callLogs.delete() – previously used to delete a user’s call log entry (now replaced by poly.OOB.zoom.v2.phone.users.callHistory.delete()).
- Deprecated: poly.OOB.zoom.phone.callLogs.list() – previously used to list a user’s call history (now replaced by poly.OOB.zoom.v2.phone.users.callHistory.list()).
- poly.OOB.ohip.housekeeping.roomStatus.update() – updates the housekeeping room status in Opera Cloud.
- All OOB functions now include state and owner metadata for better visibility and governance.
- Added the full OpenAI OpenAPI spec as out-of-the-box functions, including support for /chat/completions, /completions, /models, /files, and other key endpoints.
- Added the full Stripe OpenAPI spec, making all documented endpoints available as out-of-the-box functions, including Customers, Charges, Payment Intents, Webhooks, and more.
Helpful Links
- Added helpful links for our github actions in Poly Management UI and VS Code extension.
- Updated helpful link for Community from Discord to Slack