An API (application programming interface) is the set of commands a piece of software offers to other programs. BIM software has APIs so that scripts, add-ins and other systems can read and change models without someone clicking through the interface. Almost every "automation" in BIM, from a renaming script to an AI assistant that queries a model, goes through one of three routes: a desktop API, a cloud API, or reading the files directly.
At a glance
| Route | What it is | Examples | Good for |
|---|---|---|---|
| Desktop (in-app) API | Code that runs inside the authoring tool while it's open | Revit API (.NET), Archicad API and add-ons, Tekla Open API, Rhino/Grasshopper SDK | Changing the model: parameters, views, sheets, families, checks while you work |
| Cloud API | Web services from the vendor's platform, called over the internet | Autodesk Platform Services, Bentley iTwin APIs, Trimble Connect APIs, Speckle | Reading models and data in the cloud, automating CDE tasks, dashboards, integrations |
| File-based | Reading or writing open formats with a library | IFC with IfcOpenShell or web-ifc, BCF, COBie spreadsheets | Vendor-neutral checks, extraction and reports |
What people automate
| Task | Typical route | Example |
|---|---|---|
| Fill or fix parameters in bulk | Desktop API (often via Dynamo or pyRevit) | Set fire rating on 600 doors from a schedule |
| Create sheets and views | Desktop API | 120 room data sheets from a template |
| Check models against rules | Desktop API or file-based | Every space has a number and an area |
| Extract data to Excel or a database | File-based or cloud API | Weekly export of all assets with their tags |
| Move files and set statuses in a CDE | Cloud API | Publish approved containers and notify teams |
| Feed a dashboard | Cloud API | Clash and issue counts per discipline, updated nightly |
| Let an AI assistant query a model | Cloud or desktop API, often through MCP | "How many doors on Level 2 have no fire rating?" |
What you need to know before starting
- Scripting doesn't always mean coding: visual tools (Dynamo, Grasshopper) use the same APIs with blocks instead of text.
- Desktop APIs need the software running and a licence; cloud APIs need an account, credentials and sometimes paid usage.
- APIs change with versions: a script for one release may need small changes for the next.
- Permissions matter: a script can change thousands of elements in seconds. Test on a copy.
Worked example
A coordinator spends two hours a week exporting issue counts from the CDE and coordination software into a spreadsheet for the meeting pack. A short script calls the CDE's cloud API every Monday at 6:00, collects open issues by discipline and age, and writes them into the pack template. Two hours a week become two minutes, and the numbers are the same every time.
Common mistakes
- Starting with code before writing down exactly what the manual process is.
- Running scripts on live models without a backup or a test copy.
- Storing passwords or API keys inside scripts shared with others.
- Building one-off scripts nobody else can maintain.
Where to read more
Each vendor publishes API documentation and samples (Autodesk Platform Services, Revit API docs, Graphisoft, Tekla, Bentley). The IfcOpenShell and That Open Company (web-ifc) projects document open-source IFC access.