Procedure schemas

Table of contents

  1. How to use this page
  2. Quick type map
  3. Examples
    1. Procedure payload fragment
  4. Request pattern
  5. Schema reference
    1. Anesthesia
    2. AuditoryStimulation
    3. BarbiturateInjection
    4. BehavioralTracking
    5. BloodPressureSensorImplant
    6. BrainExtraction
    7. BrainLesion
    8. BrainSlice
    9. BreathingSensorImplant
    10. BurrHole
    11. CatheterImplant
    12. CervicalDislocation
    13. Co2ChamberEuthanasia
    14. CranialWindow
    15. Craniectomy
    16. Craniotomy
    17. Cryosectioning
    18. Decapitation
    19. EcgImplant
    20. EegImplant
    21. EmgImplant
    22. GenericImplant
    23. GrinLensImplant
    24. HeadFixation
    25. Headcap
    26. Headpost
    27. InhalantOverdose
    28. Injection
    29. NerveCuffImplant
    30. OdorStimulation
    31. OpticFiberImplant
    32. PerfusionFixation
    33. PrismImplant
    34. ReferenceElectrodeImplant
    35. SiliconProbeImplant
    36. SingleWireElectrodeImplant
    37. TactileStimulation
    38. TemperatureSensorImplant
    39. TetrodeWireElectrodeImplant
    40. TissueClearing
    41. VibratomeSectioning
    42. VirusInjection
    43. VisualStimulation

How to use this page

  • Use this page when calling /api/private/modules/procedure/.
  • Set type to one schema name from the list below.
  • Send details that matches that schema exactly.
  • Procedure also requires coordinates_system + coordinates_details.

Quick type map

Type valueSchema versionRequired fieldsSchema shape
Anesthesia1.1.0anestheticAgent, routeobject
AuditoryStimulation1.0.0stimulusTypesobject
BarbiturateInjection1.1.0barbiturate, confirmationOfDeath, routeobject
BehavioralTracking1.0.0noneobject
BloodPressureSensorImplant1.0.0anchoringMethod, sensorTypeobject
BrainExtraction1.1.0extractionMethod, preservationMethodobject
BrainLesion1.1.0noneobject
BrainSlice1.1.0orientation, thicknessobject
BreathingSensorImplant1.0.0anchoringMethod, sensorTypeobject
BurrHole1.1.0noneobject
CatheterImplant1.0.0targetSiteobject
CervicalDislocation1.0.0confirmationOfDeath, dislocationMethodobject
Co2ChamberEuthanasia1.1.0co2Concentration, confirmationOfDeath, exposureDurationobject
CranialWindow1.0.0noneobject
Craniectomy1.0.0noneobject
Craniotomy1.0.0noneobject
Cryosectioning1.1.0orientation, sectionThickness, temperatureobject
Decapitation1.0.0decapitationMethodobject
EcgImplant1.0.0anchoringMethodobject
EegImplant1.0.0anchoringMethod, electrodeMaterial, electrodeType, wireCountobject
EmgImplant1.0.0implantMethod, wireCountobject
GenericImplant1.0.0implantTypeobject
GrinLensImplant1.0.0noneobject
HeadFixation1.0.0noneobject
Headcap1.0.0noneobject
Headpost1.0.0noneobject
InhalantOverdose1.1.0noneobject
Injection1.1.0noneobject
NerveCuffImplant1.0.0anchoringMethod, cuffTypeobject
OdorStimulation1.0.0noneobject
OpticFiberImplant1.0.0noneobject
PerfusionFixation1.1.0noneobject
PrismImplant1.0.0noneobject
ReferenceElectrodeImplant1.1.0electrodeCount, electrodeMaterialobject
SiliconProbeImplant1.0.0noneobject
SingleWireElectrodeImplant1.1.0wireCountobject
TactileStimulation1.0.0stimulusTypesobject
TemperatureSensorImplant1.0.0anchoringMethod, sensorTypeobject
TetrodeWireElectrodeImplant1.1.0tetrodeCountobject
TissueClearing1.1.0clearingMethodobject
VibratomeSectioning1.1.0bladeTypeobject
VirusInjection1.1.0noneobject
VisualStimulation1.0.0stimulusTypesobject

Examples

Procedure payload fragment

{
  "type": "Anesthesia",
  "details": {
    "anestheticAgent": "Isoflurane",
    "route": "Inhalation"
  }
}

Request pattern

{
  "type": "Anesthesia",
  "details": {
    "anestheticAgent": "Isoflurane",
    "route": "Inhalation"
  }
}

Schema reference

Anesthesia

  • Schema title: Anesthesia
  • Schema version: 1.1.0
  • Source: brainstem/schemas/Procedure/Anesthesia.json
  • Schema shape: object
  • Required fields: anestheticAgent, route

Example payload for this type:

{
  "anestheticAgent": "Isoflurane",
  "route": "Inhalation"
}
FieldExpected valueRequiredConstraints/format
anestheticAgentstringyesenum=[“Isoflurane”, “Sevoflurane”, “Ketamine”, “Ketamine + Xylazine”, “Ketamine + Dexmedetomidine”, “Pentobarbital”, “Urethane”, “Tribromoethanol (Avertin)”, “Propofol”, “Other”]
complicationsstringnoformat=”textarea”
depthstringnoenum=[“Light sedation”, “Moderate sedation”, “Deep sedation”, “Surgical plane”, “Other”]
dosagestringnoformat=”text”
durationobject(value:number, unit:enum[h, min, s, ms, µs])noformat=”numberUnit”; default={“unit”: “min”}
endOfAnesthesiastringnoformat=”time”
monitoringMethodarraynoformat=”checkbox”; minItems=0
recoveryTimeobject(value:number, unit:enum[h, min, s, ms, µs])noformat=”numberUnit”; default={“unit”: “min”}
routestringyesenum=[“Inhalation”, “Intraperitoneal (IP)”, “Intravenous (IV)”, “Subcutaneous (SC)”, “Intramuscular (IM)”, “Oral”, “Other”]
supportiveCarearraynoformat=”checkbox”; minItems=0

