<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[CASE IT Solutions: The Blog]]></title><description><![CDATA[A publication about Nintex Automation K2 and process automation in general. ]]></description><link>https://blog.caseitsolutions.com</link><image><url>https://substackcdn.com/image/fetch/$s_!H_Wg!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F597da14b-102a-45c0-9d7b-1569872fcd0f_459x459.png</url><title>CASE IT Solutions: The Blog</title><link>https://blog.caseitsolutions.com</link></image><generator>Substack</generator><lastBuildDate>Fri, 01 May 2026 10:56:06 GMT</lastBuildDate><atom:link href="https://blog.caseitsolutions.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[J Scott Pitman]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[caseitsolutions@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[caseitsolutions@substack.com]]></itunes:email><itunes:name><![CDATA[J Scott Pitman]]></itunes:name></itunes:owner><itunes:author><![CDATA[J Scott Pitman]]></itunes:author><googleplay:owner><![CDATA[caseitsolutions@substack.com]]></googleplay:owner><googleplay:email><![CDATA[caseitsolutions@substack.com]]></googleplay:email><googleplay:author><![CDATA[J Scott Pitman]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[The curious case of SmartObjects and Nulls.]]></title><description><![CDATA[Is your property half empty or half null?]]></description><link>https://blog.caseitsolutions.com/p/the-curious-case-of-smartobjects</link><guid isPermaLink="false">https://blog.caseitsolutions.com/p/the-curious-case-of-smartobjects</guid><dc:creator><![CDATA[J Scott Pitman]]></dc:creator><pubDate>Thu, 05 Feb 2026 16:03:09 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!BfGW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffea68d21-0d3a-4777-b536-db277893cd29_3000x2000.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!BfGW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffea68d21-0d3a-4777-b536-db277893cd29_3000x2000.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!BfGW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffea68d21-0d3a-4777-b536-db277893cd29_3000x2000.jpeg 424w, https://substackcdn.com/image/fetch/$s_!BfGW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffea68d21-0d3a-4777-b536-db277893cd29_3000x2000.jpeg 848w, https://substackcdn.com/image/fetch/$s_!BfGW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffea68d21-0d3a-4777-b536-db277893cd29_3000x2000.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!BfGW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffea68d21-0d3a-4777-b536-db277893cd29_3000x2000.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!BfGW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffea68d21-0d3a-4777-b536-db277893cd29_3000x2000.jpeg" width="728" height="485.5" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fea68d21-0d3a-4777-b536-db277893cd29_3000x2000.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:503100,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://blog.caseitsolutions.com/i/186941834?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffea68d21-0d3a-4777-b536-db277893cd29_3000x2000.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!BfGW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffea68d21-0d3a-4777-b536-db277893cd29_3000x2000.jpeg 424w, https://substackcdn.com/image/fetch/$s_!BfGW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffea68d21-0d3a-4777-b536-db277893cd29_3000x2000.jpeg 848w, https://substackcdn.com/image/fetch/$s_!BfGW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffea68d21-0d3a-4777-b536-db277893cd29_3000x2000.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!BfGW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffea68d21-0d3a-4777-b536-db277893cd29_3000x2000.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>There is a little-known quirk with Nintex Automation K2 SmartObjects and how they handle null values, or rather, non-values.</p><p>I am not a computer scientist so I cannot comment on whether null should be considered a value or not, but I am intentionally framing the topic in this manner as it is that line of thinking in which null is a value that creates a very frustrating problem for the unaware.</p><p>The issue is if the service broker feeding your SmartObject, be it a REST service, MS SQL, Oracle, etc., returns a null value for a property you are evaluating in a conditional statement in a SmartForm rule, you will never receive a true if you are evaluating for &#8220;Is Empty&#8221;.</p><p>Curious Indeed.</p><p>There have been other areas in K2 SmartForms where type evaluation didn&#8217;t happen as expected. Form and view parameters, for example, can be picky about where the data type is text or number regarding how those evaluate within conditional statements. I have read Nintex Community posts on this topic, so I do know there is documentation on the web highlighting this behavior.</p><p>The null situation has caught two different customers in the last six months, so I thought I would give it some attention.</p><p>It can be a frustrating problem when the SmartForm you are developing just will not work the way you expect even though all the data you are seeing on screen says it should be. (Shout out to Rick, you know who you are.)</p><p>I&#8217;ve assumed that a null was empty, but null is null. SmartForms doesn&#8217;t have the C# equivalent of IsNullorWhiteSpace, so what is a developer to do?</p><p>In all the instances I have experienced, we were developing either custom services or stored procedures, so we were able to change the behavior instead of just returning null.</p><p>However, if you are in a situation where you do not have the ability to control return values, I can think of a few approaches you may try. I have not tried these personally, but this would be the path I would go down if I were in your situation.</p><p>The simplest approach is you might try assigning the SmartObject property as the value of a hidden data label on the view or form and then evaluate the label&#8217;s value not the SmartObject property directly.</p><p>If that fails, you could then try creating an <a href="https://help.nintex.com/en-US/k2cloud/userguide/update_18/Content/Create/Views/ControlExpressions.htm">expression </a>(the little fx at the top of the design canvas in K2 Designer), that leverages a combination of functions to attempt to validate the property and return a value that could be evaluated.</p><p>Depending on the exact scenario it may take two data labels: one to hold the SmartObject property&#8217;s value, and one to which you assign the expression to store the result. It would be that second data label that you could then use in your advanced conditions.</p><p>If all else fails, sometimes it is a good idea to just take a step back and rethink your logic. Is there a different way to evaluate logic?</p><p>I would imagine that the behavior isn&#8217;t necessarily with SmartObjects themselves, but rather how the JavaScript powering SmartForms handles the scenario as I don&#8217;t recall having this issue inside of a K2 workflow.</p><p>Hope this helps a would-be K2 developer out there that is ready to rage quit because no matter what they do that seemingly valueless SmartObject property never evaluates as &#8220;Is Empty&#8221;.</p><p>Have you hit a quirky evaluation issue before in K2 SmartForms? Have you noticed this issue? Comment and share your thoughts.</p>]]></content:encoded></item><item><title><![CDATA[K2 blackpearl Migration vs. Upgrade]]></title><description><![CDATA[What you should know before you begin.]]></description><link>https://blog.caseitsolutions.com/p/k2-blackpearl-migration-vs-upgrade</link><guid isPermaLink="false">https://blog.caseitsolutions.com/p/k2-blackpearl-migration-vs-upgrade</guid><dc:creator><![CDATA[J Scott Pitman]]></dc:creator><pubDate>Tue, 23 Dec 2025 18:27:38 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Qn1r!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5aac97a2-826c-40b1-8e36-e855bf7573f0_6000x4000.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Qn1r!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5aac97a2-826c-40b1-8e36-e855bf7573f0_6000x4000.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Qn1r!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5aac97a2-826c-40b1-8e36-e855bf7573f0_6000x4000.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Qn1r!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5aac97a2-826c-40b1-8e36-e855bf7573f0_6000x4000.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Qn1r!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5aac97a2-826c-40b1-8e36-e855bf7573f0_6000x4000.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Qn1r!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5aac97a2-826c-40b1-8e36-e855bf7573f0_6000x4000.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Qn1r!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5aac97a2-826c-40b1-8e36-e855bf7573f0_6000x4000.jpeg" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5aac97a2-826c-40b1-8e36-e855bf7573f0_6000x4000.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:5607097,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://blog.caseitsolutions.com/i/182444905?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5aac97a2-826c-40b1-8e36-e855bf7573f0_6000x4000.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Qn1r!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5aac97a2-826c-40b1-8e36-e855bf7573f0_6000x4000.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Qn1r!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5aac97a2-826c-40b1-8e36-e855bf7573f0_6000x4000.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Qn1r!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5aac97a2-826c-40b1-8e36-e855bf7573f0_6000x4000.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Qn1r!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5aac97a2-826c-40b1-8e36-e855bf7573f0_6000x4000.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The conversations online, along with Nintex&#8217;s increased messaging about the end-of-life of K2 blackpearl, have raised many questions. So, let&#8217;s address a few of them and bring some clarity to what is becoming a hot topic.</p><p>For some background, I have two clients who are actively involved in both the migration and upgrade processes. I say &#8220;both&#8221; because while closely related, these are two different undertakings, and it is essential to understand that distinction.</p><h2>What is a K2 blackpearl migration?</h2><p>When discussing K2 blackpearl migration, we are referring exclusively to workflows built and deployed with the desktop-based tooling, which reached the end of this year. Workflows built in the legacy tooling cannot be maintained by the newer K2 Designer, nor can they be imported.</p><p>Migration of a K2 blackpearl workflow is a migration in concept only. In practice, it is a full rebuild of the workflow. Any SmartObjects or SmartForms created as part of a K2 blackpearl solution do not need to be updated other than updating any rules to use the new replacement K2 workflow.</p><p>Additionally, any custom .NET applications that use the K2 client libraries will continue to work as before, since none of the APIs have changed, including SourceCode.Workflow.Client or SourceCode.Workflow.Management and are still fully supported for the new designer workflows, just as they were for the K2 blackpearl based ones.</p><h2>Why rebuild?</h2><p>If you are wondering why import isn&#8217;t an option, you aren&#8217;t alone. The primary difference between the two versions is the change in design tools, moving from a desktop-based experience to a web browser, and the limitations imposed by that shift.</p><p>The blackpearl lineage of tools was all XML-file-based, whereas the new tooling is RESTful &amp; database driven using JSON for workflow design artifacts.</p><p>Along with changing the tech stack, an opportunity was seized upon to apply the lessons learned from the first two generations of design tools to craft a more modern, intuitive design experience.</p><p>Design is the keyword. The changes to K2 workflows are a design-time consideration only. The K2 workflow runtime did not change. To reiterate, any tooling or custom applications created to manage or interact with K2 at runtime are still valid, with a couple of notable exceptions.</p><h2>What changed?</h2><p>With the technology shift and the refinement of the design experience, there are four changes that also fuel the need to refactor your workflows and update any associated custom applications.</p><ul><li><p>XML process data fields have been removed.</p></li><li><p>Activity data fields are no longer.</p></li><li><p>Custom code isn&#8217;t supported in design tools.</p></li><li><p>Activities and Events were replaced with Steps.</p></li></ul><p>For my customers, the removal of XML data field support in the Nintex Automation K2 designer was the most influential in driving the push to refactor. XML data fields were introduced in the early days of K2, well before SmartObjects were introduced.</p><p>At the time, XML was the only way to store or model complex data relationships in the workflow driven by the integrations with InfoPath, one of the primary UI options for a K2 solution.</p><p>Later, understanding evolved into a pattern of externalizing data through SmartObjects, making it more accessible and maintainable. The introduction of SmartForms and the slow deprecation of <a href="https://techcommunity.microsoft.com/blog/spblog/support-update-for-infopath-forms-services-in-microsoft-365/3858190">InfoPath</a> further lessened the practicality of XML as a data storage medium.</p><p>Activity data fields have also been deprecated in favor of greater use of process-level variables. It is my understanding that this was done primarily to simplify the design experience. It helps to remember that at one point, the messaging from Gartner and Forrester was the rise of the citizen developer, which necessitated a refinement of design concepts.</p><p>The removal of the Activity and XML data fields will affect custom applications, which will need to be updated accordingly. Variables are rebranded Process data fields, and no changes are required.</p><p>The ability to write custom code in the K2 design tooling was also deprecated as a part of the technology shift. The Visual Studio design experience allowed adding custom code or reference libraries that aren&#8217;t compatible with the new approach.</p><p>The focus on custom code shifted to ServiceBrokers via SmartObjects and expanded to include JavaScript. C# was the only option prior to the change.</p><p>The important takeaway is that while the technical implementation details were removed, the instigating use cases can still be addressed via other means that preserve the original intent.</p><p>Finally, the structure of how workflows are assembled changed. Activities and events gave way to Steps. This was purely a design consideration, thus making the two paradigms between old and new incompatible. Another citizen developer: quality-of-life improvement. It was a bit of an adjustment at first, but I must admit it makes more sense. For me, it was just more a matter of adjusting to the change than a functional limitation.</p><h2>Why migrate?</h2><p>The end-of-life deadlines are not technical limitations. Workflows are not going to stop working on at midnight on December 31 if they have not been migrated.</p><p>The motivation to migrate is access to support and security. Of my two clients, one migrated a major solution from K2 blackpearl by the October deadline due to the highly regulated nature of their industry. Being on unsupported software was a risk they were not willing to take or a conversation they wanted to have with regulators. We went live in the first half of October.</p><p>The remaining client their migration effort is ongoing. Their industry affords them a bit more flexibility in their planning. They have been using this process as a training effort for new K2 developers to skill them up on legacy solutions and K2, and I have been engaged to advise them on how to rearchitect the solutions to fit the features of the newer K2 version.</p><p>Clients who are finding themselves in this situation have obviously been K2 users for a very long time. Solutions that could be as old as 17 years old. These are obviously important processes to have been maintained and still used for that long, so migration is necessary.</p><p>There will be a level of effort associated with migration. Keep in mind that, in many instances, it is a carbon-copy rebuild. The hard work was already completed when the solution was originally built. At least, the effort will be opening the legacy workflow, starting a new workflow, and mapping the old to the new.</p><p>The effort would increase if the workflow relied heavily on custom code or XML data fields, as in my regulated client&#8217;s workflow. It required rearchitecting not only the workflow but also impacted systems and applications. If you find yourself in a similar situation, I advise you to take a moment to evaluate the solution. Understand how the workflow change will impact the solution as a whole, and take some time with the business owners to review the workflow. My client and I found out after the fact that a few steps in the workflow we were migrating could have been left out because the business needs had changed.</p><p>In the race to migrate with time as a factor, take a moment to evaluate the process. I am not suggesting a full process discovery exercise, but at least a critical look, as you may save yourself some time and effort if there is functionality that doesn&#8217;t need to be brought forward.</p><h2>When to upgrade?</h2><p>My clients who are migrating were already running a newer version of K2 before they began the migration. Upgrading can happen at any time, independent of migration.</p><p>The need to upgrade is driven by the end-of-life of k2 blackpearl 4.7.</p><p>Migration is a topic that was driven by the end of life of Visual Studio 2015.</p><p>The matter is slightly complicated, as the final date for both is December 31, 2025, because both the design-time and runtime components that support them are reaching the end of life.</p><p>The upgrade will only be a prerequisite for migration if your organization is not running a version of K2 5.x with the new K2 Designer. K2 blackpearl 4.7 customers must upgrade before they can begin the migration process.</p><h2>Final thoughts</h2><p>My recommendation is that if you are a K2 blackpearl 4.7 customer, upgrade to K2 5.7. The move is a required step on the journey to 5.9 from 4.7, so effort won&#8217;t be wasted. This will keep you on a supported version under extended support till September 2027 and enable your organization to begin migration.</p><p>With migration and upgrades uncoupled, a plan can be developed for when to upgrade to K2 5.9</p><p>Questions about your migration plans? Drop us a line at hello@caseitsolutions.com</p>]]></content:encoded></item><item><title><![CDATA[Planning a K2 blackpearl Upgrade]]></title><description><![CDATA[A guide for planning a successful upgrade to K2 5.9]]></description><link>https://blog.caseitsolutions.com/p/planning-a-k2-blackpearl-upgrade</link><guid isPermaLink="false">https://blog.caseitsolutions.com/p/planning-a-k2-blackpearl-upgrade</guid><dc:creator><![CDATA[J Scott Pitman]]></dc:creator><pubDate>Fri, 19 Dec 2025 16:00:30 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!x-1v!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2dc069b-778d-4cb5-a64c-96c61d0c5262_5616x2274.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!x-1v!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2dc069b-778d-4cb5-a64c-96c61d0c5262_5616x2274.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset image2-full-screen"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!x-1v!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2dc069b-778d-4cb5-a64c-96c61d0c5262_5616x2274.jpeg 424w, https://substackcdn.com/image/fetch/$s_!x-1v!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2dc069b-778d-4cb5-a64c-96c61d0c5262_5616x2274.jpeg 848w, https://substackcdn.com/image/fetch/$s_!x-1v!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2dc069b-778d-4cb5-a64c-96c61d0c5262_5616x2274.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!x-1v!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2dc069b-778d-4cb5-a64c-96c61d0c5262_5616x2274.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!x-1v!,w_5760,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2dc069b-778d-4cb5-a64c-96c61d0c5262_5616x2274.jpeg" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d2dc069b-778d-4cb5-a64c-96c61d0c5262_5616x2274.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;full&quot;,&quot;height&quot;:2274,&quot;width&quot;:5616,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1955880,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://blog.caseitsolutions.com/i/182095070?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37e8f09d-cb89-47b8-8e32-1b8539fdab74_5616x3744.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-fullscreen" alt="" srcset="https://substackcdn.com/image/fetch/$s_!x-1v!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2dc069b-778d-4cb5-a64c-96c61d0c5262_5616x2274.jpeg 424w, https://substackcdn.com/image/fetch/$s_!x-1v!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2dc069b-778d-4cb5-a64c-96c61d0c5262_5616x2274.jpeg 848w, https://substackcdn.com/image/fetch/$s_!x-1v!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2dc069b-778d-4cb5-a64c-96c61d0c5262_5616x2274.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!x-1v!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2dc069b-778d-4cb5-a64c-96c61d0c5262_5616x2274.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The end of extended support for K2 blackpearl 4.7 is fast approaching. If you haven&#8217;t started planning your upgrade strategy, now is the time because <strong>December 31, 2025 </strong>will be here before you know it and you will be left on unsupported software. (see <a href="https://help.nintex.com/en-US/platform/K2Support/K2ReleaseStrategy.htm">Support Lifecycles</a>)</p><p>Many factors play into deciding exactly how to upgrade and this can make the whole process seem complex. This guide should help outline some ways to approach the effort.</p><blockquote><p><strong>IMPORTANT:</strong> <em>Speaking of end of life, Visual Studio 2015 which is required for developing K2 blackpearl workflows reached <a href="https://learn.microsoft.com/en-us/lifecycle/products/visual-studio-2015">end of life</a> on <strong>October 14, 2025</strong>, so while you can still run the workflows the ability to develop K2 blackpearl workflows is already out of support. Another compelling reason for the upgrade to K2 5.9.</em></p></blockquote><h2>Step 1: Check the Versions, All of Them.</h2><p>First, determine what version of K2 you are currently running. Refer to the <a href="https://help.nintex.com/en-US/platform/K2Support/ProductCompatibilityMatrix.htm#Release_Upgrade_Compatibility">Release Upgrade Compatibility Matrix</a> to determine the upgrade path that must be followed to reach K2 5.9.</p><p>For example, if you are currently running K2 blackpearl 4.7, it will be necessary to upgrade to K2 5.7 before you can finally upgrade to 5.9.</p><p>After the upgrade path is determined, the next step is to refer to the <a href="https://help.nintex.com/en-US/platform/K2Support/ProductCompatibilityMatrix.htm">Nintex K2 Product Compatibility</a> matrix to cross reference the current Windows Server and SQL Server versions currently installed against what is supported by the intermediate and target versions of K2.</p><p>Using the 4.7 to 5.9 upgrade scenario as a real-world example from a client who is running Windows Server 2016, referring to the installation compatibility matrix we can see that both 4.7 and 5.9 are supported on Window Server 2016 so no operating system upgrades are required to do an in-place upgrade of K2.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!nLU1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52b6e0a0-571c-40a7-9891-a2517a0e793d_624x242.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!nLU1!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52b6e0a0-571c-40a7-9891-a2517a0e793d_624x242.png 424w, https://substackcdn.com/image/fetch/$s_!nLU1!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52b6e0a0-571c-40a7-9891-a2517a0e793d_624x242.png 848w, https://substackcdn.com/image/fetch/$s_!nLU1!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52b6e0a0-571c-40a7-9891-a2517a0e793d_624x242.png 1272w, https://substackcdn.com/image/fetch/$s_!nLU1!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52b6e0a0-571c-40a7-9891-a2517a0e793d_624x242.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!nLU1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52b6e0a0-571c-40a7-9891-a2517a0e793d_624x242.png" width="624" height="242" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/52b6e0a0-571c-40a7-9891-a2517a0e793d_624x242.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:242,&quot;width&quot;:624,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!nLU1!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52b6e0a0-571c-40a7-9891-a2517a0e793d_624x242.png 424w, https://substackcdn.com/image/fetch/$s_!nLU1!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52b6e0a0-571c-40a7-9891-a2517a0e793d_624x242.png 848w, https://substackcdn.com/image/fetch/$s_!nLU1!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52b6e0a0-571c-40a7-9891-a2517a0e793d_624x242.png 1272w, https://substackcdn.com/image/fetch/$s_!nLU1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52b6e0a0-571c-40a7-9891-a2517a0e793d_624x242.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>In the chart above, you can see that you could get away without upgrading the Windows Server since all versions in your upgrade path are supported in 2016: 4.7 (current) to 5.7 (intermediate) to 5.9 (final).</p><blockquote><p><strong>IMPORTANT:</strong> <em>From K2 blackpearl 4.7 to K2 Five there are changes to licensing details and software keys so that will need to be worked out ahead of time with your Nintex Customer Success Manager or Nintex Partner.</em></p></blockquote><p>The same version verification is required for SQL Server versions. Keep in mind that there is also the added dimension of checking the SQL Server&#8217;s operating system&#8217;s requirements against any anticipated operating system upgrades.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ZjjQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F675bd586-a803-4975-a023-a0e1c1c176cc_624x174.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ZjjQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F675bd586-a803-4975-a023-a0e1c1c176cc_624x174.png 424w, https://substackcdn.com/image/fetch/$s_!ZjjQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F675bd586-a803-4975-a023-a0e1c1c176cc_624x174.png 848w, https://substackcdn.com/image/fetch/$s_!ZjjQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F675bd586-a803-4975-a023-a0e1c1c176cc_624x174.png 1272w, https://substackcdn.com/image/fetch/$s_!ZjjQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F675bd586-a803-4975-a023-a0e1c1c176cc_624x174.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ZjjQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F675bd586-a803-4975-a023-a0e1c1c176cc_624x174.png" width="624" height="174" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/675bd586-a803-4975-a023-a0e1c1c176cc_624x174.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:174,&quot;width&quot;:624,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ZjjQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F675bd586-a803-4975-a023-a0e1c1c176cc_624x174.png 424w, https://substackcdn.com/image/fetch/$s_!ZjjQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F675bd586-a803-4975-a023-a0e1c1c176cc_624x174.png 848w, https://substackcdn.com/image/fetch/$s_!ZjjQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F675bd586-a803-4975-a023-a0e1c1c176cc_624x174.png 1272w, https://substackcdn.com/image/fetch/$s_!ZjjQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F675bd586-a803-4975-a023-a0e1c1c176cc_624x174.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>Another dependency to not forget about in the planning process is SharePoint. There is a chart for those supported version as well.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!OdxK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb757e4a3-6594-45e5-b659-171b32db47de_624x200.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!OdxK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb757e4a3-6594-45e5-b659-171b32db47de_624x200.png 424w, https://substackcdn.com/image/fetch/$s_!OdxK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb757e4a3-6594-45e5-b659-171b32db47de_624x200.png 848w, https://substackcdn.com/image/fetch/$s_!OdxK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb757e4a3-6594-45e5-b659-171b32db47de_624x200.png 1272w, https://substackcdn.com/image/fetch/$s_!OdxK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb757e4a3-6594-45e5-b659-171b32db47de_624x200.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!OdxK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb757e4a3-6594-45e5-b659-171b32db47de_624x200.png" width="624" height="200" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b757e4a3-6594-45e5-b659-171b32db47de_624x200.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:200,&quot;width&quot;:624,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!OdxK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb757e4a3-6594-45e5-b659-171b32db47de_624x200.png 424w, https://substackcdn.com/image/fetch/$s_!OdxK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb757e4a3-6594-45e5-b659-171b32db47de_624x200.png 848w, https://substackcdn.com/image/fetch/$s_!OdxK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb757e4a3-6594-45e5-b659-171b32db47de_624x200.png 1272w, https://substackcdn.com/image/fetch/$s_!OdxK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb757e4a3-6594-45e5-b659-171b32db47de_624x200.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>As a reminder, the full support matrix can be found here: <a href="https://help.nintex.com/en-US/platform/K2Support/ProductCompatibilityMatrix.htm">Nintex K2 Product Compatibility</a></p><h2>Step 2: Assemble the Team</h2><p>A K2 upgrade should not be completed in a vacuum. This is going to be a team effort. K2 solutions span an organization, and both depend on and impacted by other parts of the IT organization. The AD team, Networking (DNS) team, Security (if applicable), Infrastructure (hardware / virtualization), DBAs, and business stakeholders should all be either advised or involved in the planning process for the upgrade. The more complex the planned upgrades the greater the importance of active involvement and the need for them to be on standby when the day of the upgrade arrives.</p><h2>Step 3: Decide What is Being Upgraded</h2><p>The risk that I have seen come into play is attempting to do too much all at once.</p><p>I have seen teams that want to change out the SQL Server version, the OS version and move to new hardware in pretty much one go.</p><p>The infrastructure team may want to upgrade the SQL Server or Windows Server versions as part of the K2 upgrade. Window Server 2016 reaches extended <a href="https://learn.microsoft.com/en-us/lifecycle/products/windows-server-2016">support end of life</a> on January 12, 2027 and pressure will me mounting to move onto a supported operating system.</p><p>I highly recommend treating the K2 upgrade and the underlying server software upgrades as two separate projects. The approach I found to be more manageable and help mitigate risk is to upgrade either K2 or OS versions, ensure stability then upgrade the rest.</p><h2>Step 4: Choose How to Upgrade</h2><p>We now know how to get to K2 5.9, we understand the supporting software version implications, and we want to start the upgrade. Where do we start and what do we mean exactly by &#8220;upgrade&#8221;?</p><p>It is this step where the environment setup you are working with does begin to strongly factor into the decision-making process. The goal is to get on a newer version but how do you want to get there?</p><p>This is the point where all the stakeholders need to come together and reach a consensus.</p><p>Is there going to be an attempt to do an in-place upgrade?</p><p>Is the plan to bring up brand new servers and just move the K2 database?</p><p>There is a lot to consider. I generally prefer to go with a bit more conservative approach as I like to reach clearly defined goals that leave behind an operational environment just in case something unexpected occurs.</p><p>The order of operations I prefer to follow is:</p><ol><li><p><strong>Stop the K2 Services on all nodes. </strong>Before the final backup, stop all the K2 services on each node in the farm. The K2 data needs to be persisted to the database and in a static state. If the K2 server is running, data could be changed after the database backup was completed leaving you with a stale backup.</p><p></p></li><li><p><strong> Use an app_offline.htm file to gracefully take SmartForms offline. </strong>Using the built in functionality to .NET, an app_offline.htm file can be placed at the root of the SmartForms website to take the site offline. Placing the file in &#8220;&lt;Installation Location&gt;\K2\K2 SmartForms Runtime&#8221; will cause the contents of the file to be displayed instead of the normal website execution effectively taking the site offline.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!e3mI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7bb5eaa4-64c8-4d3d-ac2b-7b12dae71f3c_473x286.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!e3mI!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7bb5eaa4-64c8-4d3d-ac2b-7b12dae71f3c_473x286.png 424w, https://substackcdn.com/image/fetch/$s_!e3mI!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7bb5eaa4-64c8-4d3d-ac2b-7b12dae71f3c_473x286.png 848w, https://substackcdn.com/image/fetch/$s_!e3mI!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7bb5eaa4-64c8-4d3d-ac2b-7b12dae71f3c_473x286.png 1272w, https://substackcdn.com/image/fetch/$s_!e3mI!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7bb5eaa4-64c8-4d3d-ac2b-7b12dae71f3c_473x286.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!e3mI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7bb5eaa4-64c8-4d3d-ac2b-7b12dae71f3c_473x286.png" width="587" height="354.93023255813955" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7bb5eaa4-64c8-4d3d-ac2b-7b12dae71f3c_473x286.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:286,&quot;width&quot;:473,&quot;resizeWidth&quot;:587,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!e3mI!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7bb5eaa4-64c8-4d3d-ac2b-7b12dae71f3c_473x286.png 424w, https://substackcdn.com/image/fetch/$s_!e3mI!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7bb5eaa4-64c8-4d3d-ac2b-7b12dae71f3c_473x286.png 848w, https://substackcdn.com/image/fetch/$s_!e3mI!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7bb5eaa4-64c8-4d3d-ac2b-7b12dae71f3c_473x286.png 1272w, https://substackcdn.com/image/fetch/$s_!e3mI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7bb5eaa4-64c8-4d3d-ac2b-7b12dae71f3c_473x286.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><blockquote><p><strong>Mastery Tip: </strong>Using a app_offline.htm file is also a great approach to communicate with your user base to convey what is happening along with expected timelines instead of them being greeted by an uninformative error message. </p></blockquote></li><li><p><em><strong>Take Backups of VMs and Databases! </strong></em>I am sure it goes without saying, but it is important enough to reiterate.</p><p></p></li><li><p><strong>Have a rollback plan. </strong>Most of my suggestions in this list come with an implied rollback plan but make sure yours is understood by the team.</p><p></p></li><li><p><strong>Schedule an adequate maintenance window. </strong>This is not a project that should be planned to occur on a Friday after 5 and be ready for testing on Saturday morning. The more mature the K2 environment that greater the potential there could be a snag, especially when making a large jump from 4.7 to 5.7.</p><p></p></li><li><p><strong>Plan to upgrade a lower environment first. </strong>If your organization has the standard Dev, QA and Prod setup or similar. I recommend upgrading one of the lower environments first. Generally, QA is similar enough to Production that it can be used to validate an upgrade plan. Also, leaving Development intact gives the K2 development team the ability to continue to support Production break fix issues while QA is being upgraded. This does break the typical change management pipeline, and I only suggest it for emergency Production support scenarios. Then upgrade Development leaving Production for last as that offers two opportunities to try to search for any potential roadblocks.</p><p></p></li><li><p><strong>Make the least disruptive change first.</strong> For example, an in-place SQL Server upgrade is generally going to be less disruptive to the environment than moving to new hardware and at the end, the K2 environment should be left in a functional state, just with a newer version of SQL as the backend.</p><p></p></li><li><p><strong>When moving a database to new hardware, move it before upgrade. </strong>I prefer moving databases before attempting a K2 upgrade as it allows for the validation of the database on the new server with a known environment before attempting an upgrade of K2.</p><p></p><blockquote><p><strong>MASTERY TIP: </strong><em>If you must choose what to take extra care with during the upgrade, always choose the database. K2 server nodes are replaceable<strong>.</strong></em></p></blockquote><p></p></li><li><p><strong>When upgrading K2 server hardware, upgrade K2 first. </strong>This may be a controversial take but hear me out. If there is a need to move the K2 servers to new hardware, I think upgrading K2 in place on current hardware allows for the validation of the upgrade. Then, the new hardware can be added to the K2 server farm as additional nodes. This approach keeps the whole farm functional, old nodes can be turned off to allow for validation of the new nodes, and the old nodes are still available as a fallback. Once everything is validated, remove the old nodes.</p><p></p><blockquote><p><strong>MASTERY TIP: </strong><em>This approach can be used for single node farms assuming they were installed as farms. K2 should ALWAYS be installed as a farm. This setups up the farm with a DNS entry and not taking a dependency on the machine name which allows for maximum flexibility.<br></em></p><p><strong>BONUS: </strong><em>Existing K2 single server installs can be reconfigured to operate in farm mode by running the setup manager. You would just need to update any links or connection strings to the K2 server, plus if you are using Kerberos, update the SPNs of the K2 service account and potentially the application pool identities of the web-based components of K2. It depends on your overall installation details. If you are planning to do this, test in a lower environment first to work out the specifics.</em></p></blockquote><p></p></li><li><p><strong>Leave SharePoint for last. </strong>SharePoint can be a significant dependency for K2 solutions, but it isn&#8217;t critical for the operation of the K2 farm in a foundational way like Windows or SQL Server. New SharePoint farms can be stood up and site data migrated, but the final connection to K2 cannot occur till K2 upgrades are complete.</p></li></ol><p>I realize that not all situations are created equal. The steps outlined are how I prefer to think through an upgrade. These are offered as better practice. Ultimately, it is up to your comfort levels and being pragmatic about your situation that should guide your choices.</p><h2>Step 5: Uncertain? Call For Backup</h2><p>If you are feeling nervous about an upgrade at this point, it&#8217;s natural. I&#8217;m a big proponent of erring on the side of caution when it comes to production systems, which why I may be a bit more verbose in my approach than necessary.</p><p>However, it should be noted that certain upgrades, while seemingly straightforward, may encounter unforeseen challenges for various reasons.</p><p>I have seen this issue primarily impact older, legacy K2 installations by causing database compatibility problems&#8212;particularly in environments that originally started as K2.NET 2003 installs, were later upgraded to K2 blackpearl (with multiple databases), and then further consolidated into a single K2 blackpearl database.</p><p>That much evolution over the years can leave database artifacts behind that can confuse the more modern upgrade installers.</p><p>Nintex Professional Services does offer two flavors of upgrade assistance, one for working hours and one outside of working hours, which can be helpful to have on standby for a production upgrade. I&#8217;d recommend reaching out to your Customer Success Manager to find out more.</p><h2>The Best of Both Worlds</h2><p>There is one guaranteed way to have a successful K2 upgrade, don&#8217;t.</p><p> If your organization is facing both a k2 blackpearl workflow migration to K2 Five design tooling along with upgrading K2 to version 5.9 then maybe not upgrading your existing farm is a consideration and simply standing up a new farm alongside the legacy farm is a viable path. </p><p>This is also an opportunity to take a critical look at existing workflows that are being migrated and determine what changes need to be made. Business needs evolve but did those workflows? Having parallel environments provide the organization with a much longer runway to have those conversations. </p><p>I have a client that is currently standing up a brand-new K2 5.9 farm on Windows Server 2025 after making the choice to leave the K2 blackpearl servers behind.  They are taking a drain stop approach updating the K2 blackpearl workflows to K2 Five and deploying them to the new farm. Existing workflow instances will finish on the old farm and new instances will start on the new farm.</p><p>And that is a valid choice.</p><p>There is a lot of nuance and edge case scenarios to be considered that are more business operations and compliance questions than technical, but depending on your organization&#8217;s situation, it could potentially be the path of least resistance.</p><p>There are also some license implications but historically it has been my experience that Nintex has been working with customers to get over any of those hurdles and should be discussed with your Customer Success Manager or Nintex Partner.  </p><p>If you are planning an upgrade and have questions, please feel free to drop me a line at <a href="mailto:hello@caseitsolutions.com">hello@caseitsolutions.com.</a></p>]]></content:encoded></item><item><title><![CDATA[Customizing K2]]></title><description><![CDATA[How to bring new capabilities into the K2 platform.]]></description><link>https://blog.caseitsolutions.com/p/customizing-k2</link><guid isPermaLink="false">https://blog.caseitsolutions.com/p/customizing-k2</guid><dc:creator><![CDATA[J Scott Pitman]]></dc:creator><pubDate>Wed, 17 Dec 2025 16:02:42 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/4eba99ae-1a09-41ae-ba59-de4484758952_5000x4737.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!I7M7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14e0f17f-0fbf-4020-accb-44b012faadf7_5000x1831.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset image2-full-screen"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!I7M7!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14e0f17f-0fbf-4020-accb-44b012faadf7_5000x1831.jpeg 424w, https://substackcdn.com/image/fetch/$s_!I7M7!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14e0f17f-0fbf-4020-accb-44b012faadf7_5000x1831.jpeg 848w, https://substackcdn.com/image/fetch/$s_!I7M7!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14e0f17f-0fbf-4020-accb-44b012faadf7_5000x1831.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!I7M7!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14e0f17f-0fbf-4020-accb-44b012faadf7_5000x1831.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!I7M7!,w_5760,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14e0f17f-0fbf-4020-accb-44b012faadf7_5000x1831.jpeg" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/14e0f17f-0fbf-4020-accb-44b012faadf7_5000x1831.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;full&quot;,&quot;height&quot;:1831,&quot;width&quot;:5000,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:578417,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://blog.caseitsolutions.com/i/181851028?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F63b4570b-4cf8-43f0-b38f-24089edf83fb_5000x4737.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-fullscreen" alt="" srcset="https://substackcdn.com/image/fetch/$s_!I7M7!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14e0f17f-0fbf-4020-accb-44b012faadf7_5000x1831.jpeg 424w, https://substackcdn.com/image/fetch/$s_!I7M7!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14e0f17f-0fbf-4020-accb-44b012faadf7_5000x1831.jpeg 848w, https://substackcdn.com/image/fetch/$s_!I7M7!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14e0f17f-0fbf-4020-accb-44b012faadf7_5000x1831.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!I7M7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14e0f17f-0fbf-4020-accb-44b012faadf7_5000x1831.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Nintex Automation K2 is a powerful platform with many ways to customize it to meet your specific needs, but it can be challenging to know which options are available. This blog attempts to compile the most commonly used options in one place, along with a few honorable mentions for those edge cases we've all run into.</p><p>Many of the customization options listed here can be used for both K2 Cloud and K2 5.x customers, but not all. If the documentation mentions the file system or database updates, that customization won&#8217;t work for K2 Cloud.</p><p>If you want to get a deeper dive into customizations, subscribe to get updates on future posts.</p><h2>The Background</h2><p>K2 used to be positioned as a low-code platform, which, in my opinion, I always found a bit short-sighted. That messaging felt like it understated the software&#8217;s capabilities. Simplicity was essential to positioning K2 as something that wasn&#8217;t too complicated and accessible to the armies of citizen developers being cultivated. Still, I feel it missed the opportunity to attract the code-first crowd by highlighting what is possible.</p><div class="pullquote"><p><a href="https://www.linkedin.com/in/codi-kaji/">Codi Kaji</a>, Director of Product Management at K2, began saying that K2 is &#8220;More Code.&#8221; You can read Codi&#8217;s post and webinar on <a href="https://www.linkedin.com/posts/codi-kaji_in-a-recent-webinar-i-discussed-something-activity-7310074918421848064-G-vy?utm_source=share&amp;utm_medium=member_desktop&amp;rcm=ACoAAAC_TzwB9RqKPGWsPwdBE7OwGkM0OPvUb_0">LinkedIn</a>.</p></div><p>I completely agree. K2 has always included a multitude of ways to extend the platform. The appealing aspect is that customization wasn&#8217;t required to get value out of K2, but it is a powerful tool to have in your kit.</p><p>The current ways to customize K2 come in a few different flavors, depending on how you define customization. There are ways to extend the platform&#8217;s core functionality, add integrations, and enhance forms&#8217; capabilities or presentation. The platform has also made a couple of these more advanced customizations cloud-friendly by supporting JavaScript.</p><h2>Customization Options: No Code</h2><p>It feels like one of the biggest challenges to the adoption of K2 customizations was the lack of knowledge about the options available.</p><p>We will start this tour of those options by looking at what is available to those who do not want to write code.</p><h3><strong>Style Profiles</strong></h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!FCwm!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F122cb80a-174e-48fa-9569-d156cf24e0e8_1562x830.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!FCwm!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F122cb80a-174e-48fa-9569-d156cf24e0e8_1562x830.png 424w, https://substackcdn.com/image/fetch/$s_!FCwm!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F122cb80a-174e-48fa-9569-d156cf24e0e8_1562x830.png 848w, https://substackcdn.com/image/fetch/$s_!FCwm!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F122cb80a-174e-48fa-9569-d156cf24e0e8_1562x830.png 1272w, https://substackcdn.com/image/fetch/$s_!FCwm!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F122cb80a-174e-48fa-9569-d156cf24e0e8_1562x830.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!FCwm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F122cb80a-174e-48fa-9569-d156cf24e0e8_1562x830.png" width="1456" height="774" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/122cb80a-174e-48fa-9569-d156cf24e0e8_1562x830.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:774,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!FCwm!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F122cb80a-174e-48fa-9569-d156cf24e0e8_1562x830.png 424w, https://substackcdn.com/image/fetch/$s_!FCwm!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F122cb80a-174e-48fa-9569-d156cf24e0e8_1562x830.png 848w, https://substackcdn.com/image/fetch/$s_!FCwm!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F122cb80a-174e-48fa-9569-d156cf24e0e8_1562x830.png 1272w, https://substackcdn.com/image/fetch/$s_!FCwm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F122cb80a-174e-48fa-9569-d156cf24e0e8_1562x830.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>A <a href="https://help.nintex.com/en-us/k2five/userguide/current/content/Create/StyleProfile/StyleProfile.htm">style profile</a> is a way to apply a consistent look and feel to a K2 form and reuse it throughout your solution. You can think of a Style profile simply as a visual designer for creating customized CSS that becomes a part of your solution as a deployable artifact. In its most basic form, a style profile requires no coding.</p><p>However, if you have a UI/UX wizard on your team, using a style profile will let them craft custom CSS and JavaScript to take things up a notch.</p><h3><strong>Nintex Gallery</strong></h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!4gsw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fade4cba2-aa88-416d-a812-b49843a7b18b_1561x917.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!4gsw!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fade4cba2-aa88-416d-a812-b49843a7b18b_1561x917.png 424w, https://substackcdn.com/image/fetch/$s_!4gsw!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fade4cba2-aa88-416d-a812-b49843a7b18b_1561x917.png 848w, https://substackcdn.com/image/fetch/$s_!4gsw!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fade4cba2-aa88-416d-a812-b49843a7b18b_1561x917.png 1272w, https://substackcdn.com/image/fetch/$s_!4gsw!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fade4cba2-aa88-416d-a812-b49843a7b18b_1561x917.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!4gsw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fade4cba2-aa88-416d-a812-b49843a7b18b_1561x917.png" width="1456" height="855" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ade4cba2-aa88-416d-a812-b49843a7b18b_1561x917.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:855,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!4gsw!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fade4cba2-aa88-416d-a812-b49843a7b18b_1561x917.png 424w, https://substackcdn.com/image/fetch/$s_!4gsw!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fade4cba2-aa88-416d-a812-b49843a7b18b_1561x917.png 848w, https://substackcdn.com/image/fetch/$s_!4gsw!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fade4cba2-aa88-416d-a812-b49843a7b18b_1561x917.png 1272w, https://substackcdn.com/image/fetch/$s_!4gsw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fade4cba2-aa88-416d-a812-b49843a7b18b_1561x917.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The Nintex Gallery website offers several ready-made options for adding functionality to K2, including style profiles, controls, and service brokers. These have been written by either Nintex or the greater K2 community and partners. It is an excellent way to discover new features without writing code. The gallery highlights the art of the possible.</p><h3><strong>Custom Workflow Steps</strong></h3><p>This feature needs to receive more attention.</p><p>If you have always wished there was a SmartObject call you could just drag and drop onto the design canvas instead of having to configure the call each and every time you use it, then custom workflow steps are for you, but it is much more than that.</p><p>This customization point will really shine when paired with custom service brokers, enabling developers to bring significant new features to the K2 Workflow Designer.</p><p>The <a href="https://help.nintex.com/en-US/k2cloud/userguide/update_18/Content/Extend/WF/Steps/WFsteps.htm">documentation</a> is an excellent source to get started, and this feature falls into the &#8220;no code&#8221; category as long as you are using it in conjunction with existing Service Brokers or ones you may have downloaded from the Nintex Gallery.</p><p>As you expand into writing your own Service Brokers, you can add the finishing touch to that new integration with a custom step.</p><p>The one drawback of custom steps is that you are limited in your ability to customize the configuration panel and can only expose the same field types that the underlying SmartObject exposes, so plan your implementation carefully and consider how you want to handle any complexity.</p><h2>Customization Options: Some Code</h2><p>The next class of customization options is those that can be accomplished with a bit of code, such as HTML, CSS, some JavaScript, or maybe a line or two of C#.</p><h3><strong>Style Profiles (Advanced)</strong></h3><p>Style profiles get a mention here. While you can use style profiles without any code, the developer tab lets your UI guru attach custom CSS to enhance and go beyond the designer configuration approach. The documentation can be found <a href="https://help.nintex.com/en-us/k2five/userguide/current/content/Create/StyleProfile/StyleProfile.htm">here</a>.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!8frV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06ccbef4-c4ab-4667-84a2-94166bc17113_1562x1268.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!8frV!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06ccbef4-c4ab-4667-84a2-94166bc17113_1562x1268.png 424w, https://substackcdn.com/image/fetch/$s_!8frV!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06ccbef4-c4ab-4667-84a2-94166bc17113_1562x1268.png 848w, https://substackcdn.com/image/fetch/$s_!8frV!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06ccbef4-c4ab-4667-84a2-94166bc17113_1562x1268.png 1272w, https://substackcdn.com/image/fetch/$s_!8frV!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06ccbef4-c4ab-4667-84a2-94166bc17113_1562x1268.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!8frV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06ccbef4-c4ab-4667-84a2-94166bc17113_1562x1268.png" width="1456" height="1182" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/06ccbef4-c4ab-4667-84a2-94166bc17113_1562x1268.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1182,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;A screenshot of a computer\n\nAI-generated content may be incorrect.&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="A screenshot of a computer

