Last updated Mar 14, 2023

Rate this page:

Partner Offering Catalog

The partner offering catalog provides complete pricing details for both BTF (behind the firewall) and cloud products, including their related apps. The entire catalog can be fetched at once for product and pricing information, or you can fetch the details for a given product. This includes related app details.

Overview

As Atlassian is migrating to a new billing system (CCP), product and pricing information is served from both the new system for cloud products, and the legacy billing system (HAMS) for BTF products. The data structure between these two billing systems is quite different - but rather than combining them, we've deliberately kept them separate to ease adoption.

PAPI takes care of fetching active product and pricing information from both billing systems, and combines the responses for a unified experience.

Impact

We understand that some partners currently have catalog integrations for BTF products served out of HAMS. In order to keep the impact to existing integrations to a minimum, we opted to keep the data structure the same. For these partners, the change would be in terms of implementation details, how the data is fetched and from where - but the underlying data mapping for BTF products would remain the same.


Queries

The catalog queries are located under PartnerOfferingCatalogApi namespace

Catalog API namespace

NameDescriptionFilterRequired
partnerOfferingCatalog Get all cloud and BTF product offering and pricing information --
partnerOfferingDetails Get offering and pricing details for a given cloud or BTF product, including related apps wheretrue

Offering Catalog

Offering Catalog is used to fetch the entire offering catalog and pricing information for both cloud and BTF products. Depending on the use case, cloud or BTF catalogs could be targeted separately or both fetched at once. Both cloud and BTF products are fetched in this example.

There is no filter for the offering catalog query - we simply just include both btfProducts and cloudProducts, as well as include fields that we'd like to return for both respectively.

1
2
query fetchCatalog {
  partnerCatalogApi {
    partnerOfferingCatalog {
      btfProducts { ... }
      cloudProducts { ... }
    }
  }
}

Offering Catalog Query

The response follows the same structure as the query. BTF and cloud catalog lists are returned in the same btfProducts and cloudProducts format. Each will contain the list of product and pricing fields specified in the query.

1
2
{
  "data": {
    "partnerCatalogApi": {
      "partnerOfferingCatalog": {
        "btfProducts": [{ ... }],
        "cloudProducts": [{ ... }]
      }
    }
  }
}

Offering Details

Offering Catalog Details is used to fetch additional details for a specific product, including related apps. The details query accepts only a BTF or a cloud product filter in a single request, not both.

Where Filter

Filter ObjectFilterRequiredFescription
btfProductproductKeytrueBTF product identifier
licenseTypefalseLicense types to filter. If null, all are returned
currencyfalseCurrencies to filter. If null, all are returned
cloudProductkeytrueCloud product identifier
pricingPlanTypefalsePricing plan types to filter. If null, all are returned
currencyfalseCurrencies to filter. If null, all are returned

For example, if we're targeting Confluence (Cloud) and would like to fetch all USD product and app pricing only for COMMERCIAL pricing plans, we could have a query similar to this. Since we are searching only cloud products and apps, we would include both cloudProducts and cloudApps as well as include fields that we'd like to return for both respectively.

If a BTF product was being searched, the same pattern would hold true. The btfProducts filter would be used instead, as well as adding btfProducts and btfApps to the query with the fields that should be returned.

1
2
query fetchCatalogDetails {
  partnerCatalogApi {
    partnerOfferingDetails(
      where: {
        cloudProduct: {
          key: "6aab3f4e-cc71-474d-8d28-abef8b057808", 
          currency: USD, 
          pricingPlanType: COMMERCIAL
        }
      }
    ) {
      cloudProducts { ... }
      cloudApps { ... }
    }
  }
}

Offering Details Query

Similar to offering catalog, the response follows the same structure as the query. Cloud product offerings and app details are returned in the same cloudProducts and cloudApps format. Each will contain the list of product and pricing fields specified in the query.

1
2
{
  "data": {
    "partnerCatalogApi": {
      "partnerOfferingDetails": {
        "cloudProducts": [{ ... }],
        "cloudApps": [{ ... }]
      }
    }
  }
}

Rate this page: