Discover/BG3 API
live

BG3 APIbg3.wiki

Access Baldur's Gate 3 wiki data via API. Query classes, subclasses, spells, items, and quests with structured JSON responses from bg3.wiki.

Endpoint health
verified 2d ago
get_class
get_subclass
get_quest
get_spell
list_items_by_category
9/9 passing latest checkself-healing
Endpoints
9
Updated
22d ago

What is the BG3 API?

The BG3 Wiki API exposes 9 endpoints covering classes, spells, items, and quests from bg3.wiki, each returning structured JSON with fields like proficiencies, spell school, item rarity, and quest sections. The get_spell endpoint returns damage dice, range, action cost, area of effect, saving throw type, and the list of classes that can cast it. The list_spells endpoint accepts optional filters for level, school, and class, making it practical for build-planning tools and character sheet generators.

Try it
Name of the class. Accepted values: Barbarian, Bard, Cleric, Druid, Fighter, Monk, Paladin, Ranger, Rogue, Sorcerer, Warlock, Wizard.
api.parse.bot/scraper/842c17bb-e12a-4275-bd2b-f650c5ae8936/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/842c17bb-e12a-4275-bd2b-f650c5ae8936/get_class?class_name=Barbarian' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace bg3-wiki-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

from parse_apis.baldur_s_gate_3_wiki_api import BG3Wiki, SpellSchool, ClassName, SpellLevel

wiki = BG3Wiki()

# List all character classes
for cls in wiki.characterclasses.list():
    print(cls.name, cls.url)

# Get detailed info on a specific class
barbarian = wiki.characterclasses.get(name=ClassName.BARBARIAN)
print(barbarian.name, barbarian.summary)
print(barbarian.proficiencies.armor, barbarian.proficiencies.weapons)

# Navigate from subclass summary to full subclass details
for sc in barbarian.subclass_list:
    subclass = sc.details()
    print(subclass.name, subclass.parent_class)
    for feat in subclass.features:
        print(feat.name)

# Get a subclass directly
berserker = wiki.subclasses.get(name="Berserker")
print(berserker.name, berserker.parent_class, berserker.url)

# List evocation spells using enum
for spell in wiki.spells.list(school=SpellSchool.EVOCATION):
    print(spell.name, spell.url)

# List cantrips using SpellLevel enum
for spell in wiki.spells.list(level=SpellLevel.CANTRIP):
    print(spell.name, spell.url)

# Get full spell details
fireball = wiki.spells.get(name="Fireball")
print(fireball.name, fireball.level, fireball.school, fireball.damage, fireball.concentration)

# List items by category
for item in wiki.items.list_by_category(category="Amulets"):
    print(item.name, item.url)

# Get item details
blade = wiki.items.get(name="Everburn Blade")
print(blade.name, blade.rarity, blade.damage, blade.damage_type)

# Get quest info
quest = wiki.quests.get(name="Escape the Nautiloid")
print(quest.name, quest.description)
for section in quest.sections:
    print(section)

# Search the wiki
for page in wiki.wikipages.search(query="Fireball"):
    print(page.title, page.snippet)
All endpoints · 9 totalmissing one? ·

Retrieve detailed information for a specific character class, including proficiencies, progression table parameters, and subclasses. The progression object keys vary by class.

Input
ParamTypeDescription
class_namerequiredstringName of the class. Accepted values: Barbarian, Bard, Cleric, Druid, Fighter, Monk, Paladin, Ranger, Rogue, Sorcerer, Warlock, Wizard.
Response
{
  "type": "object",
  "fields": {
    "url": "string, full wiki URL",
    "name": "string, class name",
    "summary": "string, short summary from the class template",
    "subclasses": "array of objects with name field",
    "description": "string, introductory description from the wiki",
    "progression": "object containing class progression table parameters",
    "proficiencies": "object containing armor, weapons, and saving_throws strings"
  },
  "sample": {
    "data": {
      "url": "https://bg3.wiki/wiki/Barbarian",
      "name": "Barbarian",
      "summary": "",
      "subclasses": [
        {
          "name": "Berserker"
        },
        {
          "name": "Wildheart"
        }
      ],
      "description": "Barbarian is a class in Baldur's Gate 3.\n\n",
      "progression": {},
      "proficiencies": {
        "armor": "",
        "weapons": "",
        "saving_throws": ""
      }
    },
    "status": "success"
  }
}

About the BG3 API

Classes and Subclasses

The get_class endpoint returns a class's name, a short summary, an introductory description, proficiencies (armor, weapons, saving throws), a progression table object, and an array of subclass names with links. The list_classes endpoint returns all playable classes as name/URL pairs. For subclass detail, get_subclass resolves a subclass name like Berserker or Oath of Devotion and returns its parent class, introductory description, and a list of subclass feature names.

Spells and Items