AuditoryStimulation

  • Schema title: Auditory stimulation
  • Schema version: 1.0.0
  • Source: brainstem/schemas/Procedure/AuditoryStimulation.json
  • Schema shape: object
  • Required fields: stimulusTypes

Example payload for this type:

{
  "stimulusTypes": []
}
FieldExpected valueRequiredConstraints/format
deliveryMethodstringnoenum=[“Free-field speaker”, “In-ear speaker”, “Bone conduction”, “Headphone”, “Other”]
paradigmDescriptionstringnoformat=”textarea”
stimulationContextstringnoenum=[“Passive”, “Behavioral task”, “Closed-loop”, “Anesthetized”, “Free behavior”]
stimulusTypesarrayyes

BarbiturateInjection

  • Schema title: Barbiturate injection
  • Schema version: 1.1.0
  • Source: brainstem/schemas/Procedure/BarbiturateInjection.json
  • Schema shape: object
  • Required fields: barbiturate, confirmationOfDeath, route

Example payload for this type:

{
  "confirmationOfDeath": [],
  "route": "Intraperitoneal (IP)",
  "barbiturate": "Pentobarbital"
}
FieldExpected valueRequiredConstraints/format
barbituratestringyesenum=[“Pentobarbital”, “Phenobarbital”, “Secobarbital”, “Barbital”, “Commercial euthanasia solution”, “Other”]
concentrationobject(value:number, unit:enum[mg/mL, µg/mL, g/L, mg/L, µg/L])noformat=”numberUnit”; default={“unit”: “mg/mL”}
confirmationOfDeatharrayyesformat=”checkbox”; minItems=0
dosageobject(value:number, unit:enum[mg/kg, µg/kg, g/kg])noformat=”numberUnit”; default={“unit”: “mg/kg”}
routestringyesenum=[“Intraperitoneal (IP)”, “Intravenous (IV)”, “Intracardiac”, “Subcutaneous (SC)”, “Other”]
sedationAgentstringnoformat=”text”
timeToUnconsciousnessobject(value:number, unit:enum[s, min, h, ms])noformat=”numberUnit”; default={“unit”: “s”}
volumeAdministeredobject(value:number, unit:enum[mL, L, µL, nL])noformat=”numberUnit”; default={“unit”: “mL”}

BehavioralTracking

  • Schema title: Behavioral tracking
  • Schema version: 1.0.0
  • Source: brainstem/schemas/Procedure/BehavioralTracking.json
  • Schema shape: object
  • Required fields: none

Example payload for this type:

{
  "trackingMethod": "Markerless",
  "trackedFeatures": []
}
FieldExpected valueRequiredConstraints/format
trackedFeaturesarrayno
trackingMethodstringnoenum=[“Markerless”, “Marker-based”, “Hybrid”, “Manual scoring”]

BloodPressureSensorImplant

  • Schema title: Blood pressure sensor implant
  • Schema version: 1.0.0
  • Source: brainstem/schemas/Procedure/BloodPressureSensorImplant.json
  • Schema shape: object
  • Required fields: anchoringMethod, sensorType

Example payload for this type:

{
  "sensorType": "telemetric",
  "anchoringMethod": "sutured"
}
FieldExpected valueRequiredConstraints/format
anchoringMethodstringyesenum=[“sutured”, “subcutaneous tunnel”, “tissue glue”, “headcap”, “cemented to skull”, “other”]
catheterMaterialstringnoformat=”text”
implantSitestringno
sensorTypestringyesenum=[“telemetric”, “catheter-based”, “fluid-filled”, “fiber-optic”, “other”]
sterilizationMethodstringnoenum=[“Autoclave”, “Ethylene Oxide”, “Alcohol”, “Gamma Irradiation”, “None”]

BrainExtraction

  • Schema title: Brain extraction
  • Schema version: 1.1.0
  • Source: brainstem/schemas/Procedure/BrainExtraction.json
  • Schema shape: object
  • Required fields: extractionMethod, preservationMethod

Example payload for this type:

{
  "extractionMethod": "Complete removal",
  "preservationMethod": "Fresh (immediate use)"
}
FieldExpected valueRequiredConstraints/format
brainWeightobject(value:number, unit:enum[g, kg, mg, µg])noformat=”numberUnit”; default={“unit”: “g”}
extractionMethodstringyesenum=[“Complete removal”, “Partial removal”, “Sectional removal”, “Other”]
fixationDurationobject(value:number, unit:enum[s, min, h, ms])noformat=”numberUnit”; default={“unit”: “h”}
preservationMethodstringyesenum=[“Fresh (immediate use)”, “Paraformaldehyde fixation”, “Formalin fixation”, “Flash freezing”, “Liquid nitrogen”, “Dry ice”, “Other”]
storageConditionsstringnoformat=”text”
timeToExtractionobject(value:number, unit:enum[s, min, h, ms])noformat=”numberUnit”; default={“unit”: “min”}

BrainLesion

  • Schema title: Brain lesion
  • Schema version: 1.1.0
  • Source: brainstem/schemas/Procedure/BrainLesion.json
  • Schema shape: object
  • Required fields: none

Example payload for this type:

{
  "lesionMethod": "example",
  "volume": {
    "unit": "µL",
    "value": 0
  },
  "fatalOutcome": false
}
FieldExpected valueRequiredConstraints/format
fatalOutcomebooleannoformat=”checkbox”
lesionMethodstringnoformat=”text”
volumeobject(value:number, unit:enum[µL, mL, L, nL])noformat=”numberUnit”; default={“unit”: “µL”}

BrainSlice

  • Schema title: Brain Slice
  • Schema version: 1.1.0
  • Source: brainstem/schemas/Procedure/BrainSlice.json
  • Schema shape: object
  • Required fields: orientation, thickness

