Importing actors
Bring actors into your library via the TurnWarden Extension or a JSON file, then add them to any encounter in two clicks.
TurnWarden gives you two ways to bring monsters and NPCs into your library. The fastest route is the TurnWarden Extension. Installed once in Chrome, it parses any D&D Beyond monster page and copies the stat block as ready-to-paste JSON. The second route accepts that same JSON from any source: a module export, an LLM output, or a hand-written file. Both flows land the actor in your Library, ready to add to any encounter.
The Extension flow
The Extension reads the live DOM of a D&D Beyond monster page and exports the stat block in TurnWarden's canonical JSON shape: no copy-pasting from stat-block text, no manual field entry.
- 1.Install the TurnWarden Extension
Head to the TurnWarden Extension article for the current install link and setup steps. The Extension runs in Chrome and requires no account beyond your existing D&D Beyond login.
- 2.Open a monster page on D&D Beyond
Navigate to any monster or NPC entry on D&D Beyond. The System Reference Document entries work without a subscription. The Extension icon in your Chrome toolbar becomes active on these pages.
- 3.Click the Extension popup
Click the TurnWarden icon in the Chrome toolbar. The popup shows the monster's name and a summary of parsed fields. If a field is missing or null, it will appear as
nullin the output; TurnWarden handles those gracefully on import. - 4.Copy the JSON
Click Copy JSON in the popup. The full stat block is now on your clipboard in TurnWarden's canonical format.
- 5.Paste into TurnWarden
In the TurnWarden web app, look at the Library rail header on the left of the tracker. Select + Bind ▾ → Bind from Import. The Bind to Library dialog opens on the import pane. Paste your clipboard into the Monster JSON textarea (Cmd/Ctrl+V) and select the green Import button. TurnWarden validates the shape and adds the actor to your Library within a second.
The JSON paste flow
You can paste any JSON that matches TurnWarden's canonical shape. The Extension is the fastest source, but D&D Beyond module exports, LLM-generated stat blocks, and hand-written JSON all work as long as the required fields are present.
- 1.Acquire the JSON
Obtain a JSON file or string that conforms to TurnWarden's
MonsterDatashape. Common sources: a D&D Beyond module export, a JSON file generated by an LLM given a monster description, or a manually authored file for a homebrew creature. - 2.Open the Bind from Import pane
In the TurnWarden web app, find the Library rail on the left of the tracker. Select + Bind ▾ in the rail header and choose Bind from Import from the dropdown. The Bind to Library dialog opens directly on the import pane: a Monster JSON textarea ready for your paste, and an Upload JSON file button if you would rather pick a saved
.jsonfrom disk. - 3.Paste the JSON
Paste the JSON string into the Monster JSON textarea and select the green Import button. TurnWarden checks the shape: if the required fields are present and well-formed, the actor appears in the Library immediately. If the shape is wrong, an inline alert explains what is missing; fix and re-import.
- 4.Confirm in the Library
The imported actor appears at the top of your Library list. Select the actor to review the parsed stat block before adding it to an encounter.
Any JSON matching the MonsterData shape works: D&D Beyond module exports, LLM output, or hand-written JSON. The Extension is the quickest path, but the paste flow accepts the same format from any origin.
What the JSON looks like
TurnWarden's canonical stat-block shape covers the fields a DM needs at the table: the creature's display name, armour class, hit points, ability scores, and the actions it takes in combat. Here is a trimmed Goblin sample that shows every top-level field:
The key fields you will see most often:
displayNameis the name shown in the tracker and the player view.acandhpare armour class (value + optional notes) and hit points (average, formula, and notes).abilitiesis the six ability scores as a flat map:str,dex,con,int,wis,cha.actionsis an array of action objects, each with anameand adescriptionstring.traits,bonusActions,reactions,legendaryActions,mythicActionsfollow the same array shape asactions.
{
"source": "dndbeyond",
"actorType": "monster",
"displayName": "Goblin",
"meta": {
"size": "Small",
"creatureType": "Humanoid (goblinoid)",
"alignment": "Neutral Evil"
},
"ac": { "value": 15, "notes": "leather armour, shield" },
"hp": { "average": 7, "formula": "2d6", "notes": null },
"speed": { "walk": "30 ft.", "fly": null, "swim": null, "climb": null, "burrow": null, "notes": null },
"abilities": { "str": 8, "dex": 14, "con": 10, "int": 10, "wis": 8, "cha": 8 },
"saves": [],
"skills": [{ "name": "Stealth", "mod": "+6" }],
"damageVulnerabilities": [],
"damageResistances": [],
"damageImmunities": [],
"conditionImmunities": [],
"senses": ["darkvision 60 ft."],
"languages": ["Common", "Goblin"],
"challenge": "1/4",
"xp": 50,
"proficiencyBonus": "+2",
"imageUrl": null,
"traits": [],
"actions": [
{ "name": "Scimitar", "description": "Melee Weapon Attack: +4 to hit, reach 5 ft., one target. Hit: 5 (1d6 + 2) slashing damage." },
{ "name": "Shortbow", "description": "Ranged Weapon Attack: +4 to hit, range 80/320 ft., one target. Hit: 5 (1d6 + 2) piercing damage." }
],
"bonusActions": [],
"reactions": [],
"legendaryActions": [],
"mythicActions": []
}The full MonsterData type definition lives at packages/shared/src/monster.ts in the TurnWarden codebase (internal reference). The interface includes optional fields (damageImmunitiesNote, legendaryActionsNote) that the Extension populates when D&D Beyond splits that prose into a separate text node.
What's next
With actors in your Library, you are ready to run a full encounter. The running your first encounter guide walks through adding Library actors to the tracker, rolling initiative, and advancing the round. If you want to expand your Library further, revisit the TurnWarden Extension article; the Extension makes importing a two-click operation for every monster on D&D Beyond.