Command Line
Read Inventor files, compare model states and export JSON from a terminal or a script - no Inventor required.
Prefer the terminal, or need to process many files unattended? invmeta is a small command-line
tool that reads the same metadata as the desktop app. It's cross-platform (Windows, macOS, Linux)
and, like the app, needs no Autodesk Inventor.
The desktop viewer is on the Microsoft Store; the command-line tool is for developers and automation, so you build it from source.
Build it
You need the .NET 10 SDK, then:
git clone https://github.com/TWiesendanger/ExtrabbitCode.Inventor.MetaReader.git
cd ExtrabbitCode.Inventor.MetaReader
dotnet build src/InventorMeta.Cli -c Release
# the binary lands in src/InventorMeta.Cli/bin/Release as invmeta(.exe)Commands
invmeta info <file> friendly report (type, iProperties, refs, version)
invmeta states <file> per-model-state iProperties (parts/assemblies)
invmeta json <file> full metadata as JSON
invmeta props <file> every property in every set
invmeta tree <file> raw file structure
invmeta thumb <file> [outBase] extract the embedded preview image
invmeta extract <file> <outDir> dump every stream to disk
invmeta cat <file> <streamPath> hex+ascii dump of one streamEveryday use
A quick, readable report - document type, key iProperties, references, model states and version:
invmeta info "SamplePart.ipt"Compare a multi-state part's properties (the same data as the Model States tab):
invmeta states "SamplePart.ipt"Pull the preview image out of a file:
invmeta thumb "Assembly1.iam" preview
# -> writes preview.png (or preview.bmp)Automating across many files
Because json writes to standard output, it drops straight into scripts. For example, export the
metadata of every part in a folder:
for f in *.ipt; do
invmeta json "$f" > "${f%.ipt}.json"
done…or pull one field out with a JSON tool like jq:
invmeta json "SamplePart.ipt" | jq -r '.summary."Part Number"'If you'd rather call the parser directly from your own program instead of shelling out, see For developers.