I am new to atlassian development. I am on cloud version of atlassian. I want to call an external api via http, and display its result in confluence page UI. I want that every new page that is created in confluence of my organization has this section with a link/button to call the external api, and on click display the results of api call (string) on confluence UI.
Can I write a small Javascript/ client side script or macro for it? OR do i have to create a forge application? Also how is forge application integrated in the confluence environment? Please share direction to look into.
For anyone looking to get started following steps helped me -
Forge prompts you to select a template to help you start building the app. select the category UI kit and then the template confluence-content-byline
. (You can select from any confluence module where you want your app to run on UI - https://developer.atlassian.com/platform/forge/manifest-reference/modules/confluence-content-action/. This is where your app will be placed for some action/ click on UI.)
Update the manifest to include the required permissions manifest.yml
modules:
jira:issuePanel:
- key: my-test-panel
function: main
title: testApp
icon: https://developer.atlassian.com/platform/forge/images/icons/issue-panel-icon.svg
function:
- key: main
handler: index.run
permissions:
scopes:
- 'read:jira-work' // if you want to read from jira page
external:
fetch:
backend:
- 'myapiurl.com' // give permission to external app url
app:
id: <your-app-id>
Note - When using forge you will be running in atlassian's cloud environment.