API Versioning in Skuid¶
Beginning with Spark, major releases of Skuid may feature a new API version in addition to supporting previous APIs.
Note
What do we mean when we say “API version”? We mean a new version of the code underlying the Composer, the components, and the runtime experience. The API version is page-focused; meaning that the API version determines the tools available for building and running a Skuid page. The API version includes Skuid’s JavaScript API, used for extending Skuid with custom code and writing custom components.
Spark provides two API versions: API version 1 and API version 2.
API version 1 corresponds to the API used by Millau (the previous major release of Skuid). API version 1 supports some of the new product features of Spark:
- App and Page Templates (the apps and pages built with API version 1 components and themes)
- New actions in the Action Framework
- Compatibility with Private Data Service.
API version 2 corresponds to the API used by Spark’s new features:
- App and Page Templates (the apps and pages built with API version 2 components and themes)
- Ink component pack
- Design System Studio.
How do I use Skuid’s API versions?¶
API versions are applied at the page level. When you create a Skuid page, you select the API version the page will use. Major features are typically made available to newer API versions, while basic functionality and stability updates may be applied to earlier API versions. This ensures greater stability when users upgrade—their pages should not break due to an unexpected feature or backend change. Skuid builders may recreate their pages with the latest API version according to their own plan or guidelines for page updates.
Can I use API v1 components on an API v2 page? Can I use API v2 components on an API v1 page?¶
No. The API version selected at page creation determines the features available to the page, and you may only use the components associated with a page’s API version.
Also:
- The API version of principal/dependent pages must match for the pages to work.
- The API version of a host page must match the API version of the Page Include component calling that page (v2 Page Includes should only call v2 pages, and v1 Page Includes should only call v1 pages).
- When building Lightning pages in Salesforce’s Lightning App Builder, the API versions of your Skuid pages must match. If one Skuid Page Lightning component displays an API v2 page, all other Skuid Page Lightning components must display v2 pages. (If using v1 pages, then all pages must be v1.) Mixing different API versions within a single Lightning page will result in unexpected behaviors.