Example payload for this type:

{
  "thickness": {
    "unit": "µm",
    "value": 50
  },
  "orientation": "coronal"
}
FieldExpected valueRequiredConstraints/format
mediumstringnoformat=”text”
nSlicesintegernominimum=0
orientationstringyesenum=[“coronal”, “sagittal”, “horizontal”]; default=”coronal”
thicknessobject(value:number, unit:enum[µm, mm, nm, m])yesformat=”numberUnit”; default={“unit”: “µm”, “value”: 50}
vibratomeBladeAngleobject(value:number, unit:enum[°])noformat=”numberUnit”; default={“unit”: “°”}

BreathingSensorImplant

  • Schema title: Breathing sensor implant
  • Schema version: 1.0.0
  • Source: brainstem/schemas/Procedure/BreathingSensorImplant.json
  • Schema shape: object
  • Required fields: anchoringMethod, sensorType

Example payload for this type:

{
  "sensorType": "Piezoelectric sensor",
  "anchoringMethod": "sutured"
}
FieldExpected valueRequiredConstraints/format
anchoringMethodstringyesenum=[“sutured”, “tissue glue”, “subcutaneous tunnel”, “cemented to skull”, “headcap”, “custom mount”, “other”]
implantSitestringno
sensorTypestringyesenum=[“Piezoelectric sensor”, “Chest wall EMG”, “Intranasal thermocouple”, “Intranasal pressure sensor”, “Tracheal airflow sensor”, “Thoracic pressure sensor”, “Plethysmography cannula”, “Other”]
signalTransmissionstringnoenum=[“tethered”, “wireless”, “telemetric”, “inductive”, “optical”, “other”]
sterilizationMethodstringnoenum=[“Autoclave”, “Ethylene Oxide”, “Alcohol”, “Gamma Irradiation”, “None”]
wireMaterialstringnoformat=”text”

BurrHole

  • Schema title: Burr hole
  • Schema version: 1.1.0
  • Source: brainstem/schemas/Procedure/BurrHole.json
  • Schema shape: object
  • Required fields: none

Example payload for this type:

{
  "diameter": {
    "unit": "mm",
    "value": 0
  },
  "drillSpeed": {
    "unit": "RPM",
    "value": 0
  },
  "purpose": "example",
  "coolingMethod": "Saline irrigation"
}
FieldExpected valueRequiredConstraints/format
complicationsstringnoformat=”textarea”
coolingMethodstringnoenum=[“Saline irrigation”, “Air cooling”, “None”, “Other”]
diameterobject(value:number, unit:enum[mm, µm, cm, m])noformat=”numberUnit”; default={“unit”: “mm”}
drillSpeedobject(value:number, unit:enum[RPM, Hz])noformat=”numberUnit”; default={“unit”: “RPM”}
purposestringno

CatheterImplant

  • Schema title: Catheter implant
  • Schema version: 1.0.0
  • Source: brainstem/schemas/Procedure/CatheterImplant.json
  • Schema shape: object
  • Required fields: targetSite

Example payload for this type:

{
  "targetSite": "jugular vein"
}
FieldExpected valueRequiredConstraints/format
catheterIdstringnoformat=”text”
catheterTypestringnoformat=”text”
externalPortstringnoenum=[“head-mounted”, “back-mounted”, “tail-mounted”, “subcutaneous”, “none”]
fixationMethodstringnoenum=[“sutures”, “dental cement”, “epoxy”, “tissue glue”, “tunneled subcutaneously”, “other”]
materialstringnoformat=”text”
purposestringnoenum=[“infusion”, “sampling”, “pressure monitoring”, “drug delivery”, “other”]
targetSitestringyesenum=[“jugular vein”, “femoral vein”, “carotid artery”, “lateral ventricle”, “third ventricle”, “spinal cord (intrathecal)”, “cisterna magna”, “peritoneal cavity”, “other”]

CervicalDislocation

  • Schema title: Cervical dislocation
  • Schema version: 1.0.0
  • Source: brainstem/schemas/Procedure/CervicalDislocation.json
  • Schema shape: object
  • Required fields: confirmationOfDeath, dislocationMethod

Example payload for this type:

{
  "confirmationOfDeath": [],
  "dislocationMethod": "Manual"
}
FieldExpected valueRequiredConstraints/format
anestheticAgentstringnoformat=”text”
complicationsstringnoformat=”textarea”
confirmationOfDeatharrayyesformat=”checkbox”; minItems=0
dislocationMethodstringyesenum=[“Manual”, “Mechanical device”, “Scissor method”, “Other”]

Co2ChamberEuthanasia

  • Schema title: CO₂ chamber euthanasia
  • Schema version: 1.1.0
  • Source: brainstem/schemas/Procedure/Co2ChamberEuthanasia.json
  • Schema shape: object
  • Required fields: co2Concentration, confirmationOfDeath, exposureDuration

Example payload for this type:

{
  "confirmationOfDeath": [],
  "co2Concentration": {
    "unit": "%",
    "value": 0
  },
  "exposureDuration": {
    "unit": "min",
    "value": 0
  }
}
FieldExpected valueRequiredConstraints/format
chamberVolumeobject(value:number, unit:enum[L, mL, µL])noformat=”numberUnit”; default={“unit”: “L”}
co2Concentrationobject(value:number, unit:enum[%, ppm, ppb])yesformat=”numberUnit”; default={“unit”: “%”}
confirmationOfDeatharrayyesformat=”checkbox”; minItems=0
exposureDurationobject(value:number, unit:enum[s, min, h, ms])yesformat=”numberUnit”; default={“unit”: “min”}
flowRateobject(value:number, unit:enum[L/min, mL/min, L/s, mL/s])noformat=”numberUnit”; default={“unit”: “L/min”}
gradualIntroductionbooleannoformat=”checkbox”
prefillingMethodstringnoenum=[“Not prefilled”, “Partially prefilled”, “Fully prefilled”, “Other”]
timeToUnconsciousnessobject(value:number, unit:enum[s, min, h, ms])noformat=”numberUnit”; default={“unit”: “s”}

