In Release 18, we unveiled the first iteration of our V2 APIs. These are currently accessible by including an x-poly-api-version header with the value 2. Over time, this API will expand to cover additional endpoints, and we’ll initiate a gradual deprecation of our V1 APIs. This transition will be carefully managed to ensure a smooth experience for all users.
Since our SDKs are generated directly from our APIs, we’ll also release a new set of V2 functions to replace the existing V1-based functions.
Why V2 APIs?
We identified several key areas for improvement at both the API and UI levels, leading to the introduction of V2 APIs:
- Typeahead Search Support
- Much like Intellisense in an IDE, we’re introducing typeahead search for easier and faster function discovery and filtering within our UI.
- Improved Performance via Pagination
- With our public function catalog currently at approximately 1,000 functions, and rapid advancements in bulk training, we anticipate reaching over 10,000 functions in the near future. Pagination ensures optimal performance and scalability as the catalog grows.
- Refactored Visibility Structure
- Our current visibility levels (ENVIRONMENT, TENANT, PUBLIC) have grown organically. To accommodate future expansions (e.g., INDIVIDUAL, INSTANCE, TEAM), we’re simplifying visibility to be a filter on a unified function set. This streamlines lookups and ensures sustainability as more visibility levels are introduced.
- Enhanced Filtering Capabilities
- We’re building a model to allow for additional filters, such as createdBy and lifecycleState, providing more granular control and usability.
- Rich Metadata for Better UI Representation
- Adding metadata, such as total results and pages, enables the UI to deliver a more informative and user-friendly experience.
During this process, we successfully validated our context path approach for function versioning (e.g., poly.OOB.polyapi.v2.foo). This lays the foundation for better lifecycle management, including:
- Deprecating outdated functions.
- Designating new functions as beta, deprecated, etc…
- Designate new functions that supersede deprecated functions
These enhancements are part of the Function Lifecycle Management feature, planned for Q1 2025. Explore our roadmap to learn more.
Want to try the new APIs?
Sign up for free and use GET /functions/api with the x-poly-api-version header set to 2.
Have questions about our roadmap or platform? We’d love to hear from you! Reach out to us at hello@polyapi.io,fill out a contact form or book an intro meeting.