AI-generated content may be incorrect." title="A screenshot of a computer

AI-generated content may be incorrect." srcset="https://substackcdn.com/image/fetch/$s_!8frV!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06ccbef4-c4ab-4667-84a2-94166bc17113_1562x1268.png 424w, https://substackcdn.com/image/fetch/$s_!8frV!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06ccbef4-c4ab-4667-84a2-94166bc17113_1562x1268.png 848w, https://substackcdn.com/image/fetch/$s_!8frV!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06ccbef4-c4ab-4667-84a2-94166bc17113_1562x1268.png 1272w, https://substackcdn.com/image/fetch/$s_!8frV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06ccbef4-c4ab-4667-84a2-94166bc17113_1562x1268.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3><strong>Email Notification Templates</strong></h3><p>Another one of those customizations that has fallen through the cracks is the ability to customize task notification emails. However, it is on the fringe for a reason. The email templates are installed by K2, so your changes could be overwritten during an upgrade. If you choose modify the template, be sure to keep a copy of your changes for future updates.</p><p>I couldn&#8217;t find a current help article, but there was a community post from a few years ago that covered the basics. You can find it <a href="https://community.nintex.com/k2-blackpearl-38/how-to-modify-the-notification-mail-template-28497">here</a>.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!15Qd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21a802b4-0d33-4c6d-8d4c-99a1f8e0ab93_1560x750.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!15Qd!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21a802b4-0d33-4c6d-8d4c-99a1f8e0ab93_1560x750.png 424w, https://substackcdn.com/image/fetch/$s_!15Qd!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21a802b4-0d33-4c6d-8d4c-99a1f8e0ab93_1560x750.png 848w, https://substackcdn.com/image/fetch/$s_!15Qd!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21a802b4-0d33-4c6d-8d4c-99a1f8e0ab93_1560x750.png 1272w, https://substackcdn.com/image/fetch/$s_!15Qd!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21a802b4-0d33-4c6d-8d4c-99a1f8e0ab93_1560x750.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!15Qd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21a802b4-0d33-4c6d-8d4c-99a1f8e0ab93_1560x750.png" width="1456" height="700" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/21a802b4-0d33-4c6d-8d4c-99a1f8e0ab93_1560x750.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:700,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;A screenshot of a computer\n\nAI-generated content may be incorrect.&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="A screenshot of a computer

