<!-- 
RSS generated by JIRA (9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b) at Mon Feb 12 10:03:13 CET 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>Magnolia - Issue tracker</title>
    <link>https://jira.magnolia-cms.com</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-uk</language>    <build-info>
        <version>9.4.2</version>
        <build-number>940002</build-number>
        <build-date>19-01-2023</build-date>
    </build-info>


<item>
            <title>[MGNLHOOK-331] Add children paths when `recursive` is true</title>
                <link>https://jira.magnolia-cms.com/browse/MGNLHOOK-331</link>
                <project id="17487" key="MGNLHOOK">Magnolia Webhooks</project>
                    <description>&lt;p&gt;&lt;b&gt;Case&lt;/b&gt;&lt;br/&gt;
We have a home page with, let&apos;s say, 10 subpages. I make changes to the main page and three subpages. On the main page, I click &quot;Publish including subnodes&quot;. Webhook sends me a &quot;path&quot; only to the main page - the Next.js rebuilds only the main page, and the other subpages remain unchanged.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Workaround&lt;/b&gt;&lt;br/&gt;
The `recursive` flag tells that `Publish including subnodes` was used.&lt;br/&gt;
The code triggered by the webhook needs to find the subnodes.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Solution&lt;/b&gt;&lt;br/&gt;
Webhook to add extra parameter when `recursive` is true containing all published children.&lt;/p&gt;

&lt;p&gt;e.g&#160;&lt;br/&gt;
?eventld=fe38b454-ca13-4c96-bfe7-bba8f0895160&amp;amp;path=%2F777&amp;amp;workspace=website&amp;amp;eventType=PUBLISHED&amp;amp;nodeType=mgnI%3Apage&amp;amp;recursive=true&amp;amp;&lt;b&gt;subnodesPaths=%2F777%2F1,%2F777%2F123&lt;/b&gt;&amp;amp;eventDate=2022-06-29T23%3A35%3A47.652&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Future&lt;/b&gt;&lt;br/&gt;
Webhook to also send paths where published paths are referenced&lt;/p&gt;</description>
                <environment></environment>
        <key id="126131">MGNLHOOK-331</key>
            <summary>Add children paths when `recursive` is true</summary>
                <type id="14" iconUrl="https://jira.magnolia-cms.com/secure/viewavatar?size=xsmall&amp;avatarId=10895&amp;avatarType=issuetype">Story</type>
                                            <priority id="6" iconUrl="https://jira.magnolia-cms.com/images/icons/priorities/neutral.gif">Neutral</priority>
                        <status id="10008" iconUrl="https://jira.magnolia-cms.com/images/icons/subtask.gif" description="">Backlog</status>
                    <statusCategory id="2" key="new" colorName="default"/>
                                    <resolution id="-1">Unresolved</resolution>
                                        <assignee username="-1">Unassigned</assignee>
                                    <reporter username="bstaryga">Bartosz Staryga</reporter>
                        <labels>
                    </labels>
                <created>Tue, 24 Jan 2023 10:26:30 +0100</created>
                <updated>Mon, 23 Oct 2023 12:30:13 +0200</updated>
                                                                                <due></due>
                            <votes>0</votes>
                                    <watches>3</watches>
                                                                                                                <comments>
                            <comment id="339604" author="czimmermann" created="Tue, 24 Jan 2023 11:30:35 +0100"  >&lt;p&gt;&lt;a href=&quot;https://jira.magnolia-cms.com/secure/ViewProfile.jspa?name=bstaryga&quot; class=&quot;user-hover&quot; rel=&quot;bstaryga&quot;&gt;bstaryga&lt;/a&gt;&#160; Thanks for the suggestion. &lt;br/&gt;
I like the idea that the webhook tells you that it has published a whole tree somehow.&lt;/p&gt;

&lt;p&gt;I&apos;m wondering if webhook should be responsible for sending list of all children. I guess the next app could do that without too much trouble with a rest call to the magnolia instance, right?&lt;/p&gt;

&lt;p&gt;Do you think there could be an issue with length of querystring? What if its 100 children? Or 2000?&lt;br/&gt;
But a browser is not involved so maybe it is a possibililty..&lt;/p&gt;

&lt;p&gt;Have you seen this feature of sending list of items on webhooks feature of other CMS?&lt;/p&gt;</comment>
                            <comment id="339606" author="bstaryga" created="Tue, 24 Jan 2023 11:40:21 +0100"  >&lt;p&gt;&lt;b&gt;&lt;em&gt;I like the idea that the webhook tells you that it has published a whole tree somehow.&lt;/em&gt;&lt;/b&gt;&lt;br/&gt;
This bit is already implemented via&#160;the &lt;b&gt;recursive&lt;/b&gt; flag &lt;img class=&quot;emoticon&quot; src=&quot;https://jira.magnolia-cms.com/images/icons/emoticons/smile.png&quot; height=&quot;16&quot; width=&quot;16&quot; align=&quot;absmiddle&quot; alt=&quot;&quot; border=&quot;0&quot;/&gt;&lt;/p&gt;

