6 min read

Import Content And Session Audio

Upload files, paste text, or review session-audio transcripts so the import pipeline can extract campaign memory into ScryRPG.

Last updated: May 27, 2026

What Import Does

Import is a bulk onboarding tool. You drop in a file (homebrew notes, a rulebook PDF, an item spreadsheet, a ZIP of an Obsidian vault) or review a transcript from a session recording. The importer reads the approved text, extracts the tabletop content, and hands you a reviewable preview before anything gets saved to your collection.

It is the fastest way to move an existing campaign into ScryRPG. Instead of retyping every NPC, location, magic item, or session decision, you upload what you already have and edit the results.

The tool lives at scryrpg.com/app/import (it was previously at /ingestion; the URL changed). You can also open it straight from your dashboard: look for the Import starter card on your home screen.

Powered by your familiar

Import is part of the AI Assistant. The importer classifies your files, extracts entities, and matches items against the marketplace, all before you commit anything to your collection.

Supported File Types

The dropzone accepts a single file or a batch selection. The 10 MB per-file limit keeps extractions fast.

FormatExtensionsBest For
Plain text.txt, .mdHomebrew notes, Obsidian notes, session summaries, pasted rulebooks
JSON.jsonCharacter exports from other tools
ZIP archive.zipA full Obsidian vault or any folder of campaign files (up to 500 files per archive)
PDF.pdfRulebooks, supplements, homebrew PDFs (text-based; up to 200 pages)
Spreadsheet.csv, .xlsxItem lists, NPC rosters, loot tables (up to 5,000 rows)

Note

You can also paste raw text directly into the large text box at the top of the page, no file needed. This is handy for quick character sheets or a block of session notes.

Session audio uses a separate party-scoped flow. Upload a recording, review the transcript, then send the approved transcript through this importer. Supported audio formats are .mp3, .m4a, .wav, .ogg, .opus, .flac, .aac, and .mp4.

Uploads are also the only way to import multi-file ZIPs. If you have a .odt, .docx, or other unsupported document format, export it to PDF or plain text first.

Step-by-Step: Importing Your First File

Import walks you through five steps. The wizard tracks your place, and if you close the tab mid-extraction, it picks up where you left off when you come back.

Step 1: Upload

Go to scryrpg.com/app/import. You have two entry points on the same screen:

  • Paste text into the large textarea at the top. Up to 150,000 characters.
  • Drop a file (or click to browse) in the dropzone below. PDF, CSV, XLSX, JSON, Markdown, or ZIP. You can select multiple files at once; they will be processed together.

If you are importing into an existing party, open Import from inside that party’s page instead of the standalone route. The importer will use the party’s existing characters and lore as context during extraction, which helps it disambiguate names.

If you are importing a session recording, open the party import page and choose Import session audio. Audio is transcribed first, then you review the transcript before sending it into the normal importer.

Step 2: Cost Estimate

Before the importer spends any of your AI budget, it shows you exactly what the extraction will cost.

Import Estimate
-----------------
  3 AI credits
  7 files to process (2 skipped)
  2 chunks

The cost is based on how many chunks your content splits into. One chunk costs 1 AI credit. Multi-chunk extractions also add a unified review pass, so N chunks cost N+1 credits. Small imports (a single character sheet, a one-page handout) almost always fit in one chunk.

Files that are clearly not TTRPG content (grocery lists, empty files, a README) get flagged as skipped and don’t count against your budget. Click Proceed to confirm, or Go Back to change the upload.

Session audio has two estimates. Transcription uses 1 AI credit per started 30 minutes of probed audio, minimum 1 credit. After you review the transcript, the importer gives a separate estimate for extracting campaign memory from the approved text.

Big Imports: Check First

Run the estimate before committing to a large vault. If the cost looks surprising, you can remove irrelevant files and re-upload instead of spending AI credits to find out.

Step 3: Extract

Extraction runs in the background. The progress step shows a live status message: “Processing 5 chunks in the background…”

For small inputs this takes seconds. For a 200-page PDF or a 100-file vault, it can take several minutes. You can:

  • Stay on the page and watch progress
  • Navigate away to another tab or feature; the job keeps running
  • Close the tab entirely: when you come back to /import, the wizard restores your place from the session

Under the hood, the importer classifies each file, chunks the content, extracts entities in parallel, merges duplicates, and runs a unified review pass for multi-chunk jobs. You don’t have to think about any of that. Just wait for the preview.

Step 4: Preview

