diff --git a/device-types/Fortinet/FG-300D.yaml b/device-types/Fortinet/FG-300D.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..6331d82b77d41b987a993b1381e1fdfb6c1a48f0
--- /dev/null
+++ b/device-types/Fortinet/FG-300D.yaml
@@ -0,0 +1,42 @@
+---
+manufacturer: Fortinet
+model: FortiGate 300D
+slug: fortinet-fg-300d
+part_number: FG-300D
+u_height: 1
+is_full_depth: false
+weight: 4.80
+weight_unit: kg
+console-ports:
+  - name: Console
+    type: rj-45
+power-ports:
+  - name: PS1
+    type: iec-60320-c14
+    maximum_draw: 194
+    allocated_draw: 106
+  - name: PS2
+    type: other
+    maximum_draw: 194
+    allocated_draw: 106
+interfaces:
+  - name: mgmt1
+    type: 1000base-t
+  - name: mgmt2
+    type: 1000base-t
+  - name: port1
+    type: 1000base-t
+  - name: port2
+    type: 1000base-t
+  - name: port3
+    type: 1000base-t
+  - name: port4
+    type: 1000base-t
+  - name: port5
+    type: 1000base-x-sfp
+  - name: port6
+    type: 1000base-x-sfp
+  - name: port7
+    type: 1000base-x-sfp
+  - name: port8
+    type: 1000base-x-sfp
diff --git a/device-types/Fortinet/FG-501E.yaml b/device-types/Fortinet/FG-501E.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..8cf45ccc93d5d0d980b0f473f9da4d5f061a3348
--- /dev/null
+++ b/device-types/Fortinet/FG-501E.yaml
@@ -0,0 +1,60 @@
+---
+manufacturer: Fortinet
+model: FortiGate 501E
+slug: fortinet-fg-501e
+part_number: FG-501E
+u_height: 1
+is_full_depth: false
+weight: 7.3
+weight_unit: kg
+comments: Same as FG-500E, but **WITH** 2 x 240GB SSD onboard storage.
+console-ports:
+  - name: Console
+    type: rj-45
+interfaces:
+  - name: ha
+    type: 1000base-t
+  - name: mgmt
+    type: 1000base-t
+    mgmt_only: true
+  - name: port1
+    type: 1000base-t
+  - name: port2
+    type: 1000base-t
+  - name: port3
+    type: 1000base-t
+  - name: port4
+    type: 1000base-t
+  - name: port5
+    type: 1000base-t
+  - name: port6
+    type: 1000base-t
+  - name: port7
+    type: 1000base-t
+  - name: port8
+    type: 1000base-t
+  - name: port9
+    type: 1000base-x-sfp
+  - name: port10
+    type: 1000base-x-sfp
+  - name: port11
+    type: 1000base-x-sfp
+  - name: port12
+    type: 1000base-x-sfp
+  - name: s1
+    type: 1000base-x-sfp
+  - name: s2
+    type: 1000base-x-sfp
+  - name: vw1
+    type: 1000base-x-sfp
+  - name: vw2
+    type: 1000base-x-sfp
+  - name: x1
+    type: 10gbase-x-sfpp
+  - name: x2
+    type: 10gbase-x-sfpp
+module-bays:
+  - name: PS1
+    position: '1'
+  - name: PS2
+    position: '2'
diff --git a/device-types/Fortinet/FG-51E.yaml b/device-types/Fortinet/FG-51E.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..4fde5ec57f03112302c78e1bb6fc88f7eb4fe0bf
--- /dev/null
+++ b/device-types/Fortinet/FG-51E.yaml
@@ -0,0 +1,35 @@
+---
+manufacturer: Fortinet
+model: FortiGate 51E
+slug: fortinet-fg-51e
+part_number: FG-51E
+u_height: 1
+is_full_depth: false
+airflow: passive
+weight: 0.9
+weight_unit: kg
+comments: Same as FG-50E, but **WITH** 1 x 32 GB SSD onboard storage.
+console-ports:
+  - name: Console
+    type: rj-45
+power-ports:
+  - name: PS1
+    label: 12V DC
+    type: dc-terminal
+    maximum_draw: 20
+    allocated_draw: 16
+interfaces:
+  - name: internal1
+    type: 1000base-t
+  - name: internal2
+    type: 1000base-t
+  - name: internal3
+    type: 1000base-t
+  - name: internal4
+    type: 1000base-t
+  - name: internal5
+    type: 1000base-t
+  - name: wan1
+    type: 1000base-t
+  - name: wan2
+    type: 1000base-t
diff --git a/device-types/Fortinet/FG-61E.yaml b/device-types/Fortinet/FG-61E.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..7dceebae496a53f5beceb86eab6573b149b28856
--- /dev/null
+++ b/device-types/Fortinet/FG-61E.yaml
@@ -0,0 +1,41 @@
+---
+manufacturer: Fortinet
+model: FortiGate 61E
+slug: fortinet-fg-61e
+part_number: FG-61E
+u_height: 1
+is_full_depth: false
+airflow: passive
+weight: 0.9
+weight_unit: kg
+comments: Same as FG-60E, but **WITH** 1 x 128 GB SSD onboard storage.
+console-ports:
+  - name: Console
+    type: rj-45
+power-ports:
+  - name: PS1
+    type: dc-terminal
+    maximum_draw: 14
+    allocated_draw: 12
+    label: 12V DC
+interfaces:
+  - name: dmz
+    type: 1000base-t
+  - name: internal1
+    type: 1000base-t
+  - name: internal2
+    type: 1000base-t
+  - name: internal3
+    type: 1000base-t
+  - name: internal4
+    type: 1000base-t
+  - name: internal5
+    type: 1000base-t
+  - name: internal6
+    type: 1000base-t
+  - name: internal7
+    type: 1000base-t
+  - name: wan1
+    type: 1000base-t
+  - name: wan2
+    type: 1000base-t
diff --git a/device-types/Fortinet/FG-61F.yaml b/device-types/Fortinet/FG-61F.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..d5ed4e0e3069036fb51915f2f91adfc9ddba2ddc
--- /dev/null
+++ b/device-types/Fortinet/FG-61F.yaml
@@ -0,0 +1,41 @@
+---
+manufacturer: Fortinet
+model: FortiGate 61F
+slug: fortinet-fg-61f
+part_number: FG-61F
+u_height: 1
+is_full_depth: false
+airflow: passive
+weight: 1.01
+weight_unit: kg
+comments: Same as FG-60F, but **WITH** 1 x 128 GB SSD onboard storage.
+console-ports:
+  - name: Console
+    type: rj-45
+power-ports:
+  - name: PS1
+    type: dc-terminal
+    maximum_draw: 19
+    allocated_draw: 17
+    label: 12V DC
+interfaces:
+  - name: internal1
+    type: 1000base-t
+  - name: internal2
+    type: 1000base-t
+  - name: internal3
+    type: 1000base-t
+  - name: internal4
+    type: 1000base-t
+  - name: internal5
+    type: 1000base-t
+  - name: A
+    type: 1000base-t
+  - name: B
+    type: 1000base-t
+  - name: dmz
+    type: 1000base-t
+  - name: wan1
+    type: 1000base-t
+  - name: wan2
+    type: 1000base-t
diff --git a/device-types/Fortinet/FG-80C.yaml b/device-types/Fortinet/FG-80C.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..2c872cd45c8360779cfd4ed6e647061605262f38
--- /dev/null
+++ b/device-types/Fortinet/FG-80C.yaml
@@ -0,0 +1,37 @@
+---
+manufacturer: Fortinet
+model: FortiGate 80C
+slug: fortinet-fg-80c
+part_number: FG-80C
+u_height: 1
+is_full_depth: false
+weight: 1.50
+weight_unit: kg
+airflow: side-to-rear
+console-ports:
+  - name: Console
+    type: rj-45
+power-ports:
+  - name: PS1
+    type: dc-terminal
+    maximum_draw: 30
+    allocated_draw: 25
+interfaces:
+  - name: dmz
+    type: 1000base-t
+  - name: wan1
+    type: 1000base-t
+  - name: wan2
+    type: 1000base-t
+  - name: port1
+    type: 1000base-t
+  - name: port2
+    type: 1000base-t
+  - name: port3
+    type: 1000base-t
+  - name: port4
+    type: 1000base-t
+  - name: port5
+    type: 1000base-t
+  - name: port6
+    type: 1000base-t
diff --git a/device-types/Fortinet/FG-80D.yaml b/device-types/Fortinet/FG-80D.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..3d9b93adfefa646a47ef5138226a669cc8d3d660
--- /dev/null
+++ b/device-types/Fortinet/FG-80D.yaml
@@ -0,0 +1,27 @@
+---
+manufacturer: Fortinet
+model: FortiGate 80D
+slug: fortinet-fg-80d
+part_number: FG-80D
+u_height: 1
+is_full_depth: false
+airflow: passive
+weight: 1.10
+weight_unit: kg
+console-ports:
+  - name: Console
+    type: rj-45
+power-ports:
+  - name: PS1
+    type: dc-terminal
+    maximum_draw: 22
+    allocated_draw: 18
+interfaces:
+  - name: port1
+    type: 1000base-t
+  - name: port2
+    type: 1000base-t
+  - name: port3
+    type: 1000base-t
+  - name: port4
+    type: 1000base-t
diff --git a/module-types/Fortinet/SP-FG300E-PS.yaml b/module-types/Fortinet/SP-FG300E-PS.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..d4b2ddefde47ad16e7a076890221fcf7f5720726
--- /dev/null
+++ b/module-types/Fortinet/SP-FG300E-PS.yaml
@@ -0,0 +1,9 @@
+---
+manufacturer: Fortinet
+model: SP-FG300E-PS
+part_number: SP-FG300E-PS
+power-ports:
+  - name: PSU{module}
+    type: iec-60320-c14
+weight: 0.8
+weight_unit: kg