CranialWindow

  • Schema title: Cranial window
  • Schema version: 1.0.0
  • Source: brainstem/schemas/Procedure/CranialWindow.json
  • Schema shape: object
  • Required fields: none

Example payload for this type:

{
  "surgicalMethod": "example",
  "shape": "example",
  "dimensions": "example",
  "orientation": "example"
}
FieldExpected valueRequiredConstraints/format
dimensionsstringnoformat=”text”
orientationstringnoformat=”text”
shapestringnoformat=”text”
surgicalMethodstringnoformat=”text”

Craniectomy

  • Schema title: Craniectomy
  • Schema version: 1.0.0
  • Source: brainstem/schemas/Procedure/Craniectomy.json
  • Schema shape: object
  • Required fields: none

Example payload for this type:

{
  "surgicalMethod": "example",
  "shape": "example",
  "dimensions": "example",
  "orientation": "example"
}
FieldExpected valueRequiredConstraints/format
dimensionsstringnoformat=”text”
fatalOutcomebooleannoformat=”checkbox”
orientationstringnoformat=”text”
shapestringnoformat=”text”
surgicalMethodstringnoformat=”text”

Craniotomy

  • Schema title: Craniotomy
  • Schema version: 1.0.0
  • Source: brainstem/schemas/Procedure/Craniotomy.json
  • Schema shape: object
  • Required fields: none

Example payload for this type:

{
  "surgicalMethod": "example",
  "shape": "example",
  "dimensions": "example",
  "orientation": "example"
}
FieldExpected valueRequiredConstraints/format
dimensionsstringnoformat=”text”
fatalOutcomebooleannoformat=”checkbox”
orientationstringnoformat=”text”
shapestringnoformat=”text”
surgicalMethodstringnoformat=”text”

Cryosectioning

  • Schema title: Cryosectioning
  • Schema version: 1.1.0
  • Source: brainstem/schemas/Procedure/Cryosectioning.json
  • Schema shape: object
  • Required fields: orientation, sectionThickness, temperature

Example payload for this type:

{
  "orientation": "Coronal",
  "sectionThickness": {
    "unit": "µm",
    "value": 40
  },
  "temperature": {
    "unit": "°C",
    "value": 0
  }
}
FieldExpected valueRequiredConstraints/format
embeddingMediumstringnoenum=[“OCT compound”, “Tissue-Tek”, “Cryomatrix”, “Gelatin”, “None”, “Other”]
numberOfSectionsnumbernominimum=0
orientationstringyesenum=[“Coronal”, “Sagittal”, “Horizontal”, “Other”]
sectionIntervalnumbernominimum=1
sectionThicknessobject(value:number, unit:enum[µm, mm, nm, m])yesformat=”numberUnit”; default={“unit”: “µm”, “value”: 40}
serialSectioningbooleannoformat=”checkbox”
storageBufferstringnoformat=”text”
storageMethodstringnoenum=[“Mounted on slides”, “Free-floating in solution”, “Stored in plates”, “Other”]
temperatureobject(value:number, unit:enum[°C, K, °F])yesformat=”numberUnit”; default={“unit”: “°C”, “value”: 0}

Decapitation

  • Schema title: Decapitation
  • Schema version: 1.0.0
  • Source: brainstem/schemas/Procedure/Decapitation.json
  • Schema shape: object
  • Required fields: decapitationMethod

Example payload for this type:

{
  "decapitationMethod": "Guillotine"
}
FieldExpected valueRequiredConstraints/format
anestheticAgentstringnoformat=”text”
complicationsstringnoformat=”textarea”
decapitationMethodstringyesenum=[“Guillotine”, “Sharp scissors”, “Surgical blade”, “Other”]

EcgImplant

  • Schema title: ECG implant
  • Schema version: 1.0.0
  • Source: brainstem/schemas/Procedure/EcgImplant.json
  • Schema shape: object
  • Required fields: anchoringMethod

Example payload for this type:

{
  "anchoringMethod": "sutured"
}
FieldExpected valueRequiredConstraints/format
anchoringMethodstringyesenum=[“sutured”, “subcutaneous tunnel”, “tissue glue”, “headcap”, “cemented to skull”, “other”]
implantSitestringno
sterilizationMethodstringnoenum=[“Autoclave”, “Ethylene Oxide”, “Alcohol”, “Gamma Irradiation”, “None”]
wireCountintegernominimum=1
wireInsulationstringnoenum=[“Teflon”, “polyimide”, “silicone”, “none”, “other”]
wireMaterialstringnoformat=”text”

EegImplant

  • Schema title: EEG implant
  • Schema version: 1.0.0
  • Source: brainstem/schemas/Procedure/EegImplant.json
  • Schema shape: object
  • Required fields: anchoringMethod, electrodeMaterial, electrodeType, wireCount

Example payload for this type:

{
  "wireCount": 1,
  "electrodeType": "skull screw",
  "electrodeMaterial": "example",
  "anchoringMethod": "dental cement"
}
FieldExpected valueRequiredConstraints/format
anchoringMethodstringyesenum=[“dental cement”, “screws”, “acrylic”, “UV-cured resin”, “headcap”, “other”]
electrodeMaterialstringyesformat=”text”
electrodeTypestringyesenum=[“skull screw”, “flat wire”, “disc”, “custom”, “other”]
referencingSchemestringnoenum=[“single reference”, “common average”, “bipolar”, “differential”, “other”]
shieldingstringnoenum=[“none”, “copper mesh”, “conductive paint”, “aluminum foil”, “headcap integrated”, “other”]
sterilizationMethodstringnoenum=[“Autoclave”, “Ethylene Oxide”, “Alcohol”, “Gamma Irradiation”, “None”]
wireCountintegeryesminimum=1; default=1

