Core concepts

Device types

Two lists that overlap but are not the same list.

Contents
These are two separate vocabularies

The device_type you store on a database equipment row and the device_type you send to the PowerDB drafting endpoints are different enumerations with different members. Sending a PowerDB slug to /db/* stores a string nothing will render; sending a database slug to /ai/powerdb falls back to the default template. Read both tables before you map either.

Database: device_type#

Twelve slugs, used on equipment rows and as form_type on records. Anything else is accepted and stored, but will not group or render.

SlugLabel
lv_breakerLV Breakers
mv_breakerMV Breakers
transformerTransformers
switchgearSwitchgear
cableCables
relayRelays
oc_relayOC Relays
motorMotors
batteryBatteries
bus_ductBus Duct
current_transformerCurrent Transformers
vacuum_contactorVacuum Contactors

Assembly responses carry a by_type array built from these, giving the slug, its label and a count, enough to render a lineup summary without a second pass over the equipment list.

Assembly.by_type
"by_type": [
  { "type": "cable",      "label": "Cables",      "count": 6 },
  { "type": "lv_breaker", "label": "LV Breakers", "count": 14 }
]

PowerDB: device_type#

Fifteen slugs, used only by /ai/powerdb and /ai/powerdb/report. This list is finer-grained where NETA ATS treats things separately: transformers split by cooling, ground systems split from ground-fault protection.

SlugDevice
lv_breakerLow-Voltage Circuit Breaker
mv_breakerMedium-Voltage Circuit Breaker
dry_transformerDry-Type Transformer
liquid_transformerLiquid-Filled Transformer
mccMotor Control Center
switchgearSwitchgear / Switchboard
protective_relayProtective Relay
atsAutomatic Transfer Switch
cableMedium-Voltage Cable
generatorGenerator
motorMotor
ground_systemGround System / Grounding
ground_faultGround-Fault Protection
bus_ductBus Duct / Busway
batteryStation Battery / DC System

Rather than hard-coding this table, fetch it. The endpoint returns the same slugs with their labels and a one-line description of what each form covers.

GET/ai/powerdb/types