REVIT FAMILY AUTOMATION

Automate
Revit families
with an API.

Turn product parameters into Revit families with modelKit. Prepare an RFA template, submit a configuration through the API and get a generated family, 3D preview geometry and DWG views.

Built on your own RFA families.Validate → publish → API → Revit

Architectural illustration. Explore the parameter workflow below.

01Parameters through an APIValidate requests before execution
02Processing in RevitOn a connected Windows machine
03Download job outputsRFA, 3D geometry and DWG views
EXPLORE AN API REQUESTChange the dimensions to update the JSON
Example · family dimensions

Turn product dimensions into data

Explore a generic family using illustrative dimension keys. Your selected template contract defines the actual parameter names and allowed values.

Learn how to validate parameters with the API →
01Parametric BIM workflow

Product dimensions and options change. The underlying family stays the same. modelKit connects order parameters to a prepared Revit family. Manage templates and revisions in the dashboard, send configurations through the API and let your connected Revit client generate the outputs for each job.

02How Revit automation works

From RFA template to generated outputs

Prepare and validate your family once. Then use its published parameters to create new configurations through the dashboard or your integration.

01RFA

Prepare an RFA template

Upload a family to your project. The Revit client reads its types, parameters, formulas and write-access properties.

family inspection
02CONTRACT

Validate and publish

Configure parameters and mappings. Run validation scenarios in Revit, approve the revision and publish it for API access.

revisions and validation
03API

Submit a configuration

Validate parameters with preview. Review the warnings, then create a job with a unique request_id.

preview → jobs
04REVIT

Download your files

Your connected Revit client processes a copy of the family. The job status lists available outputs and any export errors.

rfa · mesh.json · dwg
The foundation

Logic lives in the family

Prepare geometry and dependencies in the RFA. The published contract defines which values can change.

Before execution

Validate the parameters

Preview shows mappings and skipped fields. It validates the request without running Revit or verifying the resulting geometry.

After execution

Keep a record of every result

Each job retains its parameters, revision, processing stage and files. Partial exports show both available results and errors.

03Revit automation API

Your parameters. A Revit job.

Send product configurations from your own system. The API links each request to a published RFA template, validates its values and queues a job for the connected Revit client.

CATALOGAvailable templates and parameter contracts
PREVIEWValue mapping and warnings before execution
JOBSJob queue and idempotent retries with request_id
RESULTSStatuses, files, ZIP packages and callback events
RESTOpenAPI 3.0.3JSONBearer token
Read the API v1 documentation →
POST /api/modelkit/v1/jobs/
Example request · family dimensions
{
  "request_id": "order-123-item-1-rev-1",
  "product_type_id": "<product_type_id>",
  "parameters": {
    "Width": 3000,
    "Height": 3000,
    "Depth": 400
  },
  "accept_mapping_warnings": true,
  "outputs": [
    "rfa",
    "mesh.json",
    "front.dwg",
    "top.dwg",
    "side.dwg",
    "combined.dwg"
  ]
}

Use the template ID and parameter keys from your catalog contract; the dimension keys above are illustrative. Validate your values with preview and review any warnings before submitting. A new request returns 202: the job has been queued.

request_id

Retrying with the same ID and body returns the original job. Use a new ID when the configuration changes.

04Revit client

Your Revit. Your family automation.

The ModelKit Revit Host Windows client helps install the extension and configure the connection. The pyRevit extension receives jobs, processes RFA families and uploads the outputs to the server.

01

Process a family copy

The client applies parameters to a copy of the RFA, regenerates it and saves the job output.

02

Match the Revit version

A client linked to the project and running the required Revit version picks up the job. Until then, it stays queued.

03

Export the outputs

Get an RFA file, mesh.json for 3D viewing, front, top and side DWG views, plus a combined DWG.

04

Status and diagnostics

The monitor shows the current task and stage. Errors are available in the local log and dashboard history.

