diff --git a/netbox/templates/circuits/circuit_import.html b/netbox/templates/circuits/circuit_import.html
index e2fc9fa36cb..991a99c9b38 100644
--- a/netbox/templates/circuits/circuit_import.html
+++ b/netbox/templates/circuits/circuit_import.html
@@ -1,72 +1,57 @@
-{% extends '_base.html' %}
+{% extends 'utilities/obj_import.html' %}
{% load render_table from django_tables2 %}
{% load form_helpers %}
{% block title %}Circuit Import{% endblock %}
-{% block content %}
-
Circuit Import
-
-
-
-
CSV Format
-
-
-
- Field |
- Description |
- Example |
-
-
-
-
- Circuit ID |
- Alphanumeric circuit identifier |
- IC-603122 |
-
-
- Provider |
- Name of circuit provider |
- TeliaSonera |
-
-
- Type |
- Circuit type |
- Transit |
-
-
- Tenant |
- Name of tenant (optional) |
- Strickland Propane |
-
-
- Install Date |
- Date in YYYY-MM-DD format (optional) |
- 2016-02-23 |
-
-
- Commit rate |
- Commited rate in Kbps (optional) |
- 2000 |
-
-
- Description |
- Short description (optional) |
- Primary for voice |
-
-
-
-
Example
-
IC-603122,TeliaSonera,Transit,Strickland Propane,2016-02-23,2000,Primary for voice
-
-
+{% block instructions %}
+ CSV Format
+
+
+
+ Field |
+ Description |
+ Example |
+
+
+
+
+ Circuit ID |
+ Alphanumeric circuit identifier |
+ IC-603122 |
+
+
+ Provider |
+ Name of circuit provider |
+ TeliaSonera |
+
+
+ Type |
+ Circuit type |
+ Transit |
+
+
+ Tenant |
+ Name of tenant (optional) |
+ Strickland Propane |
+
+
+ Install Date |
+ Date in YYYY-MM-DD format (optional) |
+ 2016-02-23 |
+
+
+ Commit rate |
+ Commited rate in Kbps (optional) |
+ 2000 |
+
+
+ Description |
+ Short description (optional) |
+ Primary for voice |
+
+
+
+ Example
+ IC-603122,TeliaSonera,Transit,Strickland Propane,2016-02-23,2000,Primary for voice
{% endblock %}
diff --git a/netbox/templates/circuits/provider_import.html b/netbox/templates/circuits/provider_import.html
index a605164df79..e60ee3e76f2 100644
--- a/netbox/templates/circuits/provider_import.html
+++ b/netbox/templates/circuits/provider_import.html
@@ -1,62 +1,47 @@
-{% extends '_base.html' %}
+{% extends 'utilities/obj_import.html' %}
{% load render_table from django_tables2 %}
{% load form_helpers %}
{% block title %}Provider Import{% endblock %}
-{% block content %}
-Provider Import
-
-
-
-
CSV Format
-
-
-
- Field |
- Description |
- Example |
-
-
-
-
- Name |
- Provider's proper name |
- Level 3 |
-
-
- Slug |
- URL-friendly name |
- level3 |
-
-
- ASN |
- Autonomous system number (optional) |
- 3356 |
-
-
- Account |
- Account number (optional) |
- 08931544 |
-
-
- Portal URL |
- Customer service portal URL (optional) |
- https://mylevel3.net |
-
-
-
-
Example
-
Level 3,level3,3356,08931544,https://mylevel3.net
-
-
+{% block instructions %}
+ CSV Format
+
+
+
+ Field |
+ Description |
+ Example |
+
+
+
+
+ Name |
+ Provider's proper name |
+ Level 3 |
+
+
+ Slug |
+ URL-friendly name |
+ level3 |
+
+
+ ASN |
+ Autonomous system number (optional) |
+ 3356 |
+
+
+ Account |
+ Account number (optional) |
+ 08931544 |
+
+
+ Portal URL |
+ Customer service portal URL (optional) |
+ https://mylevel3.net |
+
+
+
+ Example
+ Level 3,level3,3356,08931544,https://mylevel3.net
{% endblock %}
diff --git a/netbox/templates/dcim/console_connections_import.html b/netbox/templates/dcim/console_connections_import.html
index 31d24e58f0e..c7308168b2e 100644
--- a/netbox/templates/dcim/console_connections_import.html
+++ b/netbox/templates/dcim/console_connections_import.html
@@ -1,63 +1,47 @@
-{% extends '_base.html' %}
+{% extends 'utilities/obj_import.html' %}
{% load render_table from django_tables2 %}
{% load form_helpers %}
{% block title %}Console Connections Import{% endblock %}
-{% block content %}
-Console Connections Import
-
-
-
-
CSV Format
-
-
-
- Field |
- Description |
- Example |
-
-
-
-
- Console server |
- Device name or {ID} |
- abc1-cs3 |
-
-
- Console server port |
- Full CS port name |
- Port 35 |
-
-
- Device |
- Device name or {ID} |
- abc1-switch7 |
-
-
- Console Port |
- Console port name |
- Console |
-
-
- Connection Status |
- "planned" or "connected" |
- planned |
-
-
-
-
Example
-
abc1-cs3,Port 35,abc1-switch7,Console,planned
-
-
+{% block instructions %}
+ CSV Format
+
+
+
+ Field |
+ Description |
+ Example |
+
+
+
+
+ Console server |
+ Device name or {ID} |
+ abc1-cs3 |
+
+
+ Console server port |
+ Full CS port name |
+ Port 35 |
+
+
+ Device |
+ Device name or {ID} |
+ abc1-switch7 |
+
+
+ Console Port |
+ Console port name |
+ Console |
+
+
+ Connection Status |
+ "planned" or "connected" |
+ planned |
+
+
+
+ Example
+ abc1-cs3,Port 35,abc1-switch7,Console,planned
{% endblock %}
diff --git a/netbox/templates/dcim/device_import.html b/netbox/templates/dcim/device_import.html
index 50d2f81dbc2..83d0d2195bd 100644
--- a/netbox/templates/dcim/device_import.html
+++ b/netbox/templates/dcim/device_import.html
@@ -12,8 +12,12 @@
{% csrf_token %}
{% render_form form %}
CSV Format
diff --git a/netbox/templates/dcim/device_import_child.html b/netbox/templates/dcim/device_import_child.html
index ca69d7aa534..49433686fdf 100644
--- a/netbox/templates/dcim/device_import_child.html
+++ b/netbox/templates/dcim/device_import_child.html
@@ -12,8 +12,12 @@
{% csrf_token %}
{% render_form form %}
CSV Format
diff --git a/netbox/templates/dcim/interface_connections_import.html b/netbox/templates/dcim/interface_connections_import.html
index 9868a7b5532..eab0acdbaf1 100644
--- a/netbox/templates/dcim/interface_connections_import.html
+++ b/netbox/templates/dcim/interface_connections_import.html
@@ -1,71 +1,47 @@
-{% extends '_base.html' %}
+{% extends 'utilities/obj_import.html' %}
{% load render_table from django_tables2 %}
{% load form_helpers %}
{% block title %}Interface Connections Import{% endblock %}
-{% block content %}
-Interface Connections Import
-
-
- {% if form.non_field_errors %}
-
-
Errors
-
- {{ form.non_field_errors }}
-
-
- {% endif %}
-
-
-
-
CSV Format
-
-
-
- Field |
- Description |
- Example |
-
-
-
-
- Device A |
- Device name or {ID} |
- abc1-core1 |
-
-
- Interface A |
- Interface name |
- xe-0/0/6 |
-
-
- Device B |
- Device name or {ID} |
- abc1-switch7 |
-
-
- Interface B |
- Interface name |
- xe-0/0/0 |
-
-
- Connection Status |
- "planned" or "connected" |
- planned |
-
-
-
-
Example
-
abc1-core1,xe-0/0/6,abc1-switch7,xe-0/0/0,planned
-
-
+{% block instructions %}
+ CSV Format
+
+
+
+ Field |
+ Description |
+ Example |
+
+
+
+
+ Device A |
+ Device name or {ID} |
+ abc1-core1 |
+
+
+ Interface A |
+ Interface name |
+ xe-0/0/6 |
+
+
+ Device B |
+ Device name or {ID} |
+ abc1-switch7 |
+
+
+ Interface B |
+ Interface name |
+ xe-0/0/0 |
+
+
+ Connection Status |
+ "planned" or "connected" |
+ planned |
+
+
+
+ Example
+ abc1-core1,xe-0/0/6,abc1-switch7,xe-0/0/0,planned
{% endblock %}
diff --git a/netbox/templates/dcim/power_connections_import.html b/netbox/templates/dcim/power_connections_import.html
index 606694a8dfd..56f34c4560d 100644
--- a/netbox/templates/dcim/power_connections_import.html
+++ b/netbox/templates/dcim/power_connections_import.html
@@ -1,63 +1,47 @@
-{% extends '_base.html' %}
+{% extends 'utilities/obj_import.html' %}
{% load render_table from django_tables2 %}
{% load form_helpers %}
{% block title %}Power Connections Import{% endblock %}
-{% block content %}
-Power Connections Import
-
-
-
-
CSV Format
-
-
-
- Field |
- Description |
- Example |
-
-
-
-
- PDU |
- Device name or {ID} |
- abc1-pdu1 |
-
-
- Power Outlet |
- Power outlet name |
- AC4 |
-
-
- Device |
- Device name or {ID} |
- abc1-switch7 |
-
-
- Power Port |
- Power port name |
- PSU0 |
-
-
- Connection Status |
- "planned" or "connected" |
- connected |
-
-
-
-
Example
-
abc1-pdu1,AC4,abc1-switch7,PSU0,connected
-
-
+{% block instructions %}
+ CSV Format
+
+
+
+ Field |
+ Description |
+ Example |
+
+
+
+
+ PDU |
+ Device name or {ID} |
+ abc1-pdu1 |
+
+
+ Power Outlet |
+ Power outlet name |
+ AC4 |
+
+
+ Device |
+ Device name or {ID} |
+ abc1-switch7 |
+
+
+ Power Port |
+ Power port name |
+ PSU0 |
+
+
+ Connection Status |
+ "planned" or "connected" |
+ connected |
+
+
+
+ Example
+ abc1-pdu1,AC4,abc1-switch7,PSU0,connected
{% endblock %}
diff --git a/netbox/templates/dcim/rack_import.html b/netbox/templates/dcim/rack_import.html
index c462a0be9ed..207fcfcab90 100644
--- a/netbox/templates/dcim/rack_import.html
+++ b/netbox/templates/dcim/rack_import.html
@@ -1,87 +1,72 @@
-{% extends '_base.html' %}
+{% extends 'utilities/obj_import.html' %}
{% load render_table from django_tables2 %}
{% load form_helpers %}
{% block title %}Rack Import{% endblock %}
-{% block content %}
-Rack Import
-
-
-
-
CSV Format
-
-
-
- Field |
- Description |
- Example |
-
-
-
-
- Site |
- Name of the assigned site |
- DC-4 |
-
-
- Group |
- Rack group name (optional) |
- Cage 1400 |
-
-
- Name |
- Internal rack name |
- R101 |
-
-
- Facility ID |
- Rack ID assigned by the facility (optional) |
- J12.100 |
-
-
- Tenant |
- Name of tenant (optional) |
- Pied Piper |
-
-
- Role |
- Functional role (optional) |
- Compute |
-
-
- Type |
- Rack type (optional) |
- 4-post cabinet |
-
-
- Width |
- Rail-to-rail width (19 or 23 inches) |
- 19 |
-
-
- Height |
- Height in rack units |
- 42 |
-
-
- Descending units |
- Units are numbered top-to-bottom |
- False |
-
-
-
-
Example
-
DC-4,Cage 1400,R101,J12.100,Pied Piper,Compute,4-post cabinet,19,42,False
-
-
+{% block instructions %}
+ CSV Format
+
+
+
+ Field |
+ Description |
+ Example |
+
+
+
+
+ Site |
+ Name of the assigned site |
+ DC-4 |
+
+
+ Group |
+ Rack group name (optional) |
+ Cage 1400 |
+
+
+ Name |
+ Internal rack name |
+ R101 |
+
+
+ Facility ID |
+ Rack ID assigned by the facility (optional) |
+ J12.100 |
+
+
+ Tenant |
+ Name of tenant (optional) |
+ Pied Piper |
+
+
+ Role |
+ Functional role (optional) |
+ Compute |
+
+
+ Type |
+ Rack type (optional) |
+ 4-post cabinet |
+
+
+ Width |
+ Rail-to-rail width (19 or 23 inches) |
+ 19 |
+
+
+ Height |
+ Height in rack units |
+ 42 |
+
+
+ Descending units |
+ Units are numbered top-to-bottom |
+ False |
+
+
+
+ Example
+ DC-4,Cage 1400,R101,J12.100,Pied Piper,Compute,4-post cabinet,19,42,False
{% endblock %}
diff --git a/netbox/templates/ipam/aggregate_import.html b/netbox/templates/ipam/aggregate_import.html
index 8075b4874be..1f0a50febc1 100644
--- a/netbox/templates/ipam/aggregate_import.html
+++ b/netbox/templates/ipam/aggregate_import.html
@@ -1,57 +1,42 @@
-{% extends '_base.html' %}
+{% extends 'utilities/obj_import.html' %}
{% load render_table from django_tables2 %}
{% load form_helpers %}
{% block title %}Aggregate Import{% endblock %}
-{% block content %}
-Aggregate Import
-
-
-
-
CSV Format
-
-
-
- Field |
- Description |
- Example |
-
-
-
-
- Prefix |
- IPv4 or IPv6 network |
- 172.16.0.0/12 |
-
-
- RIR |
- Name of RIR |
- RFC 1918 |
-
-
- Date Added |
- Date in YYYY-MM-DD format (optional) |
- 2016-02-23 |
-
-
- Description |
- Short description (optional) |
- Private IPv4 space |
-
-
-
-
Example
-
172.16.0.0/12,RFC 1918,2016-02-23,Private IPv4 space
-
-
+{% block instructions %}
+ CSV Format
+
+
+
+ Field |
+ Description |
+ Example |
+
+
+
+
+ Prefix |
+ IPv4 or IPv6 network |
+ 172.16.0.0/12 |
+
+
+ RIR |
+ Name of RIR |
+ RFC 1918 |
+
+
+ Date Added |
+ Date in YYYY-MM-DD format (optional) |
+ 2016-02-23 |
+
+
+ Description |
+ Short description (optional) |
+ Private IPv4 space |
+
+
+
+ Example
+ 172.16.0.0/12,RFC 1918,2016-02-23,Private IPv4 space
{% endblock %}
diff --git a/netbox/templates/ipam/ipaddress_import.html b/netbox/templates/ipam/ipaddress_import.html
index 3c01b4af018..362f6482908 100644
--- a/netbox/templates/ipam/ipaddress_import.html
+++ b/netbox/templates/ipam/ipaddress_import.html
@@ -1,77 +1,62 @@
-{% extends '_base.html' %}
+{% extends 'utilities/obj_import.html' %}
{% load render_table from django_tables2 %}
{% load form_helpers %}
{% block title %}IP Address Import{% endblock %}
-{% block content %}
-IP Address Import
-
-
-
-
CSV Format
-
-
-
- Field |
- Description |
- Example |
-
-
-
-
- Address |
- IPv4 or IPv6 address |
- 192.0.2.42/24 |
-
-
- VRF |
- VRF route distinguisher (optional) |
- 65000:123 |
-
-
- Tenant |
- Name of tenant (optional) |
- ABC01 |
-
-
- Status |
- Current status |
- Active |
-
-
- Device |
- Device name (optional) |
- switch12 |
-
-
- Interface |
- Interface name (optional) |
- ge-0/0/31 |
-
-
- Is Primary |
- If "true", IP will be primary for device (optional) |
- True |
-
-
- Description |
- Short description (optional) |
- Management IP |
-
-
-
-
Example
-
192.0.2.42/24,65000:123,ABC01,Active,switch12,ge-0/0/31,True,Management IP
-
-
+{% block instructions %}
+ CSV Format
+
+
+
+ Field |
+ Description |
+ Example |
+
+
+
+
+ Address |
+ IPv4 or IPv6 address |
+ 192.0.2.42/24 |
+
+
+ VRF |
+ VRF route distinguisher (optional) |
+ 65000:123 |
+
+
+ Tenant |
+ Name of tenant (optional) |
+ ABC01 |
+
+
+ Status |
+ Current status |
+ Active |
+
+
+ Device |
+ Device name (optional) |
+ switch12 |
+
+
+ Interface |
+ Interface name (optional) |
+ ge-0/0/31 |
+
+
+ Is Primary |
+ If "true", IP will be primary for device (optional) |
+ True |
+
+
+ Description |
+ Short description (optional) |
+ Management IP |
+
+
+
+ Example
+ 192.0.2.42/24,65000:123,ABC01,Active,switch12,ge-0/0/31,True,Management IP
{% endblock %}
diff --git a/netbox/templates/ipam/prefix_import.html b/netbox/templates/ipam/prefix_import.html
index 0a9cc869475..b9aa7ff4728 100644
--- a/netbox/templates/ipam/prefix_import.html
+++ b/netbox/templates/ipam/prefix_import.html
@@ -1,87 +1,72 @@
-{% extends '_base.html' %}
+{% extends 'utilities/obj_import.html' %}
{% load render_table from django_tables2 %}
{% load form_helpers %}
{% block title %}Prefix Import{% endblock %}
-{% block content %}
-Prefix Import
-
-
-
-
CSV Format
-
-
-
- Field |
- Description |
- Example |
-
-
-
-
- Prefix |
- IPv4 or IPv6 network |
- 192.168.42.0/24 |
-
-
- VRF |
- VRF route distinguisher (optional) |
- 65000:123 |
-
-
- Tenant |
- Name of tenant (optional) |
- ABC01 |
-
-
- Site |
- Name of assigned site (optional) |
- HQ |
-
-
- VLAN Group |
- Name of group for VLAN selection (optional) |
- Customers |
-
-
- VLAN ID |
- Numeric VLAN ID (optional) |
- 801 |
-
-
- Status |
- Current status |
- Active |
-
-
- Role |
- Functional role (optional) |
- Customer |
-
-
- Is a pool |
- True if all IPs are considered usable |
- False |
-
-
- Description |
- Short description (optional) |
- 7th floor WiFi |
-
-
-
-
Example
-
192.168.42.0/24,65000:123,ABC01,HQ,Customers,801,Active,Customer,False,7th floor WiFi
-
-
+{% block instructions %}
+ CSV Format
+
+
+
+ Field |
+ Description |
+ Example |
+
+
+
+
+ Prefix |
+ IPv4 or IPv6 network |
+ 192.168.42.0/24 |
+
+
+ VRF |
+ VRF route distinguisher (optional) |
+ 65000:123 |
+
+
+ Tenant |
+ Name of tenant (optional) |
+ ABC01 |
+
+
+ Site |
+ Name of assigned site (optional) |
+ HQ |
+
+
+ VLAN Group |
+ Name of group for VLAN selection (optional) |
+ Customers |
+
+
+ VLAN ID |
+ Numeric VLAN ID (optional) |
+ 801 |
+
+
+ Status |
+ Current status |
+ Active |
+
+
+ Role |
+ Functional role (optional) |
+ Customer |
+
+
+ Is a pool |
+ True if all IPs are considered usable |
+ False |
+
+
+ Description |
+ Short description (optional) |
+ 7th floor WiFi |
+
+
+
+ Example
+ 192.168.42.0/24,65000:123,ABC01,HQ,Customers,801,Active,Customer,False,7th floor WiFi
{% endblock %}
diff --git a/netbox/templates/ipam/vlan_import.html b/netbox/templates/ipam/vlan_import.html
index 16456ba012b..8d1741fd4cf 100644
--- a/netbox/templates/ipam/vlan_import.html
+++ b/netbox/templates/ipam/vlan_import.html
@@ -1,77 +1,62 @@
-{% extends '_base.html' %}
+{% extends 'utilities/obj_import.html' %}
{% load render_table from django_tables2 %}
{% load form_helpers %}
{% block title %}VLAN Import{% endblock %}
-{% block content %}
-VLAN Import
-
-
-
-
CSV Format
-
-
-
- Field |
- Description |
- Example |
-
-
-
-
- Site |
- Name of assigned site |
- LAS2 |
-
-
- Group |
- Name of VLAN group (optional) |
- Backend Network |
-
-
- ID |
- Configured VLAN ID |
- 1400 |
-
-
- Name |
- Configured VLAN name |
- Cameras |
-
-
- Tenant |
- Name of tenant (optional) |
- Internal |
-
-
- Status |
- Current status |
- Active |
-
-
- Role |
- Functional role (optional) |
- Security |
-
-
- Description |
- Short description (optional) |
- Security team only |
-
-
-
-
Example
-
LAS2,Backend Network,1400,Cameras,Internal,Active,Security,Security team only
-
-
+{% block instructions %}
+ CSV Format
+
+
+
+ Field |
+ Description |
+ Example |
+
+
+
+
+ Site |
+ Name of assigned site |
+ LAS2 |
+
+
+ Group |
+ Name of VLAN group (optional) |
+ Backend Network |
+
+
+ ID |
+ Configured VLAN ID |
+ 1400 |
+
+
+ Name |
+ Configured VLAN name |
+ Cameras |
+
+
+ Tenant |
+ Name of tenant (optional) |
+ Internal |
+
+
+ Status |
+ Current status |
+ Active |
+
+
+ Role |
+ Functional role (optional) |
+ Security |
+
+
+ Description |
+ Short description (optional) |
+ Security team only |
+
+
+
+ Example
+ LAS2,Backend Network,1400,Cameras,Internal,Active,Security,Security team only
{% endblock %}
diff --git a/netbox/templates/ipam/vrf_import.html b/netbox/templates/ipam/vrf_import.html
index 9953542d2d0..0a1a31205f3 100644
--- a/netbox/templates/ipam/vrf_import.html
+++ b/netbox/templates/ipam/vrf_import.html
@@ -1,62 +1,47 @@
-{% extends '_base.html' %}
+{% extends 'utilities/obj_import.html' %}
{% load render_table from django_tables2 %}
{% load form_helpers %}
{% block title %}VRF Import{% endblock %}
-{% block content %}
-VRF Import
-
-
-
-
CSV Format
-
-
-
- Field |
- Description |
- Example |
-
-
-
-
- Name |
- Name of VRF |
- Customer_ABC |
-
-
- RD |
- Route distinguisher |
- 65000:123456 |
-
-
- Tenant |
- Name of tenant (optional) |
- ABC01 |
-
-
- Enforce uniqueness |
- Prevent duplicate prefixes/IP addresses |
- True |
-
-
- Description |
- Short description (optional) |
- Native VRF for customer ABC |
-
-
-
-
Example
-
Customer_ABC,65000:123456,ABC01,True,Native VRF for customer ABC
-
-
+{% block instructions %}
+ CSV Format
+
+
+
+ Field |
+ Description |
+ Example |
+
+
+
+
+ Name |
+ Name of VRF |
+ Customer_ABC |
+
+
+ RD |
+ Route distinguisher |
+ 65000:123456 |
+
+
+ Tenant |
+ Name of tenant (optional) |
+ ABC01 |
+
+
+ Enforce uniqueness |
+ Prevent duplicate prefixes/IP addresses |
+ True |
+
+
+ Description |
+ Short description (optional) |
+ Native VRF for customer ABC |
+
+
+
+ Example
+ Customer_ABC,65000:123456,ABC01,True,Native VRF for customer ABC
{% endblock %}
diff --git a/netbox/templates/secrets/secret_import.html b/netbox/templates/secrets/secret_import.html
index 0a9a11c6969..ac45861e2b9 100644
--- a/netbox/templates/secrets/secret_import.html
+++ b/netbox/templates/secrets/secret_import.html
@@ -20,10 +20,14 @@ Secret Import
diff --git a/netbox/templates/tenancy/tenant_import.html b/netbox/templates/tenancy/tenant_import.html
index 81f82989fac..c0e94269a7f 100644
--- a/netbox/templates/tenancy/tenant_import.html
+++ b/netbox/templates/tenancy/tenant_import.html
@@ -1,57 +1,42 @@
-{% extends '_base.html' %}
+{% extends 'utilities/obj_import.html' %}
{% load render_table from django_tables2 %}
{% load form_helpers %}
{% block title %}Tenant Import{% endblock %}
-{% block content %}
-
Tenant Import
-
-
-
-
CSV Format
-
-
-
- Field |
- Description |
- Example |
-
-
-
-
- Name |
- Tenant name |
- WIDG01 |
-
-
- Slug |
- URL-friendly name |
- widg01 |
-
-
- Group |
- Tenant group (optional) |
- Customers |
-
-
- Description |
- Long-form name or other text (optional) |
- Widgets Inc. |
-
-
-
-
Example
-
WIDG01,widg01,Customers,Widgets Inc.
-
-
+{% block instructions %}
+
CSV Format
+
+
+
+ Field |
+ Description |
+ Example |
+
+
+
+
+ Name |
+ Tenant name |
+ WIDG01 |
+
+
+ Slug |
+ URL-friendly name |
+ widg01 |
+
+
+ Group |
+ Tenant group (optional) |
+ Customers |
+
+
+ Description |
+ Long-form name or other text (optional) |
+ Widgets Inc. |
+
+
+
+
Example
+
WIDG01,widg01,Customers,Widgets Inc.
{% endblock %}
diff --git a/netbox/templates/utilities/obj_import.html b/netbox/templates/utilities/obj_import.html
new file mode 100644
index 00000000000..bea9a231977
--- /dev/null
+++ b/netbox/templates/utilities/obj_import.html
@@ -0,0 +1,34 @@
+{% extends '_base.html' %}
+{% load render_table from django_tables2 %}
+{% load form_helpers %}
+
+{% block content %}
+
{% block title %}{% endblock %}
+
+
+ {% if form.non_field_errors %}
+
+
Errors
+
+ {{ form.non_field_errors }}
+
+
+ {% endif %}
+
+
+
+ {% block instructions %}{% endblock %}
+
+
+{% endblock %}