Atlassian Confluence

This Integration allows full access to the Confluence REST API from your application. Fusebit's multi-tenant approach makes it easy for you to manage multiple Confluence connections on behalf of your app's users. Our Node.js-based programming model and lightweight deployment story make it easy to customize the Integration with any necessary business logic.

Getting Started

  1. Use the Fusebit Management PortalFusebit Management Portal - The Fusebit Management Portal enables you to easily setup and manage all your integrations in one place. Link: https://manage.fusebit.io to create an account and log in.
  2. Create a new Integration using one of our Atlassian Confluence templates
  1. You will then be able to run the Integration, download it's code, modify it, and deploy your changes. Detailed instructions on how to get started with an Integration are available here.

Invoking the Confluence API

The Integration template comes pre-configured with some example calls that invoke Confluence's API, for example:

const resources = await atlassianClient.getAccessibleResources();

const confluenceCloud = resources.find((resource) => resource.scopes.includes('search:confluence'));
const confluence = atlassianClient.confluence(confluenceCloud.id);

const result = await confluence.get('/content');
console.log(result);
  
ctx.body = {
  message: `Found ${result.size} spaces in Confluence Cloud ${confluenceCloud.id}`,
};

Since Atlassian does not publish a Node.js Confluence SDK, Fusebit provides a thin client that sits on top of the Confluence REST API. Fusebit ensures the SDK object (atlassianClient) is already bootstrapped with the Atlassian credentials of the user invoking the Integration. You do not need to worry about obtaining an access token or refresh token for the user -- Fusebit does that for you automatically.

Creating your own Confluence App

Out of the box, Fusebit's confluence Integration uses our own demonstration App in Atlassian. This is only done to make it easier for you to get started, however you will need to register your own App for use in production. Before you can distribute your App, you need to go through Atlassian's manual review process. Read through this guide to learn more about the process and to stay on top of any approval requirements.

  1. Go to your Atlassian Developer Console and create a Developer Account. Once created, select Create app > OAuth 2.0 Integration. You will be taken to the main Overview screen for your app
  1. If the method(s) you want to invoke against the Confluence API require specific permissions, add the appropriate scopes under Permissions. All the "Read" permissions for Confluence are necessary to run the Fusebit provided example.

🚧

When switching a Connector to a different Atlassian App, all IdentityIdentity - An identity is a unique relationship one of your customers has with a service. An identity can be used by multiple integrations to act on that service on behalf of your customer. objects associated with that Connector will be deleted. Your users will need to re-authenticate against Atlassian after you make the change.

  1. Back in the Fusebit Portal, find the Integration you would like to connect to the new Confluence App you just created. Select the ConnectorConnector - A connector is the package from Fusebit that manages the relationship between one or more integrations and a specific service. One of the most common types of connector is an OAuth connector, which takes care of the OAuth negotiation between your customers and the service you're integrating, so that you don't have to! tied to that integration. Select Enable Production Credentials in the Connector Configuration and then paste in the app scopes you just created.
  1. Next, from the App Details > Authentication Details section for your Confluence app, retrieve the Client ID and Client Secret and paste them into the respective fields in the Fusebit Connector.
  1. Next, retrieve the URL provided by Fusebit under OAuth2 Redirect URL and paste it into your Confluence App under Authorization > *Callback URL.
  1. (Optional) Finally, if you want to share your app outside your Atlassian account, enable your app for public distribution by navigating to Distribution. You may have to raise a ticket to Atlassian's Marketplace Support Service Desk to get the review process started.

πŸ‘

Good Job!

Now, any time a new user installs your Integration, you should now see your Atlassian App information displayed during the authorization step.

Receiving events from Confluence

πŸ“˜

Atlassian does not currently support webhooks functionality for Confluence through OAuth Apps. Reach out to let us know if you are interested in this, and we can notify you it becomes available!

Helpful References

Want to learn more about how to work with the Confluence REST API? Here's some helpful references:


Did this page help you?