Job status reference
queued
Waiting for a compatible client
running
Processing in Revit
succeeded
Requested outputs are ready
partial
Some outputs are available
failed / cancelled
Job failed or was cancelled
Server ↔ Windows client

Connect Revit to the job queue

The client requests jobs from the server. It needs installed Revit, pyRevit and an active interactive Windows session.

01The server stores jobs and parameters
02The client processes the family in Revit
03Outputs are uploaded to the server

Your server and storage locations determine where data is held. This exchange does not require an inbound HTTP port on the Windows machine.

Environment requirements
system
Windows
Revit
2025 / 2027
extension
pyRevit
connection
API server
05Product capabilities

From product configuration to traceable BIM outputs

Build repeatable workflows for parametric product families. Each template defines its capabilities through the prepared RFA and published contract.

01

Parametric configurations

Configure dimensions and options in your own Revit families. Each published template defines the parameters available for your design.

Dimensions · Parameters
02

Your own RFA templates

Upload families, inspect them in Revit and configure editable parameters. Validate each new family before publishing it.

upload · inspect · publish
03

Connect order data

Send data through parameters or CProduct.inputParameters. Preview shows which fields will be applied.

JSON · parameter mapping
04

Traceable revisions

Prepare changes in a draft. Jobs retain their original revision; new revisions become available after validation and publication.

draft · validate · revise
05

Team access

Organizations, projects and roles control access to templates and outputs. Integration keys have their own permissions.

projects · roles · API keys
06

Processing history

Review API calls, processing stages, errors and files in the dashboard. Retrying a job keeps the original attempt in its history.

history · diagnostics · files
06Demo workspace

Open the cabinet. Look around.

modelKit's web workspace is where a team manages projects, Revit families, Revit servers and API jobs.

Read-only modelKit demo workspace. The Demo families project lists Nordic bar bench, Spring rocker and Parametric wardrobe. Inspection is queued and the families are not published.
Demo project · sample Revit families · read-only
01

How to enter

Open the login page and click Explore demo. Or sign in with login demo-manager and password demo-modelkit.

02

What you see

The ModelKit · Demo company workspace, a project with sample Revit families — Nordic bar bench, spring rocker and parametric wardrobe — each family card with its publication pipeline, and the template catalog.

03

After processing

Once Revit processes a family, its card can include parameters, a 3D preview and DWG views. The demo is read-only: nothing can be changed.

RFA

A Revit family with your parameters applied

3D

Preview geometry in mesh.json

DWG

Front, top, side and combined DWG views

ZIP

Available files and job metadata

07Frequently asked questions

Revit family automation, explained.

The essentials for BIM teams and developers connecting product data to Revit.

What does modelKit automate in Revit?

modelKit connects product parameters to a prepared Revit family. It validates the configuration, queues a job and uses your connected Revit client to generate a separate family and its requested exports. The geometry and formulas must already exist in the RFA template.

Explore the automation workflow →
Can I use my own parametric RFA families?

Yes. Upload a family, inspect it in Revit and configure its editable numeric and Boolean parameters. Run validation scenarios and publish the revision to make its contract available through the API. Each template defines its own supported configurations.

Read about RFA templates and contracts →
Which file formats can I download?

Request an RFA family, mesh.json geometry for 3D previews, front.dwg, top.dwg, side.dwg and combined.dwg. A ZIP package contains available files and job metadata. Check the job status for partial exports. PDF, IFC, RVT and XLSX are not supported outputs.

See output formats and downloads →
Do I need Revit installed to run jobs?

Yes. Processing requires a connected Windows machine with Revit 2025 or 2027, the pyRevit extension and an active interactive session. The client must match the job version. Without a compatible client, the job remains queued.

View Revit client requirements →
How do I integrate modelKit with an order system?

Use a project integration key to read the catalog and retrieve a template contract. Validate your parameters with preview, then submit a job with a unique request_id. Poll its status or configure callbacks, and download the available files using the same key.

Start with API authentication →