This is where you review everything the importer found. Entities are grouped into collapsible sections by category:

  • Characters and NPCs, with stat blocks, inventory, and attributes
  • Locations, Factions, Quests, Lore, Sessions
  • Shops and Loot Drops, with their inventory
  • A Party block at the top, if the importer detected one

Every entry starts with a checkbox (approved). Uncheck anything you don’t want. You can use Approve all / Reject all on each category header to bulk-toggle.

See Editing the Preview below for the full list of edits you can make.

Step 5: Confirm

When you are happy with the preview, click Confirm. The importer commits the approved entries in a single transaction. You land on a success screen showing counts:

Import Complete
 Party: The Silver Daggers
 Characters: 4
 Items: 27  (18 marketplace, 9 custom)
 Lore Entities: 12  (4 npc, 3 location, 5 lore)

From there you can jump straight to the new party’s home page, or return to the dashboard.

Importing Session Audio

Session audio import is the same campaign-memory path with one extra review step before import.

  1. Open an existing party and choose Import session audio from the import page.
  2. Choose an audio file and confirm that you have permission to process the recording.
  3. ScryRPG probes duration, estimates transcription credits, and transcribes the file.
  4. Review the transcript, edit speaker labels, remove table chatter, and redact anything sensitive.
  5. Approve the transcript and send it to the importer.
  6. Review the normal import preview before confirming what becomes campaign memory.

The current flow starts from manual uploads. It does not record Discord voice, record from the browser microphone, or treat raw audio as a permanent archive.

Audio stays review-first

Raw audio is a temporary source for transcription and retry handling. The reviewed transcript is what can move into import, and the import preview still decides what becomes durable campaign record.

What Gets Extracted

The importer extracts TTRPG entities into these categories. Anything it doesn’t recognize is left out.

CategoryWhat it captures
PartyName, game system, description, party-wide inventory
CharactersPlayer characters with race, class, level, attributes, stat block, inventory
NPCsNon-player characters with disposition, stat block, inventory
LocationsPlaces with type, description, parent location, services
FactionsGroups with description and goals
QuestsQuest hooks with status, description, reward, quest giver
LoreFreeform world lore and worldbuilding notes
SessionsSession notes with number, date, players present
ShopsShopkeepers with owner, location, buy/sell modifiers, inventory
Loot DropsUnclaimed treasure pools with context and inventory
RelationshipsConnections between entities (e.g. “serves”, “rules”, “owns”)
EventsAtomic story events for assembling session summaries

Items are not a standalone category. Every item lives inside an inventory: on a character, NPC, shop, loot drop, or party. This matches how ScryRPG actually stores things. See Item Creation if you’d rather build items one at a time.

Lore entities (NPCs, locations, factions, quests, lore, sessions) are saved into your party’s lore vault. See Lore for how to manage them after import.

Note

The importer will not invent content. It only extracts what is actually in your file. If your notes say “the town has a blacksmith,” you’ll get a location with a passing mention, not a full stat block for the blacksmith.

Editing the Preview

The preview step is fully editable. For every extracted entry you can:

  • Toggle approval: uncheck to skip without deleting
  • Rename: fix spelling or disambiguate similar entries
  • Edit attributes: change race, class, level, descriptions, and other fields inline
  • Adjust inventory: rename items, tweak quantities, remove entries you don’t want
  • Set party name and game system at the top if the import is creating a new party

Use Start over in the header to abandon the preview and re-upload from scratch. Nothing is saved until you press Confirm.

Marketplace Matching

Every extracted item gets run through ItemMatcherService, the same fuzzy-search engine behind the marketplace’s item picker. The importer checks each item name against the existing marketplace catalog, your personal collection, and items already in your party.

In the preview, matched items show a colored badge next to their name:

  • Green “Marketplace”: high-confidence match (80% or above). The importer will link to the existing template instead of creating a duplicate.
  • Yellow “~Template Name (72%)”: partial match. Review before committing; you can override it.
  • Gray “Custom item”: no match found. The importer will create a new template from the extracted data.

This is the main reason import feels good on large vaults: instead of producing 500 near-duplicate copies of “Potion of Healing,” it folds them into the single canonical template already on the marketplace. Your inventory stays clean, and your characters are linked to real templates that other players can see and share.

Resolving Conflicts

When the importer processes multi-chunk imports, it runs a unified review pass that deduplicates entities across chunks. “Garrek,” “Garrek Ironforge,” and “G. Ironforge” mentioned in three different session notes get merged into one character.