&lt;p&gt;&lt;b&gt;&lt;em&gt;guess the next app could do that without too much trouble with a rest call to the magnolia instance, right?&lt;/em&gt;&lt;/b&gt;&lt;br/&gt;
Yes it could, but that means extra work that developers need to do:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;Create an endpoint returning only children of nodes&lt;/li&gt;
	&lt;li&gt;Make and extra request to fetch that data&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;I&apos;m aiming here to make the life of devs easier &lt;img class=&quot;emoticon&quot; src=&quot;https://jira.magnolia-cms.com/images/icons/emoticons/tongue.png&quot; height=&quot;16&quot; width=&quot;16&quot; align=&quot;absmiddle&quot; alt=&quot;&quot; border=&quot;0&quot;/&gt;&lt;/p&gt;

&lt;p&gt;Also, the webhook will know exactly which subpages were published, as Magnolia knows if the page was modified. It can send only the published subnodes, not all. In case we have 100 subnodes, we could avoid rebuilding all of them.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;&lt;em&gt;Do you think there could be an issue with length of querystring? What if its 100 children? Or 2000?&lt;/em&gt;&lt;/b&gt;&lt;br/&gt;
Using GET, you are correct - no browser, no issue&lt;br/&gt;
Using POST - this param is sent as payload&#160; - no issue&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Have you seen this feature of sending lists of items on the webhooks feature of other CMS?&lt;/b&gt;&lt;br/&gt;
Nope, but I did not do any special research &lt;img class=&quot;emoticon&quot; src=&quot;https://jira.magnolia-cms.com/images/icons/emoticons/tongue.png&quot; height=&quot;16&quot; width=&quot;16&quot; align=&quot;absmiddle&quot; alt=&quot;&quot; border=&quot;0&quot;/&gt;&lt;/p&gt;</comment>
                            <comment id="341403" author="JIRAUSER22428" created="Thu, 2 Feb 2023 13:22:12 +0100"  >&lt;p&gt;We&apos;re building a POC for our client with Magnolia Headless and NextJS with Revalidation on demand after publishing a page. We have about 200-300 pages with many branches. &#160;We&apos;ll try the way with another rest call to magnolia to get the subnodes and see how it works, although it looks like it would be much easier if the weebhook provided the subnodes.&lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                            <customfield id="customfield_14166" key="com.okapya.jira.checklist:checklist">
                        <customfieldname>Acceptance criteria</customfieldname>
                        <customfieldvalues>
                            
        <checklist>
        <![CDATA[
                            




                
                                    <div class="o-completion" style="display: flex; flex-shrink: 0;"><span  class="aui-lozenge aui-lozenge-complete" style="font-size: 12px; font-weight: normal; display: flex; flex-direction: row; align-items: center;" ><span style="padding-right: 4px; vertical-align: middle;"><svg width="15" height="15" viewBox="0 0 15 15" xmlns="http://www.w3.org/2000/svg" fill="white"><path clip-rule="evenodd" d="m10.41037,3.42544l-7.86501,0c-0.72395,0 -1.31084,0.58688 -1.31084,1.31084l0,7.86508c0,0.7239 0.58689,1.3108 1.31084,1.3108l7.86501,0c0.724,0 1.3109,-0.5869 1.3109,-1.3108l0,-7.86508c0,-0.72396 -0.5869,-1.31084 -1.3109,-1.31084zm-7.86501,-0.65542c-1.08593,0 -1.96626,0.88032 -1.96626,1.96626l0,7.86508c0,1.0859 0.88033,1.9662 1.96626,1.9662l7.86501,0c1.086,0 1.9663,-0.8803 1.9663,-1.9662l0,-7.86508c0,-1.08594 -0.8803,-1.96626 -1.9663,-1.96626l-7.86501,0z" fill-rule="evenodd"/><path d="m5.09049,10.18526l-1.82767,-1.82766l-0.78479,0.78479l2.61246,2.61246l5.38758,-5.38754l-0.78483,-0.78479l-4.60275,4.60274z"/></svg></span><span>Empty</span></span></div>
                        ]]>
    </checklist>


                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10111" key="com.atlassian.jira.toolkit:reporterdomain">
                        <customfieldname>Company</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>magnolia-cms.com</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_10031" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of First Response</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Tue, 24 Jan 2023 11:30:35 +0100</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_12730" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_14151" key="com.atlassian.jira.toolkit:message">
                        <customfieldname>Docu info</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_10246" key="com.pyxis.greenhopper.jira:gh-epic-link">
                        <customfieldname>Epic Link</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>MGNLHOOK-230</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10061" key="com.atlassian.jira.toolkit:lastusercommented">
                        <customfieldname>Last comm is not jira-dev</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>true</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10071" key="com.atlassian.jira.toolkit:lastupdaterorcommenter">
                        <customfieldname>Last participant</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>czimmermann</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_13136" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            1 year, 1 week, 3 days ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_10020" key="com.atlassian.jira.toolkit:attachments">
                        <customfieldname>Number of attachments</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10150" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname>Number of comments</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>3.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10011" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>bstaryga</customfieldvalue>
            <customfieldvalue>czimmermann</customfieldvalue>
            <customfieldvalue>mmilas</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                <customfield id="customfield_10833" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|y08w5u:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10244" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>9223372036854775807</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_12430" key="com.atlassian.teams:rm-teams-custom-field-team">
                        <customfieldname>Team</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[26]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_14145" key="com.intenso.jira.issue-templates:issue-templates-customfield">
                        <customfieldname>Template</customfieldname>
                        <customfieldvalues>
                            

    <customfieldvalue>Default subtasks template</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_15131" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Time in Discovery</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_13933" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Urgency (resolution)</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="15724"><![CDATA[Normal]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                </customfields>
    </item>
</channel>
</rss>