Any app you intend to sell on the Atlassian Marketplace must have licensing features implemented. These features control the use of the app in the Atlassian product.
In the Atlassian product, the Universal Plugin Manager (UPM) checks the validity of app licenses. The Atlassian product reports the licensing status of the instance to the app in each request. The UPM provides an API that apps use to access the Atlassian licensing system for its license checks.
Atlassian offers discounted and no-charge app licenses to certain types of organizations such as academic institutions or charitable organizations.
To support education and encourage the next generation of software developers, Atlassian offers all of our software at a 50% discount to qualified academic institutions. Paid via Atlassian apps are also available to qualified institutions at the same reduced price.
For more information, see Purchasing & Licensing FAQ.
Atlassian supports organizations that seek to do good in the world. Charitable organizations can apply for no-cost Community licenses, and once they have this license for any Atlassian product, they can request additional licenses from Atlassian sales representatives, including Community licenses for apps they obtain through the Marketplace.
Your customers can apply for an Atlassian Community license by filling out an Atlassian Community License Application Form.
Customers with an existing Community license can request a Community license for your app by contacting the Pricing, Billing and Licensing help.
Your app should:
To implement licensing for Atlassian Connect, you need to:
enableLicensing
flag in the app descriptor for the applic
URL parameter for all incoming requests/addons/{appKey}
to get additional license information for each applicationThe result of a license check by the Atlassian app is cached for 5 minutes.
To implement licensing in an app, set the enableLicensing
flag in
the app descriptor file (atlassian-connect.json
) to true. Any app intended for sale should have
this flag enabled.
1 2{ "name": "Hello World", "key": "hello-world", "description": "Atlassian Connect app", "baseUrl": "http://www.example.com", "enableLicensing": true }
This tells UPM to check and report licensing status to the app. On the other hand, if you are using a app strictly for internal use or you plan to distribute it freely on the Marketplace, this should be set to false.
Each incoming request from the Atlassian product site includes a query parameter named lic
.
1 2http://....?lic=active
Your app should check this value to determine the license status of the site associated with
the current request. The lic
parameter may have either of the following values:
active
: the license is valid for this instance and appnone
: no license is presentIn addition to the lic
parameter, an app can use the REST API resource
/addons/{appKey} provided by Atlassian Connect to get an instance's license
for this app. Note, you will need to declare READ
scope in order to use this resource.
You can test licensing-related behavior of your app in a local development environment, but there's no way to replicate the interaction with the UPM and Atlassian Marketplace.
In the production environment, the Atlassian Marketplace serves licenses for new subscribers, and the app interacts with the Marketplace to get the license state.
Installing your app in a cloud instance using an access token allows instance administrators to modify the license status of the app. This lets you ensure that your app functions properly in all license statuses.
Rate this page: