Documenting the protocols, structures and concepts used by Hyperscape.
AyeZeeBB
2026-02-17 7c92d925bd5427a5a58a5a4d0b5d1d51f73c5742
05_scapegoat/06_item_catalog.md
@@ -1,5 +1,51 @@
# Scapegoat: Item Catalog
The Hyper Scape item catalog contains **1,665 items** across **40 item types**. This data was extracted from the Ubisoft Services item endpoint at `/v1/spaces/{spaceId}/items/all`.
## Setting Owned Items
To make items appear as owned in-game, you respond to the inventory endpoint. The game requests:
```
GET /v1/profiles/{profileId}/inventory?spaceId=3f28fbeb-1eaa-460f-9265-2ef2a47fd152&offset=0&limit=1000
```
With headers:
```
Authorization: Ubi_v1 t=<session ticket>
Ubi-AppId: 69e55abd-5aca-4eee-be94-ce3944c72e73
Content-Type: application/json
```
The response contains an array of owned items. Each entry has an `itemId` (matching a catalog item), a `quantity`, and optional expiration info. To unlock all items, return every item from the catalog with `quantity: 1` (or a high number for currencies):
```json
{
  "items": [
    {
      "itemId": "8194fcff-7c29-404f-8149-4c950a87a25b",
      "quantity": 1,
      "expirationDate": null,
      "lastModified": "2021-03-11T14:05:34.365Z",
      "expirationDetails": null
    },
    {
      "itemId": "65c5b809-cbcf-404c-aee8-ffc8db7267c1",
      "quantity": 999999,
      "expirationDate": null,
      "lastModified": "2020-07-22T23:02:44.418Z",
      "expirationDetails": null
    }
  ]
}
```
The game paginates with `offset` and `limit` query parameters (default limit is 1000). If there are more than 1000 items, it will make a second request with `offset=1000`.
Currency item types (`InGameCurrency`, `vcurrency`, `loyaltypoints`) should be given a large quantity (e.g. `999999`). All other items use `quantity: 1`.
## Full Catalog
### Battlepass (1)
| Item ID | Name ID | Season | Track | Tags |