AI-generated content may be incorrect." title="A screenshot of a computer

AI-generated content may be incorrect." srcset="https://substackcdn.com/image/fetch/$s_!15Qd!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21a802b4-0d33-4c6d-8d4c-99a1f8e0ab93_1560x750.png 424w, https://substackcdn.com/image/fetch/$s_!15Qd!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21a802b4-0d33-4c6d-8d4c-99a1f8e0ab93_1560x750.png 848w, https://substackcdn.com/image/fetch/$s_!15Qd!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21a802b4-0d33-4c6d-8d4c-99a1f8e0ab93_1560x750.png 1272w, https://substackcdn.com/image/fetch/$s_!15Qd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21a802b4-0d33-4c6d-8d4c-99a1f8e0ab93_1560x750.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>This customization will be global to the K2 server and needs to be configured on each node in a K2 server farm, since the templates are stored on each server node's file system. </p><p>The template files are located at &#8220;&lt;Installation Folder&gt;\K2\Host Server\Bin\Templates\Messages&#8221;.</p><blockquote><p>If you think this is a feature you would like to see made a first-class part of the K2 customization story, give it an up vote on Nintex Ideas: <a href="https://ideas.nintex.com/ideas/K25-I-142">Task Notifications Email Templates | Nintex Ideas</a></p></blockquote><h3><strong>Custom Themes</strong></h3><p>Before style profiles, the only way a developer could refine SmartForms' appearance in a reusable manner was to create a custom theme. I feel that style profiles have superseded this feature, and using a custom theme requires database manipulation and manual deployment of supporting files to all the servers in a farm. If you find yourself with an edge case that isn&#8217;t covered by the style profiles, here is the documentation: <a href="https://help.nintex.com/en-US/nintexautomation/devref/5.9/Content/Themes/Custom-Themes.htm">Custom Themes</a>.</p><h3><strong>Custom Inline Functions</strong></h3><p>Custom inline functions walk the line between &#8220;some code&#8221; and &#8220;more code,&#8221; as it depends on your design goals. Inline functions are intended to be basic; many can be implemented in just a few lines of code. The functions are meant for manipulating data inline, such as formatting a date, or a recent one I created that uses a regular expression to perform text replacement in a string (blog coming soon).</p><p>Read more about inline functions here: <a href="https://help.nintex.com/en-US/nintexautomation/devref/5.9/Content/Extend/WF/Custom-Inline-Function.html">Custom Inline Functions</a>.</p><h2>Customization Options: More Code</h2><p>These last two options are where you can bring a lot of new capabilities to the K2 platform and are THE extension point for a K2 developer to introduce custom code to address several scenarios.</p><p>For Nintex Automation K2 version 5.9, these options come in two flavors for on-premises installations: .NET and JavaScript. K2 Cloud only JavaScript is available.</p><h3><strong>Custom Controls</strong></h3><p>SmartForms can be extended with new form controls by either creating new .NET user controls or, as of 5.9, a web component. Check out Nintex Gallery for some examples of custom controls.</p><p>A little-known fact is that K2 uses Telerik controls for many of the UI controls in the platform today, and that DLL is on the file system and could be used to bring other controls to SmartForms that Nintex hasn&#8217;t implemented. There was a drive back in the day to add grid control to SmartForms using the Telerik grid view control. Maybe one of you out there is up for the challenge.</p><div class="pullquote"><p>Hint: The library in question is located at &#8220;&lt;Install Location&gt;\K2\K2 SmartForms Designer\bin\Telerik.Web.UI.dll&#8221;</p></div><p>With the web components approach, the K2 team has provided a prototyping and test environment that allows the creation of new SmartForms controls independent of a K2 environment. This &#8220;Control Dojo&#8221; is one of the more compelling additions to the customization story in a long time.  Check it out on GitHub and give <a href="https://github.com/k2workflow/Control-Dojo">Control Dojo</a> a star.</p><h5>Documentation:</h5><ul><li><p><a href="https://help.nintex.com/en-US/nintexautomation/devref/5.9/Content/Controls/Cust-Controls.html">SmartForms Custom Controls</a> (.NET)</p></li><li><p><a href="https://help.nintex.com/en-US/nintexautomation/userguide/current/Content/K2-Management-Site/CustomControls/CustomControlsManagement.htm?Highlight=Custom%20Controls">Custom controls in Management</a> (Web Component)</p></li></ul><h3><strong>Service Brokers</strong></h3><p>Service brokers are what provide the &#8220;smarts&#8221; in SmartObjects. They serve as integration points for other lines-of-business systems to move data, perform actions, or be created to expose bespoke functionality. The limit is your imagination.</p><p>Service brokers can be written as either a .NET DLL or written entirely in JavaScript. There is roughly 80% feature parity between the two methodologies, and any differences at this point are some particular edge cases.</p><h5>Documentation:</h5><ul><li><p><a href="https://help.nintex.com/en-US/nintexautomation/devref/current/Content/Extend/SmO/Custom-Service-Brokers.htm">Custom Service Brokers</a> (.NET)</p></li><li><p><a href="https://help.nintex.com/en-US/nintexautomation/devref/current/Content/Extend/JS-Broker/JSServiceBroker.htm">Introduction to the JavaScript Service Provider</a> (JavaScript)</p></li></ul><h3><strong>Customization Honorable Mentions</strong></h3><p>Finally, here are a few honorable mentions that I felt were worth including, as they have come up with past customers, and you should at least be aware that these options exist.</p><blockquote><p><strong>Custom User Manager:</strong> <a href="https://help.nintex.com/en-US/nintexautomation/devref/5.9/Content/Extend/Svr/UM-Creating.htm">https://help.nintex.com/en-US/nintexautomation/devref/5.9/Content/Extend/Svr/UM-Creating.htm</a></p><p><strong>Custom Log Provider:</strong> <a href="https://help.nintex.com/en-US/nintexautomation/devref/5.9/Content/Extend/Svr/Logging.htm">https://help.nintex.com/en-US/nintexautomation/devref/5.9/Content/Extend/Svr/Logging.htm</a></p><p><strong>Custom Fonts:</strong> <a href="https://help.nintex.com/en-US/nintexautomation/devref/5.9/Content/Fonts/Custom-Fonts.htm">https://help.nintex.com/en-US/nintexautomation/devref/5.9/Content/Fonts/Custom-Fonts.htm</a></p><p><strong>Custom Special Formats:</strong> <a href="https://help.nintex.com/en-US/nintexautomation/devref/5.9/Content/Formats/Formats.htm">https://help.nintex.com/en-US/nintexautomation/devref/5.9/Content/Formats/Formats.htm</a></p></blockquote><p>Hope you find this helpful. Subscribe for future posts, as I am going to go into depth on several of these, especially custom controls and service brokers.</p>]]></content:encoded></item><item><title><![CDATA[What is a K2 Developer?]]></title><description><![CDATA[The traits and skills that define who they are.]]></description><link>https://blog.caseitsolutions.com/p/what-is-a-k2-developer</link><guid isPermaLink="false">https://blog.caseitsolutions.com/p/what-is-a-k2-developer</guid><dc:creator><![CDATA[J Scott Pitman]]></dc:creator><pubDate>Mon, 08 Dec 2025 16:03:12 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/5dfcc652-28e7-4953-b9ce-c03965869135_5000x3337.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!YWDL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea68de9c-3420-4e43-b614-068170a4869c_5000x3337.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!YWDL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea68de9c-3420-4e43-b614-068170a4869c_5000x3337.jpeg 424w, https://substackcdn.com/image/fetch/$s_!YWDL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea68de9c-3420-4e43-b614-068170a4869c_5000x3337.jpeg 848w, https://substackcdn.com/image/fetch/$s_!YWDL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea68de9c-3420-4e43-b614-068170a4869c_5000x3337.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!YWDL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea68de9c-3420-4e43-b614-068170a4869c_5000x3337.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!YWDL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea68de9c-3420-4e43-b614-068170a4869c_5000x3337.jpeg" width="1456" height="972" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ea68de9c-3420-4e43-b614-068170a4869c_5000x3337.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:972,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:6619323,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://blog.caseitsolutions.com/i/180889624?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea68de9c-3420-4e43-b614-068170a4869c_5000x3337.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!YWDL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea68de9c-3420-4e43-b614-068170a4869c_5000x3337.jpeg 424w, https://substackcdn.com/image/fetch/$s_!YWDL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea68de9c-3420-4e43-b614-068170a4869c_5000x3337.jpeg 848w, https://substackcdn.com/image/fetch/$s_!YWDL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea68de9c-3420-4e43-b614-068170a4869c_5000x3337.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!YWDL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea68de9c-3420-4e43-b614-068170a4869c_5000x3337.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>This blog post is intended to help guide the recruiter, the hiring manager, or the would-be candidate in determining whether the role is a match because nothing seems more abstract than a job description for a &#8220;K2 Developer&#8221;.</p><p>The demand for K2 developers is increasing. I keep reading posts online looking to fill roles. I have clients in a similar situation who have asked me, &#8220;Where do you find K2 developers?&#8221;</p><p>My honest answer is that in recent years, I have been growing my own. Identifying individuals whose background, experience, and interests would make them proficient K2 developers. Having worked with K2 for over 18 years, training hundreds of aspiring developers and enabling countless K2 partners, I&#8217;ve seen a pattern emerge.</p><p>What does that mean exactly? If you read the job descriptions, they vary wildly. Most of the time, they appear to be for a SharePoint, C#, Dynamics CRM, or other role to which K2 is an additional duty assigned.</p><blockquote><h4>The TLDR</h4><p>Full Stack Developer + Solution Architect + Data Architect + Someone who enjoys calculating the Fibonacci sequence for fun.</p></blockquote><p><strong>Intrigued?</strong> Let me define who a K2 developer is and provide some much-needed context.</p><h2>The Hard Skills</h2><p>A K2 developer has the technical skills of a full-stack developer, the mind of a Solution Architect, and the analytical skills of a Data Architect, or some combination of the three. Having a portion of all three makes a candidate more successful.</p><p>For context, a K2 solution consists of SmartForms (UI), Workflow (business logic), and SmartObjects (data/integrations), which can be used as is, or there is room for customization where technical skills like HTML, CSS, JavaScript, C#, and SQL can be helpful, but are not required.</p><p>These skill sets are needed to build a robust and successful K2 solution. Just because they aren&#8217;t writing code doesn&#8217;t mean a K2 developer doesn&#8217;t need to understand how a solution is assembled and be able to envision the larger picture.</p><p>K2 as a platform encompasses UI, business logic, services, and data. A full-stack developer will have experience layering all these components together. The specific tool stack does not matter to K2; what matters more is the experience.</p><p>K2 solutions aren&#8217;t built in isolation. They are generally used to orchestrate larger, multisystem spanning processes. A K2 developer does not need to be an expert in those other systems, but they do need to understand their solution&#8217;s role, how that information must flow, and how those pieces all fit together.</p><p>In a K2 solution, data is vital. Being able to understand what data is needed and how it mutates during the life of the solution. Data is foundational. K2&#8217;s SmartObjects are the connecting thread that weaves through all levels of the application, and bad data design is a crack in that foundation.</p><p>Don&#8217;t panic. These traits are those of the ideal candidate, and we know unicorns are rare. If you must choose, go with a full-stack developer background. They will be better positioned to understand how to build in a K2 world and support that candidate with other members of your team who can help fill in the gaps.</p><p>However, if you choose to backfill with a shared solution and/or a data architect, be sure they complete K2 training to understand the platform&#8217;s constraints.</p><p>The more critical traits are those that cannot be taught.</p><h2>The Soft Skills</h2><p>What I have found to be more critical than technical skills are the personality traits. I can pretty much train anyone with the right level of technical background, but are they open to the challenge?</p><p>The question is less &#8220;what&#8221; is a K2 developer and more &#8220;who&#8221; is a K2 developer?</p><p>Someone inquisitive, enjoys a challenge, imaginative, methodical, and malleable.</p><p>Malleable may seem like a strange adjective to use, but it was the nicest I could come up with. There is an intrinsic openness that a candidate needs to succeed with K2. I have been in many enterprises, and there is always at least one developer who sits in the training, crosses their arms, and utters the age-old phrase, &#8220;I could write it faster in code.&#8221;</p><p>There is a whole philosophical discussion that could erupt around this sentiment, but a candidate with that sort of mentality won&#8217;t be successful.</p><p>To put it simply, the ideal candidate needs to be open to working with K2, accept the constraints, and find joy in exploring all the possibilities.</p><div class="pullquote"><p>A great interview question, or a variation on it, is to ask them for their thoughts on Lego. Lego is my go-to analogy for describing to someone what it is like to work with K2. They both require the builder to work within the constraints of the medium, follow detailed instructions, and use only the materials provided in an approved way. A Lego Master Builder and a K2 Master have very similar, if not the same, personality profiles.</p></div><p>Working with K2 can be fun. I personally enjoy the game of it. I long ago accepted the challenge of working within the constraints of the K2 platform. I look for that same openness to the challenge in others.</p><p>The ideal candidate should also be methodical. K2 solutions require an individual who is organized and detail-oriented to create orderly solutions and follow the flow of logic, someone who understands that there is a happy path and an exception path, where there is an if, there is an implied else. A very analytical mind that enjoys the challenge of solving for the unknown, i.e., the Fibonacci sequence. I find that former support engineers generally have the potential to make strong K2 developers.</p><p>This not only helps them develop solid solutions but also aids debugging when trying to understand why an empty row is being inserted into the database on file add. There is a story here, maybe I&#8217;ll share it sometime if I write about troubleshooting.</p><p>Finally, just going through the K2 training alone does not make a K2 developer, just as reading a recipe does not make a Michelin-rated chef. It is the first step on a journey of discovery. Much like Sudoku. Moments to learn, a lifetime to master. Maybe not a lifetime, but there is some work on the part of the would-be developer to go from the knowledge to practical application: the science vs. the art.</p><p>I hope this helps you better define who you are looking for in your next hire. I always welcome questions. Please feel free to leave a comment or drop me a line at info@caseitsolutions.com.</p>]]></content:encoded></item><item><title><![CDATA[The Release of K2 5.9]]></title><description><![CDATA[Maybe it is time to upgrade?]]></description><link>https://blog.caseitsolutions.com/p/the-release-of-k2-59</link><guid isPermaLink="false">https://blog.caseitsolutions.com/p/the-release-of-k2-59</guid><dc:creator><![CDATA[J Scott Pitman]]></dc:creator><pubDate>Thu, 04 Dec 2025 05:04:26 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!V9QO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F799ff251-7c72-41b4-8160-fd80857509cd_800x642.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!V9QO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F799ff251-7c72-41b4-8160-fd80857509cd_800x642.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!V9QO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F799ff251-7c72-41b4-8160-fd80857509cd_800x642.jpeg 424w, https://substackcdn.com/image/fetch/$s_!V9QO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F799ff251-7c72-41b4-8160-fd80857509cd_800x642.jpeg 848w, https://substackcdn.com/image/fetch/$s_!V9QO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F799ff251-7c72-41b4-8160-fd80857509cd_800x642.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!V9QO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F799ff251-7c72-41b4-8160-fd80857509cd_800x642.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!V9QO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F799ff251-7c72-41b4-8160-fd80857509cd_800x642.jpeg" width="800" height="642" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/799ff251-7c72-41b4-8160-fd80857509cd_800x642.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:642,&quot;width&quot;:800,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:64831,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://blog.caseitsolutions.com/i/180675539?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F799ff251-7c72-41b4-8160-fd80857509cd_800x642.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!V9QO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F799ff251-7c72-41b4-8160-fd80857509cd_800x642.jpeg 424w, https://substackcdn.com/image/fetch/$s_!V9QO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F799ff251-7c72-41b4-8160-fd80857509cd_800x642.jpeg 848w, https://substackcdn.com/image/fetch/$s_!V9QO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F799ff251-7c72-41b4-8160-fd80857509cd_800x642.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!V9QO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F799ff251-7c72-41b4-8160-fd80857509cd_800x642.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Christmas came just a bit early with the release of Nintex Automation K2 (K2) version 5.9! This is more than just a maintenance release; it includes some exciting new features.</p><p>Let&#8217;s start with the platform enhancements. K2 continues to build on the features introduced in 5.8.1.</p><blockquote><p> <strong>JavaScript Service Provider (JSSP)</strong> &#8211; This new service broker lets you move beyond writing new integrations for the K2 data layer in .NET code and into JavaScript. Debuted in K2 Cloud, introduced to on-prem customers with 5.8.1, it now comes to 5.9 as a long-term support release, with added support for Smart Object file properties.</p><p><strong>Rest Broker, open API v3 support.</strong> Another 5.8.1 feature that has been enhanced with the support for HTTP response codes, enabling better management scenarios for when a web service call doesn&#8217;t go the way you planned.</p><p><strong>OData v4 Service Broker</strong> gets a feature bump with support for nested entities. This was introduced to facilitate better integration with Dynamics 365 Business Center.</p><p><strong>SharePoint Broker</strong> has a new method that is automatically added to your discovered SharePoint artifacts, enabling you to &#8220;Remove All Permissions.&#8221; This feature essentially allows you to reset the permission on a List, for example, and then set more fine-grained control as your requirements need. It is excellent for compliance scenarios when the permissions need to change over the life of a workflow.</p></blockquote><p>On the topic of SharePoint, with this release, Nintex has made additional investments in the &#8220;Nintex for SharePoint Workflow&#8221; importer API. If you attended our K2 Master&#8217;s workshop, K2 Product Manager, Codi Kaji, shared a demo of the import API, but the UI wasn&#8217;t quite ready. It is now here with 5.9.</p><p>Also, if you think we should do another workshop, drop a comment below. &#128071;</p><p>Other platform improvements include:</p><ul><li><p><em>Optimized SQL Queries</em> for Identity Provider Framework, making it more performant for large organizations.</p></li><li><p><em>Add Hyperlinks to Categories</em> in Designer. Allowing you to make a ready reference for something like a related Jira board or Nintex Process Manager solution.</p></li><li><p><em>Environment Report.</em> The report that used to be run via a SQL script to understand how your K2 environment is being used can now be launched from K2 Management. This provides insights into the number of users, volume of workflows run, etc.</p></li><li><p>Updated JavaScript and CSS Support.</p></li></ul><div><hr></div><p>Speaking of JavaScript and CSS Support, the most exciting feature in 5.9 is the introduction of the new SmartForms Web Component controls! I have always loved the idea of extending SmartForms with custom controls. I&#8217;ll admit it wasn&#8217;t always the easiest to do, but it is a powerful, underused capability of K2.</p><p><em>&#8220;You don&#8217;t have the form control you need for a particular use case?&#8221;</em> Make your own!</p><p><strong>Web Components Controls</strong> continue in the tradition of extensibility and reusability that has been central to the K2 ethos.</p><p>K2 is releasing a series of new controls on the <a href="https://gallery.nintex.com/">Nintex Gallery</a> website. I recommend checking them out. The three controls mentioned during today&#8217;s webinar were the CAPTCHA, the Arabic Calendar, and the long-awaited Drag-and-Drop file control.</p><p>I plan to write a whole series on creating custom controls in both the traditional .NET user control-based approach and the new web components model. I also have some thoughts on how those could be leveraged together. Subscribe to get notified when that series drops.</p><p>The one thing that wasn&#8217;t mentioned in the webinar that I have had the chance to preview is the new <strong>Control Dojo</strong>. You will be able to get your control-creation mojo going with this new control-development tool from the K2 product team.</p><p>Available at <a href="https://github.com/k2workflow/Control-Dojo">k2workflow/Control-Dojo</a>, the project is described as &#8220;A modern web-based development environment for Nintex K2 custom controls with both debugging and control generation capabilities.&#8221; The dojo addresses some of the challenges with developing custom controls for SmartForms by providing a standalone prototyping and test environment independent of a K2 environment.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!GUWY!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F017339c1-2dea-483d-b9ae-02388713f789_625x549.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!GUWY!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F017339c1-2dea-483d-b9ae-02388713f789_625x549.png 424w, https://substackcdn.com/image/fetch/$s_!GUWY!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F017339c1-2dea-483d-b9ae-02388713f789_625x549.png 848w, https://substackcdn.com/image/fetch/$s_!GUWY!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F017339c1-2dea-483d-b9ae-02388713f789_625x549.png 1272w, https://substackcdn.com/image/fetch/$s_!GUWY!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F017339c1-2dea-483d-b9ae-02388713f789_625x549.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!GUWY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F017339c1-2dea-483d-b9ae-02388713f789_625x549.png" width="625" height="549" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/017339c1-2dea-483d-b9ae-02388713f789_625x549.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:549,&quot;width&quot;:625,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;A screenshot of a computer\n\nAI-generated content may be incorrect.&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="A screenshot of a computer