EmgImplant

  • Schema title: EMG implant
  • Schema version: 1.0.0
  • Source: brainstem/schemas/Procedure/EmgImplant.json
  • Schema shape: object
  • Required fields: implantMethod, wireCount

Example payload for this type:

{
  "wireCount": 1,
  "implantMethod": "direct insertion"
}
FieldExpected valueRequiredConstraints/format
anchoringMethodstringnoenum=[“sutured to muscle”, “cemented to skull”, “subcutaneous tunnel”, “tissue glue”, “headcap”, “other”]
implantMethodstringyesenum=[“direct insertion”, “needle-guided”, “tunneled subcutaneously”, “sutured”, “other”]
muscleTargetsstringno
sterilizationMethodstringnoenum=[“Autoclave”, “Ethylene Oxide”, “Alcohol”, “Gamma Irradiation”, “None”]
wireCountintegeryesminimum=1; default=1
wireInsulationstringnoenum=[“Teflon”, “polyimide”, “silicone”, “none”, “other”]
wireMaterialstringnoformat=”text”

GenericImplant

  • Schema title: Generic implant
  • Schema version: 1.0.0
  • Source: brainstem/schemas/Procedure/GenericImplant.json
  • Schema shape: object
  • Required fields: implantType

Example payload for this type:

{
  "implantType": "sensor"
}
FieldExpected valueRequiredConstraints/format
anchoringMethodstringnoenum=[“sutured”, “tissue glue”, “subcutaneous tunnel”, “dental cement”, “headcap”, “custom mount”, “none”, “other”]
implantNamestringnoformat=”text”
implantTypestringyesenum=[“sensor”, “electrode”, “optical device”, “mechanical device”, “fluidic device”, “structural support”, “other”]
powerSourcestringnoenum=[“battery”, “inductive”, “wired”, “passive”, “none”, “other”]
signalTransmissionstringnoenum=[“tethered”, “wireless”, “telemetric”, “optical”, “none”, “other”]
sterilizationMethodstringnoenum=[“Autoclave”, “Ethylene Oxide”, “Alcohol”, “Gamma Irradiation”, “None”]

GrinLensImplant

  • Schema title: GRIN lens implant
  • Schema version: 1.0.0
  • Source: brainstem/schemas/Procedure/GrinLensImplant.json
  • Schema shape: object
  • Required fields: none

Example payload for this type:

{
  "lensTipType": "example",
  "lensId": "example",
  "sterilizationMethod": "Autoclave",
  "mountingMethod": "Cement only"
}
FieldExpected valueRequiredConstraints/format
lensIdstringnoformat=”text”
lensTipTypestringnoformat=”text”
mountingMethodstringnoenum=[“Cement only”, “Cement + baseplate”, “Headcap integrated”, “Custom holder”, “Other”]
sterilizationMethodstringnoenum=[“Autoclave”, “Ethylene Oxide”, “Gamma Irradiation”, “Alcohol”, “None”]

HeadFixation

  • Schema title: Head Fixation
  • Schema version: 1.0.0
  • Source: brainstem/schemas/Procedure/HeadFixation.json
  • Schema shape: object
  • Required fields: none

Example payload for this type:

{
  "fixationMethod": [],
  "alignment": "example",
  "fixationDetails": "example",
  "topicalAnesthesia": "example"
}
FieldExpected valueRequiredConstraints/format
alignmentstringno
fixationDetailsstringno
fixationMethodarraynominItems=0
topicalAnesthesiastringno

Headcap

  • Schema title: Headcap
  • Schema version: 1.0.0
  • Source: brainstem/schemas/Procedure/Headcap.json
  • Schema shape: object
  • Required fields: none

Example payload for this type:

{
  "material": "example",
  "shape": "example",
  "constructionMethod": "manually built",
  "attachmentMethod": "dental cement"
}
FieldExpected valueRequiredConstraints/format
attachmentMethodstringnoenum=[“dental cement”, “UV-cured resin”, “super glue”, “epoxy”, “screws”, “other”]
constructionMethodstringnoenum=[“manually built”, “custom-built”, “3D-printed”, “milled”, “molded”, “other”]
headcapIdstringnoformat=”text”
materialstringnoformat=”text”
shapestringnoformat=”text”
shieldingstringnoenum=[“none”, “conductive paint”, “copper mesh”, “aluminum foil”, “custom”, “unknown”]
skullPreparationstringnoformat=”text”

Headpost

  • Schema title: Headpost
  • Schema version: 1.0.0
  • Source: brainstem/schemas/Procedure/Headpost.json
  • Schema shape: object
  • Required fields: none

Example payload for this type:

{
  "material": "example",
  "shape": "example",
  "constructionMethod": "manually built",
  "attachmentMethod": "dental cement"
}
FieldExpected valueRequiredConstraints/format
attachmentMethodstringnoenum=[“dental cement”, “super glue”, “epoxy”, “screws”, “other”]
constructionMethodstringnoenum=[“manually built”, “custom-built”, “3D-printed”, “milled”, “other”]
headpostIdstringnoformat=”text”
materialstringnoformat=”text”
shapestringnoformat=”text”
skullPreparationstringnoformat=”text”

InhalantOverdose

  • Schema title: Inhalant overdose
  • Schema version: 1.1.0
  • Source: brainstem/schemas/Procedure/InhalantOverdose.json
  • Schema shape: object
  • Required fields: none

Example payload for this type:

