Forums

Articles
Create
cancel
Showing results for 
Search instead for 
Did you mean: 

Atlassian Goals Workaround for Reporting / missing API

Birgit P
Contributor
June 24, 2025

Like many users of Atlassian Goals, we’ve been facing limitations due to the lack of official APIs and reporting.
To address this, we’ve devised a workaround using the Goals-Slack integration. This approach leverages Slack’s API to retrieve goal updates.

🔧 How the Workaround Works

Install the Atlassian Home App in Slack
This app posts updates whenever goals are modified—if you’re subscribed to a goal or tag. To centralize these updates:

  • Create a dedicated Slack channel.

  • Add the Atlassian Goals bot to the channel.

  • Subscribe the bot to all relevant goals or tags.

image.png

 

Set Up a Slack Bot to Monitor Updates
Slack supports bot applications with detailed documentation:

  • Create a Slack bot using the standard bot setup: Slack Apps.

  • Add your bot to the dedicated channel.

  • Ensure it has read access to messages.

 

Retrieve Goal Updates via Slack API
Reading messages is straightforward using Slack’s REST API. Use the conversations.history endpoint to pull chat messages from the channel.
You will have to also use the conversations.list method to find out the channel ID once.


Process and Store Updates
We built a small Node.js service that:

  • Monitors the Slack channel.

  • Parses goal updates into structured JSON.

  • Stores entries in a lightweight database (tinyDB)

The parsing is relatively clean, however, we created the following fields:

 

 {
      "id": "1750760000295-at80rb",

      "timestamp": "2025-06-23 09:16",

      "raw_ts": "1750670171.202209",

      "author": " xyz",

      "goal": "ELIER-96",

      "title": "Project Title",

      "previousStatus": "",

      "currentStatus": "On track",

      "previousTime": "",

      "currentTime": "Oct-Dec",

      "previousProgress": "",

      "currentProgress": "100%",

      "message": "Update message."

    },

It is useful to have quite a few updates inside of Slack - this way you can a) identify all your goals and b) deal with subtleties on how changes in metrics, times, editing are provided in the raw JSON, handling UTF8, emojis,... chatGPT and regular expressions are your best friend.

 

Expose the Data via API
The service exposes the data through an Express-based REST API, allowing downstream systems to access structured goal data. That can have various formats: Markdown, csv, html.. and preformatted Confluence jsonbody code.
This is easy - once you have the data, you can expose it it any format needed.

image.png

 

Automate Page Creation in Confluence
Using Confluence automation, you can trigger webhook calls to generate pages:

  • Automatically upon receiving goal updates.

  • On-demand via smart buttons.

 



🧪 Current Status and Next Steps

We’ve only just deployed this solution and are still working how we structure the resulting Confluence pages and reports.

 

If you're tackling the same issue, we hope this inspires or accelerates your own efforts!

Also, if you’re a fellow Goals user, please consider voting for feature requests related to APIs, reporting, and automation support—we’d all benefit!

Cheers,
Birgit

P.S. In case you’re wondering: this took ChatGPT and about 3 hours of playing. ChatGPT excels with well-documented REST APIs 🙂



1 comment

Comment

Log in or Sign up to comment
Allan Maxwell
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
June 24, 2025

pretty fancy

TAGS
AUG Leaders

Atlassian Community Events