AI-generated content may be incorrect." title="A screenshot of a computer

AI-generated content may be incorrect." srcset="https://substackcdn.com/image/fetch/$s_!GUWY!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F017339c1-2dea-483d-b9ae-02388713f789_625x549.png 424w, https://substackcdn.com/image/fetch/$s_!GUWY!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F017339c1-2dea-483d-b9ae-02388713f789_625x549.png 848w, https://substackcdn.com/image/fetch/$s_!GUWY!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F017339c1-2dea-483d-b9ae-02388713f789_625x549.png 1272w, https://substackcdn.com/image/fetch/$s_!GUWY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F017339c1-2dea-483d-b9ae-02388713f789_625x549.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>It is as easy as cloning the GitHub repo, typing <em><strong>npm install</strong></em> then <em><strong>npm run dev:full</strong></em>.</p><p>Some honorable mentions discussed in the release webinar were:</p><ul><li><p>The introduction of the SCIM API, which lays the foundation for Okta, Ping, and Keycloak identity support in K2. I remember discussing SCIM and K2 with the Microsoft Identity team back in 2018, so I&#8217;m glad to see it finally making its way into the product.</p></li><li><p>SmartForms Runtime Accessibility. The runtime side of K2 SmartForms is now Web Content Accessibility Guidelines 2.1 Level AA complaint. There was a good demo of the feature during the webinar. </p></li></ul><p>Check out the full <a href="https://help.nintex.com/en-US/platform/ReleaseNotes/K2Five.htm">Release Notes</a> at Nintex.com</p><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.caseitsolutions.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading Case IT Solutions! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[The Case for Temperance]]></title><description><![CDATA[How solution accelerators can impact your K2 projects.]]></description><link>https://blog.caseitsolutions.com/p/the-case-for-temperance</link><guid isPermaLink="false">https://blog.caseitsolutions.com/p/the-case-for-temperance</guid><dc:creator><![CDATA[J Scott Pitman]]></dc:creator><pubDate>Fri, 21 Nov 2025 14:03:21 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!tb6S!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F551bf9e3-c81c-42fd-bd98-f8c0d95ebd36_950x360.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!tb6S!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F551bf9e3-c81c-42fd-bd98-f8c0d95ebd36_950x360.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!tb6S!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F551bf9e3-c81c-42fd-bd98-f8c0d95ebd36_950x360.jpeg 424w, https://substackcdn.com/image/fetch/$s_!tb6S!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F551bf9e3-c81c-42fd-bd98-f8c0d95ebd36_950x360.jpeg 848w, https://substackcdn.com/image/fetch/$s_!tb6S!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F551bf9e3-c81c-42fd-bd98-f8c0d95ebd36_950x360.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!tb6S!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F551bf9e3-c81c-42fd-bd98-f8c0d95ebd36_950x360.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!tb6S!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F551bf9e3-c81c-42fd-bd98-f8c0d95ebd36_950x360.jpeg" width="950" height="360" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/551bf9e3-c81c-42fd-bd98-f8c0d95ebd36_950x360.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:360,&quot;width&quot;:950,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:22032,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://blog.caseitsolutions.com/i/179293498?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F551bf9e3-c81c-42fd-bd98-f8c0d95ebd36_950x360.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!tb6S!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F551bf9e3-c81c-42fd-bd98-f8c0d95ebd36_950x360.jpeg 424w, https://substackcdn.com/image/fetch/$s_!tb6S!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F551bf9e3-c81c-42fd-bd98-f8c0d95ebd36_950x360.jpeg 848w, https://substackcdn.com/image/fetch/$s_!tb6S!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F551bf9e3-c81c-42fd-bd98-f8c0d95ebd36_950x360.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!tb6S!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F551bf9e3-c81c-42fd-bd98-f8c0d95ebd36_950x360.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>There is a common theme I have observed with many solution-oriented platforms in the last several years. Platforms and their partners offer a myriad of prepackaged solutions or bespoke methodologies promising to enable customers to get their first solution live faster.</p><p>For the purposes of this post, I will use the term &#8216;accelerator&#8217; to encompass both pre-packaged solutions and bespoke methodologies.</p><p>When businesses are spending precious capital on new platforms, it is entirely understandable that they want to start seeing a return on that investment sooner rather than later.</p><p>The increased pressure of the impending deprecation of the SharePoint workflow engine has teams scrambling for an easy button as they look to migrate those legacy solutions to new platforms.</p><p>Nintex Automation K2, for example, offers a series of prepackaged solutions called Smart Starters. In contrast, many Nintex partners provide their own tools or methodologies to help them stand out in a crowded field of implementors, each promising faster time-to-first process-live.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!BbfQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbaa753f7-78b0-47bc-8040-1c7813a68ea8_1380x481.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!BbfQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbaa753f7-78b0-47bc-8040-1c7813a68ea8_1380x481.png 424w, https://substackcdn.com/image/fetch/$s_!BbfQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbaa753f7-78b0-47bc-8040-1c7813a68ea8_1380x481.png 848w, https://substackcdn.com/image/fetch/$s_!BbfQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbaa753f7-78b0-47bc-8040-1c7813a68ea8_1380x481.png 1272w, https://substackcdn.com/image/fetch/$s_!BbfQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbaa753f7-78b0-47bc-8040-1c7813a68ea8_1380x481.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!BbfQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbaa753f7-78b0-47bc-8040-1c7813a68ea8_1380x481.png" width="1380" height="481" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/baa753f7-78b0-47bc-8040-1c7813a68ea8_1380x481.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:481,&quot;width&quot;:1380,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:26658,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.caseitsolutions.com/i/179293498?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbaa753f7-78b0-47bc-8040-1c7813a68ea8_1380x481.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!BbfQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbaa753f7-78b0-47bc-8040-1c7813a68ea8_1380x481.png 424w, https://substackcdn.com/image/fetch/$s_!BbfQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbaa753f7-78b0-47bc-8040-1c7813a68ea8_1380x481.png 848w, https://substackcdn.com/image/fetch/$s_!BbfQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbaa753f7-78b0-47bc-8040-1c7813a68ea8_1380x481.png 1272w, https://substackcdn.com/image/fetch/$s_!BbfQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbaa753f7-78b0-47bc-8040-1c7813a68ea8_1380x481.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Smart Starters (Apps) in Nintex Automation K2 Workspace</figcaption></figure></div><p>And some of these are great approaches, but what I feel needs to be said is to proceed with caution when adopting a framework or methodology. </p><p>Think back to grammar school and early math classes. In the same way that you were discouraged from using a calculator until you could prove you understood addition, you should avoid leaning on an accelerator for help until you are familiar with the platforms. </p><p>An accelerator should not be used in place of understanding how to use a platform effectively.</p><p>I have recently said in class that K2 is not highly opinionated regarding how it is implemented when crafting a solution. There are a few solid rules that you should never break, like using the API to make changes to a running workflow from within that same workflow, thus creating the digital equivalent of a bootstrap paradox, or, in DBA terms, database locks. </p><p>That is both the joy and the challenge of working with K2. </p><p>There are multiple ways to achieve various goals in the platform. It is a primary reason that when speaking with seasoned K2 consultants, their first words in response to many questions will most likely begin with, &#8220;It depends.&#8221;</p><p>It isn&#8217;t deflection; it is just an honest response from a wise consultant who knows there are options for addressing business requirements, and that your choices should be driven by an understanding of the fuller picture of what is trying to be accomplished. </p><p>The myriads of options can present a challenge to a new K2 developer, and it is that glut of choice which drives the appetite for accelerators.</p><p>Used in the proper context, accelerators can be an immense help in providing direction, but they are not without risk.</p><p>Accelerators are generally meant to obscure complexity in exchange for velocity. Build new solutions faster without going too deep. The risk here is that K2 is already obfuscating complexity in exchange for visual design tooling and reusability. Many times, accelerators try to obfuscate the perceived complexity of K2. What do you get when you obfuscate complexity that is obfuscating complexity? New complexity!</p><p>Am I suggesting you don&#8217;t use accelerators? Absolutely not. They can be great tools, but they aren&#8217;t meant to be a substitute for knowing how to leverage the software&#8217;s features.</p><p>Methodologies or &#8220;better&#8221; practices can serve as excellent starting points and guides for managing your solutions on the K2 platform.  The K2 Center of Excellence materials on the <a href="https://community.nintex.com">K2 Community</a> website are a good resource for approaches that can help your foray into K2 development go smoothly. Just don&#8217;t feel you are obligated to craft your solutions exactly as shown in those documents.  Find what works for you and your organization.</p><p>When using something like a Smart Starter, for example, a K2 developer is going to be beholden to the K2 product team&#8217;s opinion on how to build a solution. K2 uses its own product to make K2, so its understanding of how to build with K2 is constantly evolving. </p><p>A K2 developer needs to know how K2 solutions are put together so that they can maintain a prepackaged solution or customize it to meet business-specific requirements.</p><p>My recommendation is to take the time to build your first solution from scratch when getting started with K2. Learn how the parts fit together, how they behave, and how you troubleshoot problems. Use accelerators as a cheat code to gain inspiration for building your solution, but make it yourself. The hands-on experience will serve you well as you move into more complex solutions, or if you decide to adopt an accelerator, you will be in a much better position to both customize and maintain your project.</p><p>What do you think? I would love to hear your thoughts on different approaches for getting to your first process live.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.caseitsolutions.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading Case IT Solutions! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Making the case for another K2 blog.]]></title><description><![CDATA[New blog, who dis?]]></description><link>https://blog.caseitsolutions.com/p/coming-soon</link><guid isPermaLink="false">https://blog.caseitsolutions.com/p/coming-soon</guid><dc:creator><![CDATA[J Scott Pitman]]></dc:creator><pubDate>Tue, 18 Nov 2025 19:19:44 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!H_Wg!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F597da14b-102a-45c0-9d7b-1569872fcd0f_459x459.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>On the heels of a successful series of K2 Mastery classes that I had the fortune of delivering with K2 Product Manager, Codi Kaji, I thought it was time that I started to write down all my various K2 musings.</p><p>Three sessions were not a lot of time to go over a laundry list of topics, so the hope is that I am going to be able to dive a bit deeper and focus on many topics that I did not have the opportunity to go into as much depth as I would have liked.</p><p>I&#8217;d be lying if I said there was going to be any sort of schedule to these posts. Most of it will be driven by the intersection of available time and inspiration.</p><p>So many more topics to dig deeper into like custom smart forms controls, service brokers and other customization topics that do not get as much attention as they deserve as I feel it is beneficial to know exactly how far you can push the platform in a supported way. </p><p>Like Codi mentioned in the class, K2 isn&#8217;t low code so much as it is more code, meaning that while you can do a lot without writing a single line of code, when you do want to write code it is with more purpose and more reusability.</p><p>Customizations are my personal favorite, and other topics will be touched on. Please feel free to drop me a line at info@caseitsolutions.com if you have any topic suggestions. </p><p></p><p></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://blog.caseitsolutions.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://blog.caseitsolutions.com/subscribe?"><span>Subscribe now</span></a></p>]]></content:encoded></item></channel></rss>