# Fortnite.GG API

> Fortnite.GG returns Fortnite shop and player data as a workflow and API.

Fortnite.GG returns displayed Item Shop items, prices, types, series, and prior shop dates; choose a date and optionally an item type. Fortnite.GG, also called FN.gg, returns player counts, in-match peaks, and top islands; optionally provide an island name or code and result count.

- Page: https://fous.com/workflows/fortnite-gg
- Handle: `@fortnite-gg`
- Category: [Entertainment](https://fous.com/workflows/category/entertainment)
- Source website: https://fortnite.gg
- Last verified: Sep 29, 2026
- Fous is not affiliated with Fortnite.GG.

## Methods

### Get item shop

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

Get the displayed Fortnite.GG Item Shop in shop order with V-Bucks prices, types, series and prior shop dates. Past dates work only if the site displays that day’s shop. Cash-only packs have no V-Bucks price.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `date` | string | no | `"2026-09-29"` | Shop date, for example 2026-09-29. Defaults to the current shop day. |
| `item_type` | string | no | `"emotes"` | Kind of item to include, for example emotes. Defaults to all. |

**Input schema**

```json
{
  "type": "object",
  "properties": {
    "date": {
      "type": "string",
      "format": "date",
      "description": "Shop date, for example 2026-09-29. Defaults to the current shop day.",
      "examples": [
        "2026-09-29"
      ]
    },
    "item_type": {
      "enum": [
        "all",
        "outfits",
        "emotes",
        "bundles",
        "pickaxes",
        "gliders",
        "wraps"
      ],
      "type": "string",
      "default": "all",
      "description": "Kind of item to include, for example emotes. Defaults to all.",
      "examples": [
        "emotes",
        "all",
        "bundles"
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "date": "2026-09-29",
      "item_type": "emotes"
    },
    {
      "item_type": "all"
    },
    {
      "item_type": "bundles"
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `items` | array |  | Items in shop order. Cash-only items have no V-Bucks price. |
| `items[].name` | string |  |  |
| `items[].is_new` | boolean |  |  |
| `items[].image_url` | string or null |  |  |
| `items[].item_type` | string |  |  |
| `items[].price_vbucks` | integer or null |  |  |
| `items[].fortnite_gg_url` | string |  |  |
| `items[].rarity_or_series` | string or null |  |  |
| `items[].previous_shop_date` | string or null |  |  |
| `shop_date` | string |  | Date shown for this shop. |

### Get player count

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

Get Fortnite players online now, in-match peaks, and the most-played islands. Optionally look up one island by name or code. Top-island player counts are from the public ranking; island creators come from their individual pages.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `island` | string | no | `"BERRY GARDEN TYCOON"` | Creative island or map name to look up, for example BERRY GARDEN TYCOON. |
| `island_code` | string | no | `"2557-3355-0240"` | Creative island code instead of a name, for example 2557-3355-0240. |
| `max_results` | integer | no | `3` | Number of top islands to return, for example 10. Maximum 50. |

**Input schema**

```json
{
  "type": "object",
  "properties": {
    "island": {
      "type": "string",
      "description": "Creative island or map name to look up, for example BERRY GARDEN TYCOON.",
      "examples": [
        "BERRY GARDEN TYCOON",
        "Battle Royale"
      ]
    },
    "island_code": {
      "type": "string",
      "description": "Creative island code instead of a name, for example 2557-3355-0240.",
      "x-fous-developer": true,
      "examples": [
        "2557-3355-0240"
      ]
    },
    "max_results": {
      "type": "integer",
      "default": 10,
      "maximum": 50,
      "minimum": 1,
      "description": "Number of top islands to return, for example 10. Maximum 50.",
      "x-fous-developer": true,
      "examples": [
        3,
        10,
        2
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "island_code": "2557-3355-0240",
      "max_results": 3
    },
    {
      "island": "BERRY GARDEN TYCOON",
      "max_results": 10
    },
    {
      "island": "Battle Royale",
      "max_results": 2
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `island` | any |  |  |
| `peak_24h` | integer | `1196901` | 24-hour in-match peak. |
| `top_islands` | array |  |  |
| `top_islands[].link` | string | `"https://fortnite.gg/island/experience_br"` |  |
| `top_islands[].name` | string | `"Battle Royale"` |  |
| `top_islands[].creator` | string or null | `"epic"` |  |
| `top_islands[].island_code` | string or null |  |  |
| `top_islands[].players_now` | integer or null | `254263` |  |
| `all_time_peak` | integer | `14343880` | All-time in-match peak. |
| `players_right_now` | integer | `978285` | Players online now. |
| `all_time_peak_date` | string | `"2024-11-30"` |  |

**Example input**

```json
{
  "island_code": "2557-3355-0240",
  "max_results": 3
}
```

**Example output**

```json
{
  "island": {
    "link": "https://fortnite.gg/island/2557-3355-0240",
    "name": "BERRY GARDEN TYCOON",
    "creator": "wanderer",
    "peak_24h": 3560,
    "island_code": "2557-3355-0240",
    "players_now": 1742,
    "all_time_peak": 10240
  },
  "peak_24h": 1196901,
  "top_islands": [
    {
      "link": "https://fortnite.gg/island/experience_br",
      "name": "Battle Royale",
      "creator": "epic",
      "island_code": null,
      "players_now": 254263
    },
    {
      "link": "https://fortnite.gg/island/experience_reload",
      "name": "Reload",
      "creator": "epic",
      "island_code": null,
      "players_now": 59916
    },
    {
      "link": "https://fortnite.gg/island/experience_og",
      "name": "Fortnite OG",
      "creator": "epic",
      "island_code": null,
      "players_now": 27812
    }
  ],
  "all_time_peak": 14343880,
  "players_right_now": 978285,
  "all_time_peak_date": "2024-11-30"
}
```

## 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": "@fortnite-gg",
  "visibility": "public",
  "operation": "get_item_shop",
  "version": 1,
  "input": {
    "date": "2026-09-29",
    "item_type": "emotes"
  },
  "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\": \"@fortnite-gg\",\n  \"visibility\": \"public\",\n  \"operation\": \"get_item_shop\",\n  \"version\": 1,\n  \"input\": {\n    \"date\": \"2026-09-29\",\n    \"item_type\": \"emotes\"\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": "@fortnite-gg",
  "visibility": "public",
  "operation": "get_item_shop",
  "version": 1,
  "input": {
    "date": "2026-09-29",
    "item_type": "emotes"
  },
  "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":"@fortnite-gg","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

- Track item prices and types in the displayed shop.
- Compare shop items across displayed dates.
- Monitor players online and in-match peaks.
- Rank Creative islands by current player counts.
- Look up a Creative island by name or code.

## FAQ

### Is Fous affiliated with Fortnite.GG?

No. Fous is not affiliated with Fortnite.GG. This workflow reads the public fortnite.gg 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 Fortnite.GG account?

No. You only need a Fous account.

### How current is the data?

Fous gets the data from fortnite.gg 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.

### How many Fortnite players are online now?

Get player count returns the current online player count and in-match peaks.

### Which items are in the displayed shop?

Get item shop returns displayed items in shop order, including types and V-Bucks prices when available.

### Which Creative islands are most played?

Get player count returns top islands and their current player counts.

## Related

- [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.
- [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.
- [Etsy API](https://fous.com/workflows/etsy.md): Etsy provides current listings and prices, shop ratings and shipping, plus public item and shop details; some review counts or listings may be unavailable.
- [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.
- [Nintendo eShop API](https://fous.com/workflows/nintendo-eshop.md): Nintendo eShop returns Nintendo Switch and Switch 2 game details and store prices by country, plus current game discounts in select countries, excluding downloadable add-ons.
- [Twitch API](https://fous.com/workflows/twitch.md): Twitch returns channel profiles, live status, up to 10 broadcasts, top streams, viewer-ranked categories, up to 100 public videos/clips, and 1–30-day schedules; counts change.
- [PlayStation Store API](https://fous.com/workflows/playstation-store.md): Find PlayStation Store game editions, prices, ratings, and release information, plus current game sales and their end dates where available.
- [Chess.com API](https://fous.com/workflows/chess-com.md): Chess.com returns public player profiles, ratings, records, puzzle scores, top-player rankings, and completed public games for a selected month, defaulting to the current UTC month.
- [All Entertainment workflows](https://fous.com/workflows/category/entertainment)
