Atlassian Marketplace Connector

Topics


Overview

If you are developing for Atlassian Marketplace it has a very good Vendor Management portal with an Open API to pull data from. This portal might be a better source of data for your Accounts in journy.io as opposed to your CRM or journy.io might be a way for you to get proper CRM as a result of an integration.

Let’s try to work it out!

Pre-requites

If you have engineering team in place and they are available:) you can task them with pulling data from Atlassian Marketplace API on sequence and using journy.io API to connect.

The reality is engineering teams are rarely available and/or you might want to POC it before make a commitment to assign your engineering team on it so you develop something you would need to maintain and evolve in the future.

Therefore, we will be using No-code solution like Make.com in this guide plus share some ready to use blueprints. But you can do it with any other platform you are proficient in.

We will be also using message bus like Segment.com, just because Make.com has a good integration with Segment plus journy.io are fully compatible with it. This will also give you long term possibility to change journy.io with another tool and/or send same data elsewhere.

Configuring Segment Source

Login to you Segmen account and click Sources > Add source

Type API in search and select HTTP API source to add

image-20240605-121653.png

Click Add source

image-20240605-121732.png

Put some good name and click click Add source

That’s it - now you have where to upload data with make.com

Configuring Segment Destination

Let’s connect now this Segment source with journy.io.

Logging to your journy.io account and click on Connections > Add connection

Select Segment

Segment connection will open up. Select on Source tab and click on Api key to copy it

Go to Segment and choose Destinations > Add destination.

Search for journy and select it

Select your Source and click Next

Put some good name and select Create Destination

Click on Api Key

And copy the key from journy.io that should be still in your Clipboard. Otherwise switch to journy.io and copy it again

Good - now you have Segment fully configured to receive data from No-code tool mike make.com and push into journy.io

Let’s now play with make.com

Make.com blueprint

Login to your make.com account.

Click Scenarios > Create new scenarios

Select More > Import Blueprint

Import the Blueprint Attached.

Your Atlassian vendor data

Click on Atlassian Marketplace Access Properties and specify your Vendor ID

Your Atlassian authorization token

Navigate to https://id.atlassian.com/manage-profile/security/api-tokens

Click Create API token

Copy your access token

Navigate to https://www.blitter.se/utils/basic-authentication-header-generator/

Put your email (the same you used to generate token) as username

 

and token as password to Generate Header

Copy Authorization Header generated. Should be “Basic ….

Get back to Make.com and insert it into Atlassian Marketplace Access Properties

Almost there!

Your Segment write key

Go to your Segment account and select your Source

Copy your Write Key

Go back to make.com and open Segment Access Properties and paste it there

You are there!

Making it work

You did all the work to start pulling your data from Atlassian Marketplace and pushing it to journy.io. We suggest to start with 1-2 test Licences/Accounts before upload in bulk and making it business as usual.

Test account

Before go all-in with integration you might want to test it out with 1-2 test account/licences. Go to your Atlassian Marketplace Vendor Portal and get 1-2 Entitlement Numbers for test licences you want to process

Go to Make.com and click on Atlassian Marketplace Access Properties

Put test Entitlement Number into respective property and assure that AppKey and LastUpdated are empty

Click Run once

If all good you will see all labels green

Also by clicking on execution counters you can trace end to end execution on all the steps.

Let’s go to Segment, select our Source and click Debugger tab to assure the message was sent

and finally let’s go to journy.io to check our Account created/updated

All active accounts

Once you tested it with 1-2 test licences you have 2 options:

  1. Bring all active accounts and move into https://releasemanagement.atlassian.net/wiki/spaces/journy/pages/edit-v2/2774433793#Final-configuration-in-journy.io

  2. or do https://releasemanagement.atlassian.net/wiki/spaces/journy/pages/edit-v2/2774433793#Final-configuration-in-journy.io and see how it works to for 1-2 accounts before uploading all active

Let’s bring all active licences to journy.io from Atlassian Marketplace.

Come back to your scenario in make.com (or any other No-code platform).

Click on Atlassian Marketplace Access Properties

  • Clear Entitlement Number

  • Specify your AddonKey (in case you want licences to a particular App)

  • Specify active in status field

  • Clear Last Updated if you have it

Click Run once

If all good you will see all labels green

Plus you can verify the amount of accounts/licences created.

Let’s go to Segment, select our Source and click Debugger tab to assure the messages were sent

and finally let’s go to journy.io to check our Account created/updated

Now you have all your active accounts in journy.io

Make it business as usual

Information at Atlassian Marketplace is updated regularly and you want all the changes replicated in journy.io to have up to date look at your clients. To make it happen we will configure an option to execute scenario on cadance (daily) and solicit only updates from Atlassian Marketplace.

Come back to your scenario in http://make.com (or any other No-code platform).

Click on Atlassian Marketplace Access Properties

  • Clear Entitlement Number

  • Specify your AddonKey (in case you want licences to a particular App)

  • Clear status

  • Specify Last Updated to make it yesterday for e.g. (if you want to run it daily)

{{formatDate(addDays(now; -1); "YYYY-MM-DD")}}

Click Run once and assure you get it in Segment and updated in journy.io

Now turn on scheduling and select a time of day you want to execute it.

Click Save.

You can check progress of execution anytime by clicking on History tab

Final configuration in journy.io

Check out a rich feature set of journy.io at https://releasemanagement.atlassian.net/wiki/spaces/journy/pages/2701623316.

Below we will show some quick gains that are also specific to Atlassian Marketplace Business.

