Access to external REST API in Forge?

Hi, is there any support in Forge to access external API endpoints or at least https://automation.atlassian.com endpoints? Or at least is there a plan for it?

Got it, perhaps fetch api would do it. Will setup a try.

I’m curious to hear what you discover @RichardVencu - are you trying the calls from the server through an invoke proxy?

Hi. No, I am simply trying to integrate to external apps via REST API. Right now I was able to store everything from Forge App on Jira instance and manipulate this integration via Automation rule triggered by Jira event initiated via the Forge App.

I guess that the Fetch api would allow access to external apis. I am not really sure how well will this work in the context of user trusting the app not to breach GDPR and such regulations but I see Atlassian has in place the question if the app processes personal data or not. Right now I am happy in the Jira only context so I do not need to worry about data leaving Jira servers via the Forge app.

Hi @RichardVencu

As far as I know you make REST calls to external/public APIs. You can check this documentation: https://developer.atlassian.com/platform/forge/js-api-reference/fetch-api/

I was able to call some public APIs to fetch some generic information. One thing notices is that you can make calls only to HTTPS end points but not HTTP ones.

I am also curious about the user trust part. Atlassian promotes forge as an isolated environment where sensitive data stays in Atlassian servers yet you can make calls to external services in Forge apps and expose information to outside.

Basically, using the Automation those calls are really trivial to make. But I guess the Automation is part of the Jira user agreement unlike Forge apps that might require consent to fit into the privacy terms of the existing agreement.
At this page App management (atlassian.com) I noticed once you click on Distribute link you are asked about some privacy information handling as well as your user terms that legally should cover the external API part if any.

I see. My I ask how do you trigger events from a Forge app?

Of course, actually I am creating a log work using the Product fetch API so I am using the built in REST interface to Jira.

Then in Automation, I make a rule which is triggered when worklog is created, I do something to export the information to the external system. Also in Automation is much easier to collect other info from the issue and project than coding it in the Forge app.

I think using Fetch API another way is to trigger an Automation rule that is using the Incoming Webhook trigger, then use this webhook endpoint inside the Forge app to make something happen with automation. Still everything is inside Jira environment and no personal data is moved outside via the Forge app