{
  "anestheticAgent": "Isoflurane",
  "concentration": {
    "unit": "%",
    "value": 0
  },
  "oxygenFlowRate": {
    "unit": "L/min",
    "value": 0
  },
  "deliveryMethod": "Anesthesia chamber"
}
FieldExpected valueRequiredConstraints/format
anestheticAgentstringnoenum=[“Isoflurane”, “Sevoflurane”, “Halothane”, “Desflurane”, “Enflurane”, “Other”]
concentrationobject(value:number, unit:enum[%, L/min, mL/min, mL/s])noformat=”numberUnit”; default={“unit”: “%”}
confirmationOfDeatharraynoformat=”checkbox”; minItems=0
deliveryMethodstringnoenum=[“Anesthesia chamber”, “Nose cone”, “Intubation”, “Bell jar”, “Other”]
exposureDurationobject(value:number, unit:enum[µs, ms, s, min, h])noformat=”numberUnit”; default={“unit”: “min”}
oxygenFlowRateobject(value:number, unit:enum[%, L/min, mL/min, mL/s])noformat=”numberUnit”; default={“unit”: “L/min”}
sedationAgentstringnoformat=”text”
timeToUnconsciousnessobject(value:number, unit:enum[µs, ms, s, min, h])noformat=”numberUnit”; default={“unit”: “s”}

Injection

  • Schema title: Injection
  • Schema version: 1.1.0
  • Source: brainstem/schemas/Procedure/Injection.json
  • Schema shape: object
  • Required fields: none

Example payload for this type:

{
  "injectionVolume": {
    "unit": "mL",
    "value": 0
  },
  "injectionRate": {
    "unit": "mL/s",
    "value": 0
  },
  "concentration": {
    "unit": "mg/mL",
    "value": 0
  },
  "injectionMethod": "Intracerebroventricular (ICV)"
}
FieldExpected valueRequiredConstraints/format
concentrationobject(value:number, unit:enum[mg/mL, µg/mL, g/L, mg/L, µg/L, % w/v, % v/v, % w/w])noformat=”numberUnit”; default={“unit”: “mg/mL”}
injectionMethodstringnoenum=[“Intracerebroventricular (ICV)”, “Intramuscular (IM)”, “Intravenous (IV)”, “Intradermal (ID)”, “Subcutaneous (SC)”, “Intracardiac (IC)”, “Intraperitoneal (IP)”, “Intrathecal (IT)”, “Epidural”, “Retro-orbital (RO)”, “Intranasal (IN)”, “Intra-articular”, “Intravitreal”, “Intralesional”]
injectionProfilestringnoenum=[“Bolus Injection”, “Continuous Infusion”, “Tapered Dose”, “Intermittent Bolus”, “Staggered Injection”, “Ramp Infusion”, “Burst Infusion”, “Step Infusion”, “Layered Dosing”, “Titration”]
injectionRateobject(value:number, unit:enum[mL/s, µL/s, mL/min, µL/min])noformat=”numberUnit”; default={“unit”: “mL/s”}
injectionSidestringnoenum=[“Left”, “Right”, “Midline”, “Unknown”]
injectionVolumeobject(value:number, unit:enum[L, mL, µL, nL, pL])noformat=”numberUnit”; default={“unit”: “mL”}

NerveCuffImplant

  • Schema title: Nerve cuff implant
  • Schema version: 1.0.0
  • Source: brainstem/schemas/Procedure/NerveCuffImplant.json
  • Schema shape: object
  • Required fields: anchoringMethod, cuffType

Example payload for this type:

{
  "cuffType": "monopolar",
  "anchoringMethod": "suture to surrounding tissue"
}
FieldExpected valueRequiredConstraints/format
anchoringMethodstringyesenum=[“suture to surrounding tissue”, “tissue glue”, “self-closing cuff”, “non-anchored (loose fit)”, “subcutaneous tunnel”, “other”]
cuffMaterialstringnoformat=”text”
cuffTypestringyesenum=[“monopolar”, “bipolar”, “tripolar”, “multi-contact”, “split-ring”, “spiral”, “other”]
electrodeMaterialstringnoformat=”text”
signalTransmissionstringnoenum=[“tethered”, “wireless”, “telemetric”, “optical”, “none”, “other”]
sterilizationMethodstringnoenum=[“Autoclave”, “Ethylene Oxide”, “Alcohol”, “Gamma Irradiation”, “None”]
targetNervestringno
wireExitRoutestringnoenum=[“subcutaneous tunnel to headcap”, “abdominal connector”, “dorsal skin exit”, “wireless/inductive”, “other”]

OdorStimulation

  • Schema title: Odor stimulation
  • Schema version: 1.0.0
  • Source: brainstem/schemas/Procedure/OdorStimulation.json
  • Schema shape: object
  • Required fields: none

Example payload for this type:

{
  "odorants": "example",
  "deliveryMethod": "Olfactometer",
  "carrierGas": "Air",
  "stimulationContext": "Passive"
}
FieldExpected valueRequiredConstraints/format
carrierGasstringnoenum=[“Air”, “O₂”, “N₂”, “CO₂”, “Other”]
deliveryMethodstringnoenum=[“Olfactometer”, “Manually pipetted”, “Syringe injection”, “Headspace exposure”, “Cotton swab”, “Other”]
odorantsstringno
paradigmDescriptionstringnoformat=”textarea”
stimulationContextstringnoenum=[“Passive”, “Behavioral task”, “Closed-loop”, “Anesthetized”, “Free behavior”]

OpticFiberImplant

  • Schema title: Optic fiber implant
  • Schema version: 1.0.0
  • Source: brainstem/schemas/Procedure/OpticFiberImplant.json
  • Schema shape: object
  • Required fields: none

Example payload for this type:

{
  "fiberTipShape": "example",
  "fiberId": "example",
  "sterilizationMethod": "Autoclave"
}
FieldExpected valueRequiredConstraints/format
fiberIdstringnoformat=”text”
fiberTipShapestringnoformat=”text”
sterilizationMethodstringnoenum=[“Autoclave”, “Ethylene Oxide”, “Gamma Irradiation”, “Alcohol”, “None”]

PerfusionFixation

  • Schema title: Brain Perfusion Fixation
  • Schema version: 1.1.0
  • Source: brainstem/schemas/Procedure/PerfusionFixation.json
  • Schema shape: object
  • Required fields: none

Example payload for this type:

