# Connect to WOK API

WOK_API_KEY is your WOK key, not a Steam key. Keep it out of browser code, URLs, logs and agent prompts.

https://woksteamapi.com

Authorization: Bearer $WOK_API_KEY

- https://woksteamapi.com/api/openapi.json
- https://woksteamapi.com/mcp.json
- https://woksteamapi.com/api/integration-guide.md
- https://woksteamapi.com/api/specialist-plans.md

1. Inspect the project stack and implement a server-side adapter using its existing conventions.

2. Call GET /v1/key once to check access.endpoints, capabilities and quotas. This costs no units. Specialist plans exclude other workloads.

3. Use documented parameters and validate HTTP and application status. Keep unavailable, private and empty distinct. Missing data remains null or unavailable, never invented zero data.

4. Set a total deadline of 60 seconds and bound concurrency. Retry temporary 429/502/503/504 at most twice with jitter, respecting Retry-After and the deadline. Stop on exhausted quota until reset. Never loop on 400/401/403 or unsupported features.

5. Cache by source timestamps and deduplicate identical in-flight reads. Do not poll per animation frame or force-refresh automatically.

6. Keep currency, price source, statistic and observed time together. Do not compare different currencies or source snapshots as the same price.

7. Use SteamID64 strings, not JavaScript numbers. Encode item names in URL parameters, preserving spaces, ★, pipes and non-Latin characters. Follow cursor pagination. Batch units may be charged per item or player.

8. Create examples and checks with mocks first. Ask before live paid or bulk requests. This prompt does not authorize purchases, plan changes, real charges or sending emails.

9. Report changed files, setup commands, checks and unsupported capabilities. Do not claim data or rendering parity beyond the response evidence.

## Inventory

Inventories, batches, snapshots and local market prices

Required access: Inventory / All-purpose

GET /v1/inventory

items[], assetid, markethashname, image, prices, currency; inspect fields only when available.

Steam privacy applies. An empty public inventory and an unavailable inventory are different states. Rust game counters are in Players, not inventory. Inventory batches charge per requested player.

Included data endpoints:

- /steam/api/inventory
- /v1/cs2/items
- /v1/inventories
- /v1/inventory
- /v1/inventory-snapshots
- /v1/inventory/refresh-prices
- /v1/items
- /v1/portfolio-history
- /v1/price
- /v1/price-history
- /v1/prices
- /v1/prices/coverage
- /v1/inventory-snapshots/{id}/diff

https://woksteamapi.com/api/integration-guide.md

```sh
curl --fail-with-body --max-time 60 "https://woksteamapi.com/v1/inventory?steam_id=76561198000000001&game=cs2" \
  -H "Authorization: Bearer $WOK_API_KEY"
```

Replace the demo SteamID or inspect placeholder with your intended input.
