Clarix
Manufacturing Steps

Manufacturing Steps JSONL Import

Bulk-import reusable manufacturing steps at /manufacturing-steps/import using JSON Lines — one complete step object per line.

Use JSONL import (/manufacturing-steps/import) when you need to load dozens of step definitions at once — for example, onboarding a complex sterile product like Ascorbic Acid 500 mg/mL (VITC). JSONL handles multi-paragraph HTML instructions and nested step configuration that CSV cannot represent reliably.

Manufacturing Steps import

When to use JSONL vs. the UI

ApproachBest for
Step Library UIAdding or editing individual steps
JSONL importInitial library seeding, product migrations, git-versioned step catalogs

Import the Step Library before importing a master formula bundle — procedure.jsonl references steps by shortLabel.

Import workflow

  1. Go to Manufacturing Steps in the sidebar.
  2. Click Import (or open /manufacturing-steps/import).
  3. Prepare a .jsonl file — one JSON object per line, no wrapping array.
  4. Click Upload and select your file.
  5. Review the preview: each line shows shortLabel, step type, and any validation errors.
  6. Click Confirm import to create steps in the library.

Empty lines and lines starting with // are ignored as comments.

File format

Each line is a standalone JSON object:

{"shortLabel":"VITC-LIGHT-SENSITIVE","stepType":"instruction","category":"documentation","criticalStep":true,"instruction":"<p><strong>LIGHT-SENSITIVE PRODUCT.</strong> Turn off overhead lights in the admix room.</p>","resources":[]}

Required fields

FieldDescription
shortLabelUnique identifier (max 100 chars). Use a product prefix like VITC-.
stepTypeClarix step type key (e.g., instruction, measurement, checklist, signature)
instructionOperator-facing text. HTML tags (<p>, <strong>, <ul>, etc.) are supported.

Common optional fields

FieldDescription
categoryUI grouping: calibration, mixing, aseptic, qc, environmental, documentation, packaging
criticalSteptrue marks the step with a critical badge in execution
helpTextAdditional guidance (HTML)
unitUnit of measure for numeric/measurement steps
propertiesType-specific config (checklist items, tolerances, signature roles)
resourcesLinks to inventory, equipment, documents, or rooms by code
"resources": [
  {"type": "inventory_item", "code": "VITC-INV-001", "purpose": "Active ingredient", "required": true},
  {"type": "equipment", "code": "VITC-BAL-002", "purpose": "Large balance", "required": true},
  {"type": "document", "code": "PT-040", "purpose": "Calibration SOP", "required": false},
  {"type": "room", "code": "ISO5-FILL", "purpose": "ISO 5 fill environment", "required": true}
]

Unresolved codes produce a warning in the import log but do not fail the row — the step is still created.

Idempotent import behavior

  • If a shortLabel already exists in your org, the row is skipped (not overwritten).
  • Add "upsert": true on a line to replace an existing step definition.
  • Each new step is created as version 1 at the family root, matching UI-created steps.

VITC reference file

The Ascorbic Acid demo dataset includes vitc-step-library.jsonl with 48 step families covering calibration, admix, aseptic fill, EM, visual inspection, and label reconciliation. Import this file before the VITC master formula bundle at /formulas/import.

Recommended prerequisite order for VITC-489:

  1. Rooms, equipment, inventory items, documents
  2. vitc-step-library.jsonl → /manufacturing-steps/import
  3. Master formula bundle (formula.csv, bom.csv, admix-supplies.csv, procedure.jsonl) → /formulas/import

Role requirements

ActionMinimum role
Import JSONLFormula editor
View import resultsViewer

Regulatory reference

21 CFR 211.186 — Master production records must include written procedures. Bulk JSONL import accelerates library setup while preserving structured, auditable step definitions referenced by approved master formulas.


On this page