get_spell returns the full mechanical profile of a spell: level, school, range (in metres), damage dice, area of effect type, action cost, saving throw, and an array of class strings that can cast it. list_spells accepts three independent optional filters — level (0–6), school (e.g. Evocation), and class (e.g. Cleric) — and returns matching spell names with wiki URLs. For items, get_item returns name, type, rarity, weight, gold price, flavour quote, and for weapons specifically, damage dice and damage type. list_items_by_category accepts a category string such as Weapons, Amulets, or Armour; composite categories like Armour automatically aggregate Light, Medium, and Heavy subcategory results.

Quests and Search

get_quest retrieves a quest's introductory description and an array of section headings from its wiki page, and automatically follows wiki redirects so variant spellings still resolve correctly. search_wiki accepts a keyword query and returns up to 20 results, each with a page title, a context snippet showing where the search term appears, and the full wiki URL. This makes it useful for fuzzy lookups when the exact item or quest name is unknown.

Reliability & maintenanceVerified

The BG3 API is a managed, monitored endpoint for bg3.wiki — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when bg3.wiki changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official bg3.wiki API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
2d ago
Latest check
9/9 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Generate class comparison tables using proficiencies and subclass lists from get_class
  • Filter spells by school and level via list_spells to build a sortable spell browser for a companion app
  • Display full item stat cards — rarity, weight, price, damage dice — by calling get_item on user-selected gear
  • Power a quest checklist by pulling section headings from get_quest as progress milestones
  • Build a subclass picker UI by calling get_subclass for each entry returned in a class's subclasses array
  • Implement a wiki search bar in a BG3 companion app using search_wiki snippets for autocomplete context
  • Aggregate all weapons in a damage category by iterating list_items_by_category with subcategory filters
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does bg3.wiki have an official developer API?+
bg3.wiki is a community wiki running on MediaWiki. MediaWiki exposes a public Action API (documented at mediawiki.org/wiki/API:Main_page), but it returns raw wikitext and requires significant parsing to extract structured game data. This Parse API returns pre-structured JSON fields like damage dice, proficiencies, and subclass lists without additional parsing work.
What does `get_spell` return, and how does `list_spells` filtering work?+
get_spell returns a single spell's level, school, range in metres, damage dice, area of effect, action cost, saving throw type, and an array of class names that can cast it. list_spells accepts three independent optional query parameters — level (0–6), school (e.g. Necromancy), and class (e.g. Wizard) — and can be used with any combination of them. Omitting all filters returns the full spell list.
Does the API return monster or enemy stat blocks?+
Not currently. The API covers playable classes, subclasses, spells, items, quests, and wiki search. Monster stat blocks and enemy data are not exposed. You can fork this API on Parse and revise it to add an endpoint targeting bg3.wiki's creature pages.
Does `get_item` return location or loot-drop information for items?+
Not currently. get_item returns type, rarity, weight, price, flavour quote, and for weapons, damage dice and damage type. Loot location and drop source data are not included in the current response. You can fork this API on Parse and revise it to add location fields from item wiki pages.
How does `list_items_by_category` handle broad categories like Armour?+
Passing Armour as the category automatically combines results from the Light Armour, Medium Armour, and Heavy Armour subcategories into one array. You can also pass a subcategory directly (e.g. Light Armour or Greatswords) to retrieve a narrower set. Each result includes the item name and its full wiki URL.
Page content last updated . Spec covers 9 endpoints from bg3.wiki.
Related APIs in EntertainmentSee all →
5e.tools API
Search and retrieve D&D 5e game data like races, classes, and spells to power your character builders, campaign tools, or reference applications. Access comprehensive spell sources and character creation options directly from the official 5e.tools database.
eldenring.wiki.fextralife.com API
Search and retrieve structured Elden Ring game information from the Fextralife Wiki, including weapons, enemies, locations, and lore. Access full article content with hierarchical sections, tables, and images, or search the complete article catalog by keyword.
howbazaar.gg API
Query items, skills, merchants, and monsters from the How Bazaar game database. Look up detailed information about in-game equipment, abilities, NPCs, and enemy encounters, with optional filters by hero, tier, size, and tag.
wikia.org API
Search and retrieve detailed information about characters, episodes, lore, and other content from Fandom wikis across thousands of fan communities. Browse wiki categories, look up specific pages, and access structured data about your favorite franchises all in one place.
wowhead.com API
Access comprehensive World of Warcraft game data including items, NPCs, spells, and quests, plus stay updated with the latest WoW news and in-game events. Search the complete Wowhead database and read individual news articles to keep informed about current happenings in the game.
wikia.com API
Extract structured data from Fandom (formerly Wikia) gaming wikis. Search pages, retrieve full page content, list category members, and convert wiki pages into organized guides with infoboxes, section breakdowns, and clean text.
dofus.com API
Access comprehensive Dofus 3.0 game data including detailed class information, current bug reports, daily Almanax rewards, and player rankings. Explore the full encyclopedia and community statistics to optimize your gameplay and stay updated on game status.
wiki.rustclash.com API
Access Rust game items, skins, blueprints, and crafting data from the RustClash Wiki. Browse and search items by category, explore skin listings with market prices, and retrieve detailed stats including crafting recipes, repair costs, loot locations, and workbench blueprint tiers.