Azure Marketplace Scraper avatar

Azure Marketplace Scraper

Pricing

from $3.00 / 1,000 results

Go to Apify Store
Azure Marketplace Scraper

Azure Marketplace Scraper

Scrape Microsoft Azure Marketplace - search 10,000+ cloud solutions by keyword, category, or pricing type. Returns full metadata: publisher, ratings, pricing, deployment types, icons, screenshots.

Pricing

from $3.00 / 1,000 results

Rating

5.0

(11)

Developer

Crawler Gang

Crawler Gang

Maintained by Community

Actor stats

11

Bookmarked

2

Total users

1

Monthly active users

7 days ago

Last modified

Share

Scrape Microsoft Azure Marketplace — the cloud-solution catalog with 10,000+ listings from Microsoft and third-party publishers. Extract full metadata: name, publisher, description, categories, pricing model, ratings, icons, screenshots, and deployment plans.

Data Source

This actor scrapes the Microsoft Azure Marketplace via its public catalog REST API (catalogapi.azure.com). No API key, authentication, or proxy is required — the catalog is fully public and free to access.

Note: Oracle Cloud Marketplace (cloudmarketplace.oracle.com) requires Oracle Cloud authentication and returns gateway errors on all public endpoints. Azure Marketplace covers the same niche (enterprise cloud solutions) with a richer public API.

Features

  • 3 scraping modes: Search by keyword, Browse by category, or Fetch by offer ID
  • Rich metadata: publisher info, pricing type (Free/BYOL/PayG/Trial), ratings, icons, screenshots, plan IDs
  • Category filtering: 20 Azure Marketplace categories (AI/ML, Analytics, Databases, Security, etc.)
  • Pricing filtering: Filter by Free, BYOL, Pay-As-You-Go, or Free Trial
  • Sort options: By popularity or alphabetically by name
  • No credentials required: Zero configuration, works on Apify free plan

Input

FieldTypeDescription
modeselectRequired. search, browse, or getById
querystringKeyword search (modes: search, browse)
categoryselectFilter by category (e.g. databases, security, ai-plus-machine-learning)
pricingTypeselectFilter by pricing: free, byol, payg, trial
sortByselectSort by popularity (default), ratingAverage, or title
idsarrayOffer IDs for getById mode (e.g. Microsoft.DocumentDB_MongoDB_Support)
maxItemsintegerMax records to return (1–10000, default: 100)

Example Inputs

Search for database solutions:

{
"mode": "search",
"query": "database",
"maxItems": 50
}

Browse free security tools:

{
"mode": "browse",
"category": "security",
"pricingType": "free",
"maxItems": 100
}

Fetch specific offers by ID:

{
"mode": "getById",
"ids": ["Microsoft.DocumentDB_MongoDB_Support", "Avensoft.nService"],
"maxItems": 10
}

Output

Each record contains:

FieldTypeDescription
listingIdstringAzure Marketplace offer ID (bigId)
namestringDisplay name of the listing
shortDescriptionstringShort summary / headline
descriptionstringFull description
publisherstringPublisher display name
publisherIdstringPublisher identifier
categoriesarrayCategory names (e.g. ["Databases", "Analytics"])
offerTypestringOffer type (e.g. SaaS, VirtualMachine)
pricingTypestringPricing model (Free, BYOL, PayG, FreeTrial)
hasFreeTrialsbooleanWhether a free trial is available
isByolbooleanWhether BYOL licensing is supported
hasFreePlansbooleanWhether free plans exist
hasPaygPlansbooleanWhether pay-as-you-go plans exist
ratingAveragenumberAverage star rating (0–5)
ratingCountintegerNumber of ratings
popularitynumberAzure Marketplace popularity score
versionstringListing version
keywordsarrayAssociated keywords/tags
iconUrlstringURL to the listing icon
screenshotUrlsarrayURLs to screenshots
publisherUrlstringPublisher website
supportUrlstringSupport URL
legalTermsUrlstringLegal terms URL
privacyPolicyUrlstringPrivacy policy URL
planIdsarrayAvailable plan identifiers
listingUrlstringDirect Azure Marketplace listing URL
lastModifiedstringLast modified timestamp (ISO 8601)
recordTypestringAlways "listing"
scrapedAtstringScrape timestamp (ISO 8601 UTC)

Sample Record

{
"listingId": "Microsoft.DocumentDB_MongoDB_Support",
"name": "Azure Cosmos DB for MongoDB",
"shortDescription": "Globally-distributed, multi-model database service.",
"publisher": "Microsoft",
"categories": ["Databases", "Analytics"],
"pricingType": "PayG",
"hasPaygPlans": true,
"ratingAverage": 3.702,
"ratingCount": 754,
"popularity": 14.92,
"iconUrl": "https://catalogartifact.azureedge.net/...",
"listingUrl": "https://azuremarketplace.microsoft.com/en-us/marketplace/apps/Microsoft.DocumentDB_MongoDB_Support",
"recordType": "listing",
"scrapedAt": "2026-05-30T12:00:00+00:00"
}

Categories

Available category values for the category input field:

SlugDisplay Name
ai-plus-machine-learningAI + Machine Learning
analyticsAnalytics
blockchainBlockchain
computeCompute
containersContainers
databasesDatabases
developer-toolsDeveloper Tools
devopsDevOps
identityIdentity
integrationIntegration
internet-of-thingsInternet of Things
management-toolsManagement Tools
mediaMedia
migrationMigration
mixed-realityMixed Reality
monitoring-and-diagnosticsMonitoring & Diagnostics
networkingNetworking
securitySecurity
storageStorage
webWeb

FAQs

Q: Do I need an Azure account or API key? A: No. The Azure Marketplace catalog API is fully public and requires no authentication.

Q: How many listings does Azure Marketplace have? A: As of 2026, Azure Marketplace has over 10,000 listings from Microsoft and thousands of third-party publishers.

Q: Can I filter by multiple categories at once? A: The current version supports single-category filtering per run. Use multiple runs with different category values and combine results.

Q: What is the difference between search and browse modes? A: search mode uses the Azure full-text search on your query. browse mode lets you filter by category and pricingType with optional keyword filtering. getById fetches specific listings by their offer ID.

Q: How are offer IDs structured? A: Azure offer IDs follow the pattern PublisherId.OfferId, e.g. Microsoft.DocumentDB_MongoDB_Support or Avensoft.nService.

Q: Is the data real-time? A: The actor fetches live data from the Azure Marketplace catalog API on each run.