# Microsoft Store API

> Microsoft Store returns app and game listings, search results, and chart rankings as a workflow and API.

Microsoft Store (MS Store) Get app returns listing details using an app name, store link, or product ID, with optional country and publisher. Search apps returns keyword-matched apps or games in Store order, using a required query and optional type, country, and result count. List top charts returns ranked apps or games for a chart, with optional country, category, and result count.

- Page: https://fous.com/workflows/microsoft-store
- Handle: `@microsoft-store`
- Category: [Marketing](https://fous.com/workflows/category/marketing)
- Source website: https://apps.microsoft.com
- Last verified: Sep 29, 2026
- Fous is not affiliated with Microsoft Store.

## Methods

### Get app

Operation `get_app`, version 1. 1 credit per call.

Get the best-matching Microsoft Store app or game listing by name or store link, optionally choosing a publisher and country. Update notes and in-app purchase price ranges may be unavailable on listings that do not publish them.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `app` | string | yes | `"WhatsApp"` | App or game name, store link, or store product ID, for example WhatsApp. |
| `country` | string | no | `"United Kingdom"` | Country name or two-letter code for the listing, for example United States. |
| `publisher` | string | no | `"Spotify AB"` | Publisher name to select the right listing, for example WhatsApp Inc. |

**Input schema**

```json
{
  "type": "object",
  "required": [
    "app"
  ],
  "properties": {
    "app": {
      "type": "string",
      "description": "App or game name, store link, or store product ID, for example WhatsApp.",
      "examples": [
        "WhatsApp",
        "Spotify",
        "https://apps.microsoft.com/detail/9NSN56SL5HC0"
      ]
    },
    "country": {
      "type": "string",
      "default": "United States",
      "description": "Country name or two-letter code for the listing, for example United States.",
      "examples": [
        "United Kingdom",
        "US"
      ]
    },
    "publisher": {
      "type": "string",
      "default": "",
      "description": "Publisher name to select the right listing, for example WhatsApp Inc.",
      "examples": [
        "Spotify AB"
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "app": "WhatsApp"
    },
    {
      "app": "Spotify",
      "country": "United Kingdom",
      "publisher": "Spotify AB"
    },
    {
      "app": "https://apps.microsoft.com/detail/9NSN56SL5HC0",
      "country": "US"
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `name` | string | `"WhatsApp"` | The matched listing name. |
| `size` | string or null | `"339.3 MB"` | Approximate download size. |
| `price` | number or null | `0` | Current listed price, or 0 if free. |
| `category` | string or null | `"Social"` | The Store category. |
| `currency` | string or null | `"USD"` | Currency code for the price. |
| `publisher` | string or null | `"WhatsApp Inc."` | The publisher. |
| `whats_new` | string or null |  | What is new in this version, if published. |
| `age_rating` | string or null | `"EVERYONE"` | Age rating. |
| `free_trial` | boolean | `false` | Whether a free trial is available. |
| `store_link` | string | `"https://apps.microsoft.com/detail/9nksqgp7f2nh?hl=en-US&gl=US"` | Link to the matched store listing. |
| `description` | string or null |  | The listing description. |
| `rating_count` | integer or null | `309526` | Number of ratings. |
| `average_rating` | number or null | `4.6` | Average rating out of 5. |
| `in_app_purchases` | boolean | `true` | Whether the listing reports in-app purchases. |
| `store_product_id` | string | `"9NKSQGP7F2NH"` | Microsoft Store product ID. |
| `last_updated_date` | string or null | `"2026-09-23"` | Last updated date (YYYY-MM-DD). |
| `in_app_purchase_price_range` | string or null |  | In-app purchase price range shown by the Store, if available. |
| `minimum_system_requirements` | string or null | `"Available on: PC; OS: Windows 10 version 18362.0 or higher"` | Minimum system requirements. |
| `recommended_system_requirements` | string or null | `"Available on: PC; OS: Windows 10 version 18362.0 or higher; Keyboard: Integrated Keyboard; Mouse: Integrated Mouse; Cam` | Recommended system requirements. |

**Example input**

```json
{
  "app": "WhatsApp"
}
```

**Example output**

```json
{
  "name": "WhatsApp",
  "size": "339.3 MB",
  "price": 0,
  "category": "Social",
  "currency": "USD",
  "publisher": "WhatsApp Inc.",
  "whats_new": null,
  "age_rating": "EVERYONE",
  "free_trial": false,
  "store_link": "https://apps.microsoft.com/detail/9nksqgp7f2nh?hl=en-US&gl=US",
  "description": "WhatsApp from Meta is a 100% free messaging app. It’s used by over 2B people in more than 180 countries. It’s simple, reliable, and private, so you can easily keep in touch with your friends and famil…",
  "rating_count": 309526,
  "average_rating": 4.6,
  "in_app_purchases": true,
  "store_product_id": "9NKSQGP7F2NH",
  "last_updated_date": "2026-09-23",
  "in_app_purchase_price_range": null,
  "minimum_system_requirements": "Available on: PC; OS: Windows 10 version 18362.0 or higher",
  "recommended_system_requirements": "Available on: PC; OS: Windows 10 version 18362.0 or higher; Keyboard: Integrated Keyboard; Mouse: Integrated Mouse; Camera: Integrated Camera"
}
```

### List top charts

Operation `list_top_charts`, version 1. 1 credit per call.

List ranked Microsoft Store apps or games from a top chart, optionally for a category and country. Some paid listings do not publish a numeric price; their price is null.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `chart` | string | no | `"top_free_apps"` | Chart to list, for example top_free_apps. |
| `country` | string | no | `"United States"` | Country name or two-letter code, for example United States or US. |
| `category` | string | no | `"productivity"` | Store category name, for example productivity or photo and video; default all. |
| `max_results` | integer | no | `8` | Maximum ranked items to return, for example 50. |

**Input schema**

```json
{
  "type": "object",
  "properties": {
    "chart": {
      "type": "string",
      "default": "top_free_apps",
      "description": "Chart to list, for example top_free_apps.",
      "examples": [
        "top_free_apps",
        "top_paid_games",
        "best_selling_games"
      ]
    },
    "country": {
      "type": "string",
      "default": "United States",
      "description": "Country name or two-letter code, for example United States or US.",
      "examples": [
        "United States",
        "United Kingdom",
        "US"
      ]
    },
    "category": {
      "type": "string",
      "default": "all",
      "description": "Store category name, for example productivity or photo and video; default all.",
      "examples": [
        "productivity",
        "action & adventure"
      ]
    },
    "max_results": {
      "type": "integer",
      "default": 50,
      "maximum": 100,
      "minimum": 1,
      "description": "Maximum ranked items to return, for example 50.",
      "x-fous-developer": true,
      "examples": [
        8,
        5,
        7
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "chart": "top_free_apps",
      "country": "United States",
      "category": "productivity",
      "max_results": 8
    },
    {
      "chart": "top_paid_games",
      "country": "United Kingdom",
      "max_results": 5
    },
    {
      "chart": "best_selling_games",
      "country": "US",
      "category": "action & adventure",
      "max_results": 7
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `chart` | string | `"Top free apps"` | Chart name. |
| `items` | array |  |  |
| `items[].name` | string | `"Zoom Workplace"` |  |
| `items[].rank` | integer | `1` |  |
| `items[].price` | number or null | `0` |  |
| `items[].currency` | string or null | `"USD"` |  |
| `items[].publisher` | string or null | `"Zoom Communications, Inc."` |  |
| `items[].store_link` | string | `"https://apps.microsoft.com/detail/xp99j3kp4xz4vv?hl=en-US&gl=US"` |  |
| `items[].average_rating` | number or null | `4.2` |  |
| `items[].store_product_id` | string | `"xp99j3kp4xz4vv"` |  |

**Example input**

```json
{
  "chart": "top_free_apps",
  "country": "United States",
  "category": "productivity",
  "max_results": 8
}
```

**Example output**

```json
{
  "chart": "Top free apps",
  "items": [
    {
      "name": "Zoom Workplace",
      "rank": 1,
      "price": 0,
      "currency": "USD",
      "publisher": "Zoom Communications, Inc.",
      "store_link": "https://apps.microsoft.com/detail/xp99j3kp4xz4vv?hl=en-US&gl=US",
      "average_rating": 4.2,
      "store_product_id": "xp99j3kp4xz4vv"
    },
    {
      "name": "Adobe Acrobat Reader DC",
      "rank": 2,
      "price": 0,
      "currency": "USD",
      "publisher": "ADOBE INC.",
      "store_link": "https://apps.microsoft.com/detail/xpdp273c0xhqh2?hl=en-US&gl=US",
      "average_rating": 3.4,
      "store_product_id": "xpdp273c0xhqh2"
    },
    {
      "name": "Microsoft Teams",
      "rank": 3,
      "price": 0,
      "currency": "USD",
      "publisher": "Microsoft Corporation",
      "store_link": "https://apps.microsoft.com/detail/xp8bt8dw290mpq?hl=en-US&gl=US",
      "average_rating": 3.3,
      "store_product_id": "xp8bt8dw290mpq"
    }
  ]
}
```

### Search apps

Operation `search_apps`, version 1. 1 credit per call.

Search Microsoft Store apps and games by keywords in a selected country, in Store order. Subscription-included items can display a price of 0; rounded game ratings may have no exact count.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `type` | string | no | `"games"` | Search all listings, apps only or games only; for example games. |
| `query` | string | yes | `"minecraft"` | Words to search for, for example pdf editor. |
| `country` | string | no | `"Canada"` | Country name or two-letter code, for example Canada or CA. |
| `max_results` | integer | no | `25` | Maximum number of results, for example 20. |

**Input schema**

```json
{
  "type": "object",
  "required": [
    "query"
  ],
  "properties": {
    "type": {
      "enum": [
        "all",
        "apps",
        "games"
      ],
      "type": "string",
      "default": "all",
      "description": "Search all listings, apps only or games only; for example games.",
      "examples": [
        "games",
        "apps"
      ]
    },
    "query": {
      "type": "string",
      "minLength": 1,
      "description": "Words to search for, for example pdf editor.",
      "examples": [
        "minecraft",
        "notepad",
        "pdf editor"
      ]
    },
    "country": {
      "type": "string",
      "default": "United States",
      "description": "Country name or two-letter code, for example Canada or CA.",
      "examples": [
        "Canada",
        "GB"
      ]
    },
    "max_results": {
      "type": "integer",
      "default": 20,
      "maximum": 100,
      "minimum": 1,
      "description": "Maximum number of results, for example 20.",
      "x-fous-developer": true,
      "examples": [
        25,
        8
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "type": "games",
      "query": "minecraft",
      "country": "Canada",
      "max_results": 25
    },
    {
      "type": "apps",
      "query": "notepad",
      "country": "GB",
      "max_results": 8
    },
    {
      "query": "pdf editor"
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `results` | array |  |  |
| `results[].name` | string | `"Minecraft Dungeons II"` |  |
| `results[].type` | string | `"game"` |  |
| `results[].price` | number or null | `39.99` |  |
| `results[].currency` | string or null | `"CAD"` |  |
| `results[].publisher` | string or null | `"Xbox Game Studios"` |  |
| `results[].store_link` | string | `"https://apps.microsoft.com/detail/9nsn56sl5hc0?gl=CA&hl=en-US"` |  |
| `results[].rating_count` | integer or null | `428` | Exact rating count when shown on the product page. |
| `results[].average_rating` | number or null | `0` |  |
| `results[].store_product_id` | string | `"9nsn56sl5hc0"` |  |

**Example input**

```json
{
  "type": "games",
  "query": "minecraft",
  "country": "Canada",
  "max_results": 25
}
```

**Example output**

```json
{
  "results": [
    {
      "name": "Minecraft Dungeons II",
      "type": "game",
      "price": 39.99,
      "currency": "CAD",
      "publisher": "Xbox Game Studios",
      "store_link": "https://apps.microsoft.com/detail/9nsn56sl5hc0?gl=CA&hl=en-US",
      "rating_count": null,
      "average_rating": 0,
      "store_product_id": "9nsn56sl5hc0"
    },
    {
      "name": "Minecraft Dungeons II Deluxe Edition",
      "type": "game",
      "price": 69.99,
      "currency": "CAD",
      "publisher": "Xbox Game Studios",
      "store_link": "https://apps.microsoft.com/detail/9nfdxgj16m47?gl=CA&hl=en-US",
      "rating_count": null,
      "average_rating": 0,
      "store_product_id": "9nfdxgj16m47"
    },
    {
      "name": "Minecraft Launcher",
      "type": "game",
      "price": 0,
      "currency": "CAD",
      "publisher": "Microsoft Studios",
      "store_link": "https://apps.microsoft.com/detail/9pgw18npbzv5?gl=CA&hl=en-US",
      "rating_count": null,
      "average_rating": 4.2,
      "store_product_id": "9pgw18npbzv5"
    }
  ]
}
```

## Quick start

Call the API with a Fous API key (`FOUS_API_KEY`). To create one, turn on Developer mode in Fous Studio, then open Keys & connections → API keys (https://app.fous.com/keys).

```bash
# First set your key: export FOUS_API_KEY='YOUR_FOUS_API_KEY'
: "${FOUS_API_KEY:?Set FOUS_API_KEY before running this example}"

curl 'https://api.fous.com/v1/query' \
  --fail-with-body --silent --show-error --max-time 120 \
  -H "Authorization: Bearer $FOUS_API_KEY" \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "api": "@microsoft-store",
  "visibility": "public",
  "operation": "get_app",
  "version": 1,
  "input": {
    "app": "WhatsApp"
  },
  "response": {
    "format": "json"
  }
}'
```

```python
# Save as fous.py and run with python3 fous.py. No packages needed.
# First set your key: export FOUS_API_KEY='YOUR_FOUS_API_KEY'
import json
import os
import urllib.error
import urllib.request

api_key = os.environ.get("FOUS_API_KEY")
if not api_key:
    raise RuntimeError("Set FOUS_API_KEY before running this example")

body = json.loads("{\n  \"api\": \"@microsoft-store\",\n  \"visibility\": \"public\",\n  \"operation\": \"get_app\",\n  \"version\": 1,\n  \"input\": {\n    \"app\": \"WhatsApp\"\n  },\n  \"response\": {\n    \"format\": \"json\"\n  }\n}")
request = urllib.request.Request(
    "https://api.fous.com/v1/query",
    data=json.dumps(body).encode("utf-8"),
    headers={
        "Authorization": f"Bearer {api_key}",
        "Content-Type": "application/json",
    },
    method="POST",
)
try:
    with urllib.request.urlopen(request, timeout=120) as response:
        result = json.load(response)
except urllib.error.HTTPError as error:
    raise RuntimeError(f"HTTP {error.code}: {error.read().decode('utf-8', errors='replace')}") from error
if result.get("success") is False:
    raise RuntimeError(result.get("error", {}).get("message", "Request failed"))
print(json.dumps(result["data"]["output"], indent=2))
```

```typescript
// Save as fous.mts and run with npx tsx fous.mts.
// First set your key: export FOUS_API_KEY='YOUR_FOUS_API_KEY'
const apiKey = process.env.FOUS_API_KEY;
if (!apiKey) throw new Error("Set FOUS_API_KEY before running this example");

const response = await fetch("https://api.fous.com/v1/query", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${apiKey}`,
    "Content-Type": "application/json",
  },
  signal: AbortSignal.timeout(120_000),
  body: JSON.stringify({
  "api": "@microsoft-store",
  "visibility": "public",
  "operation": "get_app",
  "version": 1,
  "input": {
    "app": "WhatsApp"
  },
  "response": {
    "format": "json"
  }
}),
});
type ApiResult = { success: boolean; data?: { output: unknown }; error?: { message: string } };
const result: ApiResult = await response.json();
if (!response.ok || result.success === false) {
  throw new Error(result.error?.message ?? `HTTP ${response.status}`);
}
if (!result.data) throw new Error("Missing API response data");
console.log(result.data.output);
```

Or describe the data in plain language: send `{"api":"@microsoft-store","prompt":"Describe the data you need, with every detail"}` to the same URL. Fous fills in the input, runs the method that fits and returns only the fields you asked for; `data.route.calls[].request` is the exact call it made. Routing is free; the run costs the same.

## Use cases

- Compare app prices, ratings, and publishers.
- Find apps or games by keyword.
- Track top-ranked apps by category and country.
- Review app descriptions and system requirements.
- Identify listings with free trials or in-app purchases.

## FAQ

### Is Fous affiliated with Microsoft Store?

No. Fous is not affiliated with Microsoft Store. This workflow reads the public apps.microsoft.com website and returns its data.

### How much does it cost?

Each run costs 1 credit. With pay-as-you-go, a credit costs 1¢; monthly plans cost less per credit.

### Do I need a Microsoft Store account?

No. You only need a Fous account.

### How current is the data?

Fous gets the data from apps.microsoft.com when you run it; repeating the same request within a day may return the saved result. Fous checks this workflow automatically; it last passed a check on Sep 29, 2026.

### What is an app's price, rating, or publisher?

Get app returns a matched listing's price, rating, and publisher when you provide its name, store link, or product ID.

### Which apps match a keyword search?

Search apps returns matching listings in Store order for the supplied query.

### Which apps or games rank in a top chart?

List top charts returns ranked listings for the selected chart.

## Related

- [Google Play API](https://fous.com/workflows/google-play.md): Google Play helps people discover Android apps and games, view public listings and search results, read reviews when available by app and region, and see country-specific top charts.
- [Apple App Store API](https://fous.com/workflows/apple-app-store.md): Apple App Store returns public app listings, keyword search, ratings, prices, listed purchases, country-specific reviews and visible replies, and up to 200 ranked chart apps.
- [Xbox API](https://fous.com/workflows/xbox.md): Xbox provides game details, country-specific prices and Game Pass availability, catalog-ordered listings, and current country sales; prices may be unavailable and some dates unpublished.
- [Apple Podcasts API](https://fous.com/workflows/apple-podcasts.md): Apple Podcasts returns chart listings, relevant show search results, show details with newest available episodes, and country-specific ratings and reviews; results are capped, and older or subscription episodes may be unavailable.
- [Apple Music API](https://fous.com/workflows/apple-music.md): Apple Music returns albums, tracks, artist profiles, latest releases, top music, matching songs, and current charts; prices, previews, and older albums may be unavailable.
- [Steam API](https://fous.com/workflows/steam.md): Steam returns game details, country-specific prices, reviews, and current and historical player counts, plus player rankings and sales lists; some details or prices may be unavailable, and review totals span languages and verdicts.
- [Spotify API](https://fous.com/workflows/spotify.md): Spotify returns public artist profiles, album credits and ordered tracks, song details and play counts, up to 500 playlist songs, keyword results, and country-based podcast charts; dates and regional options vary.
- [Epic Games Store API](https://fous.com/workflows/epic-games-store.md): Epic Games Store provides current and upcoming free games, plus game details including country-specific prices and sales; free-game availability varies by country.
- [All Marketing workflows](https://fous.com/workflows/category/marketing)
