Nested cloud macros in Confluence. Is it really supported?

I’m trying to investigate issue when one macro is used within other Confluence bodied macro.
In my case it’s our News Teaser macro added to Navitabs - Tabs for Confluence Cloud.
Problem is: all AP methods I tried return neither success nor error. I checked AP.request() and AP.getContext(). Both have same behavior.

Hi @andrey,

While static macros that don’t require the use of AP might work well in this scenario, I think you can say that the concept of nested macros is generally not well supported in the cloud. In the specific scenario mentioned, apps like Navitabs would have to provide a bridge to your iframe like Atlassian does to support the AP calls from your macro.

So, it’s more that Navitabs doesn’t support nested macros that use AP, and there’s probably nothing you can do on your end (except maybe let them know).


Hi Sven

Oli from bitvoodoo here. You mean if we create a bridge to the iframes within our Tabs app it may could work for the nested macro.

You tried it out?.
Interesting idea. May we can try this @andrey together with @sascha.haeusler from our team :slight_smile:

Thanks for the input.

1 Like

I have never tried it out myself but from reading about it, debugging Atlassian code, and looking at the readme that’s what I understood from it. :slight_smile:

EDIT: Well, looking at it in more detail it might not be super practical because it looks like Navitabs would have to provide “its own all.js” that the nested macro would have to load and use in place of the actual all.js… but if you two want to work together to make your apps compatible this looks like it’s the way you’d have to go.


Update: Flagged this with the relevant team, they’ll be circling on this thread shortly to provide more context. Standby!


I’m happy to try something. Looking forward for response from Atlassian


@SimonKubica Any news on that?

Also, resizing is not supported, as I mentioned here: Macro with body does not properly resize child macros

I assume that this is part of the issue. Could the team have a look here as well?