API
A free, read-only JSON API and iframe widgets for external wikis and tools that want to show monster data, images or 3D models from this site. Read the legal notice before using visual assets in another project.
Base URL and versioning
All endpoints are under the URL below. The v1 prefix is a stable contract: existing fields are never renamed or removed without moving to a new version.
https://dqmj1.wiki/api/v1/Endpoints
| GET | /api/v1/meta | API version, species count, supported languages |
| GET | /api/v1/families | The 8 monster families, names in 5 languages |
| GET | /api/v1/monsters | Paginated list (filters: family, rank; params: cursor, limit) |
| GET | /api/v1/monsters/{id} | Full monster sheet (names, stats, images, model, resistances...) |
| GET | /api/v1/monsters/{id}/model | 3D model metadata (glTF URL, embed URL) |
| GET | /api/v1/monsters/{id}/fusions | Special recipes, generic fusion examples, used-as-parent list |
| GET | /api/v1/skills/{id} | Skill sheet (name, description, point tiers) |
| GET | /api/v1/chests | Chests loot tables (tiers A, B, C), 65 maps, 52 fixed rewards |
| GET | /api/v1/chests/3d | 76 physical 3D chests extracted from map scripts with exact X, Y, Z world coordinates, yaw, and loot tiers (params: map) |
| GET | /api/v1/wild-encounters | Complete wild encounter tables across 66 maps with Day/Night/Rain/Storm weather cycles (.enct, params: map, monster) |
| GET | /api/v1/battle-arenas | 83 distinct 3D battle arena stages (bd*, bf*, bh*, be*) linked to maps and monsters (params: map, monster) |
| GET | /api/v1/items | Item catalog (126 items, buy/sell prices, reward sources) |
| GET | /api/v1/items/{id} | Item sheet with detailed chest and fixed reward sources |
| GET | /api/v1/scout-rates | Scout / capture rates and ROM formula (params: monster, scoutable) |
| GET | /api/v1/drops | Post-battle item drops and drop rate table (params: monster, item) |
| GET | /api/v1/ai-patterns | Combat AI behavior patterns (131 patterns, 256 actions, params: pattern, action) |
| GET | /api/v1/animations | 3D animations catalogue and combat round timings (1,107 clips, 277 models, params: monster, model, role, slot) |
| GET | /api/v1/music | Game music reconstructed from the ROM SSEQ sequences (SSEQ file, engine BGM number, map context, notes, tracks, sample archive); the ROM contains no track titles |
| GET | /api/v1/jingles | Authentic fanfares and event jingles (ME, 19 tracks: ROM symbol, source type, duration, source audio URL) |
| GET | /api/v1/sfx | Sound effects extracted from the ROM (292 sounds: combat spells & attacks, system menus, exploration, cutscenes; query params: category, subcategory, q) |
| GET | /api/v1/sfx/categories | List available SFX identifiers grouped by categories and subcategories (query param: category) |
| GET | /api/v1/scenes | Interactive 3D scenes, battlefields, and scenery props (184 models with authentic names, locations, and glTF URLs) |
| GET | /api/v1/artworks | Fullscreen game artworks and cinematics (.d16, 40 images; params: category, lang, q) |
| GET | /api/v1/spell-effects | Spell visual effects (.efc) & combat calculation parameters (256 spells; params: ability_id, has_scaling, q) |
| GET | /api/v1/monster-attacks | Calculated attack curve per level (1-99) for all 211 monsters (AbilityTbl.bin & EnmyKindTbl.bin; params: monster, lang) |
| GET | /api/v1/story-timeline | Chronological storyline across 5 narrative acts, chapters, maps, and unlocks (params: act, lang) |
| GET | /api/v1/story-scripts | Decompiled .evt event scripts, 3,179 Japanese developer comments (0xaa), and scenario flags (params: map, category) |
| GET | /api/v1/cutscenes | Decompiled cutscenes (244 demo scripts, 644 3D camera shots, multilingual dialogues in 5 languages; params: id, act, category, has_dialogue, lang, q) |
| GET | /api/v1/spells | 167 real spells and abilities: MP cost, damage range, wisdom thresholds, unlocking skills (params: lang) |
| GET | /api/v1/spells/{id} | One spell with the monsters that start with its skills |
| GET | /api/v1/islands | The 7 islands: zones, dungeons and wild monsters with day/night (params: lang) |
| GET | /api/v1/shops | Shop stock lists: items, prices and game progress window (params: lang) |
| GET | /api/v1/battles | Scripted boss, colosseum and shrine battles by map (params: map, lang) |
| GET | /api/v1/resistances | Resistance categories and the monsters vulnerable, immune, reflecting or healed (params: lang) |
{id} is the internal monster id shown in this site's URLs (e.g. m000 for Slime). No API key is required; all responses allow cross-origin requests from any site.
Example call
curl https://dqmj1.wiki/api/v1/monsters/m000Example response
{
"id": "m000",
"speciesId": 1,
"rank": "F",
"family": "slime",
"names": { "en": "Slime", "fr": "Gluant", "de": "Schleim", "it": "Slime", "es": "Limo" },
"images": {
"icon": "https://dqmj1.wiki/api/assets/images/icons/monsters/m000.png",
"preview": "https://dqmj1.wiki/api/assets/models/previews/m000.webp"
},
"model": {
"gltf": "https://dqmj1.wiki/api/assets/models/web-gltf/animated/m000/m000.gltf",
"animated": true
},
"stats": {
"caps": { "hp": 910, "mp": 600, "attack": 820, "defense": 900, "agility": 800, "wisdom": 840 },
"source": "rom-verified"
},
"innateSkill": { "id": 102, "names": { "en": "Slimer", "fr": "Pot de glu", "...": "..." } },
"resistances": [],
"traits": ["Critical Massacre"],
"nicknames": ["Slimer", "Slimo", "Mr Slim"],
"slug": "slime",
"wikiUrl": "https://dqmj1.wiki/monsters/m000-slime",
"urls": {
"en": "https://dqmj1.wiki/monsters/m000-slime",
"fr": "https://dqmj1.wiki/fr/monstres/m000-slime",
"de": "https://dqmj1.wiki/de/monster/m000-slime",
"it": "https://dqmj1.wiki/it/mostri/m000-slime",
"es": "https://dqmj1.wiki/es/monstruos/m000-slime"
},
"legal": {
"notice": "Dragon Quest Monsters: Joker [...] property of Square Enix [...]",
"attributionRequired": true,
"termsUrl": "https://dqmj1.wiki/legal"
}
}Errors use a uniform shape (error), with a standard HTTP status code (404, 400) and a stable code field.
{ "error": { "code": "not_found", "message": "No monster with id \"m999\"." } }Iframe widgets
For a ready-made visual block instead of raw JSON, embed one of these pages in an <iframe>. They carry their own permanent attribution notice.
| GET | /embed/monster/{id} | Compact card: name, rank/family, stats, innate skill |
| GET | /embed/monster/{id}/model | 3D model viewer only (orbit controls) |
| GET | /embed/fusion/{id} | Fusion lineage diagram |
Parameters: ?lang= (en, fr, de, it, es) and ?compact=1 (compact card only, on the monster card widget). The widget reports its real height to the parent page via postMessage so you can size the iframe without an inner scrollbar:
<iframe id="dqmj1" src="https://dqmj1.wiki/embed/monster/m000" width="320" height="0" frameborder="0"></iframe>
<script>
window.addEventListener("message", (e) => {
if (e.data?.type === "dqmj1-wiki:resize") {
document.getElementById("dqmj1").height = e.data.height;
}
});
</script>Cache, rate limits, availability
- Responses are cacheable (data only changes on a redeploy); cache them on your side if you make many requests.
- No API key, but requests may be rate-limited per IP if usage causes problems.
- This is a personal, non-commercial project with no uptime guarantee.