Products (stable:2025-05-01)

2025/12/03 • 2 updated methods

ListProducts (updated)
Description Retrieves a list of products available in the marketplace catalog
Reference Link ¶

⚶ Changes

{
  "#id": "ListProducts",
  "$responses": {
    "200": {
      "$properties": {
        "value": {
          "$properties": {
            "@added_68c9e14528964a0eba25a67ac0b3bf23": {
              "#name": "productLabels",
              "Description": "Labels used to filter the product",
              "Required": false,
              "Type": "array",
              "$items": {
                "Type": "string"
              }
            },
            "@added_0831467f05f84ce9ac1936497d214c6c": {
              "#name": "mixProductId",
              "Description": "An identifier for publishing services",
              "Required": false,
              "Type": "string"
            },
            "@added_e8dc8219b4df43729a9f7a9188c1d955": {
              "#name": "linkedAddIns",
              "Description": "List of linked Add Ins provided for the item",
              "Required": false,
              "Type": "array",
              "$items": {
                "Type": "string"
              }
            },
            "@added_031f649c8c6342db82f22a0f2df07740": {
              "#name": "skuAggregatedData",
              "Description": "Data aggregated from product Sku level",
              "Required": false,
              "Type": "object",
              "$properties": [
                {
                  "#name": "actions",
                  "Description": "Superset of actions aggregated from availabilities and terms across product SKUs",
                  "Required": false,
                  "Type": "array",
                  "$items": {
                    "Type": "string"
                  }
                },
                {
                  "#name": "states",
                  "Description": "Superset of sku availability term states",
                  "Required": false,
                  "Type": "array",
                  "$items": {
                    "Type": "string"
                  }
                },
                {
                  "#name": "hasEndUserEligibleSKUs",
                  "Description": "There is at least one EndUser Eligible Sku",
                  "Required": false,
                  "Type": "boolean"
                },
                {
                  "#name": "hasAdminEligibleSKUs",
                  "Description": "There is at least one Admin Eligible Sku",
                  "Required": false,
                  "Type": "boolean"
                },
                {
                  "#name": "features",
                  "Description": "Superset of Sku features",
                  "Required": false,
                  "Type": "array",
                  "$items": {
                    "Type": "string"
                  }
                },
                {
                  "#name": "programs",
                  "Description": "Superset of Sku programs",
                  "Required": false,
                  "Type": "array",
                  "$items": {
                    "Type": "string"
                  }
                },
                {
                  "#name": "hasConsumptionComponents",
                  "Description": "There is at least one Sku with consumption components",
                  "Required": false,
                  "Type": "boolean"
                }
              ]
            },
            "@added_f80cbc9e8dbd4ebe943e2e6b6258b027": {
              "#name": "maxQuantityOnProposal",
              "Description": "Maximum quantity allowed on a proposal",
              "Format": "int32",
              "Required": false,
              "Type": "integer"
            }
          }
        }
      }
    }
  }
}

⚼ Request

GET:  /products
{
api-version: string ,
language: string ,
locations: array ,
market: string ,
hideKeys: array ,
$select: string ,
$filter: string ,
$expand: string ,
$orderBy: string ,
$search: string ,
}

⚐ Response (200)