{
  "perfusionMethod": "example",
  "volume": {
    "unit": "mL",
    "value": 0
  },
  "fatalOutcome": false
}
FieldExpected valueRequiredConstraints/format
fatalOutcomebooleannoformat=”checkbox”
perfusionMethodstringnoformat=”text”
volumeobject(value:number, unit:enum[L, mL, µL, nL, pL])noformat=”numberUnit”; default={“unit”: “mL”}

PrismImplant

  • Schema title: Prism implant
  • Schema version: 1.0.0
  • Source: brainstem/schemas/Procedure/PrismImplant.json
  • Schema shape: object
  • Required fields: none

Example payload for this type:

{
  "prismId": "example",
  "sterilizationMethod": "Autoclave",
  "mountingMethod": "Cement only"
}
FieldExpected valueRequiredConstraints/format
mountingMethodstringnoenum=[“Cement only”, “Cement + baseplate”, “Headcap integrated”, “Custom holder”, “Other”]
prismIdstringnoformat=”text”
sterilizationMethodstringnoenum=[“Autoclave”, “Ethylene Oxide”, “Gamma Irradiation”, “Alcohol”, “None”]

ReferenceElectrodeImplant

  • Schema title: Reference electrode implant
  • Schema version: 1.1.0
  • Source: brainstem/schemas/Procedure/ReferenceElectrodeImplant.json
  • Schema shape: object
  • Required fields: electrodeCount, electrodeMaterial

Example payload for this type:

{
  "electrodeCount": 1,
  "electrodeMaterial": "stainless steel"
}
FieldExpected valueRequiredConstraints/format
anchoringMethodstringnoenum=[“dental cement”, “tissue glue”, “bone screw”, “subcutaneous tunnel”, “other”]
electrodeCountintegeryesminimum=1; default=1
electrodeDiameterobject(value:number, unit:enum[µm, mm, nm, m])noformat=”numberUnit”; default={“unit”: “µm”}
electrodeMaterialstringyesformat=”text”; default=”stainless steel”
impedanceobject(value:number, unit:enum[kΩ, Ω, MΩ])noformat=”numberUnit”; default={“unit”: “kΩ”}
placementSitestringnoformat=”text”
sterilizationMethodstringnoenum=[“Autoclave”, “Ethylene Oxide”, “Gamma Irradiation”, “Alcohol”, “None”]

SiliconProbeImplant

  • Schema title: Silicon probe implant
  • Schema version: 1.0.0
  • Source: brainstem/schemas/Procedure/SiliconProbeImplant.json
  • Schema shape: object
  • Required fields: none

Example payload for this type:

{
  "probeId": "example",
  "sterilizationMethod": "Autoclave"
}
FieldExpected valueRequiredConstraints/format
probeIdstringnoformat=”text”
sterilizationMethodstringnoenum=[“Autoclave”, “Ethylene Oxide”, “Gamma Irradiation”, “Alcohol”, “None”]

SingleWireElectrodeImplant

  • Schema title: Single wire electrode implant
  • Schema version: 1.1.0
  • Source: brainstem/schemas/Procedure/SingleWireElectrodeImplant.json
  • Schema shape: object
  • Required fields: wireCount

Example payload for this type:

{
  "wireCount": 1
}
FieldExpected valueRequiredConstraints/format
impedanceobject(value:number, unit:enum[Ω, kΩ, MΩ])noformat=”numberUnit”; default={“unit”: “kΩ”}
sterilizationMethodstringnoenum=[“Autoclave”, “Ethylene Oxide”, “Gamma Irradiation”, “Alcohol”, “None”]
wireCountintegeryesminimum=0; default=1
wireDiameterobject(value:number, unit:enum[µm, mm, nm, m])noformat=”numberUnit”; default={“unit”: “µm”}
wireMaterialstringnoformat=”text”

TactileStimulation

  • Schema title: Tactile stimulation
  • Schema version: 1.0.0
  • Source: brainstem/schemas/Procedure/TactileStimulation.json
  • Schema shape: object
  • Required fields: stimulusTypes

Example payload for this type:

{
  "stimulusTypes": []
}
FieldExpected valueRequiredConstraints/format
deliveryMethodstringnoenum=[“Manual (e.g., cotton swab)”, “Piezo actuator”, “Solenoid piston”, “Air puff system”, “Brush or probe”, “Other”]
paradigmDescriptionstringnoformat=”textarea”
stimulationContextstringnoenum=[“Passive”, “Behavioral task”, “Closed-loop”, “Anesthetized”, “Free behavior”]
stimulationSitestringno
stimulusTypesarrayyes

TemperatureSensorImplant

  • Schema title: Temperature sensor implant
  • Schema version: 1.0.0
  • Source: brainstem/schemas/Procedure/TemperatureSensorImplant.json
  • Schema shape: object
  • Required fields: anchoringMethod, sensorType

Example payload for this type:

{
  "sensorType": "thermocouple",
  "anchoringMethod": "sutured"
}
FieldExpected valueRequiredConstraints/format
anchoringMethodstringyesenum=[“sutured”, “tissue glue”, “subcutaneous tunnel”, “cemented to skull”, “headcap”, “free-floating”, “other”]
powerSourcestringnoenum=[“battery”, “inductive”, “wired”, “passive”, “none”, “other”]
sensorTypestringyesenum=[“thermocouple”, “thermistor”, “digital IC”, “telemetric sensor”, “logger (passive)”, “fiber-optic”, “other”]
signalTransmissionstringnoenum=[“tethered”, “wireless”, “telemetric”, “optical”, “logger (retrieved)”, “none”, “other”]
sterilizationMethodstringnoenum=[“Autoclave”, “Ethylene Oxide”, “Alcohol”, “Gamma Irradiation”, “None”]
wireMaterialstringnoformat=”text”

