Bulk Import Devices in rConfig V8 Core
Importing devices into rConfig V8 Core means configuring a set of supporting components first, then loading devices that reference them. After reading this page you can plan those prerequisites, prepare a CSV import file, run the import, and fix the most common failures.
When to use this
Section titled “When to use this”Use this workbook when you are populating rConfig with more than a handful of devices, for example a fresh install or a migration from a legacy configuration management tool. For one or two devices, add them directly on the Devices page instead. A migration is also the right moment to standardise naming, model strings, and tag taxonomy, because cleaning the data in a spreadsheet before import is far cheaper than fixing it afterwards.
Prerequisites
Section titled “Prerequisites”Before you run an import, create the components each device row references. Without them the importer skips rows with an Invalid ... ID warning. Build them in this order so each component’s dependencies already exist:
- Vendors (no dependencies). See Vendors
- Connection templates (no dependencies). See Connection Templates
- Commands (no dependencies). See Commands
- Command groups (depend on commands). See Command Groups
- Tags (no dependencies). See Tags
- Credential sets (no dependencies), created under Settings → Device Credentials
You also need access to the import file format, which you download from Settings → Import / Export. The Import & Export page is the canonical reference for the column headers and how each row is validated.
How the prerequisite components relate
Section titled “How the prerequisite components relate”Each device connects to several supporting records. Understanding these relationships explains why the build order above matters.
| Component | Per-device count | Purpose |
|---|---|---|
| Vendor | One | Manufacturer label used for filtering and reporting |
| Connection template | One | How rConfig connects: protocol, port, prompts, enable mode |
| Command group | One | Which commands run during a configuration download |
| Tags | Zero or more | Cross-cutting categorisation (site, environment, criticality) |
| Credential set | One (or inline per device) | Stored username, password, and enable password |
Templates are the most critical prerequisite, because a device cannot connect without one. Command groups link a device to the right command set for its role. Tags are the only multi-value relationship: a device can carry several tags, which makes them useful for filtering and reporting across hierarchical boundaries.
Standardise data during migration
Section titled “Standardise data during migration”A migration is the point to fix inconsistency that legacy systems accumulate:
- Device names: adopt a location-role-sequence format, for example
NYC-CORE-RTR-01. - Model strings: consolidate variants (
C3850,Cat3850,WS-C3850all becomeCisco-Catalyst-3850). - Template names: use a platform-protocol format, for example
Cisco-IOS-SSH. - Tags: design one taxonomy across geography, environment, criticality, and function before you assign any.
- Credentials: consolidate to role-based credential sets rather than per-device passwords, which simplifies rotation.
Choosing an import method
Section titled “Choosing an import method”rConfig offers three ways to add devices. Pick the one that matches your scale.
| Scenario | Method | Scale | Effort |
|---|---|---|---|
| Initial setup or learning | Manual entry | 1 to 10 | Low |
| Many similar devices | Clone an existing device | 10 to 50 | Low |
| Migration or large rollout | CSV import | 50 to 5,000 | Medium |
Manual entry gives full control over every field and immediate validation feedback, which suits unique devices or learning the data model. It does not scale: it is slow and error-prone past a handful of devices.
- Go to Devices → Add Device.
- Complete the required fields.
- Select the vendor, template, and command group.
- Assign any tags and a credential set.
- Submit, then download the first configuration to verify connectivity.
Cloning copies an existing device’s template, credential, command group, vendor, model, tags, and prompt configuration. It suits batches of near-identical devices such as branch rollouts or stack members.
- Find a representative device in the device table.
- Open its row dropdown and choose Clone.
- Change the unique fields: device name and IP address.
- Submit, then download the first configuration to verify connectivity.
CSV import handles tens to thousands of devices and lets you validate and transform data in a spreadsheet first. It requires that every referenced prerequisite ID already exists, and works best at up to 500 devices per file.
The rest of this page covers the CSV workflow in full.
Prepare the CSV file
Section titled “Prepare the CSV file”CSV import is the standard method for bulk onboarding and migration. Download the template, populate it, and validate it before upload.
Get and read the template
Section titled “Get and read the template”- Go to Settings → Import / Export.
- Choose Download Device Import Template.
- Save it to a working directory and review the headers and example rows.
The template columns are:
Required columns (must not be blank, and ID columns must reference existing records):
device_name: unique device name (invalid characters are stripped on import)device_ip: valid IPv4 or IPv6 addressdevice_main_prompt: device CLI promptdevice_enable_prompt: privilege mode promptdevice_model: model designation (free text)device_category_id: reference to a command groupdevice_template: reference to a connection templatedevice_vendor: reference to a vendordevice_tag: tag ID or comma-separated tag IDs (for example"1,2,5")device_default_creds_on:1to use a saved credential set,0to use inline credentialsdevice_cred_id: saved credential set ID whendevice_default_creds_onis1, otherwise0
Optional columns (used only when device_default_creds_on is 0):
device_username: inline usernamedevice_password: inline password (stored encrypted)device_enable_password: inline enable password (stored encrypted)
Build the rows
Section titled “Build the rows”- Export the device inventory from your legacy system to a spreadsheet.
- Build mapping tables that translate legacy values to rConfig IDs (legacy vendor name to vendor ID, legacy template to template ID, legacy category to command group ID).
- Standardise the data: normalise device names, validate IP addresses, and map model strings to the agreed format.
- Populate the template columns, using
VLOOKUPagainst your mapping tables for the ID columns andTEXTJOINto compile multi-tag values. - Set
device_default_creds_onand eitherdevice_cred_idor the inline credential columns on every row.
A completed file looks like this:
device_name,device_ip,device_username,device_password,device_enable_password,device_main_prompt,device_enable_prompt,device_category_id,device_template,device_model,device_vendor,device_tag,device_default_creds_on,device_cred_idNYC-CORE-RTR-01,192.168.1.1,admin,s3cret,en4ble,>,#,1,1,Cisco-ASR-1000,1,"1,3,7",0,0NYC-CORE-SW-01,192.168.1.2,,,,>,#,2,1,Cisco-Catalyst-9500,1,"1,3,7",1,1LON-ACCESS-SW-01,192.168.2.10,,,,>,#,3,1,Cisco-Catalyst-2960X,1,"2,3,5",1,2SFO-FW-DMZ-01,192.168.10.1,admin,s3cret,en4ble,>,#,5,4,PaloAlto-PA-3020,3,"7,8",0,0The first row, NYC-CORE-RTR-01, supplies inline credentials (device_default_creds_on is 0, so device_cred_id is 0), references vendor 1 and template 1, and carries tags 1,3,7. The second row uses saved credential set 1 instead, so its inline credential cells are blank.
Validate before upload
Section titled “Validate before upload”Confirm every item below before you upload:
- Every
device_vendor,device_template,device_category_id,device_tag, and (where used)device_cred_idreferences a record that exists in rConfig. - Every row has all required fields populated.
device_default_creds_onis0or1; rows using a saved set have a validdevice_cred_id; rows using inline credentials supply username, password, and enable password.- No duplicate device names or IP addresses inside the file, and none already in rConfig (the importer does not de-duplicate).
- Device names contain only letters, numbers, dot, dash, or underscore; IPs are valid; the file is at most 500 devices for best performance.
Run the import
Section titled “Run the import”- Go to Settings → Import / Export.
- In the device import section, choose the file (
.csvor.xlsx, up to 2 MB) and confirm the file name shows correctly. - Choose Import Devices. rConfig validates and imports in a single action: there is no separate options or confirm screen.
Each row is validated in order. Valid rows are created immediately as new devices. Any row that fails a check is skipped and listed with the exact reason, for example Import Error device5: Invalid Template ID. A summary such as 3 Devices successfully imported is shown, and every event is written to the Application Log. For the full list of validation checks, see Import & Export.
Verify and download configurations
Section titled “Verify and download configurations”After the summary appears, confirm the result and pull the first configurations.
- Open the Devices page and confirm the imported devices appear and the count matches.
- Spot-check a few device detail pages for correct vendor, template, model, and tags.
- Select the imported devices and choose Download Configurations to retrieve the first backup.
- Open the Queue Manager and filter by status to watch the download jobs.
Troubleshoot the import
Section titled “Troubleshoot the import”Validation failures during import
Section titled “Validation failures during import”Symptom: a skipped row reading Invalid Category ID, Invalid Vendor ID, Invalid Template ID, Invalid Tag ID, or Invalid Credentials ID.
Cause: the row references an ID that does not exist in rConfig.
Fix: read the skipped-row warnings (and the Application Log) to find the missing ID, create the prerequisite on its page (Vendors, Connection Templates, Command Groups, Tags, or Settings → Device Credentials), correct the file, and re-upload.
Symptom: a skipped row reading Import Error {name}: Blank Fields.
Cause: a required column is empty on that row.
Fix: locate the named device, populate the empty cell (use placeholder text where a value genuinely does not apply, such as an unused enable prompt), and re-upload. Spreadsheet data validation can flag empty required cells before you save.
Symptom: a device you already had now appears twice.
Cause: the importer always creates and never checks for existing devices, so a repeated name or IP becomes a second record.
Fix: before importing, remove rows for devices that already exist and de-duplicate names and IPs within the file. If duplicates were created, delete the extras on the Devices page.
Behaviour: device names are sanitised on import. Any character that is not a letter, number, dot, dash, or underscore is stripped, so Core Switch 01 becomes CoreSwitch01. Rows are not rejected for this.
Fix: if the sanitised name is not what you wanted, correct device_name yourself and re-import, keeping names unique after sanitisation.
Configuration download failures after import
Section titled “Configuration download failures after import”| Issue | Symptom in logs | Fix |
|---|---|---|
| Authentication | Authentication failed | Confirm the credential set or inline credentials, then test SSH or Telnet to the device manually |
| Connectivity | Connection timeout or Network unreachable | Confirm the IP is reachable from the rConfig server and check firewall rules and the port |
| Prompt mismatch | Timeout waiting for prompt | Correct the main and enable prompt to match the device exactly, or use a regex such as .*[>#] |
| Template | Immediate failure on connection | Review the template settings and test against a representative device |
For a stubborn prompt mismatch, see Device Prompts, then run the download in debug mode to see the live session:
cd /var/www/html/rconfigphp artisan rconfig:download-device 1234 -dPerformance at scale
Section titled “Performance at scale”For 1,000 or more devices, split the inventory into files of 500 devices, run imports during off-peak hours, and schedule downloads separately rather than all at once. Database query performance can degrade after importing thousands of devices, so run database optimisation if you notice slowdowns. Very large deployments are better served by the Pro, Enterprise, and Vector editions, documented separately at docs.rconfig.com.
Common gotchas
Section titled “Common gotchas”What’s next
Section titled “What’s next”- Manage devices in rConfig for day-to-day device operations after import
- Configure connection templates to refine how rConfig connects to each platform
- Import & Export reference for the exact column headers and validation rules