Suggestion on Business Settings

Click on Settings > Business Settings and scroll to Account.

  • Select Website to pull client logo from

  • Select Maintenance End Date as renewal date

  • Shortlist Key Properties you want to see at overview tab (you still can see all of them at properties tab)

  • Setup Custom Links to access client Website, Licences and Transactions for client at Atlassian Marketplace

Suggestion on Stages Configuration

Click on Settings > Stages and select to Account.

Here’s the way we configured stages for ourselves …

Read more on how journy.io treat Stages and how you can define Stages at https://releasemanagement.atlassian.net/wiki/spaces/journy/pages/2709749787.

Note that I crossed out Health score in our configuration of the stages - you might not need it from Day 1. Check more on https://releasemanagement.atlassian.net/wiki/spaces/journy/pages/2709651465 for future needs.

What’s Next?

What else you can pull from Atlassian Marketplace?

We have not pulled all from the below, but here’s more or less a full menu what you can get from Atlassian Marketplace in addition. Feel free to reach to us if you need support with it.

What?

Why?

How?

What?

Why?

How?

Technical, Billing and Reseller Contacts

You might want to propagate it to your CRM via journy.io as journy has very good integration with most popular CRMs and might power your switch from one CRM to another one

Two options:

  1. Either additional properties to account - aka Name and email for each of 3x contacts

  2. Make them Users in journy.io, but suggestion to setup some Role property to differentiate Technical, Billing. Reseller Contacts from future App Users.

    1. amend make.com script above add Segment Identify() call for each contact

    2. following by Segment Group() call to connect user to account.

Transactions History

You might want to see all the purchases for clients as events - New, Upgrades, Renewals, Refunds

What are the next steps with journy.io?

You have done a lot but this is just the beginning of the journey to have the full potential of journy.io and full value out of it.

What?

Why?

How?

What?

Why?

How?

Segments

If you do Atlassian Marketplace business you might want to focus on high paying clients/licences and remove the noise of Free Subscriptions you have for volume.

Therefore, we suggest create Segments in journy.io to use through the App functionality.

https://releasemanagement.atlassian.net/wiki/spaces/journy/pages/2709422085

We suggest to create Segments by Tier/LicenceType (that’s the reason we do all the magic with Tier and Opportunity size in make.com script).

Or you can do it by MRR - either estimated via Calculated Property of Tier x AVG Price-per-Tier, or proper MRR you calculate from transactions (see above)

In-App Analytics

Probably the biggest value you can gain from bringing in-App analytics to journy.io (basically how people use your Apps).

If you use MixPanel or Amplitude you should be right at home - we would suggest to change integration to Segment and from Segment put it to MixPanel or Amplitude plus also journy.io.

https://releasemanagement.atlassian.net/wiki/spaces/journy/pages/2701623306

Suggestion to make it per Account (meaning all events from individual App users aggregated at account level).

For this use Entitlement Number as Anonymous ID for your Track() call.

If the future you can split per user but also aggregated per account by specifying proper Atlassian User ID for Track() call.

https://releasemanagement.atlassian.net/wiki/spaces/journy/pages/2697068976/The+Track+Spec#Tracking-events-on-user-AND-accounts!

Scores and Health Profiles

Once you bring in-App analytics to can aggregate it into Scores and Health Profiles to drive your further engagements and decisions

https://releasemanagement.atlassian.net/wiki/spaces/journy/pages/2701426736

https://releasemanagement.atlassian.net/wiki/spaces/journy/pages/2709651465

https://releasemanagement.atlassian.net/wiki/spaces/journy/pages/2709848087

https://releasemanagement.atlassian.net/wiki/spaces/journy/pages/2701393987

Playbooks

Once you have Scores and Health Profiles defined you can now automate Playbooks for your key Segments and engage with them - automatically or manually

https://releasemanagement.atlassian.net/wiki/spaces/journy/pages/2701459498

https://releasemanagement.atlassian.net/wiki/spaces/journy/pages/2701590544

https://releasemanagement.atlassian.net/wiki/spaces/journy/pages/2701426771

Intercom in your App

If you do Atlassian Marketplace business you probably know that there’s not much value talking to Technical, Billing and Reseller Contacts - you need to talk to real App users

https://releasemanagement.atlassian.net/wiki/spaces/journy/pages/2697920544

This is where journy.io will become supper powerful, namely:

  • Bring individual users in (you might not event identify them, Atlassian User ID will be enough)

  • Separate in-app Analytics per-user (just specify userID) while keeping it integrated per Account

  • Leverage Intercom integration in journy.io and your App to create engagement channel with your key users.

Proper CRM / change CRM

You can use journy.io as your CRM, but if you want more sophisticated (tier 1) solution you can leverage the fact that journy.io is a middle layer between your Apps and Tier 1 CRM + list of our Tier 1 CRM integrations. Thus you can use journy.io to power up switch from one to another.

https://releasemanagement.atlassian.net/wiki/spaces/journy/pages/2697756684

Optimize toolset / costs

If your solution is stable and you are more in business as usual mode there are couple of areas to optimize

  • Make.com

  • Segment

Make.com - you might get your engineering team to develop appropriate scripts and run them on cadance on your own servers/internet optimizing the cost of no-code platform.

Segment - super powerful and supper flexible solutions that gives you options to change tools/platforms in the future via configuration. But if you are committed to journy.io here’s our API/SDK to remove Segment on the way

https://releasemanagement.atlassian.net/wiki/spaces/journy/pages/2698117122