{
value:
[
{
displayName: string ,
popularity: number ,
categoryIds:
[
string ,
]
,
industryIds:
[
string ,
]
,
publisherId: string ,
azureBenefit: string ,
badges:
[
string ,
]
,
publisherType: string ,
publishingStage: string ,
uniqueProductId: string ,
productType: string ,
productSubType: string ,
productFamily: string ,
operatingSystems:
[
string ,
]
,
pricingTypes:
[
string ,
]
,
publisherDisplayName: string ,
longSummary: string ,
summary: string ,
linkedAddInsTypes: object ,
smallIconUri: string ,
description: string ,
cspLegalTermsUri: string ,
privacyPolicyUri: string ,
ratingBuckets:
[
string ,
]
,
ratingAverage: number ,
ratingCount: integer ,
startingPrice:
{
market: string ,
termUnits: string ,
meterUnits: string ,
minTermPrice: number ,
minMeterPrice: number ,
currency: string ,
}
,
supportedProducts:
[
string ,
]
,
applicableProducts:
[
string ,
]
,
lastModifiedDateTime: string ,
locations:
[
string ,
]
,
serviceFamily: string ,
service: string ,
productId: string ,
hasRiPlans: boolean ,
hasMarketplaceFootprint: boolean ,
attributes:
[
{
key: string ,
value: string ,
}
,
]
,
activeDirectoryAppId: string ,
productLabels:
[
string ,
]
,
mixProductId: string ,
linkedAddIns:
[
string ,
]
,
skuAggregatedData:
{
actions:
[
string ,
]
,
states:
[
string ,
]
,
hasEndUserEligibleSKUs: boolean ,
hasAdminEligibleSKUs: boolean ,
features:
[
string ,
]
,
programs:
[
string ,
]
,
hasConsumptionComponents: boolean ,
}
,
maxQuantityOnProposal: integer ,
plans:
[
{
planId: string ,
uniquePlanId: string ,
displayName: string ,
vmArchitectureType: string ,
cspState: string ,
metadata:
{
generation: string ,
altStackReference: string ,
relatedSkus:
[
{
sku:
{
name: string ,
generation: string ,
identity: string ,
}
,
relationType: string ,
}
,
]
,
}
,
altStackReference: string ,
stackType: string ,
altArchitectureReference: string ,
categoryIds:
[
string ,
]
,
hasProtectedArtifacts: boolean ,
pricingTypes:
[
string ,
]
,
vmSecuritytypes:
[
string ,
]
,
summary: string ,
description: string ,
skuId: string ,
planType: string ,
displayRank: string ,
isPrivate: boolean ,
hasRi: boolean ,
}
,
]
,
}
,
]
,
nextLink: string ,
}

⚐ Response (default)

{
error:
{
code: string ,
message: string ,
}
,
}
GetProduct (updated)
Description Retrieves a single product by ID from the marketplace catalog
Reference Link ¶

⚶ Changes

{
  "#id": "GetProduct",
  "$responses": {
    "200": {
      "Description": {
        "new": "Returns the full set of Product attributes",
        "old": "Summary description of the product"
      },
      "$properties": [
        {
          "@added_0f550622916c452483a8616dcb35cb31": {
            "#name": "productLabels",
            "Description": "Labels used to filter the product",
            "Required": false,
            "Type": "array",
            "$items": {
              "Type": "string"
            }
          }
        },
        {
          "@added_b1dc6f11ee624bec9a54dd3b12da8dff": {
            "#name": "mixProductId",
            "Description": "An identifier for publishing services",
            "Required": false,
            "Type": "string"
          }
        },
        {
          "#name": "linkedAddIns",
          "Description": {
            "new": "List of linked Add Ins provided for the item",
            "old": "List of linked add ins provided for the item"
          }
        },
        {
          "@added_8f780d3390c64e96b7522384ac187bb1": {
            "#name": "skuAggregatedData",
            "Description": "Data aggregated from product Sku level",
            "Required": false,
            "Type": "object",
            "$properties": [
              {
                "#name": "actions",
                "Description": "Superset of actions aggregated from availabilities and terms across product SKUs",
                "Required": false,
                "Type": "array",
                "$items": {
                  "Type": "string"
                }
              },
              {
                "#name": "states",
                "Description": "Superset of sku availability term states",
                "Required": false,
                "Type": "array",
                "$items": {
                  "Type": "string"
                }
              },
              {
                "#name": "hasEndUserEligibleSKUs",
                "Description": "There is at least one EndUser Eligible Sku",
                "Required": false,
                "Type": "boolean"
              },
              {
                "#name": "hasAdminEligibleSKUs",
                "Description": "There is at least one Admin Eligible Sku",
                "Required": false,
                "Type": "boolean"
              },
              {
                "#name": "features",
                "Description": "Superset of Sku features",
                "Required": false,
                "Type": "array",
                "$items": {
                  "Type": "string"
                }
              },
              {
                "#name": "programs",
                "Description": "Superset of Sku programs",
                "Required": false,
                "Type": "array",
                "$items": {
                  "Type": "string"
                }
              },
              {
                "#name": "hasConsumptionComponents",
                "Description": "There is at least one Sku with consumption components",
                "Required": false,
                "Type": "boolean"
              }
            ]
          }
        },
        {
          "@added_3a3a3fa0c0bd4c9b9cdac3e6b7caecf8": {
            "#name": "maxQuantityOnProposal",
            "Description": "Maximum quantity allowed on a proposal",
            "Format": "int32",
            "Required": false,
            "Type": "integer"
          }
        },
        {
          "plans": {
            "Description": {
              "new": "Returns the full set of Plan attributes",
              "old": "Returns a subset of Plan attributes"
            },
            "$properties": {
              "@added_e5dd5175e1014d9cb25c24d4ee720852": {
                "#name": "planArtifactsVersion",
                "Description": "Plan's artifacts version",
                "Required": false,
                "Type": "string"
              }
            }
          }
        },
        {
          "@added_545e64fe71d84301af1fde76dc5a2ca6": {
            "#name": "productCustomData",
            "Description": "Custom passthrough data provided by the publisher",
            "Required": false,
            "Type": "string"
          }
        },
        {
          "@added_923493c3db14497691972ad9ff3ef0cd": {
            "#name": "serviceId",
            "Description": "The Id of the service",
            "Required": false,
            "Type": "string"
          }
        }
      ]
    }
  }
}

