---
name: gameproof-connect
description: Help a Steam game developer make a read-only Steamworks partner key (Financial permission only) and connect it to GameProof so their wishlists sync daily. The assistant never asks for, receives, or repeats the key.
---

# Connect a game to GameProof with a read-only Steamworks key

GameProof (a public wishlist board for indie Steam games) reads a game's daily wishlist report from Steam's official partner API with a key the developer creates. This skill walks the developer through making that key and pasting it on GameProof's connect page.

## Hard rules for the assistant

1. **Never ask for the key, and never accept it.** The developer pastes the key only into Steamworks and into `https://gameproof.app/connect`. If they paste it into this conversation, tell them to delete the group's key in Steamworks and make a new one, and do not repeat or store what they pasted.
2. Never build a URL that contains the key. Never suggest testing the key in a browser address bar or with curl.
3. Do not suggest ticking any permission other than Financial. General, Microtransactions and Economy stay unticked: Microtransactions can run in-game purchase methods and Economy can change items and inventories.
4. If something here disagrees with what the developer sees in Steamworks, say so and point them to the connect page's 「把结果发给我们 / Send us the result」 button instead of guessing.

## What the key can and cannot do (say this plainly if asked)

- A key with only the Financial permission reads sales and wishlist reports. It cannot sign in to Steamworks, change the store page, prices or builds, generate product keys, or see player data.
- Steam has no key limited to wishlists or to one game. The same key can read sales reports for every game on the partner account. By default GameProof reads this game's wishlists and net sales per day and keeps nothing about other games; sales stay private to the developer until they publish them, and they can turn reading them off in the console.
- The key is sealed with a public key as soon as it is submitted. Only GameProof's sync server, which calls Steam from one fixed IP, can open it. It is never logged or emailed. Pages show only its last four characters.
- Deleting the group or regenerating the key in Steamworks stops it at once.

## Steps

Prerequisite: the developer is an **Administrator** of the Steamworks partner account that owns the game.

1. In Steamworks, open **Users & Permissions → Manage Groups**. Create a group named **GameProof**. Add the game being listed to the group (Steam returns an empty result for a game outside the key's group). Add no users.
2. On the group page, click **Create WebAPI Key**. Under **Key Permissions** tick **Financial** only (described as "Provides access to game sales data"; the Chinese Steamworks screen calls it 「金融的」). Leave **General**, **Microtransactions** and **Economy** unticked. Save. The key appears in the right-hand column.
3. Click **Manage WebAPI Key**. Leave the allow list empty: it is not needed. (GameProof calls Steam only from `43.153.46.76`.)
4. Open `https://gameproof.app/connect`, sign in, and paste the key and the game's AppID there. The page checks five things: format, sealing, Steam accepts the key, the key can read this game, syncing started. The last three run on GameProof's sync server, usually within a minute.

Done looks like: the connect page shows 「已验证 / Verified」 and starts backfilling history; the game's public page then says the wishlists are read with a read-only key, with the last update time.

## If a step fails

| What the page says | What to do |
| --- | --- |
| The key should be 32 hex characters | Copy the whole key from the group page, with no spaces. |
| Steam refused this key | Steam does not say why. Check: Financial is among the ticked permissions; the allow list is empty or holds only `43.153.46.76`; it is a publisher key from a Steamworks group page, not a personal key from steamcommunity.com/dev; the key was not deleted or regenerated. |
| Steam returned nothing for AppID … | Steam sends the same empty answer for a regenerated or deleted key and for a game outside the key's group. Add the game to the group, check the key is the one the group page shows now, check the AppID, and paste it again. |
| Steam did not answer | Try again in a few minutes. If it keeps failing, press **Send us the result**. |

## How to take it back

Delete the GameProof group in Steamworks, or regenerate the key. In GameProof's developer console the developer can also press **Revoke**. The game page then keeps the last successful sync.