Sometimes the merge step hits a field with conflicting values, say a character listed as level 7 in one file and level 8 in another. The preview flags these with a yellow Conflict banner and asks you to pick the correct value. Click a value to resolve it; the banner turns green.

You can also un-merge entities manually by unchecking the merged entry and approving the source versions instead.

Over-extraction is intentional

The importer is tuned to over-extract rather than miss things. Expect some noise: plot hooks that turned into “lore” entries, minor NPCs mentioned once, duplicate location names. Use the preview to trim. It’s easier to reject than to re-import.

Usage Limits

Imports spend your monthly AI credit allowance. A one-chunk extraction is 1 AI credit; an N-chunk extraction is N+1 credits (N extractions plus the unified review pass).

Import is intentionally one of the most expensive things you can do with your AI allowance. A full book PDF can consume an entire tier’s monthly budget in a single run, and that is by design. Every tier, including Free, can upload and import files as long as they have enough remaining credits. The cost estimate step always runs first so you see the cost before anything is charged.

Session audio transcription is charged before transcript review at 1 AI credit per started 30 minutes of probed audio, minimum 1 credit. Importing the approved transcript is estimated and charged separately.

For current tier limits and pricing, see Subscription.

Troubleshooting

“No TTRPG-relevant content found in the uploaded files.” The importer’s classifier decided nothing in the upload looked like campaign data. Common causes: uploaded the wrong file, PDF is image-based (no extractable text), or the file really is just a grocery list. Check the file, or paste the raw text directly so it skips classification.

Large imports feel expensive. Run the estimate first. If a 40-chunk cost is more than you want to spend, split the upload. Import one book, character roster, or folder at a time. You can run imports in sequence; each one commits independently.

Extraction failed partway through. The job reports failures in the status message. For transient errors (rate limits, network hiccups) just re-upload. For a malformed PDF or an unreadable spreadsheet, convert to a cleaner format and try again.

Audio upload failed or never reached transcript review. Check that the file is a supported audio format and that the recording is not corrupt. If transcription fails after upload, the status screen shows whether retry is available or whether you should delete and re-upload.

The preview is missing something I know is in the file. The importer only extracts what is stated or strongly implied. If a character’s level is never written down, it won’t guess. You can fix these gaps inline in the preview before confirming, or edit the entity after import from your party page.

I committed the preview and now I see junk entries. Use the normal edit and delete controls in your party, character sheets, and lore vault to clean up. Templates and instances are independent after creation, so removing a junk item from one inventory doesn’t affect other places that reference it. See Templates & Instances for the full model.

My import is still processing and I want to close the tab. Go ahead. The extraction job runs on the server. Come back to /import in the same browser session and the preview will be waiting.

My audio transcript needs cleanup. That is expected. Speaker labels and casual table chatter are review work, not final campaign record. Edit the transcript first, then approve it only when it is ready to import.

Common Questions

Does import work for any game system? Yes. The importer detects the game system from your content and falls back to your party’s system if it can’t tell. D&D 5e, Pathfinder 2e, and Draw Steel are all supported.

Can I import into an existing party, or does it always create a new one? Both. Open Import from inside a party to merge results into that party. Open Import from the dashboard to create a fresh party (or import content without a party at all).

Can I import a session recording into an existing party? Yes. Session audio is party-scoped because the transcript should inherit party context and review permissions. Upload the recording from the party import page.

What happens to duplicate items across files? The importer merges them during the unified review pass and folds them into marketplace matches wherever possible. You will almost never see the same item template created twice in one import.

Can I re-run an import on the same file? Yes. Each run is independent. You’ll get a fresh preview. Just be aware that confirming twice will create duplicate entities in your party. Edit the first import instead of re-running if you missed something.

What about character stat blocks? Will combat stats come through? Yes. The importer extracts AC, HP, speed, ability scores, skills, saves, attacks, features, and CR into a stat_block if they are present in the source. If stats aren’t mentioned, the field is left empty.

Is there a file size or page limit? 10 MB per document file. PDFs are capped at 200 pages. ZIPs are capped at 500 files and 100 MB total. Spreadsheets are capped at 5,000 rows. Plain-text pastes are capped at 150,000 characters. Session audio uses the party audio-import flow and is governed by the audio upload limits shown there.

What’s Next?

  • Item Creation: Build items manually when you need precise control
  • Marketplace: Where matched items come from, and how to publish your own
  • Lore: Manage NPCs, locations, and factions after import
  • AI Assistant: The AI system that powers import and other ScryRPG features
  • Subscription: Usage limits and upgrade options