⚼ Request

GET:  /products/{uniqueProductId}
{
uniqueProductId: string ,
api-version: string ,
market: string ,
language: string ,
locations: array ,
includeStopSoldPlans: boolean ,
hideKeys: array ,
excludeSkuDetails: boolean ,
includeFutureAvailabilities: boolean ,
skuId: string ,
}

⚐ Response (200)

{
displayName: string ,
popularity: number ,
categoryIds:
[
string ,
]
,
industryIds:
[
string ,
]
,
publisherId: string ,
azureBenefit: string ,
badges:
[
string ,
]
,
publisherType: string ,
publishingStage: string ,
uniqueProductId: string ,
productType: string ,
productSubType: string ,
productFamily: string ,
operatingSystems:
[
string ,
]
,
pricingTypes:
[
string ,
]
,
publisherDisplayName: string ,
longSummary: string ,
summary: string ,
linkedAddInsTypes: object ,
smallIconUri: string ,
description: string ,
cspLegalTermsUri: string ,
privacyPolicyUri: string ,
ratingBuckets:
[
string ,
]
,
ratingAverage: number ,
ratingCount: integer ,
startingPrice:
{
market: string ,
termUnits: string ,
meterUnits: string ,
minTermPrice: number ,
minMeterPrice: number ,
currency: string ,
}
,
supportedProducts:
[
string ,
]
,
applicableProducts:
[
string ,
]
,
lastModifiedDateTime: string ,
locations:
[
string ,
]
,
serviceFamily: string ,
service: string ,
productId: string ,
hasRiPlans: boolean ,
hasMarketplaceFootprint: boolean ,
attributes:
[
{
key: string ,
value: string ,
}
,
]
,
activeDirectoryAppId: string ,
productLabels:
[
string ,
]
,
mixProductId: string ,
linkedAddIns:
[
string ,
]
,
skuAggregatedData:
{
actions:
[
string ,
]
,
states:
[
string ,
]
,
hasEndUserEligibleSKUs: boolean ,
hasAdminEligibleSKUs: boolean ,
features:
[
string ,
]
,
programs:
[
string ,
]
,
hasConsumptionComponents: boolean ,
}
,
maxQuantityOnProposal: integer ,
videos:
[
{
caption: string ,
uri: string ,
videoPurpose: string ,
previewImage:
{
caption: string ,
uri: string ,
imagePurpose: string ,
}
,
}
,
]
,
images:
[
{
context: string ,
items:
[
{
id: string ,
uri: string ,
type: string ,
}
,
]
,
}
,
]
,
links:
[
{
id: string ,
displayName: string ,
uri: string ,
}
,
]
,
additionalProductProperties: object ,
language: string ,
hasStandardContractAmendments: boolean ,
offerId: string ,
standardContractAmendmentsRevisionId: string ,
universalAmendmentUrl: string ,
isPrivate: boolean ,
isStopSell: boolean ,
legalTermsUri: string ,
legalTermsType: string ,
supportUri: string ,
uiDefinitionUri: string ,
screenshotUris:
[
string ,
]
,
mediumIconUri: string ,
largeIconUri: string ,
wideIconUri: string ,
pricingDetailsUri: string ,
isReseller: boolean ,
productOwnershipSellingMotion: string ,
disableSendEmailOnPurchase: boolean ,
isCoreVm: boolean ,
stopSellInfo:
{
startDate: string ,
reason: string ,
alternativeOfferId: string ,
alternativePlanId: string ,
}
,
marketingMaterial:
{
path: string ,
learnUri: string ,
}
,
artifacts:
[
{
name: string ,
uri: string ,
artifactType: string ,
}
,
]
,
plans:
[
{
planId: string ,
uniquePlanId: string ,
displayName: string ,
vmArchitectureType: string ,
cspState: string ,
metadata:
{
generation: string ,
altStackReference: string ,
relatedSkus:
[
{
sku:
{
name: string ,
generation: string ,
identity: string ,
}
,
relationType: string ,
}
,
]
,
}
,
altStackReference: string ,
stackType: string ,
altArchitectureReference: string ,
categoryIds:
[
string ,
]
,
hasProtectedArtifacts: boolean ,
pricingTypes:
[
string ,
]
,
vmSecuritytypes:
[
string ,
]
,
summary: string ,
description: string ,
skuId: string ,
planType: string ,
displayRank: string ,
isPrivate: boolean ,
hasRi: boolean ,
id: string ,
availabilities:
[
{
id: string ,
actions:
[
string ,
]
,
meter:
{
meterId: string ,
partNumber: string ,
consumptionResourceId: string ,
price:
{
currencyCode: string ,
isPiRequired: boolean ,
listPrice: number ,
msrp: number ,
}
,
type: string ,
includedQuantityProperties:
[
{
termId: string ,
quantity: string ,
}
,
]
,
}
,
pricingAudience: string ,
terms:
[
{
termDescriptionParameters:
[
{
parameter: string ,
value: string ,
}
,
]
,
termId: string ,
termUnit: string ,
prorationPolicy:
{
minimumProratedUnits: string ,
}
,
termDescription: string ,
price:
{
currencyCode: string ,
isPiRequired: boolean ,
listPrice: number ,
msrp: number ,
}
,
renewTermId: string ,
renewTermUnits: string ,
billingPlan:
{
billingPeriod: string ,
title: string ,
description: string ,
price:
{
currencyCode: string ,
isPiRequired: boolean ,
listPrice: number ,
msrp: number ,
}
,
}
,
renewToTermBillingPlan: string ,
isAutorenewable: boolean ,
}
,
]
,
hasFreeTrials: boolean ,
consumptionUnitType: string ,
displayRank: integer ,
}
,
]
,
uiDefinitionUri: string ,
artifacts:
[
{
name: string ,
uri: string ,
artifactType: string ,
}
,
]
,
version: string ,
isHidden: boolean ,
isStopSell: boolean ,
stopSellInfo:
{
startDate: string ,
reason: string ,
alternativeOfferId: string ,
alternativePlanId: string ,
}
,
isQuantifiable: boolean ,
billingComponents:
[
{
billingTag: string ,
customMeterIds: object ,
}
,
]
,
purchaseDurationDiscounts:
[
{
duration: string ,
discountPercentage: number ,
}
,
]
,
isHiddenPrivateOffer: boolean ,
certifications:
[
{
id: string ,
displayName: string ,
uri: string ,
}
,
]
,
customerInstruction: string ,
planLabels:
[
string ,
]
,
skuType: string ,
skuTitle: string ,
location: string ,
armRegionName: string ,
cloud: string ,
locationType: string ,
region: string ,
skuGroupId: string ,
zone: string ,
feature: string ,
serviceType: string ,
skuAttributes:
[
{
key: string ,
value: string ,
}
,
]
,
skuProperties:
{
category: string ,
dataDiskType: string ,
diskType: string ,
numberOfCores: string ,
ram: string ,
vCpu: string ,
armSkuName: string ,
accessTier: string ,
}
,
offeringProperties:
[
{
productCode: string ,
termId: string ,
meterType: string ,
billingMeterId: string ,
offeringId: string ,
type: string ,
}
,
]
,
planArtifactsVersion: string ,
}
,
]
,
productCustomData: string ,
serviceId: string ,
}

⚐ Response (default)

{
error:
{
code: string ,
message: string ,
}
,
}