If your server app used a non-Atlassian licensing system before becoming a paid-via-Atlassian app, you can convert your proprietary license keys into new Marketplace license keys. To convert an existing license into a Marketplace license, you use the Atlassian License Service API, as described here.
Before you can use the Atlassian License Service API, you need to be approved for access by the Atlassian Marketplace team. This is necessary because the Atlassian Marketplace team audits usage and monitors the performance of the API very closely, subject to the Atlassian Marketplace Vendor Agreement.
To be approved for access, file an issue in the Marketplace Vendor Support Portal. Keep an eye on the issue (or watch for notifications) to find out when you are ready to go.
After getting the go-ahead from the Marketplace team, use the Atlassian License Service API as described here. The service accepts JSON data via HTTP POST and returns a JSON response.
The URL for the service is:
1 2https://marketplace.atlassian.com/rest/1.0/plugins/KEY/license
In your request:
KEY
with the your app key. This is the same key you supplied when submitting your app to the Marketplace. It also appears in the app descriptor (atlassian-plugin.xml
) for your app.Content-Type
is application/json
.In request body, provide details about the license to be migrated. For example, for a 2000-user commercial license, the body would look like this:
1 2{ "id": "1000", "email": "customer@example.com", "firstName": "Jane", "lastName": "Smith", "organisationName": "Example Customer", "isoCountryCode": "US", "startDate": "2011-05-01", "endDate": "2012-05-01", "licenseType": "COMMERCIAL", "users": 2000 }
And a successful response would look like this:
1 2{ "id": "1000", "sen": "SEN-4839484", "licenseKey": "888BKQ0OD8oPeNpVj11Lwz8U08GytI1qJ8Z2I=X02eu" }
The service accepts the following values in the request.
Field | Required | Type | Description |
---|---|---|---|
| yes | String | A unique license identifier. The identifier prevents accidentally importing the same license twice. This can be any non-empty string; it only must be unique within the set of all licenses for this particular app. |
| yes | String | The licensee's (end customer's) email address. If there is not already an Atlassian account with this email address, the service creates one. |
| yes | String | The licensee's (end customer's) identifying information. Used to create the new account on my.atlassian.com. This is only done if the account did not previously exist. If the account exists, the service ignores these fields. |
| no | String | Address information. Used for licensees (end customers) without an account on my.atlassian.com. The service creates the new account with this data. Otherwise, if the account exists, the system ignores this information. |
| yes | String | The ISO code for the licensee's (end customer's) country. The service can only import a licenses for Marketplace-authorized countries. |
| yes | String | The date on which support for this license started. This value must have a format of: |
| yes | String | The date on which support for this license ends. This value must have a format of: |
| yes | String | Must be |
| yes | Integer | The maximum number of users (or, for Bamboo, the maximum number of remote agents) supported by this license, or |
| no | String | If set, the imported license will be associated with the Atlassian Solution Partner organization associated to this email address. |
Notes:
An HTTP 200 status indicates the license was converted successfully. The JSON response body contains the following:
Item | Description |
---|---|
| The same unique identifier specified in the request. |
| The new Support Entitlement Number for this license. |
| The encoded Marketplace-license key. |
If the call fails, the service returns one of the following HTTP statuses:
Item | Description |
---|---|
| Reasons for this error include: the request did not contain a valid JSON object, the If available, the response returns additional detail about the error. |
| You did not provide valid basic authentication credentials. |
| The credentials you provided were not associated with the vendor of the specified app or the vendor is not authorized to use the API. |
| The app key you specified in the URL does not correspond to any app listed on the Atlassian Marketplace. |
| A license with the same |
Rate this page: