# Protondb — Wrapped API

> **You are on:** `https://api.paywithlocus.com/api` | [llms.txt](https://paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> Search for game compatibility information and check how well games run on Linux and Steam Deck, including user reports, performance statistics, and official verification status. Explore detailed game data, platform analytics, and community feedback to evaluate compatibility across titles.

**Category:** Entertainment | **Website:** [protondb.com/](https://protondb.com/) | **Docs:** [parse.bot/marketplace/0b06ef6e-b3c0-4df6-88ff-7b4998ce9645/protondb-com-api](https://parse.bot/marketplace/0b06ef6e-b3c0-4df6-88ff-7b4998ce9645/protondb-com-api)

Pay-per-use API proxy for Locus Pro. Each call burns credits from your workspace balance.

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/credits/protondb/`
**Auth:** `Authorization: Bearer <LOCUS_CREDITS_SECRET_KEY>` (an `lcr_` secret key or a scoped `lcac_` agent credential)
**Required header:** `Idempotency-Key: <fresh UUID per call>`. A retry with the same key replays the stored result without a new charge.
**Response:** the provider response after any endpoint-specific normalization. `X-Locus-Credits-Charged` carries the charge and `X-Locus-Credits-Balance` the remaining balance. Insufficient credits return `402` before the provider is called.
**Pricing:** estimated costs below are USD. Locus debits the credit equivalent at your workspace rate.

Full call contract: https://docs.paywithlocus.com/api-reference/introduction

> Using a Pay With Locus wallet key (`claw_` prefix)? Wallet routes are documented separately: https://docs.paywithlocus.com/wrapped-apis/for-agents

## Endpoints

### Explore games list

Browse the ProtonDB explore page: a paginated list of games with compatibility information. Supports multiple sort orders (popular, releaseDate, wilsonRating, playerCount, userScore, mostBorked, fixWanted). Returns up to 50 games per page with total page count.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `filter` | string | No | Filter option (e.g. unfiltered). |
| `sort` | string | No | Sort option. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/protondb/explore-games-list \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"filter":"<string>","sort":"<string>"}'
```

### Get dashboard stats

Retrieve the full compatibility breakdown dashboard. Covers multiple game categories (topTen, topHundred, topThousand, fullSteamCatalog, indie, vr, etc.) with ratings distributions across ProtonDB medals, click-play tiers, and Steam Deck verification states.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/protondb/get-dashboard-stats \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### Get deck verified details

Retrieve the Steam Deck Verified status and individual test criteria for a game. resolved_category values: 3=Verified, 2=Playable, 1=Unsupported, 0=Unknown. Each resolved_item is a specific test result with a display_type and localization token.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `app_id` | string | Yes | Steam App ID of the game. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/protondb/get-deck-verified-details \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"app_id":"<string>"}'
```

### Get game reports

Retrieve user-submitted compatibility reports for a game. Each report includes the contributor's system specs (CPU, GPU, OS), Proton version used, and a detailed verdict. Filterable by device type. Returns up to 40 reports per page.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `app_id` | string | Yes | Steam App ID of the game. |
| `device` | string | No | Device filter. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/protondb/get-game-reports \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"app_id":"<string>","device":"<string>"}'
```

### Get game summary

Retrieve the ProtonDB compatibility summary for a specific game by its Steam App ID. Returns tier rating (platinum/gold/silver/bronze/borked), confidence level, total report count, and a normalized score. A 404 means no reports exist for this app ID.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `app_id` | string | Yes | Steam App ID of the game (e.g. 620 for Portal 2). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/protondb/get-game-summary \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"app_id":"<string>"}'
```

### Get stats summary

Retrieve global ProtonDB statistics: total report count, number of unique games with reports, and the Unix timestamp of the last data refresh. No parameters required.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/protondb/get-stats-summary \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### Get steam app details

Retrieve official Steam store metadata for a game via ProtonDB's proxy. Returns the full Steam appdetails payload including name, description, pricing, system requirements, genres, screenshots, and release date. Extracts the inner data object for the requested app.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `app_id` | string | Yes | Steam App ID of the game. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/protondb/get-steam-app-details \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"app_id":"<string>"}'
```

### Search games

Full-text search over the ProtonDB game index by title. Returns matching games with their Steam App IDs. Each hit carries the game name and its Steam App ID (objectID). Limited to 20 results per call.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `query` | string | Yes | Search keyword or game title to find matching games. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/protondb/search-games \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"query":"<string>"}'
```

## Next steps

- [All wrapped API providers](https://paywithlocus.com/wapi/index.md): pick another provider.
- [Find and call tools](https://paywithlocus.com/agent/tools.md): price ceilings, async results, and errors.
- [Credits and billing](https://paywithlocus.com/agent/billing.md): what a call costs and how to add credits.
- [Agent docs index](https://paywithlocus.com/agent/index.md): every Locus agent page.