TetrodeWireElectrodeImplant

  • Schema title: Tetrode wire electrode implant
  • Schema version: 1.1.0
  • Source: brainstem/schemas/Procedure/TetrodeWireElectrodeImplant.json
  • Schema shape: object
  • Required fields: tetrodeCount

Example payload for this type:

{
  "tetrodeCount": 1
}
FieldExpected valueRequiredConstraints/format
nWiresTetrodeintegernominimum=0; default=4
sterilizationMethodstringnoenum=[“Autoclave”, “Ethylene Oxide”, “Gamma Irradiation”, “Alcohol”, “None”]
tetrodeCountintegeryesminimum=0; default=1
wireDiameterobject(value:number, unit:enum[µm, mm, nm, m])noformat=”numberUnit”; default={“unit”: “µm”}
wireMaterialstringnoformat=”text”

TissueClearing

  • Schema title: Tissue clearing
  • Schema version: 1.1.0
  • Source: brainstem/schemas/Procedure/TissueClearing.json
  • Schema shape: object
  • Required fields: clearingMethod

Example payload for this type:

{
  "clearingMethod": "CLARITY"
}
FieldExpected valueRequiredConstraints/format
agitationstringnoenum=[“Gentle shaking”, “Rotation”, “Static”, “Other”]
clearingDurationobject(value:number, unit:enum[µs, ms, s, min, h, days])noformat=”numberUnit”; default={“unit”: “days”}
clearingMethodstringyesenum=[“CLARITY”, “CUBIC”, “3DISCO”, “iDISCO+”, “PACT”, “ScaleS”, “SeeDB”, “BABB (Benzyl alcohol/Benzyl benzoate)”, “Passive CLARITY”, “Other”]
complicationsstringnoformat=”textarea”
fixationTimeobject(value:number, unit:enum[µs, ms, s, min, h, days])noformat=”numberUnit”; default={“unit”: “h”}
imagingCompatiblebooleannoformat=”checkbox”
refractiveIndexMatchingstringnoformat=”text”
temperatureobject(value:number, unit:enum[°C, K, °F])noformat=”numberUnit”; default={“unit”: “°C”}
tissueTypestringno
transparencystringnoenum=[“Complete”, “Partial”, “Poor”, “Failed”]

VibratomeSectioning

  • Schema title: Vibratome sectioning
  • Schema version: 1.1.0
  • Source: brainstem/schemas/Procedure/VibratomeSectioning.json
  • Schema shape: object
  • Required fields: bladeType

Example payload for this type:

{
  "bladeType": "Disposable razor blade"
}
FieldExpected valueRequiredConstraints/format
amplitudestringnoenum=[“Minimum”, “Low”, “Medium”, “High”, “Maximum”]
bladeTypestringyesenum=[“Disposable razor blade”, “Steel blade”, “Ceramic blade”, “Sapphire blade”, “Other”]
bufferstringnoformat=”text”
bufferTemperatureobject(value:number, unit:enum[°C, K, °F])noformat=”numberUnit”; default={“unit”: “°C”}
cuttingSpeedstringnoenum=[“Very slow”, “Slow”, “Medium”, “Fast”, “Very fast”]
frequencyobject(value:number, unit:enum[Hz, kHz, MHz, GHz])noformat=”numberUnit”; default={“unit”: “Hz”}
numberOfSectionsnumbernominimum=0
sectionQualitystringnoenum=[“Excellent”, “Good”, “Fair”, “Poor”]
sectionThicknessobject(value:number, unit:enum[µm, mm, nm, m])noformat=”numberUnit”; default={“unit”: “µm”}
sectioningOrientationstringnoenum=[“Coronal”, “Sagittal”, “Horizontal”, “Other”]
storageMethodstringnoenum=[“Free-floating in buffer”, “Mounted immediately”, “Stored in multiwell plates”, “Other”]

VirusInjection

  • Schema title: Virus Injection
  • Schema version: 1.1.0
  • Source: brainstem/schemas/Procedure/VirusInjection.json
  • Schema shape: object
  • Required fields: none

Example payload for this type:

{
  "injectionVolume": {
    "unit": "nL",
    "value": 0
  },
  "injectionRate": {
    "unit": "nL/min",
    "value": 0
  },
  "titer": {
    "unit": "vg/mL",
    "value": 0
  },
  "injectionProfile": "Bolus Injection"
}
FieldExpected valueRequiredConstraints/format
injectionProfilestringnoenum=[“Bolus Injection”, “Continuous Infusion”, “Tapered Dose”, “Intermittent Bolus”, “Staggered Injection”, “Ramp Infusion”, “Burst Infusion”, “Step Infusion”, “Layered Dosing”, “Titration”]
injectionRateobject(value:number, unit:enum[nL/min, µL/min, mL/min, nL/s, µL/s])noformat=”numberUnit”; default={“unit”: “nL/min”}
injectionVolumeobject(value:number, unit:enum[nL, µL, mL, L])noformat=”numberUnit”; default={“unit”: “nL”}
titerobject(value:number, unit:enum[vg/mL, TU/mL, pfu/mL])noformat=”numberUnit”; default={“unit”: “vg/mL”}

VisualStimulation

  • Schema title: Visual stimulation
  • Schema version: 1.0.0
  • Source: brainstem/schemas/Procedure/VisualStimulation.json
  • Schema shape: object
  • Required fields: stimulusTypes

Example payload for this type:

{
  "stimulusTypes": []
}
FieldExpected valueRequiredConstraints/format
paradigmDescriptionstringnoformat=”textarea”
presentationDevicestringnoenum=[“Monitor”, “LED panel”, “Projector”, “Head-mounted display”, “Fiber-coupled light source”, “Other”]
stimulationContextstringnoenum=[“Passive”, “Behavioral task”, “Closed-loop”, “Anesthetized”, “Free behavior”]
stimulationPositionstringnoenum=[“Contralateral”, “Ipsilateral”, “Bilateral”, “Centered”, “Surround”, “Other”, “Unknown”]
stimulusTypesarrayyes