> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.wynncraft.com/modules/item-recipe/list-items/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.wynncraft.com/_mcp/server.
# List item database entries
GET https://api.wynncraft.com/v3/item/database
This endpoint is cached for 1 hour in the SHARED cache source. See [Caching](/welcome#caching). This endpoint belongs to the ITEMS rate-limit bucket. See [Throttling and Rate Limits](/welcome#throttling-and-rate-limits).
Items use the [API Markup parser](/welcome#api-markup-parser) for Major IDs.
`fullResult` bypasses pagination and returns the `results` object for all objects at once.
This endpoint uses the generic pagination response format.
Enum values in these docs are based on the item metadata available on April 23, 2026. New item content can add or change values over time.
Reference: https://docs.wynncraft.com/modules/item-recipe/list-items
## Request
### Query parameters
- `page` (integer, optional)
- `fullResult` (enum, optional) — Presence-based flag that expands responses. Send it without a value as `?fullResult`. Using `?fullResult=true` or `?fullResult=false` is not accepted.
- Allowed values: ``
## Response
### 200
Paginated item list.
- `controller` (PaginationController, required)
- `results` (list of Item, required)
## Types
### PaginationController
- `count` (integer, required)
- `current_count` (integer, required)
- `pages` (integer, required)
- `prev` (integer, required, nullable)
- `current` (integer, required)
- `next` (integer, required, nullable)
### Item
- `displayName` (string, required)
- `internalName` (string, required)
- `type` (enum, required)
- Allowed values: `weapon`, `armour`, `accessory`, `charm`, `tome`, `tool`, `material`, `ingredient`
- `subType` (enum, required)
- Allowed values: `bow`, `dagger`, `relik`, `spear`, `wand`, `boots`, `chestplate`, `helmet`, `leggings`, `bracelet`, `necklace`, `ring`, `guildTome`, `armourTome`, `expertiseTome`, `marathonTome`, `mysticismTome`, `lootrunTome`, `weaponTome`, `axe`, `rod`, `pickaxe`, `scythe`, `farming`, `fishing`, `mining`, `woodcutting`
- `icon` (ItemIcon, required)
- `emblem` (enum, required)
- Allowed values: `diamond5`, `diamond_5`, `diamond1`, `diamond_1`, `diamond4`, `diamond_4`, `diamond6`, `diamond_6`, `diamond3`, `diamond_3`, `diamond2`, `diamond_2`, `shield5`, `shield_5`, `shield1`, `shield_1`, `shield4`, `shield_4`, `shield6`, `shield_6`, `shield3`, `shield_3`, `shield2`, `shield_2`, `shield`, `sticker5`, `sticker_5`, `sticker1`, `sticker_1`, `sticker4`, `sticker_4`, `sticker6`, `sticker_6`, `sticker3`, `sticker_3`, `sticker2`, `sticker_2`, `square5`, `square_5`, `square4`, `square_4`, `square6`, `square_6`, `square`
- `tier` (enum, required)
- Allowed values: `rare`, `unique`, `normal`, `legendary`, `mythic`, `fabled`, `TIER3`, `TIER2`, `TIER1`, `TIER0`
- `attackSpeed` (enum, optional)
- Allowed values: `slow`, `fast`, `superSlow`, `normal`, `verySlow`, `veryFast`, `superFast`
- `averageDps` (double, optional)
- `restriction` (string, optional)
- `dropRestriction` (string, optional)
- `gathering` (enum, optional)
- Allowed values: `farming`, `fishing`, `mining`, `woodcutting`
- `set` (enum, optional)
- Allowed values: `boundless`, `corrupted`, `firemoss`, `bony`, `spore`, `petal`, `scrap`, `beachside`, `pigman`, `toxic`, `regal`, `vexing`, `voidglass`, `cosmicFoundations`, `snail`, `thanosLegionnaire`, `uth`, `cosmic`, `leaf`, `tribal`, `saint's`, `visceral`, `ascension`, `ultramarine`, `taigaElk`, `clock`, `nii`, `moirai`, `bleeding`, `liffmail`, `elf`, `slime`, `goblin`, `ghostly`, `horse`, `snow`, `skien's`, `thunderRelic`, `morph`, `black`, `earthRelic`, `waterRelic`, `relic`, `outlaw`, `silverfish`, `nether`, `fireRelic`, `airRelic`, `adventurer`, `darkened`, `bovine`, `bear`, `kaerynn`, `villager`, `spider`, `conqueredSkies`, `synchCore`, `flashfire`, `jester`, `forgottenChronicles`, `wynnterfest2016`, `bandit's`, `desert`, `blackCatalyst`, `constellation`, `hallowynn2016`
- `elements` (list of string, optional)
- `requirements` (ItemRequirements, optional)
- `majorIds` (map from string to string, optional)
- `powderSlots` (integer, optional)
- `lore` (string, optional)
- `identifications` (map from string to IdentificationValue, optional)
- `base` (map from string to IdentificationValue, optional)
### ItemIcon
- `value` (AbilityIconValue, required)
- `format` (string, required)
### ItemRequirements
- `level` (integer, optional)
- `classRequirement` (string, optional)
- `strength` (integer, optional)
- `dexterity` (integer, optional)
- `intelligence` (integer, optional)
- `defence` (integer, optional)
- `agility` (integer, optional)
### IdentificationValue
### AbilityIconValue
- `id` (string, required)
- `name` (string, required)
- `customModelData` (AbilityIconValueCustomModelData, required)
### IdentificationValue1
- `min` (integer, required)
- `raw` (integer, required)
- `max` (integer, required)
### AbilityIconValueCustomModelData
- `rangeDispatch` (list of integer, required)
## Examples
**Response**
```json
{
"controller": {
"count": 3,
"current_count": 1,
"pages": 3,
"prev": 1,
"current": 2,
"next": 3
},
"results": [
{
"displayName": "Idol",
"internalName": "Idol",
"type": "weapon",
"subType": "spear",
"icon": {
"value": {
"id": "minecraft:potion",
"name": "spear.water3",
"customModelData": {
"rangeDispatch": [
3024
]
}
},
"format": "attribute"
},
"emblem": "diamond_5",
"tier": "mythic",
"attackSpeed": "normal",
"averageDps": 533,
"restriction": "none",
"dropRestriction": "normal",
"elements": [
"water"
],
"requirements": {
"level": 95,
"classRequirement": "warrior",
"intelligence": 120
},
"majorIds": {
"Tidal Drift": "Flying Kick will instead send you forwards. This effect is limited to once per Charge cast."
},
"powderSlots": 3,
"lore": "Intricate carvings and images, almost like that of a totem pole, cover the shaft of this marvelous trident, dredged up from the Seavale Reef. Foreign magics heighten the senses of its user in battle, but also instills a longing for the ocean. Many have succumbed to this urge and drowned themselves.",
"identifications": {
"manaRegen": {
"min": 3,
"raw": 10,
"max": 13
},
"reflection": {
"min": 9,
"raw": 30,
"max": 39
},
"waterDefence": {
"min": 5,
"raw": 15,
"max": 20
},
"rawIntelligence": 26,
"rawSpellDamage": {
"min": 79,
"raw": 264,
"max": 343
},
"raw2ndSpellCost": {
"min": -15,
"raw": -50,
"max": -65
}
},
"base": {
"baseWaterDamage": {
"min": 220,
"raw": 220,
"max": 300
}
}
}
]
}
```
**SDK Code**
```python Paginated item response with a single item
import requests
url = "https://api.wynncraft.com/v3/item/database"
response = requests.get(url)
print(response.json())
```
```javascript Paginated item response with a single item
const url = 'https://api.wynncraft.com/v3/item/database';
const options = {method: 'GET'};
try {
const response = await fetch(url, options);
const data = await response.json();
console.log(data);
} catch (error) {
console.error(error);
}
```
```go Paginated item response with a single item
package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.wynncraft.com/v3/item/database"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
```
```ruby Paginated item response with a single item
require 'uri'
require 'net/http'
url = URI("https://api.wynncraft.com/v3/item/database")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body
```
```java Paginated item response with a single item
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;
HttpResponse response = Unirest.get("https://api.wynncraft.com/v3/item/database")
.asString();
```
```php Paginated item response with a single item
request('GET', 'https://api.wynncraft.com/v3/item/database');
echo $response->getBody();
```
```csharp Paginated item response with a single item
using RestSharp;
var client = new RestClient("https://api.wynncraft.com/v3/item/database");
var request = new RestRequest(Method.GET);
IRestResponse response = client.Execute(request);
```
```swift Paginated item response with a single item
import Foundation
let request = NSMutableURLRequest(url: NSURL(string: "https://api.wynncraft.com/v3/item/database")! as URL,
cachePolicy: .useProtocolCachePolicy,
timeoutInterval: 10.0)
request.httpMethod = "GET"
let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
if (error != nil) {
print(error as Any)
} else {
let httpResponse = response as? HTTPURLResponse
print(httpResponse)
}
})
dataTask.resume()
```